From 1e26cd607d3c5813406c43c4fad1d330c573f693 Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Sat, 26 Apr 2025 07:48:50 +0200 Subject: [PATCH 01/13] add biome to backend --- backend/biome.json | 147 +++++++++++++++++++++++++++++++++++++++++++ backend/package.json | 1 + backend/yarn.lock | 54 ++++++++++++++++ 3 files changed, 202 insertions(+) create mode 100644 backend/biome.json diff --git a/backend/biome.json b/backend/biome.json new file mode 100644 index 000000000..cd6a1bb59 --- /dev/null +++ b/backend/biome.json @@ -0,0 +1,147 @@ +{ + "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", + "vcs": { "enabled": false, "clientKind": "git", "useIgnoreFile": false }, + "files": { + "ignoreUnknown": false, + "ignore": ["build", "node_modules", "coverage"], + "include": ["./src/**/*.js", "./src/**/*.ts"] + }, + "formatter": { + "enabled": true, + "useEditorconfig": true, + "formatWithErrors": false, + "indentStyle": "space", + "indentWidth": 2, + "lineEnding": "lf", + "lineWidth": 100, + "attributePosition": "auto", + "bracketSpacing": true + }, + "organizeImports": { "enabled": true }, + "linter": { + "enabled": true, + "rules": { + "recommended": false, + "complexity": { + "noExtraBooleanCast": "error", + "noMultipleSpacesInRegularExpressionLiterals": "error", + "noUselessCatch": "error", + "noUselessConstructor": "error", + "noUselessLoneBlockStatements": "error", + "noUselessRename": "error", + "noUselessTernary": "error", + "noUselessUndefinedInitialization": "error", + "noVoid": "error", + "noWith": "error", + "useLiteralKeys": "error", + "useRegexLiterals": "error" + }, + "correctness": { + "noConstAssign": "error", + "noConstantCondition": "error", + "noEmptyCharacterClassInRegex": "error", + "noEmptyPattern": "error", + "noGlobalObjectCalls": "error", + "noInnerDeclarations": "error", + "noInvalidConstructorSuper": "error", + "noInvalidUseBeforeDeclaration": "error", + "noNewSymbol": "error", + "noNodejsModules": "off", + "noNonoctalDecimalEscape": "error", + "noPrecisionLoss": "error", + "noSelfAssign": "error", + "noSetterReturn": "error", + "noSwitchDeclarations": "error", + "noUndeclaredVariables": "error", + "noUnreachable": "error", + "noUnreachableSuper": "error", + "noUnsafeFinally": "error", + "noUnsafeOptionalChaining": "error", + "noUnusedLabels": "error", + "noUnusedVariables": "error", + "useArrayLiterals": "error", + "useIsNan": "error", + "useValidForDirection": "error", + "useYield": "error" + }, + "security": { "noGlobalEval": "error" }, + "style": { + "noCommaOperator": "error", + "noDefaultExport": "error", + "noVar": "warn", + "noYodaExpression": "error", + "useBlockStatements": "error", + "useConsistentBuiltinInstantiation": "error", + "useConst": "error", + "useSingleVarDeclarator": "error" + }, + "suspicious": { + "noAsyncPromiseExecutor": "error", + "noCatchAssign": "error", + "noClassAssign": "error", + "noCompareNegZero": "error", + "noConsole": "error", + "noControlCharactersInRegex": "error", + "noDebugger": "error", + "noDoubleEquals": "error", + "noDuplicateCase": "error", + "noDuplicateClassMembers": "error", + "noDuplicateObjectKeys": "error", + "noDuplicateParameters": "error", + "noEmptyBlockStatements": "error", + "noFallthroughSwitchClause": "error", + "noFunctionAssign": "error", + "noGlobalAssign": "error", + "noImportAssign": "error", + "noMisleadingCharacterClass": "error", + "noPrototypeBuiltins": "error", + "noRedeclare": "error", + "noSelfCompare": "error", + "noShadowRestrictedNames": "error", + "noSparseArray": "error", + "noUnsafeNegation": "error", + "useDefaultSwitchClauseLast": "error", + "useGetterReturn": "error", + "useValidTypeof": "error" + } + }, + "ignore": ["**/node_modules", "**/*.min.js", "**/build", "**/coverage"] + }, + "javascript": { + "formatter": { + "jsxQuoteStyle": "single", + "quoteProperties": "asNeeded", + "trailingCommas": "all", + "semicolons": "asNeeded", + "arrowParentheses": "always", + "bracketSameLine": false, + "quoteStyle": "single", + "attributePosition": "auto", + "bracketSpacing": true + }, + "globals": [ + "document", + "navigator", + "window", + "describe", + "test", + "it", + "expect", + "beforeAll", + "beforeEach", + "afterAll", + "afterEach", + "jest" + ], + "parser": { + "unsafeParameterDecoratorsEnabled": true + } + }, + "overrides": [ + { + "include": ["*.ts", "*.tsx"], + "linter": { "rules": { "complexity": { "noVoid": "error" } } } + }, + { "include": ["*.test.ts"], "linter": { "rules": {} } } + ] +} diff --git a/backend/package.json b/backend/package.json index 880d48a53..dc81c1c32 100644 --- a/backend/package.json +++ b/backend/package.json @@ -58,6 +58,7 @@ "xregexp": "^5.1.1" }, "devDependencies": { + "@biomejs/biome": "1.9.4", "@eslint-community/eslint-plugin-eslint-comments": "^3.2.1", "@types/email-templates": "^10.0.1", "@types/express": "^4.17.12", diff --git a/backend/yarn.lock b/backend/yarn.lock index f7a2a27b1..2a897aa27 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -318,6 +318,60 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== +"@biomejs/biome@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-1.9.4.tgz#89766281cbc3a0aae865a7ff13d6aaffea2842bf" + integrity sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog== + optionalDependencies: + "@biomejs/cli-darwin-arm64" "1.9.4" + "@biomejs/cli-darwin-x64" "1.9.4" + "@biomejs/cli-linux-arm64" "1.9.4" + "@biomejs/cli-linux-arm64-musl" "1.9.4" + "@biomejs/cli-linux-x64" "1.9.4" + "@biomejs/cli-linux-x64-musl" "1.9.4" + "@biomejs/cli-win32-arm64" "1.9.4" + "@biomejs/cli-win32-x64" "1.9.4" + +"@biomejs/cli-darwin-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz#dfa376d23a54a2d8f17133c92f23c1bf2e62509f" + integrity sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw== + +"@biomejs/cli-darwin-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz#eafc2ce3849d385fc02238aad1ca4a73395a64d9" + integrity sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg== + +"@biomejs/cli-linux-arm64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz#d780c3e01758fc90f3268357e3f19163d1f84fca" + integrity sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA== + +"@biomejs/cli-linux-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz#8ed1dd0e89419a4b66a47f95aefb8c46ae6041c9" + integrity sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g== + +"@biomejs/cli-linux-x64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz#f36982b966bd671a36671e1de4417963d7db15fb" + integrity sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg== + +"@biomejs/cli-linux-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz#a0a7f56680c76b8034ddc149dbf398bdd3a462e8" + integrity sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg== + +"@biomejs/cli-win32-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz#e2ef4e0084e76b7e26f0fc887c5ef1265ea56200" + integrity sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg== + +"@biomejs/cli-win32-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz#4c7afa90e3970213599b4095e62f87e5972b2340" + integrity sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA== + "@cspotcode/source-map-support@^0.8.0": version "0.8.1" resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" From 3ff399064b7e10cd578162c3e42121cbc07c36e1 Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Sat, 26 Apr 2025 08:01:43 +0200 Subject: [PATCH 02/13] auto applied changes from biome --- .vscode/settings.json | 3 + backend/biome.json | 276 +++++++++--------- .../apis/dltConnector/DltConnectorClient.ts | 2 +- backend/src/apis/gms/ExportUsers.ts | 2 +- backend/src/apis/humhub/ExportUsers.ts | 2 +- .../humhub/compareHumhubUserDbUser.test.ts | 98 +++---- backend/src/apis/humhub/syncUser.test.ts | 2 +- backend/src/apis/humhub/syncUser.ts | 2 +- backend/src/config/index.ts | 4 +- backend/src/config/schema.ts | 8 +- backend/src/data/PublishName.logic.ts | 8 +- .../src/emails/sendEmailTranslated.test.ts | 2 +- backend/src/emails/sendEmailVariants.test.ts | 8 +- .../federation/validateCommunities.test.ts | 2 +- .../src/graphql/arg/ContributionLinkArgs.ts | 4 +- .../graphql/arg/ContributionMessageArgs.ts | 4 +- backend/src/graphql/arg/Paginated.ts | 4 +- .../arg/SearchContributionsFilterArgs.ts | 2 +- backend/src/graphql/arg/SetUserRoleArgs.ts | 4 +- .../src/graphql/arg/TransactionSendArgs.ts | 2 +- backend/src/graphql/directive/isAuthorized.ts | 8 +- .../src/graphql/input/ProjectBrandingInput.ts | 4 +- .../src/graphql/model/AdminCommunityView.ts | 2 +- .../graphql/model/AdminUpdateContribution.ts | 2 +- backend/src/graphql/model/Balance.ts | 2 +- backend/src/graphql/model/ChatGptMessage.ts | 2 +- backend/src/graphql/model/Community.ts | 2 +- .../src/graphql/model/CommunityStatistics.ts | 2 +- backend/src/graphql/model/Contribution.ts | 2 +- backend/src/graphql/model/ContributionLink.ts | 2 +- .../src/graphql/model/ContributionLinkList.ts | 2 +- backend/src/graphql/model/Decay.ts | 2 +- .../src/graphql/model/FederatedCommunity.ts | 2 +- backend/src/graphql/model/GdtEntry.ts | 2 +- backend/src/graphql/model/GdtEntryList.ts | 2 +- backend/src/graphql/model/KlickTipp.ts | 2 +- backend/src/graphql/model/OpenCreation.ts | 2 +- backend/src/graphql/model/Pagination.ts | 2 +- backend/src/graphql/model/ProjectBranding.ts | 2 +- backend/src/graphql/model/Space.ts | 2 +- backend/src/graphql/model/SpaceList.ts | 2 +- backend/src/graphql/model/Transaction.ts | 4 +- backend/src/graphql/model/TransactionLink.ts | 2 +- backend/src/graphql/model/TransactionList.ts | 2 +- .../graphql/model/UnconfirmedContribution.ts | 2 +- backend/src/graphql/model/User.ts | 2 +- backend/src/graphql/model/UserAdmin.ts | 2 +- backend/src/graphql/model/UserContact.ts | 2 +- .../src/graphql/resolver/AiChatResolver.ts | 4 +- .../src/graphql/resolver/BalanceResolver.ts | 2 +- .../resolver/CommunityResolver.test.ts | 6 +- .../src/graphql/resolver/CommunityResolver.ts | 4 +- .../resolver/ContributionLinkResolver.test.ts | 4 +- .../resolver/ContributionLinkResolver.ts | 6 +- .../ContributionMessageResolver.test.ts | 4 +- .../resolver/ContributionMessageResolver.ts | 2 +- .../resolver/ContributionResolver.test.ts | 20 +- .../graphql/resolver/ContributionResolver.ts | 16 +- .../graphql/resolver/EmailOptinCodes.test.ts | 4 +- backend/src/graphql/resolver/GdtResolver.ts | 4 +- .../resolver/KlicktippResolver.test.ts | 2 +- .../src/graphql/resolver/KlicktippResolver.ts | 4 +- .../resolver/ProjectBrandingResolver.ts | 2 +- .../graphql/resolver/StatisticsResolver.ts | 2 +- .../resolver/TransactionLinkResolver.test.ts | 12 +- .../resolver/TransactionLinkResolver.ts | 8 +- .../resolver/TransactionResolver.test.ts | 2 +- .../graphql/resolver/TransactionResolver.ts | 10 +- .../src/graphql/resolver/UserResolver.test.ts | 26 +- backend/src/graphql/resolver/UserResolver.ts | 48 +-- .../src/graphql/resolver/semaphore.test.ts | 8 +- .../graphql/resolver/util/creations.test.ts | 4 +- .../resolver/util/extractGraphQLFields.ts | 2 +- .../resolver/util/findUserByIdentifier.ts | 4 +- .../src/graphql/resolver/util/findUsers.ts | 2 +- .../resolver/util/processXComSendCoins.ts | 4 +- .../sendTransactionsToDltConnector.test.ts | 4 +- .../util/settlePendingSenderTransaction.ts | 2 +- .../resolver/util/transactionLinkList.ts | 2 +- .../resolver/util/validateAlias.test.ts | 4 +- .../validator/ContributionStatusArray.ts | 2 +- backend/src/graphql/validator/DateString.ts | 2 +- backend/src/graphql/validator/Decimal.ts | 2 +- backend/src/graphql/validator/Location.ts | 2 +- .../AbstractUnconfirmedContribution.role.ts | 2 +- ...nfirmedContributionAdminAddMessage.role.ts | 5 +- .../UnconfirmedContributionUser.role.ts | 5 +- ...onfirmedContributionUserAddMessage.role.ts | 5 +- .../UpdateUnconfirmedContribution.context.ts | 2 +- backend/src/password/EncryptionWorker.ts | 10 +- backend/src/password/PasswordEncryptor.ts | 2 +- .../src/password/__mocks__/EncryptorUtils.ts | 16 +- backend/src/seeds/factory/contributionLink.ts | 2 +- backend/src/seeds/factory/creation.ts | 2 +- backend/src/seeds/factory/transactionLink.ts | 2 +- backend/src/seeds/index.ts | 2 +- backend/src/server/createServer.ts | 2 +- backend/src/typeorm/connection.ts | 2 +- backend/src/util/communityUser.ts | 2 +- backend/src/util/decay.test.ts | 2 +- backend/src/util/klicktipp.test.ts | 2 +- backend/src/util/klicktipp.ts | 2 +- backend/src/util/virtualTransactions.ts | 2 +- 103 files changed, 411 insertions(+), 399 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 9634ae8a9..534f8367f 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,5 +1,8 @@ { "git.ignoreLimitWarning": true, + "[javascript]": { + "editor.defaultFormatter": "biomejs.biome" + }, "sqltools.connections": [ { "mysqlOptions": { diff --git a/backend/biome.json b/backend/biome.json index cd6a1bb59..84d3a3a29 100644 --- a/backend/biome.json +++ b/backend/biome.json @@ -1,125 +1,125 @@ { - "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", - "vcs": { "enabled": false, "clientKind": "git", "useIgnoreFile": false }, - "files": { - "ignoreUnknown": false, - "ignore": ["build", "node_modules", "coverage"], - "include": ["./src/**/*.js", "./src/**/*.ts"] - }, - "formatter": { - "enabled": true, - "useEditorconfig": true, - "formatWithErrors": false, - "indentStyle": "space", - "indentWidth": 2, - "lineEnding": "lf", - "lineWidth": 100, - "attributePosition": "auto", - "bracketSpacing": true - }, - "organizeImports": { "enabled": true }, - "linter": { - "enabled": true, - "rules": { - "recommended": false, - "complexity": { - "noExtraBooleanCast": "error", - "noMultipleSpacesInRegularExpressionLiterals": "error", - "noUselessCatch": "error", - "noUselessConstructor": "error", - "noUselessLoneBlockStatements": "error", - "noUselessRename": "error", - "noUselessTernary": "error", - "noUselessUndefinedInitialization": "error", - "noVoid": "error", - "noWith": "error", - "useLiteralKeys": "error", - "useRegexLiterals": "error" - }, - "correctness": { - "noConstAssign": "error", - "noConstantCondition": "error", - "noEmptyCharacterClassInRegex": "error", - "noEmptyPattern": "error", - "noGlobalObjectCalls": "error", - "noInnerDeclarations": "error", - "noInvalidConstructorSuper": "error", - "noInvalidUseBeforeDeclaration": "error", - "noNewSymbol": "error", - "noNodejsModules": "off", - "noNonoctalDecimalEscape": "error", - "noPrecisionLoss": "error", - "noSelfAssign": "error", - "noSetterReturn": "error", - "noSwitchDeclarations": "error", - "noUndeclaredVariables": "error", - "noUnreachable": "error", - "noUnreachableSuper": "error", - "noUnsafeFinally": "error", - "noUnsafeOptionalChaining": "error", - "noUnusedLabels": "error", - "noUnusedVariables": "error", - "useArrayLiterals": "error", - "useIsNan": "error", - "useValidForDirection": "error", - "useYield": "error" - }, - "security": { "noGlobalEval": "error" }, - "style": { - "noCommaOperator": "error", - "noDefaultExport": "error", - "noVar": "warn", - "noYodaExpression": "error", - "useBlockStatements": "error", - "useConsistentBuiltinInstantiation": "error", - "useConst": "error", - "useSingleVarDeclarator": "error" - }, - "suspicious": { - "noAsyncPromiseExecutor": "error", - "noCatchAssign": "error", - "noClassAssign": "error", - "noCompareNegZero": "error", - "noConsole": "error", - "noControlCharactersInRegex": "error", - "noDebugger": "error", - "noDoubleEquals": "error", - "noDuplicateCase": "error", - "noDuplicateClassMembers": "error", - "noDuplicateObjectKeys": "error", - "noDuplicateParameters": "error", - "noEmptyBlockStatements": "error", - "noFallthroughSwitchClause": "error", - "noFunctionAssign": "error", - "noGlobalAssign": "error", - "noImportAssign": "error", - "noMisleadingCharacterClass": "error", - "noPrototypeBuiltins": "error", - "noRedeclare": "error", - "noSelfCompare": "error", - "noShadowRestrictedNames": "error", - "noSparseArray": "error", - "noUnsafeNegation": "error", - "useDefaultSwitchClauseLast": "error", - "useGetterReturn": "error", - "useValidTypeof": "error" - } - }, - "ignore": ["**/node_modules", "**/*.min.js", "**/build", "**/coverage"] - }, - "javascript": { - "formatter": { - "jsxQuoteStyle": "single", - "quoteProperties": "asNeeded", - "trailingCommas": "all", - "semicolons": "asNeeded", - "arrowParentheses": "always", - "bracketSameLine": false, - "quoteStyle": "single", - "attributePosition": "auto", - "bracketSpacing": true - }, - "globals": [ + "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", + "vcs": { "enabled": false, "clientKind": "git", "useIgnoreFile": false }, + "files": { + "ignoreUnknown": false, + "ignore": ["build", "node_modules", "coverage"], + "include": ["./src/**/*.js", "./src/**/*.ts"] + }, + "formatter": { + "enabled": true, + "useEditorconfig": true, + "formatWithErrors": false, + "indentStyle": "space", + "indentWidth": 2, + "lineEnding": "lf", + "lineWidth": 100, + "attributePosition": "auto", + "bracketSpacing": true + }, + "organizeImports": { "enabled": true }, + "linter": { + "enabled": true, + "rules": { + "recommended": false, + "complexity": { + "noExtraBooleanCast": "error", + "noMultipleSpacesInRegularExpressionLiterals": "error", + "noUselessCatch": "error", + "noUselessConstructor": "error", + "noUselessLoneBlockStatements": "error", + "noUselessRename": "error", + "noUselessTernary": "error", + "noUselessUndefinedInitialization": "error", + "noVoid": "error", + "noWith": "error", + "useLiteralKeys": "error", + "useRegexLiterals": "error" + }, + "correctness": { + "noConstAssign": "error", + "noConstantCondition": "error", + "noEmptyCharacterClassInRegex": "error", + "noEmptyPattern": "error", + "noGlobalObjectCalls": "error", + "noInnerDeclarations": "error", + "noInvalidConstructorSuper": "error", + "noInvalidUseBeforeDeclaration": "error", + "noNewSymbol": "error", + "noNodejsModules": "off", + "noNonoctalDecimalEscape": "error", + "noPrecisionLoss": "error", + "noSelfAssign": "error", + "noSetterReturn": "error", + "noSwitchDeclarations": "error", + "noUndeclaredVariables": "error", + "noUnreachable": "error", + "noUnreachableSuper": "error", + "noUnsafeFinally": "error", + "noUnsafeOptionalChaining": "error", + "noUnusedLabels": "error", + "noUnusedVariables": "error", + "useArrayLiterals": "error", + "useIsNan": "error", + "useValidForDirection": "error", + "useYield": "error" + }, + "security": { "noGlobalEval": "error" }, + "style": { + "noCommaOperator": "error", + "noDefaultExport": "error", + "noVar": "warn", + "noYodaExpression": "error", + "useBlockStatements": "error", + "useConsistentBuiltinInstantiation": "error", + "useConst": "error", + "useSingleVarDeclarator": "error" + }, + "suspicious": { + "noAsyncPromiseExecutor": "error", + "noCatchAssign": "error", + "noClassAssign": "error", + "noCompareNegZero": "error", + "noConsole": "error", + "noControlCharactersInRegex": "error", + "noDebugger": "error", + "noDoubleEquals": "error", + "noDuplicateCase": "error", + "noDuplicateClassMembers": "error", + "noDuplicateObjectKeys": "error", + "noDuplicateParameters": "error", + "noEmptyBlockStatements": "error", + "noFallthroughSwitchClause": "error", + "noFunctionAssign": "error", + "noGlobalAssign": "error", + "noImportAssign": "error", + "noMisleadingCharacterClass": "error", + "noPrototypeBuiltins": "error", + "noRedeclare": "error", + "noSelfCompare": "error", + "noShadowRestrictedNames": "error", + "noSparseArray": "error", + "noUnsafeNegation": "error", + "useDefaultSwitchClauseLast": "error", + "useGetterReturn": "error", + "useValidTypeof": "error" + } + }, + "ignore": ["**/node_modules", "**/*.min.js", "**/build", "**/coverage"] + }, + "javascript": { + "formatter": { + "jsxQuoteStyle": "single", + "quoteProperties": "asNeeded", + "trailingCommas": "all", + "semicolons": "asNeeded", + "arrowParentheses": "always", + "bracketSameLine": false, + "quoteStyle": "single", + "attributePosition": "auto", + "bracketSpacing": true + }, + "globals": [ "document", "navigator", "window", @@ -127,21 +127,21 @@ "test", "it", "expect", - "beforeAll", - "beforeEach", - "afterAll", - "afterEach", - "jest" - ], - "parser": { - "unsafeParameterDecoratorsEnabled": true - } - }, - "overrides": [ - { - "include": ["*.ts", "*.tsx"], - "linter": { "rules": { "complexity": { "noVoid": "error" } } } - }, - { "include": ["*.test.ts"], "linter": { "rules": {} } } - ] + "beforeAll", + "beforeEach", + "afterAll", + "afterEach", + "jest" + ], + "parser": { + "unsafeParameterDecoratorsEnabled": true + } + }, + "overrides": [ + { + "include": ["*.ts", "*.tsx"], + "linter": { "rules": { "complexity": { "noVoid": "error" } } } + }, + { "include": ["*.test.ts"], "linter": { "rules": {} } } + ] } diff --git a/backend/src/apis/dltConnector/DltConnectorClient.ts b/backend/src/apis/dltConnector/DltConnectorClient.ts index 765d09fb4..0f3a6832b 100644 --- a/backend/src/apis/dltConnector/DltConnectorClient.ts +++ b/backend/src/apis/dltConnector/DltConnectorClient.ts @@ -1,5 +1,5 @@ import { Transaction as DbTransaction } from '@entity/Transaction' -import { gql, GraphQLClient } from 'graphql-request' +import { GraphQLClient, gql } from 'graphql-request' import { CONFIG } from '@/config' import { TransactionTypeId } from '@/graphql/enum/TransactionTypeId' diff --git a/backend/src/apis/gms/ExportUsers.ts b/backend/src/apis/gms/ExportUsers.ts index 43d8200c6..5e2f9f213 100644 --- a/backend/src/apis/gms/ExportUsers.ts +++ b/backend/src/apis/gms/ExportUsers.ts @@ -12,8 +12,8 @@ import { User as DbUser } from '@entity/User' import { CONFIG } from '@/config' import { getHomeCommunity } from '@/graphql/resolver/util/communities' import { sendUserToGms } from '@/graphql/resolver/util/sendUserToGms' -import { createServer } from '@/server/createServer' import { LogError } from '@/server/LogError' +import { createServer } from '@/server/createServer' import { backendLogger as logger } from '@/server/logger' CONFIG.EMAIL = false diff --git a/backend/src/apis/humhub/ExportUsers.ts b/backend/src/apis/humhub/ExportUsers.ts index b3af27f7d..bfa44af55 100644 --- a/backend/src/apis/humhub/ExportUsers.ts +++ b/backend/src/apis/humhub/ExportUsers.ts @@ -4,8 +4,8 @@ import { User } from '@entity/User' import { CONFIG } from '@/config' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' -import { Connection } from '@/typeorm/connection' import { checkDBVersion } from '@/typeorm/DBVersion' +import { Connection } from '@/typeorm/connection' import { HumHubClient } from './HumHubClient' import { GetUser } from './model/GetUser' diff --git a/backend/src/apis/humhub/compareHumhubUserDbUser.test.ts b/backend/src/apis/humhub/compareHumhubUserDbUser.test.ts index cc636d17a..16ec81b24 100644 --- a/backend/src/apis/humhub/compareHumhubUserDbUser.test.ts +++ b/backend/src/apis/humhub/compareHumhubUserDbUser.test.ts @@ -7,58 +7,58 @@ import { GetUser } from './model/GetUser' const defaultUser = communityDbUser describe('isHumhubUserIdenticalToDbUser', () => { - beforeEach(() => { - defaultUser.firstName = 'first name' - defaultUser.lastName = 'last name' - defaultUser.alias = 'alias' - defaultUser.emailContact.email = 'email@gmail.com' - defaultUser.language = 'en' - }) + beforeEach(() => { + defaultUser.firstName = 'first name' + defaultUser.lastName = 'last name' + defaultUser.alias = 'alias' + defaultUser.emailContact.email = 'email@gmail.com' + defaultUser.language = 'en' + }) - it('Should return true because humhubUser was created from entity user', () => { - const humhubUser = new GetUser(defaultUser, 1) - const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) - expect(result).toBe(true) - }) + it('Should return true because humhubUser was created from entity user', () => { + const humhubUser = new GetUser(defaultUser, 1) + const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) + expect(result).toBe(true) + }) - it('Should return false because first name differ', () => { - const humhubUser = new GetUser(defaultUser, 1) - humhubUser.profile.firstname = 'changed first name' - const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) - expect(result).toBe(false) - }) - it('Should return false because last name differ', () => { - const humhubUser = new GetUser(defaultUser, 1) - humhubUser.profile.lastname = 'changed last name' - const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) - expect(result).toBe(false) - }) - it('Should return false because username differ', () => { - const humhubUser = new GetUser(defaultUser, 1) - humhubUser.account.username = 'changed username' - const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) - expect(result).toBe(false) - }) + it('Should return false because first name differ', () => { + const humhubUser = new GetUser(defaultUser, 1) + humhubUser.profile.firstname = 'changed first name' + const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) + expect(result).toBe(false) + }) + it('Should return false because last name differ', () => { + const humhubUser = new GetUser(defaultUser, 1) + humhubUser.profile.lastname = 'changed last name' + const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) + expect(result).toBe(false) + }) + it('Should return false because username differ', () => { + const humhubUser = new GetUser(defaultUser, 1) + humhubUser.account.username = 'changed username' + const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) + expect(result).toBe(false) + }) - it('Should return false because email differ', () => { - const humhubUser = new GetUser(defaultUser, 1) - humhubUser.account.email = 'new@gmail.com' - const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) - expect(result).toBe(false) - }) + it('Should return false because email differ', () => { + const humhubUser = new GetUser(defaultUser, 1) + humhubUser.account.email = 'new@gmail.com' + const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) + expect(result).toBe(false) + }) - it('Should return false because language differ', () => { - const humhubUser = new GetUser(defaultUser, 1) - humhubUser.account.language = 'de' - const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) - expect(result).toBe(false) - }) + it('Should return false because language differ', () => { + const humhubUser = new GetUser(defaultUser, 1) + humhubUser.account.language = 'de' + const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) + expect(result).toBe(false) + }) - it('Should return false because gradido_address differ', () => { - const humhubUser = new GetUser(defaultUser, 1) - // eslint-disable-next-line camelcase - humhubUser.profile.gradido_address = 'changed gradido address' - const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) - expect(result).toBe(false) - }) + it('Should return false because gradido_address differ', () => { + const humhubUser = new GetUser(defaultUser, 1) + // eslint-disable-next-line camelcase + humhubUser.profile.gradido_address = 'changed gradido address' + const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) + expect(result).toBe(false) + }) }) diff --git a/backend/src/apis/humhub/syncUser.test.ts b/backend/src/apis/humhub/syncUser.test.ts index 20a6b2c33..2327e0c24 100644 --- a/backend/src/apis/humhub/syncUser.test.ts +++ b/backend/src/apis/humhub/syncUser.test.ts @@ -3,7 +3,7 @@ import { User } from '@entity/User' import { UserContact } from '@entity/UserContact' import { GetUser } from './model/GetUser' -import { syncUser, ExecutedHumhubAction } from './syncUser' +import { ExecutedHumhubAction, syncUser } from './syncUser' jest.mock('@/apis/humhub/HumHubClient') diff --git a/backend/src/apis/humhub/syncUser.ts b/backend/src/apis/humhub/syncUser.ts index fc6fcc99b..db9275e64 100644 --- a/backend/src/apis/humhub/syncUser.ts +++ b/backend/src/apis/humhub/syncUser.ts @@ -2,8 +2,8 @@ import { User } from '@entity/User' import { LogError } from '@/server/LogError' -import { isHumhubUserIdenticalToDbUser } from './compareHumhubUserDbUser' import { HumHubClient } from './HumHubClient' +import { isHumhubUserIdenticalToDbUser } from './compareHumhubUserDbUser' import { GetUser } from './model/GetUser' import { PostUser } from './model/PostUser' diff --git a/backend/src/config/index.ts b/backend/src/config/index.ts index 4ef64f3ea..3420cd106 100644 --- a/backend/src/config/index.ts +++ b/backend/src/config/index.ts @@ -100,11 +100,11 @@ const email = { EMAIL_LINK_OVERVIEW: COMMUNITY_URL + (process.env.EMAIL_LINK_OVERVIEW_PATH ?? '/overview'), // time in minutes a optin code is valid EMAIL_CODE_VALID_TIME: process.env.EMAIL_CODE_VALID_TIME - ? parseInt(process.env.EMAIL_CODE_VALID_TIME) ?? 1440 + ? (parseInt(process.env.EMAIL_CODE_VALID_TIME) ?? 1440) : 1440, // time in minutes that must pass to request a new optin code EMAIL_CODE_REQUEST_TIME: process.env.EMAIL_CODE_REQUEST_TIME - ? parseInt(process.env.EMAIL_CODE_REQUEST_TIME) ?? 10 + ? (parseInt(process.env.EMAIL_CODE_REQUEST_TIME) ?? 10) : 10, } diff --git a/backend/src/config/schema.ts b/backend/src/config/schema.ts index e5a2f786e..da61b8988 100644 --- a/backend/src/config/schema.ts +++ b/backend/src/config/schema.ts @@ -1,19 +1,19 @@ /* eslint-disable @typescript-eslint/no-unsafe-assignment */ // eslint-disable-next-line import/no-unresolved import { - COMMUNITY_NAME, - COMMUNITY_URL, COMMUNITY_DESCRIPTION, + COMMUNITY_NAME, COMMUNITY_SUPPORT_MAIL, + COMMUNITY_URL, + DB_DATABASE, DB_HOST, DB_PASSWORD, DB_PORT, DB_USER, DB_VERSION, - DB_DATABASE, DECAY_START_TIME, - GDT_API_URL, GDT_ACTIVE, + GDT_API_URL, GMS_ACTIVE, GRAPHIQL, HUMHUB_ACTIVE, diff --git a/backend/src/data/PublishName.logic.ts b/backend/src/data/PublishName.logic.ts index a78627d49..3befb4d3a 100644 --- a/backend/src/data/PublishName.logic.ts +++ b/backend/src/data/PublishName.logic.ts @@ -54,8 +54,8 @@ export class PublishNameLogic { return publishNameType === PublishNameType.PUBLISH_NAME_FULL ? this.user.lastName : publishNameType === PublishNameType.PUBLISH_NAME_FIRST_INITIAL - ? this.user.lastName.charAt(0) - : '' + ? this.user.lastName.charAt(0) + : '' } /** @@ -84,8 +84,8 @@ export class PublishNameLogic { return this.isUsernameFromAlias(publishNameType) ? this.getUsernameFromAlias() : this.isUsernameFromInitials(publishNameType) - ? this.getUsernameFromInitials() - : (this.getFirstName(publishNameType) + ' ' + this.getLastName(publishNameType)).trim() + ? this.getUsernameFromInitials() + : (this.getFirstName(publishNameType) + ' ' + this.getLastName(publishNameType)).trim() } public getUsernameFromInitials(): string { diff --git a/backend/src/emails/sendEmailTranslated.test.ts b/backend/src/emails/sendEmailTranslated.test.ts index f38342985..69e5d9d83 100644 --- a/backend/src/emails/sendEmailTranslated.test.ts +++ b/backend/src/emails/sendEmailTranslated.test.ts @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/no-unsafe-assignment */ import { createTransport } from 'nodemailer' -import { logger, i18n } from '@test/testSetup' +import { i18n, logger } from '@test/testSetup' import { CONFIG } from '@/config' diff --git a/backend/src/emails/sendEmailVariants.test.ts b/backend/src/emails/sendEmailVariants.test.ts index 88cd851d2..e48c42b01 100644 --- a/backend/src/emails/sendEmailVariants.test.ts +++ b/backend/src/emails/sendEmailVariants.test.ts @@ -7,23 +7,23 @@ import { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { testEnvironment } from '@test/helpers' -import { logger, i18n as localization } from '@test/testSetup' +import { i18n as localization, logger } from '@test/testSetup' import { CONFIG } from '@/config' // eslint-disable-next-line import/no-namespace import * as sendEmailTranslatedApi from './sendEmailTranslated' import { - sendAddedContributionMessageEmail, sendAccountActivationEmail, sendAccountMultiRegistrationEmail, + sendAddedContributionMessageEmail, + sendContributionChangedByModeratorEmail, sendContributionConfirmedEmail, - sendContributionDeniedEmail, sendContributionDeletedEmail, + sendContributionDeniedEmail, sendResetPasswordEmail, sendTransactionLinkRedeemedEmail, sendTransactionReceivedEmail, - sendContributionChangedByModeratorEmail, } from './sendEmailVariants' const testMailServerHost = 'localhost' diff --git a/backend/src/federation/validateCommunities.test.ts b/backend/src/federation/validateCommunities.test.ts index 9ff8d545f..d7b26435f 100644 --- a/backend/src/federation/validateCommunities.test.ts +++ b/backend/src/federation/validateCommunities.test.ts @@ -11,7 +11,7 @@ import { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLClient } from 'graphql-request' import { Response } from 'graphql-request/dist/types' -import { testEnvironment, cleanDB } from '@test/helpers' +import { cleanDB, testEnvironment } from '@test/helpers' import { logger } from '@test/testSetup' import { validateCommunities } from './validateCommunities' diff --git a/backend/src/graphql/arg/ContributionLinkArgs.ts b/backend/src/graphql/arg/ContributionLinkArgs.ts index 97cf3dfdd..f68b6c957 100644 --- a/backend/src/graphql/arg/ContributionLinkArgs.ts +++ b/backend/src/graphql/arg/ContributionLinkArgs.ts @@ -3,10 +3,10 @@ import { Decimal } from 'decimal.js-light' import { ArgsType, Field, Int } from 'type-graphql' import { + CONTRIBUTIONLINK_NAME_MAX_CHARS, + CONTRIBUTIONLINK_NAME_MIN_CHARS, MEMO_MAX_CHARS, MEMO_MIN_CHARS, - CONTRIBUTIONLINK_NAME_MIN_CHARS, - CONTRIBUTIONLINK_NAME_MAX_CHARS, } from '@/graphql/resolver/const/const' import { isValidDateString } from '@/graphql/validator/DateString' import { IsPositiveDecimal } from '@/graphql/validator/Decimal' diff --git a/backend/src/graphql/arg/ContributionMessageArgs.ts b/backend/src/graphql/arg/ContributionMessageArgs.ts index e20686187..8c95fadbd 100644 --- a/backend/src/graphql/arg/ContributionMessageArgs.ts +++ b/backend/src/graphql/arg/ContributionMessageArgs.ts @@ -1,5 +1,5 @@ -import { IsInt, IsString, IsEnum } from 'class-validator' -import { ArgsType, Field, Int, InputType } from 'type-graphql' +import { IsEnum, IsInt, IsString } from 'class-validator' +import { ArgsType, Field, InputType, Int } from 'type-graphql' import { ContributionMessageType } from '@enum/ContributionMessageType' diff --git a/backend/src/graphql/arg/Paginated.ts b/backend/src/graphql/arg/Paginated.ts index f66c71c21..ed39c046b 100644 --- a/backend/src/graphql/arg/Paginated.ts +++ b/backend/src/graphql/arg/Paginated.ts @@ -1,6 +1,6 @@ /* eslint-disable type-graphql/invalid-nullable-input-type */ -import { IsPositive, IsEnum } from 'class-validator' -import { ArgsType, Field, Int, InputType } from 'type-graphql' +import { IsEnum, IsPositive } from 'class-validator' +import { ArgsType, Field, InputType, Int } from 'type-graphql' import { Order } from '@enum/Order' diff --git a/backend/src/graphql/arg/SearchContributionsFilterArgs.ts b/backend/src/graphql/arg/SearchContributionsFilterArgs.ts index 7896ad67a..ad8b7747e 100644 --- a/backend/src/graphql/arg/SearchContributionsFilterArgs.ts +++ b/backend/src/graphql/arg/SearchContributionsFilterArgs.ts @@ -1,5 +1,5 @@ import { IsBoolean, IsPositive, IsString } from 'class-validator' -import { Field, ArgsType, Int, InputType } from 'type-graphql' +import { ArgsType, Field, InputType, Int } from 'type-graphql' import { ContributionStatus } from '@enum/ContributionStatus' diff --git a/backend/src/graphql/arg/SetUserRoleArgs.ts b/backend/src/graphql/arg/SetUserRoleArgs.ts index 039d190cd..48d8086ab 100644 --- a/backend/src/graphql/arg/SetUserRoleArgs.ts +++ b/backend/src/graphql/arg/SetUserRoleArgs.ts @@ -1,5 +1,5 @@ -import { IsPositive, IsEnum } from 'class-validator' -import { ArgsType, Field, Int, InputType } from 'type-graphql' +import { IsEnum, IsPositive } from 'class-validator' +import { ArgsType, Field, InputType, Int } from 'type-graphql' import { RoleNames } from '@enum/RoleNames' diff --git a/backend/src/graphql/arg/TransactionSendArgs.ts b/backend/src/graphql/arg/TransactionSendArgs.ts index 5bd8b89f7..523f09d46 100644 --- a/backend/src/graphql/arg/TransactionSendArgs.ts +++ b/backend/src/graphql/arg/TransactionSendArgs.ts @@ -1,4 +1,4 @@ -import { MaxLength, MinLength, IsString } from 'class-validator' +import { IsString, MaxLength, MinLength } from 'class-validator' import { Decimal } from 'decimal.js-light' import { ArgsType, Field } from 'type-graphql' diff --git a/backend/src/graphql/directive/isAuthorized.ts b/backend/src/graphql/directive/isAuthorized.ts index 5912f16f7..0648339ed 100644 --- a/backend/src/graphql/directive/isAuthorized.ts +++ b/backend/src/graphql/directive/isAuthorized.ts @@ -7,15 +7,15 @@ import { INALIENABLE_RIGHTS } from '@/auth/INALIENABLE_RIGHTS' import { decode, encode } from '@/auth/JWT' import { RIGHTS } from '@/auth/RIGHTS' import { - ROLE_UNAUTHORIZED, - ROLE_USER, ROLE_ADMIN, + ROLE_DLT_CONNECTOR, ROLE_MODERATOR, ROLE_MODERATOR_AI, - ROLE_DLT_CONNECTOR, + ROLE_UNAUTHORIZED, + ROLE_USER, } from '@/auth/ROLES' -import { Context } from '@/server/context' import { LogError } from '@/server/LogError' +import { Context } from '@/server/context' export const isAuthorized: AuthChecker = async ({ context }, rights) => { context.role = ROLE_UNAUTHORIZED // unauthorized user diff --git a/backend/src/graphql/input/ProjectBrandingInput.ts b/backend/src/graphql/input/ProjectBrandingInput.ts index 16585c858..d1ed4c8df 100644 --- a/backend/src/graphql/input/ProjectBrandingInput.ts +++ b/backend/src/graphql/input/ProjectBrandingInput.ts @@ -1,5 +1,5 @@ -import { IsString, IsOptional, MaxLength, IsNumber, IsBoolean, IsUrl } from 'class-validator' -import { InputType, Field, Int } from 'type-graphql' +import { IsBoolean, IsNumber, IsOptional, IsString, IsUrl, MaxLength } from 'class-validator' +import { Field, InputType, Int } from 'type-graphql' @InputType() export class ProjectBrandingInput { diff --git a/backend/src/graphql/model/AdminCommunityView.ts b/backend/src/graphql/model/AdminCommunityView.ts index b4a1664a7..96f6fe213 100644 --- a/backend/src/graphql/model/AdminCommunityView.ts +++ b/backend/src/graphql/model/AdminCommunityView.ts @@ -1,7 +1,7 @@ import { Point } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -import { ObjectType, Field } from 'type-graphql' +import { Field, ObjectType } from 'type-graphql' import { Point2Location } from '@/graphql/resolver/util/Location2Point' diff --git a/backend/src/graphql/model/AdminUpdateContribution.ts b/backend/src/graphql/model/AdminUpdateContribution.ts index b7c3df6bd..c5557ef10 100644 --- a/backend/src/graphql/model/AdminUpdateContribution.ts +++ b/backend/src/graphql/model/AdminUpdateContribution.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { ObjectType, Field } from 'type-graphql' +import { Field, ObjectType } from 'type-graphql' @ObjectType() export class AdminUpdateContribution { diff --git a/backend/src/graphql/model/Balance.ts b/backend/src/graphql/model/Balance.ts index d992677b1..8f04004e1 100644 --- a/backend/src/graphql/model/Balance.ts +++ b/backend/src/graphql/model/Balance.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { ObjectType, Field, Int, Float } from 'type-graphql' +import { Field, Float, Int, ObjectType } from 'type-graphql' @ObjectType() export class Balance { diff --git a/backend/src/graphql/model/ChatGptMessage.ts b/backend/src/graphql/model/ChatGptMessage.ts index fd77dd7d8..3a5f08a59 100644 --- a/backend/src/graphql/model/ChatGptMessage.ts +++ b/backend/src/graphql/model/ChatGptMessage.ts @@ -1,4 +1,4 @@ -import { ObjectType, Field } from 'type-graphql' +import { Field, ObjectType } from 'type-graphql' import { Message } from '@/apis/openai/model/Message' diff --git a/backend/src/graphql/model/Community.ts b/backend/src/graphql/model/Community.ts index 06c07875e..c3749d27a 100644 --- a/backend/src/graphql/model/Community.ts +++ b/backend/src/graphql/model/Community.ts @@ -1,5 +1,5 @@ import { Community as DbCommunity } from '@entity/Community' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() export class Community { diff --git a/backend/src/graphql/model/CommunityStatistics.ts b/backend/src/graphql/model/CommunityStatistics.ts index 775ad183b..2b7eb62e5 100644 --- a/backend/src/graphql/model/CommunityStatistics.ts +++ b/backend/src/graphql/model/CommunityStatistics.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() export class DynamicStatisticsFields { diff --git a/backend/src/graphql/model/Contribution.ts b/backend/src/graphql/model/Contribution.ts index dc4d65e63..301348ccc 100644 --- a/backend/src/graphql/model/Contribution.ts +++ b/backend/src/graphql/model/Contribution.ts @@ -1,7 +1,7 @@ import { Contribution as dbContribution } from '@entity/Contribution' import { User as DbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' import { User } from './User' diff --git a/backend/src/graphql/model/ContributionLink.ts b/backend/src/graphql/model/ContributionLink.ts index 3d02953b3..786646c4a 100644 --- a/backend/src/graphql/model/ContributionLink.ts +++ b/backend/src/graphql/model/ContributionLink.ts @@ -1,6 +1,6 @@ import { ContributionLink as dbContributionLink } from '@entity/ContributionLink' import { Decimal } from 'decimal.js-light' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' import { CONFIG } from '@/config' diff --git a/backend/src/graphql/model/ContributionLinkList.ts b/backend/src/graphql/model/ContributionLinkList.ts index c35f6fae6..7f7c3b56f 100644 --- a/backend/src/graphql/model/ContributionLinkList.ts +++ b/backend/src/graphql/model/ContributionLinkList.ts @@ -1,4 +1,4 @@ -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' import { ContributionLink } from '@model/ContributionLink' diff --git a/backend/src/graphql/model/Decay.ts b/backend/src/graphql/model/Decay.ts index 0b710c234..a32b96c13 100644 --- a/backend/src/graphql/model/Decay.ts +++ b/backend/src/graphql/model/Decay.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' interface DecayInterface { balance: Decimal diff --git a/backend/src/graphql/model/FederatedCommunity.ts b/backend/src/graphql/model/FederatedCommunity.ts index 01a3996ce..aefbfa4b8 100644 --- a/backend/src/graphql/model/FederatedCommunity.ts +++ b/backend/src/graphql/model/FederatedCommunity.ts @@ -1,5 +1,5 @@ import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' import { ensureUrlEndsWithSlash } from '@/util/utilities' diff --git a/backend/src/graphql/model/GdtEntry.ts b/backend/src/graphql/model/GdtEntry.ts index 43a33ba30..89068dd9d 100644 --- a/backend/src/graphql/model/GdtEntry.ts +++ b/backend/src/graphql/model/GdtEntry.ts @@ -1,6 +1,6 @@ /* eslint-disable @typescript-eslint/no-unsafe-assignment */ /* eslint-disable @typescript-eslint/no-explicit-any */ -import { ObjectType, Field, Float, Int } from 'type-graphql' +import { Field, Float, Int, ObjectType } from 'type-graphql' import { GdtEntryType } from '@enum/GdtEntryType' diff --git a/backend/src/graphql/model/GdtEntryList.ts b/backend/src/graphql/model/GdtEntryList.ts index adbe5dbc6..480712e31 100644 --- a/backend/src/graphql/model/GdtEntryList.ts +++ b/backend/src/graphql/model/GdtEntryList.ts @@ -1,4 +1,4 @@ -import { ObjectType, Field, Int, Float } from 'type-graphql' +import { Field, Float, Int, ObjectType } from 'type-graphql' import { GdtEntry } from './GdtEntry' diff --git a/backend/src/graphql/model/KlickTipp.ts b/backend/src/graphql/model/KlickTipp.ts index 356ed391f..3fc17c3ae 100644 --- a/backend/src/graphql/model/KlickTipp.ts +++ b/backend/src/graphql/model/KlickTipp.ts @@ -1,4 +1,4 @@ -import { ObjectType, Field } from 'type-graphql' +import { Field, ObjectType } from 'type-graphql' @ObjectType() export class KlickTipp { diff --git a/backend/src/graphql/model/OpenCreation.ts b/backend/src/graphql/model/OpenCreation.ts index 46ee8117f..7a2d5c9be 100644 --- a/backend/src/graphql/model/OpenCreation.ts +++ b/backend/src/graphql/model/OpenCreation.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() export class OpenCreation { diff --git a/backend/src/graphql/model/Pagination.ts b/backend/src/graphql/model/Pagination.ts index 761b57699..200ee3f9d 100644 --- a/backend/src/graphql/model/Pagination.ts +++ b/backend/src/graphql/model/Pagination.ts @@ -1,4 +1,4 @@ -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() export class Pagination { diff --git a/backend/src/graphql/model/ProjectBranding.ts b/backend/src/graphql/model/ProjectBranding.ts index c76289405..8f5ad6ca5 100644 --- a/backend/src/graphql/model/ProjectBranding.ts +++ b/backend/src/graphql/model/ProjectBranding.ts @@ -1,5 +1,5 @@ import { ProjectBranding as dbProjectBranding } from '@entity/ProjectBranding' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() export class ProjectBranding { diff --git a/backend/src/graphql/model/Space.ts b/backend/src/graphql/model/Space.ts index 6f3a3cdfa..eb14a34fb 100644 --- a/backend/src/graphql/model/Space.ts +++ b/backend/src/graphql/model/Space.ts @@ -1,4 +1,4 @@ -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' import { Space as HumhubSpace } from '@/apis/humhub/model/Space' diff --git a/backend/src/graphql/model/SpaceList.ts b/backend/src/graphql/model/SpaceList.ts index 311af84d7..2c611e211 100644 --- a/backend/src/graphql/model/SpaceList.ts +++ b/backend/src/graphql/model/SpaceList.ts @@ -1,4 +1,4 @@ -import { ObjectType, Field } from 'type-graphql' +import { Field, ObjectType } from 'type-graphql' import { SpacesResponse } from '@/apis/humhub/model/SpacesResponse' diff --git a/backend/src/graphql/model/Transaction.ts b/backend/src/graphql/model/Transaction.ts index bfc96089b..a1ad73677 100644 --- a/backend/src/graphql/model/Transaction.ts +++ b/backend/src/graphql/model/Transaction.ts @@ -1,6 +1,6 @@ import { Transaction as dbTransaction } from '@entity/Transaction' import { Decimal } from 'decimal.js-light' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' import { TransactionTypeId } from '@enum/TransactionTypeId' @@ -46,7 +46,7 @@ export class Transaction { this.linkedTransactionId = transaction.linkedTransactionId ?? null this.linkId = transaction.contribution ? transaction.contribution.contributionLinkId - : transaction.transactionLinkId ?? null + : (transaction.transactionLinkId ?? null) this.previousBalance = transaction.previousTransaction?.balance.toDecimalPlaces(2, Decimal.ROUND_DOWN) ?? new Decimal(0) diff --git a/backend/src/graphql/model/TransactionLink.ts b/backend/src/graphql/model/TransactionLink.ts index 995fe5d50..4b6b0e364 100644 --- a/backend/src/graphql/model/TransactionLink.ts +++ b/backend/src/graphql/model/TransactionLink.ts @@ -1,6 +1,6 @@ import { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' import { Decimal } from 'decimal.js-light' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' import { CONFIG } from '@/config' diff --git a/backend/src/graphql/model/TransactionList.ts b/backend/src/graphql/model/TransactionList.ts index 77f9f6481..421c5a87b 100644 --- a/backend/src/graphql/model/TransactionList.ts +++ b/backend/src/graphql/model/TransactionList.ts @@ -1,4 +1,4 @@ -import { ObjectType, Field } from 'type-graphql' +import { Field, ObjectType } from 'type-graphql' import { Balance } from './Balance' import { Transaction } from './Transaction' diff --git a/backend/src/graphql/model/UnconfirmedContribution.ts b/backend/src/graphql/model/UnconfirmedContribution.ts index 5e38db6a0..ad2d914c1 100644 --- a/backend/src/graphql/model/UnconfirmedContribution.ts +++ b/backend/src/graphql/model/UnconfirmedContribution.ts @@ -1,7 +1,7 @@ import { Contribution } from '@entity/Contribution' import { User } from '@entity/User' import { Decimal } from 'decimal.js-light' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() export class UnconfirmedContribution { diff --git a/backend/src/graphql/model/User.ts b/backend/src/graphql/model/User.ts index e7a8288f0..0e19ab33f 100644 --- a/backend/src/graphql/model/User.ts +++ b/backend/src/graphql/model/User.ts @@ -1,6 +1,6 @@ import { Point } from '@dbTools/typeorm' import { User as dbUser } from '@entity/User' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' import { GmsPublishLocationType } from '@enum/GmsPublishLocationType' import { PublishNameType } from '@enum/PublishNameType' diff --git a/backend/src/graphql/model/UserAdmin.ts b/backend/src/graphql/model/UserAdmin.ts index 3266e9df8..d0b5cc932 100644 --- a/backend/src/graphql/model/UserAdmin.ts +++ b/backend/src/graphql/model/UserAdmin.ts @@ -1,6 +1,6 @@ import { User } from '@entity/User' import { Decimal } from 'decimal.js-light' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() export class UserAdmin { diff --git a/backend/src/graphql/model/UserContact.ts b/backend/src/graphql/model/UserContact.ts index 3c32229f2..a2745fb9a 100644 --- a/backend/src/graphql/model/UserContact.ts +++ b/backend/src/graphql/model/UserContact.ts @@ -1,5 +1,5 @@ import { UserContact as DbUserContact } from '@entity/UserContact' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() export class UserContact { diff --git a/backend/src/graphql/resolver/AiChatResolver.ts b/backend/src/graphql/resolver/AiChatResolver.ts index 7c1acba73..3fd01826f 100644 --- a/backend/src/graphql/resolver/AiChatResolver.ts +++ b/backend/src/graphql/resolver/AiChatResolver.ts @@ -1,10 +1,10 @@ -import { Resolver, Mutation, Authorized, Ctx, Arg, Query } from 'type-graphql' +import { Arg, Authorized, Ctx, Mutation, Query, Resolver } from 'type-graphql' import { OpenaiMessage } from '@input/OpenaiMessage' import { ChatGptMessage } from '@model/ChatGptMessage' -import { Message } from '@/apis/openai/model/Message' import { OpenaiClient } from '@/apis/openai/OpenaiClient' +import { Message } from '@/apis/openai/model/Message' import { RIGHTS } from '@/auth/RIGHTS' import { Context } from '@/server/context' diff --git a/backend/src/graphql/resolver/BalanceResolver.ts b/backend/src/graphql/resolver/BalanceResolver.ts index c023e3510..1d0d70151 100644 --- a/backend/src/graphql/resolver/BalanceResolver.ts +++ b/backend/src/graphql/resolver/BalanceResolver.ts @@ -3,7 +3,7 @@ import { IsNull } from '@dbTools/typeorm' import { Transaction as dbTransaction } from '@entity/Transaction' import { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' import { Decimal } from 'decimal.js-light' -import { Resolver, Query, Ctx, Authorized } from 'type-graphql' +import { Authorized, Ctx, Query, Resolver } from 'type-graphql' import { Balance } from '@model/Balance' diff --git a/backend/src/graphql/resolver/CommunityResolver.test.ts b/backend/src/graphql/resolver/CommunityResolver.test.ts index f9e6aa9ac..48227d94d 100644 --- a/backend/src/graphql/resolver/CommunityResolver.test.ts +++ b/backend/src/graphql/resolver/CommunityResolver.test.ts @@ -13,16 +13,16 @@ import { GraphQLError } from 'graphql/error/GraphQLError' import { v4 as uuidv4 } from 'uuid' import { cleanDB, testEnvironment } from '@test/helpers' -import { logger, i18n as localization } from '@test/testSetup' +import { i18n as localization, logger } from '@test/testSetup' import { userFactory } from '@/seeds/factory/user' import { login, updateHomeCommunityQuery } from '@/seeds/graphql/mutations' import { allCommunities, - getCommunities, communitiesQuery, - getHomeCommunityQuery, + getCommunities, getCommunityByIdentifierQuery, + getHomeCommunityQuery, } from '@/seeds/graphql/queries' import { peterLustig } from '@/seeds/users/peter-lustig' diff --git a/backend/src/graphql/resolver/CommunityResolver.ts b/backend/src/graphql/resolver/CommunityResolver.ts index 8a6d2992b..5c9f52111 100644 --- a/backend/src/graphql/resolver/CommunityResolver.ts +++ b/backend/src/graphql/resolver/CommunityResolver.ts @@ -1,7 +1,7 @@ import { IsNull, Not } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -import { Resolver, Query, Authorized, Mutation, Args, Arg } from 'type-graphql' +import { Arg, Args, Authorized, Mutation, Query, Resolver } from 'type-graphql' import { Paginated } from '@arg/Paginated' import { EditCommunityInput } from '@input/EditCommunityInput' @@ -12,13 +12,13 @@ import { FederatedCommunity } from '@model/FederatedCommunity' import { RIGHTS } from '@/auth/RIGHTS' import { LogError } from '@/server/LogError' +import { Location2Point } from './util/Location2Point' import { getAllCommunities, getCommunityByIdentifier, getCommunityByUuid, getHomeCommunity, } from './util/communities' -import { Location2Point } from './util/Location2Point' @Resolver() export class CommunityResolver { diff --git a/backend/src/graphql/resolver/ContributionLinkResolver.test.ts b/backend/src/graphql/resolver/ContributionLinkResolver.test.ts index 3a3196c85..5b4654303 100644 --- a/backend/src/graphql/resolver/ContributionLinkResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionLinkResolver.test.ts @@ -7,15 +7,15 @@ import { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { GraphQLError } from 'graphql' -import { cleanDB, testEnvironment, resetToken } from '@test/helpers' +import { cleanDB, resetToken, testEnvironment } from '@test/helpers' import { logger } from '@test/testSetup' import { EventType } from '@/event/Events' import { userFactory } from '@/seeds/factory/user' import { - login, createContributionLink, deleteContributionLink, + login, updateContributionLink, } from '@/seeds/graphql/mutations' import { listContributionLinks } from '@/seeds/graphql/queries' diff --git a/backend/src/graphql/resolver/ContributionLinkResolver.ts b/backend/src/graphql/resolver/ContributionLinkResolver.ts index 0a04d387d..80fc772a9 100644 --- a/backend/src/graphql/resolver/ContributionLinkResolver.ts +++ b/backend/src/graphql/resolver/ContributionLinkResolver.ts @@ -1,6 +1,6 @@ -import { MoreThan, IsNull } from '@dbTools/typeorm' +import { IsNull, MoreThan } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' -import { Resolver, Args, Arg, Authorized, Mutation, Query, Int, Ctx } from 'type-graphql' +import { Arg, Args, Authorized, Ctx, Int, Mutation, Query, Resolver } from 'type-graphql' import { ContributionLinkArgs } from '@arg/ContributionLinkArgs' import { Paginated } from '@arg/Paginated' @@ -14,8 +14,8 @@ import { EVENT_ADMIN_CONTRIBUTION_LINK_DELETE, EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE, } from '@/event/Events' -import { Context, getUser } from '@/server/context' import { LogError } from '@/server/LogError' +import { Context, getUser } from '@/server/context' import { transactionLinkCode as contributionLinkCode } from './TransactionLinkResolver' import { isStartEndDateValid } from './util/creations' diff --git a/backend/src/graphql/resolver/ContributionMessageResolver.test.ts b/backend/src/graphql/resolver/ContributionMessageResolver.test.ts index ac3800703..d8ad101b7 100644 --- a/backend/src/graphql/resolver/ContributionMessageResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionMessageResolver.test.ts @@ -11,7 +11,7 @@ import { GraphQLError } from 'graphql' import { ContributionStatus } from '@enum/ContributionStatus' import { cleanDB, resetToken, testEnvironment } from '@test/helpers' -import { logger, i18n as localization } from '@test/testSetup' +import { i18n as localization, logger } from '@test/testSetup' import { sendAddedContributionMessageEmail } from '@/emails/sendEmailVariants' import { EventType } from '@/event/Events' @@ -22,7 +22,7 @@ import { createContributionMessage, login, } from '@/seeds/graphql/mutations' -import { listContributionMessages, adminListContributionMessages } from '@/seeds/graphql/queries' +import { adminListContributionMessages, listContributionMessages } from '@/seeds/graphql/queries' import { bibiBloxberg } from '@/seeds/users/bibi-bloxberg' import { bobBaumeister } from '@/seeds/users/bob-baumeister' import { peterLustig } from '@/seeds/users/peter-lustig' diff --git a/backend/src/graphql/resolver/ContributionMessageResolver.ts b/backend/src/graphql/resolver/ContributionMessageResolver.ts index 4803cea09..26f7f3eb8 100644 --- a/backend/src/graphql/resolver/ContributionMessageResolver.ts +++ b/backend/src/graphql/resolver/ContributionMessageResolver.ts @@ -18,8 +18,8 @@ import { EVENT_CONTRIBUTION_MESSAGE_CREATE, } from '@/event/Events' import { UpdateUnconfirmedContributionContext } from '@/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context' -import { Context, getUser } from '@/server/context' import { LogError } from '@/server/LogError' +import { Context, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { findContributionMessages } from './util/findContributionMessages' diff --git a/backend/src/graphql/resolver/ContributionResolver.test.ts b/backend/src/graphql/resolver/ContributionResolver.test.ts index 134b378dc..c3847963c 100644 --- a/backend/src/graphql/resolver/ContributionResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionResolver.test.ts @@ -16,12 +16,12 @@ import { ContributionStatus } from '@enum/ContributionStatus' import { Order } from '@enum/Order' import { cleanDB, - resetToken, - testEnvironment, contributionDateFormatter, resetEntity, + resetToken, + testEnvironment, } from '@test/helpers' -import { logger, i18n as localization } from '@test/testSetup' +import { i18n as localization, logger } from '@test/testSetup' import { sendContributionConfirmedEmail, @@ -33,22 +33,22 @@ import { creations } from '@/seeds/creation/index' import { creationFactory } from '@/seeds/factory/creation' import { userFactory } from '@/seeds/factory/user' import { + adminCreateContribution, + adminCreateContributionMessage, + adminDeleteContribution, + adminUpdateContribution, + confirmContribution, createContribution, - updateContribution, deleteContribution, denyContribution, - confirmContribution, - adminCreateContribution, - adminUpdateContribution, - adminDeleteContribution, login, logout, - adminCreateContributionMessage, + updateContribution, } from '@/seeds/graphql/mutations' import { + adminListContributions, listAllContributions, listContributions, - adminListContributions, } from '@/seeds/graphql/queries' import { bibiBloxberg } from '@/seeds/users/bibi-bloxberg' import { bobBaumeister } from '@/seeds/users/bob-baumeister' diff --git a/backend/src/graphql/resolver/ContributionResolver.ts b/backend/src/graphql/resolver/ContributionResolver.ts index 4c1dbe488..8fb55acd8 100644 --- a/backend/src/graphql/resolver/ContributionResolver.ts +++ b/backend/src/graphql/resolver/ContributionResolver.ts @@ -43,25 +43,25 @@ import { sendContributionDeniedEmail, } from '@/emails/sendEmailVariants' import { + EVENT_ADMIN_CONTRIBUTION_CONFIRM, + EVENT_ADMIN_CONTRIBUTION_CREATE, + EVENT_ADMIN_CONTRIBUTION_DELETE, + EVENT_ADMIN_CONTRIBUTION_DENY, + EVENT_ADMIN_CONTRIBUTION_UPDATE, EVENT_CONTRIBUTION_CREATE, EVENT_CONTRIBUTION_DELETE, EVENT_CONTRIBUTION_UPDATE, - EVENT_ADMIN_CONTRIBUTION_CREATE, - EVENT_ADMIN_CONTRIBUTION_UPDATE, - EVENT_ADMIN_CONTRIBUTION_DELETE, - EVENT_ADMIN_CONTRIBUTION_CONFIRM, - EVENT_ADMIN_CONTRIBUTION_DENY, } from '@/event/Events' import { UpdateUnconfirmedContributionContext } from '@/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context' -import { Context, getUser, getClientTimezoneOffset } from '@/server/context' import { LogError } from '@/server/LogError' +import { Context, getClientTimezoneOffset, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' -import { calculateDecay } from '@/util/decay' import { TRANSACTIONS_LOCK } from '@/util/TRANSACTIONS_LOCK' +import { calculateDecay } from '@/util/decay' import { fullName } from '@/util/utilities' import { findContribution } from './util/contributions' -import { getUserCreation, validateContribution, getOpenCreations } from './util/creations' +import { getOpenCreations, getUserCreation, validateContribution } from './util/creations' import { extractGraphQLFields, extractGraphQLFieldsForSelect } from './util/extractGraphQLFields' import { findContributions } from './util/findContributions' import { getLastTransaction } from './util/getLastTransaction' diff --git a/backend/src/graphql/resolver/EmailOptinCodes.test.ts b/backend/src/graphql/resolver/EmailOptinCodes.test.ts index 09ad743fe..124f371a1 100644 --- a/backend/src/graphql/resolver/EmailOptinCodes.test.ts +++ b/backend/src/graphql/resolver/EmailOptinCodes.test.ts @@ -5,11 +5,11 @@ import { User as DbUser } from '@entity/User' import { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLError } from 'graphql' -import { testEnvironment, cleanDB } from '@test/helpers' +import { cleanDB, testEnvironment } from '@test/helpers' import { CONFIG } from '@/config' import { writeHomeCommunityEntry } from '@/seeds/community' -import { createUser, setPassword, forgotPassword } from '@/seeds/graphql/mutations' +import { createUser, forgotPassword, setPassword } from '@/seeds/graphql/mutations' import { queryOptIn } from '@/seeds/graphql/queries' let mutate: ApolloServerTestClient['mutate'], diff --git a/backend/src/graphql/resolver/GdtResolver.ts b/backend/src/graphql/resolver/GdtResolver.ts index 2703be8ed..e26385c33 100644 --- a/backend/src/graphql/resolver/GdtResolver.ts +++ b/backend/src/graphql/resolver/GdtResolver.ts @@ -2,7 +2,7 @@ /* eslint-disable @typescript-eslint/no-unsafe-assignment */ /* eslint-disable @typescript-eslint/no-unsafe-return */ /* eslint-disable @typescript-eslint/no-unsafe-argument */ -import { Resolver, Query, Args, Ctx, Authorized, Arg, Int, Float } from 'type-graphql' +import { Arg, Args, Authorized, Ctx, Float, Int, Query, Resolver } from 'type-graphql' import { Paginated } from '@arg/Paginated' import { Order } from '@enum/Order' @@ -12,8 +12,8 @@ import { GdtEntryList } from '@model/GdtEntryList' import { apiGet, apiPost } from '@/apis/HttpRequest' import { RIGHTS } from '@/auth/RIGHTS' import { CONFIG } from '@/config' -import { Context, getUser } from '@/server/context' import { LogError } from '@/server/LogError' +import { Context, getUser } from '@/server/context' @Resolver() export class GdtResolver { diff --git a/backend/src/graphql/resolver/KlicktippResolver.test.ts b/backend/src/graphql/resolver/KlicktippResolver.test.ts index 06430c620..c8dd39507 100644 --- a/backend/src/graphql/resolver/KlicktippResolver.test.ts +++ b/backend/src/graphql/resolver/KlicktippResolver.test.ts @@ -8,7 +8,7 @@ import { UserContact } from '@entity/UserContact' import { GraphQLError } from 'graphql' import { cleanDB, resetToken, testEnvironment } from '@test/helpers' -import { logger, i18n as localization } from '@test/testSetup' +import { i18n as localization, logger } from '@test/testSetup' import { EventType } from '@/event/Events' import { userFactory } from '@/seeds/factory/user' diff --git a/backend/src/graphql/resolver/KlicktippResolver.ts b/backend/src/graphql/resolver/KlicktippResolver.ts index 81290bdb6..1ac667fa4 100644 --- a/backend/src/graphql/resolver/KlicktippResolver.ts +++ b/backend/src/graphql/resolver/KlicktippResolver.ts @@ -1,6 +1,6 @@ -import { Resolver, Authorized, Mutation, Ctx } from 'type-graphql' +import { Authorized, Ctx, Mutation, Resolver } from 'type-graphql' -import { unsubscribe, subscribe } from '@/apis/KlicktippController' +import { subscribe, unsubscribe } from '@/apis/KlicktippController' import { RIGHTS } from '@/auth/RIGHTS' import { EVENT_NEWSLETTER_SUBSCRIBE, EVENT_NEWSLETTER_UNSUBSCRIBE } from '@/event/Events' import { Context, getUser } from '@/server/context' diff --git a/backend/src/graphql/resolver/ProjectBrandingResolver.ts b/backend/src/graphql/resolver/ProjectBrandingResolver.ts index 80180f58c..49b5a4cad 100644 --- a/backend/src/graphql/resolver/ProjectBrandingResolver.ts +++ b/backend/src/graphql/resolver/ProjectBrandingResolver.ts @@ -1,5 +1,5 @@ import { ProjectBranding as DbProjectBranding } from '@entity/ProjectBranding' -import { Resolver, Query, Mutation, Arg, Int, Authorized, ID } from 'type-graphql' +import { Arg, Authorized, ID, Int, Mutation, Query, Resolver } from 'type-graphql' import { ProjectBrandingInput } from '@input/ProjectBrandingInput' import { ProjectBranding } from '@model/ProjectBranding' diff --git a/backend/src/graphql/resolver/StatisticsResolver.ts b/backend/src/graphql/resolver/StatisticsResolver.ts index ba8a32d37..a7f6555bf 100644 --- a/backend/src/graphql/resolver/StatisticsResolver.ts +++ b/backend/src/graphql/resolver/StatisticsResolver.ts @@ -5,7 +5,7 @@ import { getConnection } from '@dbTools/typeorm' import { Transaction as DbTransaction } from '@entity/Transaction' import { User as DbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' -import { Resolver, Query, Authorized, FieldResolver } from 'type-graphql' +import { Authorized, FieldResolver, Query, Resolver } from 'type-graphql' import { CommunityStatistics, DynamicStatisticsFields } from '@model/CommunityStatistics' diff --git a/backend/src/graphql/resolver/TransactionLinkResolver.test.ts b/backend/src/graphql/resolver/TransactionLinkResolver.test.ts index bcea43416..30f3d0b6f 100644 --- a/backend/src/graphql/resolver/TransactionLinkResolver.test.ts +++ b/backend/src/graphql/resolver/TransactionLinkResolver.test.ts @@ -12,7 +12,7 @@ import { Decimal } from 'decimal.js-light' import { GraphQLError } from 'graphql' import { UnconfirmedContribution } from '@model/UnconfirmedContribution' -import { cleanDB, testEnvironment, resetToken, resetEntity } from '@test/helpers' +import { cleanDB, resetEntity, resetToken, testEnvironment } from '@test/helpers' import { logger } from '@test/testSetup' import { EventType } from '@/event/Events' @@ -21,14 +21,14 @@ import { creationFactory } from '@/seeds/factory/creation' import { transactionLinkFactory } from '@/seeds/factory/transactionLink' import { userFactory } from '@/seeds/factory/user' import { - login, - createContributionLink, - redeemTransactionLink, + confirmContribution, createContribution, - updateContribution, + createContributionLink, createTransactionLink, deleteTransactionLink, - confirmContribution, + login, + redeemTransactionLink, + updateContribution, } from '@/seeds/graphql/mutations' import { listTransactionLinksAdmin } from '@/seeds/graphql/queries' import { transactionLinks } from '@/seeds/transactionLink/index' diff --git a/backend/src/graphql/resolver/TransactionLinkResolver.ts b/backend/src/graphql/resolver/TransactionLinkResolver.ts index 63134a9a8..eaf690c24 100644 --- a/backend/src/graphql/resolver/TransactionLinkResolver.ts +++ b/backend/src/graphql/resolver/TransactionLinkResolver.ts @@ -7,7 +7,7 @@ import { Transaction as DbTransaction } from '@entity/Transaction' import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' import { User as DbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' -import { Resolver, Args, Arg, Authorized, Ctx, Mutation, Query, Int } from 'type-graphql' +import { Arg, Args, Authorized, Ctx, Int, Mutation, Query, Resolver } from 'type-graphql' import { Paginated } from '@arg/Paginated' import { TransactionLinkArgs } from '@arg/TransactionLinkArgs' @@ -29,12 +29,12 @@ import { EVENT_TRANSACTION_LINK_DELETE, EVENT_TRANSACTION_LINK_REDEEM, } from '@/event/Events' -import { Context, getUser, getClientTimezoneOffset } from '@/server/context' import { LogError } from '@/server/LogError' +import { Context, getClientTimezoneOffset, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' -import { calculateDecay } from '@/util/decay' -import { TRANSACTION_LINK_LOCK } from '@/util/TRANSACTION_LINK_LOCK' import { TRANSACTIONS_LOCK } from '@/util/TRANSACTIONS_LOCK' +import { TRANSACTION_LINK_LOCK } from '@/util/TRANSACTION_LINK_LOCK' +import { calculateDecay } from '@/util/decay' import { fullName } from '@/util/utilities' import { calculateBalance } from '@/util/validate' diff --git a/backend/src/graphql/resolver/TransactionResolver.test.ts b/backend/src/graphql/resolver/TransactionResolver.test.ts index 7cc6143e6..50a10455e 100644 --- a/backend/src/graphql/resolver/TransactionResolver.test.ts +++ b/backend/src/graphql/resolver/TransactionResolver.test.ts @@ -20,9 +20,9 @@ import { logger } from '@test/testSetup' import { CONFIG } from '@/config' import { EventType } from '@/event/Events' +import { SendCoinsClient } from '@/federation/client/1_0/SendCoinsClient' import { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' -import { SendCoinsClient } from '@/federation/client/1_0/SendCoinsClient' import { userFactory } from '@/seeds/factory/user' import { confirmContribution, diff --git a/backend/src/graphql/resolver/TransactionResolver.ts b/backend/src/graphql/resolver/TransactionResolver.ts index 3989cb175..4bb625e07 100644 --- a/backend/src/graphql/resolver/TransactionResolver.ts +++ b/backend/src/graphql/resolver/TransactionResolver.ts @@ -2,14 +2,14 @@ /* eslint-disable new-cap */ /* eslint-disable @typescript-eslint/no-non-null-assertion */ -import { getConnection, In, IsNull } from '@dbTools/typeorm' +import { In, IsNull, getConnection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { PendingTransaction as DbPendingTransaction } from '@entity/PendingTransaction' import { Transaction as dbTransaction } from '@entity/Transaction' import { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' import { User as dbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' -import { Resolver, Query, Args, Authorized, Ctx, Mutation } from 'type-graphql' +import { Args, Authorized, Ctx, Mutation, Query, Resolver } from 'type-graphql' import { Paginated } from '@arg/Paginated' import { TransactionSendArgs } from '@arg/TransactionSendArgs' @@ -28,14 +28,14 @@ import { } from '@/emails/sendEmailVariants' import { EVENT_TRANSACTION_RECEIVE, EVENT_TRANSACTION_SEND } from '@/event/Events' import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' -import { Context, getUser } from '@/server/context' import { LogError } from '@/server/LogError' +import { Context, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' -import { communityUser } from '@/util/communityUser' import { TRANSACTIONS_LOCK } from '@/util/TRANSACTIONS_LOCK' +import { communityUser } from '@/util/communityUser' import { fullName } from '@/util/utilities' import { calculateBalance } from '@/util/validate' -import { virtualLinkTransaction, virtualDecayTransaction } from '@/util/virtualTransactions' +import { virtualDecayTransaction, virtualLinkTransaction } from '@/util/virtualTransactions' import { BalanceResolver } from './BalanceResolver' import { GdtResolver } from './GdtResolver' diff --git a/backend/src/graphql/resolver/UserResolver.test.ts b/backend/src/graphql/resolver/UserResolver.test.ts index 4fcf9944a..9a94611a2 100644 --- a/backend/src/graphql/resolver/UserResolver.test.ts +++ b/backend/src/graphql/resolver/UserResolver.test.ts @@ -23,8 +23,8 @@ import { RoleNames } from '@enum/RoleNames' import { UserContactType } from '@enum/UserContactType' import { ContributionLink } from '@model/ContributionLink' import { Location } from '@model/Location' -import { testEnvironment, headerPushMock, resetToken, cleanDB } from '@test/helpers' -import { logger, i18n as localization } from '@test/testSetup' +import { cleanDB, headerPushMock, resetToken, testEnvironment } from '@test/helpers' +import { i18n as localization, logger } from '@test/testSetup' import { subscribe } from '@/apis/KlicktippController' import { CONFIG } from '@/config' @@ -42,26 +42,26 @@ import { contributionLinkFactory } from '@/seeds/factory/contributionLink' import { transactionLinkFactory } from '@/seeds/factory/transactionLink' import { userFactory } from '@/seeds/factory/user' import { + confirmContribution, + createContribution, + createUser, + deleteUser, + forgotPassword, login, logout, - createUser, - setPassword, - forgotPassword, - updateUserInfos, - createContribution, - confirmContribution, - setUserRole, - deleteUser, - unDeleteUser, sendActivationEmail, + setPassword, + setUserRole, + unDeleteUser, + updateUserInfos, } from '@/seeds/graphql/mutations' import { - verifyLogin, + checkUsername, queryOptIn, searchAdminUsers, searchUsers, user as userQuery, - checkUsername, + verifyLogin, } from '@/seeds/graphql/queries' import { bibiBloxberg } from '@/seeds/users/bibi-bloxberg' import { bobBaumeister } from '@/seeds/users/bob-baumeister' diff --git a/backend/src/graphql/resolver/UserResolver.ts b/backend/src/graphql/resolver/UserResolver.ts index fea150338..8fe1eb4c4 100644 --- a/backend/src/graphql/resolver/UserResolver.ts +++ b/backend/src/graphql/resolver/UserResolver.ts @@ -2,7 +2,7 @@ /* eslint-disable @typescript-eslint/no-unsafe-assignment */ /* eslint-disable @typescript-eslint/no-unsafe-member-access */ /* eslint-disable @typescript-eslint/restrict-template-expressions */ -import { getConnection, In, Point } from '@dbTools/typeorm' +import { In, Point, getConnection } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { ProjectBranding } from '@entity/ProjectBranding' import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' @@ -12,17 +12,17 @@ import { UserLoggingView } from '@logging/UserLogging.view' import { GraphQLResolveInfo } from 'graphql' import i18n from 'i18n' import { - Resolver, - Query, - Args, Arg, + Args, Authorized, Ctx, - Mutation, - Int, - Root, FieldResolver, Info, + Int, + Mutation, + Query, + Resolver, + Root, } from 'type-graphql' import { IRestResponse } from 'typed-rest-client' import { v4 as uuidv4 } from 'uuid' @@ -42,15 +42,15 @@ import { SearchAdminUsersResult } from '@model/AdminUser' // import { Location } from '@model/Location' import { GmsUserAuthenticationResult } from '@model/GmsUserAuthenticationResult' import { User } from '@model/User' -import { UserAdmin, SearchUsersResult } from '@model/UserAdmin' +import { SearchUsersResult, UserAdmin } from '@model/UserAdmin' import { UserContact } from '@model/UserContact' import { UserLocationResult } from '@model/UserLocationResult' +import { subscribe } from '@/apis/KlicktippController' import { HumHubClient } from '@/apis/humhub/HumHubClient' import { Account as HumhubAccount } from '@/apis/humhub/model/Account' import { GetUser } from '@/apis/humhub/model/GetUser' import { PostUser } from '@/apis/humhub/model/PostUser' -import { subscribe } from '@/apis/KlicktippController' import { encode } from '@/auth/JWT' import { RIGHTS } from '@/auth/RIGHTS' import { CONFIG } from '@/config' @@ -60,25 +60,25 @@ import { sendResetPasswordEmail, } from '@/emails/sendEmailVariants' import { + EVENT_ADMIN_USER_DELETE, + EVENT_ADMIN_USER_ROLE_SET, + EVENT_ADMIN_USER_UNDELETE, + EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION, + EVENT_EMAIL_ADMIN_CONFIRMATION, + EVENT_EMAIL_CONFIRMATION, + EVENT_EMAIL_FORGOT_PASSWORD, + EVENT_USER_ACTIVATE_ACCOUNT, + EVENT_USER_INFO_UPDATE, + EVENT_USER_LOGIN, + EVENT_USER_LOGOUT, + EVENT_USER_REGISTER, Event, EventType, - EVENT_USER_LOGIN, - EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION, - EVENT_EMAIL_CONFIRMATION, - EVENT_USER_REGISTER, - EVENT_USER_ACTIVATE_ACCOUNT, - EVENT_EMAIL_ADMIN_CONFIRMATION, - EVENT_USER_LOGOUT, - EVENT_EMAIL_FORGOT_PASSWORD, - EVENT_USER_INFO_UPDATE, - EVENT_ADMIN_USER_ROLE_SET, - EVENT_ADMIN_USER_DELETE, - EVENT_ADMIN_USER_UNDELETE, } from '@/event/Events' import { isValidPassword } from '@/password/EncryptorUtils' import { encryptPassword, verifyPassword } from '@/password/PasswordEncryptor' -import { Context, getUser, getClientTimezoneOffset } from '@/server/context' import { LogError } from '@/server/LogError' +import { Context, getClientTimezoneOffset, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { communityDbUser } from '@/util/communityUser' import { hasElopageBuys } from '@/util/hasElopageBuys' @@ -89,6 +89,7 @@ import random from 'random-bigint' import { randombytes_random } from 'sodium-native' import { FULL_CREATION_AVAILABLE } from './const/const' +import { Location2Point, Point2Location } from './util/Location2Point' import { authenticateGmsUserPlayground } from './util/authenticateGmsUserPlayground' import { getHomeCommunity } from './util/communities' import { compareGmsRelevantUserSettings } from './util/compareGmsRelevantUserSettings' @@ -97,8 +98,7 @@ import { extractGraphQLFieldsForSelect } from './util/extractGraphQLFields' import { findUserByIdentifier } from './util/findUserByIdentifier' import { findUsers } from './util/findUsers' import { getKlicktippState } from './util/getKlicktippState' -import { Location2Point, Point2Location } from './util/Location2Point' -import { setUserRole, deleteUserRole } from './util/modifyUserRole' +import { deleteUserRole, setUserRole } from './util/modifyUserRole' import { sendUserToGms } from './util/sendUserToGms' import { syncHumhub } from './util/syncHumhub' import { validateAlias } from './util/validateAlias' diff --git a/backend/src/graphql/resolver/semaphore.test.ts b/backend/src/graphql/resolver/semaphore.test.ts index f3dcce6f6..66b7e05cb 100644 --- a/backend/src/graphql/resolver/semaphore.test.ts +++ b/backend/src/graphql/resolver/semaphore.test.ts @@ -8,17 +8,17 @@ import { Decimal } from 'decimal.js-light' import { GraphQLError } from 'graphql' import { v4 as uuidv4 } from 'uuid' -import { cleanDB, testEnvironment, contributionDateFormatter } from '@test/helpers' +import { cleanDB, contributionDateFormatter, testEnvironment } from '@test/helpers' import { creationFactory, nMonthsBefore } from '@/seeds/factory/creation' import { userFactory } from '@/seeds/factory/user' import { confirmContribution, createContribution, - createTransactionLink, - redeemTransactionLink, - login, createContributionLink, + createTransactionLink, + login, + redeemTransactionLink, sendCoins, } from '@/seeds/graphql/mutations' import { bibiBloxberg } from '@/seeds/users/bibi-bloxberg' diff --git a/backend/src/graphql/resolver/util/creations.test.ts b/backend/src/graphql/resolver/util/creations.test.ts index 154520b85..4b1cc00b6 100644 --- a/backend/src/graphql/resolver/util/creations.test.ts +++ b/backend/src/graphql/resolver/util/creations.test.ts @@ -3,11 +3,11 @@ import { Contribution } from '@entity/Contribution' import { User } from '@entity/User' import { ApolloServerTestClient } from 'apollo-server-testing' -import { testEnvironment, cleanDB, contributionDateFormatter } from '@test/helpers' +import { cleanDB, contributionDateFormatter, testEnvironment } from '@test/helpers' import { CONFIG } from '@/config' import { userFactory } from '@/seeds/factory/user' -import { login, createContribution, adminCreateContribution } from '@/seeds/graphql/mutations' +import { adminCreateContribution, createContribution, login } from '@/seeds/graphql/mutations' import { bibiBloxberg } from '@/seeds/users/bibi-bloxberg' import { peterLustig } from '@/seeds/users/peter-lustig' diff --git a/backend/src/graphql/resolver/util/extractGraphQLFields.ts b/backend/src/graphql/resolver/util/extractGraphQLFields.ts index 082028ff1..75389b958 100644 --- a/backend/src/graphql/resolver/util/extractGraphQLFields.ts +++ b/backend/src/graphql/resolver/util/extractGraphQLFields.ts @@ -1,8 +1,8 @@ import { ObjectLiteral, SelectQueryBuilder } from '@dbTools/typeorm' import { GraphQLResolveInfo } from 'graphql' import { - parseResolveInfo, ResolveTree, + parseResolveInfo, simplifyParsedResolveInfoFragmentWithType, } from 'graphql-parse-resolve-info' diff --git a/backend/src/graphql/resolver/util/findUserByIdentifier.ts b/backend/src/graphql/resolver/util/findUserByIdentifier.ts index 435dc3d04..bdd179091 100644 --- a/backend/src/graphql/resolver/util/findUserByIdentifier.ts +++ b/backend/src/graphql/resolver/util/findUserByIdentifier.ts @@ -24,8 +24,8 @@ export const findUserByIdentifier = async ( const communityWhere: FindOptionsWhere = isURL(communityIdentifier) ? { url: communityIdentifier } : isUUID4(communityIdentifier) - ? { communityUuid: communityIdentifier } - : { name: communityIdentifier } + ? { communityUuid: communityIdentifier } + : { name: communityIdentifier } if (validate(identifier) && version(identifier) === 4) { user = await DbUser.findOne({ diff --git a/backend/src/graphql/resolver/util/findUsers.ts b/backend/src/graphql/resolver/util/findUsers.ts index a7d7d719c..d4de5a405 100644 --- a/backend/src/graphql/resolver/util/findUsers.ts +++ b/backend/src/graphql/resolver/util/findUsers.ts @@ -1,4 +1,4 @@ -import { IsNull, Not, Like } from '@dbTools/typeorm' +import { IsNull, Like, Not } from '@dbTools/typeorm' import { User as DbUser } from '@entity/User' import { SearchUsersFilters } from '@arg/SearchUsersFilters' diff --git a/backend/src/graphql/resolver/util/processXComSendCoins.ts b/backend/src/graphql/resolver/util/processXComSendCoins.ts index 6455bc36d..6b84f3629 100644 --- a/backend/src/graphql/resolver/util/processXComSendCoins.ts +++ b/backend/src/graphql/resolver/util/processXComSendCoins.ts @@ -5,10 +5,10 @@ import { User as dbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { CONFIG } from '@/config' -import { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' -import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' // eslint-disable-next-line camelcase import { SendCoinsClient as V1_0_SendCoinsClient } from '@/federation/client/1_0/SendCoinsClient' +import { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' +import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' import { SendCoinsClientFactory } from '@/federation/client/SendCoinsClientFactory' import { PendingTransactionState } from '@/graphql/enum/PendingTransactionState' import { TransactionTypeId } from '@/graphql/enum/TransactionTypeId' diff --git a/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts b/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts index 064184a9d..d5cf3b0bf 100644 --- a/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts +++ b/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts @@ -17,8 +17,8 @@ import { GraphQLClient } from 'graphql-request' import { Response } from 'graphql-request/dist/types' import { v4 as uuidv4 } from 'uuid' -import { testEnvironment, cleanDB } from '@test/helpers' -import { logger, i18n as localization } from '@test/testSetup' +import { cleanDB, testEnvironment } from '@test/helpers' +import { i18n as localization, logger } from '@test/testSetup' import { CONFIG } from '@/config' import { TransactionTypeId } from '@/graphql/enum/TransactionTypeId' diff --git a/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts b/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts index 0e293c56c..e7f7d7262 100644 --- a/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts +++ b/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts @@ -12,8 +12,8 @@ import { Decimal } from 'decimal.js-light' import { PendingTransactionState } from '@/graphql/enum/PendingTransactionState' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' -import { calculateSenderBalance } from '@/util/calculateSenderBalance' import { TRANSACTIONS_LOCK } from '@/util/TRANSACTIONS_LOCK' +import { calculateSenderBalance } from '@/util/calculateSenderBalance' import { getLastTransaction } from './getLastTransaction' diff --git a/backend/src/graphql/resolver/util/transactionLinkList.ts b/backend/src/graphql/resolver/util/transactionLinkList.ts index 653f86804..25567f633 100644 --- a/backend/src/graphql/resolver/util/transactionLinkList.ts +++ b/backend/src/graphql/resolver/util/transactionLinkList.ts @@ -1,4 +1,4 @@ -import { MoreThan, IsNull } from '@dbTools/typeorm' +import { IsNull, MoreThan } from '@dbTools/typeorm' import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' import { User as DbUser } from '@entity/User' diff --git a/backend/src/graphql/resolver/util/validateAlias.test.ts b/backend/src/graphql/resolver/util/validateAlias.test.ts index 5003f8975..e0e35c3b7 100644 --- a/backend/src/graphql/resolver/util/validateAlias.test.ts +++ b/backend/src/graphql/resolver/util/validateAlias.test.ts @@ -2,8 +2,8 @@ import { Connection } from '@dbTools/typeorm' import { User } from '@entity/User' import { ApolloServerTestClient } from 'apollo-server-testing' -import { testEnvironment, cleanDB } from '@test/helpers' -import { logger, i18n as localization } from '@test/testSetup' +import { cleanDB, testEnvironment } from '@test/helpers' +import { i18n as localization, logger } from '@test/testSetup' import { userFactory } from '@/seeds/factory/user' import { bibiBloxberg } from '@/seeds/users/bibi-bloxberg' diff --git a/backend/src/graphql/validator/ContributionStatusArray.ts b/backend/src/graphql/validator/ContributionStatusArray.ts index da718f70c..82a5564de 100644 --- a/backend/src/graphql/validator/ContributionStatusArray.ts +++ b/backend/src/graphql/validator/ContributionStatusArray.ts @@ -1,4 +1,4 @@ -import { registerDecorator, ValidationOptions } from 'class-validator' +import { ValidationOptions, registerDecorator } from 'class-validator' import { ContributionStatus } from '@enum/ContributionStatus' diff --git a/backend/src/graphql/validator/DateString.ts b/backend/src/graphql/validator/DateString.ts index 4ee23b51a..dd2383f39 100644 --- a/backend/src/graphql/validator/DateString.ts +++ b/backend/src/graphql/validator/DateString.ts @@ -1,4 +1,4 @@ -import { registerDecorator, ValidationOptions, ValidationArguments } from 'class-validator' +import { ValidationArguments, ValidationOptions, registerDecorator } from 'class-validator' export function isValidDateString(validationOptions?: ValidationOptions) { // eslint-disable-next-line @typescript-eslint/ban-types diff --git a/backend/src/graphql/validator/Decimal.ts b/backend/src/graphql/validator/Decimal.ts index 09e8fb4bd..d0a90d71e 100644 --- a/backend/src/graphql/validator/Decimal.ts +++ b/backend/src/graphql/validator/Decimal.ts @@ -1,4 +1,4 @@ -import { registerDecorator, ValidationOptions, ValidationArguments } from 'class-validator' +import { ValidationArguments, ValidationOptions, registerDecorator } from 'class-validator' import { Decimal } from 'decimal.js-light' export function IsPositiveDecimal(validationOptions?: ValidationOptions) { diff --git a/backend/src/graphql/validator/Location.ts b/backend/src/graphql/validator/Location.ts index f1f23cd81..93f1c64e9 100644 --- a/backend/src/graphql/validator/Location.ts +++ b/backend/src/graphql/validator/Location.ts @@ -1,4 +1,4 @@ -import { registerDecorator, ValidationOptions, ValidationArguments } from 'class-validator' +import { ValidationArguments, ValidationOptions, registerDecorator } from 'class-validator' import { Location } from '@model/Location' diff --git a/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts b/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts index 620751f9c..06dfea6e7 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts @@ -6,8 +6,8 @@ import { Role } from '@/auth/Role' import { ContributionLogic } from '@/data/Contribution.logic' import { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' import { ContributionStatus } from '@/graphql/enum/ContributionStatus' -import { Context, getClientTimezoneOffset } from '@/server/context' import { LogError } from '@/server/LogError' +import { Context, getClientTimezoneOffset } from '@/server/context' export abstract class AbstractUnconfirmedContributionRole { private availableCreationSums?: Decimal[] diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts index 6850767f7..8db74d8d4 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts @@ -17,7 +17,10 @@ import { AbstractUnconfirmedContributionRole } from './AbstractUnconfirmedContri * Admins and Moderators are currently not allowed to comment her own contributions with the admin/moderator role */ export class UnconfirmedContributionAdminAddMessageRole extends AbstractUnconfirmedContributionRole { - public constructor(contribution: Contribution, private updateData: ContributionMessageArgs) { + public constructor( + contribution: Contribution, + private updateData: ContributionMessageArgs, + ) { super(contribution, contribution.amount, contribution.contributionDate) logger.debug('use UnconfirmedContributionAdminAddMessageRole') } diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts index a3ffefeb3..fe7d55d80 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts @@ -14,7 +14,10 @@ import { AbstractUnconfirmedContributionRole } from './AbstractUnconfirmedContri * independent from there role, because the own contribution can only be edited in user role */ export class UnconfirmedContributionUserRole extends AbstractUnconfirmedContributionRole { - public constructor(contribution: Contribution, private updateData: ContributionArgs) { + public constructor( + contribution: Contribution, + private updateData: ContributionArgs, + ) { super(contribution, updateData.amount, new Date(updateData.creationDate)) logger.debug('use UnconfirmedContributionUserRole') } diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts index 36a4d4e05..9b81b07bd 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts @@ -15,7 +15,10 @@ import { AbstractUnconfirmedContributionRole } from './AbstractUnconfirmedContri * independent from there role, because the own contribution can only be commented in user role */ export class UnconfirmedContributionUserAddMessageRole extends AbstractUnconfirmedContributionRole { - public constructor(contribution: Contribution, private updateData: ContributionMessageArgs) { + public constructor( + contribution: Contribution, + private updateData: ContributionMessageArgs, + ) { super(contribution, contribution.amount, contribution.contributionDate) logger.debug('use UnconfirmedContributionUserAddMessageRole') } diff --git a/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts b/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts index 8a34bde5d..60d9cbf19 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts @@ -7,8 +7,8 @@ import { AdminUpdateContributionArgs } from '@arg/AdminUpdateContributionArgs' import { ContributionArgs } from '@arg/ContributionArgs' import { ContributionMessageArgs } from '@/graphql/arg/ContributionMessageArgs' -import { Context } from '@/server/context' import { LogError } from '@/server/LogError' +import { Context } from '@/server/context' import { AbstractUnconfirmedContributionRole } from './AbstractUnconfirmedContribution.role' import { UnconfirmedContributionAdminRole } from './UnconfirmedContributionAdmin.role' diff --git a/backend/src/password/EncryptionWorker.ts b/backend/src/password/EncryptionWorker.ts index 36c08f1b6..34f33226f 100644 --- a/backend/src/password/EncryptionWorker.ts +++ b/backend/src/password/EncryptionWorker.ts @@ -4,15 +4,15 @@ import { CONFIG } from '@/config' import { crypto_box_SEEDBYTES, - crypto_hash_sha512_init, - crypto_hash_sha512_update, - crypto_hash_sha512_final, crypto_hash_sha512_BYTES, crypto_hash_sha512_STATEBYTES, - crypto_shorthash_BYTES, - crypto_pwhash_SALTBYTES, + crypto_hash_sha512_final, + crypto_hash_sha512_init, + crypto_hash_sha512_update, crypto_pwhash, + crypto_pwhash_SALTBYTES, crypto_shorthash, + crypto_shorthash_BYTES, } from 'sodium-native' export const SecretKeyCryptographyCreateKey = ( diff --git a/backend/src/password/PasswordEncryptor.ts b/backend/src/password/PasswordEncryptor.ts index a97c29e7f..b9fdb65aa 100644 --- a/backend/src/password/PasswordEncryptor.ts +++ b/backend/src/password/PasswordEncryptor.ts @@ -1,7 +1,7 @@ import { User } from '@entity/User' // import { logger } from '@test/testSetup' getting error "jest is not defined" -import { getUserCryptographicSalt, SecretKeyCryptographyCreateKey } from './EncryptorUtils' +import { SecretKeyCryptographyCreateKey, getUserCryptographicSalt } from './EncryptorUtils' export const encryptPassword = async (dbUser: User, password: string): Promise => { const salt = getUserCryptographicSalt(dbUser) diff --git a/backend/src/password/__mocks__/EncryptorUtils.ts b/backend/src/password/__mocks__/EncryptorUtils.ts index 2bc20f951..630910a40 100644 --- a/backend/src/password/__mocks__/EncryptorUtils.ts +++ b/backend/src/password/__mocks__/EncryptorUtils.ts @@ -11,19 +11,19 @@ import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' import { - crypto_shorthash_KEYBYTES, crypto_box_SEEDBYTES, - crypto_hash_sha512_init, - crypto_hash_sha512_update, - crypto_hash_sha512_final, crypto_hash_sha512_BYTES, crypto_hash_sha512_STATEBYTES, - crypto_shorthash_BYTES, - crypto_pwhash_SALTBYTES, + crypto_hash_sha512_final, + crypto_hash_sha512_init, + crypto_hash_sha512_update, crypto_pwhash, - crypto_shorthash, - crypto_pwhash_OPSLIMIT_MIN, crypto_pwhash_MEMLIMIT_MIN, + crypto_pwhash_OPSLIMIT_MIN, + crypto_pwhash_SALTBYTES, + crypto_shorthash, + crypto_shorthash_BYTES, + crypto_shorthash_KEYBYTES, } from 'sodium-native' const SecretKeyCryptographyCreateKeyMock = ( diff --git a/backend/src/seeds/factory/contributionLink.ts b/backend/src/seeds/factory/contributionLink.ts index d03d222c6..ce8dcb345 100644 --- a/backend/src/seeds/factory/contributionLink.ts +++ b/backend/src/seeds/factory/contributionLink.ts @@ -6,7 +6,7 @@ import { ApolloServerTestClient } from 'apollo-server-testing' import { ContributionLink } from '@model/ContributionLink' import { ContributionLinkInterface } from '@/seeds/contributionLink/ContributionLinkInterface' -import { login, createContributionLink } from '@/seeds/graphql/mutations' +import { createContributionLink, login } from '@/seeds/graphql/mutations' export const contributionLinkFactory = async ( client: ApolloServerTestClient, diff --git a/backend/src/seeds/factory/creation.ts b/backend/src/seeds/factory/creation.ts index 5e6e058f9..9ae861556 100644 --- a/backend/src/seeds/factory/creation.ts +++ b/backend/src/seeds/factory/creation.ts @@ -8,7 +8,7 @@ import { ApolloServerTestClient } from 'apollo-server-testing' import { findUserByEmail } from '@/graphql/resolver/UserResolver' import { CreationInterface } from '@/seeds/creation/CreationInterface' -import { login, createContribution, confirmContribution } from '@/seeds/graphql/mutations' +import { confirmContribution, createContribution, login } from '@/seeds/graphql/mutations' export const nMonthsBefore = (date: Date, months = 1): string => { return new Date(date.getFullYear(), date.getMonth() - months, 1).toISOString() diff --git a/backend/src/seeds/factory/transactionLink.ts b/backend/src/seeds/factory/transactionLink.ts index b44fe349c..e115ae1c4 100644 --- a/backend/src/seeds/factory/transactionLink.ts +++ b/backend/src/seeds/factory/transactionLink.ts @@ -4,7 +4,7 @@ import { TransactionLink } from '@entity/TransactionLink' import { ApolloServerTestClient } from 'apollo-server-testing' import { transactionLinkExpireDate } from '@/graphql/resolver/TransactionLinkResolver' -import { login, createTransactionLink } from '@/seeds/graphql/mutations' +import { createTransactionLink, login } from '@/seeds/graphql/mutations' import { TransactionLinkInterface } from '@/seeds/transactionLink/TransactionLinkInterface' export const transactionLinkFactory = async ( diff --git a/backend/src/seeds/index.ts b/backend/src/seeds/index.ts index b22409759..add165a56 100644 --- a/backend/src/seeds/index.ts +++ b/backend/src/seeds/index.ts @@ -6,7 +6,7 @@ import { entities } from '@entity/index' import { createTestClient } from 'apollo-server-testing' -import { name, internet, datatype } from 'faker' +import { datatype, internet, name } from 'faker' import { CONFIG } from '@/config' import { createServer } from '@/server/createServer' diff --git a/backend/src/server/createServer.ts b/backend/src/server/createServer.ts index a901d8763..d58b6896b 100644 --- a/backend/src/server/createServer.ts +++ b/backend/src/server/createServer.ts @@ -10,8 +10,8 @@ import { Logger } from 'log4js' import { CONFIG } from '@/config' import { schema } from '@/graphql/schema' -import { Connection } from '@/typeorm/connection' import { checkDBVersion } from '@/typeorm/DBVersion' +import { Connection } from '@/typeorm/connection' import { elopageWebhook } from '@/webhook/elopage' import { gmsWebhook } from '@/webhook/gms' diff --git a/backend/src/typeorm/connection.ts b/backend/src/typeorm/connection.ts index 104f6449d..41cfbd333 100644 --- a/backend/src/typeorm/connection.ts +++ b/backend/src/typeorm/connection.ts @@ -1,6 +1,6 @@ // TODO This is super weird - since the entities are defined in another project they have their own globals. // We cannot use our connection here, but must use the external typeorm installation -import { Connection as DbConnection, createConnection, FileLogger } from '@dbTools/typeorm' +import { Connection as DbConnection, FileLogger, createConnection } from '@dbTools/typeorm' import { entities } from '@entity/index' import { CONFIG } from '@/config' diff --git a/backend/src/util/communityUser.ts b/backend/src/util/communityUser.ts index 45a142ce8..94b1eda1e 100644 --- a/backend/src/util/communityUser.ts +++ b/backend/src/util/communityUser.ts @@ -1,6 +1,6 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ -import { SaveOptions, RemoveOptions } from '@dbTools/typeorm' +import { RemoveOptions, SaveOptions } from '@dbTools/typeorm' import { User as dbUser } from '@entity/User' import { UserContact } from '@entity/UserContact' diff --git a/backend/src/util/decay.test.ts b/backend/src/util/decay.test.ts index 1d4ebab3b..fdb3fc563 100644 --- a/backend/src/util/decay.test.ts +++ b/backend/src/util/decay.test.ts @@ -1,6 +1,6 @@ import { Decimal } from 'decimal.js-light' -import { decayFormula, calculateDecay } from './decay' +import { calculateDecay, decayFormula } from './decay' describe('utils/decay', () => { describe('decayFormula', () => { diff --git a/backend/src/util/klicktipp.test.ts b/backend/src/util/klicktipp.test.ts index a88e8f21a..18a0d0e0d 100644 --- a/backend/src/util/klicktipp.test.ts +++ b/backend/src/util/klicktipp.test.ts @@ -6,7 +6,7 @@ import { Connection } from '@dbTools/typeorm' import { Event as DbEvent } from '@entity/Event' import { ApolloServerTestClient } from 'apollo-server-testing' -import { testEnvironment, cleanDB, resetToken } from '@test/helpers' +import { cleanDB, resetToken, testEnvironment } from '@test/helpers' import { addFieldsToSubscriber } from '@/apis/KlicktippController' import { creations } from '@/seeds/creation' diff --git a/backend/src/util/klicktipp.ts b/backend/src/util/klicktipp.ts index c07b3128a..6936ed10e 100644 --- a/backend/src/util/klicktipp.ts +++ b/backend/src/util/klicktipp.ts @@ -1,7 +1,7 @@ // eslint-disable @typescript-eslint/no-explicit-any import { User } from '@entity/User' -import { getKlickTippUser, addFieldsToSubscriber } from '@/apis/KlicktippController' +import { addFieldsToSubscriber, getKlickTippUser } from '@/apis/KlicktippController' import { EventType } from '@/event/EventType' import { lastDateTimeEvents } from '@/graphql/resolver/util/eventList' diff --git a/backend/src/util/virtualTransactions.ts b/backend/src/util/virtualTransactions.ts index 063f926e0..c50134d12 100644 --- a/backend/src/util/virtualTransactions.ts +++ b/backend/src/util/virtualTransactions.ts @@ -1,5 +1,5 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ -import { SaveOptions, RemoveOptions } from '@dbTools/typeorm' +import { RemoveOptions, SaveOptions } from '@dbTools/typeorm' import { Transaction as dbTransaction } from '@entity/Transaction' import { Decimal } from 'decimal.js-light' From 9c5cc3b29a87d89ced97056c4df29e280df1ffa8 Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Sat, 26 Apr 2025 10:16:50 +0200 Subject: [PATCH 03/13] for usage of biome with visual studio code --- .vscode/settings.json | 11 +++- biome.json | 147 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 157 insertions(+), 1 deletion(-) create mode 100644 biome.json diff --git a/.vscode/settings.json b/.vscode/settings.json index 534f8367f..157764f52 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,7 +1,16 @@ { "git.ignoreLimitWarning": true, "[javascript]": { - "editor.defaultFormatter": "biomejs.biome" + "editor.defaultFormatter": "biomejs.biome", + "editor.codeActionsOnSave": { + "source.organizeImports.biome": "explicit" + } + }, + "[typescript]": { + "editor.defaultFormatter": "biomejs.biome", + "editor.codeActionsOnSave": { + "source.organizeImports.biome": "explicit" + } }, "sqltools.connections": [ { diff --git a/biome.json b/biome.json new file mode 100644 index 000000000..84d3a3a29 --- /dev/null +++ b/biome.json @@ -0,0 +1,147 @@ +{ + "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", + "vcs": { "enabled": false, "clientKind": "git", "useIgnoreFile": false }, + "files": { + "ignoreUnknown": false, + "ignore": ["build", "node_modules", "coverage"], + "include": ["./src/**/*.js", "./src/**/*.ts"] + }, + "formatter": { + "enabled": true, + "useEditorconfig": true, + "formatWithErrors": false, + "indentStyle": "space", + "indentWidth": 2, + "lineEnding": "lf", + "lineWidth": 100, + "attributePosition": "auto", + "bracketSpacing": true + }, + "organizeImports": { "enabled": true }, + "linter": { + "enabled": true, + "rules": { + "recommended": false, + "complexity": { + "noExtraBooleanCast": "error", + "noMultipleSpacesInRegularExpressionLiterals": "error", + "noUselessCatch": "error", + "noUselessConstructor": "error", + "noUselessLoneBlockStatements": "error", + "noUselessRename": "error", + "noUselessTernary": "error", + "noUselessUndefinedInitialization": "error", + "noVoid": "error", + "noWith": "error", + "useLiteralKeys": "error", + "useRegexLiterals": "error" + }, + "correctness": { + "noConstAssign": "error", + "noConstantCondition": "error", + "noEmptyCharacterClassInRegex": "error", + "noEmptyPattern": "error", + "noGlobalObjectCalls": "error", + "noInnerDeclarations": "error", + "noInvalidConstructorSuper": "error", + "noInvalidUseBeforeDeclaration": "error", + "noNewSymbol": "error", + "noNodejsModules": "off", + "noNonoctalDecimalEscape": "error", + "noPrecisionLoss": "error", + "noSelfAssign": "error", + "noSetterReturn": "error", + "noSwitchDeclarations": "error", + "noUndeclaredVariables": "error", + "noUnreachable": "error", + "noUnreachableSuper": "error", + "noUnsafeFinally": "error", + "noUnsafeOptionalChaining": "error", + "noUnusedLabels": "error", + "noUnusedVariables": "error", + "useArrayLiterals": "error", + "useIsNan": "error", + "useValidForDirection": "error", + "useYield": "error" + }, + "security": { "noGlobalEval": "error" }, + "style": { + "noCommaOperator": "error", + "noDefaultExport": "error", + "noVar": "warn", + "noYodaExpression": "error", + "useBlockStatements": "error", + "useConsistentBuiltinInstantiation": "error", + "useConst": "error", + "useSingleVarDeclarator": "error" + }, + "suspicious": { + "noAsyncPromiseExecutor": "error", + "noCatchAssign": "error", + "noClassAssign": "error", + "noCompareNegZero": "error", + "noConsole": "error", + "noControlCharactersInRegex": "error", + "noDebugger": "error", + "noDoubleEquals": "error", + "noDuplicateCase": "error", + "noDuplicateClassMembers": "error", + "noDuplicateObjectKeys": "error", + "noDuplicateParameters": "error", + "noEmptyBlockStatements": "error", + "noFallthroughSwitchClause": "error", + "noFunctionAssign": "error", + "noGlobalAssign": "error", + "noImportAssign": "error", + "noMisleadingCharacterClass": "error", + "noPrototypeBuiltins": "error", + "noRedeclare": "error", + "noSelfCompare": "error", + "noShadowRestrictedNames": "error", + "noSparseArray": "error", + "noUnsafeNegation": "error", + "useDefaultSwitchClauseLast": "error", + "useGetterReturn": "error", + "useValidTypeof": "error" + } + }, + "ignore": ["**/node_modules", "**/*.min.js", "**/build", "**/coverage"] + }, + "javascript": { + "formatter": { + "jsxQuoteStyle": "single", + "quoteProperties": "asNeeded", + "trailingCommas": "all", + "semicolons": "asNeeded", + "arrowParentheses": "always", + "bracketSameLine": false, + "quoteStyle": "single", + "attributePosition": "auto", + "bracketSpacing": true + }, + "globals": [ + "document", + "navigator", + "window", + "describe", + "test", + "it", + "expect", + "beforeAll", + "beforeEach", + "afterAll", + "afterEach", + "jest" + ], + "parser": { + "unsafeParameterDecoratorsEnabled": true + } + }, + "overrides": [ + { + "include": ["*.ts", "*.tsx"], + "linter": { "rules": { "complexity": { "noVoid": "error" } } } + }, + { "include": ["*.test.ts"], "linter": { "rules": {} } } + ] +} From 90b8dbcc7b926a735f93202d50135cc60b2b2b6d Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Sat, 26 Apr 2025 10:17:18 +0200 Subject: [PATCH 04/13] refactor code to satisfy biome rules, remove eslint rule comments --- backend/.eslintignore | 4 - backend/.eslintrc.js | 213 ------------------ backend/.prettierrc.js | 14 -- backend/log4js-config.json | 24 ++ backend/package.json | 17 +- backend/src/apis/HttpRequest.ts | 4 - backend/src/apis/KlicktippController.ts | 29 +-- .../dltConnector/DltConnectorClient.test.ts | 5 - .../apis/dltConnector/DltConnectorClient.ts | 5 +- backend/src/apis/gms/ExportUsers.ts | 47 ++-- backend/src/apis/gms/GmsClient.ts | 46 ++-- .../src/apis/gms/model/GmsCommunityProfile.ts | 2 +- backend/src/apis/gms/model/GmsUserAccount.ts | 2 +- backend/src/apis/humhub/ExportUsers.ts | 19 +- backend/src/apis/humhub/HumHubClient.ts | 2 - .../src/apis/humhub/__mocks__/HumHubClient.ts | 2 - .../humhub/compareHumhubUserDbUser.test.ts | 3 +- .../apis/humhub/compareHumhubUserDbUser.ts | 32 ++- .../humhub/logging/ProfileLogging.view.ts | 2 +- backend/src/apis/humhub/model/Account.ts | 1 - backend/src/apis/humhub/model/GetUser.ts | 2 +- backend/src/apis/humhub/model/Profile.ts | 1 - backend/src/apis/humhub/syncUser.test.ts | 1 - backend/src/apis/openai/OpenaiClient.ts | 3 +- backend/src/auth/JWT.ts | 6 +- backend/src/config/index.ts | 6 +- backend/src/config/schema.ts | 8 - .../src/data/ContributionMessage.builder.ts | 1 - backend/src/data/PublishName.logic.ts | 1 - .../src/emails/sendEmailTranslated.test.ts | 3 - backend/src/emails/sendEmailTranslated.ts | 2 - backend/src/emails/sendEmailVariants.test.ts | 6 - .../src/federation/authenticateCommunities.ts | 4 +- .../federation/client/1_0/SendCoinsClient.ts | 2 +- .../PublicCommunityInfoLogging.view.ts | 1 - .../1_0/logging/SendCoinsArgsLogging.view.ts | 1 - .../logging/SendCoinsResultLogging.view.ts | 1 - .../client/1_0/model/GetPublicKeyResult.ts | 2 - .../client/1_1/AuthenticationClient.ts | 2 - .../federation/client/1_1/FederationClient.ts | 2 - .../federation/client/1_1/SendCoinsClient.ts | 2 - .../client/AuthenticationClientFactory.ts | 9 +- .../client/FederationClientFactory.ts | 9 +- .../client/SendCoinsClientFactory.ts | 9 +- .../federation/validateCommunities.test.ts | 31 +-- backend/src/federation/validateCommunities.ts | 8 +- backend/src/graphql/arg/Paginated.ts | 1 - .../src/graphql/arg/TransactionLinkFilters.ts | 1 - backend/src/graphql/directive/isAuthorized.ts | 5 +- backend/src/graphql/model/GdtEntry.ts | 10 +- .../src/graphql/resolver/BalanceResolver.ts | 1 - .../resolver/CommunityResolver.test.ts | 13 +- .../resolver/ContributionLinkResolver.test.ts | 8 +- .../resolver/ContributionLinkResolver.ts | 16 +- .../ContributionMessageResolver.test.ts | 8 +- .../resolver/ContributionMessageResolver.ts | 4 +- .../resolver/ContributionResolver.test.ts | 12 +- .../graphql/resolver/ContributionResolver.ts | 10 +- .../graphql/resolver/EmailOptinCodes.test.ts | 8 +- backend/src/graphql/resolver/GdtResolver.ts | 22 +- .../resolver/KlicktippResolver.test.ts | 9 +- .../graphql/resolver/StatisticsResolver.ts | 6 +- .../resolver/TransactionLinkResolver.test.ts | 14 +- .../resolver/TransactionLinkResolver.ts | 5 +- .../resolver/TransactionResolver.test.ts | 10 +- .../graphql/resolver/TransactionResolver.ts | 10 +- .../src/graphql/resolver/UserResolver.test.ts | 13 +- backend/src/graphql/resolver/UserResolver.ts | 19 +- .../src/graphql/resolver/semaphore.test.ts | 6 +- .../util/authenticateGmsUserPlayground.ts | 2 +- .../graphql/resolver/util/creations.test.ts | 3 +- .../src/graphql/resolver/util/creations.ts | 10 +- .../resolver/util/findContributionMessages.ts | 4 +- .../resolver/util/findContributions.ts | 9 +- .../util/findUserByIdentifiers.test.ts | 7 +- .../resolver/util/getKlicktippState.ts | 3 - .../resolver/util/processXComSendCoins.ts | 12 +- .../sendTransactionsToDltConnector.test.ts | 35 ++- .../util/sendTransactionsToDltConnector.ts | 2 +- .../graphql/resolver/util/sendUserToGms.ts | 4 +- .../util/settlePendingSenderTransaction.ts | 4 - .../src/graphql/resolver/util/syncHumhub.ts | 2 +- .../resolver/util/transactionLinkSummary.ts | 2 - .../graphql/resolver/util/validateAlias.ts | 16 +- backend/src/graphql/scalar/Decimal.ts | 1 - backend/src/graphql/scalar/Location.ts | 5 +- .../validator/ContributionStatusArray.ts | 1 - backend/src/graphql/validator/DateString.ts | 1 - backend/src/graphql/validator/Decimal.ts | 1 - backend/src/graphql/validator/Location.ts | 1 - backend/src/index.ts | 8 +- .../UnconfirmedContributionAdmin.role.ts | 3 +- backend/src/logging/BalanceLogging.view.ts | 1 - backend/src/logging/DecayLogging.view.ts | 1 - backend/src/password/EncryptorUtils.ts | 4 - .../src/password/__mocks__/EncryptorUtils.ts | 4 - backend/src/seeds/community/index.ts | 2 +- backend/src/seeds/factory/contributionLink.ts | 6 +- backend/src/seeds/factory/creation.ts | 4 - backend/src/seeds/factory/transactionLink.ts | 2 - backend/src/seeds/factory/user.ts | 7 +- backend/src/seeds/index.ts | 17 +- backend/src/server/LogError.test.ts | 1 - backend/src/server/LogError.ts | 2 - backend/src/server/context.ts | 4 +- backend/src/server/createServer.ts | 10 +- backend/src/server/logger.ts | 7 +- backend/src/server/plugins.ts | 23 +- backend/src/typeorm/connection.ts | 4 +- backend/src/util/Monitor.ts | 1 - backend/src/util/calculateSenderBalance.ts | 4 +- backend/src/util/communityUser.ts | 2 - backend/src/util/decay.test.ts | 2 +- backend/src/util/executeKlicktipp.ts | 6 +- backend/src/util/klicktipp.test.ts | 8 +- backend/src/util/klicktipp.ts | 9 +- backend/src/util/time.ts | 4 +- backend/src/util/utilities.ts | 5 +- backend/src/util/validate.ts | 4 +- backend/src/util/virtualTransactions.ts | 13 +- backend/src/webhook/elopage.ts | 36 +-- backend/src/webhook/gms.ts | 26 +-- 122 files changed, 374 insertions(+), 788 deletions(-) delete mode 100644 backend/.eslintignore delete mode 100644 backend/.eslintrc.js delete mode 100644 backend/.prettierrc.js diff --git a/backend/.eslintignore b/backend/.eslintignore deleted file mode 100644 index 1ae86fe5e..000000000 --- a/backend/.eslintignore +++ /dev/null @@ -1,4 +0,0 @@ -node_modules -**/*.min.js -build -coverage \ No newline at end of file diff --git a/backend/.eslintrc.js b/backend/.eslintrc.js deleted file mode 100644 index 00ae08b1b..000000000 --- a/backend/.eslintrc.js +++ /dev/null @@ -1,213 +0,0 @@ -// eslint-disable-next-line import/no-commonjs, import/unambiguous -module.exports = { - root: true, - env: { - node: true, - }, - parser: '@typescript-eslint/parser', - plugins: ['prettier', '@typescript-eslint', 'type-graphql', 'import', 'n', 'promise'], - extends: [ - 'standard', - 'eslint:recommended', - 'plugin:prettier/recommended', - 'plugin:import/recommended', - 'plugin:import/typescript', - 'plugin:security/recommended', - 'plugin:@eslint-community/eslint-comments/recommended', - ], - settings: { - 'import/parsers': { - '@typescript-eslint/parser': ['.ts', '.tsx'], - }, - 'import/resolver': { - typescript: { - project: ['./tsconfig.json', '**/tsconfig.json'], - }, - node: true, - }, - // the parser cannot handle the split sodium import - 'import/ignore': ['sodium-native'], - }, - rules: { - 'no-console': 'error', - camelcase: ['error', { allow: ['FederationClient_*', 'crypto_*', 'randombytes_random'] }], - 'no-debugger': 'error', - 'prettier/prettier': [ - 'error', - { - htmlWhitespaceSensitivity: 'ignore', - }, - ], - // import - 'import/export': 'error', - // 'import/no-deprecated': 'error', - 'import/no-empty-named-blocks': 'error', - 'import/no-extraneous-dependencies': 'error', - 'import/no-mutable-exports': 'error', - 'import/no-unused-modules': 'error', - 'import/no-named-as-default': 'error', - 'import/no-named-as-default-member': 'error', - 'import/no-amd': 'error', - 'import/no-commonjs': 'error', - 'import/no-import-module-exports': 'error', - 'import/no-nodejs-modules': 'off', - 'import/unambiguous': 'error', - 'import/default': 'error', - 'import/namespace': 'error', - 'import/no-absolute-path': 'error', - 'import/no-cycle': 'error', - 'import/no-dynamic-require': 'error', - 'import/no-internal-modules': 'off', - 'import/no-relative-packages': 'error', - 'import/no-relative-parent-imports': [ - 'error', - { ignore: ['@/*', 'random-bigint', 'sodium-native'] }, - ], - 'import/no-self-import': 'error', - 'import/no-unresolved': 'error', - 'import/no-useless-path-segments': 'error', - 'import/no-webpack-loader-syntax': 'error', - 'import/consistent-type-specifier-style': 'error', - 'import/exports-last': 'off', - 'import/extensions': 'error', - 'import/first': 'error', - 'import/group-exports': 'off', - 'import/newline-after-import': 'error', - 'import/no-anonymous-default-export': 'error', - 'import/no-default-export': 'error', - 'import/no-duplicates': 'error', - 'import/no-named-default': 'error', - 'import/no-namespace': 'error', - 'import/no-unassigned-import': 'error', - 'import/order': [ - 'error', - { - groups: ['builtin', 'external', 'internal', 'parent', 'sibling', 'index', 'object', 'type'], - 'newlines-between': 'always', - pathGroups: [ - { - pattern: '@?*/**', - group: 'external', - position: 'after', - }, - { - pattern: '@/**', - group: 'external', - position: 'after', - }, - ], - alphabetize: { - order: 'asc' /* sort in ascending order. Options: ['ignore', 'asc', 'desc'] */, - caseInsensitive: true /* ignore case. Options: [true, false] */, - }, - distinctGroup: true, - }, - ], - 'import/prefer-default-export': 'off', - // n - 'n/handle-callback-err': 'error', - 'n/no-callback-literal': 'error', - 'n/no-exports-assign': 'error', - 'n/no-extraneous-import': 'error', - 'n/no-extraneous-require': 'error', - 'n/no-hide-core-modules': 'error', - 'n/no-missing-import': 'off', // not compatible with typescript - 'n/no-missing-require': 'error', - 'n/no-new-require': 'error', - 'n/no-path-concat': 'error', - 'n/no-process-exit': 'error', - 'n/no-unpublished-bin': 'error', - 'n/no-unpublished-import': 'off', // TODO need to exclude seeds - 'n/no-unpublished-require': 'error', - 'n/no-unsupported-features': ['error', { ignores: ['modules'] }], - 'n/no-unsupported-features/es-builtins': 'error', - 'n/no-unsupported-features/es-syntax': 'error', - 'n/no-unsupported-features/node-builtins': 'error', - 'n/process-exit-as-throw': 'error', - 'n/shebang': 'error', - 'n/callback-return': 'error', - 'n/exports-style': 'error', - 'n/file-extension-in-import': 'off', - 'n/global-require': 'error', - 'n/no-mixed-requires': 'error', - 'n/no-process-env': 'error', - 'n/no-restricted-import': 'error', - 'n/no-restricted-require': 'error', - 'n/no-sync': 'error', - 'n/prefer-global/buffer': 'error', - 'n/prefer-global/console': 'error', - 'n/prefer-global/process': 'error', - 'n/prefer-global/text-decoder': 'error', - 'n/prefer-global/text-encoder': 'error', - 'n/prefer-global/url': 'error', - 'n/prefer-global/url-search-params': 'error', - 'n/prefer-promises/dns': 'error', - 'n/prefer-promises/fs': 'error', - // promise - 'promise/catch-or-return': 'error', - 'promise/no-return-wrap': 'error', - 'promise/param-names': 'error', - 'promise/always-return': 'error', - 'promise/no-native': 'off', - 'promise/no-nesting': 'warn', - 'promise/no-promise-in-callback': 'warn', - 'promise/no-callback-in-promise': 'warn', - 'promise/avoid-new': 'warn', - 'promise/no-new-statics': 'error', - 'promise/no-return-in-finally': 'warn', - 'promise/valid-params': 'warn', - 'promise/prefer-await-to-callbacks': 'error', - 'promise/no-multiple-resolved': 'error', - // eslint comments - '@eslint-community/eslint-comments/disable-enable-pair': ['error', { allowWholeFile: true }], - '@eslint-community/eslint-comments/no-restricted-disable': 'error', - '@eslint-community/eslint-comments/no-use': 'off', - '@eslint-community/eslint-comments/require-description': 'off', - }, - overrides: [ - // only for ts files - { - files: ['*.ts', '*.tsx'], - extends: [ - 'plugin:@typescript-eslint/recommended', - 'plugin:@typescript-eslint/recommended-requiring-type-checking', - 'plugin:@typescript-eslint/strict', - 'plugin:type-graphql/recommended', - ], - rules: { - // allow explicitly defined dangling promises - '@typescript-eslint/no-floating-promises': ['error', { ignoreVoid: true }], - 'no-void': ['error', { allowAsStatement: true }], - // ignore prefer-regexp-exec rule to allow string.match(regex) - '@typescript-eslint/prefer-regexp-exec': 'off', - // this should not run on ts files: https://github.com/import-js/eslint-plugin-import/issues/2215#issuecomment-911245486 - 'import/unambiguous': 'off', - // this is not compatible with typeorm, due to joined tables can be null, but are not defined as nullable - '@typescript-eslint/no-unnecessary-condition': 'off', - }, - parserOptions: { - tsconfigRootDir: __dirname, - project: ['./tsconfig.json', '**/tsconfig.json'], - // this is to properly reference the referenced project database without requirement of compiling it - // eslint-disable-next-line camelcase - EXPERIMENTAL_useSourceOfProjectReferenceRedirect: true, - }, - }, - { - files: ['*.test.ts'], - plugins: ['jest'], - env: { - jest: true, - }, - rules: { - 'jest/no-disabled-tests': 'error', - 'jest/no-focused-tests': 'error', - 'jest/no-identical-title': 'error', - 'jest/prefer-to-have-length': 'error', - 'jest/valid-expect': 'error', - '@typescript-eslint/unbound-method': 'off', - 'jest/unbound-method': 'error', - }, - }, - ], -} diff --git a/backend/.prettierrc.js b/backend/.prettierrc.js deleted file mode 100644 index 8d38f2aac..000000000 --- a/backend/.prettierrc.js +++ /dev/null @@ -1,14 +0,0 @@ -module.exports = { - printWidth: 100, - tabWidth: 2, - useTabs: false, - semi: false, - singleQuote: true, - quoteProps: "as-needed", - jsxSingleQuote: true, - trailingComma: "all", - bracketSpacing: true, - bracketSameLine: false, - arrowParens: "always", - endOfLine: "auto", -}; diff --git a/backend/log4js-config.json b/backend/log4js-config.json index 1cbd4519c..0807e6a12 100644 --- a/backend/log4js-config.json +++ b/backend/log4js-config.json @@ -57,6 +57,20 @@ "fileNameSep" : "_", "numBackups" : 30 }, + "gms": + { + "type": "dateFile", + "filename": "../logs/backend/gms.log", + "pattern": "yyyy-MM-dd", + "layout": + { + "type": "pattern", "pattern": "%d{ISO8601} %p %c [%X{user}] [%f : %l] - %m" + }, + "compress": true, + "keepFileExt" : true, + "fileNameSep" : "_", + "numBackups" : 30 + }, "errorFile": { "type": "dateFile", @@ -137,6 +151,16 @@ "level": "debug", "enableCallStack": true }, + "gms": + { + "appenders": + [ + "gms", + "errors" + ], + "level": "debug", + "enableCallStack": true + }, "http": { "appenders": diff --git a/backend/package.json b/backend/package.json index dc81c1c32..5a053181c 100644 --- a/backend/package.json +++ b/backend/package.json @@ -12,7 +12,8 @@ "clean": "tsc --build --clean", "start": "cross-env TZ=UTC TS_NODE_BASEURL=./build node -r tsconfig-paths/register build/src/index.js", "dev": "cross-env TZ=UTC nodemon -w src --ext ts,pug,json,css --exec ts-node -r tsconfig-paths/register src/index.ts", - "lint": "eslint --max-warnings=0 .", + "lint": "biome check --error-on-warnings .", + "lint:fix": "biome check --error-on-warnings . --write", "test": "cross-env TZ=UTC NODE_ENV=development jest --runInBand --forceExit --detectOpenHandles", "seed": "cross-env TZ=UTC NODE_ENV=development ts-node -r tsconfig-paths/register src/seeds/index.ts", "klicktipp": "cross-env TZ=UTC NODE_ENV=development ts-node -r tsconfig-paths/register src/util/executeKlicktipp.ts", @@ -59,7 +60,6 @@ }, "devDependencies": { "@biomejs/biome": "1.9.4", - "@eslint-community/eslint-plugin-eslint-comments": "^3.2.1", "@types/email-templates": "^10.0.1", "@types/express": "^4.17.12", "@types/faker": "^5.5.9", @@ -71,20 +71,7 @@ "@types/nodemailer": "^6.4.4", "@types/sodium-native": "^2.3.5", "@types/uuid": "^8.3.4", - "@typescript-eslint/eslint-plugin": "^5.62.0", - "@typescript-eslint/parser": "^5.62.0", "apollo-server-testing": "^2.25.2", - "eslint": "^8.57.1", - "eslint-config-prettier": "^8.8.0", - "eslint-config-standard": "^17.0.0", - "eslint-import-resolver-typescript": "^3.5.4", - "eslint-plugin-import": "^2.27.5", - "eslint-plugin-jest": "^27.2.1", - "eslint-plugin-n": "^15.7.0", - "eslint-plugin-prettier": "^4.2.1", - "eslint-plugin-promise": "^6.1.1", - "eslint-plugin-security": "^1.7.1", - "eslint-plugin-type-graphql": "^1.0.0", "faker": "^5.5.3", "graphql-tag": "^2.12.6", "jest": "^27.2.4", diff --git a/backend/src/apis/HttpRequest.ts b/backend/src/apis/HttpRequest.ts index 2c7b8b5a1..ef6f540b7 100644 --- a/backend/src/apis/HttpRequest.ts +++ b/backend/src/apis/HttpRequest.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import axios from 'axios' import { LogError } from '@/server/LogError' diff --git a/backend/src/apis/KlicktippController.ts b/backend/src/apis/KlicktippController.ts index ea6a8e47c..cb665ea7f 100644 --- a/backend/src/apis/KlicktippController.ts +++ b/backend/src/apis/KlicktippController.ts @@ -1,13 +1,6 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ import { CONFIG } from '@/config' import { backendLogger as logger } from '@/server/logger' -// eslint-disable-next-line import/no-relative-parent-imports import KlicktippConnector from 'klicktipp-api' const klicktippConnector = new KlicktippConnector() @@ -18,7 +11,9 @@ export const subscribe = async ( firstName?: string, lastName?: string, ): Promise => { - if (!CONFIG.KLICKTIPP) return true + if (!CONFIG.KLICKTIPP) { + return true + } const fields = { fieldFirstName: firstName, fieldLastName: lastName, @@ -29,7 +24,9 @@ export const subscribe = async ( } export const unsubscribe = async (email: string): Promise => { - if (!CONFIG.KLICKTIPP) return true + if (!CONFIG.KLICKTIPP) { + return true + } const isLogin = await loginKlicktippUser() if (isLogin) { return await klicktippConnector.unsubscribe(email) @@ -38,12 +35,14 @@ export const unsubscribe = async (email: string): Promise => { } export const getKlickTippUser = async (email: string): Promise => { - if (!CONFIG.KLICKTIPP) return true + if (!CONFIG.KLICKTIPP) { + return true + } const isLogin = await loginKlicktippUser() if (isLogin) { try { return klicktippConnector.subscriberGet(await klicktippConnector.subscriberSearch(email)) - } catch (e) { + } catch (_e) { logger.error('Could not find subscriber', email) return false } @@ -52,7 +51,9 @@ export const getKlickTippUser = async (email: string): Promise => { } export const loginKlicktippUser = async (): Promise => { - if (!CONFIG.KLICKTIPP) return true + if (!CONFIG.KLICKTIPP) { + return true + } return await klicktippConnector.login(CONFIG.KLICKTIPP_USER, CONFIG.KLICKTIPP_PASSWORD) } @@ -62,7 +63,9 @@ export const addFieldsToSubscriber = async ( newemail = '', newsmsnumber = '', ) => { - if (!CONFIG.KLICKTIPP) return true + if (!CONFIG.KLICKTIPP) { + return true + } const isLogin = await loginKlicktippUser() if (isLogin) { try { diff --git a/backend/src/apis/dltConnector/DltConnectorClient.test.ts b/backend/src/apis/dltConnector/DltConnectorClient.test.ts index d99093a1b..f3ac103c1 100644 --- a/backend/src/apis/dltConnector/DltConnectorClient.test.ts +++ b/backend/src/apis/dltConnector/DltConnectorClient.test.ts @@ -1,8 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable security/detect-object-injection */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ - import { Connection } from '@dbTools/typeorm' import { Transaction as DbTransaction } from '@entity/Transaction' import { Decimal } from 'decimal.js-light' diff --git a/backend/src/apis/dltConnector/DltConnectorClient.ts b/backend/src/apis/dltConnector/DltConnectorClient.ts index 0f3a6832b..860c64ee5 100644 --- a/backend/src/apis/dltConnector/DltConnectorClient.ts +++ b/backend/src/apis/dltConnector/DltConnectorClient.ts @@ -34,16 +34,15 @@ function getTransactionTypeString(id: TransactionTypeId): string { * A Singleton class defines the `getInstance` method that lets clients access * the unique singleton instance. */ -// eslint-disable-next-line @typescript-eslint/no-extraneous-class + export class DltConnectorClient { - // eslint-disable-next-line no-use-before-define private static instance: DltConnectorClient client: GraphQLClient /** * The Singleton's constructor should always be private to prevent direct * construction calls with the `new` operator. */ - // eslint-disable-next-line no-useless-constructor, @typescript-eslint/no-empty-function + private constructor() {} /** diff --git a/backend/src/apis/gms/ExportUsers.ts b/backend/src/apis/gms/ExportUsers.ts index 5e2f9f213..82142d38b 100644 --- a/backend/src/apis/gms/ExportUsers.ts +++ b/backend/src/apis/gms/ExportUsers.ts @@ -1,9 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ - import { User as DbUser } from '@entity/User' // import { createTestClient } from 'apollo-server-testing' @@ -13,29 +7,28 @@ import { CONFIG } from '@/config' import { getHomeCommunity } from '@/graphql/resolver/util/communities' import { sendUserToGms } from '@/graphql/resolver/util/sendUserToGms' import { LogError } from '@/server/LogError' -import { createServer } from '@/server/createServer' import { backendLogger as logger } from '@/server/logger' +import { checkDBVersion } from '@/typeorm/DBVersion' +import { Connection } from '@/typeorm/connection' CONFIG.EMAIL = false // use force to copy over all user even if gmsRegistered is set to true const forceMode = process.argv.includes('--force') -const context = { - token: '', - setHeaders: { - push: (value: { key: string; value: string }): void => { - context.token = value.value - }, - // eslint-disable-next-line @typescript-eslint/no-empty-function - forEach: (): void => {}, - }, - clientTimezoneOffset: 0, -} +async function main() { + // open mysql connection + const con = await Connection.getInstance() + if (!con?.isConnected) { + logger.fatal(`Couldn't open connection to database!`) + throw new Error(`Fatal: Couldn't open connection to database`) + } -const run = async () => { - const server = await createServer(context) - // const seedClient = createTestClient(server.apollo) - const { con } = server + // check for correct database version + const dbVersion = await checkDBVersion(CONFIG.DB_VERSION) + if (!dbVersion) { + logger.fatal('Fatal: Database Version incorrect') + throw new Error('Fatal: Database Version incorrect') + } const homeCom = await getHomeCommunity() if (homeCom.gmsApiKey === null) { @@ -63,7 +56,7 @@ const run = async () => { /* const gmsUser = new GmsUser(user) try { - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument + if (await createGmsUser(homeCom.gmsApiKey, gmsUser)) { logger.debug('GMS user published successfully:', gmsUser) user.gmsRegistered = true @@ -84,7 +77,11 @@ const run = async () => { } logger.info('##gms## publishing all local users successful...') - await con.close() + await con.destroy() } -void run() +main().catch((e) => { + // biome-ignore lint/suspicious/noConsole: logger isn't used here + console.error(e) + process.exit(1) +}) diff --git a/backend/src/apis/gms/GmsClient.ts b/backend/src/apis/gms/GmsClient.ts index 9af018e1c..ce24b95bd 100644 --- a/backend/src/apis/gms/GmsClient.ts +++ b/backend/src/apis/gms/GmsClient.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import axios from 'axios' import { httpAgent, httpsAgent } from '@/apis/ConnectionAgents' @@ -10,7 +6,7 @@ import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' import { ensureUrlEndsWithSlash } from '@/util/utilities' -import { GmsUser } from './model/GmsUser' +import type { GmsUser } from './model/GmsUser' /* export async function communityList(): Promise { @@ -33,10 +29,10 @@ export async function communityList(): Promise { ) } logger.debug('responseData:', result.data.responseData.data) - // eslint-disable-next-line @typescript-eslint/no-unsafe-call + // const gmsUser = JSON.parse(result.data.responseData.data) // logger.debug('gmsUser:', gmsUser) - // eslint-disable-next-line @typescript-eslint/no-unsafe-return + return result.data.responseData.data } catch (error: any) { logger.error('Error in Get community-user/list:', error) @@ -105,10 +101,10 @@ export async function userByUuid(uuid: string): Promise { const baseUrl = ensureUrlEndsWithSlash(CONFIG.GMS_API_URL) + // TODO: NEVER pass user JWT token to another server - serious security risk! 😱⚠️ const service = 'verify-auth-token?token='.concat(token).concat('&uuid=').concat(communityUuid) const config = { headers: { @@ -216,12 +219,15 @@ export async function verifyAuthToken( ) } logger.debug('responseData:', result.data.responseData) - // eslint-disable-next-line @typescript-eslint/no-unsafe-call + const token: string = result.data.responseData.token logger.debug('verifyAuthToken=', token) return token - } catch (error: any) { + } catch (error: unknown) { logger.error('Error in verifyAuthToken:', error) - throw new LogError(error.message) + if (error instanceof Error) { + throw new LogError(error.message) + } + throw new LogError('Unknown error in verifyAuthToken') } } diff --git a/backend/src/apis/gms/model/GmsCommunityProfile.ts b/backend/src/apis/gms/model/GmsCommunityProfile.ts index c5e80caa8..72d287868 100644 --- a/backend/src/apis/gms/model/GmsCommunityProfile.ts +++ b/backend/src/apis/gms/model/GmsCommunityProfile.ts @@ -10,7 +10,7 @@ export class GmsCommunityProfile { communityId: number radius: number description: string - // eslint-disable-next-line camelcase + api_key: string communityAuthUrl: unknown profileImage: unknown diff --git a/backend/src/apis/gms/model/GmsUserAccount.ts b/backend/src/apis/gms/model/GmsUserAccount.ts index 8d6b3652c..89b2a3d7f 100644 --- a/backend/src/apis/gms/model/GmsUserAccount.ts +++ b/backend/src/apis/gms/model/GmsUserAccount.ts @@ -11,7 +11,7 @@ export class GmsUserAccount { address: string radius: number description: string - // eslint-disable-next-line camelcase + api_key: string profileImage: unknown } diff --git a/backend/src/apis/humhub/ExportUsers.ts b/backend/src/apis/humhub/ExportUsers.ts index bfa44af55..12208b458 100644 --- a/backend/src/apis/humhub/ExportUsers.ts +++ b/backend/src/apis/humhub/ExportUsers.ts @@ -8,8 +8,8 @@ import { checkDBVersion } from '@/typeorm/DBVersion' import { Connection } from '@/typeorm/connection' import { HumHubClient } from './HumHubClient' -import { GetUser } from './model/GetUser' -import { UsersResponse } from './model/UsersResponse' +import type { GetUser } from './model/GetUser' +import type { UsersResponse } from './model/UsersResponse' import { ExecutedHumhubAction, syncUser } from './syncUser' const USER_BULK_SIZE = 20 @@ -39,14 +39,14 @@ async function loadUsersFromHumHub(client: HumHubClient): Promise { + for (const user of usersPage.results) { // deleted users have empty emails if (user.account.email) { humhubUsers.set(user.account.email.trim(), user) } else { skippedUsersCount++ } - }) + } page++ process.stdout.write( `load users from humhub: ${humhubUsers.size}/${usersPage.total}, skipped: ${skippedUsersCount}\r`, @@ -95,11 +95,13 @@ async function main() { userCount = users.length page++ const promises: Promise[] = [] - users.forEach((user: User) => promises.push(syncUser(user, humhubUsers))) + for (const user of users) { + promises.push(syncUser(user, humhubUsers)) + } const executedActions = await Promise.all(promises) - executedActions.forEach((executedAction: ExecutedHumhubAction) => { + for (const executedAction of executedActions) { executedHumhubActionsCount[executedAction as number]++ - }) + } // using process.stdout.write here so that carriage-return is working analog to c // printf("\rchecked user: %d/%d", dbUserCount, totalUsers); process.stdout.write(`checked user: ${dbUserCount}/${totalUsers}\r`) @@ -118,8 +120,7 @@ async function main() { } main().catch((e) => { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: logger isn't used here console.error(e) - // eslint-disable-next-line n/no-process-exit process.exit(1) }) diff --git a/backend/src/apis/humhub/HumHubClient.ts b/backend/src/apis/humhub/HumHubClient.ts index 27567e770..80eb37266 100644 --- a/backend/src/apis/humhub/HumHubClient.ts +++ b/backend/src/apis/humhub/HumHubClient.ts @@ -17,11 +17,9 @@ import { UsersResponse } from './model/UsersResponse' * HumHubClient as singleton class */ export class HumHubClient { - // eslint-disable-next-line no-use-before-define private static instance: HumHubClient private restClient: RestClient - // eslint-disable-next-line no-useless-constructor, @typescript-eslint/no-empty-function private constructor() { this.restClient = new RestClient('gradido-backend', CONFIG.HUMHUB_API_URL, undefined, { keepAlive: true, diff --git a/backend/src/apis/humhub/__mocks__/HumHubClient.ts b/backend/src/apis/humhub/__mocks__/HumHubClient.ts index cc9af4d76..2fac28324 100644 --- a/backend/src/apis/humhub/__mocks__/HumHubClient.ts +++ b/backend/src/apis/humhub/__mocks__/HumHubClient.ts @@ -10,10 +10,8 @@ import { UsersResponse } from '@/apis/humhub/model/UsersResponse' * HumHubClient as singleton class */ export class HumHubClient { - // eslint-disable-next-line no-use-before-define private static instance: HumHubClient - // eslint-disable-next-line no-useless-constructor, @typescript-eslint/no-empty-function private constructor() {} public static getInstance(): HumHubClient { diff --git a/backend/src/apis/humhub/compareHumhubUserDbUser.test.ts b/backend/src/apis/humhub/compareHumhubUserDbUser.test.ts index 16ec81b24..924e352c6 100644 --- a/backend/src/apis/humhub/compareHumhubUserDbUser.test.ts +++ b/backend/src/apis/humhub/compareHumhubUserDbUser.test.ts @@ -1,4 +1,3 @@ -/* eslint-disable prettier/prettier */ import { communityDbUser } from '@/util/communityUser' import { isHumhubUserIdenticalToDbUser } from './compareHumhubUserDbUser' @@ -56,7 +55,7 @@ describe('isHumhubUserIdenticalToDbUser', () => { it('Should return false because gradido_address differ', () => { const humhubUser = new GetUser(defaultUser, 1) - // eslint-disable-next-line camelcase + humhubUser.profile.gradido_address = 'changed gradido address' const result = isHumhubUserIdenticalToDbUser(humhubUser, defaultUser) expect(result).toBe(false) diff --git a/backend/src/apis/humhub/compareHumhubUserDbUser.ts b/backend/src/apis/humhub/compareHumhubUserDbUser.ts index 9b7f0b51b..57254e99e 100644 --- a/backend/src/apis/humhub/compareHumhubUserDbUser.ts +++ b/backend/src/apis/humhub/compareHumhubUserDbUser.ts @@ -1,23 +1,37 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import { Account } from './model/Account' -import { GetUser } from './model/GetUser' +import type { GetUser } from './model/GetUser' import { Profile } from './model/Profile' function profileIsTheSame(profile: Profile, user: User): boolean { const gradidoUserProfile = new Profile(user) - if (profile.firstname !== gradidoUserProfile.firstname) return false - if (profile.lastname !== gradidoUserProfile.lastname) return false - if (profile.gradido_address !== gradidoUserProfile.gradido_address) return false + if (profile.firstname !== gradidoUserProfile.firstname) { + return false + } + if (profile.lastname !== gradidoUserProfile.lastname) { + return false + } + if (profile.gradido_address !== gradidoUserProfile.gradido_address) { + return false + } return true } function accountIsTheSame(account: Account, user: User): boolean { const gradidoUserAccount = new Account(user) - if (account.username !== gradidoUserAccount.username) return false - if (account.email !== gradidoUserAccount.email) return false - if (account.language !== gradidoUserAccount.language) return false - if (account.status !== gradidoUserAccount.status) return false + if (account.username !== gradidoUserAccount.username) { + return false + } + if (account.email !== gradidoUserAccount.email) { + return false + } + if (account.language !== gradidoUserAccount.language) { + return false + } + if (account.status !== gradidoUserAccount.status) { + return false + } return true } diff --git a/backend/src/apis/humhub/logging/ProfileLogging.view.ts b/backend/src/apis/humhub/logging/ProfileLogging.view.ts index 1c107676d..a895522c6 100644 --- a/backend/src/apis/humhub/logging/ProfileLogging.view.ts +++ b/backend/src/apis/humhub/logging/ProfileLogging.view.ts @@ -12,7 +12,7 @@ export class ProfileLoggingView extends AbstractLoggingView { return { firstname: this.self.firstname.substring(0, 3) + '...', lastname: this.self.lastname.substring(0, 3) + '...', - // eslint-disable-next-line camelcase + gradido_address: gradidoAddressParts[0] + '/' + gradidoAddressParts[1].substring(0, 3) + '...', } diff --git a/backend/src/apis/humhub/model/Account.ts b/backend/src/apis/humhub/model/Account.ts index 934b8931e..e6dc5173d 100644 --- a/backend/src/apis/humhub/model/Account.ts +++ b/backend/src/apis/humhub/model/Account.ts @@ -1,4 +1,3 @@ -/* eslint-disable camelcase */ import { User } from '@entity/User' import { convertGradidoLanguageToHumhub } from '@/apis/humhub/convertLanguage' diff --git a/backend/src/apis/humhub/model/GetUser.ts b/backend/src/apis/humhub/model/GetUser.ts index 8f50c8676..38c78dd43 100644 --- a/backend/src/apis/humhub/model/GetUser.ts +++ b/backend/src/apis/humhub/model/GetUser.ts @@ -10,6 +10,6 @@ export class GetUser extends AbstractUser { id: number guid: string - // eslint-disable-next-line camelcase + display_name: string } diff --git a/backend/src/apis/humhub/model/Profile.ts b/backend/src/apis/humhub/model/Profile.ts index baca0f7b1..9bef1a149 100644 --- a/backend/src/apis/humhub/model/Profile.ts +++ b/backend/src/apis/humhub/model/Profile.ts @@ -1,4 +1,3 @@ -/* eslint-disable camelcase */ import { User } from '@entity/User' import { CONFIG } from '@/config' diff --git a/backend/src/apis/humhub/syncUser.test.ts b/backend/src/apis/humhub/syncUser.test.ts index 2327e0c24..38a00552c 100644 --- a/backend/src/apis/humhub/syncUser.test.ts +++ b/backend/src/apis/humhub/syncUser.test.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/no-empty-function */ import { User } from '@entity/User' import { UserContact } from '@entity/UserContact' diff --git a/backend/src/apis/openai/OpenaiClient.ts b/backend/src/apis/openai/OpenaiClient.ts index 4e766f631..b0e8314a6 100644 --- a/backend/src/apis/openai/OpenaiClient.ts +++ b/backend/src/apis/openai/OpenaiClient.ts @@ -1,4 +1,3 @@ -/* eslint-disable camelcase */ import { OpenaiThreads } from '@entity/OpenaiThreads' import { User } from '@entity/User' import { OpenAI } from 'openai' @@ -18,7 +17,7 @@ export class OpenaiClient { /** * The singleton instance of the `OpenaiClient`. */ - // eslint-disable-next-line no-use-before-define + private static instance: OpenaiClient /** diff --git a/backend/src/auth/JWT.ts b/backend/src/auth/JWT.ts index d8c6c81cf..870ec2871 100644 --- a/backend/src/auth/JWT.ts +++ b/backend/src/auth/JWT.ts @@ -6,7 +6,9 @@ import { LogError } from '@/server/LogError' import { CustomJwtPayload } from './CustomJwtPayload' export const decode = async (token: string): Promise => { - if (!token) throw new LogError('401 Unauthorized') + if (!token) { + throw new LogError('401 Unauthorized') + } try { const secret = new TextEncoder().encode(CONFIG.JWT_SECRET) @@ -15,7 +17,7 @@ export const decode = async (token: string): Promise => audience: 'urn:gradido:audience', }) return payload as CustomJwtPayload - } catch (err) { + } catch (_err) { return null } } diff --git a/backend/src/config/index.ts b/backend/src/config/index.ts index 3420cd106..3f161173f 100644 --- a/backend/src/config/index.ts +++ b/backend/src/config/index.ts @@ -1,7 +1,5 @@ // ATTENTION: DO NOT PUT ANY SECRETS IN HERE (or the .env) -/* eslint-disable n/no-process-env */ -// eslint-disable-next-line import/no-unresolved import { validate } from '@config/index' import { latestDbVersion } from '@dbTools/config/detectLastDBVersion' import { Decimal } from 'decimal.js-light' @@ -89,8 +87,8 @@ const email = { EMAIL_PASSWORD: process.env.EMAIL_PASSWORD ?? '', EMAIL_SMTP_HOST: process.env.EMAIL_SMTP_HOST ?? 'mailserver', EMAIL_SMTP_PORT: Number(process.env.EMAIL_SMTP_PORT) || 1025, - // eslint-disable-next-line no-unneeded-ternary - EMAIL_TLS: process.env.EMAIL_TLS === 'false' ? false : true, + + EMAIL_TLS: process.env.EMAIL_TLS !== 'false', EMAIL_LINK_VERIFICATION: COMMUNITY_URL + (process.env.EMAIL_LINK_VERIFICATION_PATH ?? '/checkEmail/'), EMAIL_LINK_SETPASSWORD: diff --git a/backend/src/config/schema.ts b/backend/src/config/schema.ts index da61b8988..33068cc64 100644 --- a/backend/src/config/schema.ts +++ b/backend/src/config/schema.ts @@ -1,5 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -// eslint-disable-next-line import/no-unresolved import { COMMUNITY_DESCRIPTION, COMMUNITY_NAME, @@ -61,7 +59,6 @@ export const schema = Joi.object({ .description('The url for redeeming link transactions, must start with frontend base url') .default('http://0.0.0.0/redeem/') .custom((value: string, helpers: Joi.CustomHelpers): string | Joi.ErrorReport => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-member-access if (!value.startsWith(helpers.state.ancestors[0].COMMUNITY_URL)) { return helpers.error('string.pattern.base', { value, communityUrl: COMMUNITY_URL }) } @@ -72,7 +69,6 @@ export const schema = Joi.object({ COMMUNITY_REDEEM_CONTRIBUTION_URL: Joi.string() .uri({ scheme: ['http', 'https'] }) .custom((value: string, helpers: Joi.CustomHelpers): string | Joi.ErrorReport => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-member-access if (!value.startsWith(helpers.state.ancestors[0].COMMUNITY_URL)) { return helpers.error('string.pattern.base', { value, communityUrl: COMMUNITY_URL }) } @@ -168,7 +164,6 @@ export const schema = Joi.object({ EMAIL_LINK_VERIFICATION: Joi.string() .uri({ scheme: ['http', 'https'] }) .custom((value: string, helpers: Joi.CustomHelpers): string | Joi.ErrorReport => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-member-access if (!value.startsWith(helpers.state.ancestors[0].COMMUNITY_URL)) { return helpers.error('string.pattern.base', { value, communityUrl: COMMUNITY_URL }) } @@ -180,7 +175,6 @@ export const schema = Joi.object({ EMAIL_LINK_SETPASSWORD: Joi.string() .uri({ scheme: ['http', 'https'] }) .custom((value: string, helpers: Joi.CustomHelpers): string | Joi.ErrorReport => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-member-access if (!value.startsWith(helpers.state.ancestors[0].COMMUNITY_URL)) { return helpers.error('string.pattern.base', { value, communityUrl: COMMUNITY_URL }) } @@ -192,7 +186,6 @@ export const schema = Joi.object({ EMAIL_LINK_FORGOTPASSWORD: Joi.string() .uri({ scheme: ['http', 'https'] }) .custom((value: string, helpers: Joi.CustomHelpers): string | Joi.ErrorReport => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-member-access if (!value.startsWith(helpers.state.ancestors[0].COMMUNITY_URL)) { return helpers.error('string.pattern.base', { value, communityUrl: COMMUNITY_URL }) } @@ -204,7 +197,6 @@ export const schema = Joi.object({ EMAIL_LINK_OVERVIEW: Joi.string() .uri({ scheme: ['http', 'https'] }) .custom((value: string, helpers: Joi.CustomHelpers): string | Joi.ErrorReport => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-member-access if (!value.startsWith(helpers.state.ancestors[0].COMMUNITY_URL)) { return helpers.error('string.pattern.base', { value, communityUrl: COMMUNITY_URL }) } diff --git a/backend/src/data/ContributionMessage.builder.ts b/backend/src/data/ContributionMessage.builder.ts index 02ac28a69..32abd14ae 100644 --- a/backend/src/data/ContributionMessage.builder.ts +++ b/backend/src/data/ContributionMessage.builder.ts @@ -4,7 +4,6 @@ import { User } from '@entity/User' import { ContributionMessageType } from '@/graphql/enum/ContributionMessageType' -// eslint-disable-next-line @typescript-eslint/no-extraneous-class export class ContributionMessageBuilder { private contributionMessage: ContributionMessage diff --git a/backend/src/data/PublishName.logic.ts b/backend/src/data/PublishName.logic.ts index 3befb4d3a..af18fd6cb 100644 --- a/backend/src/data/PublishName.logic.ts +++ b/backend/src/data/PublishName.logic.ts @@ -18,7 +18,6 @@ export class PublishNameLogic { // remove character which are invalid for humhub username private filterOutInvalidChar(name: string) { - // eslint-disable-next-line import/no-named-as-default-member return XRegExp.match(name, this.usernameRegex, 'all').join('') } diff --git a/backend/src/emails/sendEmailTranslated.test.ts b/backend/src/emails/sendEmailTranslated.test.ts index 69e5d9d83..917d80ea6 100644 --- a/backend/src/emails/sendEmailTranslated.test.ts +++ b/backend/src/emails/sendEmailTranslated.test.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ import { createTransport } from 'nodemailer' import { i18n, logger } from '@test/testSetup' @@ -103,12 +102,10 @@ describe('sendEmailTranslated', () => { }) }) - // eslint-disable-next-line jest/no-disabled-tests it.skip('calls "i18n.setLocale" with "en"', () => { expect(i18n.setLocale).toBeCalledWith('en') }) - // eslint-disable-next-line jest/no-disabled-tests it.skip('calls "i18n.__" for translation', () => { expect(i18n.__).toBeCalled() }) diff --git a/backend/src/emails/sendEmailTranslated.ts b/backend/src/emails/sendEmailTranslated.ts index f78ecf805..ae52b3975 100644 --- a/backend/src/emails/sendEmailTranslated.ts +++ b/backend/src/emails/sendEmailTranslated.ts @@ -1,5 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ import path from 'path' import Email from 'email-templates' diff --git a/backend/src/emails/sendEmailVariants.test.ts b/backend/src/emails/sendEmailVariants.test.ts index e48c42b01..5028e4dd4 100644 --- a/backend/src/emails/sendEmailVariants.test.ts +++ b/backend/src/emails/sendEmailVariants.test.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ import { Connection } from '@dbTools/typeorm' import { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' @@ -11,7 +7,6 @@ import { i18n as localization, logger } from '@test/testSetup' import { CONFIG } from '@/config' -// eslint-disable-next-line import/no-namespace import * as sendEmailTranslatedApi from './sendEmailTranslated' import { sendAccountActivationEmail, @@ -69,7 +64,6 @@ afterAll(async () => { const sendEmailTranslatedSpy = jest.spyOn(sendEmailTranslatedApi, 'sendEmailTranslated') describe('sendEmailVariants', () => { - // eslint-disable-next-line @typescript-eslint/no-explicit-any let result: any describe('sendAddedContributionMessageEmail', () => { diff --git a/backend/src/federation/authenticateCommunities.ts b/backend/src/federation/authenticateCommunities.ts index 56899d4b0..f2b140bbf 100644 --- a/backend/src/federation/authenticateCommunities.ts +++ b/backend/src/federation/authenticateCommunities.ts @@ -3,7 +3,7 @@ import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCom import { validate as validateUUID, version as versionUUID } from 'uuid' import { CONFIG } from '@/config' -// eslint-disable-next-line camelcase + import { AuthenticationClient as V1_0_AuthenticationClient } from '@/federation/client/1_0/AuthenticationClient' import { backendLogger as logger } from '@/server/logger' import { ensureUrlEndsWithSlash } from '@/util/utilities' @@ -35,7 +35,7 @@ export async function startCommunityAuthentication( ) { try { const client = AuthenticationClientFactory.getInstance(foreignFedCom) - // eslint-disable-next-line camelcase + if (client instanceof V1_0_AuthenticationClient) { const args = new OpenConnectionArgs() args.publicKey = homeCom.publicKey.toString('hex') diff --git a/backend/src/federation/client/1_0/SendCoinsClient.ts b/backend/src/federation/client/1_0/SendCoinsClient.ts index 2c3fcce4c..3d72d961b 100644 --- a/backend/src/federation/client/1_0/SendCoinsClient.ts +++ b/backend/src/federation/client/1_0/SendCoinsClient.ts @@ -132,7 +132,7 @@ export class SendCoinsClient { { args }, ) logger.debug(`X-Com: SendCoinsClient: after revertSettledSendCoins: data=`, data) - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access + if (!data?.revertSettledSendCoins) { logger.warn( 'X-Com: SendCoinsClient: revertSettledSendCoins without response data from endpoint', diff --git a/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts b/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts index 3151bbb31..af3f80758 100644 --- a/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts +++ b/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts @@ -7,7 +7,6 @@ export class PublicCommunityInfoLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { name: this.self.name, diff --git a/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts b/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts index 2df149133..34085da6a 100644 --- a/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts +++ b/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts @@ -7,7 +7,6 @@ export class SendCoinsArgsLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { recipientCommunityUuid: this.self.recipientCommunityUuid, diff --git a/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts b/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts index b605eb1db..a16336fa5 100644 --- a/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts +++ b/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts @@ -7,7 +7,6 @@ export class SendCoinsResultLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { vote: this.self.vote, diff --git a/backend/src/federation/client/1_0/model/GetPublicKeyResult.ts b/backend/src/federation/client/1_0/model/GetPublicKeyResult.ts index 696c96cfe..1582ad892 100644 --- a/backend/src/federation/client/1_0/model/GetPublicKeyResult.ts +++ b/backend/src/federation/client/1_0/model/GetPublicKeyResult.ts @@ -1,8 +1,6 @@ -// eslint-disable-next-line @typescript-eslint/no-unused-vars import { Field, ObjectType } from 'type-graphql' @ObjectType() -// eslint-disable-next-line @typescript-eslint/no-unused-vars export class GetPublicKeyResult { constructor(pubKey: string) { this.publicKey = pubKey diff --git a/backend/src/federation/client/1_1/AuthenticationClient.ts b/backend/src/federation/client/1_1/AuthenticationClient.ts index bbb4e8140..92e51b60a 100644 --- a/backend/src/federation/client/1_1/AuthenticationClient.ts +++ b/backend/src/federation/client/1_1/AuthenticationClient.ts @@ -1,5 +1,3 @@ -// eslint-disable-next-line camelcase import { AuthenticationClient as V1_0_AuthenticationClient } from '@/federation/client/1_0/AuthenticationClient' -// eslint-disable-next-line camelcase export class AuthenticationClient extends V1_0_AuthenticationClient {} diff --git a/backend/src/federation/client/1_1/FederationClient.ts b/backend/src/federation/client/1_1/FederationClient.ts index 2fdfedd92..178a44ae2 100644 --- a/backend/src/federation/client/1_1/FederationClient.ts +++ b/backend/src/federation/client/1_1/FederationClient.ts @@ -1,5 +1,3 @@ -// eslint-disable-next-line camelcase import { FederationClient as V1_0_FederationClient } from '@/federation/client/1_0/FederationClient' -// eslint-disable-next-line camelcase export class FederationClient extends V1_0_FederationClient {} diff --git a/backend/src/federation/client/1_1/SendCoinsClient.ts b/backend/src/federation/client/1_1/SendCoinsClient.ts index 586f8561e..cc804d0dc 100644 --- a/backend/src/federation/client/1_1/SendCoinsClient.ts +++ b/backend/src/federation/client/1_1/SendCoinsClient.ts @@ -1,5 +1,3 @@ -// eslint-disable-next-line camelcase import { SendCoinsClient as V1_0_SendCoinsClient } from '@/federation/client/1_0/SendCoinsClient' -// eslint-disable-next-line camelcase export class SendCoinsClient extends V1_0_SendCoinsClient {} diff --git a/backend/src/federation/client/AuthenticationClientFactory.ts b/backend/src/federation/client/AuthenticationClientFactory.ts index dc9229da6..27cd6a5c9 100644 --- a/backend/src/federation/client/AuthenticationClientFactory.ts +++ b/backend/src/federation/client/AuthenticationClientFactory.ts @@ -1,21 +1,18 @@ import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -// eslint-disable-next-line camelcase import { AuthenticationClient as V1_0_AuthenticationClient } from '@/federation/client/1_0/AuthenticationClient' -// eslint-disable-next-line camelcase + import { AuthenticationClient as V1_1_AuthenticationClient } from '@/federation/client/1_1/AuthenticationClient' import { ApiVersionType } from '@/federation/enum/apiVersionType' -// eslint-disable-next-line camelcase type AuthenticationClient = V1_0_AuthenticationClient | V1_1_AuthenticationClient interface AuthenticationClientInstance { id: number - // eslint-disable-next-line no-use-before-define + client: AuthenticationClient } -// eslint-disable-next-line @typescript-eslint/no-extraneous-class export class AuthenticationClientFactory { private static instanceArray: AuthenticationClientInstance[] = [] @@ -23,7 +20,7 @@ export class AuthenticationClientFactory { * The Singleton's constructor should always be private to prevent direct * construction calls with the `new` operator. */ - // eslint-disable-next-line no-useless-constructor, @typescript-eslint/no-empty-function + private constructor() {} private static createAuthenticationClient = (dbCom: DbFederatedCommunity) => { diff --git a/backend/src/federation/client/FederationClientFactory.ts b/backend/src/federation/client/FederationClientFactory.ts index 6010fa5eb..90808067b 100644 --- a/backend/src/federation/client/FederationClientFactory.ts +++ b/backend/src/federation/client/FederationClientFactory.ts @@ -1,22 +1,19 @@ import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -// eslint-disable-next-line camelcase import { FederationClient as V1_0_FederationClient } from '@/federation/client/1_0/FederationClient' -// eslint-disable-next-line camelcase + import { FederationClient as V1_1_FederationClient } from '@/federation/client/1_1/FederationClient' import { ApiVersionType } from '@/federation/enum/apiVersionType' import { ensureUrlEndsWithSlash } from '@/util/utilities' -// eslint-disable-next-line camelcase type FederationClient = V1_0_FederationClient | V1_1_FederationClient interface FederationClientInstance { id: number - // eslint-disable-next-line no-use-before-define + client: FederationClient } -// eslint-disable-next-line @typescript-eslint/no-extraneous-class export class FederationClientFactory { private static instanceArray: FederationClientInstance[] = [] @@ -24,7 +21,7 @@ export class FederationClientFactory { * The Singleton's constructor should always be private to prevent direct * construction calls with the `new` operator. */ - // eslint-disable-next-line no-useless-constructor, @typescript-eslint/no-empty-function + private constructor() {} private static createFederationClient = (dbCom: DbFederatedCommunity) => { diff --git a/backend/src/federation/client/SendCoinsClientFactory.ts b/backend/src/federation/client/SendCoinsClientFactory.ts index 2c7b90f01..5f432528f 100644 --- a/backend/src/federation/client/SendCoinsClientFactory.ts +++ b/backend/src/federation/client/SendCoinsClientFactory.ts @@ -1,21 +1,18 @@ import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -// eslint-disable-next-line camelcase import { SendCoinsClient as V1_0_SendCoinsClient } from '@/federation/client/1_0/SendCoinsClient' -// eslint-disable-next-line camelcase + import { SendCoinsClient as V1_1_SendCoinsClient } from '@/federation/client/1_1/SendCoinsClient' import { ApiVersionType } from '@/federation/enum/apiVersionType' -// eslint-disable-next-line camelcase type SendCoinsClient = V1_0_SendCoinsClient | V1_1_SendCoinsClient interface SendCoinsClientInstance { id: number - // eslint-disable-next-line no-use-before-define + client: SendCoinsClient } -// eslint-disable-next-line @typescript-eslint/no-extraneous-class export class SendCoinsClientFactory { private static instanceArray: SendCoinsClientInstance[] = [] @@ -23,7 +20,7 @@ export class SendCoinsClientFactory { * The Singleton's constructor should always be private to prevent direct * construction calls with the `new` operator. */ - // eslint-disable-next-line no-useless-constructor, @typescript-eslint/no-empty-function + private constructor() {} private static createSendCoinsClient = (dbCom: DbFederatedCommunity) => { diff --git a/backend/src/federation/validateCommunities.test.ts b/backend/src/federation/validateCommunities.test.ts index d7b26435f..6b4a54af4 100644 --- a/backend/src/federation/validateCommunities.test.ts +++ b/backend/src/federation/validateCommunities.test.ts @@ -1,10 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/unbound-method */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ - import { Connection } from '@dbTools/typeorm' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { ApolloServerTestClient } from 'apollo-server-testing' @@ -62,9 +55,8 @@ describe('validate Communities', () => { describe('with one Community of api 1_0 but missing pubKey response', () => { beforeEach(async () => { jest.clearAllMocks() - // eslint-disable-next-line @typescript-eslint/require-await + jest.spyOn(GraphQLClient.prototype, 'rawRequest').mockImplementation(async () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-return return { data: {} } as Response }) const variables1 = { @@ -78,7 +70,6 @@ describe('validate Communities', () => { .into(DbFederatedCommunity) .values(variables1) .orUpdate({ - // eslint-disable-next-line camelcase conflict_target: ['id', 'publicKey', 'apiVersion'], overwrite: ['end_point', 'last_announced_at'], }) @@ -101,9 +92,8 @@ describe('validate Communities', () => { describe('with one Community of api 1_0 and not matching pubKey', () => { beforeEach(async () => { jest.clearAllMocks() - // eslint-disable-next-line @typescript-eslint/require-await + jest.spyOn(GraphQLClient.prototype, 'rawRequest').mockImplementation(async () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-return return { data: { getPublicKey: { @@ -123,15 +113,14 @@ describe('validate Communities', () => { .into(DbFederatedCommunity) .values(variables1) .orUpdate({ - // eslint-disable-next-line camelcase conflict_target: ['id', 'publicKey', 'apiVersion'], overwrite: ['end_point', 'last_announced_at'], }) .execute() /* - // eslint-disable-next-line @typescript-eslint/require-await + jest.spyOn(GraphQLClient.prototype, 'rawRequest').mockImplementation(async () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-return + return { data: { getPublicCommunityInfo: { @@ -183,9 +172,8 @@ describe('validate Communities', () => { describe('with one Community of api 1_0 and matching pubKey', () => { beforeEach(async () => { jest.clearAllMocks() - // eslint-disable-next-line @typescript-eslint/require-await + jest.spyOn(GraphQLClient.prototype, 'rawRequest').mockImplementation(async () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-return return { data: { getPublicKey: { @@ -205,7 +193,6 @@ describe('validate Communities', () => { .into(DbFederatedCommunity) .values(variables1) .orUpdate({ - // eslint-disable-next-line camelcase conflict_target: ['id', 'publicKey', 'apiVersion'], overwrite: ['end_point', 'last_announced_at'], }) @@ -251,9 +238,8 @@ describe('validate Communities', () => { describe('with two Communities of api 1_0 and 1_1', () => { beforeEach(async () => { jest.clearAllMocks() - // eslint-disable-next-line @typescript-eslint/require-await + jest.spyOn(GraphQLClient.prototype, 'rawRequest').mockImplementation(async () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-return return { data: { getPublicKey: { @@ -273,7 +259,6 @@ describe('validate Communities', () => { .into(DbFederatedCommunity) .values(variables2) .orUpdate({ - // eslint-disable-next-line camelcase conflict_target: ['id', 'publicKey', 'apiVersion'], overwrite: ['end_point', 'last_announced_at'], }) @@ -303,9 +288,8 @@ describe('validate Communities', () => { let dbCom: DbFederatedCommunity beforeEach(async () => { jest.clearAllMocks() - // eslint-disable-next-line @typescript-eslint/require-await + jest.spyOn(GraphQLClient.prototype, 'rawRequest').mockImplementation(async () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-return return { data: { getPublicKey: { @@ -325,7 +309,6 @@ describe('validate Communities', () => { .into(DbFederatedCommunity) .values(variables3) .orUpdate({ - // eslint-disable-next-line camelcase conflict_target: ['id', 'publicKey', 'apiVersion'], overwrite: ['end_point', 'last_announced_at'], }) diff --git a/backend/src/federation/validateCommunities.ts b/backend/src/federation/validateCommunities.ts index b76e22087..90f697500 100644 --- a/backend/src/federation/validateCommunities.ts +++ b/backend/src/federation/validateCommunities.ts @@ -1,5 +1,3 @@ -/** eslint-disable @typescript-eslint/no-unsafe-assignment */ -/** eslint-disable @typescript-eslint/no-unsafe-call */ import { IsNull } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' @@ -27,8 +25,8 @@ export async function startValidateCommunities(timerInterval: number): Promise see https://javascript.info/settimeout-setinterval - setTimeout(function run() { - void validateCommunities() + setTimeout(async function run() { + await validateCommunities() setTimeout(run, timerInterval) }, timerInterval) } @@ -55,7 +53,7 @@ export async function validateCommunities(): Promise { } try { const client = FederationClientFactory.getInstance(dbCom) - // eslint-disable-next-line camelcase + if (client instanceof V1_0_FederationClient) { const pubKey = await client.getPublicKey() if (pubKey && pubKey === dbCom.publicKey.toString('hex')) { diff --git a/backend/src/graphql/arg/Paginated.ts b/backend/src/graphql/arg/Paginated.ts index ed39c046b..235c7c158 100644 --- a/backend/src/graphql/arg/Paginated.ts +++ b/backend/src/graphql/arg/Paginated.ts @@ -1,4 +1,3 @@ -/* eslint-disable type-graphql/invalid-nullable-input-type */ import { IsEnum, IsPositive } from 'class-validator' import { ArgsType, Field, InputType, Int } from 'type-graphql' diff --git a/backend/src/graphql/arg/TransactionLinkFilters.ts b/backend/src/graphql/arg/TransactionLinkFilters.ts index 831a30834..0c1ae350f 100644 --- a/backend/src/graphql/arg/TransactionLinkFilters.ts +++ b/backend/src/graphql/arg/TransactionLinkFilters.ts @@ -1,4 +1,3 @@ -/* eslint-disable type-graphql/invalid-nullable-input-type */ import { IsBoolean } from 'class-validator' import { Field, InputType } from 'type-graphql' diff --git a/backend/src/graphql/directive/isAuthorized.ts b/backend/src/graphql/directive/isAuthorized.ts index 0648339ed..8ed4f7443 100644 --- a/backend/src/graphql/directive/isAuthorized.ts +++ b/backend/src/graphql/directive/isAuthorized.ts @@ -21,8 +21,11 @@ export const isAuthorized: AuthChecker = async ({ context }, rights) => context.role = ROLE_UNAUTHORIZED // unauthorized user // is rights an inalienable right? - if ((rights as RIGHTS[]).reduce((acc, right) => acc && INALIENABLE_RIGHTS.includes(right), true)) + if ( + (rights as RIGHTS[]).reduce((acc, right) => acc && INALIENABLE_RIGHTS.includes(right), true) + ) { return true + } // Do we have a token? if (!context.token) { diff --git a/backend/src/graphql/model/GdtEntry.ts b/backend/src/graphql/model/GdtEntry.ts index 89068dd9d..1ef756cb6 100644 --- a/backend/src/graphql/model/GdtEntry.ts +++ b/backend/src/graphql/model/GdtEntry.ts @@ -1,5 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-explicit-any */ import { Field, Float, Int, ObjectType } from 'type-graphql' import { GdtEntryType } from '@enum/GdtEntryType' @@ -12,9 +10,9 @@ export class GdtEntry { date, email, comment, - // eslint-disable-next-line camelcase + coupon_code, - // eslint-disable-next-line camelcase + gdt_entry_type_id, factor, amount2, @@ -26,9 +24,9 @@ export class GdtEntry { this.date = date this.email = email this.comment = comment - // eslint-disable-next-line camelcase + this.couponCode = coupon_code - // eslint-disable-next-line camelcase + this.gdtEntryType = gdt_entry_type_id this.factor = factor this.amount2 = amount2 diff --git a/backend/src/graphql/resolver/BalanceResolver.ts b/backend/src/graphql/resolver/BalanceResolver.ts index 1d0d70151..fc55ed70d 100644 --- a/backend/src/graphql/resolver/BalanceResolver.ts +++ b/backend/src/graphql/resolver/BalanceResolver.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ import { IsNull } from '@dbTools/typeorm' import { Transaction as dbTransaction } from '@entity/Transaction' import { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' diff --git a/backend/src/graphql/resolver/CommunityResolver.test.ts b/backend/src/graphql/resolver/CommunityResolver.test.ts index 48227d94d..c8edbe0d9 100644 --- a/backend/src/graphql/resolver/CommunityResolver.test.ts +++ b/backend/src/graphql/resolver/CommunityResolver.test.ts @@ -1,10 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/unbound-method */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ - import { Connection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' @@ -31,9 +24,9 @@ import { getCommunityByUuid } from './util/communities' jest.mock('@/password/EncryptorUtils') // to do: We need a setup for the tests that closes the connection -let mutate: ApolloServerTestClient['mutate'], - query: ApolloServerTestClient['query'], - con: Connection +let mutate: ApolloServerTestClient['mutate'] +let query: ApolloServerTestClient['query'] +let con: Connection let testEnv: { mutate: ApolloServerTestClient['mutate'] diff --git a/backend/src/graphql/resolver/ContributionLinkResolver.test.ts b/backend/src/graphql/resolver/ContributionLinkResolver.test.ts index 5b4654303..36dd55ffd 100644 --- a/backend/src/graphql/resolver/ContributionLinkResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionLinkResolver.test.ts @@ -1,5 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ import { Connection } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { Event as DbEvent } from '@entity/Event' @@ -24,9 +22,9 @@ import { peterLustig } from '@/seeds/users/peter-lustig' jest.mock('@/password/EncryptorUtils') -let mutate: ApolloServerTestClient['mutate'], - query: ApolloServerTestClient['query'], - con: Connection +let mutate: ApolloServerTestClient['mutate'] +let query: ApolloServerTestClient['query'] +let con: Connection let testEnv: { mutate: ApolloServerTestClient['mutate'] query: ApolloServerTestClient['query'] diff --git a/backend/src/graphql/resolver/ContributionLinkResolver.ts b/backend/src/graphql/resolver/ContributionLinkResolver.ts index 80fc772a9..6165c30cd 100644 --- a/backend/src/graphql/resolver/ContributionLinkResolver.ts +++ b/backend/src/graphql/resolver/ContributionLinkResolver.ts @@ -47,8 +47,12 @@ export class ContributionLinkResolver { dbContributionLink.createdAt = new Date() dbContributionLink.code = contributionLinkCode(dbContributionLink.createdAt) dbContributionLink.cycle = cycle - if (validFrom) dbContributionLink.validFrom = new Date(validFrom) - if (validTo) dbContributionLink.validTo = new Date(validTo) + if (validFrom) { + dbContributionLink.validFrom = new Date(validFrom) + } + if (validTo) { + dbContributionLink.validTo = new Date(validTo) + } dbContributionLink.maxAmountPerMonth = maxAmountPerMonth dbContributionLink.maxPerCycle = maxPerCycle await dbContributionLink.save() @@ -116,8 +120,12 @@ export class ContributionLinkResolver { dbContributionLink.name = name dbContributionLink.memo = memo dbContributionLink.cycle = cycle - if (validFrom) dbContributionLink.validFrom = new Date(validFrom) - if (validTo) dbContributionLink.validTo = new Date(validTo) + if (validFrom) { + dbContributionLink.validFrom = new Date(validFrom) + } + if (validTo) { + dbContributionLink.validTo = new Date(validTo) + } dbContributionLink.maxAmountPerMonth = maxAmountPerMonth dbContributionLink.maxPerCycle = maxPerCycle await dbContributionLink.save() diff --git a/backend/src/graphql/resolver/ContributionMessageResolver.test.ts b/backend/src/graphql/resolver/ContributionMessageResolver.test.ts index d8ad101b7..5bcc8143a 100644 --- a/backend/src/graphql/resolver/ContributionMessageResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionMessageResolver.test.ts @@ -1,8 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-explicit-any */ import { Connection } from '@dbTools/typeorm' import { Contribution as DbContribution } from '@entity/Contribution' import { Event as DbEvent } from '@entity/Event' @@ -39,7 +34,8 @@ jest.mock('@/emails/sendEmailVariants', () => { } }) -let mutate: ApolloServerTestClient['mutate'], con: Connection +let mutate: ApolloServerTestClient['mutate'] +let con: Connection let testEnv: { mutate: ApolloServerTestClient['mutate'] query: ApolloServerTestClient['query'] diff --git a/backend/src/graphql/resolver/ContributionMessageResolver.ts b/backend/src/graphql/resolver/ContributionMessageResolver.ts index 26f7f3eb8..88cd73bc7 100644 --- a/backend/src/graphql/resolver/ContributionMessageResolver.ts +++ b/backend/src/graphql/resolver/ContributionMessageResolver.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ import { EntityManager, FindOptionsRelations, getConnection } from '@dbTools/typeorm' import { Contribution as DbContribution } from '@entity/Contribution' import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' @@ -175,9 +174,10 @@ export class ContributionMessageResolver { throw new LogError('ContributionMessage was not sent successfully') } const moderator = getUser(context) + if (messageType === ContributionMessageType.DIALOG) { // send email (never for moderator messages) - void sendAddedContributionMessageEmail({ + await sendAddedContributionMessageEmail({ firstName: finalContribution.user.firstName, lastName: finalContribution.user.lastName, email: finalContribution.user.emailContact.email, diff --git a/backend/src/graphql/resolver/ContributionResolver.test.ts b/backend/src/graphql/resolver/ContributionResolver.test.ts index c3847963c..ab409b4cc 100644 --- a/backend/src/graphql/resolver/ContributionResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionResolver.test.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-explicit-any */ import { Connection, Equal } from '@dbTools/typeorm' import { Contribution } from '@entity/Contribution' import { Event as DbEvent } from '@entity/Event' @@ -61,9 +58,9 @@ import { getFirstDayOfPreviousNMonth } from '@/util/utilities' jest.mock('@/emails/sendEmailVariants') jest.mock('@/password/EncryptorUtils') -let mutate: ApolloServerTestClient['mutate'], - query: ApolloServerTestClient['query'], - con: Connection +let mutate: ApolloServerTestClient['mutate'] +let query: ApolloServerTestClient['query'] +let con: Connection let testEnv: { mutate: ApolloServerTestClient['mutate'] query: ApolloServerTestClient['query'] @@ -99,7 +96,7 @@ describe('ContributionResolver', () => { admin = await userFactory(testEnv, peterLustig) await userFactory(testEnv, raeuberHotzenplotz) const bibisCreation = creations.find((creation) => creation.email === 'bibi@bloxberg.de') - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + bibiCreatedContribution = await creationFactory(testEnv, bibisCreation!) await mutate({ mutation: login, @@ -2281,7 +2278,6 @@ describe('ContributionResolver', () => { }) }) - // eslint-disable-next-line jest/no-disabled-tests describe.skip('creation update is successful changing month', () => { // skipped as changing the month is currently disable it('returns update creation object', async () => { diff --git a/backend/src/graphql/resolver/ContributionResolver.ts b/backend/src/graphql/resolver/ContributionResolver.ts index 8fb55acd8..a137b0d79 100644 --- a/backend/src/graphql/resolver/ContributionResolver.ts +++ b/backend/src/graphql/resolver/ContributionResolver.ts @@ -318,7 +318,7 @@ export class ContributionResolver { relations: ['emailContact'], }) - void sendContributionChangedByModeratorEmail({ + await sendContributionChangedByModeratorEmail({ firstName: user.firstName, lastName: user.lastName, email: user.emailContact.email, @@ -408,7 +408,7 @@ export class ContributionResolver { contribution, contribution.amount, ) - void sendContributionDeletedEmail({ + await sendContributionDeletedEmail({ firstName: user.firstName, lastName: user.lastName, email: user.emailContact.email, @@ -511,10 +511,10 @@ export class ContributionResolver { await queryRunner.commitTransaction() // trigger to send transaction via dlt-connector - void sendTransactionsToDltConnector() + await sendTransactionsToDltConnector() logger.info('creation commited successfuly.') - void sendContributionConfirmedEmail({ + await sendContributionConfirmedEmail({ firstName: user.firstName, lastName: user.lastName, email: user.emailContact.email, @@ -598,7 +598,7 @@ export class ContributionResolver { contributionToUpdate.amount, ) - void sendContributionDeniedEmail({ + await sendContributionDeniedEmail({ firstName: user.firstName, lastName: user.lastName, email: user.emailContact.email, diff --git a/backend/src/graphql/resolver/EmailOptinCodes.test.ts b/backend/src/graphql/resolver/EmailOptinCodes.test.ts index 124f371a1..99e1a3ea7 100644 --- a/backend/src/graphql/resolver/EmailOptinCodes.test.ts +++ b/backend/src/graphql/resolver/EmailOptinCodes.test.ts @@ -1,5 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ import { Connection } from '@dbTools/typeorm' import { User as DbUser } from '@entity/User' import { ApolloServerTestClient } from 'apollo-server-testing' @@ -12,9 +10,9 @@ import { writeHomeCommunityEntry } from '@/seeds/community' import { createUser, forgotPassword, setPassword } from '@/seeds/graphql/mutations' import { queryOptIn } from '@/seeds/graphql/queries' -let mutate: ApolloServerTestClient['mutate'], - query: ApolloServerTestClient['query'], - con: Connection +let mutate: ApolloServerTestClient['mutate'] +let query: ApolloServerTestClient['query'] +let con: Connection let testEnv: { mutate: ApolloServerTestClient['mutate'] query: ApolloServerTestClient['query'] diff --git a/backend/src/graphql/resolver/GdtResolver.ts b/backend/src/graphql/resolver/GdtResolver.ts index e26385c33..933fdb397 100644 --- a/backend/src/graphql/resolver/GdtResolver.ts +++ b/backend/src/graphql/resolver/GdtResolver.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { Arg, Args, Authorized, Ctx, Float, Int, Query, Resolver } from 'type-graphql' import { Paginated } from '@arg/Paginated' @@ -15,6 +11,8 @@ import { CONFIG } from '@/config' import { LogError } from '@/server/LogError' import { Context, getUser } from '@/server/context' +import { backendLogger as logger } from '@/server/logger' + @Resolver() export class GdtResolver { @Authorized([RIGHTS.LIST_GDT_ENTRIES]) @@ -25,20 +23,12 @@ export class GdtResolver { @Ctx() context: Context, ): Promise { if (!CONFIG.GDT_ACTIVE) { - return new GdtEntryList( - 'disabled', - 0, - // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-explicit-any - [], - 0, - 0, - ) + return new GdtEntryList('disabled', 0, [], 0, 0) } const userEntity = getUser(context) try { const resultGDT = await apiGet( - // eslint-disable-next-line @typescript-eslint/restrict-template-expressions `${CONFIG.GDT_API_URL}/GdtEntries/listPerEmailApi/${userEntity.emailContact.email}/${currentPage}/${pageSize}/${order}`, ) if (!resultGDT.success) { @@ -48,12 +38,12 @@ export class GdtResolver { return new GdtEntryList( state, count, - // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-explicit-any gdtEntries ? gdtEntries.map((data: any) => new GdtEntry(data)) : [], gdtSum, timeUsed, ) } catch (err) { + logger.error('GDT Server is not reachable', err) throw new LogError('GDT Server is not reachable') } } @@ -74,15 +64,13 @@ export class GdtResolver { } return Number(resultGDTSum.data.sum) || 0 } catch (err) { - // eslint-disable-next-line no-console - console.log('Could not query GDT Server') + logger.error('Could not query GDT Server', err) return null } } @Authorized([RIGHTS.EXIST_PID]) @Query(() => Int) - // eslint-disable-next-line @typescript-eslint/no-explicit-any async existPid(@Arg('pid', () => Int) pid: number): Promise { if (!CONFIG.GDT_ACTIVE) { return 0 diff --git a/backend/src/graphql/resolver/KlicktippResolver.test.ts b/backend/src/graphql/resolver/KlicktippResolver.test.ts index c8dd39507..505a8b513 100644 --- a/backend/src/graphql/resolver/KlicktippResolver.test.ts +++ b/backend/src/graphql/resolver/KlicktippResolver.test.ts @@ -1,8 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ import { Event as DbEvent } from '@entity/Event' import { UserContact } from '@entity/UserContact' import { GraphQLError } from 'graphql' @@ -17,7 +12,9 @@ import { bibiBloxberg } from '@/seeds/users/bibi-bloxberg' jest.mock('@/password/EncryptorUtils') -let testEnv: any, mutate: any, con: any +let testEnv: any +let mutate: any +let con: any beforeAll(async () => { testEnv = await testEnvironment(logger, localization) diff --git a/backend/src/graphql/resolver/StatisticsResolver.ts b/backend/src/graphql/resolver/StatisticsResolver.ts index a7f6555bf..9ff588aa4 100644 --- a/backend/src/graphql/resolver/StatisticsResolver.ts +++ b/backend/src/graphql/resolver/StatisticsResolver.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { getConnection } from '@dbTools/typeorm' import { Transaction as DbTransaction } from '@entity/Transaction' import { User as DbUser } from '@entity/User' @@ -12,8 +9,7 @@ import { CommunityStatistics, DynamicStatisticsFields } from '@model/CommunitySt import { RIGHTS } from '@/auth/RIGHTS' import { calculateDecay } from '@/util/decay' -/* eslint-disable-next-line @typescript-eslint/no-unused-vars */ -@Resolver((of) => CommunityStatistics) +@Resolver(() => CommunityStatistics) export class StatisticsResolver { @Authorized([RIGHTS.COMMUNITY_STATISTICS]) @Query(() => CommunityStatistics) diff --git a/backend/src/graphql/resolver/TransactionLinkResolver.test.ts b/backend/src/graphql/resolver/TransactionLinkResolver.test.ts index 30f3d0b6f..6f432ce61 100644 --- a/backend/src/graphql/resolver/TransactionLinkResolver.test.ts +++ b/backend/src/graphql/resolver/TransactionLinkResolver.test.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ import { Connection } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { Event as DbEvent } from '@entity/Event' @@ -44,9 +41,9 @@ jest.mock('@/password/EncryptorUtils') jest.mock('@/util/TRANSACTIONS_LOCK') TRANSACTIONS_LOCK.acquire = jest.fn().mockResolvedValue(jest.fn()) -let mutate: ApolloServerTestClient['mutate'], - query: ApolloServerTestClient['query'], - con: Connection +let mutate: ApolloServerTestClient['mutate'] +let query: ApolloServerTestClient['query'] +let con: Connection let testEnv: { mutate: ApolloServerTestClient['mutate'] query: ApolloServerTestClient['query'] @@ -890,7 +887,7 @@ describe('TransactionLinkResolver', () => { variables.pageSize = 25 // bibi needs GDDs const bibisCreation = creations.find((creation) => creation.email === 'bibi@bloxberg.de') - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + await creationFactory(testEnv, bibisCreation!) // bibis transaktion links const bibisTransaktionLinks = transactionLinks.filter( @@ -1066,7 +1063,7 @@ describe('TransactionLinkResolver', () => { }) // TODO: works not as expected, because 'redeemedAt' and 'redeemedBy' have to be added to the transaktion link factory - // eslint-disable-next-line jest/no-disabled-tests + describe.skip('filter by redeemed', () => { it('finds 6 open transaction links, 1 deleted, and no redeemed', async () => { await expect( @@ -1119,7 +1116,6 @@ describe('TransactionLinkResolver', () => { }) it('returns a string that ends with the hex value of date', () => { - // eslint-disable-next-line security/detect-non-literal-regexp const regexp = new RegExp(date.getTime().toString(16) + '$') expect(transactionLinkCode(date)).toEqual(expect.stringMatching(regexp)) }) diff --git a/backend/src/graphql/resolver/TransactionLinkResolver.ts b/backend/src/graphql/resolver/TransactionLinkResolver.ts index eaf690c24..bd6081bfe 100644 --- a/backend/src/graphql/resolver/TransactionLinkResolver.ts +++ b/backend/src/graphql/resolver/TransactionLinkResolver.ts @@ -311,7 +311,7 @@ export class TransactionLinkResolver { releaseLock() } // trigger to send transaction via dlt-connector - void sendTransactionsToDltConnector() + await sendTransactionsToDltConnector() return true } else { const now = new Date() @@ -387,9 +387,8 @@ export class TransactionLinkResolver { async listTransactionLinksAdmin( @Args() paginated: Paginated, - // eslint-disable-next-line type-graphql/wrong-decorator-signature @Arg('filters', () => TransactionLinkFilters, { nullable: true }) - filters: TransactionLinkFilters | null, // eslint-disable-line type-graphql/invalid-nullable-input-type + filters: TransactionLinkFilters, @Arg('userId', () => Int) userId: number, ): Promise { diff --git a/backend/src/graphql/resolver/TransactionResolver.test.ts b/backend/src/graphql/resolver/TransactionResolver.test.ts index 50a10455e..9b50c7925 100644 --- a/backend/src/graphql/resolver/TransactionResolver.test.ts +++ b/backend/src/graphql/resolver/TransactionResolver.test.ts @@ -1,9 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { Connection, In } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { DltTransaction } from '@entity/DltTransaction' @@ -39,9 +33,9 @@ import { stephenHawking } from '@/seeds/users/stephen-hawking' jest.mock('@/password/EncryptorUtils') -let mutate: ApolloServerTestClient['mutate'], con: Connection +let mutate: ApolloServerTestClient['mutate'] let query: ApolloServerTestClient['query'] - +let con: Connection let testEnv: { mutate: ApolloServerTestClient['mutate'] query: ApolloServerTestClient['query'] diff --git a/backend/src/graphql/resolver/TransactionResolver.ts b/backend/src/graphql/resolver/TransactionResolver.ts index 4bb625e07..a5c9c1d87 100644 --- a/backend/src/graphql/resolver/TransactionResolver.ts +++ b/backend/src/graphql/resolver/TransactionResolver.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ -/* eslint-disable new-cap */ -/* eslint-disable @typescript-eslint/no-non-null-assertion */ - import { In, IsNull, getConnection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { PendingTransaction as DbPendingTransaction } from '@entity/PendingTransaction' @@ -178,14 +174,14 @@ export const executeTransaction = async ( ) // trigger to send transaction via dlt-connector - void sendTransactionsToDltConnector() + await sendTransactionsToDltConnector() } catch (e) { await queryRunner.rollbackTransaction() throw new LogError('Transaction was not successful', e) } finally { await queryRunner.release() } - void sendTransactionReceivedEmail({ + await sendTransactionReceivedEmail({ firstName: recipient.firstName, lastName: recipient.lastName, email: recipient.emailContact.email, @@ -197,7 +193,7 @@ export const executeTransaction = async ( transactionAmount: amount, }) if (transactionLink) { - void sendTransactionLinkRedeemedEmail({ + await sendTransactionLinkRedeemedEmail({ firstName: sender.firstName, lastName: sender.lastName, email: sender.emailContact.email, diff --git a/backend/src/graphql/resolver/UserResolver.test.ts b/backend/src/graphql/resolver/UserResolver.test.ts index 9a94611a2..a9dfc2874 100644 --- a/backend/src/graphql/resolver/UserResolver.test.ts +++ b/backend/src/graphql/resolver/UserResolver.test.ts @@ -1,9 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { Connection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { Event as DbEvent } from '@entity/Event' @@ -101,9 +95,9 @@ CONFIG.EMAIL_CODE_REQUEST_TIME = 10 let admin: User let user: User -let mutate: ApolloServerTestClient['mutate'], - query: ApolloServerTestClient['query'], - con: Connection +let mutate: ApolloServerTestClient['mutate'] +let query: ApolloServerTestClient['query'] +let con: Connection let testEnv: { mutate: ApolloServerTestClient['mutate'] query: ApolloServerTestClient['query'] @@ -859,7 +853,6 @@ describe('UserResolver', () => { }) }) - // eslint-disable-next-line jest/no-disabled-tests describe.skip('user is in database but password is not set', () => { beforeAll(async () => { jest.clearAllMocks() diff --git a/backend/src/graphql/resolver/UserResolver.ts b/backend/src/graphql/resolver/UserResolver.ts index 8fe1eb4c4..f3e19dfb7 100644 --- a/backend/src/graphql/resolver/UserResolver.ts +++ b/backend/src/graphql/resolver/UserResolver.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ import { In, Point, getConnection } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { ProjectBranding } from '@entity/ProjectBranding' @@ -122,7 +118,6 @@ const newEmailContact = (email: string, userId: number): DbUserContact => { return emailContact } -// eslint-disable-next-line @typescript-eslint/ban-types export const activationLink = (verificationCode: string): string => { logger.debug(`activationLink(${verificationCode})...`) return CONFIG.EMAIL_LINK_SETPASSWORD + verificationCode.toString() @@ -251,7 +246,7 @@ export class UserResolver { if (projectBranding) { spaceId = projectBranding.spaceId } - void syncHumhub(null, dbUser, spaceId) + await syncHumhub(null, dbUser, spaceId) } } catch (e) { logger.error("couldn't reach out to humhub, disable for now", e) @@ -326,7 +321,7 @@ export class UserResolver { } logger.debug('partly faked user', user) - void sendAccountMultiRegistrationEmail({ + await sendAccountMultiRegistrationEmail({ firstName: foundUser.firstName, // this is the real name of the email owner, but just "firstName" would be the name of the new registrant which shall not be passed to the outside lastName: foundUser.lastName, // this is the real name of the email owner, but just "lastName" would be the name of the new registrant which shall not be passed to the outside email, @@ -421,7 +416,7 @@ export class UserResolver { }` projectBranding = projectBrandingPromise ? await projectBrandingPromise : undefined - void sendAccountActivationEmail({ + await sendAccountActivationEmail({ firstName, lastName, email, @@ -448,7 +443,7 @@ export class UserResolver { if (projectBranding) { spaceId = projectBranding.spaceId } - void syncHumhub(null, dbUser, spaceId) + await syncHumhub(null, dbUser, spaceId) } if (redeemCode) { @@ -507,7 +502,7 @@ export class UserResolver { logger.info('optInCode for', email, user.emailContact) - void sendResetPasswordEmail({ + await sendResetPasswordEmail({ firstName: user.firstName, lastName: user.lastName, email, @@ -794,6 +789,7 @@ export class UserResolver { if (!homeCom.gmsApiKey) { throw new LogError('authenticateGmsUserSearch missing HomeCommunity GmsApiKey') } + // TODO: NEVER pass user JWT token to another server - serious security risk! 😱⚠️ result = await authenticateGmsUserPlayground(homeCom.gmsApiKey, context.token, dbUser) logger.info('authenticateGmsUserSearch=', result) } else { @@ -1029,8 +1025,7 @@ export class UserResolver { user.emailContact.emailResendCount++ await user.emailContact.save() - // eslint-disable-next-line @typescript-eslint/no-unused-vars - void sendAccountActivationEmail({ + await sendAccountActivationEmail({ firstName: user.firstName, lastName: user.lastName, email, diff --git a/backend/src/graphql/resolver/semaphore.test.ts b/backend/src/graphql/resolver/semaphore.test.ts index 66b7e05cb..d12db9eb2 100644 --- a/backend/src/graphql/resolver/semaphore.test.ts +++ b/backend/src/graphql/resolver/semaphore.test.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ import { Connection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { ApolloServerTestClient } from 'apollo-server-testing' @@ -27,7 +24,8 @@ import { peterLustig } from '@/seeds/users/peter-lustig' jest.mock('@/password/EncryptorUtils') -let mutate: ApolloServerTestClient['mutate'], con: Connection +let mutate: ApolloServerTestClient['mutate'] +let con: Connection let testEnv: { mutate: ApolloServerTestClient['mutate'] query: ApolloServerTestClient['query'] diff --git a/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts b/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts index b3acc8ae0..d7f185619 100644 --- a/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts +++ b/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts @@ -7,7 +7,7 @@ import { backendLogger as logger } from '@/server/logger' import { ensureUrlEndsWithSlash } from '@/util/utilities' export async function authenticateGmsUserPlayground( - apiKey: string, + _apiKey: string, token: string, dbUser: DbUser, ): Promise { diff --git a/backend/src/graphql/resolver/util/creations.test.ts b/backend/src/graphql/resolver/util/creations.test.ts index 4b1cc00b6..0d538a75d 100644 --- a/backend/src/graphql/resolver/util/creations.test.ts +++ b/backend/src/graphql/resolver/util/creations.test.ts @@ -17,7 +17,8 @@ jest.mock('@/password/EncryptorUtils') CONFIG.HUMHUB_ACTIVE = false -let mutate: ApolloServerTestClient['mutate'], con: Connection +let mutate: ApolloServerTestClient['mutate'] +let con: Connection let testEnv: { mutate: ApolloServerTestClient['mutate'] query: ApolloServerTestClient['query'] diff --git a/backend/src/graphql/resolver/util/creations.ts b/backend/src/graphql/resolver/util/creations.ts index 6bb7214b1..694d3a867 100644 --- a/backend/src/graphql/resolver/util/creations.ts +++ b/backend/src/graphql/resolver/util/creations.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { getConnection } from '@dbTools/typeorm' import { Contribution } from '@entity/Contribution' import { Decimal } from 'decimal.js-light' @@ -30,12 +27,11 @@ export const validateContribution = ( throw new LogError('No information for available creations for the given date', creationDate) } - // eslint-disable-next-line security/detect-object-injection if (amount.greaterThan(creations[index].toString())) { throw new LogError( 'The amount to be created exceeds the amount still available for this month', amount, - // eslint-disable-next-line security/detect-object-injection + creations[index], ) } @@ -154,7 +150,7 @@ export const updateCreations = ( if (index < 0) { throw new LogError('You cannot create GDD for a month older than the last three months') } - // eslint-disable-next-line security/detect-object-injection + creations[index] = creations[index].plus(contribution.amount.toString()) return creations } @@ -173,7 +169,7 @@ export const getOpenCreations = async ( return { month: date.getMonth(), year: date.getFullYear(), - // eslint-disable-next-line security/detect-object-injection + amount: creations[index], } }) diff --git a/backend/src/graphql/resolver/util/findContributionMessages.ts b/backend/src/graphql/resolver/util/findContributionMessages.ts index 06b896898..460b62b38 100644 --- a/backend/src/graphql/resolver/util/findContributionMessages.ts +++ b/backend/src/graphql/resolver/util/findContributionMessages.ts @@ -19,7 +19,9 @@ export const findContributionMessages = async ( const messageTypes = [ContributionMessageType.DIALOG, ContributionMessageType.HISTORY] - if (showModeratorType) messageTypes.push(ContributionMessageType.MODERATOR) + if (showModeratorType) { + messageTypes.push(ContributionMessageType.MODERATOR) + } return DbContributionMessage.findAndCount({ where: { diff --git a/backend/src/graphql/resolver/util/findContributions.ts b/backend/src/graphql/resolver/util/findContributions.ts index 07cc5dc14..9611c64a3 100644 --- a/backend/src/graphql/resolver/util/findContributions.ts +++ b/backend/src/graphql/resolver/util/findContributions.ts @@ -1,4 +1,3 @@ -/* eslint-disable security/detect-object-injection */ import { Brackets, In, @@ -46,8 +45,12 @@ export const findContributions = async ( throw new LogError('Cannot connect to db') } const queryBuilder = connection.getRepository(DbContribution).createQueryBuilder('Contribution') - if (relations) joinRelationsRecursive(relations, queryBuilder, 'Contribution') - if (withDeleted) queryBuilder.withDeleted() + if (relations) { + joinRelationsRecursive(relations, queryBuilder, 'Contribution') + } + if (withDeleted) { + queryBuilder.withDeleted() + } queryBuilder.where({ ...(filter.statusFilter?.length && { contributionStatus: In(filter.statusFilter) }), ...(filter.userId && { userId: filter.userId }), diff --git a/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts b/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts index 1cdca8429..75892a201 100644 --- a/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts +++ b/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ import { Connection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { User as DbUser } from '@entity/User' @@ -44,9 +41,9 @@ describe('graphql/resolver/util/findUserByIdentifier', () => { beforeAll(async () => { homeCom = await writeHomeCommunityEntry() - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + communityUuid = homeCom.communityUuid! - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + communityName = homeCom.communityUuid! userBibi = await userFactory(testEnv, bibiBloxberg) diff --git a/backend/src/graphql/resolver/util/getKlicktippState.ts b/backend/src/graphql/resolver/util/getKlicktippState.ts index 728f565ff..e006ff20a 100644 --- a/backend/src/graphql/resolver/util/getKlicktippState.ts +++ b/backend/src/graphql/resolver/util/getKlicktippState.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-return */ import { KlickTipp } from '@model/KlickTipp' import { getKlickTippUser } from '@/apis/KlicktippController' @@ -6,10 +5,8 @@ import { klickTippLogger as logger } from '@/server/logger' export const getKlicktippState = async (email: string): Promise => { try { - // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment const klickTippUser = await getKlickTippUser(email) if (klickTippUser) { - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access return new KlickTipp(klickTippUser.status === 'Subscribed') } } catch (err) { diff --git a/backend/src/graphql/resolver/util/processXComSendCoins.ts b/backend/src/graphql/resolver/util/processXComSendCoins.ts index 6b84f3629..f0c779dbc 100644 --- a/backend/src/graphql/resolver/util/processXComSendCoins.ts +++ b/backend/src/graphql/resolver/util/processXComSendCoins.ts @@ -5,7 +5,7 @@ import { User as dbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { CONFIG } from '@/config' -// eslint-disable-next-line camelcase + import { SendCoinsClient as V1_0_SendCoinsClient } from '@/federation/client/1_0/SendCoinsClient' import { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' @@ -70,7 +70,7 @@ export async function processXComPendingSendCoins( }, }) const client = SendCoinsClientFactory.getInstance(receiverFCom) - // eslint-disable-next-line camelcase + if (client instanceof V1_0_SendCoinsClient) { const args = new SendCoinsArgs() if (receiverCom.communityUuid) { @@ -112,7 +112,9 @@ export async function processXComPendingSendCoins( pendingTx.previous = senderBalance ? senderBalance.lastTransactionId : null pendingTx.state = PendingTransactionState.NEW pendingTx.typeId = TransactionTypeId.SEND - if (senderCom.communityUuid) pendingTx.userCommunityUuid = senderCom.communityUuid + if (senderCom.communityUuid) { + pendingTx.userCommunityUuid = senderCom.communityUuid + } pendingTx.userId = sender.id pendingTx.userGradidoID = sender.gradidoID pendingTx.userName = fullName(sender.firstName, sender.lastName) @@ -191,12 +193,12 @@ export async function processXComCommittingSendCoins( const receiverFCom = await DbFederatedCommunity.findOneOrFail({ where: { publicKey: receiverCom.publicKey, - // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment + apiVersion: CONFIG.FEDERATION_BACKEND_SEND_ON_API, }, }) const client = SendCoinsClientFactory.getInstance(receiverFCom) - // eslint-disable-next-line camelcase + if (client instanceof V1_0_SendCoinsClient) { const args = new SendCoinsArgs() args.recipientCommunityUuid = pendingTx.linkedUserCommunityUuid diff --git a/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts b/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts index d5cf3b0bf..b212add4a 100644 --- a/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts +++ b/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts @@ -1,10 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/unbound-method */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ - import { Connection } from '@dbTools/typeorm' import { Community } from '@entity/Community' import { DltTransaction } from '@entity/DltTransaction' @@ -441,15 +434,15 @@ describe('create and send Transactions to DltConnector', () => { await creationFactory(testEnv, creation) count++ // we need only 3 for testing - if (count >= 3) break + if (count >= 3) { + break + } } await createHomeCommunity() CONFIG.DLT_CONNECTOR = true - // eslint-disable-next-line @typescript-eslint/require-await jest.spyOn(GraphQLClient.prototype, 'rawRequest').mockImplementation(async () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-return return { data: { sendTransaction: { succeed: true }, @@ -523,9 +516,7 @@ describe('create and send Transactions to DltConnector', () => { CONFIG.DLT_CONNECTOR = true - // eslint-disable-next-line @typescript-eslint/require-await jest.spyOn(GraphQLClient.prototype, 'rawRequest').mockImplementation(async () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-return return { data: { sendTransaction: { succeed: true }, @@ -599,9 +590,9 @@ describe('create and send Transactions to DltConnector', () => { /* describe('with one Community of api 1_0 and not matching pubKey', () => { beforeEach(async () => { - // eslint-disable-next-line @typescript-eslint/require-await + jest.spyOn(GraphQLClient.prototype, 'rawRequest').mockImplementation(async () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-return + return { data: { getPublicKey: { @@ -621,7 +612,7 @@ describe('create and send Transactions to DltConnector', () => { .into(DbFederatedCommunity) .values(variables1) .orUpdate({ - // eslint-disable-next-line camelcase + conflict_target: ['id', 'publicKey', 'apiVersion'], overwrite: ['end_point', 'last_announced_at'], }) @@ -650,9 +641,9 @@ describe('create and send Transactions to DltConnector', () => { }) describe('with one Community of api 1_0 and matching pubKey', () => { beforeEach(async () => { - // eslint-disable-next-line @typescript-eslint/require-await + jest.spyOn(GraphQLClient.prototype, 'rawRequest').mockImplementation(async () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-return + return { data: { getPublicKey: { @@ -672,7 +663,7 @@ describe('create and send Transactions to DltConnector', () => { .into(DbFederatedCommunity) .values(variables1) .orUpdate({ - // eslint-disable-next-line camelcase + conflict_target: ['id', 'publicKey', 'apiVersion'], overwrite: ['end_point', 'last_announced_at'], }) @@ -702,9 +693,9 @@ describe('create and send Transactions to DltConnector', () => { describe('with two Communities of api 1_0 and 1_1', () => { beforeEach(async () => { jest.clearAllMocks() - // eslint-disable-next-line @typescript-eslint/require-await + jest.spyOn(GraphQLClient.prototype, 'rawRequest').mockImplementation(async () => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-return + return { data: { getPublicKey: { @@ -724,7 +715,7 @@ describe('create and send Transactions to DltConnector', () => { .into(DbFederatedCommunity) .values(variables2) .orUpdate({ - // eslint-disable-next-line camelcase + conflict_target: ['id', 'publicKey', 'apiVersion'], overwrite: ['end_point', 'last_announced_at'], }) @@ -764,7 +755,7 @@ describe('create and send Transactions to DltConnector', () => { .into(DbFederatedCommunity) .values(variables3) .orUpdate({ - // eslint-disable-next-line camelcase + conflict_target: ['id', 'publicKey', 'apiVersion'], overwrite: ['end_point', 'last_announced_at'], }) diff --git a/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.ts b/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.ts index 733c12594..6880f977f 100644 --- a/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.ts +++ b/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.ts @@ -65,7 +65,7 @@ async function createDltTransactions(): Promise { .select('id') .addSelect('balance_date') .where('id NOT IN (' + dltqb.getSql() + ')') - // eslint-disable-next-line camelcase + .orderBy({ balance_date: 'ASC', id: 'ASC' }) .getRawMany() diff --git a/backend/src/graphql/resolver/util/sendUserToGms.ts b/backend/src/graphql/resolver/util/sendUserToGms.ts index 90351125f..4212a1890 100644 --- a/backend/src/graphql/resolver/util/sendUserToGms.ts +++ b/backend/src/graphql/resolver/util/sendUserToGms.ts @@ -20,14 +20,14 @@ export async function sendUserToGms( try { if (alwaysCreateUser === true || (!user.gmsRegistered && user.gmsRegisteredAt === null)) { logger.debug('create user in gms:', gmsUser) - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument + if (await createGmsUser(homeCom.gmsApiKey, gmsUser)) { logger.debug('GMS user published successfully:', gmsUser) await updateUserGmsStatus(user) } } else { logger.debug('update user in gms:', gmsUser) - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument + if (await updateGmsUser(homeCom.gmsApiKey, gmsUser)) { logger.debug('GMS user published successfully:', gmsUser) await updateUserGmsStatus(user) diff --git a/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts b/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts index e7f7d7262..7457d3f0d 100644 --- a/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts +++ b/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ -/* eslint-disable new-cap */ -/* eslint-disable @typescript-eslint/no-non-null-assertion */ - import { getConnection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { PendingTransaction as DbPendingTransaction } from '@entity/PendingTransaction' diff --git a/backend/src/graphql/resolver/util/syncHumhub.ts b/backend/src/graphql/resolver/util/syncHumhub.ts index 90500bbc5..6163855b9 100644 --- a/backend/src/graphql/resolver/util/syncHumhub.ts +++ b/backend/src/graphql/resolver/util/syncHumhub.ts @@ -55,7 +55,7 @@ export async function syncHumhub( externId: humhubUser?.id, // for preventing this warning https://github.com/eslint-community/eslint-plugin-security/blob/main/docs/rules/detect-object-injection.md // and possible danger coming with it - // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion + result: ExecutedHumhubAction[result as ExecutedHumhubAction], }) if (spaceId && humhubUser) { diff --git a/backend/src/graphql/resolver/util/transactionLinkSummary.ts b/backend/src/graphql/resolver/util/transactionLinkSummary.ts index 8f5f41f15..757279352 100644 --- a/backend/src/graphql/resolver/util/transactionLinkSummary.ts +++ b/backend/src/graphql/resolver/util/transactionLinkSummary.ts @@ -1,5 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { getConnection } from '@dbTools/typeorm' import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' import { Decimal } from 'decimal.js-light' diff --git a/backend/src/graphql/resolver/util/validateAlias.ts b/backend/src/graphql/resolver/util/validateAlias.ts index 721733be4..66d9e8595 100644 --- a/backend/src/graphql/resolver/util/validateAlias.ts +++ b/backend/src/graphql/resolver/util/validateAlias.ts @@ -3,7 +3,6 @@ import { User as DbUser } from '@entity/User' import { LogError } from '@/server/LogError' -// eslint-disable-next-line security/detect-unsafe-regex export const VALID_ALIAS_REGEX = /^(?=.{3,20}$)[a-zA-Z0-9]+(?:[_-][a-zA-Z0-9]+?)*$/ const RESERVED_ALIAS = [ @@ -25,11 +24,18 @@ const RESERVED_ALIAS = [ ] export const validateAlias = async (alias: string): Promise => { - if (alias.length < 3) throw new LogError('Given alias is too short', alias) - if (alias.length > 20) throw new LogError('Given alias is too long', alias) - if (!alias.match(VALID_ALIAS_REGEX)) throw new LogError('Invalid characters in alias', alias) - if (RESERVED_ALIAS.includes(alias.toLowerCase())) + if (alias.length < 3) { + throw new LogError('Given alias is too short', alias) + } + if (alias.length > 20) { + throw new LogError('Given alias is too long', alias) + } + if (!alias.match(VALID_ALIAS_REGEX)) { + throw new LogError('Invalid characters in alias', alias) + } + if (RESERVED_ALIAS.includes(alias.toLowerCase())) { throw new LogError('Alias is not allowed', alias) + } const aliasInUse = await DbUser.find({ where: { alias: Raw((a) => `LOWER(${a}) = "${alias.toLowerCase()}"`) }, }) diff --git a/backend/src/graphql/scalar/Decimal.ts b/backend/src/graphql/scalar/Decimal.ts index 96804bdfa..f539685f9 100644 --- a/backend/src/graphql/scalar/Decimal.ts +++ b/backend/src/graphql/scalar/Decimal.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { Decimal } from 'decimal.js-light' import { GraphQLScalarType, Kind } from 'graphql' diff --git a/backend/src/graphql/scalar/Location.ts b/backend/src/graphql/scalar/Location.ts index 8b475d7f6..cd171c8e7 100644 --- a/backend/src/graphql/scalar/Location.ts +++ b/backend/src/graphql/scalar/Location.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { GraphQLScalarType, Kind } from 'graphql' import { Location } from '@model/Location' @@ -17,9 +16,9 @@ export const LocationScalar = new GraphQLScalarType({ parseValue(value): Location { try { const loc = new Location() - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-assignment + loc.longitude = value.longitude - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-assignment + loc.latitude = value.latitude return loc } catch (err) { diff --git a/backend/src/graphql/validator/ContributionStatusArray.ts b/backend/src/graphql/validator/ContributionStatusArray.ts index 82a5564de..dd7c93277 100644 --- a/backend/src/graphql/validator/ContributionStatusArray.ts +++ b/backend/src/graphql/validator/ContributionStatusArray.ts @@ -3,7 +3,6 @@ import { ValidationOptions, registerDecorator } from 'class-validator' import { ContributionStatus } from '@enum/ContributionStatus' export function isContributionStatusArray(validationOptions?: ValidationOptions) { - // eslint-disable-next-line @typescript-eslint/ban-types return function (object: Object, propertyName: string) { registerDecorator({ name: 'isContributionStatusArray', diff --git a/backend/src/graphql/validator/DateString.ts b/backend/src/graphql/validator/DateString.ts index dd2383f39..3502b8c84 100644 --- a/backend/src/graphql/validator/DateString.ts +++ b/backend/src/graphql/validator/DateString.ts @@ -1,7 +1,6 @@ import { ValidationArguments, ValidationOptions, registerDecorator } from 'class-validator' export function isValidDateString(validationOptions?: ValidationOptions) { - // eslint-disable-next-line @typescript-eslint/ban-types return function (object: Object, propertyName: string) { registerDecorator({ name: 'isValidDateString', diff --git a/backend/src/graphql/validator/Decimal.ts b/backend/src/graphql/validator/Decimal.ts index d0a90d71e..0300c6d9c 100644 --- a/backend/src/graphql/validator/Decimal.ts +++ b/backend/src/graphql/validator/Decimal.ts @@ -2,7 +2,6 @@ import { ValidationArguments, ValidationOptions, registerDecorator } from 'class import { Decimal } from 'decimal.js-light' export function IsPositiveDecimal(validationOptions?: ValidationOptions) { - // eslint-disable-next-line @typescript-eslint/ban-types return function (object: Object, propertyName: string) { registerDecorator({ name: 'isPositiveDecimal', diff --git a/backend/src/graphql/validator/Location.ts b/backend/src/graphql/validator/Location.ts index 93f1c64e9..0bbf9fb92 100644 --- a/backend/src/graphql/validator/Location.ts +++ b/backend/src/graphql/validator/Location.ts @@ -5,7 +5,6 @@ import { Location } from '@model/Location' import { Location2Point } from '@/graphql/resolver/util/Location2Point' export function isValidLocation(validationOptions?: ValidationOptions) { - // eslint-disable-next-line @typescript-eslint/ban-types return function (object: Object, propertyName: string) { registerDecorator({ name: 'isValidLocation', diff --git a/backend/src/index.ts b/backend/src/index.ts index 86f78326d..9b1b72ba5 100644 --- a/backend/src/index.ts +++ b/backend/src/index.ts @@ -6,18 +6,18 @@ async function main() { const { app } = await createServer() app.listen(CONFIG.PORT, () => { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no need for logging the start message console.log(`Server is running at http://localhost:${CONFIG.PORT}`) if (CONFIG.GRAPHIQL) { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no need for logging the start message console.log(`GraphIQL available at http://localhost:${CONFIG.PORT}`) } }) - void startValidateCommunities(Number(CONFIG.FEDERATION_VALIDATE_COMMUNITY_TIMER)) + await startValidateCommunities(Number(CONFIG.FEDERATION_VALIDATE_COMMUNITY_TIMER)) } main().catch((e) => { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: maybe logger isn't initialized here console.error(e) throw e }) diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts index 96f1cf767..f958693c8 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts @@ -61,8 +61,7 @@ export class UnconfirmedContributionAdminRole extends AbstractUnconfirmedContrib } } - // eslint-disable-next-line @typescript-eslint/no-unused-vars - protected checkAuthorization(user: User, role: Role): AbstractUnconfirmedContributionRole { + protected checkAuthorization(_user: User, role: Role): AbstractUnconfirmedContributionRole { if ( !role.hasRight(RIGHTS.MODERATOR_UPDATE_CONTRIBUTION_MEMO) && this.self.moderatorId === null diff --git a/backend/src/logging/BalanceLogging.view.ts b/backend/src/logging/BalanceLogging.view.ts index 0fa73baf1..b4135bbf9 100644 --- a/backend/src/logging/BalanceLogging.view.ts +++ b/backend/src/logging/BalanceLogging.view.ts @@ -7,7 +7,6 @@ export class BalanceLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { balance: this.decimalToString(this.self.balance), diff --git a/backend/src/logging/DecayLogging.view.ts b/backend/src/logging/DecayLogging.view.ts index 44fd392f9..92cc836aa 100644 --- a/backend/src/logging/DecayLogging.view.ts +++ b/backend/src/logging/DecayLogging.view.ts @@ -7,7 +7,6 @@ export class DecayLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { balance: this.decimalToString(this.self.balance), diff --git a/backend/src/password/EncryptorUtils.ts b/backend/src/password/EncryptorUtils.ts index f4dc00b6c..25ee852bc 100644 --- a/backend/src/password/EncryptorUtils.ts +++ b/backend/src/password/EncryptorUtils.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { cpus } from 'os' import path from 'path' diff --git a/backend/src/password/__mocks__/EncryptorUtils.ts b/backend/src/password/__mocks__/EncryptorUtils.ts index 630910a40..6f8ea8f7d 100644 --- a/backend/src/password/__mocks__/EncryptorUtils.ts +++ b/backend/src/password/__mocks__/EncryptorUtils.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { User } from '@entity/User' import { PasswordEncryptionType } from '@enum/PasswordEncryptionType' diff --git a/backend/src/seeds/community/index.ts b/backend/src/seeds/community/index.ts index 84542e002..e8af6c646 100644 --- a/backend/src/seeds/community/index.ts +++ b/backend/src/seeds/community/index.ts @@ -29,7 +29,7 @@ export async function writeHomeCommunityEntry(): Promise { await DbCommunity.insert(homeCom) } return homeCom - } catch (err) { + } catch (_err) { throw new Error(`Seeding: Error writing HomeCommunity-Entry`) // : ${err}`) } } diff --git a/backend/src/seeds/factory/contributionLink.ts b/backend/src/seeds/factory/contributionLink.ts index ce8dcb345..4e8c945f3 100644 --- a/backend/src/seeds/factory/contributionLink.ts +++ b/backend/src/seeds/factory/contributionLink.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/unbound-method */ import { ApolloServerTestClient } from 'apollo-server-testing' import { ContributionLink } from '@model/ContributionLink' @@ -15,8 +12,7 @@ export const contributionLinkFactory = async ( const { mutate } = client // login as admin - // eslint-disable-next-line @typescript-eslint/no-unused-vars - const user = await mutate({ + await mutate({ mutation: login, variables: { email: 'peter@lustig.de', password: 'Aa12345_' }, }) diff --git a/backend/src/seeds/factory/creation.ts b/backend/src/seeds/factory/creation.ts index 9ae861556..4fce38206 100644 --- a/backend/src/seeds/factory/creation.ts +++ b/backend/src/seeds/factory/creation.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/unbound-method */ import { Contribution } from '@entity/Contribution' import { Transaction } from '@entity/Transaction' import { ApolloServerTestClient } from 'apollo-server-testing' diff --git a/backend/src/seeds/factory/transactionLink.ts b/backend/src/seeds/factory/transactionLink.ts index e115ae1c4..098100622 100644 --- a/backend/src/seeds/factory/transactionLink.ts +++ b/backend/src/seeds/factory/transactionLink.ts @@ -1,5 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/unbound-method */ import { TransactionLink } from '@entity/TransactionLink' import { ApolloServerTestClient } from 'apollo-server-testing' diff --git a/backend/src/seeds/factory/user.ts b/backend/src/seeds/factory/user.ts index 067a6476f..1eab302c0 100644 --- a/backend/src/seeds/factory/user.ts +++ b/backend/src/seeds/factory/user.ts @@ -1,5 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/unbound-method */ import { User } from '@entity/User' import { ApolloServerTestClient } from 'apollo-server-testing' @@ -19,9 +17,8 @@ export const userFactory = async ( const homeCom = await writeHomeCommunityEntry() const response = await mutate({ mutation: createUser, variables: user }) - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access if (!response?.data?.createUser) { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: will be used in tests where logging is mocked console.log(response) throw new Error('createUser mutation returned unexpected response') } @@ -63,7 +60,7 @@ export const userFactory = async ( dbUser.communityUuid = homeCom.communityUuid await User.save(dbUser) } - } catch (err) { + } catch (_err) { // no homeCommunity exists } diff --git a/backend/src/seeds/index.ts b/backend/src/seeds/index.ts index add165a56..123637d03 100644 --- a/backend/src/seeds/index.ts +++ b/backend/src/seeds/index.ts @@ -1,9 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ - import { entities } from '@entity/index' import { createTestClient } from 'apollo-server-testing' import { datatype, internet, name } from 'faker' @@ -30,8 +24,10 @@ const context = { push: (value: { key: string; value: string }): void => { context.token = value.value }, - // eslint-disable-next-line @typescript-eslint/no-empty-function - forEach: (): void => {}, + + forEach: (): void => { + // do nothing + }, }, clientTimezoneOffset: 0, } @@ -100,4 +96,7 @@ const run = async () => { await con.close() } -void run() +run().catch((err) => { + // biome-ignore lint/suspicious/noConsole: no logger present + console.error('error on seeding', err) +}) diff --git a/backend/src/server/LogError.test.ts b/backend/src/server/LogError.test.ts index 115567a8b..88c342709 100644 --- a/backend/src/server/LogError.test.ts +++ b/backend/src/server/LogError.test.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ import { logger } from '@test/testSetup' import { LogError } from './LogError' diff --git a/backend/src/server/LogError.ts b/backend/src/server/LogError.ts index 0862b9809..346923019 100644 --- a/backend/src/server/LogError.ts +++ b/backend/src/server/LogError.ts @@ -1,8 +1,6 @@ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { backendLogger as logger } from './logger' export class LogError extends Error { - // eslint-disable-next-line @typescript-eslint/no-explicit-any constructor(msg: string, ...details: any[]) { super(msg) logger.error(msg, ...details) diff --git a/backend/src/server/context.ts b/backend/src/server/context.ts index a6038271c..1dc07660d 100644 --- a/backend/src/server/context.ts +++ b/backend/src/server/context.ts @@ -39,7 +39,9 @@ export const context = (args: ExpressContext): Context => { } export const getUser = (context: Context): dbUser => { - if (context.user) return context.user + if (context.user) { + return context.user + } throw new LogError('No user given in context') } diff --git a/backend/src/server/createServer.ts b/backend/src/server/createServer.ts index d58b6896b..695e0d585 100644 --- a/backend/src/server/createServer.ts +++ b/backend/src/server/createServer.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ -/* eslint-disable @typescript-eslint/unbound-method */ import { Connection as DbConnection } from '@dbTools/typeorm' import { ApolloServer } from 'apollo-server-express' import express, { Express, json, urlencoded } from 'express' @@ -31,7 +28,6 @@ interface ServerDef { } export const createServer = async ( - // eslint-disable-next-line @typescript-eslint/no-explicit-any context: any = serverContext, logger: Logger = apolloLogger, localization: i18n.I18n = i18n, @@ -60,7 +56,7 @@ export const createServer = async ( app.use(cors) // Helmet helps secure Express apps by setting HTTP response headers. - // eslint-disable-next-line @typescript-eslint/no-unsafe-call + app.use(helmet()) // rate limiter/ slow down to many requests @@ -92,11 +88,11 @@ export const createServer = async ( app.use(localization.init) // Elopage Webhook - // eslint-disable-next-line @typescript-eslint/no-misused-promises + app.post('/hook/elopage/' + CONFIG.WEBHOOK_ELOPAGE_SECRET, elopageWebhook) // GMS Webhook - // eslint-disable-next-line @typescript-eslint/no-misused-promises + app.get('/hook/gms/' + CONFIG.GMS_WEBHOOK_SECRET, gmsWebhook) // Apollo Server diff --git a/backend/src/server/logger.ts b/backend/src/server/logger.ts index 0f146b7f7..24ae79c67 100644 --- a/backend/src/server/logger.ts +++ b/backend/src/server/logger.ts @@ -1,13 +1,9 @@ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { readFileSync } from 'fs' import { configure, getLogger } from 'log4js' import { CONFIG } from '@/config' -// eslint-disable-next-line security/detect-non-literal-fs-filename const options = JSON.parse(readFileSync(CONFIG.LOG4JS_CONFIG, 'utf-8')) options.categories.backend.level = CONFIG.LOG_LEVEL @@ -18,7 +14,8 @@ configure(options) const apolloLogger = getLogger('apollo') const backendLogger = getLogger('backend') const klickTippLogger = getLogger('klicktipp') +const gmsLogger = getLogger('gms') backendLogger.addContext('user', 'unknown') -export { apolloLogger, backendLogger, klickTippLogger } +export { apolloLogger, backendLogger, klickTippLogger, gmsLogger } diff --git a/backend/src/server/plugins.ts b/backend/src/server/plugins.ts index c4ffa4f3f..1c8e73390 100644 --- a/backend/src/server/plugins.ts +++ b/backend/src/server/plugins.ts @@ -1,10 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ import clonedeep from 'lodash.clonedeep' const setHeadersPlugin = { @@ -27,8 +20,12 @@ const setHeadersPlugin = { const filterVariables = (variables: any) => { const vars = clonedeep(variables) - if (vars?.password) vars.password = '***' - if (vars?.passwordNew) vars.passwordNew = '***' + if (vars?.password) { + vars.password = '***' + } + if (vars?.passwordNew) { + vars.passwordNew = '***' + } return vars } @@ -44,15 +41,18 @@ ${mutation || query}variables: ${JSON.stringify(filterVariables(variables), null return { willSendResponse(requestContext: any) { if (operationName !== 'IntrospectionQuery') { - if (requestContext.context.user) logger.info(`User ID: ${requestContext.context.user.id}`) + if (requestContext.context.user) { + logger.info(`User ID: ${requestContext.context.user.id}`) + } if (requestContext.response.data) { logger.info('Response Success!') logger.trace(`Response-Data: ${JSON.stringify(requestContext.response.data, null, 2)}`) } - if (requestContext.response.errors) + if (requestContext.response.errors) { logger.error(`Response-Errors: ${JSON.stringify(requestContext.response.errors, null, 2)}`) + } } return requestContext }, @@ -61,5 +61,4 @@ ${JSON.stringify(requestContext.response.errors, null, 2)}`) } export const plugins = - // eslint-disable-next-line n/no-process-env process.env.NODE_ENV === 'development' ? [setHeadersPlugin] : [setHeadersPlugin, logPlugin] diff --git a/backend/src/typeorm/connection.ts b/backend/src/typeorm/connection.ts index 41cfbd333..f9b6744e8 100644 --- a/backend/src/typeorm/connection.ts +++ b/backend/src/typeorm/connection.ts @@ -5,7 +5,6 @@ import { entities } from '@entity/index' import { CONFIG } from '@/config' -// eslint-disable-next-line @typescript-eslint/no-extraneous-class export class Connection { private static instance: DbConnection @@ -13,7 +12,6 @@ export class Connection { * The Singleton's constructor should always be private to prevent direct * construction calls with the `new` operator. */ - // eslint-disable-next-line no-useless-constructor, @typescript-eslint/no-empty-function private constructor() {} /** @@ -48,7 +46,7 @@ export class Connection { }) return Connection.instance } catch (error) { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: maybe logger isn't initialized yet console.log(error) return null } diff --git a/backend/src/util/Monitor.ts b/backend/src/util/Monitor.ts index 3489eff4d..f592a343d 100644 --- a/backend/src/util/Monitor.ts +++ b/backend/src/util/Monitor.ts @@ -16,7 +16,6 @@ registerEnumType(MonitorNames, { export class Monitor { private static locks = new Map() - // eslint-disable-next-line no-useless-constructor, @typescript-eslint/no-empty-function private constructor() {} private _dummy = `to avoid unexpected class with only static properties` diff --git a/backend/src/util/calculateSenderBalance.ts b/backend/src/util/calculateSenderBalance.ts index 89e417d35..d2973c982 100644 --- a/backend/src/util/calculateSenderBalance.ts +++ b/backend/src/util/calculateSenderBalance.ts @@ -12,7 +12,9 @@ export async function calculateSenderBalance( time: Date, ): Promise<{ balance: Decimal; decay: Decay; lastTransactionId: number } | null> { const lastTransaction = await getLastTransaction(userId) - if (!lastTransaction) return null + if (!lastTransaction) { + return null + } const decay = calculateDecay(lastTransaction.balance, lastTransaction.balanceDate, time) diff --git a/backend/src/util/communityUser.ts b/backend/src/util/communityUser.ts index 94b1eda1e..4ac17eb0d 100644 --- a/backend/src/util/communityUser.ts +++ b/backend/src/util/communityUser.ts @@ -1,5 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unused-vars */ - import { RemoveOptions, SaveOptions } from '@dbTools/typeorm' import { User as dbUser } from '@entity/User' import { UserContact } from '@entity/UserContact' diff --git a/backend/src/util/decay.test.ts b/backend/src/util/decay.test.ts index fdb3fc563..f419982ac 100644 --- a/backend/src/util/decay.test.ts +++ b/backend/src/util/decay.test.ts @@ -16,7 +16,7 @@ describe('utils/decay', () => { expect(decayFormula(amount, seconds).toString()).toBe('1.000000021964959992727444') }) // we get pretty close, but not exact here, skipping - // eslint-disable-next-line jest/no-disabled-tests + it.skip('has correct forward calculation', () => { const amount = new Decimal(1.0).div( new Decimal('0.99999997803504048973201202316767079413460520837376'), diff --git a/backend/src/util/executeKlicktipp.ts b/backend/src/util/executeKlicktipp.ts index 74b453307..ade1c3470 100644 --- a/backend/src/util/executeKlicktipp.ts +++ b/backend/src/util/executeKlicktipp.ts @@ -13,4 +13,8 @@ async function executeKlicktipp(): Promise { } } -void executeKlicktipp() +executeKlicktipp().catch((e) => { + // biome-ignore lint/suspicious/noConsole: logger isn't used here + console.error(e) + process.exit(1) +}) diff --git a/backend/src/util/klicktipp.test.ts b/backend/src/util/klicktipp.test.ts index 18a0d0e0d..d53dd3ff0 100644 --- a/backend/src/util/klicktipp.test.ts +++ b/backend/src/util/klicktipp.test.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-return */ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ import { Connection } from '@dbTools/typeorm' import { Event as DbEvent } from '@entity/Event' import { ApolloServerTestClient } from 'apollo-server-testing' @@ -21,7 +17,8 @@ import { exportEventDataToKlickTipp } from './klicktipp' jest.mock('@/apis/KlicktippController') jest.mock('@/password/EncryptorUtils') -let mutate: ApolloServerTestClient['mutate'], con: Connection +let mutate: ApolloServerTestClient['mutate'] +let con: Connection let testEnv: { mutate: ApolloServerTestClient['mutate'] query: ApolloServerTestClient['query'] @@ -45,7 +42,6 @@ describe('klicktipp', () => { await userFactory(testEnv, bibiBloxberg) await userFactory(testEnv, peterLustig) const bibisCreation = creations.find((creation) => creation.email === 'bibi@bloxberg.de') - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion await creationFactory(testEnv, bibisCreation!) await mutate({ mutation: login, diff --git a/backend/src/util/klicktipp.ts b/backend/src/util/klicktipp.ts index 6936ed10e..cc5c2569a 100644 --- a/backend/src/util/klicktipp.ts +++ b/backend/src/util/klicktipp.ts @@ -1,4 +1,3 @@ -// eslint-disable @typescript-eslint/no-explicit-any import { User } from '@entity/User' import { addFieldsToSubscriber, getKlickTippUser } from '@/apis/KlicktippController' @@ -7,18 +6,14 @@ import { lastDateTimeEvents } from '@/graphql/resolver/util/eventList' export async function retrieveNotRegisteredEmails(): Promise { const users = await User.find({ relations: ['emailContact'] }) - const notRegisteredUser = [] + const notRegisteredUser: string[] = [] for (const user of users) { try { await getKlickTippUser(user.emailContact.email) - } catch (err) { + } catch (_err) { notRegisteredUser.push(user.emailContact.email) - // eslint-disable-next-line no-console - console.log(`${user.emailContact.email}`) } } - // eslint-disable-next-line no-console - console.log('User die nicht bei KlickTipp vorhanden sind: ', notRegisteredUser) return notRegisteredUser } diff --git a/backend/src/util/time.ts b/backend/src/util/time.ts index 538735766..0acaf2501 100644 --- a/backend/src/util/time.ts +++ b/backend/src/util/time.ts @@ -16,6 +16,8 @@ export const getTimeDurationObject = ( export const printTimeDuration = (duration: number): string => { const time = getTimeDurationObject(duration) const result = time.minutes > 0 ? `${time.minutes} minutes` : '' - if (time.hours) return `${time.hours} hours` + (result !== '' ? ` and ${result}` : '') + if (time.hours) { + return `${time.hours} hours` + (result !== '' ? ` and ${result}` : '') + } return result } diff --git a/backend/src/util/utilities.ts b/backend/src/util/utilities.ts index 4f45af023..0e8a8da85 100644 --- a/backend/src/util/utilities.ts +++ b/backend/src/util/utilities.ts @@ -4,7 +4,6 @@ import { Decimal } from 'decimal.js-light' import i18n from 'i18n' export const objectValuesToArray = (obj: Record): string[] => - // eslint-disable-next-line security/detect-object-injection Object.keys(obj).map((key) => obj[key]) export const decimalSeparatorByLanguage = (a: Decimal, language: string): string => { @@ -19,13 +18,13 @@ export const fullName = (firstName: string, lastName: string): string => [firstName, lastName].filter(Boolean).join(' ') // Function to reset an interface by chatGPT -// eslint-disable-next-line @typescript-eslint/no-explicit-any + export function resetInterface>(obj: T): T { // Iterate over all properties of the object for (const key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { // Set all optional properties to undefined - // eslint-disable-next-line security/detect-object-injection + obj[key] = undefined as T[Extract] } } diff --git a/backend/src/util/validate.ts b/backend/src/util/validate.ts index ab0c8a12a..6ea1c1f7b 100644 --- a/backend/src/util/validate.ts +++ b/backend/src/util/validate.ts @@ -32,7 +32,9 @@ async function calculateBalance( transactionLink?: dbTransactionLink | null, ): Promise<{ balance: Decimal; decay: Decay; lastTransactionId: number } | null> { const lastTransaction = await getLastTransaction(userId) - if (!lastTransaction) return null + if (!lastTransaction) { + return null + } const decay = calculateDecay(lastTransaction.balance, lastTransaction.balanceDate, time) diff --git a/backend/src/util/virtualTransactions.ts b/backend/src/util/virtualTransactions.ts index c50134d12..8be04b34d 100644 --- a/backend/src/util/virtualTransactions.ts +++ b/backend/src/util/virtualTransactions.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unused-vars */ import { RemoveOptions, SaveOptions } from '@dbTools/typeorm' import { Transaction as dbTransaction } from '@entity/Transaction' import { Decimal } from 'decimal.js-light' @@ -13,16 +12,16 @@ const defaultModelFunctions = { hasId: function (): boolean { throw new Error('Function not implemented.') }, - save: function (options?: SaveOptions): Promise { + save: function (_options?: SaveOptions): Promise { throw new Error('Function not implemented.') }, - remove: function (options?: RemoveOptions): Promise { + remove: function (_options?: RemoveOptions): Promise { throw new Error('Function not implemented.') }, - softRemove: function (options?: SaveOptions): Promise { + softRemove: function (_options?: SaveOptions): Promise { throw new Error('Function not implemented.') }, - recover: function (options?: SaveOptions): Promise { + recover: function (_options?: SaveOptions): Promise { throw new Error('Function not implemented.') }, reload: function (): Promise { @@ -33,12 +32,12 @@ const defaultModelFunctions = { const virtualLinkTransaction = ( balance: Decimal, amount: Decimal, - holdAvailableAmount: Decimal, + _holdAvailableAmount: Decimal, decay: Decimal, createdAt: Date, validUntil: Date, user: User, - previousBalance: Decimal, + _previousBalance: Decimal, ): Transaction => { const linkDbTransaction: dbTransaction = { id: -2, diff --git a/backend/src/webhook/elopage.ts b/backend/src/webhook/elopage.ts index 940b80dd1..eca5fe75f 100644 --- a/backend/src/webhook/elopage.ts +++ b/backend/src/webhook/elopage.ts @@ -1,10 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ /* Elopage Webhook @@ -32,14 +25,14 @@ I assume that the webhook arrives via POST and transmits a string as shown above */ +import { backendLogger as logger } from '@/server/logger' import { LoginElopageBuys } from '@entity/LoginElopageBuys' import { UserContact as dbUserContact } from '@entity/UserContact' import { UserResolver } from '@/graphql/resolver/UserResolver' export const elopageWebhook = async (req: any, res: any): Promise => { - // eslint-disable-next-line no-console - console.log('Elopage Hook received', req.body) + logger.info('Elopage Hook received') res.status(200).end() // Responding is important const loginElopageBuy = new LoginElopageBuys() @@ -47,13 +40,9 @@ export const elopageWebhook = async (req: any, res: any): Promise => { payer, product, publisher, - // eslint-disable-next-line camelcase order_id, - // eslint-disable-next-line camelcase product_id, - // eslint-disable-next-line camelcase payment_state, - // eslint-disable-next-line camelcase success_date, event, membership, @@ -61,14 +50,12 @@ export const elopageWebhook = async (req: any, res: any): Promise => { // Do not process certain events if (['lesson.viewed', 'lesson.completed', 'lesson.commented'].includes(event)) { - // eslint-disable-next-line no-console - console.log('User viewed, completed or commented - not saving hook') + logger.debug('User viewed, completed or commented - not saving hook') return } if (!product || !publisher || !membership || !payer) { - // eslint-disable-next-line no-console - console.log('Elopage Hook: Not an event we can process') + logger.debug('Elopage Hook: Not an event we can process') return } @@ -81,7 +68,7 @@ export const elopageWebhook = async (req: any, res: any): Promise => { loginElopageBuy.productPrice = productPrice ? Math.trunc(productPrice * 100) : 0 loginElopageBuy.payerEmail = payer.email loginElopageBuy.publisherEmail = publisher.email - // eslint-disable-next-line camelcase + loginElopageBuy.payed = payment_state === 'paid' loginElopageBuy.successDate = new Date(success_date) loginElopageBuy.event = event @@ -95,8 +82,7 @@ export const elopageWebhook = async (req: any, res: any): Promise => { try { await LoginElopageBuys.save(loginElopageBuy) } catch (error) { - // eslint-disable-next-line no-console - console.log('Error saving LoginElopageBuy', error) + logger.error('Error saving LoginElopageBuy', error) return } @@ -115,7 +101,6 @@ export const elopageWebhook = async (req: any, res: any): Promise => { ) { const email = loginElopageBuy.payerEmail - // eslint-disable-next-line security/detect-unsafe-regex const VALIDATE_EMAIL = /^[a-zA-Z0-9.!#$%&?*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/ const VALIDATE_NAME = /^<>&;]{2,}$/ @@ -128,16 +113,14 @@ export const elopageWebhook = async (req: any, res: any): Promise => { lastName === '' || lastName.match(VALIDATE_NAME) ) { - // eslint-disable-next-line no-console - console.log(`Could not create User ${firstName} ${lastName} with email: ${email}`) + logger.info(`Could not create User ${firstName} ${lastName} with email: ${email}`) return } // Do we already have such a user? // if ((await dbUser.count({ email })) !== 0) { if ((await dbUserContact.count({ where: { email } })) !== 0) { - // eslint-disable-next-line no-console - console.log(`Did not create User - already exists with email: ${email}`) + logger.info(`Did not create User - already exists with email: ${email}`) return } @@ -150,8 +133,7 @@ export const elopageWebhook = async (req: any, res: any): Promise => { publisherId: loginElopageBuy.publisherId ?? 0, // This seemed to be the default value if not set }) } catch (error) { - // eslint-disable-next-line no-console - console.log(`Could not create User for ${email}. Following Error occured:`, error) + logger.error(`Could not create User for ${email}. Following Error occured:`, error) } } } diff --git a/backend/src/webhook/gms.ts b/backend/src/webhook/gms.ts index 3a4e9c3f3..1b5bf162b 100644 --- a/backend/src/webhook/gms.ts +++ b/backend/src/webhook/gms.ts @@ -1,36 +1,36 @@ -/* eslint-disable no-console */ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { User as DbUser } from '@entity/User' import { decode } from '@/auth/JWT' +import { gmsLogger as logger } from '@/server/logger' export const gmsWebhook = async (req: any, res: any): Promise => { - console.log('GMS Hook received', req.query) + logger.info('GMS Hook received') const { token } = req.query if (!token) { - console.log('gmsWebhook: missing token') + logger.debug('gmsWebhook: missing token', req.query) res.status(400).json({ message: 'false' }) return } const payload = await decode(token) - console.log('gmsWebhook: decoded token=', payload) + logger.debug('gmsWebhook: decoded token=', payload) if (!payload) { - console.log('gmsWebhook: invalid token') + logger.debug('gmsWebhook: invalid token', token) res.status(400).json({ message: 'false' }) return } const user = await DbUser.findOne({ where: { gradidoID: payload.gradidoID } }) if (!user) { - console.log('gmsWebhook: missing user') + logger.error('gmsWebhook: missing user', payload.gradidoID) res.status(400).json({ message: 'false' }) return } - console.log('gmsWebhook: authenticate user=', user.gradidoID, user.firstName, user.lastName) - console.log('gmsWebhook: authentication successful') + logger.debug( + 'gmsWebhook: authenticate user=', + user.gradidoID, + user.firstName.slice(0, 3), + user.lastName.slice(0, 3), + ) + logger.info('gmsWebhook: authentication successful') res.status(200).json({ userUuid: user.gradidoID }) } From 3ec68ce081f7a3925b07da61108be7f69c81b78d Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Sat, 26 Apr 2025 10:22:42 +0200 Subject: [PATCH 05/13] add biome to config, fix lint, use biome config file from root --- config/.eslintignore | 4 - config/.eslintrc.js | 214 ------------------------------------- config/package.json | 3 + config/src/commonSchema.ts | 96 ++++++++++------- config/src/index.ts | 6 +- config/yarn.lock | 54 ++++++++++ 6 files changed, 116 insertions(+), 261 deletions(-) delete mode 100644 config/.eslintignore delete mode 100644 config/.eslintrc.js diff --git a/config/.eslintignore b/config/.eslintignore deleted file mode 100644 index 1ae86fe5e..000000000 --- a/config/.eslintignore +++ /dev/null @@ -1,4 +0,0 @@ -node_modules -**/*.min.js -build -coverage \ No newline at end of file diff --git a/config/.eslintrc.js b/config/.eslintrc.js deleted file mode 100644 index 4be107982..000000000 --- a/config/.eslintrc.js +++ /dev/null @@ -1,214 +0,0 @@ -// eslint-disable-next-line import/no-commonjs, import/unambiguous -module.exports = { - root: true, - env: { - node: true, - }, - parser: '@typescript-eslint/parser', - plugins: ['prettier', '@typescript-eslint', 'type-graphql', 'import', 'n', 'promise'], - extends: [ - 'standard', - 'eslint:recommended', - 'plugin:prettier/recommended', - 'plugin:import/recommended', - 'plugin:import/typescript', - 'plugin:security/recommended', - 'plugin:@eslint-community/eslint-comments/recommended', - ], - settings: { - 'import/parsers': { - '@typescript-eslint/parser': ['.ts', '.tsx'], - }, - 'import/resolver': { - typescript: { - project: ['./tsconfig.json', '**/tsconfig.json'], - }, - node: true, - }, - // the parser cannot handle the split sodium import - 'import/ignore': ['sodium-native'], - }, - rules: { - 'no-console': 'error', - camelcase: ['error', { allow: ['crypto_*', 'randombytes_random'] }], - 'no-debugger': 'error', - 'prettier/prettier': [ - 'error', - { - htmlWhitespaceSensitivity: 'ignore', - }, - ], - // import - 'import/export': 'error', - // 'import/no-deprecated': 'error', - 'import/no-empty-named-blocks': 'error', - 'import/no-extraneous-dependencies': 'error', - 'import/no-mutable-exports': 'error', - 'import/no-unused-modules': 'error', - 'import/no-named-as-default': 'error', - 'import/no-named-as-default-member': 'error', - 'import/no-amd': 'error', - 'import/no-commonjs': 'error', - 'import/no-import-module-exports': 'error', - 'import/no-nodejs-modules': 'off', - 'import/unambiguous': 'error', - 'import/default': 'error', - 'import/named': 'error', - 'import/namespace': 'error', - 'import/no-absolute-path': 'error', - 'import/no-cycle': 'error', - 'import/no-dynamic-require': 'error', - 'import/no-internal-modules': 'off', - 'import/no-relative-packages': 'error', - 'import/no-relative-parent-imports': [ - 'error', - { ignore: ['@/*', 'random-bigint', 'sodium-native'] }, - ], - 'import/no-self-import': 'error', - 'import/no-unresolved': 'error', - 'import/no-useless-path-segments': 'error', - 'import/no-webpack-loader-syntax': 'error', - 'import/consistent-type-specifier-style': 'error', - 'import/exports-last': 'off', - 'import/extensions': 'error', - 'import/first': 'error', - 'import/group-exports': 'off', - 'import/newline-after-import': 'error', - 'import/no-anonymous-default-export': 'error', - 'import/no-default-export': 'error', - 'import/no-duplicates': 'error', - 'import/no-named-default': 'error', - 'import/no-namespace': 'error', - 'import/no-unassigned-import': 'error', - 'import/order': [ - 'error', - { - groups: ['builtin', 'external', 'internal', 'parent', 'sibling', 'index', 'object', 'type'], - 'newlines-between': 'always', - pathGroups: [ - { - pattern: '@?*/**', - group: 'external', - position: 'after', - }, - { - pattern: '@/**', - group: 'external', - position: 'after', - }, - ], - alphabetize: { - order: 'asc' /* sort in ascending order. Options: ['ignore', 'asc', 'desc'] */, - caseInsensitive: true /* ignore case. Options: [true, false] */, - }, - distinctGroup: true, - }, - ], - 'import/prefer-default-export': 'off', - // n - 'n/handle-callback-err': 'error', - 'n/no-callback-literal': 'error', - 'n/no-exports-assign': 'error', - 'n/no-extraneous-import': 'error', - 'n/no-extraneous-require': 'error', - 'n/no-hide-core-modules': 'error', - 'n/no-missing-import': 'off', // not compatible with typescript - 'n/no-missing-require': 'error', - 'n/no-new-require': 'error', - 'n/no-path-concat': 'error', - 'n/no-process-exit': 'error', - 'n/no-unpublished-bin': 'error', - 'n/no-unpublished-import': 'off', // TODO need to exclude seeds - 'n/no-unpublished-require': 'error', - 'n/no-unsupported-features': ['error', { ignores: ['modules'] }], - 'n/no-unsupported-features/es-builtins': 'error', - 'n/no-unsupported-features/es-syntax': 'error', - 'n/no-unsupported-features/node-builtins': 'error', - 'n/process-exit-as-throw': 'error', - 'n/shebang': 'error', - 'n/callback-return': 'error', - 'n/exports-style': 'error', - 'n/file-extension-in-import': 'off', - 'n/global-require': 'error', - 'n/no-mixed-requires': 'error', - 'n/no-process-env': 'error', - 'n/no-restricted-import': 'error', - 'n/no-restricted-require': 'error', - 'n/no-sync': 'error', - 'n/prefer-global/buffer': 'error', - 'n/prefer-global/console': 'error', - 'n/prefer-global/process': 'error', - 'n/prefer-global/text-decoder': 'error', - 'n/prefer-global/text-encoder': 'error', - 'n/prefer-global/url': 'error', - 'n/prefer-global/url-search-params': 'error', - 'n/prefer-promises/dns': 'error', - 'n/prefer-promises/fs': 'error', - // promise - 'promise/catch-or-return': 'error', - 'promise/no-return-wrap': 'error', - 'promise/param-names': 'error', - 'promise/always-return': 'error', - 'promise/no-native': 'off', - 'promise/no-nesting': 'warn', - 'promise/no-promise-in-callback': 'warn', - 'promise/no-callback-in-promise': 'warn', - 'promise/avoid-new': 'warn', - 'promise/no-new-statics': 'error', - 'promise/no-return-in-finally': 'warn', - 'promise/valid-params': 'warn', - 'promise/prefer-await-to-callbacks': 'error', - 'promise/no-multiple-resolved': 'error', - // eslint comments - '@eslint-community/eslint-comments/disable-enable-pair': ['error', { allowWholeFile: true }], - '@eslint-community/eslint-comments/no-restricted-disable': 'error', - '@eslint-community/eslint-comments/no-use': 'off', - '@eslint-community/eslint-comments/require-description': 'off', - }, - overrides: [ - // only for ts files - { - files: ['*.ts', '*.tsx'], - extends: [ - 'plugin:@typescript-eslint/recommended', - 'plugin:@typescript-eslint/recommended-requiring-type-checking', - 'plugin:@typescript-eslint/strict', - 'plugin:type-graphql/recommended', - ], - rules: { - // allow explicitly defined dangling promises - '@typescript-eslint/no-floating-promises': ['error', { ignoreVoid: true }], - 'no-void': ['error', { allowAsStatement: true }], - // ignore prefer-regexp-exec rule to allow string.match(regex) - '@typescript-eslint/prefer-regexp-exec': 'off', - // this should not run on ts files: https://github.com/import-js/eslint-plugin-import/issues/2215#issuecomment-911245486 - 'import/unambiguous': 'off', - // this is not compatible with typeorm, due to joined tables can be null, but are not defined as nullable - '@typescript-eslint/no-unnecessary-condition': 'off', - }, - parserOptions: { - tsconfigRootDir: __dirname, - project: ['./tsconfig.json', '**/tsconfig.json'], - // this is to properly reference the referenced project database without requirement of compiling it - // eslint-disable-next-line camelcase - EXPERIMENTAL_useSourceOfProjectReferenceRedirect: true, - }, - }, - { - files: ['*.test.ts'], - plugins: ['jest'], - env: { - jest: true, - }, - rules: { - 'jest/no-disabled-tests': 'error', - 'jest/no-focused-tests': 'error', - 'jest/no-identical-title': 'error', - 'jest/prefer-to-have-length': 'error', - 'jest/valid-expect': 'error', - '@typescript-eslint/unbound-method': 'off', - 'jest/unbound-method': 'error', - }, - }, - ], -} diff --git a/config/package.json b/config/package.json index c25e145ff..15252b532 100644 --- a/config/package.json +++ b/config/package.json @@ -11,9 +11,12 @@ "scripts": { "build": "tsc --build", "clean": "tsc --build --clean", + "lint": "biome check --error-on-warnings .", + "lint:fix": "biome check --error-on-warnings . --write", "test": "node test/index" }, "devDependencies": { + "@biomejs/biome": "1.9.4", "@types/joi": "^17.2.3", "@types/node": "^17.0.21", "typescript": "^4.9.5", diff --git a/config/src/commonSchema.ts b/config/src/commonSchema.ts index b3221491c..a208ee7dd 100644 --- a/config/src/commonSchema.ts +++ b/config/src/commonSchema.ts @@ -1,22 +1,22 @@ import Joi from 'joi' export const browserUrls = Joi.array() - .items(Joi.string().uri()) + .items(Joi.string().uri()) .sparse(true) .custom((value: string[], helpers: Joi.CustomHelpers) => { let protocol: string | undefined for (const url of value) { - if (url === undefined) { - continue + if (url === undefined) { + continue } const urlObject = new URL(url) - if(!protocol) { + if (!protocol) { protocol = urlObject.protocol - } else if(urlObject.protocol !== protocol) { + } else if (urlObject.protocol !== protocol) { return helpers.error('any.invalid') } } - return value; + return value }) .required() .description('All URLs need to have same protocol to prevent mixed block errors') @@ -29,8 +29,12 @@ export const DECAY_START_TIME = Joi.date() export const DB_VERSION = Joi.string() .pattern(/^\d{4}-[a-z0-9-_]+$/) - .message('DB_VERSION must be in the format: YYYY-description, e.g. "0087-add_index_on_user_roles".') - .description('db version string, last migration file name without ending or last folder in entity') + .message( + 'DB_VERSION must be in the format: YYYY-description, e.g. "0087-add_index_on_user_roles".', + ) + .description( + 'db version string, last migration file name without ending or last folder in entity', + ) .required() export const COMMUNITY_URL = Joi.string() @@ -39,9 +43,11 @@ export const COMMUNITY_URL = Joi.string() if (value.endsWith('/')) { return helpers.error('any.invalid', { message: 'URL should not end with a slash (/)' }) } - return value; + return value }) - .description('The base URL of the community, should have the same protocol as frontend, admin and backend api to prevent mixed contend issues.') + .description( + 'The base URL of the community, should have the same protocol as frontend, admin and backend api to prevent mixed contend issues.', + ) .default('http://0.0.0.0') .required() @@ -62,7 +68,7 @@ export const COMMUNITY_NAME = Joi.string() .max(40) .description('The name of the community') .default('Gradido Entwicklung') - .required() + .required() export const COMMUNITY_DESCRIPTION = Joi.string() .min(10) @@ -82,19 +88,19 @@ export const COMMUNITY_LOCATION = Joi.string() .when('GMS_ACTIVE', { is: true, then: Joi.string().required(), - otherwise: Joi.string().optional() + otherwise: Joi.string().optional(), }) .description('Geographical location of the community in "latitude, longitude" format') - .default('49.280377, 9.690151') - + .default('49.280377, 9.690151') + export const GRAPHIQL = Joi.boolean() - .description('Flag for enabling GraphQL playground for debugging.') - .default(false) - .when('NODE_ENV', { - is: 'development', - then: Joi.boolean().valid(true, false).required(), // only allow true in development mode - otherwise: Joi.boolean().valid(false).required() // false in any other mode - }) + .description('Flag for enabling GraphQL playground for debugging.') + .default(false) + .when('NODE_ENV', { + is: 'development', + then: Joi.boolean().valid(true, false).required(), // only allow true in development mode + otherwise: Joi.boolean().valid(false).required(), // false in any other mode + }) export const GMS_ACTIVE = Joi.boolean() .description('Flag to indicate if the GMS (Geographic Member Search) service is used.') @@ -123,20 +129,20 @@ export const HUMHUB_API_URL = Joi.string() .description('The API URL for HumHub integration') export const LOG_LEVEL = Joi.string() - .valid('all', 'mark', 'trace', 'debug', 'info', 'warn', 'error', 'fatal', 'off') + .valid('all', 'mark', 'trace', 'debug', 'info', 'warn', 'error', 'fatal', 'off') .description('set log level') .default('info') .required() export const LOG4JS_CONFIG = Joi.string() - .pattern(/^[a-zA-Z0-9-_]+\.json$/) + .pattern(/^[a-zA-Z0-9-_]+\.json$/) .message('LOG4JS_CONFIG must be a valid filename ending with .json') .description('config file name for log4js config file') .default('log4js-config.json') .required() export const LOGIN_APP_SECRET = Joi.string() - .pattern(/^[a-fA-F0-9]+$/) + .pattern(/^[a-fA-F0-9]+$/) .message('need to be valid hex') .default('21ffbbc616fe') .description('App secret for salt component for libsodium crypto_pwhash') @@ -147,7 +153,9 @@ export const LOGIN_SERVER_KEY = Joi.string() .length(32) .message('need to be valid hex and 32 character') .default('a51ef8ac7ef1abf162fb7a65261acd7a') - .description('Server key for password hashing as additional salt for libsodium crypto_shorthash_keygen') + .description( + 'Server key for password hashing as additional salt for libsodium crypto_shorthash_keygen', + ) .required() export const OPENAI_ACTIVE = Joi.boolean() @@ -156,7 +164,7 @@ export const OPENAI_ACTIVE = Joi.boolean() .required() export const TYPEORM_LOGGING_RELATIVE_PATH = Joi.string() - .pattern(new RegExp('^[a-zA-Z0-9-_\./]+\.log$')) + .pattern(/^[a-zA-Z0-9-_\.\/]+\.log$/) .message('TYPEORM_LOGGING_RELATIVE_PATH must be a valid filename ending with .log') .description('log file name for logging typeorm activities') .default('typeorm.log') @@ -168,7 +176,7 @@ export const DB_HOST = Joi.string() .description("database host like 'localhost' or 'mariadb' in docker setup") .default('localhost') .required() - + export const DB_PORT = Joi.number() .integer() .min(1024) @@ -179,10 +187,10 @@ export const DB_PORT = Joi.number() export const DB_USER = Joi.string() .pattern(/^[A-Za-z0-9]([A-Za-z0-9-_\.]*[A-Za-z0-9])?$/) // Validates MariaDB username rules - .min(1) // Minimum length 1 + .min(1) // Minimum length 1 .max(16) // Maximum length 16 .message( - 'Valid database username (letters, numbers, hyphens, underscores, dots allowed; no spaces, must not start or end with hyphen, dot, or underscore)' + 'Valid database username (letters, numbers, hyphens, underscores, dots allowed; no spaces, must not start or end with hyphen, dot, or underscore)', ) .description('database username for mariadb') .default('root') @@ -191,24 +199,26 @@ export const DB_USER = Joi.string() export const DB_PASSWORD = Joi.string() .when(Joi.ref('NODE_ENV'), { is: 'development', - then: Joi.string().allow(''), + then: Joi.string().allow(''), otherwise: Joi.string() - .min(8) + .min(8) .max(32) .pattern(/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*(),.?":{}|<>]).+$/) .message( - 'Password must be between 8 and 32 characters long, and contain at least one uppercase letter, one lowercase letter, one number, and one special character (e.g., !@#$%^&*).' - ) + 'Password must be between 8 and 32 characters long, and contain at least one uppercase letter, one lowercase letter, one number, and one special character (e.g., !@#$%^&*).', + ), }) .description( - 'Password for the database user. In development mode, an empty password is allowed. In other environments, a complex password is required.' + 'Password for the database user. In development mode, an empty password is allowed. In other environments, a complex password is required.', ) - .default('') + .default('') .required() export const DB_DATABASE = Joi.string() .pattern(/^[a-zA-Z][a-zA-Z0-9_-]{1,63}$/) - .description('Database name like gradido_community (must start with a letter, and can only contain letters, numbers, underscores, or dashes)') + .description( + 'Database name like gradido_community (must start with a letter, and can only contain letters, numbers, underscores, or dashes)', + ) .default('gradido_community') .required() @@ -221,13 +231,13 @@ export const APP_VERSION = Joi.string() export const BUILD_COMMIT = Joi.string() .pattern(/^[0-9a-f]{40}$/) .message('The commit hash must be a 40-character hexadecimal string.') - .description('The full git commit hash.') + .description('The full git commit hash.') .optional() export const BUILD_COMMIT_SHORT = Joi.string() .pattern(/^[0-9a-f]{7}$/) .message('The first 7 hexadecimal character from git commit hash.') - .description('A short version from the git commit hash.') + .description('A short version from the git commit hash.') .required() export const NODE_ENV = Joi.string() @@ -236,11 +246,15 @@ export const NODE_ENV = Joi.string() .description('Specifies the environment in which the application is running.') export const DEBUG = Joi.boolean() - .description('Indicates whether the application is in debugging mode. Set to true when NODE_ENV is not "production".') + .description( + 'Indicates whether the application is in debugging mode. Set to true when NODE_ENV is not "production".', + ) .default(false) .required() - + export const PRODUCTION = Joi.boolean() .default(false) - .description('Indicates whether the application is running in production mode. Set to true when NODE_ENV is "production".') + .description( + 'Indicates whether the application is running in production mode. Set to true when NODE_ENV is "production".', + ) .required() diff --git a/config/src/index.ts b/config/src/index.ts index 9137ead6d..3da59fa79 100644 --- a/config/src/index.ts +++ b/config/src/index.ts @@ -22,7 +22,9 @@ export function validate(schema: ObjectSchema, data: any) { ? schema.describe().keys[key].flags.description : 'No description available' if (data[key] === undefined) { - throw new Error(`Environment Variable '${key}' is missing. ${description}, details: ${details}`) + throw new Error( + `Environment Variable '${key}' is missing. ${description}, details: ${details}`, + ) } else { throw new Error( `Error on Environment Variable ${key} with value = ${value}: ${err.message}. ${description}`, @@ -30,4 +32,4 @@ export function validate(schema: ObjectSchema, data: any) { } }) } -} \ No newline at end of file +} diff --git a/config/yarn.lock b/config/yarn.lock index 8c8dcddd5..9fc387a53 100644 --- a/config/yarn.lock +++ b/config/yarn.lock @@ -2,6 +2,60 @@ # yarn lockfile v1 +"@biomejs/biome@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-1.9.4.tgz#89766281cbc3a0aae865a7ff13d6aaffea2842bf" + integrity sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog== + optionalDependencies: + "@biomejs/cli-darwin-arm64" "1.9.4" + "@biomejs/cli-darwin-x64" "1.9.4" + "@biomejs/cli-linux-arm64" "1.9.4" + "@biomejs/cli-linux-arm64-musl" "1.9.4" + "@biomejs/cli-linux-x64" "1.9.4" + "@biomejs/cli-linux-x64-musl" "1.9.4" + "@biomejs/cli-win32-arm64" "1.9.4" + "@biomejs/cli-win32-x64" "1.9.4" + +"@biomejs/cli-darwin-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz#dfa376d23a54a2d8f17133c92f23c1bf2e62509f" + integrity sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw== + +"@biomejs/cli-darwin-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz#eafc2ce3849d385fc02238aad1ca4a73395a64d9" + integrity sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg== + +"@biomejs/cli-linux-arm64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz#d780c3e01758fc90f3268357e3f19163d1f84fca" + integrity sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA== + +"@biomejs/cli-linux-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz#8ed1dd0e89419a4b66a47f95aefb8c46ae6041c9" + integrity sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g== + +"@biomejs/cli-linux-x64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz#f36982b966bd671a36671e1de4417963d7db15fb" + integrity sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg== + +"@biomejs/cli-linux-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz#a0a7f56680c76b8034ddc149dbf398bdd3a462e8" + integrity sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg== + +"@biomejs/cli-win32-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz#e2ef4e0084e76b7e26f0fc887c5ef1265ea56200" + integrity sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg== + +"@biomejs/cli-win32-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz#4c7afa90e3970213599b4095e62f87e5972b2340" + integrity sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA== + "@hapi/hoek@^9.0.0", "@hapi/hoek@^9.3.0": version "9.3.0" resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" From 6d951f095abee4293d6c69678a3e8ae2b976d386 Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Sat, 26 Apr 2025 10:49:52 +0200 Subject: [PATCH 06/13] add biome to database, fix linting errors from biome --- biome.json | 2 +- database/biome.json | 134 ++++++++++++++++++ database/entity/0001-init_db/Balance.ts | 2 +- database/entity/0001-init_db/Migration.ts | 2 +- database/entity/0001-init_db/ServerUser.ts | 2 +- database/entity/0001-init_db/Transaction.ts | 12 +- .../0001-init_db/TransactionCreation.ts | 2 +- .../0001-init_db/TransactionSendCoin.ts | 2 +- .../0001-init_db/TransactionSignature.ts | 2 +- database/entity/0001-init_db/User.ts | 7 +- .../entity/0001-init_db/UserTransaction.ts | 2 +- database/entity/0002-add_settings/User.ts | 7 +- .../entity/0002-add_settings/UserSetting.ts | 7 +- .../LoginElopageBuys.ts | 2 +- .../LoginEmailOptIn.ts | 2 +- .../0003-login_server_tables/LoginUser.ts | 7 +- .../LoginUserBackup.ts | 8 +- .../LoginUserRoles.ts | 2 +- .../0006-login_users_collation/LoginUser.ts | 7 +- .../Transaction.ts | 12 +- .../LoginUserBackup.ts | 2 +- .../entity/0017-combine_user_tables/User.ts | 7 +- .../User.ts | 7 +- .../User.ts | 7 +- .../0020-rename_and_clean_state_users/User.ts | 7 +- .../LoginElopageBuys.ts | 2 +- .../0023-users_disabled_soft_delete/User.ts | 11 +- .../Transaction.ts | 2 +- .../Transaction.ts | 2 +- .../Transaction.ts | 2 +- .../entity/0028-decimal_types/Transaction.ts | 2 +- .../Transaction.ts | 2 +- .../0030-transaction_link/TransactionLink.ts | 2 +- .../TransactionLink.ts | 2 +- .../Transaction.ts | 2 +- database/entity/0033-add_referrer_id/User.ts | 11 +- .../0034-drop_server_user_table/User.ts | 11 +- .../Transaction.ts | 8 +- .../0037-drop_user_setting_table/User.ts | 2 +- .../ContributionLink.ts | 2 +- .../0039-contributions_table/Contribution.ts | 9 +- .../entity/0039-contributions_table/User.ts | 11 +- .../User.ts | 11 +- .../EventProtocol.ts | 2 +- .../Contribution.ts | 9 +- .../User.ts | 11 +- .../0047-messages_tables/Contribution.ts | 16 ++- .../ContributionMessage.ts | 10 +- database/entity/0047-messages_tables/User.ts | 16 ++- .../ContributionMessage.ts | 10 +- .../0049-add_user_contacts_table/User.ts | 26 +++- .../UserContact.ts | 9 +- .../EventProtocol.ts | 2 +- .../Contribution.ts | 16 ++- .../Contribution.ts | 21 ++- .../0053-change_password_encryption/User.ts | 26 +++- .../UserContact.ts | 9 +- .../0057-clear_old_password_junk/User.ts | 26 +++- .../UserContact.ts | 9 +- .../0058-add_communities_table/Community.ts | 4 +- .../0059-add_hide_amount_to_users/User.ts | 26 +++- .../Community.ts | 4 +- .../entity/0061-event_refactoring/Event.ts | 14 +- .../entity/0063-event_link_fields/Event.ts | 16 +-- .../Community.ts | 4 +- .../FederatedCommunity.ts | 4 +- .../Transaction.ts | 8 +- .../Community.ts | 4 +- .../Community.ts | 4 +- .../FederatedCommunity.ts | 4 +- .../entity/0069-add_user_roles_table/User.ts | 31 ++-- .../0069-add_user_roles_table/UserRole.ts | 7 +- .../DltTransaction.ts | 7 +- .../Transaction.ts | 13 +- .../PendingTransaction.ts | 3 +- .../Transaction.ts | 13 +- .../User.ts | 31 ++-- .../ContributionMessage.ts | 10 +- .../Contribution.ts | 21 ++- .../ContributionMessage.ts | 10 +- .../Contribution.ts | 21 ++- .../ContributionMessage.ts | 10 +- .../0081-user_join_community/Community.ts | 13 +- .../entity/0081-user_join_community/User.ts | 40 ++++-- .../Community.ts | 13 +- .../0082-introduce_gms_registration/User.ts | 44 ++++-- .../UserContact.ts | 13 +- .../Community.ts | 18 ++- .../FederatedCommunity.ts | 13 +- .../User.ts | 44 ++++-- .../0086-add_community_location/Community.ts | 22 +-- .../ProjectBranding.ts | 2 +- .../0089-add_openai_threads/OpenaiThreads.ts | 2 +- database/entity/index.ts | 16 +-- database/integrity/0013-test.ts.keep | 10 +- database/logging/AbstractLogging.view.ts | 3 +- database/logging/CommunityLogging.view.ts | 1 - database/logging/ContributionLogging.view.ts | 1 - .../ContributionMessageLogging.view.ts | 1 - .../logging/DltTransactionLogging.view.ts | 1 - .../logging/FederatedCommunityLogging.view.ts | 1 - .../logging/PendingTransactionLogging.view.ts | 2 - database/logging/TransactionLogging.view.ts | 2 - database/logging/UserContactLogging.view.ts | 2 - database/logging/UserLogging.view.ts | 2 - database/logging/UserRoleLogging.view.ts | 1 - database/migrations/0001-init_db.ts | 3 - database/migrations/0002-add_settings.ts | 3 - .../migrations/0003-login_server_tables.ts | 3 - database/migrations/0004-login_server_data.ts | 9 +- database/migrations/0005-admin_tables.ts | 3 - .../migrations/0006-login_users_collation.ts | 3 - .../0007-login_pending_tasks_delete.ts | 7 +- .../migrations/0008-state_users_plug_holes.ts | 7 +- .../migrations/0009-login_users_plug_holes.ts | 7 +- .../0010-login_users_state_users_sync.ts | 7 +- .../0011-login_user_backups_plug_holes.ts | 7 +- .../0012-login_user_backups_unify_wordlist.ts | 7 +- .../migrations/0013-drop_unused_tables.ts | 3 - .../0014-drop_unused_tables_with_data.ts | 3 - .../0015-admin_pending_creations.ts | 3 - .../migrations/0016-transaction_signatures.ts | 3 - .../migrations/0017-combine_user_tables.ts | 3 - ...mbine_login_user_backups_and_user_table.ts | 3 - ...eplace_login_user_id_with_state_user_id.ts | 3 - .../0020-rename_and_clean_state_users.ts | 3 - .../0021-elopagebuys_fields_nullable.ts | 3 - .../0022-delete_decay_start_block.ts | 3 - .../0023-users_disabled_soft_delete.ts | 3 - .../0024-combine_transaction_tables.ts | 3 - database/migrations/0025-emails_to_lower.ts | 6 +- .../0026-combine_transaction_tables2.ts | 3 - .../0027-clean_transaction_table.ts | 3 - database/migrations/0028-decimal_types.ts | 5 - .../0029-clean_transaction_table.ts | 3 - database/migrations/0030-transaction_link.ts | 3 - ...-remove_sendEmail_from_transaction_link.ts | 3 - ...032-add-transaction-link-to-transaction.ts | 3 - database/migrations/0033-add_referrer_id.ts | 3 - .../migrations/0034-drop_server_user_table.ts | 3 - .../0035-admin_pending_creations_decimal.ts | 3 - .../0036-unique_previous_in_transactions.ts | 3 - .../0037-drop_user_setting_table.ts | 3 - .../0038-add_contribution_links_table.ts | 3 - .../migrations/0039-contributions_table.ts | 3 - .../0040-add_contribution_link_id_to_user.ts | 3 - .../0041-move_users_creation_date.ts | 3 - ...0042-update_transactions_for_blockchain.ts | 2 - .../0043-add_event_protocol_table.ts | 3 - .../0044-insert_missing_contributions.ts | 3 - ...denied_type_and_status_to_contributions.ts | 3 - .../0046-adapt_users_table_for_gradidoid.ts | 3 - database/migrations/0047-messages_tables.ts | 2 - ...d_is_moderator_to_contribution_messages.ts | 3 - .../0049-add_user_contacts_table.ts | 3 - .../0050-add_messageId_to_event_protocol.ts | 3 - .../0051-add_delete_by_to_contributions.ts | 3 - .../0052-add_updated_at_to_contributions.ts | 3 - .../0053-change_password_encryption.ts | 3 - .../0054-recalculate_balance_and_decay.ts | 19 +-- .../0055-consistent_deleted_users.ts | 8 +- .../0056-consistent_transactions_table.ts | 10 +- .../0057-clear_old_password_junk.ts | 3 - .../migrations/0058-add_communities_table.ts | 3 - .../0059-add_hide_amount_to_users.ts | 3 - .../0060-update_communities_table.ts | 3 - database/migrations/0061-event_refactoring.ts | 3 - .../0062-event_contribution_confirm.ts | 3 - database/migrations/0063-event_link_fields.ts | 3 - database/migrations/0064-event_rename.ts | 3 - .../0065-refactor_communities_table.ts | 3 - ...-community-sendcoins-transactions_table.ts | 3 - .../0067-private_key_in_community_table.ts | 3 - ...0068-community_tables_public_key_length.ts | 3 - .../migrations/0069-add_user_roles_table.ts | 3 - .../0070-add_dlt_transactions_table.ts | 3 - .../0071-add-pending_transactions-table.ts | 3 - ...add_communityuuid_to_transactions_table.ts | 3 - ...3-introduce_foreign_user_in_users_table.ts | 3 - ...-insert_communityuuid in_existing_users.ts | 3 - .../0075-contribution_message_add_index.ts | 3 - ..._resubmission_date_contribution_message.ts | 3 - .../migrations/0078-move_resubmission_date.ts | 3 - .../0082-introduce_gms_registration.ts | 3 - ...83-join_community_federated_communities.ts | 8 +- .../0084-introduce_humhub_registration.ts | 3 - .../0085-add_index_transactions_user_id.ts | 3 - .../migrations/0086-add_community_location.ts | 3 - .../0087-add_index_on_user_roles.ts | 3 - .../0088-create_project_brandings.ts | 2 - .../migrations/0089-add_openai_threads.ts | 3 - database/package.json | 16 +-- database/src/config/detectLastDBVersion.ts | 2 +- database/src/config/index.ts | 2 - database/src/index.ts | 6 +- database/src/prepare.ts | 2 +- database/src/typeorm/GeometryTransformer.ts | 4 +- database/tsconfig.json | 2 +- database/yarn.lock | 54 +++++++ 199 files changed, 885 insertions(+), 624 deletions(-) create mode 100644 database/biome.json diff --git a/biome.json b/biome.json index 84d3a3a29..419076f6c 100644 --- a/biome.json +++ b/biome.json @@ -4,7 +4,7 @@ "files": { "ignoreUnknown": false, "ignore": ["build", "node_modules", "coverage"], - "include": ["./src/**/*.js", "./src/**/*.ts"] + "include": ["./src/**/*.js", "./src/**/*.ts", "./entity/**/*.ts", "./logging/**/*.ts", "./migrations/**/*.ts"] }, "formatter": { "enabled": true, diff --git a/database/biome.json b/database/biome.json new file mode 100644 index 000000000..786069e9b --- /dev/null +++ b/database/biome.json @@ -0,0 +1,134 @@ +{ + "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", + "vcs": { "enabled": false, "clientKind": "git", "useIgnoreFile": false }, + "files": { + "ignoreUnknown": false, + "ignore": ["build", "node_modules", "coverage"], + "include": ["./src/**/*.ts", "./entity/**/*.ts", "./logging/**/*.ts", "./migrations/**/*.ts"] + }, + "formatter": { + "enabled": true, + "useEditorconfig": true, + "formatWithErrors": false, + "indentStyle": "space", + "indentWidth": 2, + "lineEnding": "lf", + "lineWidth": 100, + "attributePosition": "auto", + "bracketSpacing": true + }, + "organizeImports": { "enabled": true }, + "linter": { + "enabled": true, + "rules": { + "recommended": false, + "complexity": { + "noExtraBooleanCast": "error", + "noMultipleSpacesInRegularExpressionLiterals": "error", + "noUselessCatch": "error", + "noUselessConstructor": "error", + "noUselessLoneBlockStatements": "error", + "noUselessRename": "error", + "noUselessTernary": "error", + "noUselessUndefinedInitialization": "error", + "noVoid": "error", + "noWith": "error", + "useArrowFunction": "off", + "useLiteralKeys": "error", + "useRegexLiterals": "error" + }, + "correctness": { + "noConstAssign": "error", + "noConstantCondition": "error", + "noEmptyCharacterClassInRegex": "error", + "noEmptyPattern": "error", + "noGlobalObjectCalls": "error", + "noInnerDeclarations": "error", + "noInvalidConstructorSuper": "error", + "noInvalidUseBeforeDeclaration": "error", + "noNewSymbol": "error", + "noNodejsModules": "off", + "noNonoctalDecimalEscape": "error", + "noPrecisionLoss": "error", + "noSelfAssign": "error", + "noSetterReturn": "error", + "noSwitchDeclarations": "error", + "noUndeclaredVariables": "error", + "noUnreachable": "error", + "noUnreachableSuper": "error", + "noUnsafeFinally": "error", + "noUnsafeOptionalChaining": "error", + "noUnusedLabels": "error", + "noUnusedVariables": "error", + "useArrayLiterals": "error", + "useIsNan": "error", + "useValidForDirection": "error", + "useYield": "error" + }, + "security": { "noGlobalEval": "error" }, + "style": { + "noCommaOperator": "error", + "noDefaultExport": "error", + "noVar": "warn", + "noYodaExpression": "error", + "useBlockStatements": "error", + "useConsistentBuiltinInstantiation": "error", + "useConst": "error", + "useSingleVarDeclarator": "error", + "useThrowOnlyError": "error" + }, + "suspicious": { + "noAssignInExpressions": "error", + "noAsyncPromiseExecutor": "error", + "noCatchAssign": "error", + "noClassAssign": "error", + "noCompareNegZero": "error", + "noConfusingLabels": "error", + "noConsole": "error", + "noControlCharactersInRegex": "error", + "noDebugger": "error", + "noDoubleEquals": "error", + "noDuplicateCase": "error", + "noDuplicateClassMembers": "error", + "noDuplicateObjectKeys": "error", + "noDuplicateParameters": "error", + "noEmptyBlockStatements": "error", + "noFallthroughSwitchClause": "error", + "noFunctionAssign": "error", + "noGlobalAssign": "error", + "noImportAssign": "error", + "noMisleadingCharacterClass": "error", + "noPrototypeBuiltins": "error", + "noRedeclare": "error", + "noSelfCompare": "error", + "noShadowRestrictedNames": "error", + "noSparseArray": "error", + "noUnsafeNegation": "error", + "useDefaultSwitchClauseLast": "error", + "useGetterReturn": "error", + "useValidTypeof": "error" + } + }, + "ignore": ["**/node_modules", "**/*.min.js", "**/build"] + }, + "javascript": { + "formatter": { + "jsxQuoteStyle": "double", + "quoteProperties": "asNeeded", + "trailingCommas": "all", + "semicolons": "asNeeded", + "arrowParentheses": "always", + "bracketSameLine": false, + "quoteStyle": "single", + "attributePosition": "auto", + "bracketSpacing": true + }, + "globals": ["document", "navigator", "window", "BufferEncoding"] + }, + "overrides": [ + { + "include": ["*.ts", "*.tsx"], + "linter": { "rules": { "complexity": { "noVoid": "error" } } } + } + ] +} diff --git a/database/entity/0001-init_db/Balance.ts b/database/entity/0001-init_db/Balance.ts index 1a7050daf..8da3879af 100644 --- a/database/entity/0001-init_db/Balance.ts +++ b/database/entity/0001-init_db/Balance.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, JoinColumn, OneToOne } from 'typeorm' +import { BaseEntity, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { User } from '../User' @Entity('state_balances') diff --git a/database/entity/0001-init_db/Migration.ts b/database/entity/0001-init_db/Migration.ts index f1163cfbc..2aa79ae9f 100644 --- a/database/entity/0001-init_db/Migration.ts +++ b/database/entity/0001-init_db/Migration.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('migrations') export class Migration extends BaseEntity { diff --git a/database/entity/0001-init_db/ServerUser.ts b/database/entity/0001-init_db/ServerUser.ts index 42b5816ae..8d9819612 100644 --- a/database/entity/0001-init_db/ServerUser.ts +++ b/database/entity/0001-init_db/ServerUser.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('server_users') export class ServerUser extends BaseEntity { diff --git a/database/entity/0001-init_db/Transaction.ts b/database/entity/0001-init_db/Transaction.ts index a33fbd0be..52a07eb27 100644 --- a/database/entity/0001-init_db/Transaction.ts +++ b/database/entity/0001-init_db/Transaction.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne } from 'typeorm' +import { BaseEntity, Column, Entity, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { TransactionCreation } from './TransactionCreation' import { TransactionSendCoin } from './TransactionSendCoin' @@ -31,9 +31,15 @@ export class Transaction extends BaseEntity { }) blockchainTypeId: number - @OneToOne(() => TransactionSendCoin, (transactionSendCoin) => transactionSendCoin.transaction) + @OneToOne( + () => TransactionSendCoin, + (transactionSendCoin) => transactionSendCoin.transaction, + ) transactionSendCoin: TransactionSendCoin - @OneToOne(() => TransactionCreation, (transactionCreation) => transactionCreation.transaction) + @OneToOne( + () => TransactionCreation, + (transactionCreation) => transactionCreation.transaction, + ) transactionCreation: TransactionCreation } diff --git a/database/entity/0001-init_db/TransactionCreation.ts b/database/entity/0001-init_db/TransactionCreation.ts index 1837e0789..6faac82aa 100644 --- a/database/entity/0001-init_db/TransactionCreation.ts +++ b/database/entity/0001-init_db/TransactionCreation.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne, JoinColumn } from 'typeorm' +import { BaseEntity, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { Transaction } from '../Transaction' @Entity('transaction_creations') diff --git a/database/entity/0001-init_db/TransactionSendCoin.ts b/database/entity/0001-init_db/TransactionSendCoin.ts index db999cd87..3b9fa87a9 100644 --- a/database/entity/0001-init_db/TransactionSendCoin.ts +++ b/database/entity/0001-init_db/TransactionSendCoin.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne, JoinColumn } from 'typeorm' +import { BaseEntity, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { Transaction } from '../Transaction' @Entity('transaction_send_coins') diff --git a/database/entity/0001-init_db/TransactionSignature.ts b/database/entity/0001-init_db/TransactionSignature.ts index d12a74500..b95bddd50 100644 --- a/database/entity/0001-init_db/TransactionSignature.ts +++ b/database/entity/0001-init_db/TransactionSignature.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne, JoinColumn } from 'typeorm' +import { BaseEntity, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { Transaction } from '../Transaction' @Entity('transaction_signatures') diff --git a/database/entity/0001-init_db/User.ts b/database/entity/0001-init_db/User.ts index 7d20007f7..fbc010ca9 100644 --- a/database/entity/0001-init_db/User.ts +++ b/database/entity/0001-init_db/User.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne } from 'typeorm' +import { BaseEntity, Column, Entity, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { Balance } from './Balance' // Moriz: I do not like the idea of having two user tables @@ -43,6 +43,9 @@ export class User extends BaseEntity { @Column({ type: 'bool', default: false }) disabled: boolean - @OneToOne(() => Balance, (balance) => balance.user) + @OneToOne( + () => Balance, + (balance) => balance.user, + ) balance: Balance } diff --git a/database/entity/0001-init_db/UserTransaction.ts b/database/entity/0001-init_db/UserTransaction.ts index 7e24b66b0..b0e90f7f4 100644 --- a/database/entity/0001-init_db/UserTransaction.ts +++ b/database/entity/0001-init_db/UserTransaction.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('state_user_transactions') export class UserTransaction extends BaseEntity { diff --git a/database/entity/0002-add_settings/User.ts b/database/entity/0002-add_settings/User.ts index c26602cd5..e74abe4d9 100644 --- a/database/entity/0002-add_settings/User.ts +++ b/database/entity/0002-add_settings/User.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToMany } from 'typeorm' +import { BaseEntity, Column, Entity, OneToMany, PrimaryGeneratedColumn } from 'typeorm' import { UserSetting } from './UserSetting' // Moriz: I do not like the idea of having two user tables @@ -43,6 +43,9 @@ export class User extends BaseEntity { @Column({ type: 'bool', default: false }) disabled: boolean - @OneToMany(() => UserSetting, (userSetting) => userSetting.user) + @OneToMany( + () => UserSetting, + (userSetting) => userSetting.user, + ) settings: UserSetting[] } diff --git a/database/entity/0002-add_settings/UserSetting.ts b/database/entity/0002-add_settings/UserSetting.ts index 9da036954..7fbb36e91 100644 --- a/database/entity/0002-add_settings/UserSetting.ts +++ b/database/entity/0002-add_settings/UserSetting.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, ManyToOne } from 'typeorm' +import { BaseEntity, Column, Entity, ManyToOne, PrimaryGeneratedColumn } from 'typeorm' import { User } from '../0034-drop_server_user_table/User' @Entity() @@ -9,7 +9,10 @@ export class UserSetting extends BaseEntity { @Column() userId: number - @ManyToOne(() => User, (user) => user.settings) + @ManyToOne( + () => User, + (user) => user.settings, + ) user: User @Column() diff --git a/database/entity/0003-login_server_tables/LoginElopageBuys.ts b/database/entity/0003-login_server_tables/LoginElopageBuys.ts index 1f94faffe..cc9322d1d 100644 --- a/database/entity/0003-login_server_tables/LoginElopageBuys.ts +++ b/database/entity/0003-login_server_tables/LoginElopageBuys.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('login_elopage_buys') export class LoginElopageBuys extends BaseEntity { diff --git a/database/entity/0003-login_server_tables/LoginEmailOptIn.ts b/database/entity/0003-login_server_tables/LoginEmailOptIn.ts index 2ec62927f..60717d2c2 100644 --- a/database/entity/0003-login_server_tables/LoginEmailOptIn.ts +++ b/database/entity/0003-login_server_tables/LoginEmailOptIn.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' // Moriz: I do not like the idea of having two user tables @Entity('login_email_opt_in') diff --git a/database/entity/0003-login_server_tables/LoginUser.ts b/database/entity/0003-login_server_tables/LoginUser.ts index a3a83f450..c3ebf9748 100644 --- a/database/entity/0003-login_server_tables/LoginUser.ts +++ b/database/entity/0003-login_server_tables/LoginUser.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne } from 'typeorm' +import { BaseEntity, Column, Entity, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { LoginUserBackup } from './LoginUserBackup' // Moriz: I do not like the idea of having two user tables @@ -55,6 +55,9 @@ export class LoginUser extends BaseEntity { @Column({ name: 'publisher_id', default: 0 }) publisherId: number - @OneToOne(() => LoginUserBackup, (loginUserBackup) => loginUserBackup.loginUser) + @OneToOne( + () => LoginUserBackup, + (loginUserBackup) => loginUserBackup.loginUser, + ) loginUserBackup: LoginUserBackup } diff --git a/database/entity/0003-login_server_tables/LoginUserBackup.ts b/database/entity/0003-login_server_tables/LoginUserBackup.ts index 39f5e0db5..a6e7f888d 100644 --- a/database/entity/0003-login_server_tables/LoginUserBackup.ts +++ b/database/entity/0003-login_server_tables/LoginUserBackup.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, JoinColumn, OneToOne } from 'typeorm' +import { BaseEntity, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { LoginUser } from './LoginUser' @Entity('login_user_backups') @@ -15,7 +15,11 @@ export class LoginUserBackup extends BaseEntity { @Column({ name: 'mnemonic_type', default: -1 }) mnemonicType: number - @OneToOne(() => LoginUser, (loginUser) => loginUser.loginUserBackup, { nullable: false }) + @OneToOne( + () => LoginUser, + (loginUser) => loginUser.loginUserBackup, + { nullable: false }, + ) @JoinColumn({ name: 'user_id' }) loginUser: LoginUser } diff --git a/database/entity/0003-login_server_tables/LoginUserRoles.ts b/database/entity/0003-login_server_tables/LoginUserRoles.ts index 33553fea4..f04892b0b 100644 --- a/database/entity/0003-login_server_tables/LoginUserRoles.ts +++ b/database/entity/0003-login_server_tables/LoginUserRoles.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('login_user_roles') export class LoginUserRoles extends BaseEntity { diff --git a/database/entity/0006-login_users_collation/LoginUser.ts b/database/entity/0006-login_users_collation/LoginUser.ts index fdb17f4ad..ded5b992f 100644 --- a/database/entity/0006-login_users_collation/LoginUser.ts +++ b/database/entity/0006-login_users_collation/LoginUser.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne } from 'typeorm' +import { BaseEntity, Column, Entity, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { LoginUserBackup } from '../0003-login_server_tables/LoginUserBackup' // Moriz: I do not like the idea of having two user tables @@ -55,6 +55,9 @@ export class LoginUser extends BaseEntity { @Column({ name: 'publisher_id', default: 0 }) publisherId: number - @OneToOne(() => LoginUserBackup, (loginUserBackup) => loginUserBackup.loginUser) + @OneToOne( + () => LoginUserBackup, + (loginUserBackup) => loginUserBackup.loginUser, + ) loginUserBackup: LoginUserBackup } diff --git a/database/entity/0016-transaction_signatures/Transaction.ts b/database/entity/0016-transaction_signatures/Transaction.ts index 5410d010b..acce97bbf 100644 --- a/database/entity/0016-transaction_signatures/Transaction.ts +++ b/database/entity/0016-transaction_signatures/Transaction.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne } from 'typeorm' +import { BaseEntity, Column, Entity, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { TransactionCreation } from '../0001-init_db/TransactionCreation' import { TransactionSendCoin } from '../0001-init_db/TransactionSendCoin' @@ -26,9 +26,15 @@ export class Transaction extends BaseEntity { @Column({ type: 'binary', length: 32, nullable: true, default: null }) pubkey: Buffer - @OneToOne(() => TransactionSendCoin, (transactionSendCoin) => transactionSendCoin.transaction) + @OneToOne( + () => TransactionSendCoin, + (transactionSendCoin) => transactionSendCoin.transaction, + ) transactionSendCoin: TransactionSendCoin - @OneToOne(() => TransactionCreation, (transactionCreation) => transactionCreation.transaction) + @OneToOne( + () => TransactionCreation, + (transactionCreation) => transactionCreation.transaction, + ) transactionCreation: TransactionCreation } diff --git a/database/entity/0017-combine_user_tables/LoginUserBackup.ts b/database/entity/0017-combine_user_tables/LoginUserBackup.ts index 7aa69a021..7ee0fd464 100644 --- a/database/entity/0017-combine_user_tables/LoginUserBackup.ts +++ b/database/entity/0017-combine_user_tables/LoginUserBackup.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('login_user_backups') export class LoginUserBackup extends BaseEntity { diff --git a/database/entity/0017-combine_user_tables/User.ts b/database/entity/0017-combine_user_tables/User.ts index 7281c4773..207c8ce99 100644 --- a/database/entity/0017-combine_user_tables/User.ts +++ b/database/entity/0017-combine_user_tables/User.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToMany } from 'typeorm' +import { BaseEntity, Column, Entity, OneToMany, PrimaryGeneratedColumn } from 'typeorm' import { UserSetting } from '../0002-add_settings/UserSetting' @Entity('state_users', { engine: 'InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci' }) @@ -69,6 +69,9 @@ export class User extends BaseEntity { @Column({ name: 'publisher_id', default: 0 }) publisherId: number - @OneToMany(() => UserSetting, (userSetting) => userSetting.user) + @OneToMany( + () => UserSetting, + (userSetting) => userSetting.user, + ) settings: UserSetting[] } diff --git a/database/entity/0018-combine_login_user_backups_and_user_table/User.ts b/database/entity/0018-combine_login_user_backups_and_user_table/User.ts index 347f51a8d..f84f7418a 100644 --- a/database/entity/0018-combine_login_user_backups_and_user_table/User.ts +++ b/database/entity/0018-combine_login_user_backups_and_user_table/User.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToMany } from 'typeorm' +import { BaseEntity, Column, Entity, OneToMany, PrimaryGeneratedColumn } from 'typeorm' import { UserSetting } from '../0002-add_settings/UserSetting' @Entity('state_users', { engine: 'InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci' }) @@ -78,6 +78,9 @@ export class User extends BaseEntity { }) passphrase: string - @OneToMany(() => UserSetting, (userSetting) => userSetting.user) + @OneToMany( + () => UserSetting, + (userSetting) => userSetting.user, + ) settings: UserSetting[] } diff --git a/database/entity/0019-replace_login_user_id_with_state_user_id/User.ts b/database/entity/0019-replace_login_user_id_with_state_user_id/User.ts index 8c00ec5c3..9a54129d3 100644 --- a/database/entity/0019-replace_login_user_id_with_state_user_id/User.ts +++ b/database/entity/0019-replace_login_user_id_with_state_user_id/User.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToMany } from 'typeorm' +import { BaseEntity, Column, Entity, OneToMany, PrimaryGeneratedColumn } from 'typeorm' import { UserSetting } from '../0002-add_settings/UserSetting' @Entity('state_users', { engine: 'InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci' }) @@ -75,6 +75,9 @@ export class User extends BaseEntity { }) passphrase: string - @OneToMany(() => UserSetting, (userSetting) => userSetting.user) + @OneToMany( + () => UserSetting, + (userSetting) => userSetting.user, + ) settings: UserSetting[] } diff --git a/database/entity/0020-rename_and_clean_state_users/User.ts b/database/entity/0020-rename_and_clean_state_users/User.ts index 5501bccba..d37ded4f4 100644 --- a/database/entity/0020-rename_and_clean_state_users/User.ts +++ b/database/entity/0020-rename_and_clean_state_users/User.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToMany } from 'typeorm' +import { BaseEntity, Column, Entity, OneToMany, PrimaryGeneratedColumn } from 'typeorm' import { UserSetting } from '../0002-add_settings/UserSetting' @Entity('users', { engine: 'InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci' }) @@ -63,6 +63,9 @@ export class User extends BaseEntity { }) passphrase: string - @OneToMany(() => UserSetting, (userSetting) => userSetting.user) + @OneToMany( + () => UserSetting, + (userSetting) => userSetting.user, + ) settings: UserSetting[] } diff --git a/database/entity/0021-elopagebuys_fields_nullable/LoginElopageBuys.ts b/database/entity/0021-elopagebuys_fields_nullable/LoginElopageBuys.ts index 501276ea7..45d82ad7c 100644 --- a/database/entity/0021-elopagebuys_fields_nullable/LoginElopageBuys.ts +++ b/database/entity/0021-elopagebuys_fields_nullable/LoginElopageBuys.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('login_elopage_buys') export class LoginElopageBuys extends BaseEntity { diff --git a/database/entity/0023-users_disabled_soft_delete/User.ts b/database/entity/0023-users_disabled_soft_delete/User.ts index 950e74aeb..d49abf723 100644 --- a/database/entity/0023-users_disabled_soft_delete/User.ts +++ b/database/entity/0023-users_disabled_soft_delete/User.ts @@ -1,10 +1,10 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, - OneToMany, DeleteDateColumn, + Entity, + OneToMany, + PrimaryGeneratedColumn, } from 'typeorm' import { UserSetting } from '../0002-add_settings/UserSetting' @@ -70,6 +70,9 @@ export class User extends BaseEntity { }) passphrase: string - @OneToMany(() => UserSetting, (userSetting) => userSetting.user) + @OneToMany( + () => UserSetting, + (userSetting) => userSetting.user, + ) settings: UserSetting[] } diff --git a/database/entity/0024-combine_transaction_tables/Transaction.ts b/database/entity/0024-combine_transaction_tables/Transaction.ts index 5834c007a..9f2681f5a 100644 --- a/database/entity/0024-combine_transaction_tables/Transaction.ts +++ b/database/entity/0024-combine_transaction_tables/Transaction.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('transactions') export class Transaction extends BaseEntity { diff --git a/database/entity/0026-combine_transaction_tables2/Transaction.ts b/database/entity/0026-combine_transaction_tables2/Transaction.ts index 77f23e4e4..293245cc2 100644 --- a/database/entity/0026-combine_transaction_tables2/Transaction.ts +++ b/database/entity/0026-combine_transaction_tables2/Transaction.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('transactions') export class Transaction extends BaseEntity { diff --git a/database/entity/0027-clean_transaction_table/Transaction.ts b/database/entity/0027-clean_transaction_table/Transaction.ts index e50f5d164..eb703f688 100644 --- a/database/entity/0027-clean_transaction_table/Transaction.ts +++ b/database/entity/0027-clean_transaction_table/Transaction.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('transactions') export class Transaction extends BaseEntity { diff --git a/database/entity/0028-decimal_types/Transaction.ts b/database/entity/0028-decimal_types/Transaction.ts index 6c08fe3c0..f9a88be36 100644 --- a/database/entity/0028-decimal_types/Transaction.ts +++ b/database/entity/0028-decimal_types/Transaction.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' @Entity('transactions') diff --git a/database/entity/0029-clean_transaction_table/Transaction.ts b/database/entity/0029-clean_transaction_table/Transaction.ts index f253b9d58..485071bd5 100644 --- a/database/entity/0029-clean_transaction_table/Transaction.ts +++ b/database/entity/0029-clean_transaction_table/Transaction.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' @Entity('transactions') diff --git a/database/entity/0030-transaction_link/TransactionLink.ts b/database/entity/0030-transaction_link/TransactionLink.ts index 59179c3be..add06c2e1 100644 --- a/database/entity/0030-transaction_link/TransactionLink.ts +++ b/database/entity/0030-transaction_link/TransactionLink.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, DeleteDateColumn } from 'typeorm' +import { BaseEntity, Column, DeleteDateColumn, Entity, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' @Entity('transaction_links') diff --git a/database/entity/0031-remove_sendEmail_from_transaction_link/TransactionLink.ts b/database/entity/0031-remove_sendEmail_from_transaction_link/TransactionLink.ts index 6c8edf30f..585b42612 100644 --- a/database/entity/0031-remove_sendEmail_from_transaction_link/TransactionLink.ts +++ b/database/entity/0031-remove_sendEmail_from_transaction_link/TransactionLink.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, DeleteDateColumn } from 'typeorm' +import { BaseEntity, Column, DeleteDateColumn, Entity, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' @Entity('transaction_links') diff --git a/database/entity/0032-add-transaction-link-to-transaction/Transaction.ts b/database/entity/0032-add-transaction-link-to-transaction/Transaction.ts index e9e206e14..f45c05c67 100644 --- a/database/entity/0032-add-transaction-link-to-transaction/Transaction.ts +++ b/database/entity/0032-add-transaction-link-to-transaction/Transaction.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' @Entity('transactions') diff --git a/database/entity/0033-add_referrer_id/User.ts b/database/entity/0033-add_referrer_id/User.ts index 353c6a830..d407c4a35 100644 --- a/database/entity/0033-add_referrer_id/User.ts +++ b/database/entity/0033-add_referrer_id/User.ts @@ -1,10 +1,10 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, - OneToMany, DeleteDateColumn, + Entity, + OneToMany, + PrimaryGeneratedColumn, } from 'typeorm' import { UserSetting } from '../0002-add_settings/UserSetting' @@ -73,6 +73,9 @@ export class User extends BaseEntity { }) passphrase: string - @OneToMany(() => UserSetting, (userSetting) => userSetting.user) + @OneToMany( + () => UserSetting, + (userSetting) => userSetting.user, + ) settings: UserSetting[] } diff --git a/database/entity/0034-drop_server_user_table/User.ts b/database/entity/0034-drop_server_user_table/User.ts index 82fd72009..b304a5c28 100644 --- a/database/entity/0034-drop_server_user_table/User.ts +++ b/database/entity/0034-drop_server_user_table/User.ts @@ -1,10 +1,10 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, - OneToMany, DeleteDateColumn, + Entity, + OneToMany, + PrimaryGeneratedColumn, } from 'typeorm' import { UserSetting } from '../0002-add_settings/UserSetting' @@ -76,6 +76,9 @@ export class User extends BaseEntity { }) passphrase: string - @OneToMany(() => UserSetting, (userSetting) => userSetting.user) + @OneToMany( + () => UserSetting, + (userSetting) => userSetting.user, + ) settings: UserSetting[] } diff --git a/database/entity/0036-unique_previous_in_transactions/Transaction.ts b/database/entity/0036-unique_previous_in_transactions/Transaction.ts index 2f2899429..eef845330 100644 --- a/database/entity/0036-unique_previous_in_transactions/Transaction.ts +++ b/database/entity/0036-unique_previous_in_transactions/Transaction.ts @@ -1,6 +1,5 @@ -/* eslint-disable no-use-before-define */ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne, JoinColumn } from 'typeorm' +import { BaseEntity, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' import { Contribution } from '../Contribution' @@ -94,7 +93,10 @@ export class Transaction extends BaseEntity { }) transactionLinkId?: number | null - @OneToOne(() => Contribution, (contribution) => contribution.transaction) + @OneToOne( + () => Contribution, + (contribution) => contribution.transaction, + ) @JoinColumn({ name: 'id', referencedColumnName: 'transactionId' }) contribution?: Contribution | null diff --git a/database/entity/0037-drop_user_setting_table/User.ts b/database/entity/0037-drop_user_setting_table/User.ts index 528cef32b..2dff80d4b 100644 --- a/database/entity/0037-drop_user_setting_table/User.ts +++ b/database/entity/0037-drop_user_setting_table/User.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, DeleteDateColumn } from 'typeorm' +import { BaseEntity, Column, DeleteDateColumn, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('users', { engine: 'InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci' }) export class User extends BaseEntity { diff --git a/database/entity/0038-add_contribution_links_table/ContributionLink.ts b/database/entity/0038-add_contribution_links_table/ContributionLink.ts index 3d79e84fd..f64b92208 100644 --- a/database/entity/0038-add_contribution_links_table/ContributionLink.ts +++ b/database/entity/0038-add_contribution_links_table/ContributionLink.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, DeleteDateColumn } from 'typeorm' +import { BaseEntity, Column, DeleteDateColumn, Entity, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' @Entity('contribution_links') diff --git a/database/entity/0039-contributions_table/Contribution.ts b/database/entity/0039-contributions_table/Contribution.ts index 7b0abd29a..116638c54 100644 --- a/database/entity/0039-contributions_table/Contribution.ts +++ b/database/entity/0039-contributions_table/Contribution.ts @@ -2,11 +2,11 @@ import { Decimal } from 'decimal.js-light' import { BaseEntity, Column, - Entity, - PrimaryGeneratedColumn, DeleteDateColumn, + Entity, JoinColumn, ManyToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' import { User } from '../User' @@ -19,7 +19,10 @@ export class Contribution extends BaseEntity { @Column({ unsigned: true, nullable: false, name: 'user_id' }) userId: number - @ManyToOne(() => User, (user) => user.contributions) + @ManyToOne( + () => User, + (user) => user.contributions, + ) @JoinColumn({ name: 'user_id' }) user: User diff --git a/database/entity/0039-contributions_table/User.ts b/database/entity/0039-contributions_table/User.ts index 147ae6f6f..31f78cffd 100644 --- a/database/entity/0039-contributions_table/User.ts +++ b/database/entity/0039-contributions_table/User.ts @@ -1,11 +1,11 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, + PrimaryGeneratedColumn, } from 'typeorm' import { Contribution } from '../Contribution' @@ -77,7 +77,10 @@ export class User extends BaseEntity { }) passphrase: string - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] } diff --git a/database/entity/0040-add_contribution_link_id_to_user/User.ts b/database/entity/0040-add_contribution_link_id_to_user/User.ts index 56047345a..79bccec0d 100644 --- a/database/entity/0040-add_contribution_link_id_to_user/User.ts +++ b/database/entity/0040-add_contribution_link_id_to_user/User.ts @@ -1,11 +1,11 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, + PrimaryGeneratedColumn, } from 'typeorm' import { Contribution } from '../Contribution' @@ -86,7 +86,10 @@ export class User extends BaseEntity { }) passphrase: string - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] } diff --git a/database/entity/0043-add_event_protocol_table/EventProtocol.ts b/database/entity/0043-add_event_protocol_table/EventProtocol.ts index 13eebcce5..df0e84de8 100644 --- a/database/entity/0043-add_event_protocol_table/EventProtocol.ts +++ b/database/entity/0043-add_event_protocol_table/EventProtocol.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' @Entity('event_protocol') diff --git a/database/entity/0045-add_denied_type_and_status_to_contributions/Contribution.ts b/database/entity/0045-add_denied_type_and_status_to_contributions/Contribution.ts index 21300fd4d..8d5d4cbf8 100644 --- a/database/entity/0045-add_denied_type_and_status_to_contributions/Contribution.ts +++ b/database/entity/0045-add_denied_type_and_status_to_contributions/Contribution.ts @@ -2,11 +2,11 @@ import { Decimal } from 'decimal.js-light' import { BaseEntity, Column, - Entity, - PrimaryGeneratedColumn, DeleteDateColumn, + Entity, JoinColumn, ManyToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' import { User } from '../User' @@ -19,7 +19,10 @@ export class Contribution extends BaseEntity { @Column({ unsigned: true, nullable: false, name: 'user_id' }) userId: number - @ManyToOne(() => User, (user) => user.contributions) + @ManyToOne( + () => User, + (user) => user.contributions, + ) @JoinColumn({ name: 'user_id' }) user: User diff --git a/database/entity/0046-adapt_users_table_for_gradidoid/User.ts b/database/entity/0046-adapt_users_table_for_gradidoid/User.ts index 3f2547cad..bff248f6d 100644 --- a/database/entity/0046-adapt_users_table_for_gradidoid/User.ts +++ b/database/entity/0046-adapt_users_table_for_gradidoid/User.ts @@ -1,11 +1,11 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, + PrimaryGeneratedColumn, } from 'typeorm' import { Contribution } from '../Contribution' @@ -105,7 +105,10 @@ export class User extends BaseEntity { }) passphrase: string - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] } diff --git a/database/entity/0047-messages_tables/Contribution.ts b/database/entity/0047-messages_tables/Contribution.ts index 323bf91b6..48711c531 100644 --- a/database/entity/0047-messages_tables/Contribution.ts +++ b/database/entity/0047-messages_tables/Contribution.ts @@ -2,16 +2,16 @@ import { Decimal } from 'decimal.js-light' import { BaseEntity, Column, - Entity, - PrimaryGeneratedColumn, DeleteDateColumn, + Entity, JoinColumn, ManyToOne, OneToMany, + PrimaryGeneratedColumn, } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' -import { User } from '../User' import { ContributionMessage } from '../ContributionMessage' +import { User } from '../User' @Entity('contributions') export class Contribution extends BaseEntity { @@ -21,7 +21,10 @@ export class Contribution extends BaseEntity { @Column({ unsigned: true, nullable: false, name: 'user_id' }) userId: number - @ManyToOne(() => User, (user) => user.contributions) + @ManyToOne( + () => User, + (user) => user.contributions, + ) @JoinColumn({ name: 'user_id' }) user: User @@ -83,7 +86,10 @@ export class Contribution extends BaseEntity { @DeleteDateColumn({ name: 'deleted_at' }) deletedAt: Date | null - @OneToMany(() => ContributionMessage, (message) => message.contribution) + @OneToMany( + () => ContributionMessage, + (message) => message.contribution, + ) @JoinColumn({ name: 'contribution_id' }) messages?: ContributionMessage[] } diff --git a/database/entity/0047-messages_tables/ContributionMessage.ts b/database/entity/0047-messages_tables/ContributionMessage.ts index e5226043d..0dbaee232 100644 --- a/database/entity/0047-messages_tables/ContributionMessage.ts +++ b/database/entity/0047-messages_tables/ContributionMessage.ts @@ -20,14 +20,20 @@ export class ContributionMessage extends BaseEntity { @Column({ name: 'contribution_id', unsigned: true, nullable: false }) contributionId: number - @ManyToOne(() => Contribution, (contribution) => contribution.messages) + @ManyToOne( + () => Contribution, + (contribution) => contribution.messages, + ) @JoinColumn({ name: 'contribution_id' }) contribution: Contribution @Column({ name: 'user_id', unsigned: true, nullable: false }) userId: number - @ManyToOne(() => User, (user) => user.messages) + @ManyToOne( + () => User, + (user) => user.messages, + ) @JoinColumn({ name: 'user_id' }) user: User diff --git a/database/entity/0047-messages_tables/User.ts b/database/entity/0047-messages_tables/User.ts index a772a3c99..1ebfb0586 100644 --- a/database/entity/0047-messages_tables/User.ts +++ b/database/entity/0047-messages_tables/User.ts @@ -1,11 +1,11 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, + PrimaryGeneratedColumn, } from 'typeorm' import { Contribution } from '../Contribution' import { ContributionMessage } from '../ContributionMessage' @@ -106,11 +106,17 @@ export class User extends BaseEntity { }) passphrase: string - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] - @OneToMany(() => ContributionMessage, (message) => message.user) + @OneToMany( + () => ContributionMessage, + (message) => message.user, + ) @JoinColumn({ name: 'user_id' }) messages?: ContributionMessage[] } diff --git a/database/entity/0048-add_is_moderator_to_contribution_messages/ContributionMessage.ts b/database/entity/0048-add_is_moderator_to_contribution_messages/ContributionMessage.ts index dd3787547..a6e37729e 100644 --- a/database/entity/0048-add_is_moderator_to_contribution_messages/ContributionMessage.ts +++ b/database/entity/0048-add_is_moderator_to_contribution_messages/ContributionMessage.ts @@ -20,14 +20,20 @@ export class ContributionMessage extends BaseEntity { @Column({ name: 'contribution_id', unsigned: true, nullable: false }) contributionId: number - @ManyToOne(() => Contribution, (contribution) => contribution.messages) + @ManyToOne( + () => Contribution, + (contribution) => contribution.messages, + ) @JoinColumn({ name: 'contribution_id' }) contribution: Contribution @Column({ name: 'user_id', unsigned: true, nullable: false }) userId: number - @ManyToOne(() => User, (user) => user.messages) + @ManyToOne( + () => User, + (user) => user.messages, + ) @JoinColumn({ name: 'user_id' }) user: User diff --git a/database/entity/0049-add_user_contacts_table/User.ts b/database/entity/0049-add_user_contacts_table/User.ts index abe40df54..46b65f005 100644 --- a/database/entity/0049-add_user_contacts_table/User.ts +++ b/database/entity/0049-add_user_contacts_table/User.ts @@ -1,12 +1,12 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { Contribution } from '../Contribution' import { ContributionMessage } from '../ContributionMessage' @@ -44,7 +44,10 @@ export class User extends BaseEntity { @Column({ length: 255, unique: true, nullable: false, collation: 'utf8mb4_unicode_ci' }) email: string */ - @OneToOne(() => UserContact, (emailContact: UserContact) => emailContact.user) + @OneToOne( + () => UserContact, + (emailContact: UserContact) => emailContact.user, + ) @JoinColumn({ name: 'email_id' }) emailContact: UserContact @@ -112,15 +115,24 @@ export class User extends BaseEntity { }) passphrase: string - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] - @OneToMany(() => ContributionMessage, (message) => message.user) + @OneToMany( + () => ContributionMessage, + (message) => message.user, + ) @JoinColumn({ name: 'user_id' }) messages?: ContributionMessage[] - @OneToMany(() => UserContact, (userContact: UserContact) => userContact.user) + @OneToMany( + () => UserContact, + (userContact: UserContact) => userContact.user, + ) @JoinColumn({ name: 'user_id' }) userContacts?: UserContact[] } diff --git a/database/entity/0049-add_user_contacts_table/UserContact.ts b/database/entity/0049-add_user_contacts_table/UserContact.ts index 97b12d4cd..54382ec56 100644 --- a/database/entity/0049-add_user_contacts_table/UserContact.ts +++ b/database/entity/0049-add_user_contacts_table/UserContact.ts @@ -1,10 +1,10 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, + Entity, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { User } from './User' @@ -22,7 +22,10 @@ export class UserContact extends BaseEntity { }) type: string - @OneToOne(() => User, (user) => user.emailContact) + @OneToOne( + () => User, + (user) => user.emailContact, + ) user: User @Column({ name: 'user_id', type: 'int', unsigned: true, nullable: false }) diff --git a/database/entity/0050-add_messageId_to_event_protocol/EventProtocol.ts b/database/entity/0050-add_messageId_to_event_protocol/EventProtocol.ts index ca7d27069..1607e9431 100644 --- a/database/entity/0050-add_messageId_to_event_protocol/EventProtocol.ts +++ b/database/entity/0050-add_messageId_to_event_protocol/EventProtocol.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' @Entity('event_protocol') diff --git a/database/entity/0051-add_delete_by_to_contributions/Contribution.ts b/database/entity/0051-add_delete_by_to_contributions/Contribution.ts index 8e8d0d172..0ebf1cf1f 100644 --- a/database/entity/0051-add_delete_by_to_contributions/Contribution.ts +++ b/database/entity/0051-add_delete_by_to_contributions/Contribution.ts @@ -2,16 +2,16 @@ import { Decimal } from 'decimal.js-light' import { BaseEntity, Column, - Entity, - PrimaryGeneratedColumn, DeleteDateColumn, + Entity, JoinColumn, ManyToOne, OneToMany, + PrimaryGeneratedColumn, } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' -import { User } from '../User' import { ContributionMessage } from '../ContributionMessage' +import { User } from '../User' @Entity('contributions') export class Contribution extends BaseEntity { @@ -21,7 +21,10 @@ export class Contribution extends BaseEntity { @Column({ unsigned: true, nullable: false, name: 'user_id' }) userId: number - @ManyToOne(() => User, (user) => user.contributions) + @ManyToOne( + () => User, + (user) => user.contributions, + ) @JoinColumn({ name: 'user_id' }) user: User @@ -86,7 +89,10 @@ export class Contribution extends BaseEntity { @DeleteDateColumn({ unsigned: true, nullable: true, name: 'deleted_by' }) deletedBy: number - @OneToMany(() => ContributionMessage, (message) => message.contribution) + @OneToMany( + () => ContributionMessage, + (message) => message.contribution, + ) @JoinColumn({ name: 'contribution_id' }) messages?: ContributionMessage[] } diff --git a/database/entity/0052-add_updated_at_to_contributions/Contribution.ts b/database/entity/0052-add_updated_at_to_contributions/Contribution.ts index 941e9da38..fa1f6a72c 100644 --- a/database/entity/0052-add_updated_at_to_contributions/Contribution.ts +++ b/database/entity/0052-add_updated_at_to_contributions/Contribution.ts @@ -2,18 +2,18 @@ import { Decimal } from 'decimal.js-light' import { BaseEntity, Column, - Entity, - PrimaryGeneratedColumn, DeleteDateColumn, + Entity, JoinColumn, ManyToOne, OneToMany, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' -import { User } from '../User' import { ContributionMessage } from '../ContributionMessage' import { Transaction } from '../Transaction' +import { User } from '../User' @Entity('contributions') export class Contribution extends BaseEntity { @@ -23,7 +23,10 @@ export class Contribution extends BaseEntity { @Column({ unsigned: true, nullable: false, name: 'user_id' }) userId: number - @ManyToOne(() => User, (user) => user.contributions) + @ManyToOne( + () => User, + (user) => user.contributions, + ) @JoinColumn({ name: 'user_id' }) user: User @@ -91,11 +94,17 @@ export class Contribution extends BaseEntity { @DeleteDateColumn({ unsigned: true, nullable: true, name: 'deleted_by' }) deletedBy: number - @OneToMany(() => ContributionMessage, (message) => message.contribution) + @OneToMany( + () => ContributionMessage, + (message) => message.contribution, + ) @JoinColumn({ name: 'contribution_id' }) messages?: ContributionMessage[] - @OneToOne(() => Transaction, (transaction) => transaction.contribution) + @OneToOne( + () => Transaction, + (transaction) => transaction.contribution, + ) @JoinColumn({ name: 'transaction_id' }) transaction?: Transaction | null } diff --git a/database/entity/0053-change_password_encryption/User.ts b/database/entity/0053-change_password_encryption/User.ts index 2a3332925..18b90a26f 100644 --- a/database/entity/0053-change_password_encryption/User.ts +++ b/database/entity/0053-change_password_encryption/User.ts @@ -1,12 +1,12 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { Contribution } from '../Contribution' import { ContributionMessage } from '../ContributionMessage' @@ -49,7 +49,10 @@ export class User extends BaseEntity { }) passphrase: string - @OneToOne(() => UserContact, (emailContact: UserContact) => emailContact.user) + @OneToOne( + () => UserContact, + (emailContact: UserContact) => emailContact.user, + ) @JoinColumn({ name: 'email_id' }) emailContact: UserContact @@ -113,15 +116,24 @@ export class User extends BaseEntity { @Column({ name: 'publisher_id', default: 0 }) publisherId: number - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] - @OneToMany(() => ContributionMessage, (message) => message.user) + @OneToMany( + () => ContributionMessage, + (message) => message.user, + ) @JoinColumn({ name: 'user_id' }) messages?: ContributionMessage[] - @OneToMany(() => UserContact, (userContact: UserContact) => userContact.user) + @OneToMany( + () => UserContact, + (userContact: UserContact) => userContact.user, + ) @JoinColumn({ name: 'user_id' }) userContacts?: UserContact[] } diff --git a/database/entity/0053-change_password_encryption/UserContact.ts b/database/entity/0053-change_password_encryption/UserContact.ts index 97b12d4cd..54382ec56 100644 --- a/database/entity/0053-change_password_encryption/UserContact.ts +++ b/database/entity/0053-change_password_encryption/UserContact.ts @@ -1,10 +1,10 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, + Entity, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { User } from './User' @@ -22,7 +22,10 @@ export class UserContact extends BaseEntity { }) type: string - @OneToOne(() => User, (user) => user.emailContact) + @OneToOne( + () => User, + (user) => user.emailContact, + ) user: User @Column({ name: 'user_id', type: 'int', unsigned: true, nullable: false }) diff --git a/database/entity/0057-clear_old_password_junk/User.ts b/database/entity/0057-clear_old_password_junk/User.ts index c511a98c8..f78beafd4 100644 --- a/database/entity/0057-clear_old_password_junk/User.ts +++ b/database/entity/0057-clear_old_password_junk/User.ts @@ -1,12 +1,12 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { Contribution } from '../Contribution' import { ContributionMessage } from '../ContributionMessage' @@ -34,7 +34,10 @@ export class User extends BaseEntity { }) alias: string - @OneToOne(() => UserContact, (emailContact: UserContact) => emailContact.user) + @OneToOne( + () => UserContact, + (emailContact: UserContact) => emailContact.user, + ) @JoinColumn({ name: 'email_id' }) emailContact: UserContact @@ -98,15 +101,24 @@ export class User extends BaseEntity { @Column({ name: 'publisher_id', default: 0 }) publisherId: number - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] - @OneToMany(() => ContributionMessage, (message) => message.user) + @OneToMany( + () => ContributionMessage, + (message) => message.user, + ) @JoinColumn({ name: 'user_id' }) messages?: ContributionMessage[] - @OneToMany(() => UserContact, (userContact: UserContact) => userContact.user) + @OneToMany( + () => UserContact, + (userContact: UserContact) => userContact.user, + ) @JoinColumn({ name: 'user_id' }) userContacts?: UserContact[] } diff --git a/database/entity/0057-clear_old_password_junk/UserContact.ts b/database/entity/0057-clear_old_password_junk/UserContact.ts index 6064a3ea3..2e85e13e5 100644 --- a/database/entity/0057-clear_old_password_junk/UserContact.ts +++ b/database/entity/0057-clear_old_password_junk/UserContact.ts @@ -1,10 +1,10 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, + Entity, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { User } from '../User' @@ -22,7 +22,10 @@ export class UserContact extends BaseEntity { }) type: string - @OneToOne(() => User, (user) => user.emailContact) + @OneToOne( + () => User, + (user) => user.emailContact, + ) user: User @Column({ name: 'user_id', type: 'int', unsigned: true, nullable: false }) diff --git a/database/entity/0058-add_communities_table/Community.ts b/database/entity/0058-add_communities_table/Community.ts index f2d071ce4..4deeb6d6d 100644 --- a/database/entity/0058-add_communities_table/Community.ts +++ b/database/entity/0058-add_communities_table/Community.ts @@ -1,9 +1,9 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, + Entity, + PrimaryGeneratedColumn, UpdateDateColumn, } from 'typeorm' diff --git a/database/entity/0059-add_hide_amount_to_users/User.ts b/database/entity/0059-add_hide_amount_to_users/User.ts index ba9e5fc49..f63c6cf2f 100644 --- a/database/entity/0059-add_hide_amount_to_users/User.ts +++ b/database/entity/0059-add_hide_amount_to_users/User.ts @@ -1,12 +1,12 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { Contribution } from '../Contribution' import { ContributionMessage } from '../ContributionMessage' @@ -34,7 +34,10 @@ export class User extends BaseEntity { }) alias: string - @OneToOne(() => UserContact, (emailContact: UserContact) => emailContact.user) + @OneToOne( + () => UserContact, + (emailContact: UserContact) => emailContact.user, + ) @JoinColumn({ name: 'email_id' }) emailContact: UserContact @@ -104,15 +107,24 @@ export class User extends BaseEntity { @Column({ name: 'publisher_id', default: 0 }) publisherId: number - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] - @OneToMany(() => ContributionMessage, (message) => message.user) + @OneToMany( + () => ContributionMessage, + (message) => message.user, + ) @JoinColumn({ name: 'user_id' }) messages?: ContributionMessage[] - @OneToMany(() => UserContact, (userContact: UserContact) => userContact.user) + @OneToMany( + () => UserContact, + (userContact: UserContact) => userContact.user, + ) @JoinColumn({ name: 'user_id' }) userContacts?: UserContact[] } diff --git a/database/entity/0060-update_communities_table/Community.ts b/database/entity/0060-update_communities_table/Community.ts index ab7cfb58a..68b1d6ef0 100644 --- a/database/entity/0060-update_communities_table/Community.ts +++ b/database/entity/0060-update_communities_table/Community.ts @@ -1,9 +1,9 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, + Entity, + PrimaryGeneratedColumn, UpdateDateColumn, } from 'typeorm' diff --git a/database/entity/0061-event_refactoring/Event.ts b/database/entity/0061-event_refactoring/Event.ts index a2fbf0adf..755a4aca6 100644 --- a/database/entity/0061-event_refactoring/Event.ts +++ b/database/entity/0061-event_refactoring/Event.ts @@ -1,18 +1,18 @@ -import { Contribution } from '../Contribution' -import { ContributionMessage } from '../ContributionMessage' -import { User } from '../User' -import { Transaction } from '../Transaction' import { Decimal } from 'decimal.js-light' import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, - ManyToOne, + Entity, JoinColumn, + ManyToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' +import { Contribution } from '../Contribution' +import { ContributionMessage } from '../ContributionMessage' +import { Transaction } from '../Transaction' +import { User } from '../User' @Entity('events') export class Event extends BaseEntity { diff --git a/database/entity/0063-event_link_fields/Event.ts b/database/entity/0063-event_link_fields/Event.ts index 40f1ea7c0..d84adac1c 100644 --- a/database/entity/0063-event_link_fields/Event.ts +++ b/database/entity/0063-event_link_fields/Event.ts @@ -1,20 +1,20 @@ -import { Contribution } from '../Contribution' -import { ContributionMessage } from '../ContributionMessage' -import { User } from '../User' -import { Transaction } from '../Transaction' import { Decimal } from 'decimal.js-light' import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, - ManyToOne, + Entity, JoinColumn, + ManyToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' -import { TransactionLink } from '../TransactionLink' +import { Contribution } from '../Contribution' import { ContributionLink } from '../ContributionLink' +import { ContributionMessage } from '../ContributionMessage' +import { Transaction } from '../Transaction' +import { TransactionLink } from '../TransactionLink' +import { User } from '../User' @Entity('events') export class Event extends BaseEntity { diff --git a/database/entity/0065-refactor_communities_table/Community.ts b/database/entity/0065-refactor_communities_table/Community.ts index 5857634a6..52c8914f0 100644 --- a/database/entity/0065-refactor_communities_table/Community.ts +++ b/database/entity/0065-refactor_communities_table/Community.ts @@ -1,9 +1,9 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, + Entity, + PrimaryGeneratedColumn, UpdateDateColumn, } from 'typeorm' diff --git a/database/entity/0065-refactor_communities_table/FederatedCommunity.ts b/database/entity/0065-refactor_communities_table/FederatedCommunity.ts index 0adbf4612..85f9fd038 100644 --- a/database/entity/0065-refactor_communities_table/FederatedCommunity.ts +++ b/database/entity/0065-refactor_communities_table/FederatedCommunity.ts @@ -1,9 +1,9 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, + Entity, + PrimaryGeneratedColumn, UpdateDateColumn, } from 'typeorm' diff --git a/database/entity/0066-x-community-sendcoins-transactions_table/Transaction.ts b/database/entity/0066-x-community-sendcoins-transactions_table/Transaction.ts index 105972310..905f17830 100644 --- a/database/entity/0066-x-community-sendcoins-transactions_table/Transaction.ts +++ b/database/entity/0066-x-community-sendcoins-transactions_table/Transaction.ts @@ -1,6 +1,5 @@ -/* eslint-disable no-use-before-define */ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne, JoinColumn } from 'typeorm' +import { BaseEntity, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' import { Contribution } from '../Contribution' @@ -130,7 +129,10 @@ export class Transaction extends BaseEntity { }) linkedTransactionId?: number | null - @OneToOne(() => Contribution, (contribution) => contribution.transaction) + @OneToOne( + () => Contribution, + (contribution) => contribution.transaction, + ) @JoinColumn({ name: 'id', referencedColumnName: 'transactionId' }) contribution?: Contribution | null diff --git a/database/entity/0067-private_key_in_community_table/Community.ts b/database/entity/0067-private_key_in_community_table/Community.ts index dcb55c875..fedf25deb 100644 --- a/database/entity/0067-private_key_in_community_table/Community.ts +++ b/database/entity/0067-private_key_in_community_table/Community.ts @@ -1,9 +1,9 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, + Entity, + PrimaryGeneratedColumn, UpdateDateColumn, } from 'typeorm' diff --git a/database/entity/0068-community_tables_public_key_length/Community.ts b/database/entity/0068-community_tables_public_key_length/Community.ts index e6f8d255c..ececa886f 100644 --- a/database/entity/0068-community_tables_public_key_length/Community.ts +++ b/database/entity/0068-community_tables_public_key_length/Community.ts @@ -1,9 +1,9 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, + Entity, + PrimaryGeneratedColumn, UpdateDateColumn, } from 'typeorm' diff --git a/database/entity/0068-community_tables_public_key_length/FederatedCommunity.ts b/database/entity/0068-community_tables_public_key_length/FederatedCommunity.ts index 7dd49a1d6..97d1b56c0 100644 --- a/database/entity/0068-community_tables_public_key_length/FederatedCommunity.ts +++ b/database/entity/0068-community_tables_public_key_length/FederatedCommunity.ts @@ -1,9 +1,9 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, + Entity, + PrimaryGeneratedColumn, UpdateDateColumn, } from 'typeorm' diff --git a/database/entity/0069-add_user_roles_table/User.ts b/database/entity/0069-add_user_roles_table/User.ts index a49bb4b87..55a0a64a2 100644 --- a/database/entity/0069-add_user_roles_table/User.ts +++ b/database/entity/0069-add_user_roles_table/User.ts @@ -1,12 +1,12 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { Contribution } from '../Contribution' import { ContributionMessage } from '../ContributionMessage' @@ -35,7 +35,10 @@ export class User extends BaseEntity { }) alias: string - @OneToOne(() => UserContact, (emailContact: UserContact) => emailContact.user) + @OneToOne( + () => UserContact, + (emailContact: UserContact) => emailContact.user, + ) @JoinColumn({ name: 'email_id' }) emailContact: UserContact @@ -87,7 +90,10 @@ export class User extends BaseEntity { @Column({ type: 'bool', default: false }) hideAmountGDT: boolean - @OneToMany(() => UserRole, (userRole) => userRole.user) + @OneToMany( + () => UserRole, + (userRole) => userRole.user, + ) @JoinColumn({ name: 'user_id' }) userRoles: UserRole[] @@ -106,15 +112,24 @@ export class User extends BaseEntity { @Column({ name: 'publisher_id', default: 0 }) publisherId: number - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] - @OneToMany(() => ContributionMessage, (message) => message.user) + @OneToMany( + () => ContributionMessage, + (message) => message.user, + ) @JoinColumn({ name: 'user_id' }) messages?: ContributionMessage[] - @OneToMany(() => UserContact, (userContact: UserContact) => userContact.user) + @OneToMany( + () => UserContact, + (userContact: UserContact) => userContact.user, + ) @JoinColumn({ name: 'user_id' }) userContacts?: UserContact[] } diff --git a/database/entity/0069-add_user_roles_table/UserRole.ts b/database/entity/0069-add_user_roles_table/UserRole.ts index 118753b20..4d1e3f87d 100644 --- a/database/entity/0069-add_user_roles_table/UserRole.ts +++ b/database/entity/0069-add_user_roles_table/UserRole.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, ManyToOne, JoinColumn } from 'typeorm' +import { BaseEntity, Column, Entity, JoinColumn, ManyToOne, PrimaryGeneratedColumn } from 'typeorm' import { User } from '../User' @Entity('user_roles', { engine: 'InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci' }) @@ -18,7 +18,10 @@ export class UserRole extends BaseEntity { @Column({ name: 'updated_at', nullable: true, default: null, type: 'datetime' }) updatedAt: Date | null - @ManyToOne(() => User, (user) => user.userRoles) + @ManyToOne( + () => User, + (user) => user.userRoles, + ) @JoinColumn({ name: 'user_id' }) user: User } diff --git a/database/entity/0070-add_dlt_transactions_table/DltTransaction.ts b/database/entity/0070-add_dlt_transactions_table/DltTransaction.ts index 2251a6a42..c2f28593a 100644 --- a/database/entity/0070-add_dlt_transactions_table/DltTransaction.ts +++ b/database/entity/0070-add_dlt_transactions_table/DltTransaction.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne, JoinColumn } from 'typeorm' +import { BaseEntity, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { Transaction } from '../Transaction' @Entity('dlt_transactions', { engine: 'InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci' }) @@ -27,7 +27,10 @@ export class DltTransaction extends BaseEntity { @Column({ name: 'verified_at', nullable: true, default: null, type: 'datetime' }) verifiedAt: Date | null - @OneToOne(() => Transaction, (transaction) => transaction.dltTransaction) + @OneToOne( + () => Transaction, + (transaction) => transaction.dltTransaction, + ) @JoinColumn({ name: 'transactions_id' }) transaction?: Transaction | null } diff --git a/database/entity/0070-add_dlt_transactions_table/Transaction.ts b/database/entity/0070-add_dlt_transactions_table/Transaction.ts index 0684bc3db..4620ad231 100644 --- a/database/entity/0070-add_dlt_transactions_table/Transaction.ts +++ b/database/entity/0070-add_dlt_transactions_table/Transaction.ts @@ -1,6 +1,5 @@ -/* eslint-disable no-use-before-define */ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne, JoinColumn } from 'typeorm' +import { BaseEntity, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' import { Contribution } from '../Contribution' import { DltTransaction } from './DltTransaction' @@ -131,11 +130,17 @@ export class Transaction extends BaseEntity { }) linkedTransactionId?: number | null - @OneToOne(() => Contribution, (contribution) => contribution.transaction) + @OneToOne( + () => Contribution, + (contribution) => contribution.transaction, + ) @JoinColumn({ name: 'id', referencedColumnName: 'transactionId' }) contribution?: Contribution | null - @OneToOne(() => DltTransaction, (dlt) => dlt.transactionId) + @OneToOne( + () => DltTransaction, + (dlt) => dlt.transactionId, + ) @JoinColumn({ name: 'id', referencedColumnName: 'transactionId' }) dltTransaction?: DltTransaction | null diff --git a/database/entity/0071-add-pending_transactions-table/PendingTransaction.ts b/database/entity/0071-add-pending_transactions-table/PendingTransaction.ts index e11a31f3b..65febfded 100644 --- a/database/entity/0071-add-pending_transactions-table/PendingTransaction.ts +++ b/database/entity/0071-add-pending_transactions-table/PendingTransaction.ts @@ -1,6 +1,5 @@ -/* eslint-disable no-use-before-define */ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' @Entity('pending_transactions') diff --git a/database/entity/0072-add_communityuuid_to_transactions_table/Transaction.ts b/database/entity/0072-add_communityuuid_to_transactions_table/Transaction.ts index 8f13de58a..f3e3b2281 100644 --- a/database/entity/0072-add_communityuuid_to_transactions_table/Transaction.ts +++ b/database/entity/0072-add_communityuuid_to_transactions_table/Transaction.ts @@ -1,6 +1,5 @@ -/* eslint-disable no-use-before-define */ import { Decimal } from 'decimal.js-light' -import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne, JoinColumn } from 'typeorm' +import { BaseEntity, Column, Entity, JoinColumn, OneToOne, PrimaryGeneratedColumn } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' import { Contribution } from '../Contribution' import { DltTransaction } from '../DltTransaction' @@ -149,11 +148,17 @@ export class Transaction extends BaseEntity { }) linkedTransactionId?: number | null - @OneToOne(() => Contribution, (contribution) => contribution.transaction) + @OneToOne( + () => Contribution, + (contribution) => contribution.transaction, + ) @JoinColumn({ name: 'id', referencedColumnName: 'transactionId' }) contribution?: Contribution | null - @OneToOne(() => DltTransaction, (dlt) => dlt.transactionId) + @OneToOne( + () => DltTransaction, + (dlt) => dlt.transactionId, + ) @JoinColumn({ name: 'id', referencedColumnName: 'transactionId' }) dltTransaction?: DltTransaction | null diff --git a/database/entity/0073-introduce_foreign_user_in_users_table/User.ts b/database/entity/0073-introduce_foreign_user_in_users_table/User.ts index e842d8092..0cc820c3f 100644 --- a/database/entity/0073-introduce_foreign_user_in_users_table/User.ts +++ b/database/entity/0073-introduce_foreign_user_in_users_table/User.ts @@ -1,12 +1,12 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { Contribution } from '../Contribution' import { ContributionMessage } from '../ContributionMessage' @@ -47,7 +47,10 @@ export class User extends BaseEntity { }) alias: string - @OneToOne(() => UserContact, (emailContact: UserContact) => emailContact.user) + @OneToOne( + () => UserContact, + (emailContact: UserContact) => emailContact.user, + ) @JoinColumn({ name: 'email_id' }) emailContact: UserContact @@ -99,7 +102,10 @@ export class User extends BaseEntity { @Column({ type: 'bool', default: false }) hideAmountGDT: boolean - @OneToMany(() => UserRole, (userRole) => userRole.user) + @OneToMany( + () => UserRole, + (userRole) => userRole.user, + ) @JoinColumn({ name: 'user_id' }) userRoles: UserRole[] @@ -118,15 +124,24 @@ export class User extends BaseEntity { @Column({ name: 'publisher_id', default: 0 }) publisherId: number - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] - @OneToMany(() => ContributionMessage, (message) => message.user) + @OneToMany( + () => ContributionMessage, + (message) => message.user, + ) @JoinColumn({ name: 'user_id' }) messages?: ContributionMessage[] - @OneToMany(() => UserContact, (userContact: UserContact) => userContact.user) + @OneToMany( + () => UserContact, + (userContact: UserContact) => userContact.user, + ) @JoinColumn({ name: 'user_id' }) userContacts?: UserContact[] } diff --git a/database/entity/0075-contribution_message_add_index/ContributionMessage.ts b/database/entity/0075-contribution_message_add_index/ContributionMessage.ts index dde11a0f9..96c90ea24 100644 --- a/database/entity/0075-contribution_message_add_index/ContributionMessage.ts +++ b/database/entity/0075-contribution_message_add_index/ContributionMessage.ts @@ -22,14 +22,20 @@ export class ContributionMessage extends BaseEntity { @Column({ name: 'contribution_id', unsigned: true, nullable: false }) contributionId: number - @ManyToOne(() => Contribution, (contribution) => contribution.messages) + @ManyToOne( + () => Contribution, + (contribution) => contribution.messages, + ) @JoinColumn({ name: 'contribution_id' }) contribution: Contribution @Column({ name: 'user_id', unsigned: true, nullable: false }) userId: number - @ManyToOne(() => User, (user) => user.messages) + @ManyToOne( + () => User, + (user) => user.messages, + ) @JoinColumn({ name: 'user_id' }) user: User diff --git a/database/entity/0076-add_updated_by_contribution/Contribution.ts b/database/entity/0076-add_updated_by_contribution/Contribution.ts index 8ed8c82d5..df96da108 100644 --- a/database/entity/0076-add_updated_by_contribution/Contribution.ts +++ b/database/entity/0076-add_updated_by_contribution/Contribution.ts @@ -2,18 +2,18 @@ import { Decimal } from 'decimal.js-light' import { BaseEntity, Column, - Entity, - PrimaryGeneratedColumn, DeleteDateColumn, + Entity, JoinColumn, ManyToOne, OneToMany, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' -import { User } from '../User' import { ContributionMessage } from '../ContributionMessage' import { Transaction } from '../Transaction' +import { User } from '../User' @Entity('contributions') export class Contribution extends BaseEntity { @@ -23,7 +23,10 @@ export class Contribution extends BaseEntity { @Column({ unsigned: true, nullable: false, name: 'user_id' }) userId: number - @ManyToOne(() => User, (user) => user.contributions) + @ManyToOne( + () => User, + (user) => user.contributions, + ) @JoinColumn({ name: 'user_id' }) user: User @@ -94,11 +97,17 @@ export class Contribution extends BaseEntity { @DeleteDateColumn({ unsigned: true, nullable: true, name: 'deleted_by' }) deletedBy: number - @OneToMany(() => ContributionMessage, (message) => message.contribution) + @OneToMany( + () => ContributionMessage, + (message) => message.contribution, + ) @JoinColumn({ name: 'contribution_id' }) messages?: ContributionMessage[] - @OneToOne(() => Transaction, (transaction) => transaction.contribution) + @OneToOne( + () => Transaction, + (transaction) => transaction.contribution, + ) @JoinColumn({ name: 'transaction_id' }) transaction?: Transaction | null } diff --git a/database/entity/0077-add_resubmission_date_contribution_message/ContributionMessage.ts b/database/entity/0077-add_resubmission_date_contribution_message/ContributionMessage.ts index 8dd7af06a..e88f1d966 100644 --- a/database/entity/0077-add_resubmission_date_contribution_message/ContributionMessage.ts +++ b/database/entity/0077-add_resubmission_date_contribution_message/ContributionMessage.ts @@ -24,14 +24,20 @@ export class ContributionMessage extends BaseEntity { @Column({ name: 'contribution_id', unsigned: true, nullable: false }) contributionId: number - @ManyToOne(() => Contribution, (contribution) => contribution.messages) + @ManyToOne( + () => Contribution, + (contribution) => contribution.messages, + ) @JoinColumn({ name: 'contribution_id' }) contribution: Contribution @Column({ name: 'user_id', unsigned: true, nullable: false }) userId: number - @ManyToOne(() => User, (user) => user.messages) + @ManyToOne( + () => User, + (user) => user.messages, + ) @JoinColumn({ name: 'user_id' }) user: User diff --git a/database/entity/0078-move_resubmission_date/Contribution.ts b/database/entity/0078-move_resubmission_date/Contribution.ts index 70e8960c8..6de8f74d7 100644 --- a/database/entity/0078-move_resubmission_date/Contribution.ts +++ b/database/entity/0078-move_resubmission_date/Contribution.ts @@ -2,18 +2,18 @@ import { Decimal } from 'decimal.js-light' import { BaseEntity, Column, - Entity, - PrimaryGeneratedColumn, DeleteDateColumn, + Entity, JoinColumn, ManyToOne, OneToMany, OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' import { DecimalTransformer } from '../../src/typeorm/DecimalTransformer' -import { User } from '../User' import { ContributionMessage } from '../ContributionMessage' import { Transaction } from '../Transaction' +import { User } from '../User' @Entity('contributions') export class Contribution extends BaseEntity { @@ -23,7 +23,10 @@ export class Contribution extends BaseEntity { @Column({ unsigned: true, nullable: false, name: 'user_id' }) userId: number - @ManyToOne(() => User, (user) => user.contributions) + @ManyToOne( + () => User, + (user) => user.contributions, + ) @JoinColumn({ name: 'user_id' }) user: User @@ -97,11 +100,17 @@ export class Contribution extends BaseEntity { @DeleteDateColumn({ unsigned: true, nullable: true, name: 'deleted_by' }) deletedBy: number - @OneToMany(() => ContributionMessage, (message) => message.contribution) + @OneToMany( + () => ContributionMessage, + (message) => message.contribution, + ) @JoinColumn({ name: 'contribution_id' }) messages?: ContributionMessage[] - @OneToOne(() => Transaction, (transaction) => transaction.contribution) + @OneToOne( + () => Transaction, + (transaction) => transaction.contribution, + ) @JoinColumn({ name: 'transaction_id' }) transaction?: Transaction | null } diff --git a/database/entity/0078-move_resubmission_date/ContributionMessage.ts b/database/entity/0078-move_resubmission_date/ContributionMessage.ts index 93bcce4ed..1c5e89f92 100644 --- a/database/entity/0078-move_resubmission_date/ContributionMessage.ts +++ b/database/entity/0078-move_resubmission_date/ContributionMessage.ts @@ -24,14 +24,20 @@ export class ContributionMessage extends BaseEntity { @Column({ name: 'contribution_id', unsigned: true, nullable: false }) contributionId: number - @ManyToOne(() => Contribution, (contribution) => contribution.messages) + @ManyToOne( + () => Contribution, + (contribution) => contribution.messages, + ) @JoinColumn({ name: 'contribution_id' }) contribution: Contribution @Column({ name: 'user_id', unsigned: true, nullable: false }) userId: number - @ManyToOne(() => User, (user) => user.messages) + @ManyToOne( + () => User, + (user) => user.messages, + ) @JoinColumn({ name: 'user_id' }) user: User diff --git a/database/entity/0081-user_join_community/Community.ts b/database/entity/0081-user_join_community/Community.ts index 1c6b36be3..2627c9ce9 100644 --- a/database/entity/0081-user_join_community/Community.ts +++ b/database/entity/0081-user_join_community/Community.ts @@ -1,12 +1,12 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, - UpdateDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, + PrimaryGeneratedColumn, + UpdateDateColumn, } from 'typeorm' import { User } from '../User' @@ -64,7 +64,10 @@ export class Community extends BaseEntity { }) updatedAt: Date | null - @OneToMany(() => User, (user) => user.community) + @OneToMany( + () => User, + (user) => user.community, + ) @JoinColumn({ name: 'community_uuid', referencedColumnName: 'communityUuid' }) users: User[] } diff --git a/database/entity/0081-user_join_community/User.ts b/database/entity/0081-user_join_community/User.ts index 28141029d..c941124da 100644 --- a/database/entity/0081-user_join_community/User.ts +++ b/database/entity/0081-user_join_community/User.ts @@ -1,19 +1,19 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, + Entity, JoinColumn, - OneToOne, ManyToOne, + OneToMany, + OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' +import { Community } from '../Community' import { Contribution } from '../Contribution' import { ContributionMessage } from '../ContributionMessage' import { UserContact } from '../UserContact' import { UserRole } from '../UserRole' -import { Community } from '../Community' @Entity('users', { engine: 'InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci' }) export class User extends BaseEntity { @@ -40,7 +40,10 @@ export class User extends BaseEntity { }) communityUuid: string - @ManyToOne(() => Community, (community) => community.users) + @ManyToOne( + () => Community, + (community) => community.users, + ) @JoinColumn({ name: 'community_uuid', referencedColumnName: 'communityUuid' }) community: Community | null @@ -53,7 +56,10 @@ export class User extends BaseEntity { }) alias: string - @OneToOne(() => UserContact, (emailContact: UserContact) => emailContact.user) + @OneToOne( + () => UserContact, + (emailContact: UserContact) => emailContact.user, + ) @JoinColumn({ name: 'email_id' }) emailContact: UserContact @@ -105,7 +111,10 @@ export class User extends BaseEntity { @Column({ type: 'bool', default: false }) hideAmountGDT: boolean - @OneToMany(() => UserRole, (userRole) => userRole.user) + @OneToMany( + () => UserRole, + (userRole) => userRole.user, + ) @JoinColumn({ name: 'user_id' }) userRoles: UserRole[] @@ -124,15 +133,24 @@ export class User extends BaseEntity { @Column({ name: 'publisher_id', default: 0 }) publisherId: number - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] - @OneToMany(() => ContributionMessage, (message) => message.user) + @OneToMany( + () => ContributionMessage, + (message) => message.user, + ) @JoinColumn({ name: 'user_id' }) messages?: ContributionMessage[] - @OneToMany(() => UserContact, (userContact: UserContact) => userContact.user) + @OneToMany( + () => UserContact, + (userContact: UserContact) => userContact.user, + ) @JoinColumn({ name: 'user_id' }) userContacts?: UserContact[] } diff --git a/database/entity/0082-introduce_gms_registration/Community.ts b/database/entity/0082-introduce_gms_registration/Community.ts index cc5607e2e..282aca3a1 100644 --- a/database/entity/0082-introduce_gms_registration/Community.ts +++ b/database/entity/0082-introduce_gms_registration/Community.ts @@ -1,12 +1,12 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, - UpdateDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, + PrimaryGeneratedColumn, + UpdateDateColumn, } from 'typeorm' import { User } from '../User' @@ -67,7 +67,10 @@ export class Community extends BaseEntity { }) updatedAt: Date | null - @OneToMany(() => User, (user) => user.community) + @OneToMany( + () => User, + (user) => user.community, + ) @JoinColumn({ name: 'community_uuid', referencedColumnName: 'communityUuid' }) users: User[] } diff --git a/database/entity/0082-introduce_gms_registration/User.ts b/database/entity/0082-introduce_gms_registration/User.ts index 3dc0dccb6..16381ae16 100644 --- a/database/entity/0082-introduce_gms_registration/User.ts +++ b/database/entity/0082-introduce_gms_registration/User.ts @@ -1,21 +1,21 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, - JoinColumn, - OneToOne, + Entity, Geometry, + JoinColumn, ManyToOne, + OneToMany, + OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' +import { GeometryTransformer } from '../../src/typeorm/GeometryTransformer' +import { Community } from '../Community' import { Contribution } from '../Contribution' import { ContributionMessage } from '../ContributionMessage' import { UserContact } from '../UserContact' import { UserRole } from '../UserRole' -import { GeometryTransformer } from '../../src/typeorm/GeometryTransformer' -import { Community } from '../Community' @Entity('users', { engine: 'InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci' }) export class User extends BaseEntity { @@ -42,7 +42,10 @@ export class User extends BaseEntity { }) communityUuid: string - @ManyToOne(() => Community, (community) => community.users) + @ManyToOne( + () => Community, + (community) => community.users, + ) @JoinColumn({ name: 'community_uuid', referencedColumnName: 'communityUuid' }) community: Community | null @@ -55,7 +58,10 @@ export class User extends BaseEntity { }) alias: string - @OneToOne(() => UserContact, (emailContact: UserContact) => emailContact.user) + @OneToOne( + () => UserContact, + (emailContact: UserContact) => emailContact.user, + ) @JoinColumn({ name: 'email_id' }) emailContact: UserContact @@ -110,7 +116,10 @@ export class User extends BaseEntity { @Column({ type: 'bool', default: false }) hideAmountGDT: boolean - @OneToMany(() => UserRole, (userRole) => userRole.user) + @OneToMany( + () => UserRole, + (userRole) => userRole.user, + ) @JoinColumn({ name: 'user_id' }) userRoles: UserRole[] @@ -156,15 +165,24 @@ export class User extends BaseEntity { @Column({ name: 'gms_registered_at', type: 'datetime', default: null, nullable: true }) gmsRegisteredAt: Date | null - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] - @OneToMany(() => ContributionMessage, (message) => message.user) + @OneToMany( + () => ContributionMessage, + (message) => message.user, + ) @JoinColumn({ name: 'user_id' }) messages?: ContributionMessage[] - @OneToMany(() => UserContact, (userContact: UserContact) => userContact.user) + @OneToMany( + () => UserContact, + (userContact: UserContact) => userContact.user, + ) @JoinColumn({ name: 'user_id' }) userContacts?: UserContact[] } diff --git a/database/entity/0082-introduce_gms_registration/UserContact.ts b/database/entity/0082-introduce_gms_registration/UserContact.ts index 82ae4c013..740d6e6c9 100644 --- a/database/entity/0082-introduce_gms_registration/UserContact.ts +++ b/database/entity/0082-introduce_gms_registration/UserContact.ts @@ -1,11 +1,11 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, - DeleteDateColumn, - OneToOne, CreateDateColumn, + DeleteDateColumn, + Entity, + OneToOne, + PrimaryGeneratedColumn, UpdateDateColumn, } from 'typeorm' import { User } from '../User' @@ -24,7 +24,10 @@ export class UserContact extends BaseEntity { }) type: string - @OneToOne(() => User, (user) => user.emailContact) + @OneToOne( + () => User, + (user) => user.emailContact, + ) user: User @Column({ name: 'user_id', type: 'int', unsigned: true, nullable: false }) diff --git a/database/entity/0083-join_community_federated_communities/Community.ts b/database/entity/0083-join_community_federated_communities/Community.ts index 839a0ee79..d7d6e927f 100644 --- a/database/entity/0083-join_community_federated_communities/Community.ts +++ b/database/entity/0083-join_community_federated_communities/Community.ts @@ -1,12 +1,12 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, - UpdateDateColumn, - OneToMany, + Entity, JoinColumn, + OneToMany, + PrimaryGeneratedColumn, + UpdateDateColumn, } from 'typeorm' import { FederatedCommunity } from '../FederatedCommunity' import { User } from '../User' @@ -68,11 +68,17 @@ export class Community extends BaseEntity { }) updatedAt: Date | null - @OneToMany(() => User, (user) => user.community) + @OneToMany( + () => User, + (user) => user.community, + ) @JoinColumn({ name: 'community_uuid', referencedColumnName: 'communityUuid' }) users: User[] - @OneToMany(() => FederatedCommunity, (federatedCommunity) => federatedCommunity.community) + @OneToMany( + () => FederatedCommunity, + (federatedCommunity) => federatedCommunity.community, + ) @JoinColumn({ name: 'public_key', referencedColumnName: 'publicKey' }) federatedCommunities?: FederatedCommunity[] } diff --git a/database/entity/0083-join_community_federated_communities/FederatedCommunity.ts b/database/entity/0083-join_community_federated_communities/FederatedCommunity.ts index b5eb64ea1..1f077bd5f 100644 --- a/database/entity/0083-join_community_federated_communities/FederatedCommunity.ts +++ b/database/entity/0083-join_community_federated_communities/FederatedCommunity.ts @@ -1,12 +1,12 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, - UpdateDateColumn, - ManyToOne, + Entity, JoinColumn, + ManyToOne, + PrimaryGeneratedColumn, + UpdateDateColumn, } from 'typeorm' import { Community } from '../Community' @@ -52,7 +52,10 @@ export class FederatedCommunity extends BaseEntity { }) updatedAt: Date | null - @ManyToOne(() => Community, (community) => community.federatedCommunities) + @ManyToOne( + () => Community, + (community) => community.federatedCommunities, + ) @JoinColumn({ name: 'public_key', referencedColumnName: 'publicKey' }) community?: Community } diff --git a/database/entity/0084-introduce_humhub_registration/User.ts b/database/entity/0084-introduce_humhub_registration/User.ts index a375f6748..d192d3805 100644 --- a/database/entity/0084-introduce_humhub_registration/User.ts +++ b/database/entity/0084-introduce_humhub_registration/User.ts @@ -1,21 +1,21 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, DeleteDateColumn, - OneToMany, - JoinColumn, - OneToOne, + Entity, Geometry, + JoinColumn, ManyToOne, + OneToMany, + OneToOne, + PrimaryGeneratedColumn, } from 'typeorm' +import { GeometryTransformer } from '../../src/typeorm/GeometryTransformer' +import { Community } from '../Community' import { Contribution } from '../Contribution' import { ContributionMessage } from '../ContributionMessage' import { UserContact } from '../UserContact' import { UserRole } from '../UserRole' -import { GeometryTransformer } from '../../src/typeorm/GeometryTransformer' -import { Community } from '../Community' @Entity('users', { engine: 'InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci' }) export class User extends BaseEntity { @@ -42,7 +42,10 @@ export class User extends BaseEntity { }) communityUuid: string - @ManyToOne(() => Community, (community) => community.users) + @ManyToOne( + () => Community, + (community) => community.users, + ) @JoinColumn({ name: 'community_uuid', referencedColumnName: 'communityUuid' }) community: Community | null @@ -55,7 +58,10 @@ export class User extends BaseEntity { }) alias: string - @OneToOne(() => UserContact, (emailContact: UserContact) => emailContact.user) + @OneToOne( + () => UserContact, + (emailContact: UserContact) => emailContact.user, + ) @JoinColumn({ name: 'email_id' }) emailContact: UserContact @@ -113,7 +119,10 @@ export class User extends BaseEntity { @Column({ type: 'bool', default: false }) hideAmountGDT: boolean - @OneToMany(() => UserRole, (userRole) => userRole.user) + @OneToMany( + () => UserRole, + (userRole) => userRole.user, + ) @JoinColumn({ name: 'user_id' }) userRoles: UserRole[] @@ -162,15 +171,24 @@ export class User extends BaseEntity { @Column({ name: 'humhub_allowed', type: 'bool', default: false }) humhubAllowed: boolean - @OneToMany(() => Contribution, (contribution) => contribution.user) + @OneToMany( + () => Contribution, + (contribution) => contribution.user, + ) @JoinColumn({ name: 'user_id' }) contributions?: Contribution[] - @OneToMany(() => ContributionMessage, (message) => message.user) + @OneToMany( + () => ContributionMessage, + (message) => message.user, + ) @JoinColumn({ name: 'user_id' }) messages?: ContributionMessage[] - @OneToMany(() => UserContact, (userContact: UserContact) => userContact.user) + @OneToMany( + () => UserContact, + (userContact: UserContact) => userContact.user, + ) @JoinColumn({ name: 'user_id' }) userContacts?: UserContact[] } diff --git a/database/entity/0086-add_community_location/Community.ts b/database/entity/0086-add_community_location/Community.ts index 60410c8ce..374ea6a99 100644 --- a/database/entity/0086-add_community_location/Community.ts +++ b/database/entity/0086-add_community_location/Community.ts @@ -1,16 +1,16 @@ import { BaseEntity, - Entity, - PrimaryGeneratedColumn, Column, CreateDateColumn, - UpdateDateColumn, - OneToMany, - JoinColumn, + Entity, Geometry, + JoinColumn, + OneToMany, + PrimaryGeneratedColumn, + UpdateDateColumn, } from 'typeorm' -import { FederatedCommunity } from '../FederatedCommunity' import { GeometryTransformer } from '../../src/typeorm/GeometryTransformer' +import { FederatedCommunity } from '../FederatedCommunity' import { User } from '../User' @Entity('communities') @@ -79,11 +79,17 @@ export class Community extends BaseEntity { }) updatedAt: Date | null - @OneToMany(() => User, (user) => user.community) + @OneToMany( + () => User, + (user) => user.community, + ) @JoinColumn({ name: 'community_uuid', referencedColumnName: 'communityUuid' }) users: User[] - @OneToMany(() => FederatedCommunity, (federatedCommunity) => federatedCommunity.community) + @OneToMany( + () => FederatedCommunity, + (federatedCommunity) => federatedCommunity.community, + ) @JoinColumn({ name: 'public_key', referencedColumnName: 'publicKey' }) federatedCommunities?: FederatedCommunity[] } diff --git a/database/entity/0088-create_project_brandings/ProjectBranding.ts b/database/entity/0088-create_project_brandings/ProjectBranding.ts index 449dc62ee..f836f5824 100644 --- a/database/entity/0088-create_project_brandings/ProjectBranding.ts +++ b/database/entity/0088-create_project_brandings/ProjectBranding.ts @@ -1,4 +1,4 @@ -import { Entity, PrimaryGeneratedColumn, Column, BaseEntity } from 'typeorm' +import { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from 'typeorm' @Entity('project_brandings') export class ProjectBranding extends BaseEntity { diff --git a/database/entity/0089-add_openai_threads/OpenaiThreads.ts b/database/entity/0089-add_openai_threads/OpenaiThreads.ts index 519dcea45..38e4b6c33 100644 --- a/database/entity/0089-add_openai_threads/OpenaiThreads.ts +++ b/database/entity/0089-add_openai_threads/OpenaiThreads.ts @@ -1,4 +1,4 @@ -import { BaseEntity, Entity, PrimaryColumn, CreateDateColumn, Column } from 'typeorm' +import { BaseEntity, Column, CreateDateColumn, Entity, PrimaryColumn } from 'typeorm' @Entity('openai_threads') export class OpenaiThreads extends BaseEntity { diff --git a/database/entity/index.ts b/database/entity/index.ts index e34a4b55e..84ff97194 100644 --- a/database/entity/index.ts +++ b/database/entity/index.ts @@ -1,21 +1,21 @@ +import { PendingTransaction } from './0071-add-pending_transactions-table/PendingTransaction' +import { Community } from './Community' +import { Contribution } from './Contribution' import { ContributionLink } from './ContributionLink' +import { ContributionMessage } from './ContributionMessage' +import { DltTransaction } from './DltTransaction' +import { Event } from './Event' +import { FederatedCommunity } from './FederatedCommunity' import { LoginElopageBuys } from './LoginElopageBuys' import { LoginEmailOptIn } from './LoginEmailOptIn' import { Migration } from './Migration' -import { ProjectBranding } from './ProjectBranding' import { OpenaiThreads } from './OpenaiThreads' +import { ProjectBranding } from './ProjectBranding' import { Transaction } from './Transaction' import { TransactionLink } from './TransactionLink' import { User } from './User' import { UserContact } from './UserContact' -import { Contribution } from './Contribution' -import { Event } from './Event' -import { ContributionMessage } from './ContributionMessage' -import { Community } from './Community' -import { FederatedCommunity } from './FederatedCommunity' import { UserRole } from './UserRole' -import { DltTransaction } from './DltTransaction' -import { PendingTransaction } from './0071-add-pending_transactions-table/PendingTransaction' export const entities = [ Community, diff --git a/database/integrity/0013-test.ts.keep b/database/integrity/0013-test.ts.keep index b020c0657..cbc68d79a 100644 --- a/database/integrity/0013-test.ts.keep +++ b/database/integrity/0013-test.ts.keep @@ -6,7 +6,7 @@ import fs from 'fs' -// eslint-disable-next-line @typescript-eslint/no-var-requires + const sodium = require('sodium-native') const PHRASE_WORD_COUNT = 24 @@ -49,7 +49,7 @@ const KeyPairEd25519Create = (passphrase: string[]): Buffer[] => { export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Delete data with no reference in login_users table - // eslint-disable-next-line no-console + // 663 affected rows const userBackups = await queryFn( `SELECT passphrase, LOWER(HEX(pubkey)) as pubkey, user_id @@ -59,13 +59,13 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis // WHERE pubkey is not null`, // todo fix this condition and regenerate ) let i = 0 - // eslint-disable-next-line no-console + userBackups.forEach(async (userBackup) => { const passphrase = userBackup.passphrase.split(' ') const keyPair = KeyPairEd25519Create(passphrase) if (keyPair[0].toString('hex') !== userBackup.pubkey) { i++ - // eslint-disable-next-line no-console + console.log( 'Missmatch Pubkey', i, @@ -75,7 +75,7 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis `"${userBackup.pubkey}"`, ) } else { - // eslint-disable-next-line no-console + // console.log('SUCCESS: ', `"${keyPair[0].toString('hex')}`, `"${userBackup.pubkey}"`) } }) diff --git a/database/logging/AbstractLogging.view.ts b/database/logging/AbstractLogging.view.ts index e51f3823d..4d8824cc3 100644 --- a/database/logging/AbstractLogging.view.ts +++ b/database/logging/AbstractLogging.view.ts @@ -3,11 +3,10 @@ import util from 'util' import { Decimal } from 'decimal.js-light' export abstract class AbstractLoggingView { - // eslint-disable-next-line no-undef protected bufferStringFormat: BufferEncoding = 'hex' // This function gets called automatically when JSON.stringify() is called on this class instance - // eslint-disable-next-line @typescript-eslint/no-explicit-any + public abstract toJSON(): any public toString(compact = false): string { if (compact) { diff --git a/database/logging/CommunityLogging.view.ts b/database/logging/CommunityLogging.view.ts index 1c6d74626..0108aefd8 100644 --- a/database/logging/CommunityLogging.view.ts +++ b/database/logging/CommunityLogging.view.ts @@ -7,7 +7,6 @@ export class CommunityLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { id: this.self.id, diff --git a/database/logging/ContributionLogging.view.ts b/database/logging/ContributionLogging.view.ts index c924525d2..9896fac4e 100644 --- a/database/logging/ContributionLogging.view.ts +++ b/database/logging/ContributionLogging.view.ts @@ -9,7 +9,6 @@ export class ContributionLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { id: this.self.id, diff --git a/database/logging/ContributionMessageLogging.view.ts b/database/logging/ContributionMessageLogging.view.ts index d05c000bb..741820a3c 100644 --- a/database/logging/ContributionMessageLogging.view.ts +++ b/database/logging/ContributionMessageLogging.view.ts @@ -8,7 +8,6 @@ export class ContributionMessageLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { id: this.self.id, diff --git a/database/logging/DltTransactionLogging.view.ts b/database/logging/DltTransactionLogging.view.ts index 7d1681ce2..1a51121c8 100644 --- a/database/logging/DltTransactionLogging.view.ts +++ b/database/logging/DltTransactionLogging.view.ts @@ -7,7 +7,6 @@ export class DltTransactionLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { id: this.self.id, diff --git a/database/logging/FederatedCommunityLogging.view.ts b/database/logging/FederatedCommunityLogging.view.ts index 4e36cc236..ccfc9f005 100644 --- a/database/logging/FederatedCommunityLogging.view.ts +++ b/database/logging/FederatedCommunityLogging.view.ts @@ -6,7 +6,6 @@ export class FederatedCommunityLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { id: this.self.id, diff --git a/database/logging/PendingTransactionLogging.view.ts b/database/logging/PendingTransactionLogging.view.ts index 84b7f35b9..78035004b 100644 --- a/database/logging/PendingTransactionLogging.view.ts +++ b/database/logging/PendingTransactionLogging.view.ts @@ -1,4 +1,3 @@ -/* eslint-disable no-unused-vars */ import { PendingTransaction } from '../entity/PendingTransaction' import { Transaction } from '../entity/Transaction' import { AbstractLoggingView } from './AbstractLogging.view' @@ -17,7 +16,6 @@ export class PendingTransactionLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { ...new TransactionLoggingView(this.self as Transaction).toJSON(), diff --git a/database/logging/TransactionLogging.view.ts b/database/logging/TransactionLogging.view.ts index 7912c7e5d..e0a039a4b 100644 --- a/database/logging/TransactionLogging.view.ts +++ b/database/logging/TransactionLogging.view.ts @@ -1,4 +1,3 @@ -/* eslint-disable no-unused-vars */ import { Transaction } from '../entity/Transaction' import { AbstractLoggingView } from './AbstractLogging.view' import { ContributionLoggingView } from './ContributionLogging.view' @@ -19,7 +18,6 @@ export class TransactionLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { id: this.self.id, diff --git a/database/logging/UserContactLogging.view.ts b/database/logging/UserContactLogging.view.ts index ebc05843a..e843ca738 100644 --- a/database/logging/UserContactLogging.view.ts +++ b/database/logging/UserContactLogging.view.ts @@ -1,4 +1,3 @@ -/* eslint-disable no-unused-vars */ import { UserContact } from '../entity/UserContact' import { AbstractLoggingView } from './AbstractLogging.view' import { UserLoggingView } from './UserLogging.view' @@ -13,7 +12,6 @@ export class UserContactLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { id: this.self.id, diff --git a/database/logging/UserLogging.view.ts b/database/logging/UserLogging.view.ts index 839b0ad8b..375068ff7 100644 --- a/database/logging/UserLogging.view.ts +++ b/database/logging/UserLogging.view.ts @@ -1,4 +1,3 @@ -/* eslint-disable no-unused-vars */ import { User } from '../entity/User' import { AbstractLoggingView } from './AbstractLogging.view' import { ContributionLoggingView } from './ContributionLogging.view' @@ -17,7 +16,6 @@ export class UserLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { id: this.self.id, diff --git a/database/logging/UserRoleLogging.view.ts b/database/logging/UserRoleLogging.view.ts index 19050367b..9b4914f15 100644 --- a/database/logging/UserRoleLogging.view.ts +++ b/database/logging/UserRoleLogging.view.ts @@ -7,7 +7,6 @@ export class UserRoleLoggingView extends AbstractLoggingView { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { id: this.self.id, diff --git a/database/migrations/0001-init_db.ts b/database/migrations/0001-init_db.ts index e26c2c1a7..b402c0f72 100644 --- a/database/migrations/0001-init_db.ts +++ b/database/migrations/0001-init_db.ts @@ -9,9 +9,6 @@ * databases. */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // write upgrade logic as parameter of queryFn await queryFn(` diff --git a/database/migrations/0002-add_settings.ts b/database/migrations/0002-add_settings.ts index ae9e72757..b3ee29cd9 100644 --- a/database/migrations/0002-add_settings.ts +++ b/database/migrations/0002-add_settings.ts @@ -3,9 +3,6 @@ * This migration adds the table `user_setting` in order to store all sorts of user configuration data */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE IF NOT EXISTS \`user_setting\` ( diff --git a/database/migrations/0003-login_server_tables.ts b/database/migrations/0003-login_server_tables.ts index bb6f56ac8..6b87f1ffb 100644 --- a/database/migrations/0003-login_server_tables.ts +++ b/database/migrations/0003-login_server_tables.ts @@ -5,9 +5,6 @@ * `0004-login_server_data` which will fill the tables with the existing data */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE IF NOT EXISTS \`login_app_access_tokens\` ( diff --git a/database/migrations/0004-login_server_data.ts b/database/migrations/0004-login_server_data.ts index 8c9f3497c..715256471 100644 --- a/database/migrations/0004-login_server_data.ts +++ b/database/migrations/0004-login_server_data.ts @@ -9,9 +9,6 @@ * NOTE: This migration does not delete the data when downgrading! */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - const LOGIN_SERVER_DB = 'gradido_login' export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { @@ -19,7 +16,7 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = '${LOGIN_SERVER_DB}' `) if (loginDatabaseExists.length === 0) { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no logger present console.log(`Skipping Login Server Database migration - Database ${LOGIN_SERVER_DB} not found`) return } @@ -62,6 +59,8 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis `) } -export async function downgrade(/* queryFn: (query: string, values?: any[]) => Promise> */) { +export async function downgrade( + /* queryFn: (query: string, values?: any[]) => Promise> */ +) { // EMPTY FUNCTION } diff --git a/database/migrations/0005-admin_tables.ts b/database/migrations/0005-admin_tables.ts index 6351d146e..832008970 100644 --- a/database/migrations/0005-admin_tables.ts +++ b/database/migrations/0005-admin_tables.ts @@ -3,9 +3,6 @@ * This migration adds the table `login_pending_tasks_admin` to store pending creations */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE IF NOT EXISTS \`login_pending_tasks_admin\` ( diff --git a/database/migrations/0006-login_users_collation.ts b/database/migrations/0006-login_users_collation.ts index aa786ba34..2a730f5e7 100644 --- a/database/migrations/0006-login_users_collation.ts +++ b/database/migrations/0006-login_users_collation.ts @@ -5,9 +5,6 @@ * to also explicitly define it in the table */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Explicitly change the charset and collate to the one used to then change it await queryFn('ALTER TABLE `login_users` CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;') diff --git a/database/migrations/0007-login_pending_tasks_delete.ts b/database/migrations/0007-login_pending_tasks_delete.ts index baf6f5191..47bb7bbed 100644 --- a/database/migrations/0007-login_pending_tasks_delete.ts +++ b/database/migrations/0007-login_pending_tasks_delete.ts @@ -6,13 +6,12 @@ * and dead entries */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('DELETE FROM `login_pending_tasks`;') } -export async function downgrade(/* queryFn: (query: string, values?: any[]) => Promise> */) { +export async function downgrade( + /* queryFn: (query: string, values?: any[]) => Promise> */ +) { // cannot undelete things } diff --git a/database/migrations/0008-state_users_plug_holes.ts b/database/migrations/0008-state_users_plug_holes.ts index 3607c6233..c6be39701 100644 --- a/database/migrations/0008-state_users_plug_holes.ts +++ b/database/migrations/0008-state_users_plug_holes.ts @@ -6,9 +6,6 @@ * login_users. */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Fill in missing emails from login_users await queryFn( @@ -21,6 +18,8 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis await queryFn(`DELETE FROM state_users WHERE email = ''`) } -export async function downgrade(/* queryFn: (query: string, values?: any[]) => Promise> */) { +export async function downgrade( + /* queryFn: (query: string, values?: any[]) => Promise> */ +) { // cannot undelete things } diff --git a/database/migrations/0009-login_users_plug_holes.ts b/database/migrations/0009-login_users_plug_holes.ts index 506f8934c..6df8aa724 100644 --- a/database/migrations/0009-login_users_plug_holes.ts +++ b/database/migrations/0009-login_users_plug_holes.ts @@ -5,9 +5,6 @@ * account is set as not yet activated */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Generate a random private key where the required data is present (pubkey + password + passphrase). // Furthermore the email needs to be confirmed @@ -26,6 +23,8 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis ) } -export async function downgrade(/* queryFn: (query: string, values?: any[]) => Promise> */) { +export async function downgrade( + /* queryFn: (query: string, values?: any[]) => Promise> */ +) { // cannot undelete things } diff --git a/database/migrations/0010-login_users_state_users_sync.ts b/database/migrations/0010-login_users_state_users_sync.ts index dea9c6de7..1c326db54 100644 --- a/database/migrations/0010-login_users_state_users_sync.ts +++ b/database/migrations/0010-login_users_state_users_sync.ts @@ -4,9 +4,6 @@ * Copy missing data from login_users to state_users. */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Copy data with intact private key await queryFn( @@ -43,6 +40,8 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis ) } -export async function downgrade(/* queryFn: (query: string, values?: any[]) => Promise> */) { +export async function downgrade( + /* queryFn: (query: string, values?: any[]) => Promise> */ +) { // cannot undelete things } diff --git a/database/migrations/0011-login_user_backups_plug_holes.ts b/database/migrations/0011-login_user_backups_plug_holes.ts index 87f38486d..5d53769e2 100644 --- a/database/migrations/0011-login_user_backups_plug_holes.ts +++ b/database/migrations/0011-login_user_backups_plug_holes.ts @@ -5,9 +5,6 @@ * delete the right one of the duplicate keys */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Delete data with no reference in login_users table await queryFn(`DELETE FROM login_user_backups WHERE user_id NOT IN (SELECT id FROM login_users)`) @@ -16,6 +13,8 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis await queryFn(`DELETE FROM login_user_backups WHERE id IN (21, 103, 313, 325, 726, 750, 1098)`) } -export async function downgrade(/* queryFn: (query: string, values?: any[]) => Promise> */) { +export async function downgrade( + /* queryFn: (query: string, values?: any[]) => Promise> */ +) { // cannot undelete things } diff --git a/database/migrations/0012-login_user_backups_unify_wordlist.ts b/database/migrations/0012-login_user_backups_unify_wordlist.ts index 9825bb791..ad8244f66 100644 --- a/database/migrations/0012-login_user_backups_unify_wordlist.ts +++ b/database/migrations/0012-login_user_backups_unify_wordlist.ts @@ -5,9 +5,6 @@ * This also removes the trailing space */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - import fs from 'fs' import path from 'path' @@ -66,6 +63,8 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis }) } -export async function downgrade(/* queryFn: (query: string, values?: any[]) => Promise> */) { +export async function downgrade( + /* queryFn: (query: string, values?: any[]) => Promise> */ +) { // cannot transform things back } diff --git a/database/migrations/0013-drop_unused_tables.ts b/database/migrations/0013-drop_unused_tables.ts index 1097270f9..bb90db39f 100644 --- a/database/migrations/0013-drop_unused_tables.ts +++ b/database/migrations/0013-drop_unused_tables.ts @@ -5,9 +5,6 @@ * The migration reduces the amount of tables to 28 */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(`DROP TABLE \`login_app_access_tokens\`;`) await queryFn(`DROP TABLE \`pending_transactions\`;`) diff --git a/database/migrations/0014-drop_unused_tables_with_data.ts b/database/migrations/0014-drop_unused_tables_with_data.ts index af1e27cb4..4f8c47eb7 100644 --- a/database/migrations/0014-drop_unused_tables_with_data.ts +++ b/database/migrations/0014-drop_unused_tables_with_data.ts @@ -5,9 +5,6 @@ * The migration reduces the amount of tables to 16 */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(`DROP TABLE \`address_types\`;`) await queryFn(`DROP TABLE \`admin_errors\`;`) diff --git a/database/migrations/0015-admin_pending_creations.ts b/database/migrations/0015-admin_pending_creations.ts index c48d81792..d15bd84a7 100644 --- a/database/migrations/0015-admin_pending_creations.ts +++ b/database/migrations/0015-admin_pending_creations.ts @@ -7,9 +7,6 @@ * the new table to properly describe what it does */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // drop duplicate table, it was unused await queryFn('DROP TABLE `login_pending_tasks`;') diff --git a/database/migrations/0016-transaction_signatures.ts b/database/migrations/0016-transaction_signatures.ts index 37910e269..2cf1e7aa1 100644 --- a/database/migrations/0016-transaction_signatures.ts +++ b/database/migrations/0016-transaction_signatures.ts @@ -4,9 +4,6 @@ * combines its data with transaction_signatures. */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Drop column `state_group_id` since it only contains "0" as value, no variation. // Furthermore it was not present in our model itself (meaning that newly created ) diff --git a/database/migrations/0017-combine_user_tables.ts b/database/migrations/0017-combine_user_tables.ts index c2f76374d..04be53615 100644 --- a/database/migrations/0017-combine_user_tables.ts +++ b/database/migrations/0017-combine_user_tables.ts @@ -4,9 +4,6 @@ * the `state_users` table, where the later is the target. */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Drop column `group_id` since it contains uniform data which is not the same as the uniform data // on login_users. Since we do not need this data anyway, we sjust throw it away. diff --git a/database/migrations/0018-combine_login_user_backups_and_user_table.ts b/database/migrations/0018-combine_login_user_backups_and_user_table.ts index 9209e461d..2141017bd 100644 --- a/database/migrations/0018-combine_login_user_backups_and_user_table.ts +++ b/database/migrations/0018-combine_login_user_backups_and_user_table.ts @@ -4,9 +4,6 @@ * the `state_users` table, where the later is the target. */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // We only keep the passphrase, the mnemonic type is a constant, // since every passphrase was converted to mnemonic type 2 diff --git a/database/migrations/0019-replace_login_user_id_with_state_user_id.ts b/database/migrations/0019-replace_login_user_id_with_state_user_id.ts index cef608c29..719c05443 100644 --- a/database/migrations/0019-replace_login_user_id_with_state_user_id.ts +++ b/database/migrations/0019-replace_login_user_id_with_state_user_id.ts @@ -5,9 +5,6 @@ * The table affected is `login_email_opt_in` */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Delete email opt in codes which can not be linked to an user await queryFn(` diff --git a/database/migrations/0020-rename_and_clean_state_users.ts b/database/migrations/0020-rename_and_clean_state_users.ts index 39dbfa093..5abda1dc9 100644 --- a/database/migrations/0020-rename_and_clean_state_users.ts +++ b/database/migrations/0020-rename_and_clean_state_users.ts @@ -4,9 +4,6 @@ * and removes columns with no meaningful value */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // rename `state_users` table to `users` await queryFn('RENAME TABLE `state_users` TO `users`;') diff --git a/database/migrations/0021-elopagebuys_fields_nullable.ts b/database/migrations/0021-elopagebuys_fields_nullable.ts index 14ba00b3a..dabe9d1e4 100644 --- a/database/migrations/0021-elopagebuys_fields_nullable.ts +++ b/database/migrations/0021-elopagebuys_fields_nullable.ts @@ -4,9 +4,6 @@ * `publisher_id`, `order_id`. `product_id`. */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `login_elopage_buys` MODIFY COLUMN `affiliate_program_id` int(11) DEFAULT NULL;', diff --git a/database/migrations/0022-delete_decay_start_block.ts b/database/migrations/0022-delete_decay_start_block.ts index a31f9c441..22027933e 100644 --- a/database/migrations/0022-delete_decay_start_block.ts +++ b/database/migrations/0022-delete_decay_start_block.ts @@ -4,9 +4,6 @@ * we can delete it from the database */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Remove transactions with type 9 (start decay block). This should affect exactly 1 row await queryFn(`DELETE FROM transactions WHERE transaction_type_id = 9;`) diff --git a/database/migrations/0023-users_disabled_soft_delete.ts b/database/migrations/0023-users_disabled_soft_delete.ts index d85c2f019..2e62d4b71 100644 --- a/database/migrations/0023-users_disabled_soft_delete.ts +++ b/database/migrations/0023-users_disabled_soft_delete.ts @@ -4,9 +4,6 @@ * a date as it is standard for soft delete fields */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Create new `deletedAt` column await queryFn( diff --git a/database/migrations/0024-combine_transaction_tables.ts b/database/migrations/0024-combine_transaction_tables.ts index 5b8ec8be8..d9af6d96b 100644 --- a/database/migrations/0024-combine_transaction_tables.ts +++ b/database/migrations/0024-combine_transaction_tables.ts @@ -3,9 +3,6 @@ * Combine several transaction tables into one table with all data */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Create new `user_id` column (former `state_user_id`), with a temporary default of null await queryFn( diff --git a/database/migrations/0025-emails_to_lower.ts b/database/migrations/0025-emails_to_lower.ts index 33f085e69..787d0dbfb 100644 --- a/database/migrations/0025-emails_to_lower.ts +++ b/database/migrations/0025-emails_to_lower.ts @@ -4,14 +4,10 @@ * This allows safe queries without any modificators */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('UPDATE `users` SET `email` = LOWER(`email`);') } -// eslint-disable-next-line @typescript-eslint/no-unused-vars -export async function downgrade(queryFn: (query: string, values?: any[]) => Promise>) { +export async function downgrade(_queryFn: (query: string, values?: any[]) => Promise>) { // This migration cannot be revered } diff --git a/database/migrations/0026-combine_transaction_tables2.ts b/database/migrations/0026-combine_transaction_tables2.ts index b83c5e267..767465cfb 100644 --- a/database/migrations/0026-combine_transaction_tables2.ts +++ b/database/migrations/0026-combine_transaction_tables2.ts @@ -5,9 +5,6 @@ * each send-coins to two transactions per send-coin */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { /* * This migration has a possible incompatibility diff --git a/database/migrations/0027-clean_transaction_table.ts b/database/migrations/0027-clean_transaction_table.ts index 4a427e693..dc41bf288 100644 --- a/database/migrations/0027-clean_transaction_table.ts +++ b/database/migrations/0027-clean_transaction_table.ts @@ -6,9 +6,6 @@ * This migration has data loss */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // drop column `transaction_id`, it is not needed await queryFn('ALTER TABLE `transactions` DROP COLUMN IF EXISTS `transaction_id`;') diff --git a/database/migrations/0028-decimal_types.ts b/database/migrations/0028-decimal_types.ts index 742a370ba..1d9736456 100644 --- a/database/migrations/0028-decimal_types.ts +++ b/database/migrations/0028-decimal_types.ts @@ -18,9 +18,6 @@ * WARNING: This Migration must be run in TZ=UTC */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - import { Decimal } from 'decimal.js-light' // Set precision value @@ -40,13 +37,11 @@ interface Decay { duration: number | null } -/* eslint-disable no-unused-vars */ export enum TransactionTypeId { CREATION = 1, SEND = 2, RECEIVE = 3, } -/* eslint-enable no-unused-vars */ function decayFormula(value: Decimal, seconds: number): Decimal { return value.mul(new Decimal('0.99999997803504048973201202316767079413460520837376').pow(seconds)) diff --git a/database/migrations/0029-clean_transaction_table.ts b/database/migrations/0029-clean_transaction_table.ts index c47524b8e..9dcc30d29 100644 --- a/database/migrations/0029-clean_transaction_table.ts +++ b/database/migrations/0029-clean_transaction_table.ts @@ -6,9 +6,6 @@ * This migration has data loss */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // Delete columns diff --git a/database/migrations/0030-transaction_link.ts b/database/migrations/0030-transaction_link.ts index ee76c980d..c908c56f1 100644 --- a/database/migrations/0030-transaction_link.ts +++ b/database/migrations/0030-transaction_link.ts @@ -1,8 +1,5 @@ /* MIGRATION TO CREATE TRANSACTION_LINK TABLE */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE \`transaction_links\` ( diff --git a/database/migrations/0031-remove_sendEmail_from_transaction_link.ts b/database/migrations/0031-remove_sendEmail_from_transaction_link.ts index 76b2ee742..fafb57e52 100644 --- a/database/migrations/0031-remove_sendEmail_from_transaction_link.ts +++ b/database/migrations/0031-remove_sendEmail_from_transaction_link.ts @@ -1,8 +1,5 @@ /* MIGRATION TO REMOVE sendEmail FIELD FROM TRANSACTION_LINK TABLE */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('ALTER TABLE `transaction_links` DROP COLUMN `showEmail`;') } diff --git a/database/migrations/0032-add-transaction-link-to-transaction.ts b/database/migrations/0032-add-transaction-link-to-transaction.ts index 79cdf195a..f258b5fc1 100644 --- a/database/migrations/0032-add-transaction-link-to-transaction.ts +++ b/database/migrations/0032-add-transaction-link-to-transaction.ts @@ -1,8 +1,5 @@ /* MIGRATION TO ADD transactionLinkId FIELDTO TRANSACTION */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `transactions` ADD COLUMN `transaction_link_id` int UNSIGNED DEFAULT NULL AFTER `linked_transaction_id`;', diff --git a/database/migrations/0033-add_referrer_id.ts b/database/migrations/0033-add_referrer_id.ts index e45d1faf7..393db172f 100644 --- a/database/migrations/0033-add_referrer_id.ts +++ b/database/migrations/0033-add_referrer_id.ts @@ -1,8 +1,5 @@ /* MIGRATION TO ADD referrer_id FIELD TO users */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `users` ADD COLUMN `referrer_id` int UNSIGNED DEFAULT NULL AFTER `language`;', diff --git a/database/migrations/0034-drop_server_user_table.ts b/database/migrations/0034-drop_server_user_table.ts index be6b44489..a02711302 100644 --- a/database/migrations/0034-drop_server_user_table.ts +++ b/database/migrations/0034-drop_server_user_table.ts @@ -1,9 +1,6 @@ /* MIGRATION DROP server_users TABLE add isAdmin COLUMN to users TABLE */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('ALTER TABLE `users` ADD COLUMN `is_admin` datetime DEFAULT NULL AFTER `language`;') diff --git a/database/migrations/0035-admin_pending_creations_decimal.ts b/database/migrations/0035-admin_pending_creations_decimal.ts index f76db7c97..71173072a 100644 --- a/database/migrations/0035-admin_pending_creations_decimal.ts +++ b/database/migrations/0035-admin_pending_creations_decimal.ts @@ -3,9 +3,6 @@ * - `memo` FIELD TYPE TO `varchar(255)`, collate `utf8mb4_unicode_ci` */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // rename `amount` to `amount_bigint` await queryFn( diff --git a/database/migrations/0036-unique_previous_in_transactions.ts b/database/migrations/0036-unique_previous_in_transactions.ts index f05b044bb..9241dd13a 100644 --- a/database/migrations/0036-unique_previous_in_transactions.ts +++ b/database/migrations/0036-unique_previous_in_transactions.ts @@ -1,9 +1,6 @@ /* MIGRATION TO SET previous COLUMN UNIQUE in TRANSACTION table */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('ALTER TABLE `transactions` ADD UNIQUE(`previous`);') } diff --git a/database/migrations/0037-drop_user_setting_table.ts b/database/migrations/0037-drop_user_setting_table.ts index 50a78e104..e79480ac0 100644 --- a/database/migrations/0037-drop_user_setting_table.ts +++ b/database/migrations/0037-drop_user_setting_table.ts @@ -1,8 +1,5 @@ /* MIGRATION DROP user_setting TABLE */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('DROP TABLE `user_setting`;') } diff --git a/database/migrations/0038-add_contribution_links_table.ts b/database/migrations/0038-add_contribution_links_table.ts index f983644cc..278cd3d6c 100644 --- a/database/migrations/0038-add_contribution_links_table.ts +++ b/database/migrations/0038-add_contribution_links_table.ts @@ -3,9 +3,6 @@ * This migration adds the table `contribution_links` in order to store all sorts of contribution_links data */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE IF NOT EXISTS \`contribution_links\` ( diff --git a/database/migrations/0039-contributions_table.ts b/database/migrations/0039-contributions_table.ts index 50b147448..f1d7f4dcb 100644 --- a/database/migrations/0039-contributions_table.ts +++ b/database/migrations/0039-contributions_table.ts @@ -1,9 +1,6 @@ /* MIGRATION to rename ADMIN_PENDING_CREATION table and add columns */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('RENAME TABLE `admin_pending_creations` TO `contributions`;') diff --git a/database/migrations/0040-add_contribution_link_id_to_user.ts b/database/migrations/0040-add_contribution_link_id_to_user.ts index ebe7896df..3a48a4331 100644 --- a/database/migrations/0040-add_contribution_link_id_to_user.ts +++ b/database/migrations/0040-add_contribution_link_id_to_user.ts @@ -1,8 +1,5 @@ /* MIGRATION TO ADD contribution_link_id FIELD TO users */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `users` ADD COLUMN `contribution_link_id` int UNSIGNED DEFAULT NULL AFTER `referrer_id`;', diff --git a/database/migrations/0041-move_users_creation_date.ts b/database/migrations/0041-move_users_creation_date.ts index 27353a5b4..989f217d6 100644 --- a/database/migrations/0041-move_users_creation_date.ts +++ b/database/migrations/0041-move_users_creation_date.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - /* Move forward the creation date of the users by 1 or 2 hours, for which there are transactions created before their account creation. diff --git a/database/migrations/0042-update_transactions_for_blockchain.ts b/database/migrations/0042-update_transactions_for_blockchain.ts index d7b26abbd..0af89dd3d 100644 --- a/database/migrations/0042-update_transactions_for_blockchain.ts +++ b/database/migrations/0042-update_transactions_for_blockchain.ts @@ -1,6 +1,4 @@ /* MIGRATION for updating transactions from the past to follow the blockchain rules */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // split creation transaction with 3000 GDD created in one transaction what isn't allowed diff --git a/database/migrations/0043-add_event_protocol_table.ts b/database/migrations/0043-add_event_protocol_table.ts index c3669f857..16a9fb28d 100644 --- a/database/migrations/0043-add_event_protocol_table.ts +++ b/database/migrations/0043-add_event_protocol_table.ts @@ -3,9 +3,6 @@ * This migration adds the table `event_protocol` in order to store all sorts of business event data */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE IF NOT EXISTS \`event_protocol\` ( diff --git a/database/migrations/0044-insert_missing_contributions.ts b/database/migrations/0044-insert_missing_contributions.ts index a14141498..e2177ace9 100644 --- a/database/migrations/0044-insert_missing_contributions.ts +++ b/database/migrations/0044-insert_missing_contributions.ts @@ -1,8 +1,5 @@ /* MIGRATION TO INSERT contributions for all transactions with type creation that do not have a contribution yet */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( `INSERT INTO gradido_community.contributions diff --git a/database/migrations/0045-add_denied_type_and_status_to_contributions.ts b/database/migrations/0045-add_denied_type_and_status_to_contributions.ts index b3653589b..a448d04e1 100644 --- a/database/migrations/0045-add_denied_type_and_status_to_contributions.ts +++ b/database/migrations/0045-add_denied_type_and_status_to_contributions.ts @@ -1,9 +1,6 @@ /* MIGRATION TO ADD denied_by, denied_at, contribution_type and contrinution_status FIELDS TO contributions */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `contributions` ADD COLUMN `denied_at` datetime DEFAULT NULL AFTER `confirmed_at`;', diff --git a/database/migrations/0046-adapt_users_table_for_gradidoid.ts b/database/migrations/0046-adapt_users_table_for_gradidoid.ts index 8e8372efa..b16452c19 100644 --- a/database/migrations/0046-adapt_users_table_for_gradidoid.ts +++ b/database/migrations/0046-adapt_users_table_for_gradidoid.ts @@ -4,9 +4,6 @@ * new table `user_contacts` */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - import { v4 as uuidv4 } from 'uuid' export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { diff --git a/database/migrations/0047-messages_tables.ts b/database/migrations/0047-messages_tables.ts index 36fa42a8e..d750c17bb 100644 --- a/database/migrations/0047-messages_tables.ts +++ b/database/migrations/0047-messages_tables.ts @@ -5,8 +5,6 @@ * This is done to keep all data in the same place and is to be understood in conjunction with the next migration * `0046-messages_tables` which will fill the tables with the existing data */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` diff --git a/database/migrations/0048-add_is_moderator_to_contribution_messages.ts b/database/migrations/0048-add_is_moderator_to_contribution_messages.ts index ff2e645c3..a20d4e7ca 100644 --- a/database/migrations/0048-add_is_moderator_to_contribution_messages.ts +++ b/database/migrations/0048-add_is_moderator_to_contribution_messages.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( `ALTER TABLE \`contribution_messages\` ADD COLUMN \`is_moderator\` boolean NOT NULL DEFAULT false;`, diff --git a/database/migrations/0049-add_user_contacts_table.ts b/database/migrations/0049-add_user_contacts_table.ts index acdd1af61..706d4d443 100644 --- a/database/migrations/0049-add_user_contacts_table.ts +++ b/database/migrations/0049-add_user_contacts_table.ts @@ -4,9 +4,6 @@ * new table `user_contacts` */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE IF NOT EXISTS \`user_contacts\` ( diff --git a/database/migrations/0050-add_messageId_to_event_protocol.ts b/database/migrations/0050-add_messageId_to_event_protocol.ts index ccef98688..12e3e5424 100644 --- a/database/migrations/0050-add_messageId_to_event_protocol.ts +++ b/database/migrations/0050-add_messageId_to_event_protocol.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( `ALTER TABLE \`event_protocol\` ADD COLUMN \`message_id\` int(10) unsigned NULL DEFAULT NULL;`, diff --git a/database/migrations/0051-add_delete_by_to_contributions.ts b/database/migrations/0051-add_delete_by_to_contributions.ts index 21d0eda97..9f9f20a04 100644 --- a/database/migrations/0051-add_delete_by_to_contributions.ts +++ b/database/migrations/0051-add_delete_by_to_contributions.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( `ALTER TABLE \`contributions\` ADD COLUMN \`deleted_by\` int(10) unsigned DEFAULT NULL;`, diff --git a/database/migrations/0052-add_updated_at_to_contributions.ts b/database/migrations/0052-add_updated_at_to_contributions.ts index e7cc5b7b4..dd6070156 100644 --- a/database/migrations/0052-add_updated_at_to_contributions.ts +++ b/database/migrations/0052-add_updated_at_to_contributions.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( `ALTER TABLE \`contributions\` ADD COLUMN \`updated_at\` datetime DEFAULT NULL AFTER \`transaction_id\`;`, diff --git a/database/migrations/0053-change_password_encryption.ts b/database/migrations/0053-change_password_encryption.ts index 635109430..10ca37390 100644 --- a/database/migrations/0053-change_password_encryption.ts +++ b/database/migrations/0053-change_password_encryption.ts @@ -3,9 +3,6 @@ * This migration adds and renames columns in the table `users` */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('ALTER TABLE users RENAME COLUMN created TO created_at;') await queryFn('ALTER TABLE users RENAME COLUMN deletedAt TO deleted_at;') diff --git a/database/migrations/0054-recalculate_balance_and_decay.ts b/database/migrations/0054-recalculate_balance_and_decay.ts index 7c567c36a..41a1a2382 100644 --- a/database/migrations/0054-recalculate_balance_and_decay.ts +++ b/database/migrations/0054-recalculate_balance_and_decay.ts @@ -10,11 +10,7 @@ * WARNING: This Migration must be run in TZ=UTC */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable no-unused-vars */ - -import fs from 'fs' +import fs from 'node:fs' import { Decimal } from 'decimal.js-light' // Set precision value @@ -94,7 +90,9 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis logFile, `email;first_name;last_name;affected_transactions;new_balance;new_decay;old_balance;old_decay;delta;\n`, (err) => { - if (err) throw err + if (err) { + throw err + } }, ) @@ -144,7 +142,9 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis transaction.dec_balance, )};\n`, (err) => { - if (err) throw err + if (err) { + throw err + } }, ) } @@ -156,5 +156,6 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis } } -/* eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function */ -export async function downgrade(queryFn: (query: string, values?: any[]) => Promise>) {} +export async function downgrade(_queryFn: (query: string, values?: any[]) => Promise>) { + // Not needed +} diff --git a/database/migrations/0055-consistent_deleted_users.ts b/database/migrations/0055-consistent_deleted_users.ts index 93d5cb575..a0623c921 100644 --- a/database/migrations/0055-consistent_deleted_users.ts +++ b/database/migrations/0055-consistent_deleted_users.ts @@ -1,8 +1,5 @@ /* MIGRATION TO soft delete user contacts of soft deleted users */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` UPDATE user_contacts LEFT JOIN users ON users.email_id = user_contacts.id @@ -11,5 +8,6 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis AND users.deleted_at IS NOT NULL;`) } -/* eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function */ -export async function downgrade(queryFn: (query: string, values?: any[]) => Promise>) {} +export async function downgrade(_queryFn: (query: string, values?: any[]) => Promise>) { + // Not needed +} diff --git a/database/migrations/0056-consistent_transactions_table.ts b/database/migrations/0056-consistent_transactions_table.ts index 0d8721f07..0f8a4148e 100644 --- a/database/migrations/0056-consistent_transactions_table.ts +++ b/database/migrations/0056-consistent_transactions_table.ts @@ -1,10 +1,9 @@ /* MIGRATION TO add users that have a transaction but do not exist */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -import { v4 as uuidv4 } from 'uuid' import { OkPacket } from 'mysql' +import { v4 as uuidv4 } from 'uuid' + export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { const missingUserIds = await queryFn(` SELECT user_id FROM transactions @@ -34,5 +33,6 @@ export async function upgrade(queryFn: (query: string, values?: any[]) => Promis } } -/* eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function */ -export async function downgrade(queryFn: (query: string, values?: any[]) => Promise>) {} +export async function downgrade(_queryFn: (query: string, values?: any[]) => Promise>) { + // Not needed +} diff --git a/database/migrations/0057-clear_old_password_junk.ts b/database/migrations/0057-clear_old_password_junk.ts index 3e6f3f76a..6b9f803d8 100644 --- a/database/migrations/0057-clear_old_password_junk.ts +++ b/database/migrations/0057-clear_old_password_junk.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('ALTER TABLE users DROP COLUMN public_key;') await queryFn('ALTER TABLE users DROP COLUMN privkey;') diff --git a/database/migrations/0058-add_communities_table.ts b/database/migrations/0058-add_communities_table.ts index 1e5bb5084..ea5667d7e 100644 --- a/database/migrations/0058-add_communities_table.ts +++ b/database/migrations/0058-add_communities_table.ts @@ -3,9 +3,6 @@ * This migration creates the `community` and 'communityfederation' tables in the `apollo` database (`gradido_community`). */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE communities ( diff --git a/database/migrations/0059-add_hide_amount_to_users.ts b/database/migrations/0059-add_hide_amount_to_users.ts index d06e00559..7d91ab52d 100644 --- a/database/migrations/0059-add_hide_amount_to_users.ts +++ b/database/migrations/0059-add_hide_amount_to_users.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('ALTER TABLE users ADD COLUMN hideAmountGDD bool DEFAULT false;') await queryFn('ALTER TABLE users ADD COLUMN hideAmountGDT bool DEFAULT false;') diff --git a/database/migrations/0060-update_communities_table.ts b/database/migrations/0060-update_communities_table.ts index c1268850a..55f62d25f 100644 --- a/database/migrations/0060-update_communities_table.ts +++ b/database/migrations/0060-update_communities_table.ts @@ -3,9 +3,6 @@ * This migration creates the `community` and 'communityfederation' tables in the `apollo` database (`gradido_community`). */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `communities` MODIFY COLUMN `last_announced_at` datetime(3) AFTER `end_point`;', diff --git a/database/migrations/0061-event_refactoring.ts b/database/migrations/0061-event_refactoring.ts index 019d3272b..0c341032a 100644 --- a/database/migrations/0061-event_refactoring.ts +++ b/database/migrations/0061-event_refactoring.ts @@ -4,9 +4,6 @@ * It renames the table to `event`, introduces new fields and renames others. */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('RENAME TABLE `event_protocol` TO `events`;') await queryFn('ALTER TABLE `events` RENAME COLUMN `user_id` TO `affected_user_id`;') diff --git a/database/migrations/0062-event_contribution_confirm.ts b/database/migrations/0062-event_contribution_confirm.ts index 97635b359..abd79d8d5 100644 --- a/database/migrations/0062-event_contribution_confirm.ts +++ b/database/migrations/0062-event_contribution_confirm.ts @@ -4,9 +4,6 @@ * to ADMIN_CONTRIBUTION_CONFIRM */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'UPDATE `events` SET `type` = "ADMIN_CONTRIBUTION_CONFIRM" WHERE `type` = "CONTRIBUTION_CONFIRM";', diff --git a/database/migrations/0063-event_link_fields.ts b/database/migrations/0063-event_link_fields.ts index 3b383ad07..d46e25454 100644 --- a/database/migrations/0063-event_link_fields.ts +++ b/database/migrations/0063-event_link_fields.ts @@ -5,9 +5,6 @@ * new fields. */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `events` ADD COLUMN `involved_transaction_link_id` int(10) unsigned DEFAULT NULL AFTER `involved_contribution_message_id`;', diff --git a/database/migrations/0064-event_rename.ts b/database/migrations/0064-event_rename.ts index 992b30de9..9730b817f 100644 --- a/database/migrations/0064-event_rename.ts +++ b/database/migrations/0064-event_rename.ts @@ -4,9 +4,6 @@ * naming conventions. */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'UPDATE `events` SET `type` = "USER_ACTIVATE_ACCOUNT" WHERE `type` = "ACTIVATE_ACCOUNT";', diff --git a/database/migrations/0065-refactor_communities_table.ts b/database/migrations/0065-refactor_communities_table.ts index 06f5b3990..fda02a92d 100644 --- a/database/migrations/0065-refactor_communities_table.ts +++ b/database/migrations/0065-refactor_communities_table.ts @@ -3,9 +3,6 @@ * This migration creates the `community` and 'communityfederation' tables in the `apollo` database (`gradido_community`). */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(`RENAME TABLE communities TO federated_communities;`) await queryFn(` diff --git a/database/migrations/0066-x-community-sendcoins-transactions_table.ts b/database/migrations/0066-x-community-sendcoins-transactions_table.ts index 425248c22..137bebcf3 100644 --- a/database/migrations/0066-x-community-sendcoins-transactions_table.ts +++ b/database/migrations/0066-x-community-sendcoins-transactions_table.ts @@ -1,8 +1,5 @@ /* MIGRATION TO add users that have a transaction but do not exist */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `transactions` MODIFY COLUMN `previous` int(10) unsigned DEFAULT NULL NULL AFTER `id`;', diff --git a/database/migrations/0067-private_key_in_community_table.ts b/database/migrations/0067-private_key_in_community_table.ts index f36e68b16..1fbaddfaf 100644 --- a/database/migrations/0067-private_key_in_community_table.ts +++ b/database/migrations/0067-private_key_in_community_table.ts @@ -3,9 +3,6 @@ * This migration adds a field for the private key in the community.table */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `communities` ADD COLUMN `private_key` binary(64) DEFAULT NULL AFTER `public_key`;', diff --git a/database/migrations/0068-community_tables_public_key_length.ts b/database/migrations/0068-community_tables_public_key_length.ts index d5d047c26..8c9c6d151 100644 --- a/database/migrations/0068-community_tables_public_key_length.ts +++ b/database/migrations/0068-community_tables_public_key_length.ts @@ -3,9 +3,6 @@ * This migration corrects the length of the saved public keys to 32 as this is the length it is generated for. */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // federated communities await queryFn('DROP INDEX `public_api_key` ON `federated_communities`;') diff --git a/database/migrations/0069-add_user_roles_table.ts b/database/migrations/0069-add_user_roles_table.ts index 1e774d05f..0040843b3 100644 --- a/database/migrations/0069-add_user_roles_table.ts +++ b/database/migrations/0069-add_user_roles_table.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE user_roles ( diff --git a/database/migrations/0070-add_dlt_transactions_table.ts b/database/migrations/0070-add_dlt_transactions_table.ts index 4249edf0f..bfffa7175 100644 --- a/database/migrations/0070-add_dlt_transactions_table.ts +++ b/database/migrations/0070-add_dlt_transactions_table.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE dlt_transactions ( diff --git a/database/migrations/0071-add-pending_transactions-table.ts b/database/migrations/0071-add-pending_transactions-table.ts index ef602bb72..e9f61a873 100644 --- a/database/migrations/0071-add-pending_transactions-table.ts +++ b/database/migrations/0071-add-pending_transactions-table.ts @@ -1,8 +1,5 @@ /* MIGRATION TO add new pending_transactions table */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE pending_transactions ( diff --git a/database/migrations/0072-add_communityuuid_to_transactions_table.ts b/database/migrations/0072-add_communityuuid_to_transactions_table.ts index 22e7c36eb..5ff33da4e 100644 --- a/database/migrations/0072-add_communityuuid_to_transactions_table.ts +++ b/database/migrations/0072-add_communityuuid_to_transactions_table.ts @@ -1,8 +1,5 @@ /* MIGRATION TO add users that have a transaction but do not exist */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `transactions` ADD COLUMN `user_community_uuid` char(36) DEFAULT NULL NULL AFTER `user_id`;', diff --git a/database/migrations/0073-introduce_foreign_user_in_users_table.ts b/database/migrations/0073-introduce_foreign_user_in_users_table.ts index 96bc07335..e94e135f6 100644 --- a/database/migrations/0073-introduce_foreign_user_in_users_table.ts +++ b/database/migrations/0073-introduce_foreign_user_in_users_table.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('ALTER TABLE `users` DROP KEY IF EXISTS `gradido_id`;') await queryFn('ALTER TABLE `users` DROP INDEX IF EXISTS `gradido_id`;') diff --git a/database/migrations/0074-insert_communityuuid in_existing_users.ts b/database/migrations/0074-insert_communityuuid in_existing_users.ts index 11ddf7096..09c28298f 100644 --- a/database/migrations/0074-insert_communityuuid in_existing_users.ts +++ b/database/migrations/0074-insert_communityuuid in_existing_users.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { // read the community uuid of the homeCommunity const result = await queryFn(`SELECT c.community_uuid from communities as c WHERE c.foreign = 0`) diff --git a/database/migrations/0075-contribution_message_add_index.ts b/database/migrations/0075-contribution_message_add_index.ts index 6348d8e99..f8548992d 100644 --- a/database/migrations/0075-contribution_message_add_index.ts +++ b/database/migrations/0075-contribution_message_add_index.ts @@ -3,9 +3,6 @@ * This migration adds a field for the private key in the community.table */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('ALTER TABLE `contribution_messages` ADD INDEX(`contribution_id`);') } diff --git a/database/migrations/0077-add_resubmission_date_contribution_message.ts b/database/migrations/0077-add_resubmission_date_contribution_message.ts index 598068b2f..c06cbd882 100644 --- a/database/migrations/0077-add_resubmission_date_contribution_message.ts +++ b/database/migrations/0077-add_resubmission_date_contribution_message.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( `ALTER TABLE \`contribution_messages\` ADD COLUMN \`resubmission_at\` datetime NULL DEFAULT NULL AFTER \`deleted_by\`;`, diff --git a/database/migrations/0078-move_resubmission_date.ts b/database/migrations/0078-move_resubmission_date.ts index 07a226540..78b56472c 100644 --- a/database/migrations/0078-move_resubmission_date.ts +++ b/database/migrations/0078-move_resubmission_date.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( `ALTER TABLE \`contributions\` ADD COLUMN \`resubmission_at\` datetime NULL DEFAULT NULL AFTER \`created_at\`;`, diff --git a/database/migrations/0082-introduce_gms_registration.ts b/database/migrations/0082-introduce_gms_registration.ts index b24be2bb5..ecefdb95c 100644 --- a/database/migrations/0082-introduce_gms_registration.ts +++ b/database/migrations/0082-introduce_gms_registration.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `users` MODIFY COLUMN `foreign` tinyint(1) NOT NULL DEFAULT 0 AFTER `id`;', diff --git a/database/migrations/0083-join_community_federated_communities.ts b/database/migrations/0083-join_community_federated_communities.ts index ca40e28d4..a2f794bc6 100644 --- a/database/migrations/0083-join_community_federated_communities.ts +++ b/database/migrations/0083-join_community_federated_communities.ts @@ -1,3 +1,7 @@ -export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) {} +export async function upgrade(_queryFn: (query: string, values?: any[]) => Promise>) { + // Not needed +} -export async function downgrade(queryFn: (query: string, values?: any[]) => Promise>) {} +export async function downgrade(_queryFn: (query: string, values?: any[]) => Promise>) { + // Not needed +} diff --git a/database/migrations/0084-introduce_humhub_registration.ts b/database/migrations/0084-introduce_humhub_registration.ts index 858283602..084088614 100644 --- a/database/migrations/0084-introduce_humhub_registration.ts +++ b/database/migrations/0084-introduce_humhub_registration.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `users` ADD COLUMN IF NOT EXISTS `humhub_allowed` tinyint(1) NOT NULL DEFAULT 0 AFTER `gms_registered_at`;', diff --git a/database/migrations/0085-add_index_transactions_user_id.ts b/database/migrations/0085-add_index_transactions_user_id.ts index c4cb02431..6cb5cf16e 100644 --- a/database/migrations/0085-add_index_transactions_user_id.ts +++ b/database/migrations/0085-add_index_transactions_user_id.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('CREATE INDEX user_id ON transactions (user_id);') } diff --git a/database/migrations/0086-add_community_location.ts b/database/migrations/0086-add_community_location.ts index 5aeaec233..494337c70 100644 --- a/database/migrations/0086-add_community_location.ts +++ b/database/migrations/0086-add_community_location.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn( 'ALTER TABLE `communities` ADD COLUMN IF NOT EXISTS `location` geometry DEFAULT NULL NULL AFTER `gms_api_key`;', diff --git a/database/migrations/0087-add_index_on_user_roles.ts b/database/migrations/0087-add_index_on_user_roles.ts index 40d49ccbf..de0bebe87 100644 --- a/database/migrations/0087-add_index_on_user_roles.ts +++ b/database/migrations/0087-add_index_on_user_roles.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn('ALTER TABLE `user_roles` ADD INDEX user_id (user_id);') } diff --git a/database/migrations/0088-create_project_brandings.ts b/database/migrations/0088-create_project_brandings.ts index 9a0c56dc2..763005a36 100644 --- a/database/migrations/0088-create_project_brandings.ts +++ b/database/migrations/0088-create_project_brandings.ts @@ -2,8 +2,6 @@ * * This migration creates the `community` and 'communityfederation' tables in the `apollo` database (`gradido_community`). */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` diff --git a/database/migrations/0089-add_openai_threads.ts b/database/migrations/0089-add_openai_threads.ts index d9dbed140..3d5865f91 100644 --- a/database/migrations/0089-add_openai_threads.ts +++ b/database/migrations/0089-add_openai_threads.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* eslint-disable @typescript-eslint/no-explicit-any */ - export async function upgrade(queryFn: (query: string, values?: any[]) => Promise>) { await queryFn(` CREATE TABLE openai_threads ( diff --git a/database/package.json b/database/package.json index 47af20975..5490d983b 100644 --- a/database/package.json +++ b/database/package.json @@ -16,24 +16,14 @@ "dev_up": "cross-env TZ=UTC ts-node src/index.ts up", "dev_down": "cross-env TZ=UTC ts-node src/index.ts down", "dev_reset": "cross-env TZ=UTC ts-node src/index.ts reset", - "lint": "eslint --max-warnings=0 --ext .js,.ts ." + "lint": "biome check --error-on-warnings .", + "lint:fix": "biome check --error-on-warnings . --write" }, "devDependencies": { - "@eslint-community/eslint-plugin-eslint-comments": "^3.2.1", + "@biomejs/biome": "1.9.4", "@types/faker": "^5.5.9", "@types/geojson": "^7946.0.13", "@types/node": "^17.0.21", - "@typescript-eslint/eslint-plugin": "^5.57.1", - "@typescript-eslint/parser": "^5.57.1", - "eslint": "^8.37.0", - "eslint-config-prettier": "^8.8.0", - "eslint-config-standard": "^17.0.0", - "eslint-import-resolver-typescript": "^3.5.4", - "eslint-plugin-import": "^2.27.5", - "eslint-plugin-n": "^15.7.0", - "eslint-plugin-prettier": "^4.2.1", - "eslint-plugin-promise": "^6.1.1", - "eslint-plugin-security": "^1.7.1", "mkdirp": "^3.0.1", "ncp": "^2.0.0", "prettier": "^2.8.7", diff --git a/database/src/config/detectLastDBVersion.ts b/database/src/config/detectLastDBVersion.ts index bc9e7766e..2dd2d9ace 100644 --- a/database/src/config/detectLastDBVersion.ts +++ b/database/src/config/detectLastDBVersion.ts @@ -1,5 +1,5 @@ -import path from 'path' import fs from 'fs' +import path from 'path' // Define the regular expression pattern once const DB_VERSION_PATTERN = /^(\d{4}-[a-z0-9-_]+)/ diff --git a/database/src/config/index.ts b/database/src/config/index.ts index 0fc8cf9c5..4aaa2cbbf 100644 --- a/database/src/config/index.ts +++ b/database/src/config/index.ts @@ -1,5 +1,3 @@ -/* eslint-disable n/no-process-env */ - import dotenv from 'dotenv' dotenv.config() diff --git a/database/src/index.ts b/database/src/index.ts index 96785a721..48e4273c8 100644 --- a/database/src/index.ts +++ b/database/src/index.ts @@ -1,9 +1,9 @@ -import { createDatabase } from './prepare' import { CONFIG } from './config' +import { createDatabase } from './prepare' +import path from 'path' import { createPool } from 'mysql' import { Migration } from 'ts-mysql-migrate' -import path from 'path' const run = async (command: string) => { // Database actions not supported by our migration library @@ -47,7 +47,7 @@ const run = async (command: string) => { run(process.argv[2]) .catch((err) => { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no logger present console.log(err) process.exit(1) }) diff --git a/database/src/prepare.ts b/database/src/prepare.ts index 2ecbb4c42..f27080123 100644 --- a/database/src/prepare.ts +++ b/database/src/prepare.ts @@ -28,7 +28,7 @@ export const createDatabase = async (): Promise => { ) if ((rows).length > 0) { await con.query(`DROP TABLE \`${CONFIG.DB_DATABASE}\`.\`migrations\``) - // eslint-disable-next-line no-console + console.log('Found and dropped old migrations table') } } diff --git a/database/src/typeorm/GeometryTransformer.ts b/database/src/typeorm/GeometryTransformer.ts index 3598c493f..bc80d256b 100644 --- a/database/src/typeorm/GeometryTransformer.ts +++ b/database/src/typeorm/GeometryTransformer.ts @@ -1,8 +1,8 @@ -/* eslint-disable camelcase */ -import { Geometry as wkx_Geometry } from 'wkx' import { Geometry } from 'geojson' import { ValueTransformer } from 'typeorm/decorator/options/ValueTransformer' +import { Geometry as wkx_Geometry } from 'wkx' + /** * TypeORM transformer to convert GeoJSON to MySQL WKT (Well Known Text) e.g. POINT(LAT, LON) and back */ diff --git a/database/tsconfig.json b/database/tsconfig.json index 445b9d11f..37347b875 100644 --- a/database/tsconfig.json +++ b/database/tsconfig.json @@ -49,7 +49,7 @@ // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ // "rootDirs": [".", "../database"], /* List of root folders whose combined content represents the structure of the project at runtime. */ // "typeRoots": [], /* List of folders to include type definitions from. */ - // "types": [], /* Type declaration files to be included in compilation. */ + "types": ["node"], /* Type declaration files to be included in compilation. */ // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ diff --git a/database/yarn.lock b/database/yarn.lock index 491470016..c7a5556e9 100644 --- a/database/yarn.lock +++ b/database/yarn.lock @@ -9,6 +9,60 @@ dependencies: regenerator-runtime "^0.13.11" +"@biomejs/biome@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-1.9.4.tgz#89766281cbc3a0aae865a7ff13d6aaffea2842bf" + integrity sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog== + optionalDependencies: + "@biomejs/cli-darwin-arm64" "1.9.4" + "@biomejs/cli-darwin-x64" "1.9.4" + "@biomejs/cli-linux-arm64" "1.9.4" + "@biomejs/cli-linux-arm64-musl" "1.9.4" + "@biomejs/cli-linux-x64" "1.9.4" + "@biomejs/cli-linux-x64-musl" "1.9.4" + "@biomejs/cli-win32-arm64" "1.9.4" + "@biomejs/cli-win32-x64" "1.9.4" + +"@biomejs/cli-darwin-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz#dfa376d23a54a2d8f17133c92f23c1bf2e62509f" + integrity sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw== + +"@biomejs/cli-darwin-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz#eafc2ce3849d385fc02238aad1ca4a73395a64d9" + integrity sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg== + +"@biomejs/cli-linux-arm64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz#d780c3e01758fc90f3268357e3f19163d1f84fca" + integrity sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA== + +"@biomejs/cli-linux-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz#8ed1dd0e89419a4b66a47f95aefb8c46ae6041c9" + integrity sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g== + +"@biomejs/cli-linux-x64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz#f36982b966bd671a36671e1de4417963d7db15fb" + integrity sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg== + +"@biomejs/cli-linux-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz#a0a7f56680c76b8034ddc149dbf398bdd3a462e8" + integrity sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg== + +"@biomejs/cli-win32-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz#e2ef4e0084e76b7e26f0fc887c5ef1265ea56200" + integrity sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg== + +"@biomejs/cli-win32-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz#4c7afa90e3970213599b4095e62f87e5972b2340" + integrity sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA== + "@cspotcode/source-map-support@^0.8.0": version "0.8.1" resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" From eee78ec79678e980076b40808ac6a4915d23a8f0 Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Sat, 26 Apr 2025 10:50:45 +0200 Subject: [PATCH 07/13] remove eslint and prettier config from database --- database/.eslintignore | 3 - database/.eslintrc.js | 206 ---------------------------------------- database/.prettierrc.js | 9 -- 3 files changed, 218 deletions(-) delete mode 100644 database/.eslintignore delete mode 100644 database/.eslintrc.js delete mode 100644 database/.prettierrc.js diff --git a/database/.eslintignore b/database/.eslintignore deleted file mode 100644 index f6b255e92..000000000 --- a/database/.eslintignore +++ /dev/null @@ -1,3 +0,0 @@ -node_modules -**/*.min.js -build \ No newline at end of file diff --git a/database/.eslintrc.js b/database/.eslintrc.js deleted file mode 100644 index 6f1db58ff..000000000 --- a/database/.eslintrc.js +++ /dev/null @@ -1,206 +0,0 @@ -// eslint-disable-next-line import/no-commonjs, import/unambiguous -module.exports = { - root: true, - env: { - node: true, - }, - parser: '@typescript-eslint/parser', - plugins: ['prettier', '@typescript-eslint', 'import', 'n', 'promise'], - extends: [ - 'standard', - 'eslint:recommended', - 'plugin:prettier/recommended', - 'plugin:import/recommended', - 'plugin:import/typescript', - // 'plugin:security/recommended', - 'plugin:@eslint-community/eslint-comments/recommended', - ], - settings: { - 'import/parsers': { - '@typescript-eslint/parser': ['.ts', '.tsx'], - }, - 'import/resolver': { - typescript: { - project: ['./tsconfig.json'], - }, - node: true, - }, - }, - rules: { - 'no-console': 'error', - camelcase: 'error', - 'no-debugger': 'error', - 'prettier/prettier': [ - 'error', - { - htmlWhitespaceSensitivity: 'ignore', - }, - ], - // import - 'import/export': 'error', - 'import/no-deprecated': 'error', - 'import/no-empty-named-blocks': 'error', - // 'import/no-extraneous-dependencies': 'error', - 'import/no-mutable-exports': 'error', - 'import/no-unused-modules': 'error', - 'import/no-named-as-default': 'error', - 'import/no-named-as-default-member': 'error', - 'import/no-amd': 'error', - 'import/no-commonjs': 'error', - 'import/no-import-module-exports': 'error', - 'import/no-nodejs-modules': 'off', - 'import/unambiguous': 'error', - 'import/default': 'error', - 'import/named': 'error', - 'import/namespace': 'error', - 'import/no-absolute-path': 'error', - // 'import/no-cycle': 'error', - 'import/no-dynamic-require': 'error', - 'import/no-internal-modules': 'off', - 'import/no-relative-packages': 'error', - // 'import/no-relative-parent-imports': ['error', { ignore: ['@/*'] }], - 'import/no-self-import': 'error', - 'import/no-unresolved': 'error', - 'import/no-useless-path-segments': 'error', - 'import/no-webpack-loader-syntax': 'error', - 'import/consistent-type-specifier-style': 'error', - 'import/exports-last': 'off', - 'import/extensions': 'error', - 'import/first': 'error', - 'import/group-exports': 'off', - 'import/newline-after-import': 'error', - 'import/no-anonymous-default-export': 'error', - 'import/no-default-export': 'error', - 'import/no-duplicates': 'error', - 'import/no-named-default': 'error', - 'import/no-namespace': 'error', - 'import/no-unassigned-import': 'error', - // 'import/order': [ - // 'error', - // { - // groups: ['builtin', 'external', 'internal', 'parent', 'sibling', 'index', 'object', 'type'], - // 'newlines-between': 'always', - // pathGroups: [ - // { - // pattern: '@?*/**', - // group: 'external', - // position: 'after', - // }, - // { - // pattern: '@/**', - // group: 'external', - // position: 'after', - // }, - // ], - // alphabetize: { - // order: 'asc' /* sort in ascending order. Options: ['ignore', 'asc', 'desc'] */, - // caseInsensitive: true /* ignore case. Options: [true, false] */, - // }, - // distinctGroup: true, - // }, - // ], - 'import/prefer-default-export': 'off', - // n - 'n/handle-callback-err': 'error', - 'n/no-callback-literal': 'error', - 'n/no-exports-assign': 'error', - // 'n/no-extraneous-import': 'error', - 'n/no-extraneous-require': 'error', - 'n/no-hide-core-modules': 'error', - 'n/no-missing-import': 'off', // not compatible with typescript - 'n/no-missing-require': 'error', - 'n/no-new-require': 'error', - 'n/no-path-concat': 'error', - // 'n/no-process-exit': 'error', - 'n/no-unpublished-bin': 'error', - 'n/no-unpublished-import': 'off', // TODO need to exclude seeds - 'n/no-unpublished-require': 'error', - 'n/no-unsupported-features': ['error', { ignores: ['modules'] }], - 'n/no-unsupported-features/es-builtins': 'error', - 'n/no-unsupported-features/es-syntax': 'error', - 'n/no-unsupported-features/node-builtins': 'error', - 'n/process-exit-as-throw': 'error', - 'n/shebang': 'error', - 'n/callback-return': 'error', - 'n/exports-style': 'error', - 'n/file-extension-in-import': 'off', - 'n/global-require': 'error', - 'n/no-mixed-requires': 'error', - 'n/no-process-env': 'error', - 'n/no-restricted-import': 'error', - 'n/no-restricted-require': 'error', - // 'n/no-sync': 'error', - 'n/prefer-global/buffer': 'error', - 'n/prefer-global/console': 'error', - 'n/prefer-global/process': 'error', - 'n/prefer-global/text-decoder': 'error', - 'n/prefer-global/text-encoder': 'error', - 'n/prefer-global/url': 'error', - 'n/prefer-global/url-search-params': 'error', - 'n/prefer-promises/dns': 'error', - // 'n/prefer-promises/fs': 'error', - // promise - // 'promise/catch-or-return': 'error', - // 'promise/no-return-wrap': 'error', - // 'promise/param-names': 'error', - // 'promise/always-return': 'error', - // 'promise/no-native': 'off', - // 'promise/no-nesting': 'warn', - // 'promise/no-promise-in-callback': 'warn', - // 'promise/no-callback-in-promise': 'warn', - // 'promise/avoid-new': 'warn', - // 'promise/no-new-statics': 'error', - // 'promise/no-return-in-finally': 'warn', - // 'promise/valid-params': 'warn', - // 'promise/prefer-await-to-callbacks': 'error', - // 'promise/no-multiple-resolved': 'error', - // eslint comments - '@eslint-community/eslint-comments/disable-enable-pair': ['error', { allowWholeFile: true }], - '@eslint-community/eslint-comments/no-restricted-disable': 'error', - '@eslint-community/eslint-comments/no-use': 'off', - '@eslint-community/eslint-comments/require-description': 'off', - }, - overrides: [ - // only for ts files - { - files: ['*.ts', '*.tsx'], - extends: [ - // 'plugin:@typescript-eslint/recommended', - // 'plugin:@typescript-eslint/recommended-requiring-type-checking', - // 'plugin:@typescript-eslint/strict', - ], - rules: { - // allow explicitly defined dangling promises - // '@typescript-eslint/no-floating-promises': ['error', { ignoreVoid: true }], - 'no-void': ['error', { allowAsStatement: true }], - // ignore prefer-regexp-exec rule to allow string.match(regex) - '@typescript-eslint/prefer-regexp-exec': 'off', - // this should not run on ts files: https://github.com/import-js/eslint-plugin-import/issues/2215#issuecomment-911245486 - 'import/unambiguous': 'off', - // this is not compatible with typeorm, due to joined tables can be null, but are not defined as nullable - '@typescript-eslint/no-unnecessary-condition': 'off', - }, - parserOptions: { - tsconfigRootDir: __dirname, - project: ['./tsconfig.json'], - // this is to properly reference the referenced project database without requirement of compiling it - // eslint-disable-next-line camelcase - EXPERIMENTAL_useSourceOfProjectReferenceRedirect: true, - }, - }, - // we do not have testing on the database - // { - // files: ['*.test.ts'], - // plugins: ['jest'], - // rules: { - // 'jest/no-disabled-tests': 'error', - // 'jest/no-focused-tests': 'error', - // 'jest/no-identical-title': 'error', - // 'jest/prefer-to-have-length': 'error', - // 'jest/valid-expect': 'error', - // '@typescript-eslint/unbound-method': 'off', - // 'jest/unbound-method': 'error', - // }, - // }, - ], -} diff --git a/database/.prettierrc.js b/database/.prettierrc.js deleted file mode 100644 index bc1d767d7..000000000 --- a/database/.prettierrc.js +++ /dev/null @@ -1,9 +0,0 @@ -module.exports = { - semi: false, - printWidth: 100, - singleQuote: true, - trailingComma: "all", - tabWidth: 2, - bracketSpacing: true, - endOfLine: "auto", -}; From 4ff7979bdc4904643aed8aaa96bbfa09e86eb99d Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Sat, 26 Apr 2025 10:56:21 +0200 Subject: [PATCH 08/13] add biome to dht-node, fix biome linting errors --- dht-node/.eslintignore | 4 - dht-node/.eslintrc.js | 205 ---------------------------- dht-node/.prettierrc.js | 9 -- dht-node/package.json | 17 +-- dht-node/src/config/schema.ts | 2 +- dht-node/src/dht_node/index.test.ts | 2 +- dht-node/src/dht_node/index.ts | 24 ++-- dht-node/src/index.ts | 5 +- dht-node/src/typeorm/connection.ts | 4 +- dht-node/yarn.lock | 54 ++++++++ 10 files changed, 75 insertions(+), 251 deletions(-) delete mode 100644 dht-node/.eslintignore delete mode 100644 dht-node/.eslintrc.js delete mode 100644 dht-node/.prettierrc.js diff --git a/dht-node/.eslintignore b/dht-node/.eslintignore deleted file mode 100644 index 1ae86fe5e..000000000 --- a/dht-node/.eslintignore +++ /dev/null @@ -1,4 +0,0 @@ -node_modules -**/*.min.js -build -coverage \ No newline at end of file diff --git a/dht-node/.eslintrc.js b/dht-node/.eslintrc.js deleted file mode 100644 index 5a1c522d2..000000000 --- a/dht-node/.eslintrc.js +++ /dev/null @@ -1,205 +0,0 @@ -// eslint-disable-next-line import/no-commonjs, import/unambiguous -module.exports = { - root: true, - env: { - node: true, - }, - parser: '@typescript-eslint/parser', - plugins: ['prettier', '@typescript-eslint', 'import', 'n', 'promise'], - extends: [ - 'standard', - 'eslint:recommended', - 'plugin:prettier/recommended', - 'plugin:import/recommended', - 'plugin:import/typescript', - // 'plugin:security/recommended', - 'plugin:@eslint-community/eslint-comments/recommended', - ], - settings: { - 'import/parsers': { - '@typescript-eslint/parser': ['.ts', '.tsx'], - }, - 'import/resolver': { - typescript: { - project: ['./tsconfig.json'], - }, - node: true, - }, - }, - rules: { - 'no-console': 'error', - camelcase: 'error', - 'no-debugger': 'error', - 'prettier/prettier': [ - 'error', - { - htmlWhitespaceSensitivity: 'ignore', - }, - ], - // import - 'import/export': 'error', - // 'import/no-deprecated': 'error', - 'import/no-empty-named-blocks': 'error', - 'import/no-extraneous-dependencies': 'error', - 'import/no-mutable-exports': 'error', - 'import/no-unused-modules': 'error', - 'import/no-named-as-default': 'error', - 'import/no-named-as-default-member': 'error', - 'import/no-amd': 'error', - 'import/no-commonjs': 'error', - 'import/no-import-module-exports': 'error', - 'import/no-nodejs-modules': 'off', - 'import/unambiguous': 'error', - 'import/default': 'error', - 'import/named': 'error', - 'import/namespace': 'error', - 'import/no-absolute-path': 'error', - 'import/no-cycle': 'error', - 'import/no-dynamic-require': 'error', - 'import/no-internal-modules': 'off', - 'import/no-relative-packages': 'error', - 'import/no-relative-parent-imports': ['error', { ignore: ['@/*'] }], - 'import/no-self-import': 'error', - 'import/no-unresolved': 'error', - 'import/no-useless-path-segments': 'error', - 'import/no-webpack-loader-syntax': 'error', - 'import/consistent-type-specifier-style': 'error', - 'import/exports-last': 'off', - 'import/extensions': 'error', - 'import/first': 'error', - 'import/group-exports': 'off', - 'import/newline-after-import': 'error', - 'import/no-anonymous-default-export': 'error', - 'import/no-default-export': 'error', - 'import/no-duplicates': 'error', - 'import/no-named-default': 'error', - 'import/no-namespace': 'error', - 'import/no-unassigned-import': 'error', - 'import/order': [ - 'error', - { - groups: ['builtin', 'external', 'internal', 'parent', 'sibling', 'index', 'object', 'type'], - 'newlines-between': 'always', - pathGroups: [ - { - pattern: '@?*/**', - group: 'external', - position: 'after', - }, - { - pattern: '@/**', - group: 'external', - position: 'after', - }, - ], - alphabetize: { - order: 'asc' /* sort in ascending order. Options: ['ignore', 'asc', 'desc'] */, - caseInsensitive: true /* ignore case. Options: [true, false] */, - }, - distinctGroup: true, - }, - ], - 'import/prefer-default-export': 'off', - // n - 'n/handle-callback-err': 'error', - 'n/no-callback-literal': 'error', - 'n/no-exports-assign': 'error', - 'n/no-extraneous-import': 'error', - 'n/no-extraneous-require': 'error', - 'n/no-hide-core-modules': 'error', - 'n/no-missing-import': 'off', // not compatible with typescript - 'n/no-missing-require': 'error', - 'n/no-new-require': 'error', - 'n/no-path-concat': 'error', - 'n/no-process-exit': 'error', - 'n/no-unpublished-bin': 'error', - 'n/no-unpublished-import': 'off', // TODO need to exclude seeds - 'n/no-unpublished-require': 'error', - 'n/no-unsupported-features': ['error', { ignores: ['modules'] }], - 'n/no-unsupported-features/es-builtins': 'error', - 'n/no-unsupported-features/es-syntax': 'error', - 'n/no-unsupported-features/node-builtins': 'error', - 'n/process-exit-as-throw': 'error', - 'n/shebang': 'error', - 'n/callback-return': 'error', - 'n/exports-style': 'error', - 'n/file-extension-in-import': 'off', - 'n/global-require': 'error', - 'n/no-mixed-requires': 'error', - 'n/no-process-env': 'error', - 'n/no-restricted-import': 'error', - 'n/no-restricted-require': 'error', - 'n/no-sync': 'error', - 'n/prefer-global/buffer': 'error', - 'n/prefer-global/console': 'error', - 'n/prefer-global/process': 'error', - 'n/prefer-global/text-decoder': 'error', - 'n/prefer-global/text-encoder': 'error', - 'n/prefer-global/url': 'error', - 'n/prefer-global/url-search-params': 'error', - 'n/prefer-promises/dns': 'error', - 'n/prefer-promises/fs': 'error', - // promise - // 'promise/catch-or-return': 'error', - // 'promise/no-return-wrap': 'error', - // 'promise/param-names': 'error', - // 'promise/always-return': 'error', - // 'promise/no-native': 'off', - // 'promise/no-nesting': 'warn', - // 'promise/no-promise-in-callback': 'warn', - // 'promise/no-callback-in-promise': 'warn', - // 'promise/avoid-new': 'warn', - // 'promise/no-new-statics': 'error', - // 'promise/no-return-in-finally': 'warn', - // 'promise/valid-params': 'warn', - // 'promise/prefer-await-to-callbacks': 'error', - // 'promise/no-multiple-resolved': 'error', - // eslint comments - '@eslint-community/eslint-comments/disable-enable-pair': ['error', { allowWholeFile: true }], - '@eslint-community/eslint-comments/no-restricted-disable': 'error', - '@eslint-community/eslint-comments/no-use': 'off', - '@eslint-community/eslint-comments/require-description': 'off', - }, - overrides: [ - // only for ts files - { - files: ['*.ts', '*.tsx'], - extends: [ - 'plugin:@typescript-eslint/recommended', - // 'plugin:@typescript-eslint/recommended-requiring-type-checking', - // 'plugin:@typescript-eslint/strict', - ], - rules: { - // allow explicitly defined dangling promises - // '@typescript-eslint/no-floating-promises': ['error', { ignoreVoid: true }], - 'no-void': ['error', { allowAsStatement: true }], - // ignore prefer-regexp-exec rule to allow string.match(regex) - '@typescript-eslint/prefer-regexp-exec': 'off', - // this should not run on ts files: https://github.com/import-js/eslint-plugin-import/issues/2215#issuecomment-911245486 - 'import/unambiguous': 'off', - // this is not compatible with typeorm, due to joined tables can be null, but are not defined as nullable - '@typescript-eslint/no-unnecessary-condition': 'off', - }, - parserOptions: { - tsconfigRootDir: __dirname, - project: ['./tsconfig.json'], - // this is to properly reference the referenced project database without requirement of compiling it - // eslint-disable-next-line camelcase - EXPERIMENTAL_useSourceOfProjectReferenceRedirect: true, - }, - }, - { - files: ['*.test.ts'], - plugins: ['jest'], - rules: { - 'jest/no-disabled-tests': 'error', - 'jest/no-focused-tests': 'error', - 'jest/no-identical-title': 'error', - 'jest/prefer-to-have-length': 'error', - 'jest/valid-expect': 'error', - '@typescript-eslint/unbound-method': 'off', - 'jest/unbound-method': 'error', - }, - }, - ], -} diff --git a/dht-node/.prettierrc.js b/dht-node/.prettierrc.js deleted file mode 100644 index bc1d767d7..000000000 --- a/dht-node/.prettierrc.js +++ /dev/null @@ -1,9 +0,0 @@ -module.exports = { - semi: false, - printWidth: 100, - singleQuote: true, - trailingComma: "all", - tabWidth: 2, - bracketSpacing: true, - endOfLine: "auto", -}; diff --git a/dht-node/package.json b/dht-node/package.json index aa86b5b2f..84733930e 100644 --- a/dht-node/package.json +++ b/dht-node/package.json @@ -12,7 +12,8 @@ "clean": "tsc --build --clean", "start": "cross-env TZ=UTC TS_NODE_BASEURL=./build node -r tsconfig-paths/register build/src/index.js", "dev": "cross-env TZ=UTC nodemon -w src --ext ts --exec ts-node -r dotenv/config -r tsconfig-paths/register src/index.ts", - "lint": "eslint --max-warnings=0 --ext .js,.ts .", + "lint": "biome check --error-on-warnings .", + "lint:fix": "biome check --error-on-warnings . --write", "test": "cross-env TZ=UTC NODE_ENV=development jest --runInBand --forceExit --detectOpenHandles" }, "dependencies": { @@ -28,24 +29,12 @@ "uuid": "^8.3.2" }, "devDependencies": { - "@eslint-community/eslint-plugin-eslint-comments": "^3.2.1", + "@biomejs/biome": "1.9.4", "@types/dotenv": "^8.2.0", "@types/jest": "^27.0.2", "@types/joi": "^17.2.3", "@types/node": "^18.11.18", "@types/uuid": "^8.3.4", - "@typescript-eslint/eslint-plugin": "^5.57.1", - "@typescript-eslint/parser": "^5.57.1", - "eslint": "^8.37.0", - "eslint-config-prettier": "^8.8.0", - "eslint-config-standard": "^17.0.0", - "eslint-import-resolver-typescript": "^3.5.4", - "eslint-plugin-import": "^2.27.5", - "eslint-plugin-jest": "^27.2.1", - "eslint-plugin-n": "^15.7.0", - "eslint-plugin-prettier": "^4.2.1", - "eslint-plugin-promise": "^6.1.1", - "eslint-plugin-security": "^1.7.1", "jest": "^27.2.4", "prettier": "^2.8.7", "ts-jest": "^27.0.5", diff --git a/dht-node/src/config/schema.ts b/dht-node/src/config/schema.ts index cb7618cf4..f07bef64b 100644 --- a/dht-node/src/config/schema.ts +++ b/dht-node/src/config/schema.ts @@ -1,6 +1,6 @@ import { - COMMUNITY_NAME, COMMUNITY_DESCRIPTION, + COMMUNITY_NAME, DB_DATABASE, DB_HOST, DB_PASSWORD, diff --git a/dht-node/src/dht_node/index.test.ts b/dht-node/src/dht_node/index.test.ts index c31869551..7b3809f15 100644 --- a/dht-node/src/dht_node/index.test.ts +++ b/dht-node/src/dht_node/index.test.ts @@ -6,7 +6,7 @@ import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCom import DHT from '@hyperswarm/dht' import { validate as validateUUID, version as versionUUID } from 'uuid' -import { testEnvironment, cleanDB } from '@test/helpers' +import { cleanDB, testEnvironment } from '@test/helpers' import { logger } from '@test/testSetup' import { CONFIG } from '@/config' diff --git a/dht-node/src/dht_node/index.ts b/dht-node/src/dht_node/index.ts index fab67e839..5a57eb460 100644 --- a/dht-node/src/dht_node/index.ts +++ b/dht-node/src/dht_node/index.ts @@ -201,18 +201,18 @@ export const startDHT = async (topic: string): Promise => { } async function writeFederatedHomeCommunityEntries(pubKey: string): Promise { - const homeApiVersions: CommunityApi[] = CONFIG.FEDERATION_COMMUNITY_APIS.split(',').map(function ( - api, - ) { - if (!Object.values(ApiVersionType).includes(api as ApiVersionType)) { - throw new Error(`Federation: unknown api version: ${api}`) - } - const comApi: CommunityApi = { - api, - url: CONFIG.FEDERATION_COMMUNITY_URL + '/api/', - } - return comApi - }) + const homeApiVersions: CommunityApi[] = CONFIG.FEDERATION_COMMUNITY_APIS.split(',').map( + function (api) { + if (!Object.values(ApiVersionType).includes(api as ApiVersionType)) { + throw new Error(`Federation: unknown api version: ${api}`) + } + const comApi: CommunityApi = { + api, + url: CONFIG.FEDERATION_COMMUNITY_URL + '/api/', + } + return comApi + }, + ) try { // first remove previous existing homeCommunity entries await DbFederatedCommunity.createQueryBuilder().delete().where({ foreign: false }).execute() diff --git a/dht-node/src/index.ts b/dht-node/src/index.ts index 932a3afb1..eadbec483 100644 --- a/dht-node/src/index.ts +++ b/dht-node/src/index.ts @@ -1,10 +1,9 @@ -/* eslint-disable @typescript-eslint/no-explicit-any */ import { startDHT } from '@/dht_node/index' import { CONFIG } from './config' import { logger } from './server/logger' -import { connection } from './typeorm/connection' import { checkDBVersion } from './typeorm/DBVersion' +import { connection } from './typeorm/connection' async function main() { // open mysql connection @@ -30,7 +29,7 @@ async function main() { } main().catch((e) => { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no logger present console.error(e) throw e }) diff --git a/dht-node/src/typeorm/connection.ts b/dht-node/src/typeorm/connection.ts index 7dec820b5..8ed877063 100644 --- a/dht-node/src/typeorm/connection.ts +++ b/dht-node/src/typeorm/connection.ts @@ -1,6 +1,6 @@ // TODO This is super weird - since the entities are defined in another project they have their own globals. // We cannot use our connection here, but must use the external typeorm installation -import { Connection, createConnection, FileLogger } from '@dbTools/typeorm' +import { Connection, FileLogger, createConnection } from '@dbTools/typeorm' import { entities } from '@entity/index' import { CONFIG } from '@/config' @@ -26,7 +26,7 @@ export const connection = async (): Promise => { }, }) } catch (error) { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no logger present console.log(error) return null } diff --git a/dht-node/yarn.lock b/dht-node/yarn.lock index 2419f760d..0dd6edb4d 100644 --- a/dht-node/yarn.lock +++ b/dht-node/yarn.lock @@ -298,6 +298,60 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== +"@biomejs/biome@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-1.9.4.tgz#89766281cbc3a0aae865a7ff13d6aaffea2842bf" + integrity sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog== + optionalDependencies: + "@biomejs/cli-darwin-arm64" "1.9.4" + "@biomejs/cli-darwin-x64" "1.9.4" + "@biomejs/cli-linux-arm64" "1.9.4" + "@biomejs/cli-linux-arm64-musl" "1.9.4" + "@biomejs/cli-linux-x64" "1.9.4" + "@biomejs/cli-linux-x64-musl" "1.9.4" + "@biomejs/cli-win32-arm64" "1.9.4" + "@biomejs/cli-win32-x64" "1.9.4" + +"@biomejs/cli-darwin-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz#dfa376d23a54a2d8f17133c92f23c1bf2e62509f" + integrity sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw== + +"@biomejs/cli-darwin-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz#eafc2ce3849d385fc02238aad1ca4a73395a64d9" + integrity sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg== + +"@biomejs/cli-linux-arm64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz#d780c3e01758fc90f3268357e3f19163d1f84fca" + integrity sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA== + +"@biomejs/cli-linux-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz#8ed1dd0e89419a4b66a47f95aefb8c46ae6041c9" + integrity sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g== + +"@biomejs/cli-linux-x64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz#f36982b966bd671a36671e1de4417963d7db15fb" + integrity sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg== + +"@biomejs/cli-linux-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz#a0a7f56680c76b8034ddc149dbf398bdd3a462e8" + integrity sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg== + +"@biomejs/cli-win32-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz#e2ef4e0084e76b7e26f0fc887c5ef1265ea56200" + integrity sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg== + +"@biomejs/cli-win32-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz#4c7afa90e3970213599b4095e62f87e5972b2340" + integrity sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA== + "@cspotcode/source-map-support@^0.8.0": version "0.8.1" resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" From b63dbc15992f301ea246e7abcbffdbd59d1ff18c Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Sat, 26 Apr 2025 11:09:35 +0200 Subject: [PATCH 09/13] add biome to federation, fix biome linting/formatting error, remove eslint --- federation/.eslintignore | 3 - federation/.eslintrc.js | 206 ------------------ federation/.prettierrc.js | 9 - federation/package.json | 14 +- .../src/client/1_0/AuthenticationClient.ts | 12 +- .../src/client/1_1/AuthenticationClient.ts | 2 - .../src/client/AuthenticationClientFactory.ts | 10 +- federation/src/config/index.ts | 4 +- ...etPublicCommunityInfoResultLogging.view.ts | 1 - .../1_0/logger/SendCoinsArgsLogging.view.ts | 3 +- federation/src/graphql/api/1_0/model/Decay.ts | 2 +- .../1_0/model/GetPublicCommunityInfoResult.ts | 4 +- .../api/1_0/model/GetPublicKeyResult.ts | 2 - .../1_0/resolver/AuthenticationResolver.ts | 17 +- .../PublicCommunityInfoResolver.test.ts | 11 +- .../resolver/PublicCommunityInfoResolver.ts | 5 +- .../1_0/resolver/PublicKeyResolver.test.ts | 8 +- .../api/1_0/resolver/PublicKeyResolver.ts | 3 +- .../1_0/resolver/SendCoinsResolver.test.ts | 12 +- .../api/1_0/resolver/SendCoinsResolver.ts | 20 +- .../api/1_0/util/authenticateCommunity.ts | 16 +- .../api/1_0/util/calculateRecipientBalance.ts | 4 +- .../util/revertSettledReceiveTransaction.ts | 8 +- .../util/settlePendingReceiveTransaction.ts | 12 +- .../graphql/api/1_0/util/storeForeignUser.ts | 2 +- .../1_1/resolver/PublicKeyResolver.test.ts | 8 +- .../api/1_1/resolver/PublicKeyResolver.ts | 4 +- federation/src/graphql/api/schema.ts | 6 +- federation/src/graphql/scalar/Decimal.ts | 1 - federation/src/graphql/schema.ts | 8 +- .../src/graphql/util/checkTradingLevel.ts | 4 +- federation/src/graphql/util/decay.test.ts | 4 +- federation/src/graphql/util/decay.ts | 2 +- federation/src/graphql/util/validateAlias.ts | 15 +- federation/src/index.ts | 12 +- federation/src/server/LogError.ts | 2 - federation/src/server/cors.ts | 1 + federation/src/server/createServer.ts | 17 +- federation/src/server/logger.ts | 2 +- federation/src/server/plugins.ts | 22 +- federation/src/typeorm/DBVersion.ts | 2 +- federation/src/typeorm/connection.ts | 8 +- federation/test/extensions.ts | 12 +- federation/test/helpers.ts | 12 +- federation/yarn.lock | 54 +++++ 45 files changed, 189 insertions(+), 397 deletions(-) delete mode 100644 federation/.eslintignore delete mode 100644 federation/.eslintrc.js delete mode 100644 federation/.prettierrc.js diff --git a/federation/.eslintignore b/federation/.eslintignore deleted file mode 100644 index f6b255e92..000000000 --- a/federation/.eslintignore +++ /dev/null @@ -1,3 +0,0 @@ -node_modules -**/*.min.js -build \ No newline at end of file diff --git a/federation/.eslintrc.js b/federation/.eslintrc.js deleted file mode 100644 index 042a417f7..000000000 --- a/federation/.eslintrc.js +++ /dev/null @@ -1,206 +0,0 @@ -// eslint-disable-next-line import/no-commonjs, import/unambiguous -module.exports = { - root: true, - env: { - node: true, - }, - parser: '@typescript-eslint/parser', - plugins: ['prettier', '@typescript-eslint', 'import', 'n', 'promise'], - extends: [ - 'standard', - 'eslint:recommended', - 'plugin:prettier/recommended', - // 'plugin:import/recommended', - // 'plugin:import/typescript', - // 'plugin:security/recommended', - // 'plugin:@eslint-community/eslint-comments/recommended', - ], - settings: { - 'import/parsers': { - '@typescript-eslint/parser': ['.ts', '.tsx'], - }, - 'import/resolver': { - typescript: { - project: ['./tsconfig.json'], - }, - node: true, - }, - }, - rules: { - 'no-console': 'error', - camelcase: 'error', - 'no-debugger': 'error', - 'prettier/prettier': [ - 'error', - { - htmlWhitespaceSensitivity: 'ignore', - }, - ], - // import - // 'import/export': 'error', - // 'import/no-deprecated': 'error', - // 'import/no-empty-named-blocks': 'error', - // 'import/no-extraneous-dependencies': 'error', - // 'import/no-mutable-exports': 'error', - // 'import/no-unused-modules': 'error', - // 'import/no-named-as-default': 'error', - // 'import/no-named-as-default-member': 'error', - // 'import/no-amd': 'error', - // 'import/no-commonjs': 'error', - // 'import/no-import-module-exports': 'error', - // 'import/no-nodejs-modules': 'off', - // 'import/unambiguous': 'error', - // 'import/default': 'error', - // 'import/named': 'error', - // 'import/namespace': 'error', - // 'import/no-absolute-path': 'error', - // 'import/no-cycle': 'error', - // 'import/no-dynamic-require': 'error', - // 'import/no-internal-modules': 'off', - // 'import/no-relative-packages': 'error', - // 'import/no-relative-parent-imports': ['error', { ignore: ['@/*'] }], - // 'import/no-self-import': 'error', - // 'import/no-unresolved': 'error', - // 'import/no-useless-path-segments': 'error', - // 'import/no-webpack-loader-syntax': 'error', - // 'import/consistent-type-specifier-style': 'error', - // 'import/exports-last': 'off', - // 'import/extensions': 'error', - // 'import/first': 'error', - // 'import/group-exports': 'off', - // 'import/newline-after-import': 'error', - // 'import/no-anonymous-default-export': 'error', - // 'import/no-default-export': 'error', - // 'import/no-duplicates': 'error', - // 'import/no-named-default': 'error', - // 'import/no-namespace': 'error', - // 'import/no-unassigned-import': 'error', - // 'import/order': [ - // 'error', - // { - // groups: ['builtin', 'external', 'internal', 'parent', 'sibling', 'index', 'object', 'type'], - // 'newlines-between': 'always', - // pathGroups: [ - // { - // pattern: '@?*/**', - // group: 'external', - // position: 'after', - // }, - // { - // pattern: '@/**', - // group: 'external', - // position: 'after', - // }, - // ], - // alphabetize: { - // order: 'asc' /* sort in ascending order. Options: ['ignore', 'asc', 'desc'] */, - // caseInsensitive: true /* ignore case. Options: [true, false] */, - // }, - // distinctGroup: true, - // }, - // ], - // 'import/prefer-default-export': 'off', - // n - // 'n/handle-callback-err': 'error', - // 'n/no-callback-literal': 'error', - // 'n/no-exports-assign': 'error', - // 'n/no-extraneous-import': 'error', - // 'n/no-extraneous-require': 'error', - // 'n/no-hide-core-modules': 'error', - // 'n/no-missing-import': 'off', // not compatible with typescript - // 'n/no-missing-require': 'error', - // 'n/no-new-require': 'error', - // 'n/no-path-concat': 'error', - // 'n/no-process-exit': 'error', - // 'n/no-unpublished-bin': 'error', - // 'n/no-unpublished-import': 'off', // TODO need to exclude seeds - // 'n/no-unpublished-require': 'error', - // 'n/no-unsupported-features': ['error', { ignores: ['modules'] }], - // 'n/no-unsupported-features/es-builtins': 'error', - // 'n/no-unsupported-features/es-syntax': 'error', - // 'n/no-unsupported-features/node-builtins': 'error', - // 'n/process-exit-as-throw': 'error', - // 'n/shebang': 'error', - // 'n/callback-return': 'error', - // 'n/exports-style': 'error', - // 'n/file-extension-in-import': 'off', - // 'n/global-require': 'error', - // 'n/no-mixed-requires': 'error', - // 'n/no-process-env': 'error', - // 'n/no-restricted-import': 'error', - // 'n/no-restricted-require': 'error', - // 'n/no-sync': 'error', - // 'n/prefer-global/buffer': 'error', - // 'n/prefer-global/console': 'error', - // 'n/prefer-global/process': 'error', - // 'n/prefer-global/text-decoder': 'error', - // 'n/prefer-global/text-encoder': 'error', - // 'n/prefer-global/url': 'error', - // 'n/prefer-global/url-search-params': 'error', - // 'n/prefer-promises/dns': 'error', - // 'n/prefer-promises/fs': 'error', - // promise - // 'promise/catch-or-return': 'error', - // 'promise/no-return-wrap': 'error', - // 'promise/param-names': 'error', - // 'promise/always-return': 'error', - // 'promise/no-native': 'off', - // 'promise/no-nesting': 'warn', - // 'promise/no-promise-in-callback': 'warn', - // 'promise/no-callback-in-promise': 'warn', - // 'promise/avoid-new': 'warn', - // 'promise/no-new-statics': 'error', - // 'promise/no-return-in-finally': 'warn', - // 'promise/valid-params': 'warn', - // 'promise/prefer-await-to-callbacks': 'error', - // 'promise/no-multiple-resolved': 'error', - // eslint comments - // '@eslint-community/eslint-comments/disable-enable-pair': ['error', { allowWholeFile: true }], - // '@eslint-community/eslint-comments/no-restricted-disable': 'error', - // '@eslint-community/eslint-comments/no-use': 'off', - // '@eslint-community/eslint-comments/require-description': 'off', - }, - overrides: [ - // only for ts files - { - files: ['*.ts', '*.tsx'], - extends: [ - 'plugin:@typescript-eslint/recommended', - // 'plugin:@typescript-eslint/recommended-requiring-type-checking', - // 'plugin:@typescript-eslint/strict', - // 'plugin:type-graphql/recommended', - ], - rules: { - // allow explicitly defined dangling promises - // '@typescript-eslint/no-floating-promises': ['error', { ignoreVoid: true }], - 'no-void': ['error', { allowAsStatement: true }], - // ignore prefer-regexp-exec rule to allow string.match(regex) - '@typescript-eslint/prefer-regexp-exec': 'off', - // this should not run on ts files: https://github.com/import-js/eslint-plugin-import/issues/2215#issuecomment-911245486 - 'import/unambiguous': 'off', - // this is not compatible with typeorm, due to joined tables can be null, but are not defined as nullable - '@typescript-eslint/no-unnecessary-condition': 'off', - }, - parserOptions: { - tsconfigRootDir: __dirname, - project: ['./tsconfig.json'], - // this is to properly reference the referenced project database without requirement of compiling it - // eslint-disable-next-line camelcase - EXPERIMENTAL_useSourceOfProjectReferenceRedirect: true, - }, - }, - { - files: ['*.test.ts'], - plugins: ['jest'], - rules: { - 'jest/no-disabled-tests': 'error', - 'jest/no-focused-tests': 'error', - 'jest/no-identical-title': 'error', - 'jest/prefer-to-have-length': 'error', - 'jest/valid-expect': 'error', - '@typescript-eslint/unbound-method': 'off', - // 'jest/unbound-method': 'error', - }, - }, - ], -} diff --git a/federation/.prettierrc.js b/federation/.prettierrc.js deleted file mode 100644 index bc1d767d7..000000000 --- a/federation/.prettierrc.js +++ /dev/null @@ -1,9 +0,0 @@ -module.exports = { - semi: false, - printWidth: 100, - singleQuote: true, - trailingComma: "all", - tabWidth: 2, - bracketSpacing: true, - endOfLine: "auto", -}; diff --git a/federation/package.json b/federation/package.json index d54562abd..fa129b74e 100644 --- a/federation/package.json +++ b/federation/package.json @@ -37,6 +37,7 @@ "uuid": "8.3.2" }, "devDependencies": { + "@biomejs/biome": "1.9.4", "@types/express": "4.17.12", "@types/jest": "27.0.2", "@types/joi": "^17.2.3", @@ -44,20 +45,7 @@ "@types/node": "^16.10.3", "@types/sodium-native": "^2.3.5", "@types/uuid": "^8.3.4", - "@typescript-eslint/eslint-plugin": "^5.57.1", - "@typescript-eslint/parser": "^5.57.1", "apollo-server-testing": "2.25.2", - "eslint": "^8.37.0", - "eslint-config-prettier": "^8.8.0", - "eslint-config-standard": "^17.0.0", - "eslint-import-resolver-typescript": "^3.5.4", - "eslint-plugin-import": "^2.27.5", - "eslint-plugin-jest": "^27.2.1", - "eslint-plugin-n": "^15.7.0", - "eslint-plugin-prettier": "^4.2.1", - "eslint-plugin-promise": "^6.1.1", - "eslint-plugin-security": "^1.7.1", - "eslint-plugin-type-graphql": "^1.0.0", "gradido-config": "../config", "graphql-tag": "^2.12.6", "jest": "^27.2.4", diff --git a/federation/src/client/1_0/AuthenticationClient.ts b/federation/src/client/1_0/AuthenticationClient.ts index 3a94746b1..29a686ca3 100644 --- a/federation/src/client/1_0/AuthenticationClient.ts +++ b/federation/src/client/1_0/AuthenticationClient.ts @@ -1,11 +1,11 @@ +import { federationLogger as logger } from '@/server/logger' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { GraphQLClient } from 'graphql-request' -import { federationLogger as logger } from '@/server/logger' -import { OpenConnectionCallbackArgs } from '@/graphql/api/1_0/model/OpenConnectionCallbackArgs' -import { openConnectionCallback } from './query/openConnectionCallback' import { AuthenticationArgs } from '@/graphql/api/1_0/model/AuthenticationArgs' +import { OpenConnectionCallbackArgs } from '@/graphql/api/1_0/model/OpenConnectionCallbackArgs' import { authenticate } from './query/authenticate' +import { openConnectionCallback } from './query/openConnectionCallback' export class AuthenticationClient { dbCom: DbFederatedCommunity @@ -29,9 +29,8 @@ export class AuthenticationClient { async openConnectionCallback(args: OpenConnectionCallbackArgs): Promise { logger.debug('Authentication: openConnectionCallback with endpoint', this.endpoint, args) try { - // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-explicit-any const { data } = await this.client.rawRequest(openConnectionCallback, { args }) - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access + if (data && data.openConnectionCallback) { logger.warn( 'Authentication: openConnectionCallback without response data from endpoint', @@ -53,10 +52,9 @@ export class AuthenticationClient { async authenticate(args: AuthenticationArgs): Promise { logger.debug('Authentication: authenticate with endpoint=', this.endpoint) try { - // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-explicit-any const { data } = await this.client.rawRequest(authenticate, { args }) logger.debug('Authentication: after authenticate: data:', data) - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access + const authUuid: string = data?.authenticate if (authUuid) { logger.debug('Authentication: received authenticated uuid', authUuid) diff --git a/federation/src/client/1_1/AuthenticationClient.ts b/federation/src/client/1_1/AuthenticationClient.ts index eb5721b16..b089574dd 100644 --- a/federation/src/client/1_1/AuthenticationClient.ts +++ b/federation/src/client/1_1/AuthenticationClient.ts @@ -1,5 +1,3 @@ -// eslint-disable-next-line camelcase import { AuthenticationClient as V1_0_AuthenticationClient } from '../1_0/AuthenticationClient' -// eslint-disable-next-line camelcase export class AuthenticationClient extends V1_0_AuthenticationClient {} diff --git a/federation/src/client/AuthenticationClientFactory.ts b/federation/src/client/AuthenticationClientFactory.ts index 355cf3695..67887d3bb 100644 --- a/federation/src/client/AuthenticationClientFactory.ts +++ b/federation/src/client/AuthenticationClientFactory.ts @@ -1,20 +1,18 @@ import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -// eslint-disable-next-line camelcase + import { AuthenticationClient as V1_0_AuthenticationClient } from './1_0/AuthenticationClient' -// eslint-disable-next-line camelcase + import { AuthenticationClient as V1_1_AuthenticationClient } from './1_1/AuthenticationClient' import { ApiVersionType } from './enum/ApiVersionType' -// eslint-disable-next-line camelcase type AuthenticationClient = V1_0_AuthenticationClient | V1_1_AuthenticationClient interface AuthenticationClientInstance { id: number - // eslint-disable-next-line no-use-before-define + client: AuthenticationClient } -// eslint-disable-next-line @typescript-eslint/no-extraneous-class export class AuthenticationClientFactory { private static instanceArray: AuthenticationClientInstance[] = [] @@ -22,7 +20,7 @@ export class AuthenticationClientFactory { * The Singleton's constructor should always be private to prevent direct * construction calls with the `new` operator. */ - // eslint-disable-next-line no-useless-constructor, @typescript-eslint/no-empty-function + private constructor() {} private static createAuthenticationClient = (dbCom: DbFederatedCommunity) => { diff --git a/federation/src/config/index.ts b/federation/src/config/index.ts index 6649e2ba3..6ae02a9c1 100644 --- a/federation/src/config/index.ts +++ b/federation/src/config/index.ts @@ -1,6 +1,6 @@ +import { latestDbVersion } from '@dbTools/config/detectLastDBVersion' // ATTENTION: DO NOT PUT ANY SECRETS IN HERE (or the .env) import { Decimal } from 'decimal.js-light' -import { latestDbVersion } from '@dbTools/config/detectLastDBVersion' import dotenv from 'dotenv' import { validate } from '@config/index' @@ -63,5 +63,3 @@ export const CONFIG = { } validate(schema, CONFIG) - -export default CONFIG diff --git a/federation/src/graphql/api/1_0/logger/GetPublicCommunityInfoResultLogging.view.ts b/federation/src/graphql/api/1_0/logger/GetPublicCommunityInfoResultLogging.view.ts index 669170b98..fc0c68d30 100644 --- a/federation/src/graphql/api/1_0/logger/GetPublicCommunityInfoResultLogging.view.ts +++ b/federation/src/graphql/api/1_0/logger/GetPublicCommunityInfoResultLogging.view.ts @@ -6,7 +6,6 @@ export class GetPublicCommunityInfoResultLoggingView extends AbstractLoggingView super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { name: this.self.name, diff --git a/federation/src/graphql/api/1_0/logger/SendCoinsArgsLogging.view.ts b/federation/src/graphql/api/1_0/logger/SendCoinsArgsLogging.view.ts index a12ff6372..bb9c3dd5a 100644 --- a/federation/src/graphql/api/1_0/logger/SendCoinsArgsLogging.view.ts +++ b/federation/src/graphql/api/1_0/logger/SendCoinsArgsLogging.view.ts @@ -1,12 +1,11 @@ -import { AbstractLoggingView } from '@logging/AbstractLogging.view' import { SendCoinsArgs } from '@/graphql/api/1_0/model/SendCoinsArgs' +import { AbstractLoggingView } from '@logging/AbstractLogging.view' export class SendCoinsArgsLoggingView extends AbstractLoggingView { public constructor(private self: SendCoinsArgs) { super() } - // eslint-disable-next-line @typescript-eslint/no-explicit-any public toJSON(): any { return { recipientCommunityUuid: this.self.recipientCommunityUuid, diff --git a/federation/src/graphql/api/1_0/model/Decay.ts b/federation/src/graphql/api/1_0/model/Decay.ts index 0b710c234..a32b96c13 100644 --- a/federation/src/graphql/api/1_0/model/Decay.ts +++ b/federation/src/graphql/api/1_0/model/Decay.ts @@ -1,5 +1,5 @@ import { Decimal } from 'decimal.js-light' -import { ObjectType, Field, Int } from 'type-graphql' +import { Field, Int, ObjectType } from 'type-graphql' interface DecayInterface { balance: Decimal diff --git a/federation/src/graphql/api/1_0/model/GetPublicCommunityInfoResult.ts b/federation/src/graphql/api/1_0/model/GetPublicCommunityInfoResult.ts index d51b3af93..5e4710a07 100644 --- a/federation/src/graphql/api/1_0/model/GetPublicCommunityInfoResult.ts +++ b/federation/src/graphql/api/1_0/model/GetPublicCommunityInfoResult.ts @@ -1,10 +1,8 @@ -// eslint-disable-next-line @typescript-eslint/no-unused-vars import { Community as DbCommunity } from '@entity/Community' -// eslint-disable-next-line @typescript-eslint/no-unused-vars + import { Field, ObjectType } from 'type-graphql' @ObjectType() -// eslint-disable-next-line @typescript-eslint/no-unused-vars export class GetPublicCommunityInfoResult { constructor(dbCom: DbCommunity) { this.publicKey = dbCom.publicKey.toString('hex') diff --git a/federation/src/graphql/api/1_0/model/GetPublicKeyResult.ts b/federation/src/graphql/api/1_0/model/GetPublicKeyResult.ts index 696c96cfe..1582ad892 100644 --- a/federation/src/graphql/api/1_0/model/GetPublicKeyResult.ts +++ b/federation/src/graphql/api/1_0/model/GetPublicKeyResult.ts @@ -1,8 +1,6 @@ -// eslint-disable-next-line @typescript-eslint/no-unused-vars import { Field, ObjectType } from 'type-graphql' @ObjectType() -// eslint-disable-next-line @typescript-eslint/no-unused-vars export class GetPublicKeyResult { constructor(pubKey: string) { this.publicKey = pubKey diff --git a/federation/src/graphql/api/1_0/resolver/AuthenticationResolver.ts b/federation/src/graphql/api/1_0/resolver/AuthenticationResolver.ts index 393fe3b65..cb683ab2a 100644 --- a/federation/src/graphql/api/1_0/resolver/AuthenticationResolver.ts +++ b/federation/src/graphql/api/1_0/resolver/AuthenticationResolver.ts @@ -1,16 +1,15 @@ -// eslint-disable-next-line @typescript-eslint/no-unused-vars -import { Arg, Mutation, Resolver } from 'type-graphql' +import { CONFIG } from '@/config' +import { LogError } from '@/server/LogError' import { federationLogger as logger } from '@/server/logger' import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFedCommunity } from '@entity/FederatedCommunity' import { CommunityLoggingView } from '@logging/CommunityLogging.view' import { FederatedCommunityLoggingView } from '@logging/FederatedCommunityLogging.view' -import { LogError } from '@/server/LogError' -import { OpenConnectionArgs } from '../model/OpenConnectionArgs' -import { startAuthentication, startOpenConnectionCallback } from '../util/authenticateCommunity' -import { OpenConnectionCallbackArgs } from '../model/OpenConnectionCallbackArgs' -import { CONFIG } from '@/config' +import { Arg, Mutation, Resolver } from 'type-graphql' import { AuthenticationArgs } from '../model/AuthenticationArgs' +import { OpenConnectionArgs } from '../model/OpenConnectionArgs' +import { OpenConnectionCallbackArgs } from '../model/OpenConnectionCallbackArgs' +import { startAuthentication, startOpenConnectionCallback } from '../util/authenticateCommunity' @Resolver() export class AuthenticationResolver { @@ -30,7 +29,7 @@ export class AuthenticationResolver { throw new LogError(`unknown requesting community with publicKey`, pubKeyBuf.toString('hex')) } logger.debug(`Authentication: found requestedCom:`, new CommunityLoggingView(comA)) - // no await to respond immediatly and invoke callback-request asynchron + // biome-ignore lint/complexity/noVoid: no await to respond immediately and invoke callback-request asynchronously void startOpenConnectionCallback(args, comA, CONFIG.FEDERATION_API) return true } @@ -53,7 +52,7 @@ export class AuthenticationResolver { `Authentication: found fedComB and start authentication:`, new FederatedCommunityLoggingView(fedComB), ) - // no await to respond immediatly and invoke authenticate-request asynchron + // biome-ignore lint/complexity/noVoid: no await to respond immediately and invoke authenticate-request asynchronously void startAuthentication(args.oneTimeCode, fedComB) return true } diff --git a/federation/src/graphql/api/1_0/resolver/PublicCommunityInfoResolver.test.ts b/federation/src/graphql/api/1_0/resolver/PublicCommunityInfoResolver.test.ts index 2f83b4819..8bdece2dd 100644 --- a/federation/src/graphql/api/1_0/resolver/PublicCommunityInfoResolver.test.ts +++ b/federation/src/graphql/api/1_0/resolver/PublicCommunityInfoResolver.test.ts @@ -1,10 +1,9 @@ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -import { createTestClient } from 'apollo-server-testing' -import createServer from '@/server/createServer' -import { Community as DbCommunity } from '@entity/Community' -import CONFIG from '@/config' +import { CONFIG } from '@/config' +import { createServer } from '@/server/createServer' import { Connection } from '@dbTools/typeorm' +import { Community as DbCommunity } from '@entity/Community' + +import { createTestClient } from 'apollo-server-testing' let query: any diff --git a/federation/src/graphql/api/1_0/resolver/PublicCommunityInfoResolver.ts b/federation/src/graphql/api/1_0/resolver/PublicCommunityInfoResolver.ts index c1535b713..6ddb1f331 100644 --- a/federation/src/graphql/api/1_0/resolver/PublicCommunityInfoResolver.ts +++ b/federation/src/graphql/api/1_0/resolver/PublicCommunityInfoResolver.ts @@ -1,9 +1,8 @@ -// eslint-disable-next-line @typescript-eslint/no-unused-vars -import { Query, Resolver } from 'type-graphql' import { federationLogger as logger } from '@/server/logger' import { Community as DbCommunity } from '@entity/Community' -import { GetPublicCommunityInfoResult } from '../model/GetPublicCommunityInfoResult' +import { Query, Resolver } from 'type-graphql' import { GetPublicCommunityInfoResultLoggingView } from '../logger/GetPublicCommunityInfoResultLogging.view' +import { GetPublicCommunityInfoResult } from '../model/GetPublicCommunityInfoResult' @Resolver() export class PublicCommunityInfoResolver { diff --git a/federation/src/graphql/api/1_0/resolver/PublicKeyResolver.test.ts b/federation/src/graphql/api/1_0/resolver/PublicKeyResolver.test.ts index eafd9cba7..cb5682876 100644 --- a/federation/src/graphql/api/1_0/resolver/PublicKeyResolver.test.ts +++ b/federation/src/graphql/api/1_0/resolver/PublicKeyResolver.test.ts @@ -1,9 +1,7 @@ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -import { createTestClient } from 'apollo-server-testing' -import createServer from '@/server/createServer' +import { CONFIG } from '@/config' +import { createServer } from '@/server/createServer' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -import CONFIG from '@/config' +import { createTestClient } from 'apollo-server-testing' let query: any diff --git a/federation/src/graphql/api/1_0/resolver/PublicKeyResolver.ts b/federation/src/graphql/api/1_0/resolver/PublicKeyResolver.ts index 3fb3b2c0d..afc4aca67 100644 --- a/federation/src/graphql/api/1_0/resolver/PublicKeyResolver.ts +++ b/federation/src/graphql/api/1_0/resolver/PublicKeyResolver.ts @@ -1,7 +1,6 @@ -// eslint-disable-next-line @typescript-eslint/no-unused-vars -import { Query, Resolver } from 'type-graphql' import { federationLogger as logger } from '@/server/logger' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import { Query, Resolver } from 'type-graphql' import { GetPublicKeyResult } from '../model/GetPublicKeyResult' @Resolver() diff --git a/federation/src/graphql/api/1_0/resolver/SendCoinsResolver.test.ts b/federation/src/graphql/api/1_0/resolver/SendCoinsResolver.test.ts index d305e1726..89bb12d7a 100644 --- a/federation/src/graphql/api/1_0/resolver/SendCoinsResolver.test.ts +++ b/federation/src/graphql/api/1_0/resolver/SendCoinsResolver.test.ts @@ -1,16 +1,14 @@ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -import { ApolloServerTestClient } from 'apollo-server-testing' +import { CONFIG } from '@/config' +import { fullName } from '@/graphql/util/fullName' +import { Connection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' -import CONFIG from '@/config' import { User as DbUser } from '@entity/User' import { UserContact as DbUserContact } from '@entity/UserContact' -import { fullName } from '@/graphql/util/fullName' -import { GraphQLError } from 'graphql' import { cleanDB, testEnvironment } from '@test/helpers' import { logger } from '@test/testSetup' -import { Connection } from '@dbTools/typeorm' +import { ApolloServerTestClient } from 'apollo-server-testing' import Decimal from 'decimal.js-light' +import { GraphQLError } from 'graphql' import { SendCoinsArgs } from '../model/SendCoinsArgs' let mutate: ApolloServerTestClient['mutate'] // , con: Connection diff --git a/federation/src/graphql/api/1_0/resolver/SendCoinsResolver.ts b/federation/src/graphql/api/1_0/resolver/SendCoinsResolver.ts index e90a7818c..b299286fd 100644 --- a/federation/src/graphql/api/1_0/resolver/SendCoinsResolver.ts +++ b/federation/src/graphql/api/1_0/resolver/SendCoinsResolver.ts @@ -1,22 +1,22 @@ -import { Arg, Mutation, Resolver } from 'type-graphql' +import { findUserByIdentifier } from '@/graphql/util/findUserByIdentifier' +import { fullName } from '@/graphql/util/fullName' +import { LogError } from '@/server/LogError' import { federationLogger as logger } from '@/server/logger' -import { PendingTransactionLoggingView } from '@logging/PendingTransactionLogging.view' import { Community as DbCommunity } from '@entity/Community' import { PendingTransaction as DbPendingTransaction } from '@entity/PendingTransaction' -import { SendCoinsArgs } from '../model/SendCoinsArgs' -import { LogError } from '@/server/LogError' +import { PendingTransactionLoggingView } from '@logging/PendingTransactionLogging.view' +import Decimal from 'decimal.js-light' +import { Arg, Mutation, Resolver } from 'type-graphql' import { PendingTransactionState } from '../enum/PendingTransactionState' import { TransactionTypeId } from '../enum/TransactionTypeId' +import { SendCoinsArgsLoggingView } from '../logger/SendCoinsArgsLogging.view' +import { SendCoinsArgs } from '../model/SendCoinsArgs' +import { SendCoinsResult } from '../model/SendCoinsResult' import { calculateRecipientBalance } from '../util/calculateRecipientBalance' -import { fullName } from '@/graphql/util/fullName' -import { settlePendingReceiveTransaction } from '../util/settlePendingReceiveTransaction' // import { checkTradingLevel } from '@/graphql/util/checkTradingLevel' import { revertSettledReceiveTransaction } from '../util/revertSettledReceiveTransaction' -import { findUserByIdentifier } from '@/graphql/util/findUserByIdentifier' -import { SendCoinsResult } from '../model/SendCoinsResult' -import Decimal from 'decimal.js-light' +import { settlePendingReceiveTransaction } from '../util/settlePendingReceiveTransaction' import { storeForeignUser } from '../util/storeForeignUser' -import { SendCoinsArgsLoggingView } from '../logger/SendCoinsArgsLogging.view' @Resolver() export class SendCoinsResolver { diff --git a/federation/src/graphql/api/1_0/util/authenticateCommunity.ts b/federation/src/graphql/api/1_0/util/authenticateCommunity.ts index 1d3365d9c..150d01c69 100644 --- a/federation/src/graphql/api/1_0/util/authenticateCommunity.ts +++ b/federation/src/graphql/api/1_0/util/authenticateCommunity.ts @@ -1,16 +1,16 @@ -import { OpenConnectionArgs } from '../model/OpenConnectionArgs' +import { federationLogger as logger } from '@/server/logger' import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFedCommunity } from '@entity/FederatedCommunity' -import { federationLogger as logger } from '@/server/logger' +import { OpenConnectionArgs } from '../model/OpenConnectionArgs' import { OpenConnectionCallbackArgs } from '../model/OpenConnectionCallbackArgs' -// eslint-disable-next-line camelcase -import { randombytes_random } from 'sodium-native' + import { AuthenticationClientFactory } from '@/client/AuthenticationClientFactory' -// eslint-disable-next-line camelcase +import { randombytes_random } from 'sodium-native' + import { AuthenticationClient as V1_0_AuthenticationClient } from '@/client/1_0/AuthenticationClient' -import { AuthenticationArgs } from '../model/AuthenticationArgs' import { CommunityLoggingView } from '@logging/CommunityLogging.view' import { FederatedCommunityLoggingView } from '@logging/FederatedCommunityLogging.view' +import { AuthenticationArgs } from '../model/AuthenticationArgs' export async function startOpenConnectionCallback( args: OpenConnectionArgs, @@ -41,7 +41,7 @@ export async function startOpenConnectionCallback( ) const client = AuthenticationClientFactory.getInstance(fedComA) - // eslint-disable-next-line camelcase + if (client instanceof V1_0_AuthenticationClient) { const callbackArgs = new OpenConnectionCallbackArgs() callbackArgs.oneTimeCode = oneTimeCode.toString() @@ -74,7 +74,7 @@ export async function startAuthentication( // TODO encrypt homeCom.uuid with homeCom.privateKey and sign it with callbackFedCom.publicKey const client = AuthenticationClientFactory.getInstance(fedComB) - // eslint-disable-next-line camelcase + if (client instanceof V1_0_AuthenticationClient) { const authenticationArgs = new AuthenticationArgs() authenticationArgs.oneTimeCode = oneTimeCode diff --git a/federation/src/graphql/api/1_0/util/calculateRecipientBalance.ts b/federation/src/graphql/api/1_0/util/calculateRecipientBalance.ts index 1b296f845..198c89289 100644 --- a/federation/src/graphql/api/1_0/util/calculateRecipientBalance.ts +++ b/federation/src/graphql/api/1_0/util/calculateRecipientBalance.ts @@ -9,7 +9,9 @@ export async function calculateRecipientBalance( time: Date, ): Promise<{ balance: Decimal; decay: Decay; lastTransactionId: number } | null> { const lastTransaction = await getLastTransaction(userId) - if (!lastTransaction) return null + if (!lastTransaction) { + return null + } const decay = calculateDecay(lastTransaction.balance, lastTransaction.balanceDate, time) diff --git a/federation/src/graphql/api/1_0/util/revertSettledReceiveTransaction.ts b/federation/src/graphql/api/1_0/util/revertSettledReceiveTransaction.ts index bb5adec5c..c9a522ba8 100644 --- a/federation/src/graphql/api/1_0/util/revertSettledReceiveTransaction.ts +++ b/federation/src/graphql/api/1_0/util/revertSettledReceiveTransaction.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ -/* eslint-disable new-cap */ -/* eslint-disable @typescript-eslint/no-non-null-assertion */ - import { getConnection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { PendingTransaction as DbPendingTransaction } from '@entity/PendingTransaction' @@ -13,12 +9,12 @@ import { PendingTransactionState } from '../enum/PendingTransactionState' import { LogError } from '@/server/LogError' import { federationLogger as logger } from '@/server/logger' -import { getLastTransaction } from '@/graphql/util/getLastTransaction' import { TRANSACTIONS_LOCK } from '@/graphql/util/TRANSACTIONS_LOCK' +import { getLastTransaction } from '@/graphql/util/getLastTransaction' import { CommunityLoggingView } from '@logging/CommunityLogging.view' -import { UserLoggingView } from '@logging/UserLogging.view' import { PendingTransactionLoggingView } from '@logging/PendingTransactionLogging.view' import { TransactionLoggingView } from '@logging/TransactionLogging.view' +import { UserLoggingView } from '@logging/UserLogging.view' export async function revertSettledReceiveTransaction( homeCom: DbCommunity, diff --git a/federation/src/graphql/api/1_0/util/settlePendingReceiveTransaction.ts b/federation/src/graphql/api/1_0/util/settlePendingReceiveTransaction.ts index 0eadbe1c2..3d024e980 100644 --- a/federation/src/graphql/api/1_0/util/settlePendingReceiveTransaction.ts +++ b/federation/src/graphql/api/1_0/util/settlePendingReceiveTransaction.ts @@ -1,7 +1,3 @@ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ -/* eslint-disable new-cap */ -/* eslint-disable @typescript-eslint/no-non-null-assertion */ - import { getConnection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { PendingTransaction as DbPendingTransaction } from '@entity/PendingTransaction' @@ -13,14 +9,14 @@ import { PendingTransactionState } from '../enum/PendingTransactionState' import { LogError } from '@/server/LogError' import { federationLogger as logger } from '@/server/logger' -import { getLastTransaction } from '@/graphql/util/getLastTransaction' import { TRANSACTIONS_LOCK } from '@/graphql/util/TRANSACTIONS_LOCK' -import { calculateRecipientBalance } from './calculateRecipientBalance' -import Decimal from 'decimal.js-light' +import { getLastTransaction } from '@/graphql/util/getLastTransaction' import { CommunityLoggingView } from '@logging/CommunityLogging.view' -import { UserLoggingView } from '@logging/UserLogging.view' import { PendingTransactionLoggingView } from '@logging/PendingTransactionLogging.view' import { TransactionLoggingView } from '@logging/TransactionLogging.view' +import { UserLoggingView } from '@logging/UserLogging.view' +import Decimal from 'decimal.js-light' +import { calculateRecipientBalance } from './calculateRecipientBalance' export async function settlePendingReceiveTransaction( homeCom: DbCommunity, diff --git a/federation/src/graphql/api/1_0/util/storeForeignUser.ts b/federation/src/graphql/api/1_0/util/storeForeignUser.ts index 861702d11..46e642795 100644 --- a/federation/src/graphql/api/1_0/util/storeForeignUser.ts +++ b/federation/src/graphql/api/1_0/util/storeForeignUser.ts @@ -1,9 +1,9 @@ import { User as DbUser } from '@entity/User' import { federationLogger as logger } from '@/server/logger' -import { SendCoinsArgs } from '../model/SendCoinsArgs' import { UserLoggingView } from '@logging/UserLogging.view' import { SendCoinsArgsLoggingView } from '../logger/SendCoinsArgsLogging.view' +import { SendCoinsArgs } from '../model/SendCoinsArgs' export async function storeForeignUser(args: SendCoinsArgs): Promise { if (args.senderCommunityUuid !== null && args.senderUserUuid !== null) { diff --git a/federation/src/graphql/api/1_1/resolver/PublicKeyResolver.test.ts b/federation/src/graphql/api/1_1/resolver/PublicKeyResolver.test.ts index 7ccec73af..ec0f652cc 100644 --- a/federation/src/graphql/api/1_1/resolver/PublicKeyResolver.test.ts +++ b/federation/src/graphql/api/1_1/resolver/PublicKeyResolver.test.ts @@ -1,9 +1,7 @@ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -import { createTestClient } from 'apollo-server-testing' -import createServer from '@/server/createServer' +import { CONFIG } from '@/config' +import { createServer } from '@/server/createServer' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -import CONFIG from '@/config' +import { createTestClient } from 'apollo-server-testing' let query: any diff --git a/federation/src/graphql/api/1_1/resolver/PublicKeyResolver.ts b/federation/src/graphql/api/1_1/resolver/PublicKeyResolver.ts index e03b36075..3cc9ed62b 100644 --- a/federation/src/graphql/api/1_1/resolver/PublicKeyResolver.ts +++ b/federation/src/graphql/api/1_1/resolver/PublicKeyResolver.ts @@ -1,8 +1,6 @@ -// eslint-disable-next-line @typescript-eslint/no-unused-vars import { Resolver } from 'type-graphql' -// eslint-disable-next-line camelcase + import { PublicKeyResolver as PublicKeyResolver_1_0 } from '../../1_0/resolver/PublicKeyResolver' @Resolver() -// eslint-disable-next-line camelcase, @typescript-eslint/no-unused-vars export class PublicKeyResolver extends PublicKeyResolver_1_0 {} diff --git a/federation/src/graphql/api/schema.ts b/federation/src/graphql/api/schema.ts index 6ba0bff56..84e756af3 100644 --- a/federation/src/graphql/api/schema.ts +++ b/federation/src/graphql/api/schema.ts @@ -1,7 +1,7 @@ -import path from 'path' -// config -import CONFIG from '../../config' +import path from 'node:path' import { federationLogger as logger } from '@/server/logger' +// config +import { CONFIG } from '../../config' export const getApiResolvers = (): string => { logger.info(`getApiResolvers...${CONFIG.FEDERATION_API}`) diff --git a/federation/src/graphql/scalar/Decimal.ts b/federation/src/graphql/scalar/Decimal.ts index 96804bdfa..f539685f9 100644 --- a/federation/src/graphql/scalar/Decimal.ts +++ b/federation/src/graphql/scalar/Decimal.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { Decimal } from 'decimal.js-light' import { GraphQLScalarType, Kind } from 'graphql' diff --git a/federation/src/graphql/schema.ts b/federation/src/graphql/schema.ts index 9d39f1398..64a35dd76 100644 --- a/federation/src/graphql/schema.ts +++ b/federation/src/graphql/schema.ts @@ -1,12 +1,12 @@ import { GraphQLSchema } from 'graphql' import { buildSchema } from 'type-graphql' -// import isAuthorized from './directive/isAuthorized' -import { DecimalScalar } from './scalar/Decimal' import { Decimal } from 'decimal.js-light' import { getApiResolvers } from './api/schema' +// import isAuthorized from './directive/isAuthorized' +import { DecimalScalar } from './scalar/Decimal' -const schema = async (): Promise => { +export const schema = async (): Promise => { return await buildSchema({ resolvers: [getApiResolvers()], // authChecker: isAuthorized, @@ -23,5 +23,3 @@ const schema = async (): Promise => { */ }) } - -export default schema diff --git a/federation/src/graphql/util/checkTradingLevel.ts b/federation/src/graphql/util/checkTradingLevel.ts index 9f5463a0d..4bc5be988 100644 --- a/federation/src/graphql/util/checkTradingLevel.ts +++ b/federation/src/graphql/util/checkTradingLevel.ts @@ -1,7 +1,7 @@ -import CONFIG from '@/config' +import { CONFIG } from '@/config' +import { federationLogger as logger } from '@/server/logger' import { Community as DbCommunity } from '@entity/Community' import { Decimal } from 'decimal.js-light' -import { federationLogger as logger } from '@/server/logger' export async function checkTradingLevel(homeCom: DbCommunity, amount: Decimal): Promise { const tradingLevel = CONFIG.FEDERATION_TRADING_LEVEL diff --git a/federation/src/graphql/util/decay.test.ts b/federation/src/graphql/util/decay.test.ts index 1d4ebab3b..f419982ac 100644 --- a/federation/src/graphql/util/decay.test.ts +++ b/federation/src/graphql/util/decay.test.ts @@ -1,6 +1,6 @@ import { Decimal } from 'decimal.js-light' -import { decayFormula, calculateDecay } from './decay' +import { calculateDecay, decayFormula } from './decay' describe('utils/decay', () => { describe('decayFormula', () => { @@ -16,7 +16,7 @@ describe('utils/decay', () => { expect(decayFormula(amount, seconds).toString()).toBe('1.000000021964959992727444') }) // we get pretty close, but not exact here, skipping - // eslint-disable-next-line jest/no-disabled-tests + it.skip('has correct forward calculation', () => { const amount = new Decimal(1.0).div( new Decimal('0.99999997803504048973201202316767079413460520837376'), diff --git a/federation/src/graphql/util/decay.ts b/federation/src/graphql/util/decay.ts index f195075ff..331d3b5b4 100644 --- a/federation/src/graphql/util/decay.ts +++ b/federation/src/graphql/util/decay.ts @@ -1,7 +1,7 @@ import { Decimal } from 'decimal.js-light' +import { CONFIG } from '@/config' import { LogError } from '@/server/LogError' -import CONFIG from '@/config' import { Decay } from '../api/1_0/model/Decay' // TODO: externalize all those definitions and functions into an external decay library diff --git a/federation/src/graphql/util/validateAlias.ts b/federation/src/graphql/util/validateAlias.ts index cd2d8fe1f..66d9e8595 100644 --- a/federation/src/graphql/util/validateAlias.ts +++ b/federation/src/graphql/util/validateAlias.ts @@ -24,11 +24,18 @@ const RESERVED_ALIAS = [ ] export const validateAlias = async (alias: string): Promise => { - if (alias.length < 3) throw new LogError('Given alias is too short', alias) - if (alias.length > 20) throw new LogError('Given alias is too long', alias) - if (!alias.match(VALID_ALIAS_REGEX)) throw new LogError('Invalid characters in alias', alias) - if (RESERVED_ALIAS.includes(alias.toLowerCase())) + if (alias.length < 3) { + throw new LogError('Given alias is too short', alias) + } + if (alias.length > 20) { + throw new LogError('Given alias is too long', alias) + } + if (!alias.match(VALID_ALIAS_REGEX)) { + throw new LogError('Invalid characters in alias', alias) + } + if (RESERVED_ALIAS.includes(alias.toLowerCase())) { throw new LogError('Alias is not allowed', alias) + } const aliasInUse = await DbUser.find({ where: { alias: Raw((a) => `LOWER(${a}) = "${alias.toLowerCase()}"`) }, }) diff --git a/federation/src/index.ts b/federation/src/index.ts index bdc66c87a..5c3cc6f89 100644 --- a/federation/src/index.ts +++ b/federation/src/index.ts @@ -1,22 +1,20 @@ -/* eslint-disable @typescript-eslint/no-explicit-any */ - import { createServer } from './server/createServer' // config import { CONFIG } from './config' async function main() { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no logger needed fot startup infos console.log(`FEDERATION_PORT=${CONFIG.FEDERATION_PORT}`) - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no logger needed fot startup infos console.log(`FEDERATION_API=${CONFIG.FEDERATION_API}`) const { app } = await createServer() app.listen(CONFIG.FEDERATION_PORT, () => { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no logger needed fot startup infos console.log(`Server is running at http://localhost:${CONFIG.FEDERATION_PORT}`) if (CONFIG.GRAPHIQL) { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no logger needed fot startup infos console.log( `GraphIQL available at ${CONFIG.FEDERATION_COMMUNITY_URL}/api/${CONFIG.FEDERATION_API}`, ) @@ -25,7 +23,7 @@ async function main() { } main().catch((e) => { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no logger present console.error(e) process.exit(1) }) diff --git a/federation/src/server/LogError.ts b/federation/src/server/LogError.ts index b29e83dc8..fbd6e6d18 100644 --- a/federation/src/server/LogError.ts +++ b/federation/src/server/LogError.ts @@ -1,8 +1,6 @@ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ import { federationLogger as logger } from './logger' export class LogError extends Error { - // eslint-disable-next-line @typescript-eslint/no-explicit-any constructor(msg: string, ...details: any[]) { super(msg) logger.error(msg, ...details) diff --git a/federation/src/server/cors.ts b/federation/src/server/cors.ts index e76ed1591..873d6a2eb 100644 --- a/federation/src/server/cors.ts +++ b/federation/src/server/cors.ts @@ -5,4 +5,5 @@ const corsOptions = { exposedHeaders: ['token'], } +// biome-ignore lint/style/noDefaultExport: export default cors(corsOptions) diff --git a/federation/src/server/createServer.ts b/federation/src/server/createServer.ts index 3d3b80dd6..5ca697bd2 100644 --- a/federation/src/server/createServer.ts +++ b/federation/src/server/createServer.ts @@ -3,29 +3,29 @@ import 'reflect-metadata' import { ApolloServer } from 'apollo-server-express' import express, { Express } from 'express' -// database -import connection from '@/typeorm/connection' import { checkDBVersion } from '@/typeorm/DBVersion' +// database +import { connection } from '@/typeorm/connection' // server import cors from './cors' // import serverContext from './context' -import plugins from './plugins' +import { plugins } from './plugins' // config import { CONFIG } from '@/config' // graphql -import schema from '@/graphql/schema' +import { schema } from '@/graphql/schema' // webhooks // import { elopageWebhook } from '@/webhook/elopage' import { Connection } from '@dbTools/typeorm' -import { apolloLogger } from './logger' -import { Logger } from 'log4js' -import helmet from 'helmet' import { slowDown } from 'express-slow-down' +import helmet from 'helmet' +import { Logger } from 'log4js' +import { apolloLogger } from './logger' // i18n // import { i18n } from './localization' @@ -36,7 +36,6 @@ import { slowDown } from 'express-slow-down' type ServerDef = { apollo: ApolloServer; app: Express; con: Connection } export const createServer = async ( - // eslint-disable-next-line @typescript-eslint/no-explicit-any // context: any = serverContext, logger: Logger = apolloLogger, // localization: i18n.I18n = i18n, @@ -112,5 +111,3 @@ export const createServer = async ( return { apollo, app, con } } - -export default createServer diff --git a/federation/src/server/logger.ts b/federation/src/server/logger.ts index dd2a50cf3..505c7e4d8 100644 --- a/federation/src/server/logger.ts +++ b/federation/src/server/logger.ts @@ -1,5 +1,5 @@ +import { CONFIG } from '@/config' import log4js from 'log4js' -import CONFIG from '@/config' import { readFileSync } from 'fs' diff --git a/federation/src/server/plugins.ts b/federation/src/server/plugins.ts index 7ecbedf2a..cde1d6a03 100644 --- a/federation/src/server/plugins.ts +++ b/federation/src/server/plugins.ts @@ -1,6 +1,3 @@ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ - import clonedeep from 'lodash.clonedeep' const setHeadersPlugin = { @@ -23,8 +20,12 @@ const setHeadersPlugin = { const filterVariables = (variables: any) => { const vars = clonedeep(variables) - if (vars && vars.password) vars.password = '***' - if (vars && vars.passwordNew) vars.passwordNew = '***' + if (vars && vars.password) { + vars.password = '***' + } + if (vars && vars.passwordNew) { + vars.passwordNew = '***' + } return vars } @@ -39,15 +40,18 @@ ${mutation || query}variables: ${JSON.stringify(filterVariables(variables), null return { willSendResponse(requestContext: any) { if (operationName !== 'IntrospectionQuery') { - if (requestContext.context.user) logger.info(`User ID: ${requestContext.context.user.id}`) + if (requestContext.context.user) { + logger.info(`User ID: ${requestContext.context.user.id}`) + } if (requestContext.response.data) { logger.info('Response Success!') logger.trace(`Response-Data: ${JSON.stringify(requestContext.response.data, null, 2)}`) } - if (requestContext.response.errors) + if (requestContext.response.errors) { logger.error(`Response-Errors: ${JSON.stringify(requestContext.response.errors, null, 2)}`) + } } return requestContext }, @@ -55,7 +59,5 @@ ${JSON.stringify(requestContext.response.errors, null, 2)}`) }, } -const plugins = +export const plugins = process.env.NODE_ENV === 'development' ? [setHeadersPlugin] : [setHeadersPlugin, logPlugin] - -export default plugins diff --git a/federation/src/typeorm/DBVersion.ts b/federation/src/typeorm/DBVersion.ts index 267dfd57e..08287f396 100644 --- a/federation/src/typeorm/DBVersion.ts +++ b/federation/src/typeorm/DBVersion.ts @@ -1,5 +1,5 @@ -import { Migration } from '@entity/Migration' import { federationLogger as logger } from '@/server/logger' +import { Migration } from '@entity/Migration' const getDBVersion = async (): Promise => { try { diff --git a/federation/src/typeorm/connection.ts b/federation/src/typeorm/connection.ts index d08d935d4..9a0d8f224 100644 --- a/federation/src/typeorm/connection.ts +++ b/federation/src/typeorm/connection.ts @@ -1,7 +1,7 @@ // TODO This is super weird - since the entities are defined in another project they have their own globals. // We cannot use our connection here, but must use the external typeorm installation -import { Connection, createConnection, FileLogger } from '@dbTools/typeorm' -import CONFIG from '@/config' +import { CONFIG } from '@/config' +import { Connection, FileLogger, createConnection } from '@dbTools/typeorm' import { entities } from '@entity/index' const connection = async (): Promise => { @@ -25,10 +25,10 @@ const connection = async (): Promise => { }, }) } catch (error) { - // eslint-disable-next-line no-console + // biome-ignore lint/suspicious/noConsole: no logger present console.log(error) return null } } -export default connection +export { connection } diff --git a/federation/test/extensions.ts b/federation/test/extensions.ts index 262a9bcdb..e27dc54ab 100644 --- a/federation/test/extensions.ts +++ b/federation/test/extensions.ts @@ -1,8 +1,8 @@ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/restrict-template-expressions */ -/* eslint-disable @typescript-eslint/no-empty-interface */ -/* eslint-disable @typescript-eslint/no-unsafe-argument */ + + + + + import { Decimal } from 'decimal.js-light' @@ -28,7 +28,7 @@ interface CustomMatchers { } declare global { - // eslint-disable-next-line @typescript-eslint/no-namespace + namespace jest { interface Expect extends CustomMatchers {} interface Matchers extends CustomMatchers {} diff --git a/federation/test/helpers.ts b/federation/test/helpers.ts index 67feea5fa..f240e4a36 100644 --- a/federation/test/helpers.ts +++ b/federation/test/helpers.ts @@ -1,9 +1,9 @@ -/* eslint-disable @typescript-eslint/unbound-method */ -/* eslint-disable @typescript-eslint/no-unsafe-assignment */ -/* eslint-disable @typescript-eslint/no-unsafe-member-access */ -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/no-unsafe-call */ -/* eslint-disable @typescript-eslint/no-unsafe-return */ + + + + + + import { entities } from '@entity/index' import { createTestClient } from 'apollo-server-testing' diff --git a/federation/yarn.lock b/federation/yarn.lock index 30b56b378..f8f1525ff 100644 --- a/federation/yarn.lock +++ b/federation/yarn.lock @@ -335,6 +335,60 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== +"@biomejs/biome@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-1.9.4.tgz#89766281cbc3a0aae865a7ff13d6aaffea2842bf" + integrity sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog== + optionalDependencies: + "@biomejs/cli-darwin-arm64" "1.9.4" + "@biomejs/cli-darwin-x64" "1.9.4" + "@biomejs/cli-linux-arm64" "1.9.4" + "@biomejs/cli-linux-arm64-musl" "1.9.4" + "@biomejs/cli-linux-x64" "1.9.4" + "@biomejs/cli-linux-x64-musl" "1.9.4" + "@biomejs/cli-win32-arm64" "1.9.4" + "@biomejs/cli-win32-x64" "1.9.4" + +"@biomejs/cli-darwin-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz#dfa376d23a54a2d8f17133c92f23c1bf2e62509f" + integrity sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw== + +"@biomejs/cli-darwin-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz#eafc2ce3849d385fc02238aad1ca4a73395a64d9" + integrity sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg== + +"@biomejs/cli-linux-arm64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz#d780c3e01758fc90f3268357e3f19163d1f84fca" + integrity sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA== + +"@biomejs/cli-linux-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz#8ed1dd0e89419a4b66a47f95aefb8c46ae6041c9" + integrity sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g== + +"@biomejs/cli-linux-x64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz#f36982b966bd671a36671e1de4417963d7db15fb" + integrity sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg== + +"@biomejs/cli-linux-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz#a0a7f56680c76b8034ddc149dbf398bdd3a462e8" + integrity sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg== + +"@biomejs/cli-win32-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz#e2ef4e0084e76b7e26f0fc887c5ef1265ea56200" + integrity sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg== + +"@biomejs/cli-win32-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz#4c7afa90e3970213599b4095e62f87e5972b2340" + integrity sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA== + "@cspotcode/source-map-support@^0.8.0": version "0.8.1" resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" From fbe324b6677005c0dd72e1c895f13af0d36f439e Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Sat, 26 Apr 2025 12:55:53 +0200 Subject: [PATCH 10/13] add missing update for biome instead of eslint --- federation/package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/federation/package.json b/federation/package.json index fa129b74e..ab84fb76d 100644 --- a/federation/package.json +++ b/federation/package.json @@ -13,7 +13,8 @@ "start": "cross-env TZ=UTC TS_NODE_BASEURL=./build node -r tsconfig-paths/register build/src/index.js", "test": "cross-env TZ=UTC NODE_ENV=development jest --runInBand --forceExit --detectOpenHandles", "dev": "cross-env TZ=UTC nodemon -w src --ext ts --exec ts-node -r dotenv/config -r tsconfig-paths/register src/index.ts", - "lint": "eslint --max-warnings=0 --ext .js,.ts ." + "lint": "biome check --error-on-warnings .", + "lint:fix": "biome check --error-on-warnings . --write" }, "dependencies": { "apollo-server-express": "^2.25.2", From bb8132791557fb9dcbf117ff7c3622a83e2e3730 Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Wed, 30 Apr 2025 09:17:57 +0200 Subject: [PATCH 11/13] use root biome config for backend, add useImportType rule --- backend/biome.json | 147 --- .../dltConnector/DltConnectorClient.test.ts | 2 +- .../apis/dltConnector/DltConnectorClient.ts | 6 +- .../dltConnector/model/TransactionError.ts | 2 +- .../dltConnector/model/TransactionRecipe.ts | 2 +- .../dltConnector/model/TransactionResult.ts | 4 +- backend/src/apis/gms/model/GmsUser.ts | 2 +- backend/src/apis/humhub/HumHubClient.ts | 12 +- .../src/apis/humhub/__mocks__/HumHubClient.ts | 4 +- backend/src/apis/humhub/__mocks__/syncUser.ts | 4 +- .../humhub/logging/AccountLogging.view.ts | 2 +- .../humhub/logging/PostUserLogging.view.ts | 2 +- .../humhub/logging/ProfileLogging.view.ts | 2 +- backend/src/apis/humhub/model/AbstractUser.ts | 2 +- backend/src/apis/humhub/model/Account.ts | 4 +- backend/src/apis/humhub/model/GetUser.ts | 2 +- backend/src/apis/humhub/model/PostUser.ts | 2 +- backend/src/apis/humhub/model/Profile.ts | 4 +- .../src/apis/humhub/model/SpacesResponse.ts | 2 +- .../src/apis/humhub/model/UsersResponse.ts | 2 +- backend/src/apis/humhub/syncUser.ts | 4 +- backend/src/apis/openai/OpenaiClient.ts | 4 +- backend/src/auth/CustomJwtPayload.ts | 2 +- backend/src/auth/JWT.ts | 2 +- backend/src/auth/Role.ts | 2 +- backend/src/data/Contribution.logic.ts | 4 +- .../src/data/ContributionMessage.builder.ts | 4 +- backend/src/data/PublishName.logic.ts | 2 +- backend/src/data/UserLogic.ts | 6 +- backend/src/emails/sendEmailVariants.test.ts | 4 +- backend/src/emails/sendEmailVariants.ts | 2 +- .../event/EVENT_ADMIN_CONTRIBUTION_CONFIRM.ts | 8 +- .../event/EVENT_ADMIN_CONTRIBUTION_CREATE.ts | 8 +- .../event/EVENT_ADMIN_CONTRIBUTION_DELETE.ts | 8 +- .../event/EVENT_ADMIN_CONTRIBUTION_DENY.ts | 8 +- .../EVENT_ADMIN_CONTRIBUTION_LINK_CREATE.ts | 8 +- .../EVENT_ADMIN_CONTRIBUTION_LINK_DELETE.ts | 6 +- .../EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE.ts | 8 +- ...EVENT_ADMIN_CONTRIBUTION_MESSAGE_CREATE.ts | 8 +- .../event/EVENT_ADMIN_CONTRIBUTION_UPDATE.ts | 8 +- backend/src/event/EVENT_ADMIN_USER_DELETE.ts | 4 +- .../src/event/EVENT_ADMIN_USER_ROLE_SET.ts | 4 +- .../src/event/EVENT_ADMIN_USER_UNDELETE.ts | 4 +- .../src/event/EVENT_CONTRIBUTION_CREATE.ts | 8 +- .../src/event/EVENT_CONTRIBUTION_DELETE.ts | 8 +- .../event/EVENT_CONTRIBUTION_LINK_REDEEM.ts | 12 +- .../EVENT_CONTRIBUTION_MESSAGE_CREATE.ts | 8 +- .../src/event/EVENT_CONTRIBUTION_UPDATE.ts | 8 +- .../EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION.ts | 4 +- .../event/EVENT_EMAIL_ADMIN_CONFIRMATION.ts | 4 +- backend/src/event/EVENT_EMAIL_CONFIRMATION.ts | 4 +- .../src/event/EVENT_EMAIL_FORGOT_PASSWORD.ts | 4 +- .../src/event/EVENT_NEWSLETTER_SUBSCRIBE.ts | 4 +- .../src/event/EVENT_NEWSLETTER_UNSUBSCRIBE.ts | 4 +- .../event/EVENT_TRANSACTION_LINK_CREATE.ts | 8 +- .../event/EVENT_TRANSACTION_LINK_DELETE.ts | 6 +- .../event/EVENT_TRANSACTION_LINK_REDEEM.ts | 8 +- .../src/event/EVENT_TRANSACTION_RECEIVE.ts | 8 +- backend/src/event/EVENT_TRANSACTION_SEND.ts | 8 +- .../src/event/EVENT_USER_ACTIVATE_ACCOUNT.ts | 4 +- backend/src/event/EVENT_USER_INFO_UPDATE.ts | 4 +- backend/src/event/EVENT_USER_LOGIN.ts | 4 +- backend/src/event/EVENT_USER_LOGOUT.ts | 4 +- backend/src/event/EVENT_USER_REGISTER.ts | 4 +- backend/src/event/Event.ts | 16 +- .../client/1_0/AuthenticationClient.ts | 4 +- .../federation/client/1_0/FederationClient.ts | 6 +- .../federation/client/1_0/SendCoinsClient.ts | 4 +- .../PublicCommunityInfoLogging.view.ts | 2 +- .../1_0/logging/SendCoinsArgsLogging.view.ts | 2 +- .../logging/SendCoinsResultLogging.view.ts | 2 +- .../client/AuthenticationClientFactory.ts | 2 +- .../client/FederationClientFactory.ts | 2 +- .../client/SendCoinsClientFactory.ts | 2 +- .../federation/validateCommunities.test.ts | 6 +- backend/src/federation/validateCommunities.ts | 2 +- backend/src/graphql/directive/isAuthorized.ts | 6 +- .../src/graphql/model/AdminCommunityView.ts | 6 +- backend/src/graphql/model/AdminUser.ts | 2 +- backend/src/graphql/model/ChatGptMessage.ts | 2 +- backend/src/graphql/model/Community.ts | 2 +- backend/src/graphql/model/Contribution.ts | 4 +- backend/src/graphql/model/ContributionLink.ts | 2 +- .../src/graphql/model/ContributionMessage.ts | 4 +- .../src/graphql/model/FederatedCommunity.ts | 2 +- backend/src/graphql/model/ProjectBranding.ts | 2 +- backend/src/graphql/model/Space.ts | 2 +- backend/src/graphql/model/SpaceList.ts | 2 +- backend/src/graphql/model/Transaction.ts | 2 +- backend/src/graphql/model/TransactionLink.ts | 2 +- .../graphql/model/UnconfirmedContribution.ts | 4 +- backend/src/graphql/model/User.ts | 4 +- backend/src/graphql/model/UserAdmin.ts | 2 +- backend/src/graphql/model/UserContact.ts | 2 +- .../src/graphql/resolver/AiChatResolver.ts | 4 +- .../src/graphql/resolver/BalanceResolver.ts | 2 +- .../resolver/CommunityResolver.test.ts | 4 +- .../src/graphql/resolver/CommunityResolver.ts | 4 +- .../resolver/ContributionLinkResolver.test.ts | 4 +- .../resolver/ContributionLinkResolver.ts | 6 +- .../ContributionMessageResolver.test.ts | 4 +- .../resolver/ContributionMessageResolver.ts | 10 +- .../resolver/ContributionResolver.test.ts | 6 +- .../graphql/resolver/ContributionResolver.ts | 14 +- .../graphql/resolver/EmailOptinCodes.test.ts | 4 +- backend/src/graphql/resolver/GdtResolver.ts | 4 +- .../src/graphql/resolver/KlicktippResolver.ts | 2 +- .../resolver/ProjectBrandingResolver.ts | 2 +- .../graphql/resolver/StatisticsResolver.ts | 2 +- .../resolver/TransactionLinkResolver.test.ts | 8 +- .../resolver/TransactionLinkResolver.ts | 8 +- .../resolver/TransactionResolver.test.ts | 8 +- .../graphql/resolver/TransactionResolver.ts | 8 +- .../src/graphql/resolver/UserResolver.test.ts | 6 +- backend/src/graphql/resolver/UserResolver.ts | 22 +- .../src/graphql/resolver/semaphore.test.ts | 4 +- .../graphql/resolver/util/Location2Point.ts | 2 +- .../util/authenticateGmsUserPlayground.ts | 2 +- .../src/graphql/resolver/util/communities.ts | 4 +- .../util/compareGmsRelevantUserSettings.ts | 8 +- .../graphql/resolver/util/creations.test.ts | 6 +- .../src/graphql/resolver/util/creations.ts | 4 +- .../resolver/util/extractGraphQLFields.ts | 6 +- .../resolver/util/findContributionMessages.ts | 2 +- .../resolver/util/findContributions.ts | 6 +- .../resolver/util/findUserByIdentifier.ts | 4 +- .../util/findUserByIdentifiers.test.ts | 8 +- .../src/graphql/resolver/util/findUsers.ts | 2 +- .../resolver/util/getTransactionList.ts | 2 +- .../graphql/resolver/util/modifyUserRole.ts | 2 +- .../resolver/util/processXComSendCoins.ts | 4 +- .../sendTransactionsToDltConnector.test.ts | 6 +- .../graphql/resolver/util/sendUserToGms.ts | 2 +- .../util/settlePendingSenderTransaction.ts | 4 +- .../graphql/resolver/util/storeForeignUser.ts | 4 +- .../src/graphql/resolver/util/syncHumhub.ts | 8 +- .../resolver/util/transactionLinkList.ts | 8 +- .../resolver/util/validateAlias.test.ts | 4 +- backend/src/graphql/schema.ts | 2 +- .../validator/ContributionStatusArray.ts | 2 +- backend/src/graphql/validator/DateString.ts | 6 +- backend/src/graphql/validator/Decimal.ts | 8 +- backend/src/graphql/validator/Location.ts | 8 +- .../AbstractUnconfirmedContribution.role.ts | 10 +- .../UnconfirmedContributionAdmin.role.ts | 10 +- ...nfirmedContributionAdminAddMessage.role.ts | 10 +- .../UnconfirmedContributionUser.role.ts | 8 +- ...onfirmedContributionUserAddMessage.role.ts | 8 +- .../UpdateUnconfirmedContribution.context.ts | 10 +- backend/src/logging/BalanceLogging.view.ts | 2 +- backend/src/logging/DecayLogging.view.ts | 2 +- backend/src/password/EncryptorUtils.ts | 4 +- backend/src/password/PasswordEncryptor.ts | 2 +- .../src/password/__mocks__/EncryptorUtils.ts | 2 +- backend/src/seeds/contributionLink/index.ts | 2 +- backend/src/seeds/creation/index.ts | 2 +- backend/src/seeds/factory/contributionLink.ts | 6 +- backend/src/seeds/factory/creation.ts | 4 +- backend/src/seeds/factory/transactionLink.ts | 4 +- backend/src/seeds/factory/user.ts | 4 +- backend/src/seeds/transactionLink/index.ts | 2 +- backend/src/seeds/users/bibi-bloxberg.ts | 2 +- backend/src/seeds/users/bob-baumeister.ts | 2 +- backend/src/seeds/users/garrick-ollivander.ts | 2 +- backend/src/seeds/users/peter-lustig.ts | 2 +- .../src/seeds/users/raeuber-hotzenplotz.ts | 2 +- backend/src/seeds/users/stephen-hawking.ts | 2 +- backend/src/server/context.ts | 10 +- backend/src/server/createServer.ts | 6 +- backend/src/typeorm/connection.ts | 2 +- backend/src/util/calculateSenderBalance.ts | 4 +- backend/src/util/communityUser.ts | 4 +- backend/src/util/decay.ts | 2 +- backend/src/util/klicktipp.test.ts | 4 +- backend/src/util/utilities.ts | 2 +- backend/src/util/validate.ts | 4 +- backend/src/util/virtualTransactions.ts | 6 +- backend/yarn.lock | 1060 +---------------- biome.json | 1 + package.json | 3 + yarn.lock | 54 + 181 files changed, 492 insertions(+), 1589 deletions(-) delete mode 100644 backend/biome.json diff --git a/backend/biome.json b/backend/biome.json deleted file mode 100644 index 84d3a3a29..000000000 --- a/backend/biome.json +++ /dev/null @@ -1,147 +0,0 @@ -{ - "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", - "vcs": { "enabled": false, "clientKind": "git", "useIgnoreFile": false }, - "files": { - "ignoreUnknown": false, - "ignore": ["build", "node_modules", "coverage"], - "include": ["./src/**/*.js", "./src/**/*.ts"] - }, - "formatter": { - "enabled": true, - "useEditorconfig": true, - "formatWithErrors": false, - "indentStyle": "space", - "indentWidth": 2, - "lineEnding": "lf", - "lineWidth": 100, - "attributePosition": "auto", - "bracketSpacing": true - }, - "organizeImports": { "enabled": true }, - "linter": { - "enabled": true, - "rules": { - "recommended": false, - "complexity": { - "noExtraBooleanCast": "error", - "noMultipleSpacesInRegularExpressionLiterals": "error", - "noUselessCatch": "error", - "noUselessConstructor": "error", - "noUselessLoneBlockStatements": "error", - "noUselessRename": "error", - "noUselessTernary": "error", - "noUselessUndefinedInitialization": "error", - "noVoid": "error", - "noWith": "error", - "useLiteralKeys": "error", - "useRegexLiterals": "error" - }, - "correctness": { - "noConstAssign": "error", - "noConstantCondition": "error", - "noEmptyCharacterClassInRegex": "error", - "noEmptyPattern": "error", - "noGlobalObjectCalls": "error", - "noInnerDeclarations": "error", - "noInvalidConstructorSuper": "error", - "noInvalidUseBeforeDeclaration": "error", - "noNewSymbol": "error", - "noNodejsModules": "off", - "noNonoctalDecimalEscape": "error", - "noPrecisionLoss": "error", - "noSelfAssign": "error", - "noSetterReturn": "error", - "noSwitchDeclarations": "error", - "noUndeclaredVariables": "error", - "noUnreachable": "error", - "noUnreachableSuper": "error", - "noUnsafeFinally": "error", - "noUnsafeOptionalChaining": "error", - "noUnusedLabels": "error", - "noUnusedVariables": "error", - "useArrayLiterals": "error", - "useIsNan": "error", - "useValidForDirection": "error", - "useYield": "error" - }, - "security": { "noGlobalEval": "error" }, - "style": { - "noCommaOperator": "error", - "noDefaultExport": "error", - "noVar": "warn", - "noYodaExpression": "error", - "useBlockStatements": "error", - "useConsistentBuiltinInstantiation": "error", - "useConst": "error", - "useSingleVarDeclarator": "error" - }, - "suspicious": { - "noAsyncPromiseExecutor": "error", - "noCatchAssign": "error", - "noClassAssign": "error", - "noCompareNegZero": "error", - "noConsole": "error", - "noControlCharactersInRegex": "error", - "noDebugger": "error", - "noDoubleEquals": "error", - "noDuplicateCase": "error", - "noDuplicateClassMembers": "error", - "noDuplicateObjectKeys": "error", - "noDuplicateParameters": "error", - "noEmptyBlockStatements": "error", - "noFallthroughSwitchClause": "error", - "noFunctionAssign": "error", - "noGlobalAssign": "error", - "noImportAssign": "error", - "noMisleadingCharacterClass": "error", - "noPrototypeBuiltins": "error", - "noRedeclare": "error", - "noSelfCompare": "error", - "noShadowRestrictedNames": "error", - "noSparseArray": "error", - "noUnsafeNegation": "error", - "useDefaultSwitchClauseLast": "error", - "useGetterReturn": "error", - "useValidTypeof": "error" - } - }, - "ignore": ["**/node_modules", "**/*.min.js", "**/build", "**/coverage"] - }, - "javascript": { - "formatter": { - "jsxQuoteStyle": "single", - "quoteProperties": "asNeeded", - "trailingCommas": "all", - "semicolons": "asNeeded", - "arrowParentheses": "always", - "bracketSameLine": false, - "quoteStyle": "single", - "attributePosition": "auto", - "bracketSpacing": true - }, - "globals": [ - "document", - "navigator", - "window", - "describe", - "test", - "it", - "expect", - "beforeAll", - "beforeEach", - "afterAll", - "afterEach", - "jest" - ], - "parser": { - "unsafeParameterDecoratorsEnabled": true - } - }, - "overrides": [ - { - "include": ["*.ts", "*.tsx"], - "linter": { "rules": { "complexity": { "noVoid": "error" } } } - }, - { "include": ["*.test.ts"], "linter": { "rules": {} } } - ] -} diff --git a/backend/src/apis/dltConnector/DltConnectorClient.test.ts b/backend/src/apis/dltConnector/DltConnectorClient.test.ts index f3ac103c1..88af5833f 100644 --- a/backend/src/apis/dltConnector/DltConnectorClient.test.ts +++ b/backend/src/apis/dltConnector/DltConnectorClient.test.ts @@ -1,4 +1,4 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { Transaction as DbTransaction } from '@entity/Transaction' import { Decimal } from 'decimal.js-light' diff --git a/backend/src/apis/dltConnector/DltConnectorClient.ts b/backend/src/apis/dltConnector/DltConnectorClient.ts index 860c64ee5..948abde1f 100644 --- a/backend/src/apis/dltConnector/DltConnectorClient.ts +++ b/backend/src/apis/dltConnector/DltConnectorClient.ts @@ -1,4 +1,4 @@ -import { Transaction as DbTransaction } from '@entity/Transaction' +import type { Transaction as DbTransaction } from '@entity/Transaction' import { GraphQLClient, gql } from 'graphql-request' import { CONFIG } from '@/config' @@ -6,8 +6,8 @@ import { TransactionTypeId } from '@/graphql/enum/TransactionTypeId' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' -import { TransactionResult } from './model/TransactionResult' -import { UserIdentifier } from './model/UserIdentifier' +import type { TransactionResult } from './model/TransactionResult' +import type { UserIdentifier } from './model/UserIdentifier' const sendTransaction = gql` mutation ($input: TransactionInput!) { diff --git a/backend/src/apis/dltConnector/model/TransactionError.ts b/backend/src/apis/dltConnector/model/TransactionError.ts index a2b1348a5..0a1b7bb51 100644 --- a/backend/src/apis/dltConnector/model/TransactionError.ts +++ b/backend/src/apis/dltConnector/model/TransactionError.ts @@ -1,4 +1,4 @@ -import { TransactionErrorType } from '@dltConnector/enum/TransactionErrorType' +import type { TransactionErrorType } from '@dltConnector/enum/TransactionErrorType' export interface TransactionError { type: TransactionErrorType diff --git a/backend/src/apis/dltConnector/model/TransactionRecipe.ts b/backend/src/apis/dltConnector/model/TransactionRecipe.ts index edd7deadb..c60d8ac25 100644 --- a/backend/src/apis/dltConnector/model/TransactionRecipe.ts +++ b/backend/src/apis/dltConnector/model/TransactionRecipe.ts @@ -1,4 +1,4 @@ -import { TransactionType } from '@dltConnector/enum/TransactionType' +import type { TransactionType } from '@dltConnector/enum/TransactionType' export interface TransactionRecipe { id: number diff --git a/backend/src/apis/dltConnector/model/TransactionResult.ts b/backend/src/apis/dltConnector/model/TransactionResult.ts index 510907429..454bbfb10 100644 --- a/backend/src/apis/dltConnector/model/TransactionResult.ts +++ b/backend/src/apis/dltConnector/model/TransactionResult.ts @@ -1,5 +1,5 @@ -import { TransactionError } from './TransactionError' -import { TransactionRecipe } from './TransactionRecipe' +import type { TransactionError } from './TransactionError' +import type { TransactionRecipe } from './TransactionRecipe' export interface TransactionResult { error?: TransactionError diff --git a/backend/src/apis/gms/model/GmsUser.ts b/backend/src/apis/gms/model/GmsUser.ts index f97726772..c68f2f24d 100644 --- a/backend/src/apis/gms/model/GmsUser.ts +++ b/backend/src/apis/gms/model/GmsUser.ts @@ -1,4 +1,4 @@ -import { User as dbUser } from '@entity/User' +import type { User as dbUser } from '@entity/User' import { PublishNameLogic } from '@/data/PublishName.logic' // import { GmsPublishLocationType } from '@/graphql/enum/GmsPublishLocationType' diff --git a/backend/src/apis/humhub/HumHubClient.ts b/backend/src/apis/humhub/HumHubClient.ts index 80eb37266..ec690b055 100644 --- a/backend/src/apis/humhub/HumHubClient.ts +++ b/backend/src/apis/humhub/HumHubClient.ts @@ -1,17 +1,17 @@ import { ProjectBranding } from '@entity/ProjectBranding' import { SignJWT } from 'jose' -import { IRequestOptions, IRestResponse, RestClient } from 'typed-rest-client' +import { type IRequestOptions, type IRestResponse, RestClient } from 'typed-rest-client' import { CONFIG } from '@/config' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' import { PostUserLoggingView } from './logging/PostUserLogging.view' -import { GetUser } from './model/GetUser' -import { PostUser } from './model/PostUser' -import { Space } from './model/Space' -import { SpacesResponse } from './model/SpacesResponse' -import { UsersResponse } from './model/UsersResponse' +import type { GetUser } from './model/GetUser' +import type { PostUser } from './model/PostUser' +import type { Space } from './model/Space' +import type { SpacesResponse } from './model/SpacesResponse' +import type { UsersResponse } from './model/UsersResponse' /** * HumHubClient as singleton class diff --git a/backend/src/apis/humhub/__mocks__/HumHubClient.ts b/backend/src/apis/humhub/__mocks__/HumHubClient.ts index 2fac28324..bb834a5f6 100644 --- a/backend/src/apis/humhub/__mocks__/HumHubClient.ts +++ b/backend/src/apis/humhub/__mocks__/HumHubClient.ts @@ -1,9 +1,9 @@ import { User } from '@entity/User' import { UserContact } from '@entity/UserContact' -import { IRestResponse } from 'typed-rest-client' +import type { IRestResponse } from 'typed-rest-client' import { GetUser } from '@/apis/humhub/model/GetUser' -import { PostUser } from '@/apis/humhub/model/PostUser' +import type { PostUser } from '@/apis/humhub/model/PostUser' import { UsersResponse } from '@/apis/humhub/model/UsersResponse' /** diff --git a/backend/src/apis/humhub/__mocks__/syncUser.ts b/backend/src/apis/humhub/__mocks__/syncUser.ts index 7e0660da4..c7284d5fc 100644 --- a/backend/src/apis/humhub/__mocks__/syncUser.ts +++ b/backend/src/apis/humhub/__mocks__/syncUser.ts @@ -1,7 +1,7 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import { isHumhubUserIdenticalToDbUser } from '@/apis/humhub/compareHumhubUserDbUser' -import { GetUser } from '@/apis/humhub/model/GetUser' +import type { GetUser } from '@/apis/humhub/model/GetUser' export enum ExecutedHumhubAction { UPDATE, diff --git a/backend/src/apis/humhub/logging/AccountLogging.view.ts b/backend/src/apis/humhub/logging/AccountLogging.view.ts index e5a2df565..84392613b 100644 --- a/backend/src/apis/humhub/logging/AccountLogging.view.ts +++ b/backend/src/apis/humhub/logging/AccountLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import { Account } from '@/apis/humhub/model/Account' +import type { Account } from '@/apis/humhub/model/Account' export class AccountLoggingView extends AbstractLoggingView { public constructor(private self: Account) { diff --git a/backend/src/apis/humhub/logging/PostUserLogging.view.ts b/backend/src/apis/humhub/logging/PostUserLogging.view.ts index 47123c08b..14449f06c 100644 --- a/backend/src/apis/humhub/logging/PostUserLogging.view.ts +++ b/backend/src/apis/humhub/logging/PostUserLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import { PostUser } from '@/apis/humhub/model/PostUser' +import type { PostUser } from '@/apis/humhub/model/PostUser' import { AccountLoggingView } from './AccountLogging.view' import { ProfileLoggingView } from './ProfileLogging.view' diff --git a/backend/src/apis/humhub/logging/ProfileLogging.view.ts b/backend/src/apis/humhub/logging/ProfileLogging.view.ts index a895522c6..1103dc47e 100644 --- a/backend/src/apis/humhub/logging/ProfileLogging.view.ts +++ b/backend/src/apis/humhub/logging/ProfileLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import { Profile } from '@/apis/humhub/model/Profile' +import type { Profile } from '@/apis/humhub/model/Profile' export class ProfileLoggingView extends AbstractLoggingView { public constructor(private self: Profile) { diff --git a/backend/src/apis/humhub/model/AbstractUser.ts b/backend/src/apis/humhub/model/AbstractUser.ts index abcf9dcda..0e4451863 100644 --- a/backend/src/apis/humhub/model/AbstractUser.ts +++ b/backend/src/apis/humhub/model/AbstractUser.ts @@ -1,4 +1,4 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import { Account } from './Account' import { Profile } from './Profile' diff --git a/backend/src/apis/humhub/model/Account.ts b/backend/src/apis/humhub/model/Account.ts index e6dc5173d..ba86e72f7 100644 --- a/backend/src/apis/humhub/model/Account.ts +++ b/backend/src/apis/humhub/model/Account.ts @@ -1,8 +1,8 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import { convertGradidoLanguageToHumhub } from '@/apis/humhub/convertLanguage' import { PublishNameLogic } from '@/data/PublishName.logic' -import { PublishNameType } from '@/graphql/enum/PublishNameType' +import type { PublishNameType } from '@/graphql/enum/PublishNameType' export class Account { public constructor(user: User) { diff --git a/backend/src/apis/humhub/model/GetUser.ts b/backend/src/apis/humhub/model/GetUser.ts index 38c78dd43..d8453da75 100644 --- a/backend/src/apis/humhub/model/GetUser.ts +++ b/backend/src/apis/humhub/model/GetUser.ts @@ -1,4 +1,4 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import { AbstractUser } from './AbstractUser' diff --git a/backend/src/apis/humhub/model/PostUser.ts b/backend/src/apis/humhub/model/PostUser.ts index b63c038cf..780d1b7e8 100644 --- a/backend/src/apis/humhub/model/PostUser.ts +++ b/backend/src/apis/humhub/model/PostUser.ts @@ -1,5 +1,5 @@ import { AbstractUser } from './AbstractUser' -import { Password } from './Password' +import type { Password } from './Password' // only add password as filed, rest the same as AbstractUser export class PostUser extends AbstractUser { diff --git a/backend/src/apis/humhub/model/Profile.ts b/backend/src/apis/humhub/model/Profile.ts index 9bef1a149..8a4a200fb 100644 --- a/backend/src/apis/humhub/model/Profile.ts +++ b/backend/src/apis/humhub/model/Profile.ts @@ -1,8 +1,8 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import { CONFIG } from '@/config' import { PublishNameLogic } from '@/data/PublishName.logic' -import { PublishNameType } from '@/graphql/enum/PublishNameType' +import type { PublishNameType } from '@/graphql/enum/PublishNameType' export class Profile { public constructor(user: User) { diff --git a/backend/src/apis/humhub/model/SpacesResponse.ts b/backend/src/apis/humhub/model/SpacesResponse.ts index 34e9df650..f9c60805a 100644 --- a/backend/src/apis/humhub/model/SpacesResponse.ts +++ b/backend/src/apis/humhub/model/SpacesResponse.ts @@ -1,4 +1,4 @@ -import { Space } from './Space' +import type { Space } from './Space' export interface SpacesResponse { total: number diff --git a/backend/src/apis/humhub/model/UsersResponse.ts b/backend/src/apis/humhub/model/UsersResponse.ts index 22379739c..c2f93b85f 100644 --- a/backend/src/apis/humhub/model/UsersResponse.ts +++ b/backend/src/apis/humhub/model/UsersResponse.ts @@ -1,4 +1,4 @@ -import { GetUser } from './GetUser' +import type { GetUser } from './GetUser' export class UsersResponse { total: number diff --git a/backend/src/apis/humhub/syncUser.ts b/backend/src/apis/humhub/syncUser.ts index db9275e64..9753bd468 100644 --- a/backend/src/apis/humhub/syncUser.ts +++ b/backend/src/apis/humhub/syncUser.ts @@ -1,10 +1,10 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import { LogError } from '@/server/LogError' import { HumHubClient } from './HumHubClient' import { isHumhubUserIdenticalToDbUser } from './compareHumhubUserDbUser' -import { GetUser } from './model/GetUser' +import type { GetUser } from './model/GetUser' import { PostUser } from './model/PostUser' export enum ExecutedHumhubAction { diff --git a/backend/src/apis/openai/OpenaiClient.ts b/backend/src/apis/openai/OpenaiClient.ts index b0e8314a6..a5e733d9a 100644 --- a/backend/src/apis/openai/OpenaiClient.ts +++ b/backend/src/apis/openai/OpenaiClient.ts @@ -1,7 +1,7 @@ import { OpenaiThreads } from '@entity/OpenaiThreads' -import { User } from '@entity/User' +import type { User } from '@entity/User' import { OpenAI } from 'openai' -import { Message } from 'openai/resources/beta/threads/messages' +import type { Message } from 'openai/resources/beta/threads/messages' import { httpsAgent } from '@/apis/ConnectionAgents' import { CONFIG } from '@/config' diff --git a/backend/src/auth/CustomJwtPayload.ts b/backend/src/auth/CustomJwtPayload.ts index e20e5b272..e82541daa 100644 --- a/backend/src/auth/CustomJwtPayload.ts +++ b/backend/src/auth/CustomJwtPayload.ts @@ -1,4 +1,4 @@ -import { JWTPayload } from 'jose' +import type { JWTPayload } from 'jose' export interface CustomJwtPayload extends JWTPayload { gradidoID: string diff --git a/backend/src/auth/JWT.ts b/backend/src/auth/JWT.ts index 870ec2871..7f5fc468d 100644 --- a/backend/src/auth/JWT.ts +++ b/backend/src/auth/JWT.ts @@ -3,7 +3,7 @@ import { SignJWT, jwtVerify } from 'jose' import { CONFIG } from '@/config/' import { LogError } from '@/server/LogError' -import { CustomJwtPayload } from './CustomJwtPayload' +import type { CustomJwtPayload } from './CustomJwtPayload' export const decode = async (token: string): Promise => { if (!token) { diff --git a/backend/src/auth/Role.ts b/backend/src/auth/Role.ts index a2f13ec20..f5a6236b7 100644 --- a/backend/src/auth/Role.ts +++ b/backend/src/auth/Role.ts @@ -1,4 +1,4 @@ -import { RIGHTS } from './RIGHTS' +import type { RIGHTS } from './RIGHTS' export class Role { id: string diff --git a/backend/src/data/Contribution.logic.ts b/backend/src/data/Contribution.logic.ts index 43b15bf3b..bf509c144 100644 --- a/backend/src/data/Contribution.logic.ts +++ b/backend/src/data/Contribution.logic.ts @@ -1,5 +1,5 @@ -import { Contribution } from '@entity/Contribution' -import { Decimal } from 'decimal.js-light' +import type { Contribution } from '@entity/Contribution' +import type { Decimal } from 'decimal.js-light' import { getUserCreation, diff --git a/backend/src/data/ContributionMessage.builder.ts b/backend/src/data/ContributionMessage.builder.ts index 32abd14ae..ae7da924c 100644 --- a/backend/src/data/ContributionMessage.builder.ts +++ b/backend/src/data/ContributionMessage.builder.ts @@ -1,6 +1,6 @@ -import { Contribution } from '@entity/Contribution' +import type { Contribution } from '@entity/Contribution' import { ContributionMessage } from '@entity/ContributionMessage' -import { User } from '@entity/User' +import type { User } from '@entity/User' import { ContributionMessageType } from '@/graphql/enum/ContributionMessageType' diff --git a/backend/src/data/PublishName.logic.ts b/backend/src/data/PublishName.logic.ts index af18fd6cb..b43eead70 100644 --- a/backend/src/data/PublishName.logic.ts +++ b/backend/src/data/PublishName.logic.ts @@ -1,4 +1,4 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import XRegExp from 'xregexp' import { PublishNameType } from '@/graphql/enum/PublishNameType' diff --git a/backend/src/data/UserLogic.ts b/backend/src/data/UserLogic.ts index fbef2e609..83209d202 100644 --- a/backend/src/data/UserLogic.ts +++ b/backend/src/data/UserLogic.ts @@ -1,7 +1,7 @@ -import { User } from '@entity/User' -import { UserRole } from '@entity/UserRole' +import type { User } from '@entity/User' +import type { UserRole } from '@entity/UserRole' -import { RoleNames } from '@enum/RoleNames' +import type { RoleNames } from '@enum/RoleNames' export class UserLogic { public constructor(private self: User) {} diff --git a/backend/src/emails/sendEmailVariants.test.ts b/backend/src/emails/sendEmailVariants.test.ts index 5028e4dd4..e52e891bc 100644 --- a/backend/src/emails/sendEmailVariants.test.ts +++ b/backend/src/emails/sendEmailVariants.test.ts @@ -1,5 +1,5 @@ -import { Connection } from '@dbTools/typeorm' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { Connection } from '@dbTools/typeorm' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { testEnvironment } from '@test/helpers' diff --git a/backend/src/emails/sendEmailVariants.ts b/backend/src/emails/sendEmailVariants.ts index 3373f17ad..4792f8c7a 100644 --- a/backend/src/emails/sendEmailVariants.ts +++ b/backend/src/emails/sendEmailVariants.ts @@ -1,4 +1,4 @@ -import { Decimal } from 'decimal.js-light' +import type { Decimal } from 'decimal.js-light' import { CONFIG } from '@/config' import { decimalSeparatorByLanguage } from '@/util/utilities' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CONFIRM.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CONFIRM.ts index 36cabba63..d61ee6407 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CONFIRM.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CONFIRM.ts @@ -1,7 +1,7 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CREATE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CREATE.ts index 48e3151f5..04f4d08b9 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CREATE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CREATE.ts @@ -1,7 +1,7 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DELETE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DELETE.ts index d2a7d4df0..496645a3d 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DELETE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DELETE.ts @@ -1,7 +1,7 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DENY.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DENY.ts index 6c1916dfe..1d24cbf85 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DENY.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DENY.ts @@ -1,7 +1,7 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_CREATE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_CREATE.ts index 1655bf3d3..9ae7cfd1f 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_CREATE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_CREATE.ts @@ -1,7 +1,7 @@ -import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { ContributionLink as DbContributionLink } from '@entity/ContributionLink' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_DELETE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_DELETE.ts index c01be5f25..9413b217a 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_DELETE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_DELETE.ts @@ -1,6 +1,6 @@ -import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { ContributionLink as DbContributionLink } from '@entity/ContributionLink' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE.ts index 8a183b0d5..64f32deb3 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE.ts @@ -1,7 +1,7 @@ -import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { ContributionLink as DbContributionLink } from '@entity/ContributionLink' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_MESSAGE_CREATE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_MESSAGE_CREATE.ts index d4d5b9003..1fc2a36f1 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_MESSAGE_CREATE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_MESSAGE_CREATE.ts @@ -1,7 +1,7 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_UPDATE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_UPDATE.ts index a19bdf0ae..29fbc5cee 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_UPDATE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_UPDATE.ts @@ -1,7 +1,7 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_USER_DELETE.ts b/backend/src/event/EVENT_ADMIN_USER_DELETE.ts index a75e2b176..c52172a40 100644 --- a/backend/src/event/EVENT_ADMIN_USER_DELETE.ts +++ b/backend/src/event/EVENT_ADMIN_USER_DELETE.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_USER_ROLE_SET.ts b/backend/src/event/EVENT_ADMIN_USER_ROLE_SET.ts index 9f09e2e3d..8d8dc4b81 100644 --- a/backend/src/event/EVENT_ADMIN_USER_ROLE_SET.ts +++ b/backend/src/event/EVENT_ADMIN_USER_ROLE_SET.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_USER_UNDELETE.ts b/backend/src/event/EVENT_ADMIN_USER_UNDELETE.ts index 51b5764d2..01033b113 100644 --- a/backend/src/event/EVENT_ADMIN_USER_UNDELETE.ts +++ b/backend/src/event/EVENT_ADMIN_USER_UNDELETE.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_CONTRIBUTION_CREATE.ts b/backend/src/event/EVENT_CONTRIBUTION_CREATE.ts index 108ef7d04..45669334a 100644 --- a/backend/src/event/EVENT_CONTRIBUTION_CREATE.ts +++ b/backend/src/event/EVENT_CONTRIBUTION_CREATE.ts @@ -1,7 +1,7 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_CONTRIBUTION_DELETE.ts b/backend/src/event/EVENT_CONTRIBUTION_DELETE.ts index 2b4064df7..00dca2ce0 100644 --- a/backend/src/event/EVENT_CONTRIBUTION_DELETE.ts +++ b/backend/src/event/EVENT_CONTRIBUTION_DELETE.ts @@ -1,7 +1,7 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_CONTRIBUTION_LINK_REDEEM.ts b/backend/src/event/EVENT_CONTRIBUTION_LINK_REDEEM.ts index 5ee1da0e3..b01cea653 100644 --- a/backend/src/event/EVENT_CONTRIBUTION_LINK_REDEEM.ts +++ b/backend/src/event/EVENT_CONTRIBUTION_LINK_REDEEM.ts @@ -1,9 +1,9 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' -import { Event as DbEvent } from '@entity/Event' -import { Transaction as DbTransaction } from '@entity/Transaction' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { ContributionLink as DbContributionLink } from '@entity/ContributionLink' +import type { Event as DbEvent } from '@entity/Event' +import type { Transaction as DbTransaction } from '@entity/Transaction' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_CONTRIBUTION_MESSAGE_CREATE.ts b/backend/src/event/EVENT_CONTRIBUTION_MESSAGE_CREATE.ts index 438b7f22c..cb526370c 100644 --- a/backend/src/event/EVENT_CONTRIBUTION_MESSAGE_CREATE.ts +++ b/backend/src/event/EVENT_CONTRIBUTION_MESSAGE_CREATE.ts @@ -1,7 +1,7 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_CONTRIBUTION_UPDATE.ts b/backend/src/event/EVENT_CONTRIBUTION_UPDATE.ts index ff416c428..c01d98643 100644 --- a/backend/src/event/EVENT_CONTRIBUTION_UPDATE.ts +++ b/backend/src/event/EVENT_CONTRIBUTION_UPDATE.ts @@ -1,7 +1,7 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION.ts b/backend/src/event/EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION.ts index fc73c6e9d..054c934a0 100644 --- a/backend/src/event/EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION.ts +++ b/backend/src/event/EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_EMAIL_ADMIN_CONFIRMATION.ts b/backend/src/event/EVENT_EMAIL_ADMIN_CONFIRMATION.ts index 1d229b563..d8bc7394b 100644 --- a/backend/src/event/EVENT_EMAIL_ADMIN_CONFIRMATION.ts +++ b/backend/src/event/EVENT_EMAIL_ADMIN_CONFIRMATION.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_EMAIL_CONFIRMATION.ts b/backend/src/event/EVENT_EMAIL_CONFIRMATION.ts index 56a3cafc8..26b1d37e9 100644 --- a/backend/src/event/EVENT_EMAIL_CONFIRMATION.ts +++ b/backend/src/event/EVENT_EMAIL_CONFIRMATION.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_EMAIL_FORGOT_PASSWORD.ts b/backend/src/event/EVENT_EMAIL_FORGOT_PASSWORD.ts index 1b3cd11af..c02bdc7af 100644 --- a/backend/src/event/EVENT_EMAIL_FORGOT_PASSWORD.ts +++ b/backend/src/event/EVENT_EMAIL_FORGOT_PASSWORD.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_NEWSLETTER_SUBSCRIBE.ts b/backend/src/event/EVENT_NEWSLETTER_SUBSCRIBE.ts index 717bb8296..90d0ea6ea 100644 --- a/backend/src/event/EVENT_NEWSLETTER_SUBSCRIBE.ts +++ b/backend/src/event/EVENT_NEWSLETTER_SUBSCRIBE.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_NEWSLETTER_UNSUBSCRIBE.ts b/backend/src/event/EVENT_NEWSLETTER_UNSUBSCRIBE.ts index f8adc69d1..457cd34ab 100644 --- a/backend/src/event/EVENT_NEWSLETTER_UNSUBSCRIBE.ts +++ b/backend/src/event/EVENT_NEWSLETTER_UNSUBSCRIBE.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_TRANSACTION_LINK_CREATE.ts b/backend/src/event/EVENT_TRANSACTION_LINK_CREATE.ts index a73ce4f6c..b58adbfe5 100644 --- a/backend/src/event/EVENT_TRANSACTION_LINK_CREATE.ts +++ b/backend/src/event/EVENT_TRANSACTION_LINK_CREATE.ts @@ -1,7 +1,7 @@ -import { Event as DbEvent } from '@entity/Event' -import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Event as DbEvent } from '@entity/Event' +import type { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_TRANSACTION_LINK_DELETE.ts b/backend/src/event/EVENT_TRANSACTION_LINK_DELETE.ts index d8f15f206..505b6aed3 100644 --- a/backend/src/event/EVENT_TRANSACTION_LINK_DELETE.ts +++ b/backend/src/event/EVENT_TRANSACTION_LINK_DELETE.ts @@ -1,6 +1,6 @@ -import { Event as DbEvent } from '@entity/Event' -import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_TRANSACTION_LINK_REDEEM.ts b/backend/src/event/EVENT_TRANSACTION_LINK_REDEEM.ts index e0ae3bb93..c7da259ad 100644 --- a/backend/src/event/EVENT_TRANSACTION_LINK_REDEEM.ts +++ b/backend/src/event/EVENT_TRANSACTION_LINK_REDEEM.ts @@ -1,7 +1,7 @@ -import { Event as DbEvent } from '@entity/Event' -import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Event as DbEvent } from '@entity/Event' +import type { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_TRANSACTION_RECEIVE.ts b/backend/src/event/EVENT_TRANSACTION_RECEIVE.ts index a7b945a97..9d2c977ed 100644 --- a/backend/src/event/EVENT_TRANSACTION_RECEIVE.ts +++ b/backend/src/event/EVENT_TRANSACTION_RECEIVE.ts @@ -1,7 +1,7 @@ -import { Event as DbEvent } from '@entity/Event' -import { Transaction as DbTransaction } from '@entity/Transaction' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Event as DbEvent } from '@entity/Event' +import type { Transaction as DbTransaction } from '@entity/Transaction' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_TRANSACTION_SEND.ts b/backend/src/event/EVENT_TRANSACTION_SEND.ts index b21970ad3..204c6dc5f 100644 --- a/backend/src/event/EVENT_TRANSACTION_SEND.ts +++ b/backend/src/event/EVENT_TRANSACTION_SEND.ts @@ -1,7 +1,7 @@ -import { Event as DbEvent } from '@entity/Event' -import { Transaction as DbTransaction } from '@entity/Transaction' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Event as DbEvent } from '@entity/Event' +import type { Transaction as DbTransaction } from '@entity/Transaction' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_USER_ACTIVATE_ACCOUNT.ts b/backend/src/event/EVENT_USER_ACTIVATE_ACCOUNT.ts index 15d470dd7..d48f89857 100644 --- a/backend/src/event/EVENT_USER_ACTIVATE_ACCOUNT.ts +++ b/backend/src/event/EVENT_USER_ACTIVATE_ACCOUNT.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_USER_INFO_UPDATE.ts b/backend/src/event/EVENT_USER_INFO_UPDATE.ts index 70b37eddf..befc53130 100644 --- a/backend/src/event/EVENT_USER_INFO_UPDATE.ts +++ b/backend/src/event/EVENT_USER_INFO_UPDATE.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_USER_LOGIN.ts b/backend/src/event/EVENT_USER_LOGIN.ts index 82458a664..b95efd582 100644 --- a/backend/src/event/EVENT_USER_LOGIN.ts +++ b/backend/src/event/EVENT_USER_LOGIN.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_USER_LOGOUT.ts b/backend/src/event/EVENT_USER_LOGOUT.ts index f5e76f749..2093de892 100644 --- a/backend/src/event/EVENT_USER_LOGOUT.ts +++ b/backend/src/event/EVENT_USER_LOGOUT.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_USER_REGISTER.ts b/backend/src/event/EVENT_USER_REGISTER.ts index e144b9d6d..ad712583f 100644 --- a/backend/src/event/EVENT_USER_REGISTER.ts +++ b/backend/src/event/EVENT_USER_REGISTER.ts @@ -1,5 +1,5 @@ -import { Event as DbEvent } from '@entity/Event' -import { User as DbUser } from '@entity/User' +import type { Event as DbEvent } from '@entity/Event' +import type { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/Event.ts b/backend/src/event/Event.ts index 307d1a0c4..b7c80a593 100644 --- a/backend/src/event/Event.ts +++ b/backend/src/event/Event.ts @@ -1,13 +1,13 @@ -import { Contribution as DbContribution } from '@entity/Contribution' -import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' -import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' +import type { Contribution as DbContribution } from '@entity/Contribution' +import type { ContributionLink as DbContributionLink } from '@entity/ContributionLink' +import type { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' import { Event as DbEvent } from '@entity/Event' -import { Transaction as DbTransaction } from '@entity/Transaction' -import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' -import { User as DbUser } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Transaction as DbTransaction } from '@entity/Transaction' +import type { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' +import type { User as DbUser } from '@entity/User' +import type { Decimal } from 'decimal.js-light' -import { EventType } from './EventType' +import type { EventType } from './EventType' export const Event = ( type: EventType, diff --git a/backend/src/federation/client/1_0/AuthenticationClient.ts b/backend/src/federation/client/1_0/AuthenticationClient.ts index c1d921823..bfe75f466 100644 --- a/backend/src/federation/client/1_0/AuthenticationClient.ts +++ b/backend/src/federation/client/1_0/AuthenticationClient.ts @@ -1,10 +1,10 @@ -import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { GraphQLClient } from 'graphql-request' import { backendLogger as logger } from '@/server/logger' import { ensureUrlEndsWithSlash } from '@/util/utilities' -import { OpenConnectionArgs } from './model/OpenConnectionArgs' +import type { OpenConnectionArgs } from './model/OpenConnectionArgs' import { openConnection } from './query/openConnection' export class AuthenticationClient { diff --git a/backend/src/federation/client/1_0/FederationClient.ts b/backend/src/federation/client/1_0/FederationClient.ts index 0c2b4101b..848ddf867 100644 --- a/backend/src/federation/client/1_0/FederationClient.ts +++ b/backend/src/federation/client/1_0/FederationClient.ts @@ -1,4 +1,4 @@ -import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { GraphQLClient } from 'graphql-request' import { getPublicCommunityInfo } from '@/federation/client/1_0/query/getPublicCommunityInfo' @@ -7,8 +7,8 @@ import { backendLogger as logger } from '@/server/logger' import { ensureUrlEndsWithSlash } from '@/util/utilities' import { PublicCommunityInfoLoggingView } from './logging/PublicCommunityInfoLogging.view' -import { GetPublicKeyResult } from './model/GetPublicKeyResult' -import { PublicCommunityInfo } from './model/PublicCommunityInfo' +import type { GetPublicKeyResult } from './model/GetPublicKeyResult' +import type { PublicCommunityInfo } from './model/PublicCommunityInfo' export class FederationClient { dbCom: DbFederatedCommunity diff --git a/backend/src/federation/client/1_0/SendCoinsClient.ts b/backend/src/federation/client/1_0/SendCoinsClient.ts index 3d72d961b..069cf8794 100644 --- a/backend/src/federation/client/1_0/SendCoinsClient.ts +++ b/backend/src/federation/client/1_0/SendCoinsClient.ts @@ -1,4 +1,4 @@ -import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { GraphQLClient } from 'graphql-request' import { LogError } from '@/server/LogError' @@ -7,7 +7,7 @@ import { ensureUrlEndsWithSlash } from '@/util/utilities' import { SendCoinsArgsLoggingView } from './logging/SendCoinsArgsLogging.view' import { SendCoinsResultLoggingView } from './logging/SendCoinsResultLogging.view' -import { SendCoinsArgs } from './model/SendCoinsArgs' +import type { SendCoinsArgs } from './model/SendCoinsArgs' import { SendCoinsResult } from './model/SendCoinsResult' import { revertSendCoins as revertSendCoinsQuery } from './query/revertSendCoins' import { revertSettledSendCoins as revertSettledSendCoinsQuery } from './query/revertSettledSendCoins' diff --git a/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts b/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts index af3f80758..0bee38b56 100644 --- a/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts +++ b/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import { PublicCommunityInfo } from '@/federation/client/1_0/model/PublicCommunityInfo' +import type { PublicCommunityInfo } from '@/federation/client/1_0/model/PublicCommunityInfo' export class PublicCommunityInfoLoggingView extends AbstractLoggingView { public constructor(private self: PublicCommunityInfo) { diff --git a/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts b/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts index 34085da6a..23f67fdc5 100644 --- a/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts +++ b/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' +import type { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' export class SendCoinsArgsLoggingView extends AbstractLoggingView { public constructor(private self: SendCoinsArgs) { diff --git a/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts b/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts index a16336fa5..06d95faff 100644 --- a/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts +++ b/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' +import type { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' export class SendCoinsResultLoggingView extends AbstractLoggingView { public constructor(private self: SendCoinsResult) { diff --git a/backend/src/federation/client/AuthenticationClientFactory.ts b/backend/src/federation/client/AuthenticationClientFactory.ts index 27cd6a5c9..a707c3187 100644 --- a/backend/src/federation/client/AuthenticationClientFactory.ts +++ b/backend/src/federation/client/AuthenticationClientFactory.ts @@ -1,4 +1,4 @@ -import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { AuthenticationClient as V1_0_AuthenticationClient } from '@/federation/client/1_0/AuthenticationClient' diff --git a/backend/src/federation/client/FederationClientFactory.ts b/backend/src/federation/client/FederationClientFactory.ts index 90808067b..e79393fac 100644 --- a/backend/src/federation/client/FederationClientFactory.ts +++ b/backend/src/federation/client/FederationClientFactory.ts @@ -1,4 +1,4 @@ -import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { FederationClient as V1_0_FederationClient } from '@/federation/client/1_0/FederationClient' diff --git a/backend/src/federation/client/SendCoinsClientFactory.ts b/backend/src/federation/client/SendCoinsClientFactory.ts index 5f432528f..9962baeb6 100644 --- a/backend/src/federation/client/SendCoinsClientFactory.ts +++ b/backend/src/federation/client/SendCoinsClientFactory.ts @@ -1,4 +1,4 @@ -import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { SendCoinsClient as V1_0_SendCoinsClient } from '@/federation/client/1_0/SendCoinsClient' diff --git a/backend/src/federation/validateCommunities.test.ts b/backend/src/federation/validateCommunities.test.ts index 6b4a54af4..0303bf871 100644 --- a/backend/src/federation/validateCommunities.test.ts +++ b/backend/src/federation/validateCommunities.test.ts @@ -1,8 +1,8 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLClient } from 'graphql-request' -import { Response } from 'graphql-request/dist/types' +import type { Response } from 'graphql-request/dist/types' import { cleanDB, testEnvironment } from '@test/helpers' import { logger } from '@test/testSetup' diff --git a/backend/src/federation/validateCommunities.ts b/backend/src/federation/validateCommunities.ts index 90f697500..1a7792d1b 100644 --- a/backend/src/federation/validateCommunities.ts +++ b/backend/src/federation/validateCommunities.ts @@ -4,7 +4,7 @@ import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCom import { FederatedCommunityLoggingView } from '@logging/FederatedCommunityLogging.view' import { FederationClient as V1_0_FederationClient } from '@/federation/client/1_0/FederationClient' -import { PublicCommunityInfo } from '@/federation/client/1_0/model/PublicCommunityInfo' +import type { PublicCommunityInfo } from '@/federation/client/1_0/model/PublicCommunityInfo' import { FederationClientFactory } from '@/federation/client/FederationClientFactory' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' diff --git a/backend/src/graphql/directive/isAuthorized.ts b/backend/src/graphql/directive/isAuthorized.ts index 8ed4f7443..27466774b 100644 --- a/backend/src/graphql/directive/isAuthorized.ts +++ b/backend/src/graphql/directive/isAuthorized.ts @@ -1,11 +1,11 @@ import { User } from '@entity/User' -import { AuthChecker } from 'type-graphql' +import type { AuthChecker } from 'type-graphql' import { RoleNames } from '@enum/RoleNames' import { INALIENABLE_RIGHTS } from '@/auth/INALIENABLE_RIGHTS' import { decode, encode } from '@/auth/JWT' -import { RIGHTS } from '@/auth/RIGHTS' +import type { RIGHTS } from '@/auth/RIGHTS' import { ROLE_ADMIN, ROLE_DLT_CONNECTOR, @@ -15,7 +15,7 @@ import { ROLE_USER, } from '@/auth/ROLES' import { LogError } from '@/server/LogError' -import { Context } from '@/server/context' +import type { Context } from '@/server/context' export const isAuthorized: AuthChecker = async ({ context }, rights) => { context.role = ROLE_UNAUTHORIZED // unauthorized user diff --git a/backend/src/graphql/model/AdminCommunityView.ts b/backend/src/graphql/model/AdminCommunityView.ts index 96f6fe213..6d8cf4d5d 100644 --- a/backend/src/graphql/model/AdminCommunityView.ts +++ b/backend/src/graphql/model/AdminCommunityView.ts @@ -1,6 +1,6 @@ -import { Point } from '@dbTools/typeorm' -import { Community as DbCommunity } from '@entity/Community' -import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import type { Point } from '@dbTools/typeorm' +import type { Community as DbCommunity } from '@entity/Community' +import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { Field, ObjectType } from 'type-graphql' import { Point2Location } from '@/graphql/resolver/util/Location2Point' diff --git a/backend/src/graphql/model/AdminUser.ts b/backend/src/graphql/model/AdminUser.ts index d849762bd..de55b8d3a 100644 --- a/backend/src/graphql/model/AdminUser.ts +++ b/backend/src/graphql/model/AdminUser.ts @@ -1,4 +1,4 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() diff --git a/backend/src/graphql/model/ChatGptMessage.ts b/backend/src/graphql/model/ChatGptMessage.ts index 3a5f08a59..fc1219856 100644 --- a/backend/src/graphql/model/ChatGptMessage.ts +++ b/backend/src/graphql/model/ChatGptMessage.ts @@ -1,6 +1,6 @@ import { Field, ObjectType } from 'type-graphql' -import { Message } from '@/apis/openai/model/Message' +import type { Message } from '@/apis/openai/model/Message' @ObjectType() export class ChatGptMessage { diff --git a/backend/src/graphql/model/Community.ts b/backend/src/graphql/model/Community.ts index c3749d27a..8eab24915 100644 --- a/backend/src/graphql/model/Community.ts +++ b/backend/src/graphql/model/Community.ts @@ -1,4 +1,4 @@ -import { Community as DbCommunity } from '@entity/Community' +import type { Community as DbCommunity } from '@entity/Community' import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() diff --git a/backend/src/graphql/model/Contribution.ts b/backend/src/graphql/model/Contribution.ts index 301348ccc..825cfe988 100644 --- a/backend/src/graphql/model/Contribution.ts +++ b/backend/src/graphql/model/Contribution.ts @@ -1,5 +1,5 @@ -import { Contribution as dbContribution } from '@entity/Contribution' -import { User as DbUser } from '@entity/User' +import type { Contribution as dbContribution } from '@entity/Contribution' +import type { User as DbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/ContributionLink.ts b/backend/src/graphql/model/ContributionLink.ts index 786646c4a..b9ddba116 100644 --- a/backend/src/graphql/model/ContributionLink.ts +++ b/backend/src/graphql/model/ContributionLink.ts @@ -1,4 +1,4 @@ -import { ContributionLink as dbContributionLink } from '@entity/ContributionLink' +import type { ContributionLink as dbContributionLink } from '@entity/ContributionLink' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/ContributionMessage.ts b/backend/src/graphql/model/ContributionMessage.ts index 6f70d5024..c25c1b4cf 100644 --- a/backend/src/graphql/model/ContributionMessage.ts +++ b/backend/src/graphql/model/ContributionMessage.ts @@ -1,5 +1,5 @@ -import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' -import { User } from '@entity/User' +import type { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' +import type { User } from '@entity/User' import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() diff --git a/backend/src/graphql/model/FederatedCommunity.ts b/backend/src/graphql/model/FederatedCommunity.ts index aefbfa4b8..4cf6caae6 100644 --- a/backend/src/graphql/model/FederatedCommunity.ts +++ b/backend/src/graphql/model/FederatedCommunity.ts @@ -1,4 +1,4 @@ -import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { Field, Int, ObjectType } from 'type-graphql' import { ensureUrlEndsWithSlash } from '@/util/utilities' diff --git a/backend/src/graphql/model/ProjectBranding.ts b/backend/src/graphql/model/ProjectBranding.ts index 8f5ad6ca5..392fec205 100644 --- a/backend/src/graphql/model/ProjectBranding.ts +++ b/backend/src/graphql/model/ProjectBranding.ts @@ -1,4 +1,4 @@ -import { ProjectBranding as dbProjectBranding } from '@entity/ProjectBranding' +import type { ProjectBranding as dbProjectBranding } from '@entity/ProjectBranding' import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() diff --git a/backend/src/graphql/model/Space.ts b/backend/src/graphql/model/Space.ts index eb14a34fb..146553a0d 100644 --- a/backend/src/graphql/model/Space.ts +++ b/backend/src/graphql/model/Space.ts @@ -1,6 +1,6 @@ import { Field, Int, ObjectType } from 'type-graphql' -import { Space as HumhubSpace } from '@/apis/humhub/model/Space' +import type { Space as HumhubSpace } from '@/apis/humhub/model/Space' @ObjectType() export class Space { diff --git a/backend/src/graphql/model/SpaceList.ts b/backend/src/graphql/model/SpaceList.ts index 2c611e211..ab540c53a 100644 --- a/backend/src/graphql/model/SpaceList.ts +++ b/backend/src/graphql/model/SpaceList.ts @@ -1,6 +1,6 @@ import { Field, ObjectType } from 'type-graphql' -import { SpacesResponse } from '@/apis/humhub/model/SpacesResponse' +import type { SpacesResponse } from '@/apis/humhub/model/SpacesResponse' import { Pagination } from './Pagination' import { Space } from './Space' diff --git a/backend/src/graphql/model/Transaction.ts b/backend/src/graphql/model/Transaction.ts index a1ad73677..b2c91a00c 100644 --- a/backend/src/graphql/model/Transaction.ts +++ b/backend/src/graphql/model/Transaction.ts @@ -1,4 +1,4 @@ -import { Transaction as dbTransaction } from '@entity/Transaction' +import type { Transaction as dbTransaction } from '@entity/Transaction' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/TransactionLink.ts b/backend/src/graphql/model/TransactionLink.ts index 4b6b0e364..6c52e236c 100644 --- a/backend/src/graphql/model/TransactionLink.ts +++ b/backend/src/graphql/model/TransactionLink.ts @@ -1,4 +1,4 @@ -import { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' +import type { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/UnconfirmedContribution.ts b/backend/src/graphql/model/UnconfirmedContribution.ts index ad2d914c1..ac8a0667b 100644 --- a/backend/src/graphql/model/UnconfirmedContribution.ts +++ b/backend/src/graphql/model/UnconfirmedContribution.ts @@ -1,5 +1,5 @@ -import { Contribution } from '@entity/Contribution' -import { User } from '@entity/User' +import type { Contribution } from '@entity/Contribution' +import type { User } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/User.ts b/backend/src/graphql/model/User.ts index 0e19ab33f..7aa906515 100644 --- a/backend/src/graphql/model/User.ts +++ b/backend/src/graphql/model/User.ts @@ -1,5 +1,5 @@ -import { Point } from '@dbTools/typeorm' -import { User as dbUser } from '@entity/User' +import type { Point } from '@dbTools/typeorm' +import type { User as dbUser } from '@entity/User' import { Field, Int, ObjectType } from 'type-graphql' import { GmsPublishLocationType } from '@enum/GmsPublishLocationType' diff --git a/backend/src/graphql/model/UserAdmin.ts b/backend/src/graphql/model/UserAdmin.ts index d0b5cc932..50fde7bb8 100644 --- a/backend/src/graphql/model/UserAdmin.ts +++ b/backend/src/graphql/model/UserAdmin.ts @@ -1,4 +1,4 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/UserContact.ts b/backend/src/graphql/model/UserContact.ts index a2745fb9a..c6797a455 100644 --- a/backend/src/graphql/model/UserContact.ts +++ b/backend/src/graphql/model/UserContact.ts @@ -1,4 +1,4 @@ -import { UserContact as DbUserContact } from '@entity/UserContact' +import type { UserContact as DbUserContact } from '@entity/UserContact' import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() diff --git a/backend/src/graphql/resolver/AiChatResolver.ts b/backend/src/graphql/resolver/AiChatResolver.ts index 3fd01826f..f22578ebe 100644 --- a/backend/src/graphql/resolver/AiChatResolver.ts +++ b/backend/src/graphql/resolver/AiChatResolver.ts @@ -1,12 +1,12 @@ import { Arg, Authorized, Ctx, Mutation, Query, Resolver } from 'type-graphql' -import { OpenaiMessage } from '@input/OpenaiMessage' +import type { OpenaiMessage } from '@input/OpenaiMessage' import { ChatGptMessage } from '@model/ChatGptMessage' import { OpenaiClient } from '@/apis/openai/OpenaiClient' import { Message } from '@/apis/openai/model/Message' import { RIGHTS } from '@/auth/RIGHTS' -import { Context } from '@/server/context' +import type { Context } from '@/server/context' @Resolver() export class AiChatResolver { diff --git a/backend/src/graphql/resolver/BalanceResolver.ts b/backend/src/graphql/resolver/BalanceResolver.ts index fc55ed70d..60ee3e73d 100644 --- a/backend/src/graphql/resolver/BalanceResolver.ts +++ b/backend/src/graphql/resolver/BalanceResolver.ts @@ -9,7 +9,7 @@ import { Balance } from '@model/Balance' import { RIGHTS } from '@/auth/RIGHTS' import { BalanceLoggingView } from '@/logging/BalanceLogging.view' import { DecayLoggingView } from '@/logging/DecayLogging.view' -import { Context, getUser } from '@/server/context' +import { type Context, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { calculateDecay } from '@/util/decay' diff --git a/backend/src/graphql/resolver/CommunityResolver.test.ts b/backend/src/graphql/resolver/CommunityResolver.test.ts index c8edbe0d9..3def485f6 100644 --- a/backend/src/graphql/resolver/CommunityResolver.test.ts +++ b/backend/src/graphql/resolver/CommunityResolver.test.ts @@ -1,7 +1,7 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLError } from 'graphql/error/GraphQLError' import { v4 as uuidv4 } from 'uuid' diff --git a/backend/src/graphql/resolver/CommunityResolver.ts b/backend/src/graphql/resolver/CommunityResolver.ts index 5c9f52111..5bc140873 100644 --- a/backend/src/graphql/resolver/CommunityResolver.ts +++ b/backend/src/graphql/resolver/CommunityResolver.ts @@ -3,8 +3,8 @@ import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { Arg, Args, Authorized, Mutation, Query, Resolver } from 'type-graphql' -import { Paginated } from '@arg/Paginated' -import { EditCommunityInput } from '@input/EditCommunityInput' +import type { Paginated } from '@arg/Paginated' +import type { EditCommunityInput } from '@input/EditCommunityInput' import { AdminCommunityView } from '@model/AdminCommunityView' import { Community } from '@model/Community' import { FederatedCommunity } from '@model/FederatedCommunity' diff --git a/backend/src/graphql/resolver/ContributionLinkResolver.test.ts b/backend/src/graphql/resolver/ContributionLinkResolver.test.ts index 36dd55ffd..11d320877 100644 --- a/backend/src/graphql/resolver/ContributionLinkResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionLinkResolver.test.ts @@ -1,7 +1,7 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { Event as DbEvent } from '@entity/Event' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { GraphQLError } from 'graphql' diff --git a/backend/src/graphql/resolver/ContributionLinkResolver.ts b/backend/src/graphql/resolver/ContributionLinkResolver.ts index 6165c30cd..c8d707e43 100644 --- a/backend/src/graphql/resolver/ContributionLinkResolver.ts +++ b/backend/src/graphql/resolver/ContributionLinkResolver.ts @@ -2,8 +2,8 @@ import { IsNull, MoreThan } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { Arg, Args, Authorized, Ctx, Int, Mutation, Query, Resolver } from 'type-graphql' -import { ContributionLinkArgs } from '@arg/ContributionLinkArgs' -import { Paginated } from '@arg/Paginated' +import type { ContributionLinkArgs } from '@arg/ContributionLinkArgs' +import type { Paginated } from '@arg/Paginated' import { Order } from '@enum/Order' import { ContributionLink } from '@model/ContributionLink' import { ContributionLinkList } from '@model/ContributionLinkList' @@ -15,7 +15,7 @@ import { EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE, } from '@/event/Events' import { LogError } from '@/server/LogError' -import { Context, getUser } from '@/server/context' +import { type Context, getUser } from '@/server/context' import { transactionLinkCode as contributionLinkCode } from './TransactionLinkResolver' import { isStartEndDateValid } from './util/creations' diff --git a/backend/src/graphql/resolver/ContributionMessageResolver.test.ts b/backend/src/graphql/resolver/ContributionMessageResolver.test.ts index 5bcc8143a..de1e7784f 100644 --- a/backend/src/graphql/resolver/ContributionMessageResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionMessageResolver.test.ts @@ -1,7 +1,7 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { Contribution as DbContribution } from '@entity/Contribution' import { Event as DbEvent } from '@entity/Event' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLError } from 'graphql' import { ContributionStatus } from '@enum/ContributionStatus' diff --git a/backend/src/graphql/resolver/ContributionMessageResolver.ts b/backend/src/graphql/resolver/ContributionMessageResolver.ts index 88cd73bc7..3bf0f11d6 100644 --- a/backend/src/graphql/resolver/ContributionMessageResolver.ts +++ b/backend/src/graphql/resolver/ContributionMessageResolver.ts @@ -1,11 +1,11 @@ -import { EntityManager, FindOptionsRelations, getConnection } from '@dbTools/typeorm' +import { type EntityManager, type FindOptionsRelations, getConnection } from '@dbTools/typeorm' import { Contribution as DbContribution } from '@entity/Contribution' import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' -import { User as DbUser } from '@entity/User' +import type { User as DbUser } from '@entity/User' import { Arg, Args, Authorized, Ctx, Int, Mutation, Query, Resolver } from 'type-graphql' -import { ContributionMessageArgs } from '@arg/ContributionMessageArgs' -import { Paginated } from '@arg/Paginated' +import type { ContributionMessageArgs } from '@arg/ContributionMessageArgs' +import type { Paginated } from '@arg/Paginated' import { ContributionMessageType } from '@enum/ContributionMessageType' import { Order } from '@enum/Order' import { ContributionMessage, ContributionMessageListResult } from '@model/ContributionMessage' @@ -18,7 +18,7 @@ import { } from '@/event/Events' import { UpdateUnconfirmedContributionContext } from '@/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context' import { LogError } from '@/server/LogError' -import { Context, getUser } from '@/server/context' +import { type Context, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { findContributionMessages } from './util/findContributionMessages' diff --git a/backend/src/graphql/resolver/ContributionResolver.test.ts b/backend/src/graphql/resolver/ContributionResolver.test.ts index ab409b4cc..7d00223be 100644 --- a/backend/src/graphql/resolver/ContributionResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionResolver.test.ts @@ -1,10 +1,10 @@ -import { Connection, Equal } from '@dbTools/typeorm' +import { type Connection, Equal } from '@dbTools/typeorm' import { Contribution } from '@entity/Contribution' import { Event as DbEvent } from '@entity/Event' import { Transaction as DbTransaction } from '@entity/Transaction' -import { User } from '@entity/User' +import type { User } from '@entity/User' import { UserInputError } from 'apollo-server-express' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { GraphQLError } from 'graphql' diff --git a/backend/src/graphql/resolver/ContributionResolver.ts b/backend/src/graphql/resolver/ContributionResolver.ts index a137b0d79..9d5f148b9 100644 --- a/backend/src/graphql/resolver/ContributionResolver.ts +++ b/backend/src/graphql/resolver/ContributionResolver.ts @@ -1,10 +1,10 @@ -import { EntityManager, IsNull, getConnection } from '@dbTools/typeorm' +import { type EntityManager, IsNull, getConnection } from '@dbTools/typeorm' import { Contribution as DbContribution } from '@entity/Contribution' import { Transaction as DbTransaction } from '@entity/Transaction' import { User as DbUser } from '@entity/User' import { UserContact } from '@entity/UserContact' import { Decimal } from 'decimal.js-light' -import { GraphQLResolveInfo } from 'graphql' +import type { GraphQLResolveInfo } from 'graphql' import { Arg, Args, @@ -19,9 +19,9 @@ import { Root, } from 'type-graphql' -import { AdminCreateContributionArgs } from '@arg/AdminCreateContributionArgs' -import { AdminUpdateContributionArgs } from '@arg/AdminUpdateContributionArgs' -import { ContributionArgs } from '@arg/ContributionArgs' +import type { AdminCreateContributionArgs } from '@arg/AdminCreateContributionArgs' +import type { AdminUpdateContributionArgs } from '@arg/AdminUpdateContributionArgs' +import type { ContributionArgs } from '@arg/ContributionArgs' import { Paginated } from '@arg/Paginated' import { SearchContributionsFilterArgs } from '@arg/SearchContributionsFilterArgs' import { ContributionMessageType } from '@enum/ContributionMessageType' @@ -30,7 +30,7 @@ import { ContributionType } from '@enum/ContributionType' import { TransactionTypeId } from '@enum/TransactionTypeId' import { AdminUpdateContribution } from '@model/AdminUpdateContribution' import { Contribution, ContributionListResult } from '@model/Contribution' -import { Decay } from '@model/Decay' +import type { Decay } from '@model/Decay' import { OpenCreation } from '@model/OpenCreation' import { UnconfirmedContribution } from '@model/UnconfirmedContribution' import { User } from '@model/User' @@ -54,7 +54,7 @@ import { } from '@/event/Events' import { UpdateUnconfirmedContributionContext } from '@/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context' import { LogError } from '@/server/LogError' -import { Context, getClientTimezoneOffset, getUser } from '@/server/context' +import { type Context, getClientTimezoneOffset, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { TRANSACTIONS_LOCK } from '@/util/TRANSACTIONS_LOCK' import { calculateDecay } from '@/util/decay' diff --git a/backend/src/graphql/resolver/EmailOptinCodes.test.ts b/backend/src/graphql/resolver/EmailOptinCodes.test.ts index 99e1a3ea7..efebc586b 100644 --- a/backend/src/graphql/resolver/EmailOptinCodes.test.ts +++ b/backend/src/graphql/resolver/EmailOptinCodes.test.ts @@ -1,6 +1,6 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { User as DbUser } from '@entity/User' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLError } from 'graphql' import { cleanDB, testEnvironment } from '@test/helpers' diff --git a/backend/src/graphql/resolver/GdtResolver.ts b/backend/src/graphql/resolver/GdtResolver.ts index 933fdb397..3ce1328a3 100644 --- a/backend/src/graphql/resolver/GdtResolver.ts +++ b/backend/src/graphql/resolver/GdtResolver.ts @@ -1,6 +1,6 @@ import { Arg, Args, Authorized, Ctx, Float, Int, Query, Resolver } from 'type-graphql' -import { Paginated } from '@arg/Paginated' +import type { Paginated } from '@arg/Paginated' import { Order } from '@enum/Order' import { GdtEntry } from '@model/GdtEntry' import { GdtEntryList } from '@model/GdtEntryList' @@ -9,7 +9,7 @@ import { apiGet, apiPost } from '@/apis/HttpRequest' import { RIGHTS } from '@/auth/RIGHTS' import { CONFIG } from '@/config' import { LogError } from '@/server/LogError' -import { Context, getUser } from '@/server/context' +import { type Context, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' diff --git a/backend/src/graphql/resolver/KlicktippResolver.ts b/backend/src/graphql/resolver/KlicktippResolver.ts index 1ac667fa4..81e65c9cd 100644 --- a/backend/src/graphql/resolver/KlicktippResolver.ts +++ b/backend/src/graphql/resolver/KlicktippResolver.ts @@ -3,7 +3,7 @@ import { Authorized, Ctx, Mutation, Resolver } from 'type-graphql' import { subscribe, unsubscribe } from '@/apis/KlicktippController' import { RIGHTS } from '@/auth/RIGHTS' import { EVENT_NEWSLETTER_SUBSCRIBE, EVENT_NEWSLETTER_UNSUBSCRIBE } from '@/event/Events' -import { Context, getUser } from '@/server/context' +import { type Context, getUser } from '@/server/context' @Resolver() export class KlicktippResolver { diff --git a/backend/src/graphql/resolver/ProjectBrandingResolver.ts b/backend/src/graphql/resolver/ProjectBrandingResolver.ts index 49b5a4cad..40fdff317 100644 --- a/backend/src/graphql/resolver/ProjectBrandingResolver.ts +++ b/backend/src/graphql/resolver/ProjectBrandingResolver.ts @@ -1,7 +1,7 @@ import { ProjectBranding as DbProjectBranding } from '@entity/ProjectBranding' import { Arg, Authorized, ID, Int, Mutation, Query, Resolver } from 'type-graphql' -import { ProjectBrandingInput } from '@input/ProjectBrandingInput' +import type { ProjectBrandingInput } from '@input/ProjectBrandingInput' import { ProjectBranding } from '@model/ProjectBranding' import { Space } from '@model/Space' import { SpaceList } from '@model/SpaceList' diff --git a/backend/src/graphql/resolver/StatisticsResolver.ts b/backend/src/graphql/resolver/StatisticsResolver.ts index 9ff588aa4..e24e01a6f 100644 --- a/backend/src/graphql/resolver/StatisticsResolver.ts +++ b/backend/src/graphql/resolver/StatisticsResolver.ts @@ -4,7 +4,7 @@ import { User as DbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Authorized, FieldResolver, Query, Resolver } from 'type-graphql' -import { CommunityStatistics, DynamicStatisticsFields } from '@model/CommunityStatistics' +import { CommunityStatistics, type DynamicStatisticsFields } from '@model/CommunityStatistics' import { RIGHTS } from '@/auth/RIGHTS' import { calculateDecay } from '@/util/decay' diff --git a/backend/src/graphql/resolver/TransactionLinkResolver.test.ts b/backend/src/graphql/resolver/TransactionLinkResolver.test.ts index 6f432ce61..61ae685b9 100644 --- a/backend/src/graphql/resolver/TransactionLinkResolver.test.ts +++ b/backend/src/graphql/resolver/TransactionLinkResolver.test.ts @@ -1,14 +1,14 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { Event as DbEvent } from '@entity/Event' import { Transaction } from '@entity/Transaction' -import { User } from '@entity/User' +import type { User } from '@entity/User' import { UserContact } from '@entity/UserContact' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { GraphQLError } from 'graphql' -import { UnconfirmedContribution } from '@model/UnconfirmedContribution' +import type { UnconfirmedContribution } from '@model/UnconfirmedContribution' import { cleanDB, resetEntity, resetToken, testEnvironment } from '@test/helpers' import { logger } from '@test/testSetup' diff --git a/backend/src/graphql/resolver/TransactionLinkResolver.ts b/backend/src/graphql/resolver/TransactionLinkResolver.ts index bd6081bfe..df7f7a927 100644 --- a/backend/src/graphql/resolver/TransactionLinkResolver.ts +++ b/backend/src/graphql/resolver/TransactionLinkResolver.ts @@ -9,15 +9,15 @@ import { User as DbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Arg, Args, Authorized, Ctx, Int, Mutation, Query, Resolver } from 'type-graphql' -import { Paginated } from '@arg/Paginated' -import { TransactionLinkArgs } from '@arg/TransactionLinkArgs' +import type { Paginated } from '@arg/Paginated' +import type { TransactionLinkArgs } from '@arg/TransactionLinkArgs' import { TransactionLinkFilters } from '@arg/TransactionLinkFilters' import { ContributionCycleType } from '@enum/ContributionCycleType' import { ContributionStatus } from '@enum/ContributionStatus' import { ContributionType } from '@enum/ContributionType' import { TransactionTypeId } from '@enum/TransactionTypeId' import { ContributionLink } from '@model/ContributionLink' -import { Decay } from '@model/Decay' +import type { Decay } from '@model/Decay' import { TransactionLink, TransactionLinkResult } from '@model/TransactionLink' import { User } from '@model/User' import { QueryLinkResult } from '@union/QueryLinkResult' @@ -30,7 +30,7 @@ import { EVENT_TRANSACTION_LINK_REDEEM, } from '@/event/Events' import { LogError } from '@/server/LogError' -import { Context, getClientTimezoneOffset, getUser } from '@/server/context' +import { type Context, getClientTimezoneOffset, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { TRANSACTIONS_LOCK } from '@/util/TRANSACTIONS_LOCK' import { TRANSACTION_LINK_LOCK } from '@/util/TRANSACTION_LINK_LOCK' diff --git a/backend/src/graphql/resolver/TransactionResolver.test.ts b/backend/src/graphql/resolver/TransactionResolver.test.ts index 9b50c7925..3d35736ad 100644 --- a/backend/src/graphql/resolver/TransactionResolver.test.ts +++ b/backend/src/graphql/resolver/TransactionResolver.test.ts @@ -1,11 +1,11 @@ -import { Connection, In } from '@dbTools/typeorm' +import { type Connection, In } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { DltTransaction } from '@entity/DltTransaction' import { Event as DbEvent } from '@entity/Event' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { Transaction } from '@entity/Transaction' import { User } from '@entity/User' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLError } from 'graphql' import { v4 as uuidv4 } from 'uuid' @@ -15,8 +15,8 @@ import { logger } from '@test/testSetup' import { CONFIG } from '@/config' import { EventType } from '@/event/Events' import { SendCoinsClient } from '@/federation/client/1_0/SendCoinsClient' -import { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' -import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' +import type { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' +import type { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' import { userFactory } from '@/seeds/factory/user' import { confirmContribution, diff --git a/backend/src/graphql/resolver/TransactionResolver.ts b/backend/src/graphql/resolver/TransactionResolver.ts index a5c9c1d87..5cdbf159f 100644 --- a/backend/src/graphql/resolver/TransactionResolver.ts +++ b/backend/src/graphql/resolver/TransactionResolver.ts @@ -7,8 +7,8 @@ import { User as dbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Args, Authorized, Ctx, Mutation, Query, Resolver } from 'type-graphql' -import { Paginated } from '@arg/Paginated' -import { TransactionSendArgs } from '@arg/TransactionSendArgs' +import type { Paginated } from '@arg/Paginated' +import type { TransactionSendArgs } from '@arg/TransactionSendArgs' import { Order } from '@enum/Order' import { PendingTransactionState } from '@enum/PendingTransactionState' import { TransactionTypeId } from '@enum/TransactionTypeId' @@ -23,9 +23,9 @@ import { sendTransactionReceivedEmail, } from '@/emails/sendEmailVariants' import { EVENT_TRANSACTION_RECEIVE, EVENT_TRANSACTION_SEND } from '@/event/Events' -import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' +import type { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' import { LogError } from '@/server/LogError' -import { Context, getUser } from '@/server/context' +import { type Context, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { TRANSACTIONS_LOCK } from '@/util/TRANSACTIONS_LOCK' import { communityUser } from '@/util/communityUser' diff --git a/backend/src/graphql/resolver/UserResolver.test.ts b/backend/src/graphql/resolver/UserResolver.test.ts index a9dfc2874..d012d5c23 100644 --- a/backend/src/graphql/resolver/UserResolver.test.ts +++ b/backend/src/graphql/resolver/UserResolver.test.ts @@ -1,4 +1,4 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { Event as DbEvent } from '@entity/Event' import { TransactionLink } from '@entity/TransactionLink' @@ -6,7 +6,7 @@ import { User } from '@entity/User' import { UserContact } from '@entity/UserContact' import { UserRole } from '@entity/UserRole' import { UserInputError } from 'apollo-server-express' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLError } from 'graphql' import { v4 as uuidv4, validate as validateUUID, version as versionUUID } from 'uuid' @@ -15,7 +15,7 @@ import { OptInType } from '@enum/OptInType' import { PasswordEncryptionType } from '@enum/PasswordEncryptionType' import { RoleNames } from '@enum/RoleNames' import { UserContactType } from '@enum/UserContactType' -import { ContributionLink } from '@model/ContributionLink' +import type { ContributionLink } from '@model/ContributionLink' import { Location } from '@model/Location' import { cleanDB, headerPushMock, resetToken, testEnvironment } from '@test/helpers' import { i18n as localization, logger } from '@test/testSetup' diff --git a/backend/src/graphql/resolver/UserResolver.ts b/backend/src/graphql/resolver/UserResolver.ts index f3e19dfb7..9dd0eb0f2 100644 --- a/backend/src/graphql/resolver/UserResolver.ts +++ b/backend/src/graphql/resolver/UserResolver.ts @@ -1,11 +1,11 @@ -import { In, Point, getConnection } from '@dbTools/typeorm' +import { In, type Point, getConnection } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { ProjectBranding } from '@entity/ProjectBranding' import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' import { User as DbUser } from '@entity/User' import { UserContact as DbUserContact } from '@entity/UserContact' import { UserLoggingView } from '@logging/UserLogging.view' -import { GraphQLResolveInfo } from 'graphql' +import type { GraphQLResolveInfo } from 'graphql' import i18n from 'i18n' import { Arg, @@ -20,16 +20,16 @@ import { Resolver, Root, } from 'type-graphql' -import { IRestResponse } from 'typed-rest-client' +import type { IRestResponse } from 'typed-rest-client' import { v4 as uuidv4 } from 'uuid' -import { UserArgs } from '@arg//UserArgs' -import { CreateUserArgs } from '@arg/CreateUserArgs' -import { Paginated } from '@arg/Paginated' +import type { UserArgs } from '@arg//UserArgs' +import type { CreateUserArgs } from '@arg/CreateUserArgs' +import type { Paginated } from '@arg/Paginated' import { SearchUsersFilters } from '@arg/SearchUsersFilters' -import { SetUserRoleArgs } from '@arg/SetUserRoleArgs' -import { UnsecureLoginArgs } from '@arg/UnsecureLoginArgs' -import { UpdateUserInfosArgs } from '@arg/UpdateUserInfosArgs' +import type { SetUserRoleArgs } from '@arg/SetUserRoleArgs' +import type { UnsecureLoginArgs } from '@arg/UnsecureLoginArgs' +import type { UpdateUserInfosArgs } from '@arg/UpdateUserInfosArgs' import { OptInType } from '@enum/OptInType' import { Order } from '@enum/Order' import { PasswordEncryptionType } from '@enum/PasswordEncryptionType' @@ -45,7 +45,7 @@ import { UserLocationResult } from '@model/UserLocationResult' import { subscribe } from '@/apis/KlicktippController' import { HumHubClient } from '@/apis/humhub/HumHubClient' import { Account as HumhubAccount } from '@/apis/humhub/model/Account' -import { GetUser } from '@/apis/humhub/model/GetUser' +import type { GetUser } from '@/apis/humhub/model/GetUser' import { PostUser } from '@/apis/humhub/model/PostUser' import { encode } from '@/auth/JWT' import { RIGHTS } from '@/auth/RIGHTS' @@ -74,7 +74,7 @@ import { import { isValidPassword } from '@/password/EncryptorUtils' import { encryptPassword, verifyPassword } from '@/password/PasswordEncryptor' import { LogError } from '@/server/LogError' -import { Context, getClientTimezoneOffset, getUser } from '@/server/context' +import { type Context, getClientTimezoneOffset, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { communityDbUser } from '@/util/communityUser' import { hasElopageBuys } from '@/util/hasElopageBuys' diff --git a/backend/src/graphql/resolver/semaphore.test.ts b/backend/src/graphql/resolver/semaphore.test.ts index d12db9eb2..e5aa4def5 100644 --- a/backend/src/graphql/resolver/semaphore.test.ts +++ b/backend/src/graphql/resolver/semaphore.test.ts @@ -1,6 +1,6 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { GraphQLError } from 'graphql' import { v4 as uuidv4 } from 'uuid' diff --git a/backend/src/graphql/resolver/util/Location2Point.ts b/backend/src/graphql/resolver/util/Location2Point.ts index 7552ea495..a9ff24208 100644 --- a/backend/src/graphql/resolver/util/Location2Point.ts +++ b/backend/src/graphql/resolver/util/Location2Point.ts @@ -1,4 +1,4 @@ -import { Point } from '@dbTools/typeorm' +import type { Point } from '@dbTools/typeorm' import { Location } from '@model/Location' diff --git a/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts b/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts index d7f185619..907962fa4 100644 --- a/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts +++ b/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts @@ -1,4 +1,4 @@ -import { User as DbUser } from '@entity/User' +import type { User as DbUser } from '@entity/User' import { verifyAuthToken } from '@/apis/gms/GmsClient' import { CONFIG } from '@/config' diff --git a/backend/src/graphql/resolver/util/communities.ts b/backend/src/graphql/resolver/util/communities.ts index 87cf31610..2360d3a3f 100644 --- a/backend/src/graphql/resolver/util/communities.ts +++ b/backend/src/graphql/resolver/util/communities.ts @@ -1,8 +1,8 @@ -import { FindOneOptions } from '@dbTools/typeorm' +import type { FindOneOptions } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -import { Paginated } from '@arg/Paginated' +import type { Paginated } from '@arg/Paginated' import { LogError } from '@/server/LogError' import { Connection } from '@/typeorm/connection' diff --git a/backend/src/graphql/resolver/util/compareGmsRelevantUserSettings.ts b/backend/src/graphql/resolver/util/compareGmsRelevantUserSettings.ts index 609a8d487..2882512f8 100644 --- a/backend/src/graphql/resolver/util/compareGmsRelevantUserSettings.ts +++ b/backend/src/graphql/resolver/util/compareGmsRelevantUserSettings.ts @@ -1,9 +1,9 @@ -import { Point } from '@dbTools/typeorm' -import { User as DbUser } from '@entity/User' +import type { Point } from '@dbTools/typeorm' +import type { User as DbUser } from '@entity/User' import { UserLoggingView } from '@logging/UserLogging.view' -import { UpdateUserInfosArgs } from '@/graphql/arg/UpdateUserInfosArgs' -import { GmsPublishLocationType } from '@/graphql/enum/GmsPublishLocationType' +import type { UpdateUserInfosArgs } from '@/graphql/arg/UpdateUserInfosArgs' +import type { GmsPublishLocationType } from '@/graphql/enum/GmsPublishLocationType' import { PublishNameType } from '@/graphql/enum/PublishNameType' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' diff --git a/backend/src/graphql/resolver/util/creations.test.ts b/backend/src/graphql/resolver/util/creations.test.ts index 0d538a75d..8dec43b1a 100644 --- a/backend/src/graphql/resolver/util/creations.test.ts +++ b/backend/src/graphql/resolver/util/creations.test.ts @@ -1,7 +1,7 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { Contribution } from '@entity/Contribution' -import { User } from '@entity/User' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { User } from '@entity/User' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { cleanDB, contributionDateFormatter, testEnvironment } from '@test/helpers' diff --git a/backend/src/graphql/resolver/util/creations.ts b/backend/src/graphql/resolver/util/creations.ts index 694d3a867..390e21f0a 100644 --- a/backend/src/graphql/resolver/util/creations.ts +++ b/backend/src/graphql/resolver/util/creations.ts @@ -1,8 +1,8 @@ import { getConnection } from '@dbTools/typeorm' import { Contribution } from '@entity/Contribution' -import { Decimal } from 'decimal.js-light' +import type { Decimal } from 'decimal.js-light' -import { OpenCreation } from '@model/OpenCreation' +import type { OpenCreation } from '@model/OpenCreation' import { FULL_CREATION_AVAILABLE, MAX_CREATION_AMOUNT } from '@/graphql/resolver/const/const' import { LogError } from '@/server/LogError' diff --git a/backend/src/graphql/resolver/util/extractGraphQLFields.ts b/backend/src/graphql/resolver/util/extractGraphQLFields.ts index 75389b958..d993d731b 100644 --- a/backend/src/graphql/resolver/util/extractGraphQLFields.ts +++ b/backend/src/graphql/resolver/util/extractGraphQLFields.ts @@ -1,7 +1,7 @@ -import { ObjectLiteral, SelectQueryBuilder } from '@dbTools/typeorm' -import { GraphQLResolveInfo } from 'graphql' +import type { ObjectLiteral, SelectQueryBuilder } from '@dbTools/typeorm' +import type { GraphQLResolveInfo } from 'graphql' import { - ResolveTree, + type ResolveTree, parseResolveInfo, simplifyParsedResolveInfoFragmentWithType, } from 'graphql-parse-resolve-info' diff --git a/backend/src/graphql/resolver/util/findContributionMessages.ts b/backend/src/graphql/resolver/util/findContributionMessages.ts index 460b62b38..32e1f0216 100644 --- a/backend/src/graphql/resolver/util/findContributionMessages.ts +++ b/backend/src/graphql/resolver/util/findContributionMessages.ts @@ -2,7 +2,7 @@ import { In } from '@dbTools/typeorm' import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' import { ContributionMessageType } from '@enum/ContributionMessageType' -import { Order } from '@enum/Order' +import type { Order } from '@enum/Order' interface FindContributionMessagesOptions { contributionId: number diff --git a/backend/src/graphql/resolver/util/findContributions.ts b/backend/src/graphql/resolver/util/findContributions.ts index 9611c64a3..26ad152c3 100644 --- a/backend/src/graphql/resolver/util/findContributions.ts +++ b/backend/src/graphql/resolver/util/findContributions.ts @@ -5,12 +5,12 @@ import { LessThanOrEqual, Like, Not, - SelectQueryBuilder, + type SelectQueryBuilder, } from '@dbTools/typeorm' import { Contribution as DbContribution } from '@entity/Contribution' -import { Paginated } from '@arg/Paginated' -import { SearchContributionsFilterArgs } from '@arg/SearchContributionsFilterArgs' +import type { Paginated } from '@arg/Paginated' +import type { SearchContributionsFilterArgs } from '@arg/SearchContributionsFilterArgs' import { Connection } from '@typeorm/connection' import { LogError } from '@/server/LogError' diff --git a/backend/src/graphql/resolver/util/findUserByIdentifier.ts b/backend/src/graphql/resolver/util/findUserByIdentifier.ts index bdd179091..9831d0d28 100644 --- a/backend/src/graphql/resolver/util/findUserByIdentifier.ts +++ b/backend/src/graphql/resolver/util/findUserByIdentifier.ts @@ -1,5 +1,5 @@ -import { FindOptionsWhere } from '@dbTools/typeorm' -import { Community } from '@entity/Community' +import type { FindOptionsWhere } from '@dbTools/typeorm' +import type { Community } from '@entity/Community' import { User as DbUser } from '@entity/User' import { UserContact as DbUserContact } from '@entity/UserContact' import { isURL } from 'class-validator' diff --git a/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts b/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts index 75892a201..5597b9ef9 100644 --- a/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts +++ b/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts @@ -1,7 +1,7 @@ -import { Connection } from '@dbTools/typeorm' -import { Community as DbCommunity } from '@entity/Community' -import { User as DbUser } from '@entity/User' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { Connection } from '@dbTools/typeorm' +import type { Community as DbCommunity } from '@entity/Community' +import type { User as DbUser } from '@entity/User' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { cleanDB, testEnvironment } from '@test/helpers' diff --git a/backend/src/graphql/resolver/util/findUsers.ts b/backend/src/graphql/resolver/util/findUsers.ts index d4de5a405..c9c6b4a6b 100644 --- a/backend/src/graphql/resolver/util/findUsers.ts +++ b/backend/src/graphql/resolver/util/findUsers.ts @@ -1,7 +1,7 @@ import { IsNull, Like, Not } from '@dbTools/typeorm' import { User as DbUser } from '@entity/User' -import { SearchUsersFilters } from '@arg/SearchUsersFilters' +import type { SearchUsersFilters } from '@arg/SearchUsersFilters' import { Order } from '@enum/Order' function likeQuery(searchCriteria: string) { diff --git a/backend/src/graphql/resolver/util/getTransactionList.ts b/backend/src/graphql/resolver/util/getTransactionList.ts index 654f4e002..47cfa72e2 100644 --- a/backend/src/graphql/resolver/util/getTransactionList.ts +++ b/backend/src/graphql/resolver/util/getTransactionList.ts @@ -1,6 +1,6 @@ import { Transaction as DbTransaction } from '@entity/Transaction' -import { Order } from '@enum/Order' +import type { Order } from '@enum/Order' export const getTransactionList = async ( userId: number, diff --git a/backend/src/graphql/resolver/util/modifyUserRole.ts b/backend/src/graphql/resolver/util/modifyUserRole.ts index f9af28a22..da7bdbf6e 100644 --- a/backend/src/graphql/resolver/util/modifyUserRole.ts +++ b/backend/src/graphql/resolver/util/modifyUserRole.ts @@ -1,4 +1,4 @@ -import { User as DbUser } from '@entity/User' +import type { User as DbUser } from '@entity/User' import { UserRole } from '@entity/UserRole' import { LogError } from '@/server/LogError' diff --git a/backend/src/graphql/resolver/util/processXComSendCoins.ts b/backend/src/graphql/resolver/util/processXComSendCoins.ts index f0c779dbc..27d383f12 100644 --- a/backend/src/graphql/resolver/util/processXComSendCoins.ts +++ b/backend/src/graphql/resolver/util/processXComSendCoins.ts @@ -1,7 +1,7 @@ -import { Community as DbCommunity } from '@entity/Community' +import type { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { PendingTransaction as DbPendingTransaction } from '@entity/PendingTransaction' -import { User as dbUser } from '@entity/User' +import type { User as dbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { CONFIG } from '@/config' diff --git a/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts b/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts index b212add4a..74cdc7fbe 100644 --- a/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts +++ b/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts @@ -1,13 +1,13 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { Community } from '@entity/Community' import { DltTransaction } from '@entity/DltTransaction' import { Transaction } from '@entity/Transaction' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' // import { GraphQLClient } from 'graphql-request' // import { Response } from 'graphql-request/dist/types' import { GraphQLClient } from 'graphql-request' -import { Response } from 'graphql-request/dist/types' +import type { Response } from 'graphql-request/dist/types' import { v4 as uuidv4 } from 'uuid' import { cleanDB, testEnvironment } from '@test/helpers' diff --git a/backend/src/graphql/resolver/util/sendUserToGms.ts b/backend/src/graphql/resolver/util/sendUserToGms.ts index 4212a1890..35fa84bbc 100644 --- a/backend/src/graphql/resolver/util/sendUserToGms.ts +++ b/backend/src/graphql/resolver/util/sendUserToGms.ts @@ -1,4 +1,4 @@ -import { Community as DbCommunity } from '@entity/Community' +import type { Community as DbCommunity } from '@entity/Community' import { User as DbUser } from '@entity/User' import { createGmsUser, updateGmsUser } from '@/apis/gms/GmsClient' diff --git a/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts b/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts index 7457d3f0d..286f2ba86 100644 --- a/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts +++ b/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts @@ -1,8 +1,8 @@ import { getConnection } from '@dbTools/typeorm' -import { Community as DbCommunity } from '@entity/Community' +import type { Community as DbCommunity } from '@entity/Community' import { PendingTransaction as DbPendingTransaction } from '@entity/PendingTransaction' import { Transaction as dbTransaction } from '@entity/Transaction' -import { User as DbUser } from '@entity/User' +import type { User as DbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { PendingTransactionState } from '@/graphql/enum/PendingTransactionState' diff --git a/backend/src/graphql/resolver/util/storeForeignUser.ts b/backend/src/graphql/resolver/util/storeForeignUser.ts index 5942159b4..f01404b73 100644 --- a/backend/src/graphql/resolver/util/storeForeignUser.ts +++ b/backend/src/graphql/resolver/util/storeForeignUser.ts @@ -1,7 +1,7 @@ -import { Community as DbCommunity } from '@entity/Community' +import type { Community as DbCommunity } from '@entity/Community' import { User as DbUser } from '@entity/User' -import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' +import type { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' import { backendLogger as logger } from '@/server/logger' export async function storeForeignUser( diff --git a/backend/src/graphql/resolver/util/syncHumhub.ts b/backend/src/graphql/resolver/util/syncHumhub.ts index 6163855b9..9aacbc99d 100644 --- a/backend/src/graphql/resolver/util/syncHumhub.ts +++ b/backend/src/graphql/resolver/util/syncHumhub.ts @@ -1,11 +1,11 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import { HumHubClient } from '@/apis/humhub/HumHubClient' -import { GetUser } from '@/apis/humhub/model/GetUser' +import type { GetUser } from '@/apis/humhub/model/GetUser' import { ExecutedHumhubAction, syncUser } from '@/apis/humhub/syncUser' import { PublishNameLogic } from '@/data/PublishName.logic' -import { UpdateUserInfosArgs } from '@/graphql/arg/UpdateUserInfosArgs' -import { PublishNameType } from '@/graphql/enum/PublishNameType' +import type { UpdateUserInfosArgs } from '@/graphql/arg/UpdateUserInfosArgs' +import type { PublishNameType } from '@/graphql/enum/PublishNameType' import { backendLogger as logger } from '@/server/logger' /** diff --git a/backend/src/graphql/resolver/util/transactionLinkList.ts b/backend/src/graphql/resolver/util/transactionLinkList.ts index 25567f633..8759e5de9 100644 --- a/backend/src/graphql/resolver/util/transactionLinkList.ts +++ b/backend/src/graphql/resolver/util/transactionLinkList.ts @@ -1,11 +1,11 @@ import { IsNull, MoreThan } from '@dbTools/typeorm' import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' -import { User as DbUser } from '@entity/User' +import type { User as DbUser } from '@entity/User' -import { Paginated } from '@arg/Paginated' -import { TransactionLinkFilters } from '@arg/TransactionLinkFilters' +import type { Paginated } from '@arg/Paginated' +import type { TransactionLinkFilters } from '@arg/TransactionLinkFilters' import { Order } from '@enum/Order' -import { TransactionLink, TransactionLinkResult } from '@model/TransactionLink' +import { TransactionLink, type TransactionLinkResult } from '@model/TransactionLink' import { User } from '@/graphql/model/User' diff --git a/backend/src/graphql/resolver/util/validateAlias.test.ts b/backend/src/graphql/resolver/util/validateAlias.test.ts index e0e35c3b7..c29d11f7e 100644 --- a/backend/src/graphql/resolver/util/validateAlias.test.ts +++ b/backend/src/graphql/resolver/util/validateAlias.test.ts @@ -1,6 +1,6 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { User } from '@entity/User' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { cleanDB, testEnvironment } from '@test/helpers' import { i18n as localization, logger } from '@test/testSetup' diff --git a/backend/src/graphql/schema.ts b/backend/src/graphql/schema.ts index bcb8081a6..f6ded16e7 100644 --- a/backend/src/graphql/schema.ts +++ b/backend/src/graphql/schema.ts @@ -1,7 +1,7 @@ import path from 'path' import { Decimal } from 'decimal.js-light' -import { GraphQLSchema } from 'graphql' +import type { GraphQLSchema } from 'graphql' import { buildSchema } from 'type-graphql' import { Location } from '@model/Location' diff --git a/backend/src/graphql/validator/ContributionStatusArray.ts b/backend/src/graphql/validator/ContributionStatusArray.ts index dd7c93277..c4f430c68 100644 --- a/backend/src/graphql/validator/ContributionStatusArray.ts +++ b/backend/src/graphql/validator/ContributionStatusArray.ts @@ -1,4 +1,4 @@ -import { ValidationOptions, registerDecorator } from 'class-validator' +import { type ValidationOptions, registerDecorator } from 'class-validator' import { ContributionStatus } from '@enum/ContributionStatus' diff --git a/backend/src/graphql/validator/DateString.ts b/backend/src/graphql/validator/DateString.ts index 3502b8c84..82a6592e4 100644 --- a/backend/src/graphql/validator/DateString.ts +++ b/backend/src/graphql/validator/DateString.ts @@ -1,4 +1,8 @@ -import { ValidationArguments, ValidationOptions, registerDecorator } from 'class-validator' +import { + type ValidationArguments, + type ValidationOptions, + registerDecorator, +} from 'class-validator' export function isValidDateString(validationOptions?: ValidationOptions) { return function (object: Object, propertyName: string) { diff --git a/backend/src/graphql/validator/Decimal.ts b/backend/src/graphql/validator/Decimal.ts index 0300c6d9c..c3d79683e 100644 --- a/backend/src/graphql/validator/Decimal.ts +++ b/backend/src/graphql/validator/Decimal.ts @@ -1,5 +1,9 @@ -import { ValidationArguments, ValidationOptions, registerDecorator } from 'class-validator' -import { Decimal } from 'decimal.js-light' +import { + type ValidationArguments, + type ValidationOptions, + registerDecorator, +} from 'class-validator' +import type { Decimal } from 'decimal.js-light' export function IsPositiveDecimal(validationOptions?: ValidationOptions) { return function (object: Object, propertyName: string) { diff --git a/backend/src/graphql/validator/Location.ts b/backend/src/graphql/validator/Location.ts index 0bbf9fb92..74a833cb2 100644 --- a/backend/src/graphql/validator/Location.ts +++ b/backend/src/graphql/validator/Location.ts @@ -1,6 +1,10 @@ -import { ValidationArguments, ValidationOptions, registerDecorator } from 'class-validator' +import { + type ValidationArguments, + type ValidationOptions, + registerDecorator, +} from 'class-validator' -import { Location } from '@model/Location' +import type { Location } from '@model/Location' import { Location2Point } from '@/graphql/resolver/util/Location2Point' diff --git a/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts b/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts index 06dfea6e7..e933bf411 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts @@ -1,13 +1,13 @@ -import { Contribution } from '@entity/Contribution' -import { User } from '@entity/User' -import { Decimal } from 'decimal.js-light' +import type { Contribution } from '@entity/Contribution' +import type { User } from '@entity/User' +import type { Decimal } from 'decimal.js-light' -import { Role } from '@/auth/Role' +import type { Role } from '@/auth/Role' import { ContributionLogic } from '@/data/Contribution.logic' import { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' import { ContributionStatus } from '@/graphql/enum/ContributionStatus' import { LogError } from '@/server/LogError' -import { Context, getClientTimezoneOffset } from '@/server/context' +import { type Context, getClientTimezoneOffset } from '@/server/context' export abstract class AbstractUnconfirmedContributionRole { private availableCreationSums?: Decimal[] diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts index f958693c8..127d41f40 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts @@ -1,10 +1,10 @@ -import { Contribution } from '@entity/Contribution' -import { User } from '@entity/User' +import type { Contribution } from '@entity/Contribution' +import type { User } from '@entity/User' import { RIGHTS } from '@/auth/RIGHTS' -import { Role } from '@/auth/Role' -import { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' -import { AdminUpdateContributionArgs } from '@/graphql/arg/AdminUpdateContributionArgs' +import type { Role } from '@/auth/Role' +import type { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' +import type { AdminUpdateContributionArgs } from '@/graphql/arg/AdminUpdateContributionArgs' import { ContributionStatus } from '@/graphql/enum/ContributionStatus' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts index 8db74d8d4..5d992dad4 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts @@ -1,10 +1,10 @@ -import { Contribution } from '@entity/Contribution' -import { User } from '@entity/User' +import type { Contribution } from '@entity/Contribution' +import type { User } from '@entity/User' import { RIGHTS } from '@/auth/RIGHTS' -import { Role } from '@/auth/Role' -import { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' -import { ContributionMessageArgs } from '@/graphql/arg/ContributionMessageArgs' +import type { Role } from '@/auth/Role' +import type { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' +import type { ContributionMessageArgs } from '@/graphql/arg/ContributionMessageArgs' import { ContributionMessageType } from '@/graphql/enum/ContributionMessageType' import { ContributionStatus } from '@/graphql/enum/ContributionStatus' import { LogError } from '@/server/LogError' diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts index fe7d55d80..eaa6b62b0 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts @@ -1,8 +1,8 @@ -import { Contribution } from '@entity/Contribution' -import { User } from '@entity/User' +import type { Contribution } from '@entity/Contribution' +import type { User } from '@entity/User' -import { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' -import { ContributionArgs } from '@/graphql/arg/ContributionArgs' +import type { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' +import type { ContributionArgs } from '@/graphql/arg/ContributionArgs' import { ContributionStatus } from '@/graphql/enum/ContributionStatus' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts index 9b81b07bd..d69bfd81a 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts @@ -1,8 +1,8 @@ -import { Contribution } from '@entity/Contribution' -import { User } from '@entity/User' +import type { Contribution } from '@entity/Contribution' +import type { User } from '@entity/User' -import { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' -import { ContributionMessageArgs } from '@/graphql/arg/ContributionMessageArgs' +import type { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' +import type { ContributionMessageArgs } from '@/graphql/arg/ContributionMessageArgs' import { ContributionMessageType } from '@/graphql/enum/ContributionMessageType' import { ContributionStatus } from '@/graphql/enum/ContributionStatus' import { LogError } from '@/server/LogError' diff --git a/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts b/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts index 60d9cbf19..8df520c5d 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts @@ -1,16 +1,16 @@ -import { EntityManager, FindOneOptions, FindOptionsRelations } from '@dbTools/typeorm' +import type { EntityManager, FindOneOptions, FindOptionsRelations } from '@dbTools/typeorm' import { Contribution } from '@entity/Contribution' -import { ContributionMessage } from '@entity/ContributionMessage' -import { Decimal } from 'decimal.js-light' +import type { ContributionMessage } from '@entity/ContributionMessage' +import type { Decimal } from 'decimal.js-light' import { AdminUpdateContributionArgs } from '@arg/AdminUpdateContributionArgs' import { ContributionArgs } from '@arg/ContributionArgs' import { ContributionMessageArgs } from '@/graphql/arg/ContributionMessageArgs' import { LogError } from '@/server/LogError' -import { Context } from '@/server/context' +import type { Context } from '@/server/context' -import { AbstractUnconfirmedContributionRole } from './AbstractUnconfirmedContribution.role' +import type { AbstractUnconfirmedContributionRole } from './AbstractUnconfirmedContribution.role' import { UnconfirmedContributionAdminRole } from './UnconfirmedContributionAdmin.role' import { UnconfirmedContributionAdminAddMessageRole } from './UnconfirmedContributionAdminAddMessage.role' import { UnconfirmedContributionUserRole } from './UnconfirmedContributionUser.role' diff --git a/backend/src/logging/BalanceLogging.view.ts b/backend/src/logging/BalanceLogging.view.ts index b4135bbf9..5f22eca89 100644 --- a/backend/src/logging/BalanceLogging.view.ts +++ b/backend/src/logging/BalanceLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import { Balance } from '@/graphql/model/Balance' +import type { Balance } from '@/graphql/model/Balance' export class BalanceLoggingView extends AbstractLoggingView { public constructor(private self: Balance) { diff --git a/backend/src/logging/DecayLogging.view.ts b/backend/src/logging/DecayLogging.view.ts index 92cc836aa..d6c8de618 100644 --- a/backend/src/logging/DecayLogging.view.ts +++ b/backend/src/logging/DecayLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import { Decay } from '@/graphql/model/Decay' +import type { Decay } from '@/graphql/model/Decay' export class DecayLoggingView extends AbstractLoggingView { public constructor(private self: Decay) { diff --git a/backend/src/password/EncryptorUtils.ts b/backend/src/password/EncryptorUtils.ts index 25ee852bc..ecfc5e6ed 100644 --- a/backend/src/password/EncryptorUtils.ts +++ b/backend/src/password/EncryptorUtils.ts @@ -1,8 +1,8 @@ import { cpus } from 'os' import path from 'path' -import { User } from '@entity/User' -import { Pool, pool } from 'workerpool' +import type { User } from '@entity/User' +import { type Pool, pool } from 'workerpool' import { PasswordEncryptionType } from '@enum/PasswordEncryptionType' diff --git a/backend/src/password/PasswordEncryptor.ts b/backend/src/password/PasswordEncryptor.ts index b9fdb65aa..d6441c35d 100644 --- a/backend/src/password/PasswordEncryptor.ts +++ b/backend/src/password/PasswordEncryptor.ts @@ -1,4 +1,4 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' // import { logger } from '@test/testSetup' getting error "jest is not defined" import { SecretKeyCryptographyCreateKey, getUserCryptographicSalt } from './EncryptorUtils' diff --git a/backend/src/password/__mocks__/EncryptorUtils.ts b/backend/src/password/__mocks__/EncryptorUtils.ts index 6f8ea8f7d..dc01b38e0 100644 --- a/backend/src/password/__mocks__/EncryptorUtils.ts +++ b/backend/src/password/__mocks__/EncryptorUtils.ts @@ -1,4 +1,4 @@ -import { User } from '@entity/User' +import type { User } from '@entity/User' import { PasswordEncryptionType } from '@enum/PasswordEncryptionType' diff --git a/backend/src/seeds/contributionLink/index.ts b/backend/src/seeds/contributionLink/index.ts index 41d28eb60..377afcd9a 100644 --- a/backend/src/seeds/contributionLink/index.ts +++ b/backend/src/seeds/contributionLink/index.ts @@ -1,4 +1,4 @@ -import { ContributionLinkInterface } from './ContributionLinkInterface' +import type { ContributionLinkInterface } from './ContributionLinkInterface' export const contributionLinks: ContributionLinkInterface[] = [ { diff --git a/backend/src/seeds/creation/index.ts b/backend/src/seeds/creation/index.ts index c22a99b0c..0da1e9d4e 100644 --- a/backend/src/seeds/creation/index.ts +++ b/backend/src/seeds/creation/index.ts @@ -1,6 +1,6 @@ import { nMonthsBefore } from '@/seeds/factory/creation' -import { CreationInterface } from './CreationInterface' +import type { CreationInterface } from './CreationInterface' const bobsSendings = [ { diff --git a/backend/src/seeds/factory/contributionLink.ts b/backend/src/seeds/factory/contributionLink.ts index 4e8c945f3..a6f2be4c2 100644 --- a/backend/src/seeds/factory/contributionLink.ts +++ b/backend/src/seeds/factory/contributionLink.ts @@ -1,8 +1,8 @@ -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' -import { ContributionLink } from '@model/ContributionLink' +import type { ContributionLink } from '@model/ContributionLink' -import { ContributionLinkInterface } from '@/seeds/contributionLink/ContributionLinkInterface' +import type { ContributionLinkInterface } from '@/seeds/contributionLink/ContributionLinkInterface' import { createContributionLink, login } from '@/seeds/graphql/mutations' export const contributionLinkFactory = async ( diff --git a/backend/src/seeds/factory/creation.ts b/backend/src/seeds/factory/creation.ts index 4fce38206..613d95039 100644 --- a/backend/src/seeds/factory/creation.ts +++ b/backend/src/seeds/factory/creation.ts @@ -1,9 +1,9 @@ import { Contribution } from '@entity/Contribution' import { Transaction } from '@entity/Transaction' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { findUserByEmail } from '@/graphql/resolver/UserResolver' -import { CreationInterface } from '@/seeds/creation/CreationInterface' +import type { CreationInterface } from '@/seeds/creation/CreationInterface' import { confirmContribution, createContribution, login } from '@/seeds/graphql/mutations' export const nMonthsBefore = (date: Date, months = 1): string => { diff --git a/backend/src/seeds/factory/transactionLink.ts b/backend/src/seeds/factory/transactionLink.ts index 098100622..476744ab9 100644 --- a/backend/src/seeds/factory/transactionLink.ts +++ b/backend/src/seeds/factory/transactionLink.ts @@ -1,9 +1,9 @@ import { TransactionLink } from '@entity/TransactionLink' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { transactionLinkExpireDate } from '@/graphql/resolver/TransactionLinkResolver' import { createTransactionLink, login } from '@/seeds/graphql/mutations' -import { TransactionLinkInterface } from '@/seeds/transactionLink/TransactionLinkInterface' +import type { TransactionLinkInterface } from '@/seeds/transactionLink/TransactionLinkInterface' export const transactionLinkFactory = async ( client: ApolloServerTestClient, diff --git a/backend/src/seeds/factory/user.ts b/backend/src/seeds/factory/user.ts index 1eab302c0..1105e59dc 100644 --- a/backend/src/seeds/factory/user.ts +++ b/backend/src/seeds/factory/user.ts @@ -1,12 +1,12 @@ import { User } from '@entity/User' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { RoleNames } from '@enum/RoleNames' import { setUserRole } from '@/graphql/resolver/util/modifyUserRole' import { writeHomeCommunityEntry } from '@/seeds/community' import { createUser, setPassword } from '@/seeds/graphql/mutations' -import { UserInterface } from '@/seeds/users/UserInterface' +import type { UserInterface } from '@/seeds/users/UserInterface' export const userFactory = async ( client: ApolloServerTestClient, diff --git a/backend/src/seeds/transactionLink/index.ts b/backend/src/seeds/transactionLink/index.ts index c3245c2b6..b05d10c5c 100644 --- a/backend/src/seeds/transactionLink/index.ts +++ b/backend/src/seeds/transactionLink/index.ts @@ -1,4 +1,4 @@ -import { TransactionLinkInterface } from './TransactionLinkInterface' +import type { TransactionLinkInterface } from './TransactionLinkInterface' export const transactionLinks: TransactionLinkInterface[] = [ { diff --git a/backend/src/seeds/users/bibi-bloxberg.ts b/backend/src/seeds/users/bibi-bloxberg.ts index 9a40e922b..43abaa780 100644 --- a/backend/src/seeds/users/bibi-bloxberg.ts +++ b/backend/src/seeds/users/bibi-bloxberg.ts @@ -1,4 +1,4 @@ -import { UserInterface } from './UserInterface' +import type { UserInterface } from './UserInterface' export const bibiBloxberg: UserInterface = { email: 'bibi@bloxberg.de', diff --git a/backend/src/seeds/users/bob-baumeister.ts b/backend/src/seeds/users/bob-baumeister.ts index b7902f7bc..b917c8012 100644 --- a/backend/src/seeds/users/bob-baumeister.ts +++ b/backend/src/seeds/users/bob-baumeister.ts @@ -1,4 +1,4 @@ -import { UserInterface } from './UserInterface' +import type { UserInterface } from './UserInterface' export const bobBaumeister: UserInterface = { alias: 'MeisterBob', diff --git a/backend/src/seeds/users/garrick-ollivander.ts b/backend/src/seeds/users/garrick-ollivander.ts index 264a866bd..92e7568d0 100644 --- a/backend/src/seeds/users/garrick-ollivander.ts +++ b/backend/src/seeds/users/garrick-ollivander.ts @@ -1,4 +1,4 @@ -import { UserInterface } from './UserInterface' +import type { UserInterface } from './UserInterface' export const garrickOllivander: UserInterface = { email: 'garrick@ollivander.com', diff --git a/backend/src/seeds/users/peter-lustig.ts b/backend/src/seeds/users/peter-lustig.ts index ff1fe065e..3eee6a8cc 100644 --- a/backend/src/seeds/users/peter-lustig.ts +++ b/backend/src/seeds/users/peter-lustig.ts @@ -1,6 +1,6 @@ import { RoleNames } from '@enum/RoleNames' -import { UserInterface } from './UserInterface' +import type { UserInterface } from './UserInterface' export const peterLustig: UserInterface = { email: 'peter@lustig.de', diff --git a/backend/src/seeds/users/raeuber-hotzenplotz.ts b/backend/src/seeds/users/raeuber-hotzenplotz.ts index 62601efff..cc8391037 100644 --- a/backend/src/seeds/users/raeuber-hotzenplotz.ts +++ b/backend/src/seeds/users/raeuber-hotzenplotz.ts @@ -1,4 +1,4 @@ -import { UserInterface } from './UserInterface' +import type { UserInterface } from './UserInterface' export const raeuberHotzenplotz: UserInterface = { email: 'raeuber@hotzenplotz.de', diff --git a/backend/src/seeds/users/stephen-hawking.ts b/backend/src/seeds/users/stephen-hawking.ts index a683b7579..69b10d8e9 100644 --- a/backend/src/seeds/users/stephen-hawking.ts +++ b/backend/src/seeds/users/stephen-hawking.ts @@ -1,4 +1,4 @@ -import { UserInterface } from './UserInterface' +import type { UserInterface } from './UserInterface' export const stephenHawking: UserInterface = { email: 'stephen@hawking.uk', diff --git a/backend/src/server/context.ts b/backend/src/server/context.ts index 1dc07660d..df3eed36b 100644 --- a/backend/src/server/context.ts +++ b/backend/src/server/context.ts @@ -1,9 +1,9 @@ -import { Transaction as dbTransaction } from '@entity/Transaction' -import { User as dbUser } from '@entity/User' -import { ExpressContext } from 'apollo-server-express' -import { Decimal } from 'decimal.js-light' +import type { Transaction as dbTransaction } from '@entity/Transaction' +import type { User as dbUser } from '@entity/User' +import type { ExpressContext } from 'apollo-server-express' +import type { Decimal } from 'decimal.js-light' -import { Role } from '@/auth/Role' +import type { Role } from '@/auth/Role' import { LogError } from './LogError' diff --git a/backend/src/server/createServer.ts b/backend/src/server/createServer.ts index 695e0d585..11e19afa4 100644 --- a/backend/src/server/createServer.ts +++ b/backend/src/server/createServer.ts @@ -1,9 +1,9 @@ -import { Connection as DbConnection } from '@dbTools/typeorm' +import type { Connection as DbConnection } from '@dbTools/typeorm' import { ApolloServer } from 'apollo-server-express' -import express, { Express, json, urlencoded } from 'express' +import express, { type Express, json, urlencoded } from 'express' import { slowDown } from 'express-slow-down' import helmet from 'helmet' -import { Logger } from 'log4js' +import type { Logger } from 'log4js' import { CONFIG } from '@/config' import { schema } from '@/graphql/schema' diff --git a/backend/src/typeorm/connection.ts b/backend/src/typeorm/connection.ts index f9b6744e8..dcec5f560 100644 --- a/backend/src/typeorm/connection.ts +++ b/backend/src/typeorm/connection.ts @@ -1,6 +1,6 @@ // TODO This is super weird - since the entities are defined in another project they have their own globals. // We cannot use our connection here, but must use the external typeorm installation -import { Connection as DbConnection, FileLogger, createConnection } from '@dbTools/typeorm' +import { type Connection as DbConnection, FileLogger, createConnection } from '@dbTools/typeorm' import { entities } from '@entity/index' import { CONFIG } from '@/config' diff --git a/backend/src/util/calculateSenderBalance.ts b/backend/src/util/calculateSenderBalance.ts index d2973c982..ff6f562d2 100644 --- a/backend/src/util/calculateSenderBalance.ts +++ b/backend/src/util/calculateSenderBalance.ts @@ -1,6 +1,6 @@ -import { Decimal } from 'decimal.js-light' +import type { Decimal } from 'decimal.js-light' -import { Decay } from '@model/Decay' +import type { Decay } from '@model/Decay' import { getLastTransaction } from '@/graphql/resolver/util/getLastTransaction' diff --git a/backend/src/util/communityUser.ts b/backend/src/util/communityUser.ts index 4ac17eb0d..a736d01d8 100644 --- a/backend/src/util/communityUser.ts +++ b/backend/src/util/communityUser.ts @@ -1,5 +1,5 @@ -import { RemoveOptions, SaveOptions } from '@dbTools/typeorm' -import { User as dbUser } from '@entity/User' +import type { RemoveOptions, SaveOptions } from '@dbTools/typeorm' +import type { User as dbUser } from '@entity/User' import { UserContact } from '@entity/UserContact' import { User } from '@model/User' diff --git a/backend/src/util/decay.ts b/backend/src/util/decay.ts index 1d1775cc9..acdd61881 100644 --- a/backend/src/util/decay.ts +++ b/backend/src/util/decay.ts @@ -1,6 +1,6 @@ import { Decimal } from 'decimal.js-light' -import { Decay } from '@model/Decay' +import type { Decay } from '@model/Decay' import { CONFIG } from '@/config' import { LogError } from '@/server/LogError' diff --git a/backend/src/util/klicktipp.test.ts b/backend/src/util/klicktipp.test.ts index d53dd3ff0..b7a1507ac 100644 --- a/backend/src/util/klicktipp.test.ts +++ b/backend/src/util/klicktipp.test.ts @@ -1,6 +1,6 @@ -import { Connection } from '@dbTools/typeorm' +import type { Connection } from '@dbTools/typeorm' import { Event as DbEvent } from '@entity/Event' -import { ApolloServerTestClient } from 'apollo-server-testing' +import type { ApolloServerTestClient } from 'apollo-server-testing' import { cleanDB, resetToken, testEnvironment } from '@test/helpers' diff --git a/backend/src/util/utilities.ts b/backend/src/util/utilities.ts index 0e8a8da85..a2a11604f 100644 --- a/backend/src/util/utilities.ts +++ b/backend/src/util/utilities.ts @@ -1,6 +1,6 @@ import { promisify } from 'util' -import { Decimal } from 'decimal.js-light' +import type { Decimal } from 'decimal.js-light' import i18n from 'i18n' export const objectValuesToArray = (obj: Record): string[] => diff --git a/backend/src/util/validate.ts b/backend/src/util/validate.ts index 6ea1c1f7b..0e0aba9b7 100644 --- a/backend/src/util/validate.ts +++ b/backend/src/util/validate.ts @@ -1,8 +1,8 @@ -import { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' +import type { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' import { Decimal } from 'decimal.js-light' import { validate, version } from 'uuid' -import { Decay } from '@model/Decay' +import type { Decay } from '@model/Decay' import { getLastTransaction } from '@/graphql/resolver/util/getLastTransaction' import { transactionLinkSummary } from '@/graphql/resolver/util/transactionLinkSummary' diff --git a/backend/src/util/virtualTransactions.ts b/backend/src/util/virtualTransactions.ts index 8be04b34d..0c22405d2 100644 --- a/backend/src/util/virtualTransactions.ts +++ b/backend/src/util/virtualTransactions.ts @@ -1,10 +1,10 @@ -import { RemoveOptions, SaveOptions } from '@dbTools/typeorm' -import { Transaction as dbTransaction } from '@entity/Transaction' +import type { RemoveOptions, SaveOptions } from '@dbTools/typeorm' +import type { Transaction as dbTransaction } from '@entity/Transaction' import { Decimal } from 'decimal.js-light' import { TransactionTypeId } from '@enum/TransactionTypeId' import { Transaction } from '@model/Transaction' -import { User } from '@model/User' +import type { User } from '@model/User' import { calculateDecay } from './decay' diff --git a/backend/yarn.lock b/backend/yarn.lock index 2a897aa27..89cfc48d6 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -379,68 +379,6 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@emnapi/core@^1.3.1": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@emnapi/core/-/core-1.3.1.tgz#9c62d185372d1bddc94682b87f376e03dfac3f16" - integrity sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog== - dependencies: - "@emnapi/wasi-threads" "1.0.1" - tslib "^2.4.0" - -"@emnapi/runtime@^1.3.1": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.3.1.tgz#0fcaa575afc31f455fd33534c19381cfce6c6f60" - integrity sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw== - dependencies: - tslib "^2.4.0" - -"@emnapi/wasi-threads@1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@emnapi/wasi-threads/-/wasi-threads-1.0.1.tgz#d7ae71fd2166b1c916c6cd2d0df2ef565a2e1a5b" - integrity sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw== - dependencies: - tslib "^2.4.0" - -"@eslint-community/eslint-plugin-eslint-comments@^3.2.1": - version "3.2.1" - resolved "https://registry.yarnpkg.com/@eslint-community/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.1.tgz#3c65061e27f155eae3744c3b30c5a8253a959040" - integrity sha512-/HZbjIGaVO2zLlWX3gRgiHmKRVvvqrC0zVu3eXnIj1ORxoyfGSj50l0PfDfqihyZAqrDYzSMdJesXzFjvAoiLQ== - dependencies: - escape-string-regexp "^1.0.5" - ignore "^5.2.4" - -"@eslint-community/eslint-utils@^4.2.0": - version "4.5.1" - resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz#b0fc7e06d0c94f801537fd4237edc2706d3b8e4c" - integrity sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w== - dependencies: - eslint-visitor-keys "^3.4.3" - -"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1": - version "4.12.1" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.1.tgz#cfc6cffe39df390a3841cde2abccf92eaa7ae0e0" - integrity sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ== - -"@eslint/eslintrc@^2.1.4": - version "2.1.4" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad" - integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ== - dependencies: - ajv "^6.12.4" - debug "^4.3.2" - espree "^9.6.0" - globals "^13.19.0" - ignore "^5.2.0" - import-fresh "^3.2.1" - js-yaml "^4.1.0" - minimatch "^3.1.2" - strip-json-comments "^3.1.1" - -"@eslint/js@8.57.1": - version "8.57.1" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.1.tgz#de633db3ec2ef6a3c89e2f19038063e8a122e2c2" - integrity sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q== - "@graphql-typed-document-node/core@^3.1.1": version "3.2.0" resolved "https://registry.yarnpkg.com/@graphql-typed-document-node/core/-/core-3.2.0.tgz#5f3d96ec6b2354ad6d8a28bf216a1d97b5426861" @@ -470,25 +408,6 @@ dependencies: "@hapi/hoek" "^9.0.0" -"@humanwhocodes/config-array@^0.13.0": - version "0.13.0" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.13.0.tgz#fb907624df3256d04b9aa2df50d7aa97ec648748" - integrity sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw== - dependencies: - "@humanwhocodes/object-schema" "^2.0.3" - debug "^4.3.1" - minimatch "^3.0.5" - -"@humanwhocodes/module-importer@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" - integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== - -"@humanwhocodes/object-schema@^2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3" - integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA== - "@isaacs/cliui@^8.0.2": version "8.0.2" resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" @@ -797,98 +716,6 @@ dependencies: make-plural "^7.0.0" -"@napi-rs/wasm-runtime@^0.2.7": - version "0.2.7" - resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.7.tgz#288f03812a408bc53c2c3686c65f38fe90f295eb" - integrity sha512-5yximcFK5FNompXfJFoWanu5l8v1hNGqNHh9du1xETp9HWk/B/PzvchX55WYOPaIeNglG8++68AAiauBAtbnzw== - dependencies: - "@emnapi/core" "^1.3.1" - "@emnapi/runtime" "^1.3.1" - "@tybys/wasm-util" "^0.9.0" - -"@nodelib/fs.scandir@2.1.5": - version "2.1.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" - integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== - dependencies: - "@nodelib/fs.stat" "2.0.5" - run-parallel "^1.1.9" - -"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": - version "2.0.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" - integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== - -"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": - version "1.2.8" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" - integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== - dependencies: - "@nodelib/fs.scandir" "2.1.5" - fastq "^1.6.0" - -"@nolyfill/is-core-module@1.0.39": - version "1.0.39" - resolved "https://registry.yarnpkg.com/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz#3dc35ba0f1e66b403c00b39344f870298ebb1c8e" - integrity sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA== - -"@oxc-resolver/binding-darwin-arm64@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-darwin-arm64/-/binding-darwin-arm64-5.0.0.tgz#c99057f297954f197217e75d63ff92d4514e354a" - integrity sha512-zwHAf+owoxSWTDD4dFuwW+FkpaDzbaL30H5Ltocb+RmLyg4WKuteusRLKh5Y8b/cyu7UzhxM0haIqQjyqA1iuA== - -"@oxc-resolver/binding-darwin-x64@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-darwin-x64/-/binding-darwin-x64-5.0.0.tgz#530cf02f3a3833a3932fc22d732d757cdc7e3cbf" - integrity sha512-1lS3aBNVjVQKBvZdHm13+8tSjvu2Tl1Cv4FnUyMYxqx6+rsom2YaOylS5LhDUwfZu0zAgpLMwK6kGpF/UPncNg== - -"@oxc-resolver/binding-freebsd-x64@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-freebsd-x64/-/binding-freebsd-x64-5.0.0.tgz#4a10430b9375f17ea5c5f8a4439aa2901dcaa5c2" - integrity sha512-q9sRd68wC1/AJ0eu6ClhxlklVfe8gH4wrUkSyEbIYTZ8zY5yjsLY3fpqqsaCvWJUx65nW+XtnAxCGCi5AXr1Mw== - -"@oxc-resolver/binding-linux-arm-gnueabihf@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-5.0.0.tgz#f082550d0ff62e772657ebccea8d2f7751d2130b" - integrity sha512-catYavWsvqViYnCveQjhrK6yVYDEPFvIOgGLxnz5r2dcgrjpmquzREoyss0L2QG/J5HTTbwqwZ1kk+g56hE/1A== - -"@oxc-resolver/binding-linux-arm64-gnu@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-5.0.0.tgz#d016b164f46548759454e58a42289d4e45030e69" - integrity sha512-l/0pWoQM5kVmJLg4frQ1mKZOXgi0ex/hzvFt8E4WK2ifXr5JgKFUokxsb/oat7f5YzdJJh5r9p+qS/t3dA26Aw== - -"@oxc-resolver/binding-linux-arm64-musl@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-arm64-musl/-/binding-linux-arm64-musl-5.0.0.tgz#c9ce09343c877e1000a8e2b2b04694d94ae5a918" - integrity sha512-bx0oz/oaAW4FGYqpIIxJCnmgb906YfMhTEWCJvYkxjpEI8VKLJEL3PQevYiqDq36SA0yRLJ/sQK2fqry8AFBfA== - -"@oxc-resolver/binding-linux-x64-gnu@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-x64-gnu/-/binding-linux-x64-gnu-5.0.0.tgz#10476acfa3e8e46331820a629914d351df0ccf8c" - integrity sha512-4PH++qbSIhlRsFYdN1P9neDov4OGhTGo5nbQ1D7AL6gWFLo3gdZTc00FM2y8JjeTcPWEXkViZuwpuc0w5i6qHg== - -"@oxc-resolver/binding-linux-x64-musl@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-x64-musl/-/binding-linux-x64-musl-5.0.0.tgz#5b9383bc12c2c394f228b7771469c8aac3cb7bff" - integrity sha512-mLfQFpX3/5y9oWi0b+9FbWDkL2hM0Y29653beCHiHxAdGyVgb2DsJbK74WkMTwtSz9by8vyBh8jGPZcg1yLZbQ== - -"@oxc-resolver/binding-wasm32-wasi@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-wasm32-wasi/-/binding-wasm32-wasi-5.0.0.tgz#cb7ad0e966b3d746f2c8ea98660a2558d2db9057" - integrity sha512-uEhsAZSo65qsRi6+IfBTEUUFbjg7T2yruJeLYpFfEATpm3ory5Mgo5vx3L0c2/Cz1OUZXBgp3A8x6VMUB2jT2A== - dependencies: - "@napi-rs/wasm-runtime" "^0.2.7" - -"@oxc-resolver/binding-win32-arm64-msvc@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-5.0.0.tgz#44422b316f744dbd904254ee4fbdd2cd0444f613" - integrity sha512-8DbSso9Jp1ns8AYuZFXdRfAcdJrzZwkFm/RjPuvAPTENsm685dosBF8G6gTHQlHvULnk6o3sa9ygZaTGC/UoEw== - -"@oxc-resolver/binding-win32-x64-msvc@5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-win32-x64-msvc/-/binding-win32-x64-msvc-5.0.0.tgz#1575b4aaf6f46faf5b95003be2a5dfd8ea1e10e0" - integrity sha512-ylppfPEg63NuRXOPNsXFlgyl37JrtRn0QMO26X3K3Ytp5HtLrMreQMGVtgr30e1l2YmAWqhvmKlCryOqzGPD/g== - "@pkgjs/parseargs@^0.11.0": version "0.11.0" resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" @@ -947,11 +774,6 @@ resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570" integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw== -"@rtsao/scc@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" - integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g== - "@selderee/plugin-htmlparser2@^0.11.0": version "0.11.0" resolved "https://registry.yarnpkg.com/@selderee/plugin-htmlparser2/-/plugin-htmlparser2-0.11.0.tgz#d5b5e29a7ba6d3958a1972c7be16f4b2c188c517" @@ -1029,13 +851,6 @@ resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9" integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== -"@tybys/wasm-util@^0.9.0": - version "0.9.0" - resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.9.0.tgz#3e75eb00604c8d6db470bf18c37b7d984a0e3355" - integrity sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw== - dependencies: - tslib "^2.4.0" - "@types/accepts@*", "@types/accepts@^1.3.5": version "1.3.7" resolved "https://registry.yarnpkg.com/@types/accepts/-/accepts-1.3.7.tgz#3b98b1889d2b2386604c2bbbe62e4fb51e95b265" @@ -1249,11 +1064,6 @@ dependencies: joi "*" -"@types/json-schema@^7.0.9": - version "7.0.15" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" - integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== - "@types/json5@^0.0.29": version "0.0.29" resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" @@ -1383,7 +1193,7 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.7.tgz#50ae4353eaaddc04044279812f52c8c65857dbcb" integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ== -"@types/semver@^7.3.12", "@types/semver@^7.3.3": +"@types/semver@^7.3.3": version "7.5.8" resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e" integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ== @@ -1441,102 +1251,6 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db" - integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag== - dependencies: - "@eslint-community/regexpp" "^4.4.0" - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/type-utils" "5.62.0" - "@typescript-eslint/utils" "5.62.0" - debug "^4.3.4" - graphemer "^1.4.0" - ignore "^5.2.0" - natural-compare-lite "^1.4.0" - semver "^7.3.7" - tsutils "^3.21.0" - -"@typescript-eslint/experimental-utils@^5.9.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.62.0.tgz#14559bf73383a308026b427a4a6129bae2146741" - integrity sha512-RTXpeB3eMkpoclG3ZHft6vG/Z30azNHuqY6wKPBHlVMZFuEvrtlEDe8gMqDb+SO+9hjC/pLekeSCryf9vMZlCw== - dependencies: - "@typescript-eslint/utils" "5.62.0" - -"@typescript-eslint/parser@^5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7" - integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA== - dependencies: - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/typescript-estree" "5.62.0" - debug "^4.3.4" - -"@typescript-eslint/scope-manager@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c" - integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w== - dependencies: - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/visitor-keys" "5.62.0" - -"@typescript-eslint/type-utils@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a" - integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew== - dependencies: - "@typescript-eslint/typescript-estree" "5.62.0" - "@typescript-eslint/utils" "5.62.0" - debug "^4.3.4" - tsutils "^3.21.0" - -"@typescript-eslint/types@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" - integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== - -"@typescript-eslint/typescript-estree@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b" - integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA== - dependencies: - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/visitor-keys" "5.62.0" - debug "^4.3.4" - globby "^11.1.0" - is-glob "^4.0.3" - semver "^7.3.7" - tsutils "^3.21.0" - -"@typescript-eslint/utils@5.62.0", "@typescript-eslint/utils@^5.10.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86" - integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ== - dependencies: - "@eslint-community/eslint-utils" "^4.2.0" - "@types/json-schema" "^7.0.9" - "@types/semver" "^7.3.12" - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/typescript-estree" "5.62.0" - eslint-scope "^5.1.1" - semver "^7.3.7" - -"@typescript-eslint/visitor-keys@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e" - integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw== - dependencies: - "@typescript-eslint/types" "5.62.0" - eslint-visitor-keys "^3.3.0" - -"@ungap/structured-clone@^1.2.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.3.0.tgz#d06bbb384ebcf6c505fde1c3d0ed4ddffe0aaff8" - integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g== - "@wry/equality@^0.1.2": version "0.1.11" resolved "https://registry.yarnpkg.com/@wry/equality/-/equality-0.1.11.tgz#35cb156e4a96695aa81a9ecc4d03787bc17f1790" @@ -1572,11 +1286,6 @@ acorn-globals@^6.0.0: acorn "^7.1.1" acorn-walk "^7.1.1" -acorn-jsx@^5.3.2: - version "5.3.2" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" - integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== - acorn-walk@^7.1.1: version "7.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" @@ -1594,7 +1303,7 @@ acorn@^7.1.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.11.0, acorn@^8.2.4, acorn@^8.4.1, acorn@^8.9.0: +acorn@^8.11.0, acorn@^8.2.4, acorn@^8.4.1: version "8.14.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.1.tgz#721d5dc10f7d5b5609a891773d47731796935dfb" integrity sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg== @@ -1613,16 +1322,6 @@ agentkeepalive@^4.2.1: dependencies: humanize-ms "^1.2.1" -ajv@^6.12.4: - version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - alce@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/alce/-/alce-1.2.0.tgz#a8be2dacaac42494612f18dc09db691f3dea4aab" @@ -1857,11 +1556,6 @@ argparse@^1.0.7: dependencies: sprintf-js "~1.0.2" -argparse@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" - integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== - array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz#384d12a37295aec3769ab022ad323a18a51ccf8b" @@ -1880,56 +1574,11 @@ array-flatten@1.1.1: resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== -array-includes@^3.1.8: - version "3.1.8" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.8.tgz#5e370cbe172fdd5dd6530c1d4aadda25281ba97d" - integrity sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-abstract "^1.23.2" - es-object-atoms "^1.0.0" - get-intrinsic "^1.2.4" - is-string "^1.0.7" - array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== -array.prototype.findlastindex@^1.2.5: - version "1.2.6" - resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz#cfa1065c81dcb64e34557c9b81d012f6a421c564" - integrity sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.4" - define-properties "^1.2.1" - es-abstract "^1.23.9" - es-errors "^1.3.0" - es-object-atoms "^1.1.1" - es-shim-unscopables "^1.1.0" - -array.prototype.flat@^1.3.2: - version "1.3.3" - resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz#534aaf9e6e8dd79fb6b9a9917f839ef1ec63afe5" - integrity sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg== - dependencies: - call-bind "^1.0.8" - define-properties "^1.2.1" - es-abstract "^1.23.5" - es-shim-unscopables "^1.0.2" - -array.prototype.flatmap@^1.3.2: - version "1.3.3" - resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz#712cc792ae70370ae40586264629e33aab5dd38b" - integrity sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg== - dependencies: - call-bind "^1.0.8" - define-properties "^1.2.1" - es-abstract "^1.23.5" - es-shim-unscopables "^1.0.2" - array.prototype.reduce@^1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.8.tgz#42f97f5078daedca687d4463fd3c05cbfd83da57" @@ -2201,13 +1850,6 @@ buffer@^6.0.3: base64-js "^1.3.1" ieee754 "^1.2.1" -builtins@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/builtins/-/builtins-5.1.0.tgz#6d85eeb360c4ebc166c3fdef922a15aa7316a5e8" - integrity sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg== - dependencies: - semver "^7.0.0" - busboy@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/busboy/-/busboy-0.3.1.tgz#170899274c5bf38aae27d5c62b71268cd585fd1b" @@ -2508,7 +2150,7 @@ cross-spawn@^6.0.0: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3, cross-spawn@^7.0.6: +cross-spawn@^7.0.1, cross-spawn@^7.0.3, cross-spawn@^7.0.6: version "7.0.6" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== @@ -2613,7 +2255,7 @@ debug@2.6.9: dependencies: ms "2.0.0" -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@^4.3.7: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.3, debug@^4.3.4: version "4.4.0" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA== @@ -2647,11 +2289,6 @@ deep-extend@^0.6.0: resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== -deep-is@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" - integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== - deepmerge@^4.2.2, deepmerge@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" @@ -2732,13 +2369,6 @@ diff@^4.0.1: resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - discontinuous-range@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/discontinuous-range/-/discontinuous-range-1.0.0.tgz#e38331f0844bba49b9a9cb71c771585aab1bc65a" @@ -2752,20 +2382,6 @@ display-notification@2.0.0: escape-string-applescript "^1.0.0" run-applescript "^3.0.0" -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== - dependencies: - esutils "^2.0.2" - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - doctypes@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/doctypes/-/doctypes-1.1.0.tgz#ea80b106a87538774e8a3a4a5afe293de489e0a9" @@ -3024,13 +2640,6 @@ es-set-tostringtag@^2.1.0: has-tostringtag "^1.0.2" hasown "^2.0.2" -es-shim-unscopables@^1.0.2, es-shim-unscopables@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz#438df35520dac5d105f3943d927549ea3b00f4b5" - integrity sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw== - dependencies: - hasown "^2.0.2" - es-to-primitive@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.3.0.tgz#96c89c82cc49fd8794a24835ba3e1ff87f214e18" @@ -3060,21 +2669,11 @@ escape-string-applescript@^1.0.0: resolved "https://registry.yarnpkg.com/escape-string-applescript/-/escape-string-applescript-1.0.0.tgz#6f1c2294245d82c63bc03338dc19a94aa8428892" integrity sha512-4/hFwoYaC6TkpDn9A3pTC52zQPArFeXuIfhUtCGYdauTzXVP9H3BDr3oO/QzQehMpLDC7srvYgfwvImPFGfvBA== -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== - escape-string-regexp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== -escape-string-regexp@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - escodegen@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.1.0.tgz#ba93bbb7a43986d29d6041f99f5262da773e2e17" @@ -3086,223 +2685,6 @@ escodegen@^2.0.0: optionalDependencies: source-map "~0.6.1" -eslint-config-prettier@^8.8.0: - version "8.10.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz#3a06a662130807e2502fc3ff8b4143d8a0658e11" - integrity sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg== - -eslint-config-standard@^17.0.0: - version "17.1.0" - resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-17.1.0.tgz#40ffb8595d47a6b242e07cbfd49dc211ed128975" - integrity sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q== - -eslint-import-resolver-node@^0.3.9: - version "0.3.9" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac" - integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g== - dependencies: - debug "^3.2.7" - is-core-module "^2.13.0" - resolve "^1.22.4" - -eslint-import-resolver-typescript@^3.5.4: - version "3.9.0" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.9.0.tgz#e94219827696f7d17139c343642859d60e277e78" - integrity sha512-EUcFmaz0zAa6P2C9jAb5XDymRld8S6TURvWcIW7y+czOW+K8hrjgQgbhBsNE0J/dDZ6HLfcn70LqnIil9W+ICw== - dependencies: - "@nolyfill/is-core-module" "1.0.39" - debug "^4.3.7" - get-tsconfig "^4.10.0" - is-bun-module "^1.0.2" - oxc-resolver "^5.0.0" - stable-hash "^0.0.5" - tinyglobby "^0.2.12" - -eslint-module-utils@^2.12.0: - version "2.12.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz#fe4cfb948d61f49203d7b08871982b65b9af0b0b" - integrity sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg== - dependencies: - debug "^3.2.7" - -eslint-plugin-es@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz#f0822f0c18a535a97c3e714e89f88586a7641ec9" - integrity sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ== - dependencies: - eslint-utils "^2.0.0" - regexpp "^3.0.0" - -eslint-plugin-import@^2.27.5: - version "2.31.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz#310ce7e720ca1d9c0bb3f69adfd1c6bdd7d9e0e7" - integrity sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A== - dependencies: - "@rtsao/scc" "^1.1.0" - array-includes "^3.1.8" - array.prototype.findlastindex "^1.2.5" - array.prototype.flat "^1.3.2" - array.prototype.flatmap "^1.3.2" - debug "^3.2.7" - doctrine "^2.1.0" - eslint-import-resolver-node "^0.3.9" - eslint-module-utils "^2.12.0" - hasown "^2.0.2" - is-core-module "^2.15.1" - is-glob "^4.0.3" - minimatch "^3.1.2" - object.fromentries "^2.0.8" - object.groupby "^1.0.3" - object.values "^1.2.0" - semver "^6.3.1" - string.prototype.trimend "^1.0.8" - tsconfig-paths "^3.15.0" - -eslint-plugin-jest@^27.2.1: - version "27.9.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz#7c98a33605e1d8b8442ace092b60e9919730000b" - integrity sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug== - dependencies: - "@typescript-eslint/utils" "^5.10.0" - -eslint-plugin-n@^15.7.0: - version "15.7.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-n/-/eslint-plugin-n-15.7.0.tgz#e29221d8f5174f84d18f2eb94765f2eeea033b90" - integrity sha512-jDex9s7D/Qial8AGVIHq4W7NswpUD5DPDL2RH8Lzd9EloWUuvUkHfv4FRLMipH5q2UtyurorBkPeNi1wVWNh3Q== - dependencies: - builtins "^5.0.1" - eslint-plugin-es "^4.1.0" - eslint-utils "^3.0.0" - ignore "^5.1.1" - is-core-module "^2.11.0" - minimatch "^3.1.2" - resolve "^1.22.1" - semver "^7.3.8" - -eslint-plugin-prettier@^4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz#651cbb88b1dab98bfd42f017a12fa6b2d993f94b" - integrity sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ== - dependencies: - prettier-linter-helpers "^1.0.0" - -eslint-plugin-promise@^6.1.1: - version "6.6.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-6.6.0.tgz#acd3fd7d55cead7a10f92cf698f36c0aafcd717a" - integrity sha512-57Zzfw8G6+Gq7axm2Pdo3gW/Rx3h9Yywgn61uE/3elTCOePEHVrn2i5CdfBwA1BLK0Q0WqctICIUSqXZW/VprQ== - -eslint-plugin-security@^1.7.1: - version "1.7.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-security/-/eslint-plugin-security-1.7.1.tgz#0e9c4a471f6e4d3ca16413c7a4a51f3966ba16e4" - integrity sha512-sMStceig8AFglhhT2LqlU5r+/fn9OwsA72O5bBuQVTssPCdQAOQzL+oMn/ZcpeUY6KcNfLJArgcrsSULNjYYdQ== - dependencies: - safe-regex "^2.1.1" - -eslint-plugin-type-graphql@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-type-graphql/-/eslint-plugin-type-graphql-1.0.0.tgz#d348560ed628d6ca1dfcea35a02891432daafe6b" - integrity sha512-l6Yjcylavs88mcRZ3znwRuu8R9a8eoLdSaMGfycaMragf+VMxiz3kwjPmYz8AZxqqp8gvM7/2EGJqkkjM4NKIQ== - dependencies: - "@typescript-eslint/experimental-utils" "^5.9.0" - -eslint-scope@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" - integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== - dependencies: - esrecurse "^4.3.0" - estraverse "^4.1.1" - -eslint-scope@^7.2.2: - version "7.2.2" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f" - integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg== - dependencies: - esrecurse "^4.3.0" - estraverse "^5.2.0" - -eslint-utils@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" - integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== - dependencies: - eslint-visitor-keys "^1.1.0" - -eslint-utils@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" - integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== - dependencies: - eslint-visitor-keys "^2.0.0" - -eslint-visitor-keys@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" - integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - -eslint-visitor-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" - integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== - -eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: - version "3.4.3" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" - integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== - -eslint@^8.57.1: - version "8.57.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.1.tgz#7df109654aba7e3bbe5c8eae533c5e461d3c6ca9" - integrity sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA== - dependencies: - "@eslint-community/eslint-utils" "^4.2.0" - "@eslint-community/regexpp" "^4.6.1" - "@eslint/eslintrc" "^2.1.4" - "@eslint/js" "8.57.1" - "@humanwhocodes/config-array" "^0.13.0" - "@humanwhocodes/module-importer" "^1.0.1" - "@nodelib/fs.walk" "^1.2.8" - "@ungap/structured-clone" "^1.2.0" - ajv "^6.12.4" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.3.2" - doctrine "^3.0.0" - escape-string-regexp "^4.0.0" - eslint-scope "^7.2.2" - eslint-visitor-keys "^3.4.3" - espree "^9.6.1" - esquery "^1.4.2" - esutils "^2.0.2" - fast-deep-equal "^3.1.3" - file-entry-cache "^6.0.1" - find-up "^5.0.0" - glob-parent "^6.0.2" - globals "^13.19.0" - graphemer "^1.4.0" - ignore "^5.2.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - is-path-inside "^3.0.3" - js-yaml "^4.1.0" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash.merge "^4.6.2" - minimatch "^3.1.2" - natural-compare "^1.4.0" - optionator "^0.9.3" - strip-ansi "^6.0.1" - text-table "^0.2.0" - -espree@^9.6.0, espree@^9.6.1: - version "9.6.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" - integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== - dependencies: - acorn "^8.9.0" - acorn-jsx "^5.3.2" - eslint-visitor-keys "^3.4.1" - esprima@^1.2.0: version "1.2.5" resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.2.5.tgz#0993502feaf668138325756f30f9a51feeec11e9" @@ -3313,31 +2695,12 @@ esprima@^4.0.0, esprima@^4.0.1: resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.4.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7" - integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg== - dependencies: - estraverse "^5.1.0" - -esrecurse@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" - integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== - dependencies: - estraverse "^5.2.0" - estraverse@^1.5.0: version "1.9.3" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.9.3.tgz#af67f2dc922582415950926091a4005d29c9bb44" integrity sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA== -estraverse@^4.1.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -estraverse@^5.1.0, estraverse@^5.2.0: +estraverse@^5.2.0: version "5.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== @@ -3469,49 +2832,16 @@ faker@^5.5.3: resolved "https://registry.yarnpkg.com/faker/-/faker-5.5.3.tgz#c57974ee484431b25205c2c8dc09fda861e51e0e" integrity sha512-wLTv2a28wjUyWkbnX7u/ABZBkUkIF2fCd73V6P2oFqEGEktDfzWx4UxrSqtPRw0xPRAcjeAOIiJWqZm3pP4u3g== -fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" - integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== - -fast-diff@^1.1.2: - version "1.3.0" - resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.3.0.tgz#ece407fa550a64d638536cd727e129c61616e0f0" - integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw== - -fast-glob@^3.2.9: - version "3.3.3" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.3.tgz#d06d585ce8dba90a16b0505c543c3ccfb3aeb818" - integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg== - dependencies: - "@nodelib/fs.stat" "^2.0.2" - "@nodelib/fs.walk" "^1.2.3" - glob-parent "^5.1.2" - merge2 "^1.3.0" - micromatch "^4.0.8" - fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== - fast-printf@^1.6.9: version "1.6.10" resolved "https://registry.yarnpkg.com/fast-printf/-/fast-printf-1.6.10.tgz#c44ad871726152159d7a903a5af0d65cf3d75875" integrity sha512-GwTgG9O4FVIdShhbVF3JxOgSBY2+ePGsu2V/UONgoCPzF9VY6ZdBMKsHKCYQHZwNk3qNouUolRDsgVxcVA5G1w== -fastq@^1.6.0: - version "1.19.1" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.19.1.tgz#d50eaba803c8846a883c16492821ebcd2cda55f5" - integrity sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ== - dependencies: - reusify "^1.0.4" - fb-watchman@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" @@ -3519,18 +2849,6 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" -fdir@^6.4.3: - version "6.4.3" - resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.4.3.tgz#011cdacf837eca9b811c89dbb902df714273db72" - integrity sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw== - -file-entry-cache@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" - integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== - dependencies: - flat-cache "^3.0.4" - fill-range@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" @@ -3559,14 +2877,6 @@ find-up@^4.0.0, find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" -find-up@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" - integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== - dependencies: - locate-path "^6.0.0" - path-exists "^4.0.0" - fixpack@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/fixpack/-/fixpack-4.0.0.tgz#28b9fb8ca04f89aab382021cfa826b36dc381dfd" @@ -3579,16 +2889,7 @@ fixpack@^4.0.0: extend-object "^1.0.0" rc "^1.2.8" -flat-cache@^3.0.4: - version "3.2.0" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee" - integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw== - dependencies: - flatted "^3.2.9" - keyv "^4.5.3" - rimraf "^3.0.2" - -flatted@^3.2.7, flatted@^3.2.9: +flatted@^3.2.7: version "3.3.3" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.3.tgz#67c8fad95454a7c7abebf74bb78ee74a44023358" integrity sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg== @@ -3784,27 +3085,13 @@ get-symbol-description@^1.1.0: es-errors "^1.3.0" get-intrinsic "^1.2.6" -get-tsconfig@^4.10.0: - version "4.10.0" - resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.10.0.tgz#403a682b373a823612475a4c2928c7326fc0f6bb" - integrity sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A== - dependencies: - resolve-pkg-maps "^1.0.0" - -glob-parent@^5.1.2, glob-parent@~5.1.2: +glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" -glob-parent@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" - integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== - dependencies: - is-glob "^4.0.3" - glob@^10.4.5: version "10.4.5" resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" @@ -3834,13 +3121,6 @@ globals@^11.1.0: resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globals@^13.19.0: - version "13.24.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171" - integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ== - dependencies: - type-fest "^0.20.2" - globalthis@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" @@ -3849,18 +3129,6 @@ globalthis@^1.0.4: define-properties "^1.2.1" gopd "^1.0.1" -globby@^11.1.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" - integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.2.9" - ignore "^5.2.0" - merge2 "^1.4.1" - slash "^3.0.0" - gopd@^1.0.1, gopd@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" @@ -3892,11 +3160,6 @@ graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.9: uuid "^8.3.2" wkx "^0.5.0" -graphemer@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" - integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== - graphql-extensions@^0.16.0: version "0.16.0" resolved "https://registry.yarnpkg.com/graphql-extensions/-/graphql-extensions-0.16.0.tgz#32669fde0a2f115de60e5dda818ae457c1d71bb8" @@ -4183,19 +3446,6 @@ ignore-by-default@^1.0.1: resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" integrity sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA== -ignore@^5.1.1, ignore@^5.2.0, ignore@^5.2.4: - version "5.3.2" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" - integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== - -import-fresh@^3.2.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf" - integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - import-local@^3.0.2: version "3.2.0" resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.2.0.tgz#c3d5c745798c02a6f8b897726aba5100186ee260" @@ -4288,19 +3538,12 @@ is-boolean-object@^1.2.1: call-bound "^1.0.3" has-tostringtag "^1.0.2" -is-bun-module@^1.0.2: - version "1.3.0" - resolved "https://registry.yarnpkg.com/is-bun-module/-/is-bun-module-1.3.0.tgz#ea4d24fdebfcecc98e81bcbcb506827fee288760" - integrity sha512-DgXeu5UWI0IsMQundYb5UAOzm6G2eVnarJ0byP6Tm55iZNKceD59LNPA2L4VvsScTtHcw0yEkVwSf7PC+QoLSA== - dependencies: - semver "^7.6.3" - is-callable@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.15.1, is-core-module@^2.16.0: +is-core-module@^2.16.0: version "2.16.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4" integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w== @@ -4369,7 +3612,7 @@ is-generator-function@^1.0.10: has-tostringtag "^1.0.2" safe-regex-test "^1.1.0" -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: +is-glob@^4.0.1, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== @@ -4394,11 +3637,6 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -is-path-inside@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" - integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== - is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" @@ -4446,7 +3684,7 @@ is-stream@^2.0.0: resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== -is-string@^1.0.7, is-string@^1.1.1: +is-string@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.1.1.tgz#92ea3f3d5c5b6e039ca8677e5ac8d07ea773cbb9" integrity sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA== @@ -5012,13 +4250,6 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" -js-yaml@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" - integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== - dependencies: - argparse "^2.0.1" - jsdom@^16.6.0: version "16.7.0" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" @@ -5057,26 +4288,11 @@ jsesc@^3.0.2: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d" integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA== -json-buffer@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" - integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== - json-parse-even-better-errors@^2.3.0: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== - json5@2.x, json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" @@ -5115,13 +4331,6 @@ juice@^8.0.0: slick "^1.12.2" web-resource-inliner "^6.0.1" -keyv@^4.5.3: - version "4.5.4" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" - integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== - dependencies: - json-buffer "3.0.1" - kleur@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" @@ -5144,14 +4353,6 @@ leven@^3.1.0: resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== -levn@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" - integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== - dependencies: - prelude-ls "^1.2.1" - type-check "~0.4.0" - libbase64@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/libbase64/-/libbase64-1.3.0.tgz#053314755a05d2e5f08bbfc48d0290e9322f4406" @@ -5196,13 +4397,6 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" -locate-path@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" - integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== - dependencies: - p-locate "^5.0.0" - lodash.clonedeep@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" @@ -5218,11 +4412,6 @@ lodash.memoize@4.x: resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== -lodash.merge@^4.6.2: - version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" - integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== - lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" @@ -5357,17 +4546,12 @@ merge-stream@^2.0.0: resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== -merge2@^1.3.0, merge2@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" - integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== - methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -micromatch@^4.0.4, micromatch@^4.0.8: +micromatch@^4.0.4: version "4.0.8" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== @@ -5402,7 +4586,7 @@ mimic-fn@^2.1.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: +minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== @@ -5493,11 +4677,6 @@ named-placeholders@^1.1.2: dependencies: lru-cache "^7.14.1" -natural-compare-lite@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" - integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -5644,16 +4823,6 @@ object.assign@^4.1.7: has-symbols "^1.1.0" object-keys "^1.1.1" -object.fromentries@^2.0.8: - version "2.0.8" - resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.8.tgz#f7195d8a9b97bd95cbc1999ea939ecd1a2b00c65" - integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-abstract "^1.23.2" - es-object-atoms "^1.0.0" - object.getownpropertydescriptors@^2.1.8: version "2.1.8" resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.8.tgz#2f1fe0606ec1a7658154ccd4f728504f69667923" @@ -5667,25 +4836,6 @@ object.getownpropertydescriptors@^2.1.8: gopd "^1.0.1" safe-array-concat "^1.1.2" -object.groupby@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.3.tgz#9b125c36238129f6f7b61954a1e7176148d5002e" - integrity sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-abstract "^1.23.2" - -object.values@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.2.1.tgz#deed520a50809ff7f75a7cfd4bc64c7a038c6216" - integrity sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.3" - define-properties "^1.2.1" - es-object-atoms "^1.0.0" - on-finished@2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" @@ -5728,18 +4878,6 @@ openai@^4.87.3: formdata-node "^4.3.2" node-fetch "^2.6.7" -optionator@^0.9.3: - version "0.9.4" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" - integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g== - dependencies: - deep-is "^0.1.3" - fast-levenshtein "^2.0.6" - levn "^0.4.1" - prelude-ls "^1.2.1" - type-check "^0.4.0" - word-wrap "^1.2.5" - own-keys@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/own-keys/-/own-keys-1.0.1.tgz#e4006910a2bf913585289676eebd6f390cf51358" @@ -5749,23 +4887,6 @@ own-keys@^1.0.1: object-keys "^1.1.1" safe-push-apply "^1.0.0" -oxc-resolver@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/oxc-resolver/-/oxc-resolver-5.0.0.tgz#8aac10775e45f8656393bf9b90dda0f1b2f507cd" - integrity sha512-66fopyAqCN8Mx4tzNiBXWbk8asCSuxUWN62gwTc3yfRs7JfWhX/eVJCf+fUrfbNOdQVOWn+o8pAKllp76ysMXA== - optionalDependencies: - "@oxc-resolver/binding-darwin-arm64" "5.0.0" - "@oxc-resolver/binding-darwin-x64" "5.0.0" - "@oxc-resolver/binding-freebsd-x64" "5.0.0" - "@oxc-resolver/binding-linux-arm-gnueabihf" "5.0.0" - "@oxc-resolver/binding-linux-arm64-gnu" "5.0.0" - "@oxc-resolver/binding-linux-arm64-musl" "5.0.0" - "@oxc-resolver/binding-linux-x64-gnu" "5.0.0" - "@oxc-resolver/binding-linux-x64-musl" "5.0.0" - "@oxc-resolver/binding-wasm32-wasi" "5.0.0" - "@oxc-resolver/binding-win32-arm64-msvc" "5.0.0" - "@oxc-resolver/binding-win32-x64-msvc" "5.0.0" - p-event@4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/p-event/-/p-event-4.2.0.tgz#af4b049c8acd91ae81083ebd1e6f5cae2044c1b5" @@ -5785,13 +4906,6 @@ p-limit@^2.2.0: dependencies: p-try "^2.0.0" -p-limit@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" - integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== - dependencies: - yocto-queue "^0.1.0" - p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -5799,13 +4913,6 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" -p-locate@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" - integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== - dependencies: - p-limit "^3.0.2" - p-timeout@^3.0.0, p-timeout@^3.1.0: version "3.2.0" resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" @@ -5830,13 +4937,6 @@ package-json-from-dist@^1.0.0: resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== -parent-module@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" - integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== - dependencies: - callsites "^3.0.0" - parse-json@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" @@ -5918,11 +5018,6 @@ path-to-regexp@0.1.12: resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.12.tgz#d5e1a12e478a976d432ef3c58d534b9923164bb7" integrity sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ== -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== - peberminta@^0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/peberminta/-/peberminta-0.9.0.tgz#8ec9bc0eb84b7d368126e71ce9033501dca2a352" @@ -5938,11 +5033,6 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -picomatch@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" - integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== - pify@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" @@ -5965,18 +5055,6 @@ possible-typed-array-names@^1.0.0: resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg== -prelude-ls@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" - integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== - -prettier-linter-helpers@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" - integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== - dependencies: - fast-diff "^1.1.2" - prettier@^2.8.7: version "2.8.8" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" @@ -6156,7 +5234,7 @@ punycode.js@2.3.1: resolved "https://registry.yarnpkg.com/punycode.js/-/punycode.js-2.3.1.tgz#6b53e56ad75588234e79f4affa90972c7dd8cdb7" integrity sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA== -punycode@^2.1.0, punycode@^2.1.1, punycode@^2.3.1: +punycode@^2.1.1, punycode@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== @@ -6180,11 +5258,6 @@ querystringify@^2.1.1: resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== -queue-microtask@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" - integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== - railroad-diagrams@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz#eb7e6267548ddedfb899c1b90e57374559cddb7e" @@ -6277,11 +5350,6 @@ regenerator-runtime@^0.14.0: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f" integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== -regexp-tree@~0.1.1: - version "0.1.27" - resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.27.tgz#2198f0ef54518ffa743fe74d983b56ffd631b6cd" - integrity sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA== - regexp.prototype.flags@^1.5.3: version "1.5.4" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz#1ad6c62d44a259007e55b3970e00f746efbcaa19" @@ -6294,11 +5362,6 @@ regexp.prototype.flags@^1.5.3: gopd "^1.2.0" set-function-name "^2.0.2" -regexpp@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" - integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -6316,27 +5379,17 @@ resolve-cwd@^3.0.0: dependencies: resolve-from "^5.0.0" -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - resolve-from@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== -resolve-pkg-maps@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f" - integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw== - resolve.exports@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.1.tgz#05cfd5b3edf641571fd46fa608b610dda9ead999" integrity sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ== -resolve@^1.15.1, resolve@^1.20.0, resolve@^1.22.1, resolve@^1.22.4: +resolve@^1.15.1, resolve@^1.20.0: version "1.22.10" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== @@ -6355,17 +5408,12 @@ retry@0.13.1: resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== -reusify@^1.0.4: - version "1.1.0" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.1.0.tgz#0fe13b9522e1473f51b558ee796e08f11f9b489f" - integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw== - rfdc@^1.3.0: version "1.4.1" resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.4.1.tgz#778f76c4fb731d93414e8f925fbecf64cce7f6ca" integrity sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA== -rimraf@^3.0.0, rimraf@^3.0.2: +rimraf@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== @@ -6379,13 +5427,6 @@ run-applescript@^3.0.0: dependencies: execa "^0.10.0" -run-parallel@^1.1.9: - version "1.2.0" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" - integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== - dependencies: - queue-microtask "^1.2.2" - safe-array-concat@^1.1.2, safe-array-concat@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.3.tgz#c9e54ec4f603b0bbb8e7e5007a5ee7aecd1538c3" @@ -6429,13 +5470,6 @@ safe-regex-test@^1.1.0: es-errors "^1.3.0" is-regex "^1.2.1" -safe-regex@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-2.1.1.tgz#f7128f00d056e2fe5c11e81a1324dd974aadced2" - integrity sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A== - dependencies: - regexp-tree "~0.1.1" - "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -6462,7 +5496,7 @@ selderee@^0.6.0: dependencies: parseley "^0.7.0" -semver@7.x, semver@^7.0.0, semver@^7.3.2, semver@^7.3.7, semver@^7.3.8, semver@^7.5.3, semver@^7.6.3: +semver@7.x, semver@^7.3.2, semver@^7.5.3: version "7.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.1.tgz#abd5098d82b18c6c81f6074ff2647fd3e7220c9f" integrity sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA== @@ -6701,11 +5735,6 @@ sqlstring@^2.3.2: resolved "https://registry.yarnpkg.com/sqlstring/-/sqlstring-2.3.3.tgz#2ddc21f03bce2c387ed60680e739922c65751d0c" integrity sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg== -stable-hash@^0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/stable-hash/-/stable-hash-0.0.5.tgz#94e8837aaeac5b4d0f631d2972adef2924b40269" - integrity sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA== - stack-utils@^2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" @@ -6785,7 +5814,7 @@ string.prototype.trim@^1.2.10: es-object-atoms "^1.0.0" has-property-descriptors "^1.0.2" -string.prototype.trimend@^1.0.8, string.prototype.trimend@^1.0.9: +string.prototype.trimend@^1.0.9: version "1.0.9" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz#62e2731272cd285041b36596054e9f66569b6942" integrity sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ== @@ -6934,24 +5963,11 @@ test-exclude@^6.0.0: glob "^7.1.4" minimatch "^3.0.4" -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== - throat@^6.0.1: version "6.0.2" resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.2.tgz#51a3fbb5e11ae72e2cf74861ed5c8020f89f29fe" integrity sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ== -tinyglobby@^0.2.12: - version "0.2.12" - resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.12.tgz#ac941a42e0c5773bd0b5d08f32de82e74a1a61b5" - integrity sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww== - dependencies: - fdir "^6.4.3" - picomatch "^4.0.2" - titleize@2: version "2.1.0" resolved "https://registry.yarnpkg.com/titleize/-/titleize-2.1.0.tgz#5530de07c22147a0488887172b5bd94f5b30a48f" @@ -7064,7 +6080,7 @@ ts-node@^10.9.2: v8-compile-cache-lib "^3.0.1" yn "3.1.1" -tsconfig-paths@^3.14.0, tsconfig-paths@^3.15.0: +tsconfig-paths@^3.14.0: version "3.15.0" resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz#5299ec605e55b1abb23ec939ef15edaf483070d4" integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg== @@ -7074,45 +6090,26 @@ tsconfig-paths@^3.14.0, tsconfig-paths@^3.15.0: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^1.10.0, tslib@^1.8.1, tslib@^1.9.3: +tslib@^1.10.0, tslib@^1.9.3: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.1, tslib@^2.1.0, tslib@^2.2.0, tslib@^2.4.0, tslib@^2.5.0: +tslib@^2.0.1, tslib@^2.1.0, tslib@^2.2.0, tslib@^2.5.0: version "2.8.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== -tsutils@^3.21.0: - version "3.21.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" - integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== - dependencies: - tslib "^1.8.1" - tunnel@0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c" integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg== -type-check@^0.4.0, type-check@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" - integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== - dependencies: - prelude-ls "^1.2.1" - type-detect@4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== -type-fest@^0.20.2: - version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" - integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== - type-fest@^0.21.3: version "0.21.3" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" @@ -7288,13 +6285,6 @@ update-browserslist-db@^1.1.1: escalade "^3.2.0" picocolors "^1.1.1" -uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== - dependencies: - punycode "^2.1.0" - url-parse@^1.5.3: version "1.5.10" resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" @@ -7551,11 +6541,6 @@ wkx@^0.5.0: dependencies: "@types/node" "*" -word-wrap@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" - integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== - workerpool@^9.2.0: version "9.2.0" resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-9.2.0.tgz#f74427cbb61234708332ed8ab9cbf56dcb1c4371" @@ -7689,11 +6674,6 @@ yn@3.1.1: resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== -yocto-queue@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" - integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== - zen-observable-ts@^0.8.21: version "0.8.21" resolved "https://registry.yarnpkg.com/zen-observable-ts/-/zen-observable-ts-0.8.21.tgz#85d0031fbbde1eba3cd07d3ba90da241215f421d" diff --git a/biome.json b/biome.json index 419076f6c..82ba8f18f 100644 --- a/biome.json +++ b/biome.json @@ -73,6 +73,7 @@ "useBlockStatements": "error", "useConsistentBuiltinInstantiation": "error", "useConst": "error", + "useImportType": "error", "useSingleVarDeclarator": "error" }, "suspicious": { diff --git a/package.json b/package.json index df99a831a..a8f307a15 100644 --- a/package.json +++ b/package.json @@ -13,5 +13,8 @@ "dependencies": { "auto-changelog": "^2.4.0", "uuid": "^8.3.2" + }, + "devDependencies": { + "@biomejs/biome": "1.9.4" } } diff --git a/yarn.lock b/yarn.lock index 2c8f9b681..358d08f46 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,60 @@ # yarn lockfile v1 +"@biomejs/biome@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-1.9.4.tgz#89766281cbc3a0aae865a7ff13d6aaffea2842bf" + integrity sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog== + optionalDependencies: + "@biomejs/cli-darwin-arm64" "1.9.4" + "@biomejs/cli-darwin-x64" "1.9.4" + "@biomejs/cli-linux-arm64" "1.9.4" + "@biomejs/cli-linux-arm64-musl" "1.9.4" + "@biomejs/cli-linux-x64" "1.9.4" + "@biomejs/cli-linux-x64-musl" "1.9.4" + "@biomejs/cli-win32-arm64" "1.9.4" + "@biomejs/cli-win32-x64" "1.9.4" + +"@biomejs/cli-darwin-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz#dfa376d23a54a2d8f17133c92f23c1bf2e62509f" + integrity sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw== + +"@biomejs/cli-darwin-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz#eafc2ce3849d385fc02238aad1ca4a73395a64d9" + integrity sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg== + +"@biomejs/cli-linux-arm64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz#d780c3e01758fc90f3268357e3f19163d1f84fca" + integrity sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA== + +"@biomejs/cli-linux-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz#8ed1dd0e89419a4b66a47f95aefb8c46ae6041c9" + integrity sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g== + +"@biomejs/cli-linux-x64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz#f36982b966bd671a36671e1de4417963d7db15fb" + integrity sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg== + +"@biomejs/cli-linux-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz#a0a7f56680c76b8034ddc149dbf398bdd3a462e8" + integrity sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg== + +"@biomejs/cli-win32-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz#e2ef4e0084e76b7e26f0fc887c5ef1265ea56200" + integrity sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg== + +"@biomejs/cli-win32-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz#4c7afa90e3970213599b4095e62f87e5972b2340" + integrity sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA== + auto-changelog@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/auto-changelog/-/auto-changelog-2.4.0.tgz#a2d57d49b70ada7ca2e7c6a20a71572561d19cd9" From 987582c3ef753c287b0d1f1d70b05c0b2f315340 Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Wed, 30 Apr 2025 09:29:09 +0200 Subject: [PATCH 12/13] Revert "use root biome config for backend, add useImportType rule" This reverts commit bb8132791557fb9dcbf117ff7c3622a83e2e3730. --- backend/biome.json | 147 +++ .../dltConnector/DltConnectorClient.test.ts | 2 +- .../apis/dltConnector/DltConnectorClient.ts | 6 +- .../dltConnector/model/TransactionError.ts | 2 +- .../dltConnector/model/TransactionRecipe.ts | 2 +- .../dltConnector/model/TransactionResult.ts | 4 +- backend/src/apis/gms/model/GmsUser.ts | 2 +- backend/src/apis/humhub/HumHubClient.ts | 12 +- .../src/apis/humhub/__mocks__/HumHubClient.ts | 4 +- backend/src/apis/humhub/__mocks__/syncUser.ts | 4 +- .../humhub/logging/AccountLogging.view.ts | 2 +- .../humhub/logging/PostUserLogging.view.ts | 2 +- .../humhub/logging/ProfileLogging.view.ts | 2 +- backend/src/apis/humhub/model/AbstractUser.ts | 2 +- backend/src/apis/humhub/model/Account.ts | 4 +- backend/src/apis/humhub/model/GetUser.ts | 2 +- backend/src/apis/humhub/model/PostUser.ts | 2 +- backend/src/apis/humhub/model/Profile.ts | 4 +- .../src/apis/humhub/model/SpacesResponse.ts | 2 +- .../src/apis/humhub/model/UsersResponse.ts | 2 +- backend/src/apis/humhub/syncUser.ts | 4 +- backend/src/apis/openai/OpenaiClient.ts | 4 +- backend/src/auth/CustomJwtPayload.ts | 2 +- backend/src/auth/JWT.ts | 2 +- backend/src/auth/Role.ts | 2 +- backend/src/data/Contribution.logic.ts | 4 +- .../src/data/ContributionMessage.builder.ts | 4 +- backend/src/data/PublishName.logic.ts | 2 +- backend/src/data/UserLogic.ts | 6 +- backend/src/emails/sendEmailVariants.test.ts | 4 +- backend/src/emails/sendEmailVariants.ts | 2 +- .../event/EVENT_ADMIN_CONTRIBUTION_CONFIRM.ts | 8 +- .../event/EVENT_ADMIN_CONTRIBUTION_CREATE.ts | 8 +- .../event/EVENT_ADMIN_CONTRIBUTION_DELETE.ts | 8 +- .../event/EVENT_ADMIN_CONTRIBUTION_DENY.ts | 8 +- .../EVENT_ADMIN_CONTRIBUTION_LINK_CREATE.ts | 8 +- .../EVENT_ADMIN_CONTRIBUTION_LINK_DELETE.ts | 6 +- .../EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE.ts | 8 +- ...EVENT_ADMIN_CONTRIBUTION_MESSAGE_CREATE.ts | 8 +- .../event/EVENT_ADMIN_CONTRIBUTION_UPDATE.ts | 8 +- backend/src/event/EVENT_ADMIN_USER_DELETE.ts | 4 +- .../src/event/EVENT_ADMIN_USER_ROLE_SET.ts | 4 +- .../src/event/EVENT_ADMIN_USER_UNDELETE.ts | 4 +- .../src/event/EVENT_CONTRIBUTION_CREATE.ts | 8 +- .../src/event/EVENT_CONTRIBUTION_DELETE.ts | 8 +- .../event/EVENT_CONTRIBUTION_LINK_REDEEM.ts | 12 +- .../EVENT_CONTRIBUTION_MESSAGE_CREATE.ts | 8 +- .../src/event/EVENT_CONTRIBUTION_UPDATE.ts | 8 +- .../EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION.ts | 4 +- .../event/EVENT_EMAIL_ADMIN_CONFIRMATION.ts | 4 +- backend/src/event/EVENT_EMAIL_CONFIRMATION.ts | 4 +- .../src/event/EVENT_EMAIL_FORGOT_PASSWORD.ts | 4 +- .../src/event/EVENT_NEWSLETTER_SUBSCRIBE.ts | 4 +- .../src/event/EVENT_NEWSLETTER_UNSUBSCRIBE.ts | 4 +- .../event/EVENT_TRANSACTION_LINK_CREATE.ts | 8 +- .../event/EVENT_TRANSACTION_LINK_DELETE.ts | 6 +- .../event/EVENT_TRANSACTION_LINK_REDEEM.ts | 8 +- .../src/event/EVENT_TRANSACTION_RECEIVE.ts | 8 +- backend/src/event/EVENT_TRANSACTION_SEND.ts | 8 +- .../src/event/EVENT_USER_ACTIVATE_ACCOUNT.ts | 4 +- backend/src/event/EVENT_USER_INFO_UPDATE.ts | 4 +- backend/src/event/EVENT_USER_LOGIN.ts | 4 +- backend/src/event/EVENT_USER_LOGOUT.ts | 4 +- backend/src/event/EVENT_USER_REGISTER.ts | 4 +- backend/src/event/Event.ts | 16 +- .../client/1_0/AuthenticationClient.ts | 4 +- .../federation/client/1_0/FederationClient.ts | 6 +- .../federation/client/1_0/SendCoinsClient.ts | 4 +- .../PublicCommunityInfoLogging.view.ts | 2 +- .../1_0/logging/SendCoinsArgsLogging.view.ts | 2 +- .../logging/SendCoinsResultLogging.view.ts | 2 +- .../client/AuthenticationClientFactory.ts | 2 +- .../client/FederationClientFactory.ts | 2 +- .../client/SendCoinsClientFactory.ts | 2 +- .../federation/validateCommunities.test.ts | 6 +- backend/src/federation/validateCommunities.ts | 2 +- backend/src/graphql/directive/isAuthorized.ts | 6 +- .../src/graphql/model/AdminCommunityView.ts | 6 +- backend/src/graphql/model/AdminUser.ts | 2 +- backend/src/graphql/model/ChatGptMessage.ts | 2 +- backend/src/graphql/model/Community.ts | 2 +- backend/src/graphql/model/Contribution.ts | 4 +- backend/src/graphql/model/ContributionLink.ts | 2 +- .../src/graphql/model/ContributionMessage.ts | 4 +- .../src/graphql/model/FederatedCommunity.ts | 2 +- backend/src/graphql/model/ProjectBranding.ts | 2 +- backend/src/graphql/model/Space.ts | 2 +- backend/src/graphql/model/SpaceList.ts | 2 +- backend/src/graphql/model/Transaction.ts | 2 +- backend/src/graphql/model/TransactionLink.ts | 2 +- .../graphql/model/UnconfirmedContribution.ts | 4 +- backend/src/graphql/model/User.ts | 4 +- backend/src/graphql/model/UserAdmin.ts | 2 +- backend/src/graphql/model/UserContact.ts | 2 +- .../src/graphql/resolver/AiChatResolver.ts | 4 +- .../src/graphql/resolver/BalanceResolver.ts | 2 +- .../resolver/CommunityResolver.test.ts | 4 +- .../src/graphql/resolver/CommunityResolver.ts | 4 +- .../resolver/ContributionLinkResolver.test.ts | 4 +- .../resolver/ContributionLinkResolver.ts | 6 +- .../ContributionMessageResolver.test.ts | 4 +- .../resolver/ContributionMessageResolver.ts | 10 +- .../resolver/ContributionResolver.test.ts | 6 +- .../graphql/resolver/ContributionResolver.ts | 14 +- .../graphql/resolver/EmailOptinCodes.test.ts | 4 +- backend/src/graphql/resolver/GdtResolver.ts | 4 +- .../src/graphql/resolver/KlicktippResolver.ts | 2 +- .../resolver/ProjectBrandingResolver.ts | 2 +- .../graphql/resolver/StatisticsResolver.ts | 2 +- .../resolver/TransactionLinkResolver.test.ts | 8 +- .../resolver/TransactionLinkResolver.ts | 8 +- .../resolver/TransactionResolver.test.ts | 8 +- .../graphql/resolver/TransactionResolver.ts | 8 +- .../src/graphql/resolver/UserResolver.test.ts | 6 +- backend/src/graphql/resolver/UserResolver.ts | 22 +- .../src/graphql/resolver/semaphore.test.ts | 4 +- .../graphql/resolver/util/Location2Point.ts | 2 +- .../util/authenticateGmsUserPlayground.ts | 2 +- .../src/graphql/resolver/util/communities.ts | 4 +- .../util/compareGmsRelevantUserSettings.ts | 8 +- .../graphql/resolver/util/creations.test.ts | 6 +- .../src/graphql/resolver/util/creations.ts | 4 +- .../resolver/util/extractGraphQLFields.ts | 6 +- .../resolver/util/findContributionMessages.ts | 2 +- .../resolver/util/findContributions.ts | 6 +- .../resolver/util/findUserByIdentifier.ts | 4 +- .../util/findUserByIdentifiers.test.ts | 8 +- .../src/graphql/resolver/util/findUsers.ts | 2 +- .../resolver/util/getTransactionList.ts | 2 +- .../graphql/resolver/util/modifyUserRole.ts | 2 +- .../resolver/util/processXComSendCoins.ts | 4 +- .../sendTransactionsToDltConnector.test.ts | 6 +- .../graphql/resolver/util/sendUserToGms.ts | 2 +- .../util/settlePendingSenderTransaction.ts | 4 +- .../graphql/resolver/util/storeForeignUser.ts | 4 +- .../src/graphql/resolver/util/syncHumhub.ts | 8 +- .../resolver/util/transactionLinkList.ts | 8 +- .../resolver/util/validateAlias.test.ts | 4 +- backend/src/graphql/schema.ts | 2 +- .../validator/ContributionStatusArray.ts | 2 +- backend/src/graphql/validator/DateString.ts | 6 +- backend/src/graphql/validator/Decimal.ts | 8 +- backend/src/graphql/validator/Location.ts | 8 +- .../AbstractUnconfirmedContribution.role.ts | 10 +- .../UnconfirmedContributionAdmin.role.ts | 10 +- ...nfirmedContributionAdminAddMessage.role.ts | 10 +- .../UnconfirmedContributionUser.role.ts | 8 +- ...onfirmedContributionUserAddMessage.role.ts | 8 +- .../UpdateUnconfirmedContribution.context.ts | 10 +- backend/src/logging/BalanceLogging.view.ts | 2 +- backend/src/logging/DecayLogging.view.ts | 2 +- backend/src/password/EncryptorUtils.ts | 4 +- backend/src/password/PasswordEncryptor.ts | 2 +- .../src/password/__mocks__/EncryptorUtils.ts | 2 +- backend/src/seeds/contributionLink/index.ts | 2 +- backend/src/seeds/creation/index.ts | 2 +- backend/src/seeds/factory/contributionLink.ts | 6 +- backend/src/seeds/factory/creation.ts | 4 +- backend/src/seeds/factory/transactionLink.ts | 4 +- backend/src/seeds/factory/user.ts | 4 +- backend/src/seeds/transactionLink/index.ts | 2 +- backend/src/seeds/users/bibi-bloxberg.ts | 2 +- backend/src/seeds/users/bob-baumeister.ts | 2 +- backend/src/seeds/users/garrick-ollivander.ts | 2 +- backend/src/seeds/users/peter-lustig.ts | 2 +- .../src/seeds/users/raeuber-hotzenplotz.ts | 2 +- backend/src/seeds/users/stephen-hawking.ts | 2 +- backend/src/server/context.ts | 10 +- backend/src/server/createServer.ts | 6 +- backend/src/typeorm/connection.ts | 2 +- backend/src/util/calculateSenderBalance.ts | 4 +- backend/src/util/communityUser.ts | 4 +- backend/src/util/decay.ts | 2 +- backend/src/util/klicktipp.test.ts | 4 +- backend/src/util/utilities.ts | 2 +- backend/src/util/validate.ts | 4 +- backend/src/util/virtualTransactions.ts | 6 +- backend/yarn.lock | 1060 ++++++++++++++++- biome.json | 1 - package.json | 3 - yarn.lock | 54 - 181 files changed, 1589 insertions(+), 492 deletions(-) create mode 100644 backend/biome.json diff --git a/backend/biome.json b/backend/biome.json new file mode 100644 index 000000000..84d3a3a29 --- /dev/null +++ b/backend/biome.json @@ -0,0 +1,147 @@ +{ + "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", + "vcs": { "enabled": false, "clientKind": "git", "useIgnoreFile": false }, + "files": { + "ignoreUnknown": false, + "ignore": ["build", "node_modules", "coverage"], + "include": ["./src/**/*.js", "./src/**/*.ts"] + }, + "formatter": { + "enabled": true, + "useEditorconfig": true, + "formatWithErrors": false, + "indentStyle": "space", + "indentWidth": 2, + "lineEnding": "lf", + "lineWidth": 100, + "attributePosition": "auto", + "bracketSpacing": true + }, + "organizeImports": { "enabled": true }, + "linter": { + "enabled": true, + "rules": { + "recommended": false, + "complexity": { + "noExtraBooleanCast": "error", + "noMultipleSpacesInRegularExpressionLiterals": "error", + "noUselessCatch": "error", + "noUselessConstructor": "error", + "noUselessLoneBlockStatements": "error", + "noUselessRename": "error", + "noUselessTernary": "error", + "noUselessUndefinedInitialization": "error", + "noVoid": "error", + "noWith": "error", + "useLiteralKeys": "error", + "useRegexLiterals": "error" + }, + "correctness": { + "noConstAssign": "error", + "noConstantCondition": "error", + "noEmptyCharacterClassInRegex": "error", + "noEmptyPattern": "error", + "noGlobalObjectCalls": "error", + "noInnerDeclarations": "error", + "noInvalidConstructorSuper": "error", + "noInvalidUseBeforeDeclaration": "error", + "noNewSymbol": "error", + "noNodejsModules": "off", + "noNonoctalDecimalEscape": "error", + "noPrecisionLoss": "error", + "noSelfAssign": "error", + "noSetterReturn": "error", + "noSwitchDeclarations": "error", + "noUndeclaredVariables": "error", + "noUnreachable": "error", + "noUnreachableSuper": "error", + "noUnsafeFinally": "error", + "noUnsafeOptionalChaining": "error", + "noUnusedLabels": "error", + "noUnusedVariables": "error", + "useArrayLiterals": "error", + "useIsNan": "error", + "useValidForDirection": "error", + "useYield": "error" + }, + "security": { "noGlobalEval": "error" }, + "style": { + "noCommaOperator": "error", + "noDefaultExport": "error", + "noVar": "warn", + "noYodaExpression": "error", + "useBlockStatements": "error", + "useConsistentBuiltinInstantiation": "error", + "useConst": "error", + "useSingleVarDeclarator": "error" + }, + "suspicious": { + "noAsyncPromiseExecutor": "error", + "noCatchAssign": "error", + "noClassAssign": "error", + "noCompareNegZero": "error", + "noConsole": "error", + "noControlCharactersInRegex": "error", + "noDebugger": "error", + "noDoubleEquals": "error", + "noDuplicateCase": "error", + "noDuplicateClassMembers": "error", + "noDuplicateObjectKeys": "error", + "noDuplicateParameters": "error", + "noEmptyBlockStatements": "error", + "noFallthroughSwitchClause": "error", + "noFunctionAssign": "error", + "noGlobalAssign": "error", + "noImportAssign": "error", + "noMisleadingCharacterClass": "error", + "noPrototypeBuiltins": "error", + "noRedeclare": "error", + "noSelfCompare": "error", + "noShadowRestrictedNames": "error", + "noSparseArray": "error", + "noUnsafeNegation": "error", + "useDefaultSwitchClauseLast": "error", + "useGetterReturn": "error", + "useValidTypeof": "error" + } + }, + "ignore": ["**/node_modules", "**/*.min.js", "**/build", "**/coverage"] + }, + "javascript": { + "formatter": { + "jsxQuoteStyle": "single", + "quoteProperties": "asNeeded", + "trailingCommas": "all", + "semicolons": "asNeeded", + "arrowParentheses": "always", + "bracketSameLine": false, + "quoteStyle": "single", + "attributePosition": "auto", + "bracketSpacing": true + }, + "globals": [ + "document", + "navigator", + "window", + "describe", + "test", + "it", + "expect", + "beforeAll", + "beforeEach", + "afterAll", + "afterEach", + "jest" + ], + "parser": { + "unsafeParameterDecoratorsEnabled": true + } + }, + "overrides": [ + { + "include": ["*.ts", "*.tsx"], + "linter": { "rules": { "complexity": { "noVoid": "error" } } } + }, + { "include": ["*.test.ts"], "linter": { "rules": {} } } + ] +} diff --git a/backend/src/apis/dltConnector/DltConnectorClient.test.ts b/backend/src/apis/dltConnector/DltConnectorClient.test.ts index 88af5833f..f3ac103c1 100644 --- a/backend/src/apis/dltConnector/DltConnectorClient.test.ts +++ b/backend/src/apis/dltConnector/DltConnectorClient.test.ts @@ -1,4 +1,4 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { Transaction as DbTransaction } from '@entity/Transaction' import { Decimal } from 'decimal.js-light' diff --git a/backend/src/apis/dltConnector/DltConnectorClient.ts b/backend/src/apis/dltConnector/DltConnectorClient.ts index 948abde1f..860c64ee5 100644 --- a/backend/src/apis/dltConnector/DltConnectorClient.ts +++ b/backend/src/apis/dltConnector/DltConnectorClient.ts @@ -1,4 +1,4 @@ -import type { Transaction as DbTransaction } from '@entity/Transaction' +import { Transaction as DbTransaction } from '@entity/Transaction' import { GraphQLClient, gql } from 'graphql-request' import { CONFIG } from '@/config' @@ -6,8 +6,8 @@ import { TransactionTypeId } from '@/graphql/enum/TransactionTypeId' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' -import type { TransactionResult } from './model/TransactionResult' -import type { UserIdentifier } from './model/UserIdentifier' +import { TransactionResult } from './model/TransactionResult' +import { UserIdentifier } from './model/UserIdentifier' const sendTransaction = gql` mutation ($input: TransactionInput!) { diff --git a/backend/src/apis/dltConnector/model/TransactionError.ts b/backend/src/apis/dltConnector/model/TransactionError.ts index 0a1b7bb51..a2b1348a5 100644 --- a/backend/src/apis/dltConnector/model/TransactionError.ts +++ b/backend/src/apis/dltConnector/model/TransactionError.ts @@ -1,4 +1,4 @@ -import type { TransactionErrorType } from '@dltConnector/enum/TransactionErrorType' +import { TransactionErrorType } from '@dltConnector/enum/TransactionErrorType' export interface TransactionError { type: TransactionErrorType diff --git a/backend/src/apis/dltConnector/model/TransactionRecipe.ts b/backend/src/apis/dltConnector/model/TransactionRecipe.ts index c60d8ac25..edd7deadb 100644 --- a/backend/src/apis/dltConnector/model/TransactionRecipe.ts +++ b/backend/src/apis/dltConnector/model/TransactionRecipe.ts @@ -1,4 +1,4 @@ -import type { TransactionType } from '@dltConnector/enum/TransactionType' +import { TransactionType } from '@dltConnector/enum/TransactionType' export interface TransactionRecipe { id: number diff --git a/backend/src/apis/dltConnector/model/TransactionResult.ts b/backend/src/apis/dltConnector/model/TransactionResult.ts index 454bbfb10..510907429 100644 --- a/backend/src/apis/dltConnector/model/TransactionResult.ts +++ b/backend/src/apis/dltConnector/model/TransactionResult.ts @@ -1,5 +1,5 @@ -import type { TransactionError } from './TransactionError' -import type { TransactionRecipe } from './TransactionRecipe' +import { TransactionError } from './TransactionError' +import { TransactionRecipe } from './TransactionRecipe' export interface TransactionResult { error?: TransactionError diff --git a/backend/src/apis/gms/model/GmsUser.ts b/backend/src/apis/gms/model/GmsUser.ts index c68f2f24d..f97726772 100644 --- a/backend/src/apis/gms/model/GmsUser.ts +++ b/backend/src/apis/gms/model/GmsUser.ts @@ -1,4 +1,4 @@ -import type { User as dbUser } from '@entity/User' +import { User as dbUser } from '@entity/User' import { PublishNameLogic } from '@/data/PublishName.logic' // import { GmsPublishLocationType } from '@/graphql/enum/GmsPublishLocationType' diff --git a/backend/src/apis/humhub/HumHubClient.ts b/backend/src/apis/humhub/HumHubClient.ts index ec690b055..80eb37266 100644 --- a/backend/src/apis/humhub/HumHubClient.ts +++ b/backend/src/apis/humhub/HumHubClient.ts @@ -1,17 +1,17 @@ import { ProjectBranding } from '@entity/ProjectBranding' import { SignJWT } from 'jose' -import { type IRequestOptions, type IRestResponse, RestClient } from 'typed-rest-client' +import { IRequestOptions, IRestResponse, RestClient } from 'typed-rest-client' import { CONFIG } from '@/config' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' import { PostUserLoggingView } from './logging/PostUserLogging.view' -import type { GetUser } from './model/GetUser' -import type { PostUser } from './model/PostUser' -import type { Space } from './model/Space' -import type { SpacesResponse } from './model/SpacesResponse' -import type { UsersResponse } from './model/UsersResponse' +import { GetUser } from './model/GetUser' +import { PostUser } from './model/PostUser' +import { Space } from './model/Space' +import { SpacesResponse } from './model/SpacesResponse' +import { UsersResponse } from './model/UsersResponse' /** * HumHubClient as singleton class diff --git a/backend/src/apis/humhub/__mocks__/HumHubClient.ts b/backend/src/apis/humhub/__mocks__/HumHubClient.ts index bb834a5f6..2fac28324 100644 --- a/backend/src/apis/humhub/__mocks__/HumHubClient.ts +++ b/backend/src/apis/humhub/__mocks__/HumHubClient.ts @@ -1,9 +1,9 @@ import { User } from '@entity/User' import { UserContact } from '@entity/UserContact' -import type { IRestResponse } from 'typed-rest-client' +import { IRestResponse } from 'typed-rest-client' import { GetUser } from '@/apis/humhub/model/GetUser' -import type { PostUser } from '@/apis/humhub/model/PostUser' +import { PostUser } from '@/apis/humhub/model/PostUser' import { UsersResponse } from '@/apis/humhub/model/UsersResponse' /** diff --git a/backend/src/apis/humhub/__mocks__/syncUser.ts b/backend/src/apis/humhub/__mocks__/syncUser.ts index c7284d5fc..7e0660da4 100644 --- a/backend/src/apis/humhub/__mocks__/syncUser.ts +++ b/backend/src/apis/humhub/__mocks__/syncUser.ts @@ -1,7 +1,7 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import { isHumhubUserIdenticalToDbUser } from '@/apis/humhub/compareHumhubUserDbUser' -import type { GetUser } from '@/apis/humhub/model/GetUser' +import { GetUser } from '@/apis/humhub/model/GetUser' export enum ExecutedHumhubAction { UPDATE, diff --git a/backend/src/apis/humhub/logging/AccountLogging.view.ts b/backend/src/apis/humhub/logging/AccountLogging.view.ts index 84392613b..e5a2df565 100644 --- a/backend/src/apis/humhub/logging/AccountLogging.view.ts +++ b/backend/src/apis/humhub/logging/AccountLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import type { Account } from '@/apis/humhub/model/Account' +import { Account } from '@/apis/humhub/model/Account' export class AccountLoggingView extends AbstractLoggingView { public constructor(private self: Account) { diff --git a/backend/src/apis/humhub/logging/PostUserLogging.view.ts b/backend/src/apis/humhub/logging/PostUserLogging.view.ts index 14449f06c..47123c08b 100644 --- a/backend/src/apis/humhub/logging/PostUserLogging.view.ts +++ b/backend/src/apis/humhub/logging/PostUserLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import type { PostUser } from '@/apis/humhub/model/PostUser' +import { PostUser } from '@/apis/humhub/model/PostUser' import { AccountLoggingView } from './AccountLogging.view' import { ProfileLoggingView } from './ProfileLogging.view' diff --git a/backend/src/apis/humhub/logging/ProfileLogging.view.ts b/backend/src/apis/humhub/logging/ProfileLogging.view.ts index 1103dc47e..a895522c6 100644 --- a/backend/src/apis/humhub/logging/ProfileLogging.view.ts +++ b/backend/src/apis/humhub/logging/ProfileLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import type { Profile } from '@/apis/humhub/model/Profile' +import { Profile } from '@/apis/humhub/model/Profile' export class ProfileLoggingView extends AbstractLoggingView { public constructor(private self: Profile) { diff --git a/backend/src/apis/humhub/model/AbstractUser.ts b/backend/src/apis/humhub/model/AbstractUser.ts index 0e4451863..abcf9dcda 100644 --- a/backend/src/apis/humhub/model/AbstractUser.ts +++ b/backend/src/apis/humhub/model/AbstractUser.ts @@ -1,4 +1,4 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import { Account } from './Account' import { Profile } from './Profile' diff --git a/backend/src/apis/humhub/model/Account.ts b/backend/src/apis/humhub/model/Account.ts index ba86e72f7..e6dc5173d 100644 --- a/backend/src/apis/humhub/model/Account.ts +++ b/backend/src/apis/humhub/model/Account.ts @@ -1,8 +1,8 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import { convertGradidoLanguageToHumhub } from '@/apis/humhub/convertLanguage' import { PublishNameLogic } from '@/data/PublishName.logic' -import type { PublishNameType } from '@/graphql/enum/PublishNameType' +import { PublishNameType } from '@/graphql/enum/PublishNameType' export class Account { public constructor(user: User) { diff --git a/backend/src/apis/humhub/model/GetUser.ts b/backend/src/apis/humhub/model/GetUser.ts index d8453da75..38c78dd43 100644 --- a/backend/src/apis/humhub/model/GetUser.ts +++ b/backend/src/apis/humhub/model/GetUser.ts @@ -1,4 +1,4 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import { AbstractUser } from './AbstractUser' diff --git a/backend/src/apis/humhub/model/PostUser.ts b/backend/src/apis/humhub/model/PostUser.ts index 780d1b7e8..b63c038cf 100644 --- a/backend/src/apis/humhub/model/PostUser.ts +++ b/backend/src/apis/humhub/model/PostUser.ts @@ -1,5 +1,5 @@ import { AbstractUser } from './AbstractUser' -import type { Password } from './Password' +import { Password } from './Password' // only add password as filed, rest the same as AbstractUser export class PostUser extends AbstractUser { diff --git a/backend/src/apis/humhub/model/Profile.ts b/backend/src/apis/humhub/model/Profile.ts index 8a4a200fb..9bef1a149 100644 --- a/backend/src/apis/humhub/model/Profile.ts +++ b/backend/src/apis/humhub/model/Profile.ts @@ -1,8 +1,8 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import { CONFIG } from '@/config' import { PublishNameLogic } from '@/data/PublishName.logic' -import type { PublishNameType } from '@/graphql/enum/PublishNameType' +import { PublishNameType } from '@/graphql/enum/PublishNameType' export class Profile { public constructor(user: User) { diff --git a/backend/src/apis/humhub/model/SpacesResponse.ts b/backend/src/apis/humhub/model/SpacesResponse.ts index f9c60805a..34e9df650 100644 --- a/backend/src/apis/humhub/model/SpacesResponse.ts +++ b/backend/src/apis/humhub/model/SpacesResponse.ts @@ -1,4 +1,4 @@ -import type { Space } from './Space' +import { Space } from './Space' export interface SpacesResponse { total: number diff --git a/backend/src/apis/humhub/model/UsersResponse.ts b/backend/src/apis/humhub/model/UsersResponse.ts index c2f93b85f..22379739c 100644 --- a/backend/src/apis/humhub/model/UsersResponse.ts +++ b/backend/src/apis/humhub/model/UsersResponse.ts @@ -1,4 +1,4 @@ -import type { GetUser } from './GetUser' +import { GetUser } from './GetUser' export class UsersResponse { total: number diff --git a/backend/src/apis/humhub/syncUser.ts b/backend/src/apis/humhub/syncUser.ts index 9753bd468..db9275e64 100644 --- a/backend/src/apis/humhub/syncUser.ts +++ b/backend/src/apis/humhub/syncUser.ts @@ -1,10 +1,10 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import { LogError } from '@/server/LogError' import { HumHubClient } from './HumHubClient' import { isHumhubUserIdenticalToDbUser } from './compareHumhubUserDbUser' -import type { GetUser } from './model/GetUser' +import { GetUser } from './model/GetUser' import { PostUser } from './model/PostUser' export enum ExecutedHumhubAction { diff --git a/backend/src/apis/openai/OpenaiClient.ts b/backend/src/apis/openai/OpenaiClient.ts index a5e733d9a..b0e8314a6 100644 --- a/backend/src/apis/openai/OpenaiClient.ts +++ b/backend/src/apis/openai/OpenaiClient.ts @@ -1,7 +1,7 @@ import { OpenaiThreads } from '@entity/OpenaiThreads' -import type { User } from '@entity/User' +import { User } from '@entity/User' import { OpenAI } from 'openai' -import type { Message } from 'openai/resources/beta/threads/messages' +import { Message } from 'openai/resources/beta/threads/messages' import { httpsAgent } from '@/apis/ConnectionAgents' import { CONFIG } from '@/config' diff --git a/backend/src/auth/CustomJwtPayload.ts b/backend/src/auth/CustomJwtPayload.ts index e82541daa..e20e5b272 100644 --- a/backend/src/auth/CustomJwtPayload.ts +++ b/backend/src/auth/CustomJwtPayload.ts @@ -1,4 +1,4 @@ -import type { JWTPayload } from 'jose' +import { JWTPayload } from 'jose' export interface CustomJwtPayload extends JWTPayload { gradidoID: string diff --git a/backend/src/auth/JWT.ts b/backend/src/auth/JWT.ts index 7f5fc468d..870ec2871 100644 --- a/backend/src/auth/JWT.ts +++ b/backend/src/auth/JWT.ts @@ -3,7 +3,7 @@ import { SignJWT, jwtVerify } from 'jose' import { CONFIG } from '@/config/' import { LogError } from '@/server/LogError' -import type { CustomJwtPayload } from './CustomJwtPayload' +import { CustomJwtPayload } from './CustomJwtPayload' export const decode = async (token: string): Promise => { if (!token) { diff --git a/backend/src/auth/Role.ts b/backend/src/auth/Role.ts index f5a6236b7..a2f13ec20 100644 --- a/backend/src/auth/Role.ts +++ b/backend/src/auth/Role.ts @@ -1,4 +1,4 @@ -import type { RIGHTS } from './RIGHTS' +import { RIGHTS } from './RIGHTS' export class Role { id: string diff --git a/backend/src/data/Contribution.logic.ts b/backend/src/data/Contribution.logic.ts index bf509c144..43b15bf3b 100644 --- a/backend/src/data/Contribution.logic.ts +++ b/backend/src/data/Contribution.logic.ts @@ -1,5 +1,5 @@ -import type { Contribution } from '@entity/Contribution' -import type { Decimal } from 'decimal.js-light' +import { Contribution } from '@entity/Contribution' +import { Decimal } from 'decimal.js-light' import { getUserCreation, diff --git a/backend/src/data/ContributionMessage.builder.ts b/backend/src/data/ContributionMessage.builder.ts index ae7da924c..32abd14ae 100644 --- a/backend/src/data/ContributionMessage.builder.ts +++ b/backend/src/data/ContributionMessage.builder.ts @@ -1,6 +1,6 @@ -import type { Contribution } from '@entity/Contribution' +import { Contribution } from '@entity/Contribution' import { ContributionMessage } from '@entity/ContributionMessage' -import type { User } from '@entity/User' +import { User } from '@entity/User' import { ContributionMessageType } from '@/graphql/enum/ContributionMessageType' diff --git a/backend/src/data/PublishName.logic.ts b/backend/src/data/PublishName.logic.ts index b43eead70..af18fd6cb 100644 --- a/backend/src/data/PublishName.logic.ts +++ b/backend/src/data/PublishName.logic.ts @@ -1,4 +1,4 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import XRegExp from 'xregexp' import { PublishNameType } from '@/graphql/enum/PublishNameType' diff --git a/backend/src/data/UserLogic.ts b/backend/src/data/UserLogic.ts index 83209d202..fbef2e609 100644 --- a/backend/src/data/UserLogic.ts +++ b/backend/src/data/UserLogic.ts @@ -1,7 +1,7 @@ -import type { User } from '@entity/User' -import type { UserRole } from '@entity/UserRole' +import { User } from '@entity/User' +import { UserRole } from '@entity/UserRole' -import type { RoleNames } from '@enum/RoleNames' +import { RoleNames } from '@enum/RoleNames' export class UserLogic { public constructor(private self: User) {} diff --git a/backend/src/emails/sendEmailVariants.test.ts b/backend/src/emails/sendEmailVariants.test.ts index e52e891bc..5028e4dd4 100644 --- a/backend/src/emails/sendEmailVariants.test.ts +++ b/backend/src/emails/sendEmailVariants.test.ts @@ -1,5 +1,5 @@ -import type { Connection } from '@dbTools/typeorm' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { Connection } from '@dbTools/typeorm' +import { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { testEnvironment } from '@test/helpers' diff --git a/backend/src/emails/sendEmailVariants.ts b/backend/src/emails/sendEmailVariants.ts index 4792f8c7a..3373f17ad 100644 --- a/backend/src/emails/sendEmailVariants.ts +++ b/backend/src/emails/sendEmailVariants.ts @@ -1,4 +1,4 @@ -import type { Decimal } from 'decimal.js-light' +import { Decimal } from 'decimal.js-light' import { CONFIG } from '@/config' import { decimalSeparatorByLanguage } from '@/util/utilities' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CONFIRM.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CONFIRM.ts index d61ee6407..36cabba63 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CONFIRM.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CONFIRM.ts @@ -1,7 +1,7 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Contribution as DbContribution } from '@entity/Contribution' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CREATE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CREATE.ts index 04f4d08b9..48e3151f5 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CREATE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_CREATE.ts @@ -1,7 +1,7 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Contribution as DbContribution } from '@entity/Contribution' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DELETE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DELETE.ts index 496645a3d..d2a7d4df0 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DELETE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DELETE.ts @@ -1,7 +1,7 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Contribution as DbContribution } from '@entity/Contribution' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DENY.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DENY.ts index 1d24cbf85..6c1916dfe 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DENY.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_DENY.ts @@ -1,7 +1,7 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Contribution as DbContribution } from '@entity/Contribution' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_CREATE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_CREATE.ts index 9ae7cfd1f..1655bf3d3 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_CREATE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_CREATE.ts @@ -1,7 +1,7 @@ -import type { ContributionLink as DbContributionLink } from '@entity/ContributionLink' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_DELETE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_DELETE.ts index 9413b217a..c01be5f25 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_DELETE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_DELETE.ts @@ -1,6 +1,6 @@ -import type { ContributionLink as DbContributionLink } from '@entity/ContributionLink' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE.ts index 64f32deb3..8a183b0d5 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE.ts @@ -1,7 +1,7 @@ -import type { ContributionLink as DbContributionLink } from '@entity/ContributionLink' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_MESSAGE_CREATE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_MESSAGE_CREATE.ts index 1fc2a36f1..d4d5b9003 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_MESSAGE_CREATE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_MESSAGE_CREATE.ts @@ -1,7 +1,7 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Contribution as DbContribution } from '@entity/Contribution' +import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_UPDATE.ts b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_UPDATE.ts index 29fbc5cee..a19bdf0ae 100644 --- a/backend/src/event/EVENT_ADMIN_CONTRIBUTION_UPDATE.ts +++ b/backend/src/event/EVENT_ADMIN_CONTRIBUTION_UPDATE.ts @@ -1,7 +1,7 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Contribution as DbContribution } from '@entity/Contribution' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_USER_DELETE.ts b/backend/src/event/EVENT_ADMIN_USER_DELETE.ts index c52172a40..a75e2b176 100644 --- a/backend/src/event/EVENT_ADMIN_USER_DELETE.ts +++ b/backend/src/event/EVENT_ADMIN_USER_DELETE.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_USER_ROLE_SET.ts b/backend/src/event/EVENT_ADMIN_USER_ROLE_SET.ts index 8d8dc4b81..9f09e2e3d 100644 --- a/backend/src/event/EVENT_ADMIN_USER_ROLE_SET.ts +++ b/backend/src/event/EVENT_ADMIN_USER_ROLE_SET.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_ADMIN_USER_UNDELETE.ts b/backend/src/event/EVENT_ADMIN_USER_UNDELETE.ts index 01033b113..51b5764d2 100644 --- a/backend/src/event/EVENT_ADMIN_USER_UNDELETE.ts +++ b/backend/src/event/EVENT_ADMIN_USER_UNDELETE.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_CONTRIBUTION_CREATE.ts b/backend/src/event/EVENT_CONTRIBUTION_CREATE.ts index 45669334a..108ef7d04 100644 --- a/backend/src/event/EVENT_CONTRIBUTION_CREATE.ts +++ b/backend/src/event/EVENT_CONTRIBUTION_CREATE.ts @@ -1,7 +1,7 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Contribution as DbContribution } from '@entity/Contribution' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_CONTRIBUTION_DELETE.ts b/backend/src/event/EVENT_CONTRIBUTION_DELETE.ts index 00dca2ce0..2b4064df7 100644 --- a/backend/src/event/EVENT_CONTRIBUTION_DELETE.ts +++ b/backend/src/event/EVENT_CONTRIBUTION_DELETE.ts @@ -1,7 +1,7 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Contribution as DbContribution } from '@entity/Contribution' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_CONTRIBUTION_LINK_REDEEM.ts b/backend/src/event/EVENT_CONTRIBUTION_LINK_REDEEM.ts index b01cea653..5ee1da0e3 100644 --- a/backend/src/event/EVENT_CONTRIBUTION_LINK_REDEEM.ts +++ b/backend/src/event/EVENT_CONTRIBUTION_LINK_REDEEM.ts @@ -1,9 +1,9 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { ContributionLink as DbContributionLink } from '@entity/ContributionLink' -import type { Event as DbEvent } from '@entity/Event' -import type { Transaction as DbTransaction } from '@entity/Transaction' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Contribution as DbContribution } from '@entity/Contribution' +import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' +import { Event as DbEvent } from '@entity/Event' +import { Transaction as DbTransaction } from '@entity/Transaction' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_CONTRIBUTION_MESSAGE_CREATE.ts b/backend/src/event/EVENT_CONTRIBUTION_MESSAGE_CREATE.ts index cb526370c..438b7f22c 100644 --- a/backend/src/event/EVENT_CONTRIBUTION_MESSAGE_CREATE.ts +++ b/backend/src/event/EVENT_CONTRIBUTION_MESSAGE_CREATE.ts @@ -1,7 +1,7 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Contribution as DbContribution } from '@entity/Contribution' +import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_CONTRIBUTION_UPDATE.ts b/backend/src/event/EVENT_CONTRIBUTION_UPDATE.ts index c01d98643..ff416c428 100644 --- a/backend/src/event/EVENT_CONTRIBUTION_UPDATE.ts +++ b/backend/src/event/EVENT_CONTRIBUTION_UPDATE.ts @@ -1,7 +1,7 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Contribution as DbContribution } from '@entity/Contribution' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION.ts b/backend/src/event/EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION.ts index 054c934a0..fc73c6e9d 100644 --- a/backend/src/event/EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION.ts +++ b/backend/src/event/EVENT_EMAIL_ACCOUNT_MULTIREGISTRATION.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_EMAIL_ADMIN_CONFIRMATION.ts b/backend/src/event/EVENT_EMAIL_ADMIN_CONFIRMATION.ts index d8bc7394b..1d229b563 100644 --- a/backend/src/event/EVENT_EMAIL_ADMIN_CONFIRMATION.ts +++ b/backend/src/event/EVENT_EMAIL_ADMIN_CONFIRMATION.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_EMAIL_CONFIRMATION.ts b/backend/src/event/EVENT_EMAIL_CONFIRMATION.ts index 26b1d37e9..56a3cafc8 100644 --- a/backend/src/event/EVENT_EMAIL_CONFIRMATION.ts +++ b/backend/src/event/EVENT_EMAIL_CONFIRMATION.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_EMAIL_FORGOT_PASSWORD.ts b/backend/src/event/EVENT_EMAIL_FORGOT_PASSWORD.ts index c02bdc7af..1b3cd11af 100644 --- a/backend/src/event/EVENT_EMAIL_FORGOT_PASSWORD.ts +++ b/backend/src/event/EVENT_EMAIL_FORGOT_PASSWORD.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_NEWSLETTER_SUBSCRIBE.ts b/backend/src/event/EVENT_NEWSLETTER_SUBSCRIBE.ts index 90d0ea6ea..717bb8296 100644 --- a/backend/src/event/EVENT_NEWSLETTER_SUBSCRIBE.ts +++ b/backend/src/event/EVENT_NEWSLETTER_SUBSCRIBE.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_NEWSLETTER_UNSUBSCRIBE.ts b/backend/src/event/EVENT_NEWSLETTER_UNSUBSCRIBE.ts index 457cd34ab..f8adc69d1 100644 --- a/backend/src/event/EVENT_NEWSLETTER_UNSUBSCRIBE.ts +++ b/backend/src/event/EVENT_NEWSLETTER_UNSUBSCRIBE.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_TRANSACTION_LINK_CREATE.ts b/backend/src/event/EVENT_TRANSACTION_LINK_CREATE.ts index b58adbfe5..a73ce4f6c 100644 --- a/backend/src/event/EVENT_TRANSACTION_LINK_CREATE.ts +++ b/backend/src/event/EVENT_TRANSACTION_LINK_CREATE.ts @@ -1,7 +1,7 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Event as DbEvent } from '@entity/Event' +import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_TRANSACTION_LINK_DELETE.ts b/backend/src/event/EVENT_TRANSACTION_LINK_DELETE.ts index 505b6aed3..d8f15f206 100644 --- a/backend/src/event/EVENT_TRANSACTION_LINK_DELETE.ts +++ b/backend/src/event/EVENT_TRANSACTION_LINK_DELETE.ts @@ -1,6 +1,6 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_TRANSACTION_LINK_REDEEM.ts b/backend/src/event/EVENT_TRANSACTION_LINK_REDEEM.ts index c7da259ad..e0ae3bb93 100644 --- a/backend/src/event/EVENT_TRANSACTION_LINK_REDEEM.ts +++ b/backend/src/event/EVENT_TRANSACTION_LINK_REDEEM.ts @@ -1,7 +1,7 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Event as DbEvent } from '@entity/Event' +import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_TRANSACTION_RECEIVE.ts b/backend/src/event/EVENT_TRANSACTION_RECEIVE.ts index 9d2c977ed..a7b945a97 100644 --- a/backend/src/event/EVENT_TRANSACTION_RECEIVE.ts +++ b/backend/src/event/EVENT_TRANSACTION_RECEIVE.ts @@ -1,7 +1,7 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { Transaction as DbTransaction } from '@entity/Transaction' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Event as DbEvent } from '@entity/Event' +import { Transaction as DbTransaction } from '@entity/Transaction' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_TRANSACTION_SEND.ts b/backend/src/event/EVENT_TRANSACTION_SEND.ts index 204c6dc5f..b21970ad3 100644 --- a/backend/src/event/EVENT_TRANSACTION_SEND.ts +++ b/backend/src/event/EVENT_TRANSACTION_SEND.ts @@ -1,7 +1,7 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { Transaction as DbTransaction } from '@entity/Transaction' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Event as DbEvent } from '@entity/Event' +import { Transaction as DbTransaction } from '@entity/Transaction' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_USER_ACTIVATE_ACCOUNT.ts b/backend/src/event/EVENT_USER_ACTIVATE_ACCOUNT.ts index d48f89857..15d470dd7 100644 --- a/backend/src/event/EVENT_USER_ACTIVATE_ACCOUNT.ts +++ b/backend/src/event/EVENT_USER_ACTIVATE_ACCOUNT.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_USER_INFO_UPDATE.ts b/backend/src/event/EVENT_USER_INFO_UPDATE.ts index befc53130..70b37eddf 100644 --- a/backend/src/event/EVENT_USER_INFO_UPDATE.ts +++ b/backend/src/event/EVENT_USER_INFO_UPDATE.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_USER_LOGIN.ts b/backend/src/event/EVENT_USER_LOGIN.ts index b95efd582..82458a664 100644 --- a/backend/src/event/EVENT_USER_LOGIN.ts +++ b/backend/src/event/EVENT_USER_LOGIN.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_USER_LOGOUT.ts b/backend/src/event/EVENT_USER_LOGOUT.ts index 2093de892..f5e76f749 100644 --- a/backend/src/event/EVENT_USER_LOGOUT.ts +++ b/backend/src/event/EVENT_USER_LOGOUT.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/EVENT_USER_REGISTER.ts b/backend/src/event/EVENT_USER_REGISTER.ts index ad712583f..e144b9d6d 100644 --- a/backend/src/event/EVENT_USER_REGISTER.ts +++ b/backend/src/event/EVENT_USER_REGISTER.ts @@ -1,5 +1,5 @@ -import type { Event as DbEvent } from '@entity/Event' -import type { User as DbUser } from '@entity/User' +import { Event as DbEvent } from '@entity/Event' +import { User as DbUser } from '@entity/User' import { Event } from './Event' import { EventType } from './EventType' diff --git a/backend/src/event/Event.ts b/backend/src/event/Event.ts index b7c80a593..307d1a0c4 100644 --- a/backend/src/event/Event.ts +++ b/backend/src/event/Event.ts @@ -1,13 +1,13 @@ -import type { Contribution as DbContribution } from '@entity/Contribution' -import type { ContributionLink as DbContributionLink } from '@entity/ContributionLink' -import type { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' +import { Contribution as DbContribution } from '@entity/Contribution' +import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' +import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' import { Event as DbEvent } from '@entity/Event' -import type { Transaction as DbTransaction } from '@entity/Transaction' -import type { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' -import type { User as DbUser } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Transaction as DbTransaction } from '@entity/Transaction' +import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' +import { User as DbUser } from '@entity/User' +import { Decimal } from 'decimal.js-light' -import type { EventType } from './EventType' +import { EventType } from './EventType' export const Event = ( type: EventType, diff --git a/backend/src/federation/client/1_0/AuthenticationClient.ts b/backend/src/federation/client/1_0/AuthenticationClient.ts index bfe75f466..c1d921823 100644 --- a/backend/src/federation/client/1_0/AuthenticationClient.ts +++ b/backend/src/federation/client/1_0/AuthenticationClient.ts @@ -1,10 +1,10 @@ -import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { GraphQLClient } from 'graphql-request' import { backendLogger as logger } from '@/server/logger' import { ensureUrlEndsWithSlash } from '@/util/utilities' -import type { OpenConnectionArgs } from './model/OpenConnectionArgs' +import { OpenConnectionArgs } from './model/OpenConnectionArgs' import { openConnection } from './query/openConnection' export class AuthenticationClient { diff --git a/backend/src/federation/client/1_0/FederationClient.ts b/backend/src/federation/client/1_0/FederationClient.ts index 848ddf867..0c2b4101b 100644 --- a/backend/src/federation/client/1_0/FederationClient.ts +++ b/backend/src/federation/client/1_0/FederationClient.ts @@ -1,4 +1,4 @@ -import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { GraphQLClient } from 'graphql-request' import { getPublicCommunityInfo } from '@/federation/client/1_0/query/getPublicCommunityInfo' @@ -7,8 +7,8 @@ import { backendLogger as logger } from '@/server/logger' import { ensureUrlEndsWithSlash } from '@/util/utilities' import { PublicCommunityInfoLoggingView } from './logging/PublicCommunityInfoLogging.view' -import type { GetPublicKeyResult } from './model/GetPublicKeyResult' -import type { PublicCommunityInfo } from './model/PublicCommunityInfo' +import { GetPublicKeyResult } from './model/GetPublicKeyResult' +import { PublicCommunityInfo } from './model/PublicCommunityInfo' export class FederationClient { dbCom: DbFederatedCommunity diff --git a/backend/src/federation/client/1_0/SendCoinsClient.ts b/backend/src/federation/client/1_0/SendCoinsClient.ts index 069cf8794..3d72d961b 100644 --- a/backend/src/federation/client/1_0/SendCoinsClient.ts +++ b/backend/src/federation/client/1_0/SendCoinsClient.ts @@ -1,4 +1,4 @@ -import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { GraphQLClient } from 'graphql-request' import { LogError } from '@/server/LogError' @@ -7,7 +7,7 @@ import { ensureUrlEndsWithSlash } from '@/util/utilities' import { SendCoinsArgsLoggingView } from './logging/SendCoinsArgsLogging.view' import { SendCoinsResultLoggingView } from './logging/SendCoinsResultLogging.view' -import type { SendCoinsArgs } from './model/SendCoinsArgs' +import { SendCoinsArgs } from './model/SendCoinsArgs' import { SendCoinsResult } from './model/SendCoinsResult' import { revertSendCoins as revertSendCoinsQuery } from './query/revertSendCoins' import { revertSettledSendCoins as revertSettledSendCoinsQuery } from './query/revertSettledSendCoins' diff --git a/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts b/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts index 0bee38b56..af3f80758 100644 --- a/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts +++ b/backend/src/federation/client/1_0/logging/PublicCommunityInfoLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import type { PublicCommunityInfo } from '@/federation/client/1_0/model/PublicCommunityInfo' +import { PublicCommunityInfo } from '@/federation/client/1_0/model/PublicCommunityInfo' export class PublicCommunityInfoLoggingView extends AbstractLoggingView { public constructor(private self: PublicCommunityInfo) { diff --git a/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts b/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts index 23f67fdc5..34085da6a 100644 --- a/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts +++ b/backend/src/federation/client/1_0/logging/SendCoinsArgsLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import type { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' +import { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' export class SendCoinsArgsLoggingView extends AbstractLoggingView { public constructor(private self: SendCoinsArgs) { diff --git a/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts b/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts index 06d95faff..a16336fa5 100644 --- a/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts +++ b/backend/src/federation/client/1_0/logging/SendCoinsResultLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import type { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' +import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' export class SendCoinsResultLoggingView extends AbstractLoggingView { public constructor(private self: SendCoinsResult) { diff --git a/backend/src/federation/client/AuthenticationClientFactory.ts b/backend/src/federation/client/AuthenticationClientFactory.ts index a707c3187..27cd6a5c9 100644 --- a/backend/src/federation/client/AuthenticationClientFactory.ts +++ b/backend/src/federation/client/AuthenticationClientFactory.ts @@ -1,4 +1,4 @@ -import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { AuthenticationClient as V1_0_AuthenticationClient } from '@/federation/client/1_0/AuthenticationClient' diff --git a/backend/src/federation/client/FederationClientFactory.ts b/backend/src/federation/client/FederationClientFactory.ts index e79393fac..90808067b 100644 --- a/backend/src/federation/client/FederationClientFactory.ts +++ b/backend/src/federation/client/FederationClientFactory.ts @@ -1,4 +1,4 @@ -import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { FederationClient as V1_0_FederationClient } from '@/federation/client/1_0/FederationClient' diff --git a/backend/src/federation/client/SendCoinsClientFactory.ts b/backend/src/federation/client/SendCoinsClientFactory.ts index 9962baeb6..5f432528f 100644 --- a/backend/src/federation/client/SendCoinsClientFactory.ts +++ b/backend/src/federation/client/SendCoinsClientFactory.ts @@ -1,4 +1,4 @@ -import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { SendCoinsClient as V1_0_SendCoinsClient } from '@/federation/client/1_0/SendCoinsClient' diff --git a/backend/src/federation/validateCommunities.test.ts b/backend/src/federation/validateCommunities.test.ts index 0303bf871..6b4a54af4 100644 --- a/backend/src/federation/validateCommunities.test.ts +++ b/backend/src/federation/validateCommunities.test.ts @@ -1,8 +1,8 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLClient } from 'graphql-request' -import type { Response } from 'graphql-request/dist/types' +import { Response } from 'graphql-request/dist/types' import { cleanDB, testEnvironment } from '@test/helpers' import { logger } from '@test/testSetup' diff --git a/backend/src/federation/validateCommunities.ts b/backend/src/federation/validateCommunities.ts index 1a7792d1b..90f697500 100644 --- a/backend/src/federation/validateCommunities.ts +++ b/backend/src/federation/validateCommunities.ts @@ -4,7 +4,7 @@ import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCom import { FederatedCommunityLoggingView } from '@logging/FederatedCommunityLogging.view' import { FederationClient as V1_0_FederationClient } from '@/federation/client/1_0/FederationClient' -import type { PublicCommunityInfo } from '@/federation/client/1_0/model/PublicCommunityInfo' +import { PublicCommunityInfo } from '@/federation/client/1_0/model/PublicCommunityInfo' import { FederationClientFactory } from '@/federation/client/FederationClientFactory' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' diff --git a/backend/src/graphql/directive/isAuthorized.ts b/backend/src/graphql/directive/isAuthorized.ts index 27466774b..8ed4f7443 100644 --- a/backend/src/graphql/directive/isAuthorized.ts +++ b/backend/src/graphql/directive/isAuthorized.ts @@ -1,11 +1,11 @@ import { User } from '@entity/User' -import type { AuthChecker } from 'type-graphql' +import { AuthChecker } from 'type-graphql' import { RoleNames } from '@enum/RoleNames' import { INALIENABLE_RIGHTS } from '@/auth/INALIENABLE_RIGHTS' import { decode, encode } from '@/auth/JWT' -import type { RIGHTS } from '@/auth/RIGHTS' +import { RIGHTS } from '@/auth/RIGHTS' import { ROLE_ADMIN, ROLE_DLT_CONNECTOR, @@ -15,7 +15,7 @@ import { ROLE_USER, } from '@/auth/ROLES' import { LogError } from '@/server/LogError' -import type { Context } from '@/server/context' +import { Context } from '@/server/context' export const isAuthorized: AuthChecker = async ({ context }, rights) => { context.role = ROLE_UNAUTHORIZED // unauthorized user diff --git a/backend/src/graphql/model/AdminCommunityView.ts b/backend/src/graphql/model/AdminCommunityView.ts index 6d8cf4d5d..96f6fe213 100644 --- a/backend/src/graphql/model/AdminCommunityView.ts +++ b/backend/src/graphql/model/AdminCommunityView.ts @@ -1,6 +1,6 @@ -import type { Point } from '@dbTools/typeorm' -import type { Community as DbCommunity } from '@entity/Community' -import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import { Point } from '@dbTools/typeorm' +import { Community as DbCommunity } from '@entity/Community' +import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { Field, ObjectType } from 'type-graphql' import { Point2Location } from '@/graphql/resolver/util/Location2Point' diff --git a/backend/src/graphql/model/AdminUser.ts b/backend/src/graphql/model/AdminUser.ts index de55b8d3a..d849762bd 100644 --- a/backend/src/graphql/model/AdminUser.ts +++ b/backend/src/graphql/model/AdminUser.ts @@ -1,4 +1,4 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() diff --git a/backend/src/graphql/model/ChatGptMessage.ts b/backend/src/graphql/model/ChatGptMessage.ts index fc1219856..3a5f08a59 100644 --- a/backend/src/graphql/model/ChatGptMessage.ts +++ b/backend/src/graphql/model/ChatGptMessage.ts @@ -1,6 +1,6 @@ import { Field, ObjectType } from 'type-graphql' -import type { Message } from '@/apis/openai/model/Message' +import { Message } from '@/apis/openai/model/Message' @ObjectType() export class ChatGptMessage { diff --git a/backend/src/graphql/model/Community.ts b/backend/src/graphql/model/Community.ts index 8eab24915..c3749d27a 100644 --- a/backend/src/graphql/model/Community.ts +++ b/backend/src/graphql/model/Community.ts @@ -1,4 +1,4 @@ -import type { Community as DbCommunity } from '@entity/Community' +import { Community as DbCommunity } from '@entity/Community' import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() diff --git a/backend/src/graphql/model/Contribution.ts b/backend/src/graphql/model/Contribution.ts index 825cfe988..301348ccc 100644 --- a/backend/src/graphql/model/Contribution.ts +++ b/backend/src/graphql/model/Contribution.ts @@ -1,5 +1,5 @@ -import type { Contribution as dbContribution } from '@entity/Contribution' -import type { User as DbUser } from '@entity/User' +import { Contribution as dbContribution } from '@entity/Contribution' +import { User as DbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/ContributionLink.ts b/backend/src/graphql/model/ContributionLink.ts index b9ddba116..786646c4a 100644 --- a/backend/src/graphql/model/ContributionLink.ts +++ b/backend/src/graphql/model/ContributionLink.ts @@ -1,4 +1,4 @@ -import type { ContributionLink as dbContributionLink } from '@entity/ContributionLink' +import { ContributionLink as dbContributionLink } from '@entity/ContributionLink' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/ContributionMessage.ts b/backend/src/graphql/model/ContributionMessage.ts index c25c1b4cf..6f70d5024 100644 --- a/backend/src/graphql/model/ContributionMessage.ts +++ b/backend/src/graphql/model/ContributionMessage.ts @@ -1,5 +1,5 @@ -import type { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' -import type { User } from '@entity/User' +import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' +import { User } from '@entity/User' import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() diff --git a/backend/src/graphql/model/FederatedCommunity.ts b/backend/src/graphql/model/FederatedCommunity.ts index 4cf6caae6..aefbfa4b8 100644 --- a/backend/src/graphql/model/FederatedCommunity.ts +++ b/backend/src/graphql/model/FederatedCommunity.ts @@ -1,4 +1,4 @@ -import type { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' +import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { Field, Int, ObjectType } from 'type-graphql' import { ensureUrlEndsWithSlash } from '@/util/utilities' diff --git a/backend/src/graphql/model/ProjectBranding.ts b/backend/src/graphql/model/ProjectBranding.ts index 392fec205..8f5ad6ca5 100644 --- a/backend/src/graphql/model/ProjectBranding.ts +++ b/backend/src/graphql/model/ProjectBranding.ts @@ -1,4 +1,4 @@ -import type { ProjectBranding as dbProjectBranding } from '@entity/ProjectBranding' +import { ProjectBranding as dbProjectBranding } from '@entity/ProjectBranding' import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() diff --git a/backend/src/graphql/model/Space.ts b/backend/src/graphql/model/Space.ts index 146553a0d..eb14a34fb 100644 --- a/backend/src/graphql/model/Space.ts +++ b/backend/src/graphql/model/Space.ts @@ -1,6 +1,6 @@ import { Field, Int, ObjectType } from 'type-graphql' -import type { Space as HumhubSpace } from '@/apis/humhub/model/Space' +import { Space as HumhubSpace } from '@/apis/humhub/model/Space' @ObjectType() export class Space { diff --git a/backend/src/graphql/model/SpaceList.ts b/backend/src/graphql/model/SpaceList.ts index ab540c53a..2c611e211 100644 --- a/backend/src/graphql/model/SpaceList.ts +++ b/backend/src/graphql/model/SpaceList.ts @@ -1,6 +1,6 @@ import { Field, ObjectType } from 'type-graphql' -import type { SpacesResponse } from '@/apis/humhub/model/SpacesResponse' +import { SpacesResponse } from '@/apis/humhub/model/SpacesResponse' import { Pagination } from './Pagination' import { Space } from './Space' diff --git a/backend/src/graphql/model/Transaction.ts b/backend/src/graphql/model/Transaction.ts index b2c91a00c..a1ad73677 100644 --- a/backend/src/graphql/model/Transaction.ts +++ b/backend/src/graphql/model/Transaction.ts @@ -1,4 +1,4 @@ -import type { Transaction as dbTransaction } from '@entity/Transaction' +import { Transaction as dbTransaction } from '@entity/Transaction' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/TransactionLink.ts b/backend/src/graphql/model/TransactionLink.ts index 6c52e236c..4b6b0e364 100644 --- a/backend/src/graphql/model/TransactionLink.ts +++ b/backend/src/graphql/model/TransactionLink.ts @@ -1,4 +1,4 @@ -import type { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' +import { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/UnconfirmedContribution.ts b/backend/src/graphql/model/UnconfirmedContribution.ts index ac8a0667b..ad2d914c1 100644 --- a/backend/src/graphql/model/UnconfirmedContribution.ts +++ b/backend/src/graphql/model/UnconfirmedContribution.ts @@ -1,5 +1,5 @@ -import type { Contribution } from '@entity/Contribution' -import type { User } from '@entity/User' +import { Contribution } from '@entity/Contribution' +import { User } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/User.ts b/backend/src/graphql/model/User.ts index 7aa906515..0e19ab33f 100644 --- a/backend/src/graphql/model/User.ts +++ b/backend/src/graphql/model/User.ts @@ -1,5 +1,5 @@ -import type { Point } from '@dbTools/typeorm' -import type { User as dbUser } from '@entity/User' +import { Point } from '@dbTools/typeorm' +import { User as dbUser } from '@entity/User' import { Field, Int, ObjectType } from 'type-graphql' import { GmsPublishLocationType } from '@enum/GmsPublishLocationType' diff --git a/backend/src/graphql/model/UserAdmin.ts b/backend/src/graphql/model/UserAdmin.ts index 50fde7bb8..d0b5cc932 100644 --- a/backend/src/graphql/model/UserAdmin.ts +++ b/backend/src/graphql/model/UserAdmin.ts @@ -1,4 +1,4 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Field, Int, ObjectType } from 'type-graphql' diff --git a/backend/src/graphql/model/UserContact.ts b/backend/src/graphql/model/UserContact.ts index c6797a455..a2745fb9a 100644 --- a/backend/src/graphql/model/UserContact.ts +++ b/backend/src/graphql/model/UserContact.ts @@ -1,4 +1,4 @@ -import type { UserContact as DbUserContact } from '@entity/UserContact' +import { UserContact as DbUserContact } from '@entity/UserContact' import { Field, Int, ObjectType } from 'type-graphql' @ObjectType() diff --git a/backend/src/graphql/resolver/AiChatResolver.ts b/backend/src/graphql/resolver/AiChatResolver.ts index f22578ebe..3fd01826f 100644 --- a/backend/src/graphql/resolver/AiChatResolver.ts +++ b/backend/src/graphql/resolver/AiChatResolver.ts @@ -1,12 +1,12 @@ import { Arg, Authorized, Ctx, Mutation, Query, Resolver } from 'type-graphql' -import type { OpenaiMessage } from '@input/OpenaiMessage' +import { OpenaiMessage } from '@input/OpenaiMessage' import { ChatGptMessage } from '@model/ChatGptMessage' import { OpenaiClient } from '@/apis/openai/OpenaiClient' import { Message } from '@/apis/openai/model/Message' import { RIGHTS } from '@/auth/RIGHTS' -import type { Context } from '@/server/context' +import { Context } from '@/server/context' @Resolver() export class AiChatResolver { diff --git a/backend/src/graphql/resolver/BalanceResolver.ts b/backend/src/graphql/resolver/BalanceResolver.ts index 60ee3e73d..fc55ed70d 100644 --- a/backend/src/graphql/resolver/BalanceResolver.ts +++ b/backend/src/graphql/resolver/BalanceResolver.ts @@ -9,7 +9,7 @@ import { Balance } from '@model/Balance' import { RIGHTS } from '@/auth/RIGHTS' import { BalanceLoggingView } from '@/logging/BalanceLogging.view' import { DecayLoggingView } from '@/logging/DecayLogging.view' -import { type Context, getUser } from '@/server/context' +import { Context, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { calculateDecay } from '@/util/decay' diff --git a/backend/src/graphql/resolver/CommunityResolver.test.ts b/backend/src/graphql/resolver/CommunityResolver.test.ts index 3def485f6..c8edbe0d9 100644 --- a/backend/src/graphql/resolver/CommunityResolver.test.ts +++ b/backend/src/graphql/resolver/CommunityResolver.test.ts @@ -1,7 +1,7 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLError } from 'graphql/error/GraphQLError' import { v4 as uuidv4 } from 'uuid' diff --git a/backend/src/graphql/resolver/CommunityResolver.ts b/backend/src/graphql/resolver/CommunityResolver.ts index 5bc140873..5c9f52111 100644 --- a/backend/src/graphql/resolver/CommunityResolver.ts +++ b/backend/src/graphql/resolver/CommunityResolver.ts @@ -3,8 +3,8 @@ import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { Arg, Args, Authorized, Mutation, Query, Resolver } from 'type-graphql' -import type { Paginated } from '@arg/Paginated' -import type { EditCommunityInput } from '@input/EditCommunityInput' +import { Paginated } from '@arg/Paginated' +import { EditCommunityInput } from '@input/EditCommunityInput' import { AdminCommunityView } from '@model/AdminCommunityView' import { Community } from '@model/Community' import { FederatedCommunity } from '@model/FederatedCommunity' diff --git a/backend/src/graphql/resolver/ContributionLinkResolver.test.ts b/backend/src/graphql/resolver/ContributionLinkResolver.test.ts index 11d320877..36dd55ffd 100644 --- a/backend/src/graphql/resolver/ContributionLinkResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionLinkResolver.test.ts @@ -1,7 +1,7 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { Event as DbEvent } from '@entity/Event' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { GraphQLError } from 'graphql' diff --git a/backend/src/graphql/resolver/ContributionLinkResolver.ts b/backend/src/graphql/resolver/ContributionLinkResolver.ts index c8d707e43..6165c30cd 100644 --- a/backend/src/graphql/resolver/ContributionLinkResolver.ts +++ b/backend/src/graphql/resolver/ContributionLinkResolver.ts @@ -2,8 +2,8 @@ import { IsNull, MoreThan } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { Arg, Args, Authorized, Ctx, Int, Mutation, Query, Resolver } from 'type-graphql' -import type { ContributionLinkArgs } from '@arg/ContributionLinkArgs' -import type { Paginated } from '@arg/Paginated' +import { ContributionLinkArgs } from '@arg/ContributionLinkArgs' +import { Paginated } from '@arg/Paginated' import { Order } from '@enum/Order' import { ContributionLink } from '@model/ContributionLink' import { ContributionLinkList } from '@model/ContributionLinkList' @@ -15,7 +15,7 @@ import { EVENT_ADMIN_CONTRIBUTION_LINK_UPDATE, } from '@/event/Events' import { LogError } from '@/server/LogError' -import { type Context, getUser } from '@/server/context' +import { Context, getUser } from '@/server/context' import { transactionLinkCode as contributionLinkCode } from './TransactionLinkResolver' import { isStartEndDateValid } from './util/creations' diff --git a/backend/src/graphql/resolver/ContributionMessageResolver.test.ts b/backend/src/graphql/resolver/ContributionMessageResolver.test.ts index de1e7784f..5bcc8143a 100644 --- a/backend/src/graphql/resolver/ContributionMessageResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionMessageResolver.test.ts @@ -1,7 +1,7 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { Contribution as DbContribution } from '@entity/Contribution' import { Event as DbEvent } from '@entity/Event' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLError } from 'graphql' import { ContributionStatus } from '@enum/ContributionStatus' diff --git a/backend/src/graphql/resolver/ContributionMessageResolver.ts b/backend/src/graphql/resolver/ContributionMessageResolver.ts index 3bf0f11d6..88cd73bc7 100644 --- a/backend/src/graphql/resolver/ContributionMessageResolver.ts +++ b/backend/src/graphql/resolver/ContributionMessageResolver.ts @@ -1,11 +1,11 @@ -import { type EntityManager, type FindOptionsRelations, getConnection } from '@dbTools/typeorm' +import { EntityManager, FindOptionsRelations, getConnection } from '@dbTools/typeorm' import { Contribution as DbContribution } from '@entity/Contribution' import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' -import type { User as DbUser } from '@entity/User' +import { User as DbUser } from '@entity/User' import { Arg, Args, Authorized, Ctx, Int, Mutation, Query, Resolver } from 'type-graphql' -import type { ContributionMessageArgs } from '@arg/ContributionMessageArgs' -import type { Paginated } from '@arg/Paginated' +import { ContributionMessageArgs } from '@arg/ContributionMessageArgs' +import { Paginated } from '@arg/Paginated' import { ContributionMessageType } from '@enum/ContributionMessageType' import { Order } from '@enum/Order' import { ContributionMessage, ContributionMessageListResult } from '@model/ContributionMessage' @@ -18,7 +18,7 @@ import { } from '@/event/Events' import { UpdateUnconfirmedContributionContext } from '@/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context' import { LogError } from '@/server/LogError' -import { type Context, getUser } from '@/server/context' +import { Context, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { findContributionMessages } from './util/findContributionMessages' diff --git a/backend/src/graphql/resolver/ContributionResolver.test.ts b/backend/src/graphql/resolver/ContributionResolver.test.ts index 7d00223be..ab409b4cc 100644 --- a/backend/src/graphql/resolver/ContributionResolver.test.ts +++ b/backend/src/graphql/resolver/ContributionResolver.test.ts @@ -1,10 +1,10 @@ -import { type Connection, Equal } from '@dbTools/typeorm' +import { Connection, Equal } from '@dbTools/typeorm' import { Contribution } from '@entity/Contribution' import { Event as DbEvent } from '@entity/Event' import { Transaction as DbTransaction } from '@entity/Transaction' -import type { User } from '@entity/User' +import { User } from '@entity/User' import { UserInputError } from 'apollo-server-express' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { GraphQLError } from 'graphql' diff --git a/backend/src/graphql/resolver/ContributionResolver.ts b/backend/src/graphql/resolver/ContributionResolver.ts index 9d5f148b9..a137b0d79 100644 --- a/backend/src/graphql/resolver/ContributionResolver.ts +++ b/backend/src/graphql/resolver/ContributionResolver.ts @@ -1,10 +1,10 @@ -import { type EntityManager, IsNull, getConnection } from '@dbTools/typeorm' +import { EntityManager, IsNull, getConnection } from '@dbTools/typeorm' import { Contribution as DbContribution } from '@entity/Contribution' import { Transaction as DbTransaction } from '@entity/Transaction' import { User as DbUser } from '@entity/User' import { UserContact } from '@entity/UserContact' import { Decimal } from 'decimal.js-light' -import type { GraphQLResolveInfo } from 'graphql' +import { GraphQLResolveInfo } from 'graphql' import { Arg, Args, @@ -19,9 +19,9 @@ import { Root, } from 'type-graphql' -import type { AdminCreateContributionArgs } from '@arg/AdminCreateContributionArgs' -import type { AdminUpdateContributionArgs } from '@arg/AdminUpdateContributionArgs' -import type { ContributionArgs } from '@arg/ContributionArgs' +import { AdminCreateContributionArgs } from '@arg/AdminCreateContributionArgs' +import { AdminUpdateContributionArgs } from '@arg/AdminUpdateContributionArgs' +import { ContributionArgs } from '@arg/ContributionArgs' import { Paginated } from '@arg/Paginated' import { SearchContributionsFilterArgs } from '@arg/SearchContributionsFilterArgs' import { ContributionMessageType } from '@enum/ContributionMessageType' @@ -30,7 +30,7 @@ import { ContributionType } from '@enum/ContributionType' import { TransactionTypeId } from '@enum/TransactionTypeId' import { AdminUpdateContribution } from '@model/AdminUpdateContribution' import { Contribution, ContributionListResult } from '@model/Contribution' -import type { Decay } from '@model/Decay' +import { Decay } from '@model/Decay' import { OpenCreation } from '@model/OpenCreation' import { UnconfirmedContribution } from '@model/UnconfirmedContribution' import { User } from '@model/User' @@ -54,7 +54,7 @@ import { } from '@/event/Events' import { UpdateUnconfirmedContributionContext } from '@/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context' import { LogError } from '@/server/LogError' -import { type Context, getClientTimezoneOffset, getUser } from '@/server/context' +import { Context, getClientTimezoneOffset, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { TRANSACTIONS_LOCK } from '@/util/TRANSACTIONS_LOCK' import { calculateDecay } from '@/util/decay' diff --git a/backend/src/graphql/resolver/EmailOptinCodes.test.ts b/backend/src/graphql/resolver/EmailOptinCodes.test.ts index efebc586b..99e1a3ea7 100644 --- a/backend/src/graphql/resolver/EmailOptinCodes.test.ts +++ b/backend/src/graphql/resolver/EmailOptinCodes.test.ts @@ -1,6 +1,6 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { User as DbUser } from '@entity/User' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLError } from 'graphql' import { cleanDB, testEnvironment } from '@test/helpers' diff --git a/backend/src/graphql/resolver/GdtResolver.ts b/backend/src/graphql/resolver/GdtResolver.ts index 3ce1328a3..933fdb397 100644 --- a/backend/src/graphql/resolver/GdtResolver.ts +++ b/backend/src/graphql/resolver/GdtResolver.ts @@ -1,6 +1,6 @@ import { Arg, Args, Authorized, Ctx, Float, Int, Query, Resolver } from 'type-graphql' -import type { Paginated } from '@arg/Paginated' +import { Paginated } from '@arg/Paginated' import { Order } from '@enum/Order' import { GdtEntry } from '@model/GdtEntry' import { GdtEntryList } from '@model/GdtEntryList' @@ -9,7 +9,7 @@ import { apiGet, apiPost } from '@/apis/HttpRequest' import { RIGHTS } from '@/auth/RIGHTS' import { CONFIG } from '@/config' import { LogError } from '@/server/LogError' -import { type Context, getUser } from '@/server/context' +import { Context, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' diff --git a/backend/src/graphql/resolver/KlicktippResolver.ts b/backend/src/graphql/resolver/KlicktippResolver.ts index 81e65c9cd..1ac667fa4 100644 --- a/backend/src/graphql/resolver/KlicktippResolver.ts +++ b/backend/src/graphql/resolver/KlicktippResolver.ts @@ -3,7 +3,7 @@ import { Authorized, Ctx, Mutation, Resolver } from 'type-graphql' import { subscribe, unsubscribe } from '@/apis/KlicktippController' import { RIGHTS } from '@/auth/RIGHTS' import { EVENT_NEWSLETTER_SUBSCRIBE, EVENT_NEWSLETTER_UNSUBSCRIBE } from '@/event/Events' -import { type Context, getUser } from '@/server/context' +import { Context, getUser } from '@/server/context' @Resolver() export class KlicktippResolver { diff --git a/backend/src/graphql/resolver/ProjectBrandingResolver.ts b/backend/src/graphql/resolver/ProjectBrandingResolver.ts index 40fdff317..49b5a4cad 100644 --- a/backend/src/graphql/resolver/ProjectBrandingResolver.ts +++ b/backend/src/graphql/resolver/ProjectBrandingResolver.ts @@ -1,7 +1,7 @@ import { ProjectBranding as DbProjectBranding } from '@entity/ProjectBranding' import { Arg, Authorized, ID, Int, Mutation, Query, Resolver } from 'type-graphql' -import type { ProjectBrandingInput } from '@input/ProjectBrandingInput' +import { ProjectBrandingInput } from '@input/ProjectBrandingInput' import { ProjectBranding } from '@model/ProjectBranding' import { Space } from '@model/Space' import { SpaceList } from '@model/SpaceList' diff --git a/backend/src/graphql/resolver/StatisticsResolver.ts b/backend/src/graphql/resolver/StatisticsResolver.ts index e24e01a6f..9ff588aa4 100644 --- a/backend/src/graphql/resolver/StatisticsResolver.ts +++ b/backend/src/graphql/resolver/StatisticsResolver.ts @@ -4,7 +4,7 @@ import { User as DbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Authorized, FieldResolver, Query, Resolver } from 'type-graphql' -import { CommunityStatistics, type DynamicStatisticsFields } from '@model/CommunityStatistics' +import { CommunityStatistics, DynamicStatisticsFields } from '@model/CommunityStatistics' import { RIGHTS } from '@/auth/RIGHTS' import { calculateDecay } from '@/util/decay' diff --git a/backend/src/graphql/resolver/TransactionLinkResolver.test.ts b/backend/src/graphql/resolver/TransactionLinkResolver.test.ts index 61ae685b9..6f432ce61 100644 --- a/backend/src/graphql/resolver/TransactionLinkResolver.test.ts +++ b/backend/src/graphql/resolver/TransactionLinkResolver.test.ts @@ -1,14 +1,14 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { Event as DbEvent } from '@entity/Event' import { Transaction } from '@entity/Transaction' -import type { User } from '@entity/User' +import { User } from '@entity/User' import { UserContact } from '@entity/UserContact' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { GraphQLError } from 'graphql' -import type { UnconfirmedContribution } from '@model/UnconfirmedContribution' +import { UnconfirmedContribution } from '@model/UnconfirmedContribution' import { cleanDB, resetEntity, resetToken, testEnvironment } from '@test/helpers' import { logger } from '@test/testSetup' diff --git a/backend/src/graphql/resolver/TransactionLinkResolver.ts b/backend/src/graphql/resolver/TransactionLinkResolver.ts index df7f7a927..bd6081bfe 100644 --- a/backend/src/graphql/resolver/TransactionLinkResolver.ts +++ b/backend/src/graphql/resolver/TransactionLinkResolver.ts @@ -9,15 +9,15 @@ import { User as DbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Arg, Args, Authorized, Ctx, Int, Mutation, Query, Resolver } from 'type-graphql' -import type { Paginated } from '@arg/Paginated' -import type { TransactionLinkArgs } from '@arg/TransactionLinkArgs' +import { Paginated } from '@arg/Paginated' +import { TransactionLinkArgs } from '@arg/TransactionLinkArgs' import { TransactionLinkFilters } from '@arg/TransactionLinkFilters' import { ContributionCycleType } from '@enum/ContributionCycleType' import { ContributionStatus } from '@enum/ContributionStatus' import { ContributionType } from '@enum/ContributionType' import { TransactionTypeId } from '@enum/TransactionTypeId' import { ContributionLink } from '@model/ContributionLink' -import type { Decay } from '@model/Decay' +import { Decay } from '@model/Decay' import { TransactionLink, TransactionLinkResult } from '@model/TransactionLink' import { User } from '@model/User' import { QueryLinkResult } from '@union/QueryLinkResult' @@ -30,7 +30,7 @@ import { EVENT_TRANSACTION_LINK_REDEEM, } from '@/event/Events' import { LogError } from '@/server/LogError' -import { type Context, getClientTimezoneOffset, getUser } from '@/server/context' +import { Context, getClientTimezoneOffset, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { TRANSACTIONS_LOCK } from '@/util/TRANSACTIONS_LOCK' import { TRANSACTION_LINK_LOCK } from '@/util/TRANSACTION_LINK_LOCK' diff --git a/backend/src/graphql/resolver/TransactionResolver.test.ts b/backend/src/graphql/resolver/TransactionResolver.test.ts index 3d35736ad..9b50c7925 100644 --- a/backend/src/graphql/resolver/TransactionResolver.test.ts +++ b/backend/src/graphql/resolver/TransactionResolver.test.ts @@ -1,11 +1,11 @@ -import { type Connection, In } from '@dbTools/typeorm' +import { Connection, In } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { DltTransaction } from '@entity/DltTransaction' import { Event as DbEvent } from '@entity/Event' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { Transaction } from '@entity/Transaction' import { User } from '@entity/User' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLError } from 'graphql' import { v4 as uuidv4 } from 'uuid' @@ -15,8 +15,8 @@ import { logger } from '@test/testSetup' import { CONFIG } from '@/config' import { EventType } from '@/event/Events' import { SendCoinsClient } from '@/federation/client/1_0/SendCoinsClient' -import type { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' -import type { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' +import { SendCoinsArgs } from '@/federation/client/1_0/model/SendCoinsArgs' +import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' import { userFactory } from '@/seeds/factory/user' import { confirmContribution, diff --git a/backend/src/graphql/resolver/TransactionResolver.ts b/backend/src/graphql/resolver/TransactionResolver.ts index 5cdbf159f..a5c9c1d87 100644 --- a/backend/src/graphql/resolver/TransactionResolver.ts +++ b/backend/src/graphql/resolver/TransactionResolver.ts @@ -7,8 +7,8 @@ import { User as dbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { Args, Authorized, Ctx, Mutation, Query, Resolver } from 'type-graphql' -import type { Paginated } from '@arg/Paginated' -import type { TransactionSendArgs } from '@arg/TransactionSendArgs' +import { Paginated } from '@arg/Paginated' +import { TransactionSendArgs } from '@arg/TransactionSendArgs' import { Order } from '@enum/Order' import { PendingTransactionState } from '@enum/PendingTransactionState' import { TransactionTypeId } from '@enum/TransactionTypeId' @@ -23,9 +23,9 @@ import { sendTransactionReceivedEmail, } from '@/emails/sendEmailVariants' import { EVENT_TRANSACTION_RECEIVE, EVENT_TRANSACTION_SEND } from '@/event/Events' -import type { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' +import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' import { LogError } from '@/server/LogError' -import { type Context, getUser } from '@/server/context' +import { Context, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { TRANSACTIONS_LOCK } from '@/util/TRANSACTIONS_LOCK' import { communityUser } from '@/util/communityUser' diff --git a/backend/src/graphql/resolver/UserResolver.test.ts b/backend/src/graphql/resolver/UserResolver.test.ts index d012d5c23..a9dfc2874 100644 --- a/backend/src/graphql/resolver/UserResolver.test.ts +++ b/backend/src/graphql/resolver/UserResolver.test.ts @@ -1,4 +1,4 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { Event as DbEvent } from '@entity/Event' import { TransactionLink } from '@entity/TransactionLink' @@ -6,7 +6,7 @@ import { User } from '@entity/User' import { UserContact } from '@entity/UserContact' import { UserRole } from '@entity/UserRole' import { UserInputError } from 'apollo-server-express' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { GraphQLError } from 'graphql' import { v4 as uuidv4, validate as validateUUID, version as versionUUID } from 'uuid' @@ -15,7 +15,7 @@ import { OptInType } from '@enum/OptInType' import { PasswordEncryptionType } from '@enum/PasswordEncryptionType' import { RoleNames } from '@enum/RoleNames' import { UserContactType } from '@enum/UserContactType' -import type { ContributionLink } from '@model/ContributionLink' +import { ContributionLink } from '@model/ContributionLink' import { Location } from '@model/Location' import { cleanDB, headerPushMock, resetToken, testEnvironment } from '@test/helpers' import { i18n as localization, logger } from '@test/testSetup' diff --git a/backend/src/graphql/resolver/UserResolver.ts b/backend/src/graphql/resolver/UserResolver.ts index 9dd0eb0f2..f3e19dfb7 100644 --- a/backend/src/graphql/resolver/UserResolver.ts +++ b/backend/src/graphql/resolver/UserResolver.ts @@ -1,11 +1,11 @@ -import { In, type Point, getConnection } from '@dbTools/typeorm' +import { In, Point, getConnection } from '@dbTools/typeorm' import { ContributionLink as DbContributionLink } from '@entity/ContributionLink' import { ProjectBranding } from '@entity/ProjectBranding' import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' import { User as DbUser } from '@entity/User' import { UserContact as DbUserContact } from '@entity/UserContact' import { UserLoggingView } from '@logging/UserLogging.view' -import type { GraphQLResolveInfo } from 'graphql' +import { GraphQLResolveInfo } from 'graphql' import i18n from 'i18n' import { Arg, @@ -20,16 +20,16 @@ import { Resolver, Root, } from 'type-graphql' -import type { IRestResponse } from 'typed-rest-client' +import { IRestResponse } from 'typed-rest-client' import { v4 as uuidv4 } from 'uuid' -import type { UserArgs } from '@arg//UserArgs' -import type { CreateUserArgs } from '@arg/CreateUserArgs' -import type { Paginated } from '@arg/Paginated' +import { UserArgs } from '@arg//UserArgs' +import { CreateUserArgs } from '@arg/CreateUserArgs' +import { Paginated } from '@arg/Paginated' import { SearchUsersFilters } from '@arg/SearchUsersFilters' -import type { SetUserRoleArgs } from '@arg/SetUserRoleArgs' -import type { UnsecureLoginArgs } from '@arg/UnsecureLoginArgs' -import type { UpdateUserInfosArgs } from '@arg/UpdateUserInfosArgs' +import { SetUserRoleArgs } from '@arg/SetUserRoleArgs' +import { UnsecureLoginArgs } from '@arg/UnsecureLoginArgs' +import { UpdateUserInfosArgs } from '@arg/UpdateUserInfosArgs' import { OptInType } from '@enum/OptInType' import { Order } from '@enum/Order' import { PasswordEncryptionType } from '@enum/PasswordEncryptionType' @@ -45,7 +45,7 @@ import { UserLocationResult } from '@model/UserLocationResult' import { subscribe } from '@/apis/KlicktippController' import { HumHubClient } from '@/apis/humhub/HumHubClient' import { Account as HumhubAccount } from '@/apis/humhub/model/Account' -import type { GetUser } from '@/apis/humhub/model/GetUser' +import { GetUser } from '@/apis/humhub/model/GetUser' import { PostUser } from '@/apis/humhub/model/PostUser' import { encode } from '@/auth/JWT' import { RIGHTS } from '@/auth/RIGHTS' @@ -74,7 +74,7 @@ import { import { isValidPassword } from '@/password/EncryptorUtils' import { encryptPassword, verifyPassword } from '@/password/PasswordEncryptor' import { LogError } from '@/server/LogError' -import { type Context, getClientTimezoneOffset, getUser } from '@/server/context' +import { Context, getClientTimezoneOffset, getUser } from '@/server/context' import { backendLogger as logger } from '@/server/logger' import { communityDbUser } from '@/util/communityUser' import { hasElopageBuys } from '@/util/hasElopageBuys' diff --git a/backend/src/graphql/resolver/semaphore.test.ts b/backend/src/graphql/resolver/semaphore.test.ts index e5aa4def5..d12db9eb2 100644 --- a/backend/src/graphql/resolver/semaphore.test.ts +++ b/backend/src/graphql/resolver/semaphore.test.ts @@ -1,6 +1,6 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' import { GraphQLError } from 'graphql' import { v4 as uuidv4 } from 'uuid' diff --git a/backend/src/graphql/resolver/util/Location2Point.ts b/backend/src/graphql/resolver/util/Location2Point.ts index a9ff24208..7552ea495 100644 --- a/backend/src/graphql/resolver/util/Location2Point.ts +++ b/backend/src/graphql/resolver/util/Location2Point.ts @@ -1,4 +1,4 @@ -import type { Point } from '@dbTools/typeorm' +import { Point } from '@dbTools/typeorm' import { Location } from '@model/Location' diff --git a/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts b/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts index 907962fa4..d7f185619 100644 --- a/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts +++ b/backend/src/graphql/resolver/util/authenticateGmsUserPlayground.ts @@ -1,4 +1,4 @@ -import type { User as DbUser } from '@entity/User' +import { User as DbUser } from '@entity/User' import { verifyAuthToken } from '@/apis/gms/GmsClient' import { CONFIG } from '@/config' diff --git a/backend/src/graphql/resolver/util/communities.ts b/backend/src/graphql/resolver/util/communities.ts index 2360d3a3f..87cf31610 100644 --- a/backend/src/graphql/resolver/util/communities.ts +++ b/backend/src/graphql/resolver/util/communities.ts @@ -1,8 +1,8 @@ -import type { FindOneOptions } from '@dbTools/typeorm' +import { FindOneOptions } from '@dbTools/typeorm' import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' -import type { Paginated } from '@arg/Paginated' +import { Paginated } from '@arg/Paginated' import { LogError } from '@/server/LogError' import { Connection } from '@/typeorm/connection' diff --git a/backend/src/graphql/resolver/util/compareGmsRelevantUserSettings.ts b/backend/src/graphql/resolver/util/compareGmsRelevantUserSettings.ts index 2882512f8..609a8d487 100644 --- a/backend/src/graphql/resolver/util/compareGmsRelevantUserSettings.ts +++ b/backend/src/graphql/resolver/util/compareGmsRelevantUserSettings.ts @@ -1,9 +1,9 @@ -import type { Point } from '@dbTools/typeorm' -import type { User as DbUser } from '@entity/User' +import { Point } from '@dbTools/typeorm' +import { User as DbUser } from '@entity/User' import { UserLoggingView } from '@logging/UserLogging.view' -import type { UpdateUserInfosArgs } from '@/graphql/arg/UpdateUserInfosArgs' -import type { GmsPublishLocationType } from '@/graphql/enum/GmsPublishLocationType' +import { UpdateUserInfosArgs } from '@/graphql/arg/UpdateUserInfosArgs' +import { GmsPublishLocationType } from '@/graphql/enum/GmsPublishLocationType' import { PublishNameType } from '@/graphql/enum/PublishNameType' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' diff --git a/backend/src/graphql/resolver/util/creations.test.ts b/backend/src/graphql/resolver/util/creations.test.ts index 8dec43b1a..0d538a75d 100644 --- a/backend/src/graphql/resolver/util/creations.test.ts +++ b/backend/src/graphql/resolver/util/creations.test.ts @@ -1,7 +1,7 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { Contribution } from '@entity/Contribution' -import type { User } from '@entity/User' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { User } from '@entity/User' +import { ApolloServerTestClient } from 'apollo-server-testing' import { cleanDB, contributionDateFormatter, testEnvironment } from '@test/helpers' diff --git a/backend/src/graphql/resolver/util/creations.ts b/backend/src/graphql/resolver/util/creations.ts index 390e21f0a..694d3a867 100644 --- a/backend/src/graphql/resolver/util/creations.ts +++ b/backend/src/graphql/resolver/util/creations.ts @@ -1,8 +1,8 @@ import { getConnection } from '@dbTools/typeorm' import { Contribution } from '@entity/Contribution' -import type { Decimal } from 'decimal.js-light' +import { Decimal } from 'decimal.js-light' -import type { OpenCreation } from '@model/OpenCreation' +import { OpenCreation } from '@model/OpenCreation' import { FULL_CREATION_AVAILABLE, MAX_CREATION_AMOUNT } from '@/graphql/resolver/const/const' import { LogError } from '@/server/LogError' diff --git a/backend/src/graphql/resolver/util/extractGraphQLFields.ts b/backend/src/graphql/resolver/util/extractGraphQLFields.ts index d993d731b..75389b958 100644 --- a/backend/src/graphql/resolver/util/extractGraphQLFields.ts +++ b/backend/src/graphql/resolver/util/extractGraphQLFields.ts @@ -1,7 +1,7 @@ -import type { ObjectLiteral, SelectQueryBuilder } from '@dbTools/typeorm' -import type { GraphQLResolveInfo } from 'graphql' +import { ObjectLiteral, SelectQueryBuilder } from '@dbTools/typeorm' +import { GraphQLResolveInfo } from 'graphql' import { - type ResolveTree, + ResolveTree, parseResolveInfo, simplifyParsedResolveInfoFragmentWithType, } from 'graphql-parse-resolve-info' diff --git a/backend/src/graphql/resolver/util/findContributionMessages.ts b/backend/src/graphql/resolver/util/findContributionMessages.ts index 32e1f0216..460b62b38 100644 --- a/backend/src/graphql/resolver/util/findContributionMessages.ts +++ b/backend/src/graphql/resolver/util/findContributionMessages.ts @@ -2,7 +2,7 @@ import { In } from '@dbTools/typeorm' import { ContributionMessage as DbContributionMessage } from '@entity/ContributionMessage' import { ContributionMessageType } from '@enum/ContributionMessageType' -import type { Order } from '@enum/Order' +import { Order } from '@enum/Order' interface FindContributionMessagesOptions { contributionId: number diff --git a/backend/src/graphql/resolver/util/findContributions.ts b/backend/src/graphql/resolver/util/findContributions.ts index 26ad152c3..9611c64a3 100644 --- a/backend/src/graphql/resolver/util/findContributions.ts +++ b/backend/src/graphql/resolver/util/findContributions.ts @@ -5,12 +5,12 @@ import { LessThanOrEqual, Like, Not, - type SelectQueryBuilder, + SelectQueryBuilder, } from '@dbTools/typeorm' import { Contribution as DbContribution } from '@entity/Contribution' -import type { Paginated } from '@arg/Paginated' -import type { SearchContributionsFilterArgs } from '@arg/SearchContributionsFilterArgs' +import { Paginated } from '@arg/Paginated' +import { SearchContributionsFilterArgs } from '@arg/SearchContributionsFilterArgs' import { Connection } from '@typeorm/connection' import { LogError } from '@/server/LogError' diff --git a/backend/src/graphql/resolver/util/findUserByIdentifier.ts b/backend/src/graphql/resolver/util/findUserByIdentifier.ts index 9831d0d28..bdd179091 100644 --- a/backend/src/graphql/resolver/util/findUserByIdentifier.ts +++ b/backend/src/graphql/resolver/util/findUserByIdentifier.ts @@ -1,5 +1,5 @@ -import type { FindOptionsWhere } from '@dbTools/typeorm' -import type { Community } from '@entity/Community' +import { FindOptionsWhere } from '@dbTools/typeorm' +import { Community } from '@entity/Community' import { User as DbUser } from '@entity/User' import { UserContact as DbUserContact } from '@entity/UserContact' import { isURL } from 'class-validator' diff --git a/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts b/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts index 5597b9ef9..75892a201 100644 --- a/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts +++ b/backend/src/graphql/resolver/util/findUserByIdentifiers.test.ts @@ -1,7 +1,7 @@ -import type { Connection } from '@dbTools/typeorm' -import type { Community as DbCommunity } from '@entity/Community' -import type { User as DbUser } from '@entity/User' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { Connection } from '@dbTools/typeorm' +import { Community as DbCommunity } from '@entity/Community' +import { User as DbUser } from '@entity/User' +import { ApolloServerTestClient } from 'apollo-server-testing' import { cleanDB, testEnvironment } from '@test/helpers' diff --git a/backend/src/graphql/resolver/util/findUsers.ts b/backend/src/graphql/resolver/util/findUsers.ts index c9c6b4a6b..d4de5a405 100644 --- a/backend/src/graphql/resolver/util/findUsers.ts +++ b/backend/src/graphql/resolver/util/findUsers.ts @@ -1,7 +1,7 @@ import { IsNull, Like, Not } from '@dbTools/typeorm' import { User as DbUser } from '@entity/User' -import type { SearchUsersFilters } from '@arg/SearchUsersFilters' +import { SearchUsersFilters } from '@arg/SearchUsersFilters' import { Order } from '@enum/Order' function likeQuery(searchCriteria: string) { diff --git a/backend/src/graphql/resolver/util/getTransactionList.ts b/backend/src/graphql/resolver/util/getTransactionList.ts index 47cfa72e2..654f4e002 100644 --- a/backend/src/graphql/resolver/util/getTransactionList.ts +++ b/backend/src/graphql/resolver/util/getTransactionList.ts @@ -1,6 +1,6 @@ import { Transaction as DbTransaction } from '@entity/Transaction' -import type { Order } from '@enum/Order' +import { Order } from '@enum/Order' export const getTransactionList = async ( userId: number, diff --git a/backend/src/graphql/resolver/util/modifyUserRole.ts b/backend/src/graphql/resolver/util/modifyUserRole.ts index da7bdbf6e..f9af28a22 100644 --- a/backend/src/graphql/resolver/util/modifyUserRole.ts +++ b/backend/src/graphql/resolver/util/modifyUserRole.ts @@ -1,4 +1,4 @@ -import type { User as DbUser } from '@entity/User' +import { User as DbUser } from '@entity/User' import { UserRole } from '@entity/UserRole' import { LogError } from '@/server/LogError' diff --git a/backend/src/graphql/resolver/util/processXComSendCoins.ts b/backend/src/graphql/resolver/util/processXComSendCoins.ts index 27d383f12..f0c779dbc 100644 --- a/backend/src/graphql/resolver/util/processXComSendCoins.ts +++ b/backend/src/graphql/resolver/util/processXComSendCoins.ts @@ -1,7 +1,7 @@ -import type { Community as DbCommunity } from '@entity/Community' +import { Community as DbCommunity } from '@entity/Community' import { FederatedCommunity as DbFederatedCommunity } from '@entity/FederatedCommunity' import { PendingTransaction as DbPendingTransaction } from '@entity/PendingTransaction' -import type { User as dbUser } from '@entity/User' +import { User as dbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { CONFIG } from '@/config' diff --git a/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts b/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts index 74cdc7fbe..b212add4a 100644 --- a/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts +++ b/backend/src/graphql/resolver/util/sendTransactionsToDltConnector.test.ts @@ -1,13 +1,13 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { Community } from '@entity/Community' import { DltTransaction } from '@entity/DltTransaction' import { Transaction } from '@entity/Transaction' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { Decimal } from 'decimal.js-light' // import { GraphQLClient } from 'graphql-request' // import { Response } from 'graphql-request/dist/types' import { GraphQLClient } from 'graphql-request' -import type { Response } from 'graphql-request/dist/types' +import { Response } from 'graphql-request/dist/types' import { v4 as uuidv4 } from 'uuid' import { cleanDB, testEnvironment } from '@test/helpers' diff --git a/backend/src/graphql/resolver/util/sendUserToGms.ts b/backend/src/graphql/resolver/util/sendUserToGms.ts index 35fa84bbc..4212a1890 100644 --- a/backend/src/graphql/resolver/util/sendUserToGms.ts +++ b/backend/src/graphql/resolver/util/sendUserToGms.ts @@ -1,4 +1,4 @@ -import type { Community as DbCommunity } from '@entity/Community' +import { Community as DbCommunity } from '@entity/Community' import { User as DbUser } from '@entity/User' import { createGmsUser, updateGmsUser } from '@/apis/gms/GmsClient' diff --git a/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts b/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts index 286f2ba86..7457d3f0d 100644 --- a/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts +++ b/backend/src/graphql/resolver/util/settlePendingSenderTransaction.ts @@ -1,8 +1,8 @@ import { getConnection } from '@dbTools/typeorm' -import type { Community as DbCommunity } from '@entity/Community' +import { Community as DbCommunity } from '@entity/Community' import { PendingTransaction as DbPendingTransaction } from '@entity/PendingTransaction' import { Transaction as dbTransaction } from '@entity/Transaction' -import type { User as DbUser } from '@entity/User' +import { User as DbUser } from '@entity/User' import { Decimal } from 'decimal.js-light' import { PendingTransactionState } from '@/graphql/enum/PendingTransactionState' diff --git a/backend/src/graphql/resolver/util/storeForeignUser.ts b/backend/src/graphql/resolver/util/storeForeignUser.ts index f01404b73..5942159b4 100644 --- a/backend/src/graphql/resolver/util/storeForeignUser.ts +++ b/backend/src/graphql/resolver/util/storeForeignUser.ts @@ -1,7 +1,7 @@ -import type { Community as DbCommunity } from '@entity/Community' +import { Community as DbCommunity } from '@entity/Community' import { User as DbUser } from '@entity/User' -import type { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' +import { SendCoinsResult } from '@/federation/client/1_0/model/SendCoinsResult' import { backendLogger as logger } from '@/server/logger' export async function storeForeignUser( diff --git a/backend/src/graphql/resolver/util/syncHumhub.ts b/backend/src/graphql/resolver/util/syncHumhub.ts index 9aacbc99d..6163855b9 100644 --- a/backend/src/graphql/resolver/util/syncHumhub.ts +++ b/backend/src/graphql/resolver/util/syncHumhub.ts @@ -1,11 +1,11 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import { HumHubClient } from '@/apis/humhub/HumHubClient' -import type { GetUser } from '@/apis/humhub/model/GetUser' +import { GetUser } from '@/apis/humhub/model/GetUser' import { ExecutedHumhubAction, syncUser } from '@/apis/humhub/syncUser' import { PublishNameLogic } from '@/data/PublishName.logic' -import type { UpdateUserInfosArgs } from '@/graphql/arg/UpdateUserInfosArgs' -import type { PublishNameType } from '@/graphql/enum/PublishNameType' +import { UpdateUserInfosArgs } from '@/graphql/arg/UpdateUserInfosArgs' +import { PublishNameType } from '@/graphql/enum/PublishNameType' import { backendLogger as logger } from '@/server/logger' /** diff --git a/backend/src/graphql/resolver/util/transactionLinkList.ts b/backend/src/graphql/resolver/util/transactionLinkList.ts index 8759e5de9..25567f633 100644 --- a/backend/src/graphql/resolver/util/transactionLinkList.ts +++ b/backend/src/graphql/resolver/util/transactionLinkList.ts @@ -1,11 +1,11 @@ import { IsNull, MoreThan } from '@dbTools/typeorm' import { TransactionLink as DbTransactionLink } from '@entity/TransactionLink' -import type { User as DbUser } from '@entity/User' +import { User as DbUser } from '@entity/User' -import type { Paginated } from '@arg/Paginated' -import type { TransactionLinkFilters } from '@arg/TransactionLinkFilters' +import { Paginated } from '@arg/Paginated' +import { TransactionLinkFilters } from '@arg/TransactionLinkFilters' import { Order } from '@enum/Order' -import { TransactionLink, type TransactionLinkResult } from '@model/TransactionLink' +import { TransactionLink, TransactionLinkResult } from '@model/TransactionLink' import { User } from '@/graphql/model/User' diff --git a/backend/src/graphql/resolver/util/validateAlias.test.ts b/backend/src/graphql/resolver/util/validateAlias.test.ts index c29d11f7e..e0e35c3b7 100644 --- a/backend/src/graphql/resolver/util/validateAlias.test.ts +++ b/backend/src/graphql/resolver/util/validateAlias.test.ts @@ -1,6 +1,6 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { User } from '@entity/User' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { cleanDB, testEnvironment } from '@test/helpers' import { i18n as localization, logger } from '@test/testSetup' diff --git a/backend/src/graphql/schema.ts b/backend/src/graphql/schema.ts index f6ded16e7..bcb8081a6 100644 --- a/backend/src/graphql/schema.ts +++ b/backend/src/graphql/schema.ts @@ -1,7 +1,7 @@ import path from 'path' import { Decimal } from 'decimal.js-light' -import type { GraphQLSchema } from 'graphql' +import { GraphQLSchema } from 'graphql' import { buildSchema } from 'type-graphql' import { Location } from '@model/Location' diff --git a/backend/src/graphql/validator/ContributionStatusArray.ts b/backend/src/graphql/validator/ContributionStatusArray.ts index c4f430c68..dd7c93277 100644 --- a/backend/src/graphql/validator/ContributionStatusArray.ts +++ b/backend/src/graphql/validator/ContributionStatusArray.ts @@ -1,4 +1,4 @@ -import { type ValidationOptions, registerDecorator } from 'class-validator' +import { ValidationOptions, registerDecorator } from 'class-validator' import { ContributionStatus } from '@enum/ContributionStatus' diff --git a/backend/src/graphql/validator/DateString.ts b/backend/src/graphql/validator/DateString.ts index 82a6592e4..3502b8c84 100644 --- a/backend/src/graphql/validator/DateString.ts +++ b/backend/src/graphql/validator/DateString.ts @@ -1,8 +1,4 @@ -import { - type ValidationArguments, - type ValidationOptions, - registerDecorator, -} from 'class-validator' +import { ValidationArguments, ValidationOptions, registerDecorator } from 'class-validator' export function isValidDateString(validationOptions?: ValidationOptions) { return function (object: Object, propertyName: string) { diff --git a/backend/src/graphql/validator/Decimal.ts b/backend/src/graphql/validator/Decimal.ts index c3d79683e..0300c6d9c 100644 --- a/backend/src/graphql/validator/Decimal.ts +++ b/backend/src/graphql/validator/Decimal.ts @@ -1,9 +1,5 @@ -import { - type ValidationArguments, - type ValidationOptions, - registerDecorator, -} from 'class-validator' -import type { Decimal } from 'decimal.js-light' +import { ValidationArguments, ValidationOptions, registerDecorator } from 'class-validator' +import { Decimal } from 'decimal.js-light' export function IsPositiveDecimal(validationOptions?: ValidationOptions) { return function (object: Object, propertyName: string) { diff --git a/backend/src/graphql/validator/Location.ts b/backend/src/graphql/validator/Location.ts index 74a833cb2..0bbf9fb92 100644 --- a/backend/src/graphql/validator/Location.ts +++ b/backend/src/graphql/validator/Location.ts @@ -1,10 +1,6 @@ -import { - type ValidationArguments, - type ValidationOptions, - registerDecorator, -} from 'class-validator' +import { ValidationArguments, ValidationOptions, registerDecorator } from 'class-validator' -import type { Location } from '@model/Location' +import { Location } from '@model/Location' import { Location2Point } from '@/graphql/resolver/util/Location2Point' diff --git a/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts b/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts index e933bf411..06dfea6e7 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/AbstractUnconfirmedContribution.role.ts @@ -1,13 +1,13 @@ -import type { Contribution } from '@entity/Contribution' -import type { User } from '@entity/User' -import type { Decimal } from 'decimal.js-light' +import { Contribution } from '@entity/Contribution' +import { User } from '@entity/User' +import { Decimal } from 'decimal.js-light' -import type { Role } from '@/auth/Role' +import { Role } from '@/auth/Role' import { ContributionLogic } from '@/data/Contribution.logic' import { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' import { ContributionStatus } from '@/graphql/enum/ContributionStatus' import { LogError } from '@/server/LogError' -import { type Context, getClientTimezoneOffset } from '@/server/context' +import { Context, getClientTimezoneOffset } from '@/server/context' export abstract class AbstractUnconfirmedContributionRole { private availableCreationSums?: Decimal[] diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts index 127d41f40..f958693c8 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdmin.role.ts @@ -1,10 +1,10 @@ -import type { Contribution } from '@entity/Contribution' -import type { User } from '@entity/User' +import { Contribution } from '@entity/Contribution' +import { User } from '@entity/User' import { RIGHTS } from '@/auth/RIGHTS' -import type { Role } from '@/auth/Role' -import type { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' -import type { AdminUpdateContributionArgs } from '@/graphql/arg/AdminUpdateContributionArgs' +import { Role } from '@/auth/Role' +import { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' +import { AdminUpdateContributionArgs } from '@/graphql/arg/AdminUpdateContributionArgs' import { ContributionStatus } from '@/graphql/enum/ContributionStatus' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts index 5d992dad4..8db74d8d4 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionAdminAddMessage.role.ts @@ -1,10 +1,10 @@ -import type { Contribution } from '@entity/Contribution' -import type { User } from '@entity/User' +import { Contribution } from '@entity/Contribution' +import { User } from '@entity/User' import { RIGHTS } from '@/auth/RIGHTS' -import type { Role } from '@/auth/Role' -import type { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' -import type { ContributionMessageArgs } from '@/graphql/arg/ContributionMessageArgs' +import { Role } from '@/auth/Role' +import { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' +import { ContributionMessageArgs } from '@/graphql/arg/ContributionMessageArgs' import { ContributionMessageType } from '@/graphql/enum/ContributionMessageType' import { ContributionStatus } from '@/graphql/enum/ContributionStatus' import { LogError } from '@/server/LogError' diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts index eaa6b62b0..fe7d55d80 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUser.role.ts @@ -1,8 +1,8 @@ -import type { Contribution } from '@entity/Contribution' -import type { User } from '@entity/User' +import { Contribution } from '@entity/Contribution' +import { User } from '@entity/User' -import type { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' -import type { ContributionArgs } from '@/graphql/arg/ContributionArgs' +import { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' +import { ContributionArgs } from '@/graphql/arg/ContributionArgs' import { ContributionStatus } from '@/graphql/enum/ContributionStatus' import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' diff --git a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts index d69bfd81a..9b81b07bd 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UnconfirmedContributionUserAddMessage.role.ts @@ -1,8 +1,8 @@ -import type { Contribution } from '@entity/Contribution' -import type { User } from '@entity/User' +import { Contribution } from '@entity/Contribution' +import { User } from '@entity/User' -import type { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' -import type { ContributionMessageArgs } from '@/graphql/arg/ContributionMessageArgs' +import { ContributionMessageBuilder } from '@/data/ContributionMessage.builder' +import { ContributionMessageArgs } from '@/graphql/arg/ContributionMessageArgs' import { ContributionMessageType } from '@/graphql/enum/ContributionMessageType' import { ContributionStatus } from '@/graphql/enum/ContributionStatus' import { LogError } from '@/server/LogError' diff --git a/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts b/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts index 8df520c5d..60d9cbf19 100644 --- a/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts +++ b/backend/src/interactions/updateUnconfirmedContribution/UpdateUnconfirmedContribution.context.ts @@ -1,16 +1,16 @@ -import type { EntityManager, FindOneOptions, FindOptionsRelations } from '@dbTools/typeorm' +import { EntityManager, FindOneOptions, FindOptionsRelations } from '@dbTools/typeorm' import { Contribution } from '@entity/Contribution' -import type { ContributionMessage } from '@entity/ContributionMessage' -import type { Decimal } from 'decimal.js-light' +import { ContributionMessage } from '@entity/ContributionMessage' +import { Decimal } from 'decimal.js-light' import { AdminUpdateContributionArgs } from '@arg/AdminUpdateContributionArgs' import { ContributionArgs } from '@arg/ContributionArgs' import { ContributionMessageArgs } from '@/graphql/arg/ContributionMessageArgs' import { LogError } from '@/server/LogError' -import type { Context } from '@/server/context' +import { Context } from '@/server/context' -import type { AbstractUnconfirmedContributionRole } from './AbstractUnconfirmedContribution.role' +import { AbstractUnconfirmedContributionRole } from './AbstractUnconfirmedContribution.role' import { UnconfirmedContributionAdminRole } from './UnconfirmedContributionAdmin.role' import { UnconfirmedContributionAdminAddMessageRole } from './UnconfirmedContributionAdminAddMessage.role' import { UnconfirmedContributionUserRole } from './UnconfirmedContributionUser.role' diff --git a/backend/src/logging/BalanceLogging.view.ts b/backend/src/logging/BalanceLogging.view.ts index 5f22eca89..b4135bbf9 100644 --- a/backend/src/logging/BalanceLogging.view.ts +++ b/backend/src/logging/BalanceLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import type { Balance } from '@/graphql/model/Balance' +import { Balance } from '@/graphql/model/Balance' export class BalanceLoggingView extends AbstractLoggingView { public constructor(private self: Balance) { diff --git a/backend/src/logging/DecayLogging.view.ts b/backend/src/logging/DecayLogging.view.ts index d6c8de618..92cc836aa 100644 --- a/backend/src/logging/DecayLogging.view.ts +++ b/backend/src/logging/DecayLogging.view.ts @@ -1,6 +1,6 @@ import { AbstractLoggingView } from '@logging/AbstractLogging.view' -import type { Decay } from '@/graphql/model/Decay' +import { Decay } from '@/graphql/model/Decay' export class DecayLoggingView extends AbstractLoggingView { public constructor(private self: Decay) { diff --git a/backend/src/password/EncryptorUtils.ts b/backend/src/password/EncryptorUtils.ts index ecfc5e6ed..25ee852bc 100644 --- a/backend/src/password/EncryptorUtils.ts +++ b/backend/src/password/EncryptorUtils.ts @@ -1,8 +1,8 @@ import { cpus } from 'os' import path from 'path' -import type { User } from '@entity/User' -import { type Pool, pool } from 'workerpool' +import { User } from '@entity/User' +import { Pool, pool } from 'workerpool' import { PasswordEncryptionType } from '@enum/PasswordEncryptionType' diff --git a/backend/src/password/PasswordEncryptor.ts b/backend/src/password/PasswordEncryptor.ts index d6441c35d..b9fdb65aa 100644 --- a/backend/src/password/PasswordEncryptor.ts +++ b/backend/src/password/PasswordEncryptor.ts @@ -1,4 +1,4 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' // import { logger } from '@test/testSetup' getting error "jest is not defined" import { SecretKeyCryptographyCreateKey, getUserCryptographicSalt } from './EncryptorUtils' diff --git a/backend/src/password/__mocks__/EncryptorUtils.ts b/backend/src/password/__mocks__/EncryptorUtils.ts index dc01b38e0..6f8ea8f7d 100644 --- a/backend/src/password/__mocks__/EncryptorUtils.ts +++ b/backend/src/password/__mocks__/EncryptorUtils.ts @@ -1,4 +1,4 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import { PasswordEncryptionType } from '@enum/PasswordEncryptionType' diff --git a/backend/src/seeds/contributionLink/index.ts b/backend/src/seeds/contributionLink/index.ts index 377afcd9a..41d28eb60 100644 --- a/backend/src/seeds/contributionLink/index.ts +++ b/backend/src/seeds/contributionLink/index.ts @@ -1,4 +1,4 @@ -import type { ContributionLinkInterface } from './ContributionLinkInterface' +import { ContributionLinkInterface } from './ContributionLinkInterface' export const contributionLinks: ContributionLinkInterface[] = [ { diff --git a/backend/src/seeds/creation/index.ts b/backend/src/seeds/creation/index.ts index 0da1e9d4e..c22a99b0c 100644 --- a/backend/src/seeds/creation/index.ts +++ b/backend/src/seeds/creation/index.ts @@ -1,6 +1,6 @@ import { nMonthsBefore } from '@/seeds/factory/creation' -import type { CreationInterface } from './CreationInterface' +import { CreationInterface } from './CreationInterface' const bobsSendings = [ { diff --git a/backend/src/seeds/factory/contributionLink.ts b/backend/src/seeds/factory/contributionLink.ts index a6f2be4c2..4e8c945f3 100644 --- a/backend/src/seeds/factory/contributionLink.ts +++ b/backend/src/seeds/factory/contributionLink.ts @@ -1,8 +1,8 @@ -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' -import type { ContributionLink } from '@model/ContributionLink' +import { ContributionLink } from '@model/ContributionLink' -import type { ContributionLinkInterface } from '@/seeds/contributionLink/ContributionLinkInterface' +import { ContributionLinkInterface } from '@/seeds/contributionLink/ContributionLinkInterface' import { createContributionLink, login } from '@/seeds/graphql/mutations' export const contributionLinkFactory = async ( diff --git a/backend/src/seeds/factory/creation.ts b/backend/src/seeds/factory/creation.ts index 613d95039..4fce38206 100644 --- a/backend/src/seeds/factory/creation.ts +++ b/backend/src/seeds/factory/creation.ts @@ -1,9 +1,9 @@ import { Contribution } from '@entity/Contribution' import { Transaction } from '@entity/Transaction' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { findUserByEmail } from '@/graphql/resolver/UserResolver' -import type { CreationInterface } from '@/seeds/creation/CreationInterface' +import { CreationInterface } from '@/seeds/creation/CreationInterface' import { confirmContribution, createContribution, login } from '@/seeds/graphql/mutations' export const nMonthsBefore = (date: Date, months = 1): string => { diff --git a/backend/src/seeds/factory/transactionLink.ts b/backend/src/seeds/factory/transactionLink.ts index 476744ab9..098100622 100644 --- a/backend/src/seeds/factory/transactionLink.ts +++ b/backend/src/seeds/factory/transactionLink.ts @@ -1,9 +1,9 @@ import { TransactionLink } from '@entity/TransactionLink' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { transactionLinkExpireDate } from '@/graphql/resolver/TransactionLinkResolver' import { createTransactionLink, login } from '@/seeds/graphql/mutations' -import type { TransactionLinkInterface } from '@/seeds/transactionLink/TransactionLinkInterface' +import { TransactionLinkInterface } from '@/seeds/transactionLink/TransactionLinkInterface' export const transactionLinkFactory = async ( client: ApolloServerTestClient, diff --git a/backend/src/seeds/factory/user.ts b/backend/src/seeds/factory/user.ts index 1105e59dc..1eab302c0 100644 --- a/backend/src/seeds/factory/user.ts +++ b/backend/src/seeds/factory/user.ts @@ -1,12 +1,12 @@ import { User } from '@entity/User' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { RoleNames } from '@enum/RoleNames' import { setUserRole } from '@/graphql/resolver/util/modifyUserRole' import { writeHomeCommunityEntry } from '@/seeds/community' import { createUser, setPassword } from '@/seeds/graphql/mutations' -import type { UserInterface } from '@/seeds/users/UserInterface' +import { UserInterface } from '@/seeds/users/UserInterface' export const userFactory = async ( client: ApolloServerTestClient, diff --git a/backend/src/seeds/transactionLink/index.ts b/backend/src/seeds/transactionLink/index.ts index b05d10c5c..c3245c2b6 100644 --- a/backend/src/seeds/transactionLink/index.ts +++ b/backend/src/seeds/transactionLink/index.ts @@ -1,4 +1,4 @@ -import type { TransactionLinkInterface } from './TransactionLinkInterface' +import { TransactionLinkInterface } from './TransactionLinkInterface' export const transactionLinks: TransactionLinkInterface[] = [ { diff --git a/backend/src/seeds/users/bibi-bloxberg.ts b/backend/src/seeds/users/bibi-bloxberg.ts index 43abaa780..9a40e922b 100644 --- a/backend/src/seeds/users/bibi-bloxberg.ts +++ b/backend/src/seeds/users/bibi-bloxberg.ts @@ -1,4 +1,4 @@ -import type { UserInterface } from './UserInterface' +import { UserInterface } from './UserInterface' export const bibiBloxberg: UserInterface = { email: 'bibi@bloxberg.de', diff --git a/backend/src/seeds/users/bob-baumeister.ts b/backend/src/seeds/users/bob-baumeister.ts index b917c8012..b7902f7bc 100644 --- a/backend/src/seeds/users/bob-baumeister.ts +++ b/backend/src/seeds/users/bob-baumeister.ts @@ -1,4 +1,4 @@ -import type { UserInterface } from './UserInterface' +import { UserInterface } from './UserInterface' export const bobBaumeister: UserInterface = { alias: 'MeisterBob', diff --git a/backend/src/seeds/users/garrick-ollivander.ts b/backend/src/seeds/users/garrick-ollivander.ts index 92e7568d0..264a866bd 100644 --- a/backend/src/seeds/users/garrick-ollivander.ts +++ b/backend/src/seeds/users/garrick-ollivander.ts @@ -1,4 +1,4 @@ -import type { UserInterface } from './UserInterface' +import { UserInterface } from './UserInterface' export const garrickOllivander: UserInterface = { email: 'garrick@ollivander.com', diff --git a/backend/src/seeds/users/peter-lustig.ts b/backend/src/seeds/users/peter-lustig.ts index 3eee6a8cc..ff1fe065e 100644 --- a/backend/src/seeds/users/peter-lustig.ts +++ b/backend/src/seeds/users/peter-lustig.ts @@ -1,6 +1,6 @@ import { RoleNames } from '@enum/RoleNames' -import type { UserInterface } from './UserInterface' +import { UserInterface } from './UserInterface' export const peterLustig: UserInterface = { email: 'peter@lustig.de', diff --git a/backend/src/seeds/users/raeuber-hotzenplotz.ts b/backend/src/seeds/users/raeuber-hotzenplotz.ts index cc8391037..62601efff 100644 --- a/backend/src/seeds/users/raeuber-hotzenplotz.ts +++ b/backend/src/seeds/users/raeuber-hotzenplotz.ts @@ -1,4 +1,4 @@ -import type { UserInterface } from './UserInterface' +import { UserInterface } from './UserInterface' export const raeuberHotzenplotz: UserInterface = { email: 'raeuber@hotzenplotz.de', diff --git a/backend/src/seeds/users/stephen-hawking.ts b/backend/src/seeds/users/stephen-hawking.ts index 69b10d8e9..a683b7579 100644 --- a/backend/src/seeds/users/stephen-hawking.ts +++ b/backend/src/seeds/users/stephen-hawking.ts @@ -1,4 +1,4 @@ -import type { UserInterface } from './UserInterface' +import { UserInterface } from './UserInterface' export const stephenHawking: UserInterface = { email: 'stephen@hawking.uk', diff --git a/backend/src/server/context.ts b/backend/src/server/context.ts index df3eed36b..1dc07660d 100644 --- a/backend/src/server/context.ts +++ b/backend/src/server/context.ts @@ -1,9 +1,9 @@ -import type { Transaction as dbTransaction } from '@entity/Transaction' -import type { User as dbUser } from '@entity/User' -import type { ExpressContext } from 'apollo-server-express' -import type { Decimal } from 'decimal.js-light' +import { Transaction as dbTransaction } from '@entity/Transaction' +import { User as dbUser } from '@entity/User' +import { ExpressContext } from 'apollo-server-express' +import { Decimal } from 'decimal.js-light' -import type { Role } from '@/auth/Role' +import { Role } from '@/auth/Role' import { LogError } from './LogError' diff --git a/backend/src/server/createServer.ts b/backend/src/server/createServer.ts index 11e19afa4..695e0d585 100644 --- a/backend/src/server/createServer.ts +++ b/backend/src/server/createServer.ts @@ -1,9 +1,9 @@ -import type { Connection as DbConnection } from '@dbTools/typeorm' +import { Connection as DbConnection } from '@dbTools/typeorm' import { ApolloServer } from 'apollo-server-express' -import express, { type Express, json, urlencoded } from 'express' +import express, { Express, json, urlencoded } from 'express' import { slowDown } from 'express-slow-down' import helmet from 'helmet' -import type { Logger } from 'log4js' +import { Logger } from 'log4js' import { CONFIG } from '@/config' import { schema } from '@/graphql/schema' diff --git a/backend/src/typeorm/connection.ts b/backend/src/typeorm/connection.ts index dcec5f560..f9b6744e8 100644 --- a/backend/src/typeorm/connection.ts +++ b/backend/src/typeorm/connection.ts @@ -1,6 +1,6 @@ // TODO This is super weird - since the entities are defined in another project they have their own globals. // We cannot use our connection here, but must use the external typeorm installation -import { type Connection as DbConnection, FileLogger, createConnection } from '@dbTools/typeorm' +import { Connection as DbConnection, FileLogger, createConnection } from '@dbTools/typeorm' import { entities } from '@entity/index' import { CONFIG } from '@/config' diff --git a/backend/src/util/calculateSenderBalance.ts b/backend/src/util/calculateSenderBalance.ts index ff6f562d2..d2973c982 100644 --- a/backend/src/util/calculateSenderBalance.ts +++ b/backend/src/util/calculateSenderBalance.ts @@ -1,6 +1,6 @@ -import type { Decimal } from 'decimal.js-light' +import { Decimal } from 'decimal.js-light' -import type { Decay } from '@model/Decay' +import { Decay } from '@model/Decay' import { getLastTransaction } from '@/graphql/resolver/util/getLastTransaction' diff --git a/backend/src/util/communityUser.ts b/backend/src/util/communityUser.ts index a736d01d8..4ac17eb0d 100644 --- a/backend/src/util/communityUser.ts +++ b/backend/src/util/communityUser.ts @@ -1,5 +1,5 @@ -import type { RemoveOptions, SaveOptions } from '@dbTools/typeorm' -import type { User as dbUser } from '@entity/User' +import { RemoveOptions, SaveOptions } from '@dbTools/typeorm' +import { User as dbUser } from '@entity/User' import { UserContact } from '@entity/UserContact' import { User } from '@model/User' diff --git a/backend/src/util/decay.ts b/backend/src/util/decay.ts index acdd61881..1d1775cc9 100644 --- a/backend/src/util/decay.ts +++ b/backend/src/util/decay.ts @@ -1,6 +1,6 @@ import { Decimal } from 'decimal.js-light' -import type { Decay } from '@model/Decay' +import { Decay } from '@model/Decay' import { CONFIG } from '@/config' import { LogError } from '@/server/LogError' diff --git a/backend/src/util/klicktipp.test.ts b/backend/src/util/klicktipp.test.ts index b7a1507ac..d53dd3ff0 100644 --- a/backend/src/util/klicktipp.test.ts +++ b/backend/src/util/klicktipp.test.ts @@ -1,6 +1,6 @@ -import type { Connection } from '@dbTools/typeorm' +import { Connection } from '@dbTools/typeorm' import { Event as DbEvent } from '@entity/Event' -import type { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing' import { cleanDB, resetToken, testEnvironment } from '@test/helpers' diff --git a/backend/src/util/utilities.ts b/backend/src/util/utilities.ts index a2a11604f..0e8a8da85 100644 --- a/backend/src/util/utilities.ts +++ b/backend/src/util/utilities.ts @@ -1,6 +1,6 @@ import { promisify } from 'util' -import type { Decimal } from 'decimal.js-light' +import { Decimal } from 'decimal.js-light' import i18n from 'i18n' export const objectValuesToArray = (obj: Record): string[] => diff --git a/backend/src/util/validate.ts b/backend/src/util/validate.ts index 0e0aba9b7..6ea1c1f7b 100644 --- a/backend/src/util/validate.ts +++ b/backend/src/util/validate.ts @@ -1,8 +1,8 @@ -import type { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' +import { TransactionLink as dbTransactionLink } from '@entity/TransactionLink' import { Decimal } from 'decimal.js-light' import { validate, version } from 'uuid' -import type { Decay } from '@model/Decay' +import { Decay } from '@model/Decay' import { getLastTransaction } from '@/graphql/resolver/util/getLastTransaction' import { transactionLinkSummary } from '@/graphql/resolver/util/transactionLinkSummary' diff --git a/backend/src/util/virtualTransactions.ts b/backend/src/util/virtualTransactions.ts index 0c22405d2..8be04b34d 100644 --- a/backend/src/util/virtualTransactions.ts +++ b/backend/src/util/virtualTransactions.ts @@ -1,10 +1,10 @@ -import type { RemoveOptions, SaveOptions } from '@dbTools/typeorm' -import type { Transaction as dbTransaction } from '@entity/Transaction' +import { RemoveOptions, SaveOptions } from '@dbTools/typeorm' +import { Transaction as dbTransaction } from '@entity/Transaction' import { Decimal } from 'decimal.js-light' import { TransactionTypeId } from '@enum/TransactionTypeId' import { Transaction } from '@model/Transaction' -import type { User } from '@model/User' +import { User } from '@model/User' import { calculateDecay } from './decay' diff --git a/backend/yarn.lock b/backend/yarn.lock index 89cfc48d6..2a897aa27 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -379,6 +379,68 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" +"@emnapi/core@^1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@emnapi/core/-/core-1.3.1.tgz#9c62d185372d1bddc94682b87f376e03dfac3f16" + integrity sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog== + dependencies: + "@emnapi/wasi-threads" "1.0.1" + tslib "^2.4.0" + +"@emnapi/runtime@^1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.3.1.tgz#0fcaa575afc31f455fd33534c19381cfce6c6f60" + integrity sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw== + dependencies: + tslib "^2.4.0" + +"@emnapi/wasi-threads@1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@emnapi/wasi-threads/-/wasi-threads-1.0.1.tgz#d7ae71fd2166b1c916c6cd2d0df2ef565a2e1a5b" + integrity sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw== + dependencies: + tslib "^2.4.0" + +"@eslint-community/eslint-plugin-eslint-comments@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.1.tgz#3c65061e27f155eae3744c3b30c5a8253a959040" + integrity sha512-/HZbjIGaVO2zLlWX3gRgiHmKRVvvqrC0zVu3eXnIj1ORxoyfGSj50l0PfDfqihyZAqrDYzSMdJesXzFjvAoiLQ== + dependencies: + escape-string-regexp "^1.0.5" + ignore "^5.2.4" + +"@eslint-community/eslint-utils@^4.2.0": + version "4.5.1" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz#b0fc7e06d0c94f801537fd4237edc2706d3b8e4c" + integrity sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w== + dependencies: + eslint-visitor-keys "^3.4.3" + +"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1": + version "4.12.1" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.1.tgz#cfc6cffe39df390a3841cde2abccf92eaa7ae0e0" + integrity sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ== + +"@eslint/eslintrc@^2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad" + integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ== + dependencies: + ajv "^6.12.4" + debug "^4.3.2" + espree "^9.6.0" + globals "^13.19.0" + ignore "^5.2.0" + import-fresh "^3.2.1" + js-yaml "^4.1.0" + minimatch "^3.1.2" + strip-json-comments "^3.1.1" + +"@eslint/js@8.57.1": + version "8.57.1" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.1.tgz#de633db3ec2ef6a3c89e2f19038063e8a122e2c2" + integrity sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q== + "@graphql-typed-document-node/core@^3.1.1": version "3.2.0" resolved "https://registry.yarnpkg.com/@graphql-typed-document-node/core/-/core-3.2.0.tgz#5f3d96ec6b2354ad6d8a28bf216a1d97b5426861" @@ -408,6 +470,25 @@ dependencies: "@hapi/hoek" "^9.0.0" +"@humanwhocodes/config-array@^0.13.0": + version "0.13.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.13.0.tgz#fb907624df3256d04b9aa2df50d7aa97ec648748" + integrity sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw== + dependencies: + "@humanwhocodes/object-schema" "^2.0.3" + debug "^4.3.1" + minimatch "^3.0.5" + +"@humanwhocodes/module-importer@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" + integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== + +"@humanwhocodes/object-schema@^2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3" + integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA== + "@isaacs/cliui@^8.0.2": version "8.0.2" resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" @@ -716,6 +797,98 @@ dependencies: make-plural "^7.0.0" +"@napi-rs/wasm-runtime@^0.2.7": + version "0.2.7" + resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.7.tgz#288f03812a408bc53c2c3686c65f38fe90f295eb" + integrity sha512-5yximcFK5FNompXfJFoWanu5l8v1hNGqNHh9du1xETp9HWk/B/PzvchX55WYOPaIeNglG8++68AAiauBAtbnzw== + dependencies: + "@emnapi/core" "^1.3.1" + "@emnapi/runtime" "^1.3.1" + "@tybys/wasm-util" "^0.9.0" + +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== + dependencies: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== + +"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +"@nolyfill/is-core-module@1.0.39": + version "1.0.39" + resolved "https://registry.yarnpkg.com/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz#3dc35ba0f1e66b403c00b39344f870298ebb1c8e" + integrity sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA== + +"@oxc-resolver/binding-darwin-arm64@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-darwin-arm64/-/binding-darwin-arm64-5.0.0.tgz#c99057f297954f197217e75d63ff92d4514e354a" + integrity sha512-zwHAf+owoxSWTDD4dFuwW+FkpaDzbaL30H5Ltocb+RmLyg4WKuteusRLKh5Y8b/cyu7UzhxM0haIqQjyqA1iuA== + +"@oxc-resolver/binding-darwin-x64@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-darwin-x64/-/binding-darwin-x64-5.0.0.tgz#530cf02f3a3833a3932fc22d732d757cdc7e3cbf" + integrity sha512-1lS3aBNVjVQKBvZdHm13+8tSjvu2Tl1Cv4FnUyMYxqx6+rsom2YaOylS5LhDUwfZu0zAgpLMwK6kGpF/UPncNg== + +"@oxc-resolver/binding-freebsd-x64@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-freebsd-x64/-/binding-freebsd-x64-5.0.0.tgz#4a10430b9375f17ea5c5f8a4439aa2901dcaa5c2" + integrity sha512-q9sRd68wC1/AJ0eu6ClhxlklVfe8gH4wrUkSyEbIYTZ8zY5yjsLY3fpqqsaCvWJUx65nW+XtnAxCGCi5AXr1Mw== + +"@oxc-resolver/binding-linux-arm-gnueabihf@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-5.0.0.tgz#f082550d0ff62e772657ebccea8d2f7751d2130b" + integrity sha512-catYavWsvqViYnCveQjhrK6yVYDEPFvIOgGLxnz5r2dcgrjpmquzREoyss0L2QG/J5HTTbwqwZ1kk+g56hE/1A== + +"@oxc-resolver/binding-linux-arm64-gnu@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-5.0.0.tgz#d016b164f46548759454e58a42289d4e45030e69" + integrity sha512-l/0pWoQM5kVmJLg4frQ1mKZOXgi0ex/hzvFt8E4WK2ifXr5JgKFUokxsb/oat7f5YzdJJh5r9p+qS/t3dA26Aw== + +"@oxc-resolver/binding-linux-arm64-musl@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-arm64-musl/-/binding-linux-arm64-musl-5.0.0.tgz#c9ce09343c877e1000a8e2b2b04694d94ae5a918" + integrity sha512-bx0oz/oaAW4FGYqpIIxJCnmgb906YfMhTEWCJvYkxjpEI8VKLJEL3PQevYiqDq36SA0yRLJ/sQK2fqry8AFBfA== + +"@oxc-resolver/binding-linux-x64-gnu@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-x64-gnu/-/binding-linux-x64-gnu-5.0.0.tgz#10476acfa3e8e46331820a629914d351df0ccf8c" + integrity sha512-4PH++qbSIhlRsFYdN1P9neDov4OGhTGo5nbQ1D7AL6gWFLo3gdZTc00FM2y8JjeTcPWEXkViZuwpuc0w5i6qHg== + +"@oxc-resolver/binding-linux-x64-musl@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-linux-x64-musl/-/binding-linux-x64-musl-5.0.0.tgz#5b9383bc12c2c394f228b7771469c8aac3cb7bff" + integrity sha512-mLfQFpX3/5y9oWi0b+9FbWDkL2hM0Y29653beCHiHxAdGyVgb2DsJbK74WkMTwtSz9by8vyBh8jGPZcg1yLZbQ== + +"@oxc-resolver/binding-wasm32-wasi@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-wasm32-wasi/-/binding-wasm32-wasi-5.0.0.tgz#cb7ad0e966b3d746f2c8ea98660a2558d2db9057" + integrity sha512-uEhsAZSo65qsRi6+IfBTEUUFbjg7T2yruJeLYpFfEATpm3ory5Mgo5vx3L0c2/Cz1OUZXBgp3A8x6VMUB2jT2A== + dependencies: + "@napi-rs/wasm-runtime" "^0.2.7" + +"@oxc-resolver/binding-win32-arm64-msvc@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-5.0.0.tgz#44422b316f744dbd904254ee4fbdd2cd0444f613" + integrity sha512-8DbSso9Jp1ns8AYuZFXdRfAcdJrzZwkFm/RjPuvAPTENsm685dosBF8G6gTHQlHvULnk6o3sa9ygZaTGC/UoEw== + +"@oxc-resolver/binding-win32-x64-msvc@5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@oxc-resolver/binding-win32-x64-msvc/-/binding-win32-x64-msvc-5.0.0.tgz#1575b4aaf6f46faf5b95003be2a5dfd8ea1e10e0" + integrity sha512-ylppfPEg63NuRXOPNsXFlgyl37JrtRn0QMO26X3K3Ytp5HtLrMreQMGVtgr30e1l2YmAWqhvmKlCryOqzGPD/g== + "@pkgjs/parseargs@^0.11.0": version "0.11.0" resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" @@ -774,6 +947,11 @@ resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570" integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw== +"@rtsao/scc@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" + integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g== + "@selderee/plugin-htmlparser2@^0.11.0": version "0.11.0" resolved "https://registry.yarnpkg.com/@selderee/plugin-htmlparser2/-/plugin-htmlparser2-0.11.0.tgz#d5b5e29a7ba6d3958a1972c7be16f4b2c188c517" @@ -851,6 +1029,13 @@ resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9" integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== +"@tybys/wasm-util@^0.9.0": + version "0.9.0" + resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.9.0.tgz#3e75eb00604c8d6db470bf18c37b7d984a0e3355" + integrity sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw== + dependencies: + tslib "^2.4.0" + "@types/accepts@*", "@types/accepts@^1.3.5": version "1.3.7" resolved "https://registry.yarnpkg.com/@types/accepts/-/accepts-1.3.7.tgz#3b98b1889d2b2386604c2bbbe62e4fb51e95b265" @@ -1064,6 +1249,11 @@ dependencies: joi "*" +"@types/json-schema@^7.0.9": + version "7.0.15" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" + integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== + "@types/json5@^0.0.29": version "0.0.29" resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" @@ -1193,7 +1383,7 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.7.tgz#50ae4353eaaddc04044279812f52c8c65857dbcb" integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ== -"@types/semver@^7.3.3": +"@types/semver@^7.3.12", "@types/semver@^7.3.3": version "7.5.8" resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e" integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ== @@ -1251,6 +1441,102 @@ dependencies: "@types/yargs-parser" "*" +"@typescript-eslint/eslint-plugin@^5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db" + integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag== + dependencies: + "@eslint-community/regexpp" "^4.4.0" + "@typescript-eslint/scope-manager" "5.62.0" + "@typescript-eslint/type-utils" "5.62.0" + "@typescript-eslint/utils" "5.62.0" + debug "^4.3.4" + graphemer "^1.4.0" + ignore "^5.2.0" + natural-compare-lite "^1.4.0" + semver "^7.3.7" + tsutils "^3.21.0" + +"@typescript-eslint/experimental-utils@^5.9.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.62.0.tgz#14559bf73383a308026b427a4a6129bae2146741" + integrity sha512-RTXpeB3eMkpoclG3ZHft6vG/Z30azNHuqY6wKPBHlVMZFuEvrtlEDe8gMqDb+SO+9hjC/pLekeSCryf9vMZlCw== + dependencies: + "@typescript-eslint/utils" "5.62.0" + +"@typescript-eslint/parser@^5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7" + integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA== + dependencies: + "@typescript-eslint/scope-manager" "5.62.0" + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/typescript-estree" "5.62.0" + debug "^4.3.4" + +"@typescript-eslint/scope-manager@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c" + integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w== + dependencies: + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/visitor-keys" "5.62.0" + +"@typescript-eslint/type-utils@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a" + integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew== + dependencies: + "@typescript-eslint/typescript-estree" "5.62.0" + "@typescript-eslint/utils" "5.62.0" + debug "^4.3.4" + tsutils "^3.21.0" + +"@typescript-eslint/types@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" + integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== + +"@typescript-eslint/typescript-estree@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b" + integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA== + dependencies: + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/visitor-keys" "5.62.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + semver "^7.3.7" + tsutils "^3.21.0" + +"@typescript-eslint/utils@5.62.0", "@typescript-eslint/utils@^5.10.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86" + integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@types/json-schema" "^7.0.9" + "@types/semver" "^7.3.12" + "@typescript-eslint/scope-manager" "5.62.0" + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/typescript-estree" "5.62.0" + eslint-scope "^5.1.1" + semver "^7.3.7" + +"@typescript-eslint/visitor-keys@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e" + integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw== + dependencies: + "@typescript-eslint/types" "5.62.0" + eslint-visitor-keys "^3.3.0" + +"@ungap/structured-clone@^1.2.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.3.0.tgz#d06bbb384ebcf6c505fde1c3d0ed4ddffe0aaff8" + integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g== + "@wry/equality@^0.1.2": version "0.1.11" resolved "https://registry.yarnpkg.com/@wry/equality/-/equality-0.1.11.tgz#35cb156e4a96695aa81a9ecc4d03787bc17f1790" @@ -1286,6 +1572,11 @@ acorn-globals@^6.0.0: acorn "^7.1.1" acorn-walk "^7.1.1" +acorn-jsx@^5.3.2: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + acorn-walk@^7.1.1: version "7.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" @@ -1303,7 +1594,7 @@ acorn@^7.1.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.11.0, acorn@^8.2.4, acorn@^8.4.1: +acorn@^8.11.0, acorn@^8.2.4, acorn@^8.4.1, acorn@^8.9.0: version "8.14.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.1.tgz#721d5dc10f7d5b5609a891773d47731796935dfb" integrity sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg== @@ -1322,6 +1613,16 @@ agentkeepalive@^4.2.1: dependencies: humanize-ms "^1.2.1" +ajv@^6.12.4: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + alce@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/alce/-/alce-1.2.0.tgz#a8be2dacaac42494612f18dc09db691f3dea4aab" @@ -1556,6 +1857,11 @@ argparse@^1.0.7: dependencies: sprintf-js "~1.0.2" +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz#384d12a37295aec3769ab022ad323a18a51ccf8b" @@ -1574,11 +1880,56 @@ array-flatten@1.1.1: resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== +array-includes@^3.1.8: + version "3.1.8" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.8.tgz#5e370cbe172fdd5dd6530c1d4aadda25281ba97d" + integrity sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + get-intrinsic "^1.2.4" + is-string "^1.0.7" + array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== +array.prototype.findlastindex@^1.2.5: + version "1.2.6" + resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz#cfa1065c81dcb64e34557c9b81d012f6a421c564" + integrity sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.4" + define-properties "^1.2.1" + es-abstract "^1.23.9" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + es-shim-unscopables "^1.1.0" + +array.prototype.flat@^1.3.2: + version "1.3.3" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz#534aaf9e6e8dd79fb6b9a9917f839ef1ec63afe5" + integrity sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-shim-unscopables "^1.0.2" + +array.prototype.flatmap@^1.3.2: + version "1.3.3" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz#712cc792ae70370ae40586264629e33aab5dd38b" + integrity sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-shim-unscopables "^1.0.2" + array.prototype.reduce@^1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.8.tgz#42f97f5078daedca687d4463fd3c05cbfd83da57" @@ -1850,6 +2201,13 @@ buffer@^6.0.3: base64-js "^1.3.1" ieee754 "^1.2.1" +builtins@^5.0.1: + version "5.1.0" + resolved "https://registry.yarnpkg.com/builtins/-/builtins-5.1.0.tgz#6d85eeb360c4ebc166c3fdef922a15aa7316a5e8" + integrity sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg== + dependencies: + semver "^7.0.0" + busboy@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/busboy/-/busboy-0.3.1.tgz#170899274c5bf38aae27d5c62b71268cd585fd1b" @@ -2150,7 +2508,7 @@ cross-spawn@^6.0.0: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.1, cross-spawn@^7.0.3, cross-spawn@^7.0.6: +cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3, cross-spawn@^7.0.6: version "7.0.6" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== @@ -2255,7 +2613,7 @@ debug@2.6.9: dependencies: ms "2.0.0" -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.3, debug@^4.3.4: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@^4.3.7: version "4.4.0" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA== @@ -2289,6 +2647,11 @@ deep-extend@^0.6.0: resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== +deep-is@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + deepmerge@^4.2.2, deepmerge@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" @@ -2369,6 +2732,13 @@ diff@^4.0.1: resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + discontinuous-range@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/discontinuous-range/-/discontinuous-range-1.0.0.tgz#e38331f0844bba49b9a9cb71c771585aab1bc65a" @@ -2382,6 +2752,20 @@ display-notification@2.0.0: escape-string-applescript "^1.0.0" run-applescript "^3.0.0" +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== + dependencies: + esutils "^2.0.2" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + doctypes@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/doctypes/-/doctypes-1.1.0.tgz#ea80b106a87538774e8a3a4a5afe293de489e0a9" @@ -2640,6 +3024,13 @@ es-set-tostringtag@^2.1.0: has-tostringtag "^1.0.2" hasown "^2.0.2" +es-shim-unscopables@^1.0.2, es-shim-unscopables@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz#438df35520dac5d105f3943d927549ea3b00f4b5" + integrity sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw== + dependencies: + hasown "^2.0.2" + es-to-primitive@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.3.0.tgz#96c89c82cc49fd8794a24835ba3e1ff87f214e18" @@ -2669,11 +3060,21 @@ escape-string-applescript@^1.0.0: resolved "https://registry.yarnpkg.com/escape-string-applescript/-/escape-string-applescript-1.0.0.tgz#6f1c2294245d82c63bc03338dc19a94aa8428892" integrity sha512-4/hFwoYaC6TkpDn9A3pTC52zQPArFeXuIfhUtCGYdauTzXVP9H3BDr3oO/QzQehMpLDC7srvYgfwvImPFGfvBA== +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + escape-string-regexp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + escodegen@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.1.0.tgz#ba93bbb7a43986d29d6041f99f5262da773e2e17" @@ -2685,6 +3086,223 @@ escodegen@^2.0.0: optionalDependencies: source-map "~0.6.1" +eslint-config-prettier@^8.8.0: + version "8.10.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz#3a06a662130807e2502fc3ff8b4143d8a0658e11" + integrity sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg== + +eslint-config-standard@^17.0.0: + version "17.1.0" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-17.1.0.tgz#40ffb8595d47a6b242e07cbfd49dc211ed128975" + integrity sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q== + +eslint-import-resolver-node@^0.3.9: + version "0.3.9" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac" + integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g== + dependencies: + debug "^3.2.7" + is-core-module "^2.13.0" + resolve "^1.22.4" + +eslint-import-resolver-typescript@^3.5.4: + version "3.9.0" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.9.0.tgz#e94219827696f7d17139c343642859d60e277e78" + integrity sha512-EUcFmaz0zAa6P2C9jAb5XDymRld8S6TURvWcIW7y+czOW+K8hrjgQgbhBsNE0J/dDZ6HLfcn70LqnIil9W+ICw== + dependencies: + "@nolyfill/is-core-module" "1.0.39" + debug "^4.3.7" + get-tsconfig "^4.10.0" + is-bun-module "^1.0.2" + oxc-resolver "^5.0.0" + stable-hash "^0.0.5" + tinyglobby "^0.2.12" + +eslint-module-utils@^2.12.0: + version "2.12.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz#fe4cfb948d61f49203d7b08871982b65b9af0b0b" + integrity sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg== + dependencies: + debug "^3.2.7" + +eslint-plugin-es@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz#f0822f0c18a535a97c3e714e89f88586a7641ec9" + integrity sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ== + dependencies: + eslint-utils "^2.0.0" + regexpp "^3.0.0" + +eslint-plugin-import@^2.27.5: + version "2.31.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz#310ce7e720ca1d9c0bb3f69adfd1c6bdd7d9e0e7" + integrity sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A== + dependencies: + "@rtsao/scc" "^1.1.0" + array-includes "^3.1.8" + array.prototype.findlastindex "^1.2.5" + array.prototype.flat "^1.3.2" + array.prototype.flatmap "^1.3.2" + debug "^3.2.7" + doctrine "^2.1.0" + eslint-import-resolver-node "^0.3.9" + eslint-module-utils "^2.12.0" + hasown "^2.0.2" + is-core-module "^2.15.1" + is-glob "^4.0.3" + minimatch "^3.1.2" + object.fromentries "^2.0.8" + object.groupby "^1.0.3" + object.values "^1.2.0" + semver "^6.3.1" + string.prototype.trimend "^1.0.8" + tsconfig-paths "^3.15.0" + +eslint-plugin-jest@^27.2.1: + version "27.9.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz#7c98a33605e1d8b8442ace092b60e9919730000b" + integrity sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug== + dependencies: + "@typescript-eslint/utils" "^5.10.0" + +eslint-plugin-n@^15.7.0: + version "15.7.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-n/-/eslint-plugin-n-15.7.0.tgz#e29221d8f5174f84d18f2eb94765f2eeea033b90" + integrity sha512-jDex9s7D/Qial8AGVIHq4W7NswpUD5DPDL2RH8Lzd9EloWUuvUkHfv4FRLMipH5q2UtyurorBkPeNi1wVWNh3Q== + dependencies: + builtins "^5.0.1" + eslint-plugin-es "^4.1.0" + eslint-utils "^3.0.0" + ignore "^5.1.1" + is-core-module "^2.11.0" + minimatch "^3.1.2" + resolve "^1.22.1" + semver "^7.3.8" + +eslint-plugin-prettier@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz#651cbb88b1dab98bfd42f017a12fa6b2d993f94b" + integrity sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ== + dependencies: + prettier-linter-helpers "^1.0.0" + +eslint-plugin-promise@^6.1.1: + version "6.6.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-6.6.0.tgz#acd3fd7d55cead7a10f92cf698f36c0aafcd717a" + integrity sha512-57Zzfw8G6+Gq7axm2Pdo3gW/Rx3h9Yywgn61uE/3elTCOePEHVrn2i5CdfBwA1BLK0Q0WqctICIUSqXZW/VprQ== + +eslint-plugin-security@^1.7.1: + version "1.7.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-security/-/eslint-plugin-security-1.7.1.tgz#0e9c4a471f6e4d3ca16413c7a4a51f3966ba16e4" + integrity sha512-sMStceig8AFglhhT2LqlU5r+/fn9OwsA72O5bBuQVTssPCdQAOQzL+oMn/ZcpeUY6KcNfLJArgcrsSULNjYYdQ== + dependencies: + safe-regex "^2.1.1" + +eslint-plugin-type-graphql@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-type-graphql/-/eslint-plugin-type-graphql-1.0.0.tgz#d348560ed628d6ca1dfcea35a02891432daafe6b" + integrity sha512-l6Yjcylavs88mcRZ3znwRuu8R9a8eoLdSaMGfycaMragf+VMxiz3kwjPmYz8AZxqqp8gvM7/2EGJqkkjM4NKIQ== + dependencies: + "@typescript-eslint/experimental-utils" "^5.9.0" + +eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-scope@^7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f" + integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg== + dependencies: + esrecurse "^4.3.0" + estraverse "^5.2.0" + +eslint-utils@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== + dependencies: + eslint-visitor-keys "^2.0.0" + +eslint-visitor-keys@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== + +eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: + version "3.4.3" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" + integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== + +eslint@^8.57.1: + version "8.57.1" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.1.tgz#7df109654aba7e3bbe5c8eae533c5e461d3c6ca9" + integrity sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@eslint-community/regexpp" "^4.6.1" + "@eslint/eslintrc" "^2.1.4" + "@eslint/js" "8.57.1" + "@humanwhocodes/config-array" "^0.13.0" + "@humanwhocodes/module-importer" "^1.0.1" + "@nodelib/fs.walk" "^1.2.8" + "@ungap/structured-clone" "^1.2.0" + ajv "^6.12.4" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.3.2" + doctrine "^3.0.0" + escape-string-regexp "^4.0.0" + eslint-scope "^7.2.2" + eslint-visitor-keys "^3.4.3" + espree "^9.6.1" + esquery "^1.4.2" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^6.0.1" + find-up "^5.0.0" + glob-parent "^6.0.2" + globals "^13.19.0" + graphemer "^1.4.0" + ignore "^5.2.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + is-path-inside "^3.0.3" + js-yaml "^4.1.0" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash.merge "^4.6.2" + minimatch "^3.1.2" + natural-compare "^1.4.0" + optionator "^0.9.3" + strip-ansi "^6.0.1" + text-table "^0.2.0" + +espree@^9.6.0, espree@^9.6.1: + version "9.6.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" + integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== + dependencies: + acorn "^8.9.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^3.4.1" + esprima@^1.2.0: version "1.2.5" resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.2.5.tgz#0993502feaf668138325756f30f9a51feeec11e9" @@ -2695,12 +3313,31 @@ esprima@^4.0.0, esprima@^4.0.1: resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== +esquery@^1.4.2: + version "1.6.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7" + integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + estraverse@^1.5.0: version "1.9.3" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.9.3.tgz#af67f2dc922582415950926091a4005d29c9bb44" integrity sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA== -estraverse@^5.2.0: +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.1.0, estraverse@^5.2.0: version "5.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== @@ -2832,16 +3469,49 @@ faker@^5.5.3: resolved "https://registry.yarnpkg.com/faker/-/faker-5.5.3.tgz#c57974ee484431b25205c2c8dc09fda861e51e0e" integrity sha512-wLTv2a28wjUyWkbnX7u/ABZBkUkIF2fCd73V6P2oFqEGEktDfzWx4UxrSqtPRw0xPRAcjeAOIiJWqZm3pP4u3g== +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-diff@^1.1.2: + version "1.3.0" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.3.0.tgz#ece407fa550a64d638536cd727e129c61616e0f0" + integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw== + +fast-glob@^3.2.9: + version "3.3.3" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.3.tgz#d06d585ce8dba90a16b0505c543c3ccfb3aeb818" + integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.8" + fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== +fast-levenshtein@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== + fast-printf@^1.6.9: version "1.6.10" resolved "https://registry.yarnpkg.com/fast-printf/-/fast-printf-1.6.10.tgz#c44ad871726152159d7a903a5af0d65cf3d75875" integrity sha512-GwTgG9O4FVIdShhbVF3JxOgSBY2+ePGsu2V/UONgoCPzF9VY6ZdBMKsHKCYQHZwNk3qNouUolRDsgVxcVA5G1w== +fastq@^1.6.0: + version "1.19.1" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.19.1.tgz#d50eaba803c8846a883c16492821ebcd2cda55f5" + integrity sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ== + dependencies: + reusify "^1.0.4" + fb-watchman@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" @@ -2849,6 +3519,18 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" +fdir@^6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.4.3.tgz#011cdacf837eca9b811c89dbb902df714273db72" + integrity sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw== + +file-entry-cache@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== + dependencies: + flat-cache "^3.0.4" + fill-range@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" @@ -2877,6 +3559,14 @@ find-up@^4.0.0, find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" +find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + fixpack@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/fixpack/-/fixpack-4.0.0.tgz#28b9fb8ca04f89aab382021cfa826b36dc381dfd" @@ -2889,7 +3579,16 @@ fixpack@^4.0.0: extend-object "^1.0.0" rc "^1.2.8" -flatted@^3.2.7: +flat-cache@^3.0.4: + version "3.2.0" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee" + integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw== + dependencies: + flatted "^3.2.9" + keyv "^4.5.3" + rimraf "^3.0.2" + +flatted@^3.2.7, flatted@^3.2.9: version "3.3.3" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.3.tgz#67c8fad95454a7c7abebf74bb78ee74a44023358" integrity sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg== @@ -3085,13 +3784,27 @@ get-symbol-description@^1.1.0: es-errors "^1.3.0" get-intrinsic "^1.2.6" -glob-parent@~5.1.2: +get-tsconfig@^4.10.0: + version "4.10.0" + resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.10.0.tgz#403a682b373a823612475a4c2928c7326fc0f6bb" + integrity sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A== + dependencies: + resolve-pkg-maps "^1.0.0" + +glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" +glob-parent@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + dependencies: + is-glob "^4.0.3" + glob@^10.4.5: version "10.4.5" resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" @@ -3121,6 +3834,13 @@ globals@^11.1.0: resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== +globals@^13.19.0: + version "13.24.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171" + integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ== + dependencies: + type-fest "^0.20.2" + globalthis@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" @@ -3129,6 +3849,18 @@ globalthis@^1.0.4: define-properties "^1.2.1" gopd "^1.0.1" +globby@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.2.9" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^3.0.0" + gopd@^1.0.1, gopd@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" @@ -3160,6 +3892,11 @@ graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.9: uuid "^8.3.2" wkx "^0.5.0" +graphemer@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" + integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== + graphql-extensions@^0.16.0: version "0.16.0" resolved "https://registry.yarnpkg.com/graphql-extensions/-/graphql-extensions-0.16.0.tgz#32669fde0a2f115de60e5dda818ae457c1d71bb8" @@ -3446,6 +4183,19 @@ ignore-by-default@^1.0.1: resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" integrity sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA== +ignore@^5.1.1, ignore@^5.2.0, ignore@^5.2.4: + version "5.3.2" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" + integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== + +import-fresh@^3.2.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf" + integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + import-local@^3.0.2: version "3.2.0" resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.2.0.tgz#c3d5c745798c02a6f8b897726aba5100186ee260" @@ -3538,12 +4288,19 @@ is-boolean-object@^1.2.1: call-bound "^1.0.3" has-tostringtag "^1.0.2" +is-bun-module@^1.0.2: + version "1.3.0" + resolved "https://registry.yarnpkg.com/is-bun-module/-/is-bun-module-1.3.0.tgz#ea4d24fdebfcecc98e81bcbcb506827fee288760" + integrity sha512-DgXeu5UWI0IsMQundYb5UAOzm6G2eVnarJ0byP6Tm55iZNKceD59LNPA2L4VvsScTtHcw0yEkVwSf7PC+QoLSA== + dependencies: + semver "^7.6.3" + is-callable@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.16.0: +is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.15.1, is-core-module@^2.16.0: version "2.16.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4" integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w== @@ -3612,7 +4369,7 @@ is-generator-function@^1.0.10: has-tostringtag "^1.0.2" safe-regex-test "^1.1.0" -is-glob@^4.0.1, is-glob@~4.0.1: +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== @@ -3637,6 +4394,11 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== +is-path-inside@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== + is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" @@ -3684,7 +4446,7 @@ is-stream@^2.0.0: resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== -is-string@^1.1.1: +is-string@^1.0.7, is-string@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.1.1.tgz#92ea3f3d5c5b6e039ca8677e5ac8d07ea773cbb9" integrity sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA== @@ -4250,6 +5012,13 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" +js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + jsdom@^16.6.0: version "16.7.0" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" @@ -4288,11 +5057,26 @@ jsesc@^3.0.2: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d" integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA== +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== + json-parse-even-better-errors@^2.3.0: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== + json5@2.x, json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" @@ -4331,6 +5115,13 @@ juice@^8.0.0: slick "^1.12.2" web-resource-inliner "^6.0.1" +keyv@^4.5.3: + version "4.5.4" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" + integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== + dependencies: + json-buffer "3.0.1" + kleur@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" @@ -4353,6 +5144,14 @@ leven@^3.1.0: resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + libbase64@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/libbase64/-/libbase64-1.3.0.tgz#053314755a05d2e5f08bbfc48d0290e9322f4406" @@ -4397,6 +5196,13 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + lodash.clonedeep@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" @@ -4412,6 +5218,11 @@ lodash.memoize@4.x: resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" @@ -4546,12 +5357,17 @@ merge-stream@^2.0.0: resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== +merge2@^1.3.0, merge2@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -micromatch@^4.0.4: +micromatch@^4.0.4, micromatch@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== @@ -4586,7 +5402,7 @@ mimic-fn@^2.1.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: +minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== @@ -4677,6 +5493,11 @@ named-placeholders@^1.1.2: dependencies: lru-cache "^7.14.1" +natural-compare-lite@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" + integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== + natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -4823,6 +5644,16 @@ object.assign@^4.1.7: has-symbols "^1.1.0" object-keys "^1.1.1" +object.fromentries@^2.0.8: + version "2.0.8" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.8.tgz#f7195d8a9b97bd95cbc1999ea939ecd1a2b00c65" + integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + object.getownpropertydescriptors@^2.1.8: version "2.1.8" resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.8.tgz#2f1fe0606ec1a7658154ccd4f728504f69667923" @@ -4836,6 +5667,25 @@ object.getownpropertydescriptors@^2.1.8: gopd "^1.0.1" safe-array-concat "^1.1.2" +object.groupby@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.3.tgz#9b125c36238129f6f7b61954a1e7176148d5002e" + integrity sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + +object.values@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.2.1.tgz#deed520a50809ff7f75a7cfd4bc64c7a038c6216" + integrity sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + on-finished@2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" @@ -4878,6 +5728,18 @@ openai@^4.87.3: formdata-node "^4.3.2" node-fetch "^2.6.7" +optionator@^0.9.3: + version "0.9.4" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" + integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.5" + own-keys@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/own-keys/-/own-keys-1.0.1.tgz#e4006910a2bf913585289676eebd6f390cf51358" @@ -4887,6 +5749,23 @@ own-keys@^1.0.1: object-keys "^1.1.1" safe-push-apply "^1.0.0" +oxc-resolver@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/oxc-resolver/-/oxc-resolver-5.0.0.tgz#8aac10775e45f8656393bf9b90dda0f1b2f507cd" + integrity sha512-66fopyAqCN8Mx4tzNiBXWbk8asCSuxUWN62gwTc3yfRs7JfWhX/eVJCf+fUrfbNOdQVOWn+o8pAKllp76ysMXA== + optionalDependencies: + "@oxc-resolver/binding-darwin-arm64" "5.0.0" + "@oxc-resolver/binding-darwin-x64" "5.0.0" + "@oxc-resolver/binding-freebsd-x64" "5.0.0" + "@oxc-resolver/binding-linux-arm-gnueabihf" "5.0.0" + "@oxc-resolver/binding-linux-arm64-gnu" "5.0.0" + "@oxc-resolver/binding-linux-arm64-musl" "5.0.0" + "@oxc-resolver/binding-linux-x64-gnu" "5.0.0" + "@oxc-resolver/binding-linux-x64-musl" "5.0.0" + "@oxc-resolver/binding-wasm32-wasi" "5.0.0" + "@oxc-resolver/binding-win32-arm64-msvc" "5.0.0" + "@oxc-resolver/binding-win32-x64-msvc" "5.0.0" + p-event@4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/p-event/-/p-event-4.2.0.tgz#af4b049c8acd91ae81083ebd1e6f5cae2044c1b5" @@ -4906,6 +5785,13 @@ p-limit@^2.2.0: dependencies: p-try "^2.0.0" +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -4913,6 +5799,13 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + p-timeout@^3.0.0, p-timeout@^3.1.0: version "3.2.0" resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" @@ -4937,6 +5830,13 @@ package-json-from-dist@^1.0.0: resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + parse-json@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" @@ -5018,6 +5918,11 @@ path-to-regexp@0.1.12: resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.12.tgz#d5e1a12e478a976d432ef3c58d534b9923164bb7" integrity sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ== +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + peberminta@^0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/peberminta/-/peberminta-0.9.0.tgz#8ec9bc0eb84b7d368126e71ce9033501dca2a352" @@ -5033,6 +5938,11 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== +picomatch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" + integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== + pify@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" @@ -5055,6 +5965,18 @@ possible-typed-array-names@^1.0.0: resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg== +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +prettier-linter-helpers@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" + integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== + dependencies: + fast-diff "^1.1.2" + prettier@^2.8.7: version "2.8.8" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" @@ -5234,7 +6156,7 @@ punycode.js@2.3.1: resolved "https://registry.yarnpkg.com/punycode.js/-/punycode.js-2.3.1.tgz#6b53e56ad75588234e79f4affa90972c7dd8cdb7" integrity sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA== -punycode@^2.1.1, punycode@^2.3.1: +punycode@^2.1.0, punycode@^2.1.1, punycode@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== @@ -5258,6 +6180,11 @@ querystringify@^2.1.1: resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + railroad-diagrams@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz#eb7e6267548ddedfb899c1b90e57374559cddb7e" @@ -5350,6 +6277,11 @@ regenerator-runtime@^0.14.0: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f" integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== +regexp-tree@~0.1.1: + version "0.1.27" + resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.27.tgz#2198f0ef54518ffa743fe74d983b56ffd631b6cd" + integrity sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA== + regexp.prototype.flags@^1.5.3: version "1.5.4" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz#1ad6c62d44a259007e55b3970e00f746efbcaa19" @@ -5362,6 +6294,11 @@ regexp.prototype.flags@^1.5.3: gopd "^1.2.0" set-function-name "^2.0.2" +regexpp@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== + require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -5379,17 +6316,27 @@ resolve-cwd@^3.0.0: dependencies: resolve-from "^5.0.0" +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + resolve-from@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== +resolve-pkg-maps@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f" + integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw== + resolve.exports@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.1.tgz#05cfd5b3edf641571fd46fa608b610dda9ead999" integrity sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ== -resolve@^1.15.1, resolve@^1.20.0: +resolve@^1.15.1, resolve@^1.20.0, resolve@^1.22.1, resolve@^1.22.4: version "1.22.10" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== @@ -5408,12 +6355,17 @@ retry@0.13.1: resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== +reusify@^1.0.4: + version "1.1.0" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.1.0.tgz#0fe13b9522e1473f51b558ee796e08f11f9b489f" + integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw== + rfdc@^1.3.0: version "1.4.1" resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.4.1.tgz#778f76c4fb731d93414e8f925fbecf64cce7f6ca" integrity sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA== -rimraf@^3.0.0: +rimraf@^3.0.0, rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== @@ -5427,6 +6379,13 @@ run-applescript@^3.0.0: dependencies: execa "^0.10.0" +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + safe-array-concat@^1.1.2, safe-array-concat@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.3.tgz#c9e54ec4f603b0bbb8e7e5007a5ee7aecd1538c3" @@ -5470,6 +6429,13 @@ safe-regex-test@^1.1.0: es-errors "^1.3.0" is-regex "^1.2.1" +safe-regex@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-2.1.1.tgz#f7128f00d056e2fe5c11e81a1324dd974aadced2" + integrity sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A== + dependencies: + regexp-tree "~0.1.1" + "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -5496,7 +6462,7 @@ selderee@^0.6.0: dependencies: parseley "^0.7.0" -semver@7.x, semver@^7.3.2, semver@^7.5.3: +semver@7.x, semver@^7.0.0, semver@^7.3.2, semver@^7.3.7, semver@^7.3.8, semver@^7.5.3, semver@^7.6.3: version "7.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.1.tgz#abd5098d82b18c6c81f6074ff2647fd3e7220c9f" integrity sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA== @@ -5735,6 +6701,11 @@ sqlstring@^2.3.2: resolved "https://registry.yarnpkg.com/sqlstring/-/sqlstring-2.3.3.tgz#2ddc21f03bce2c387ed60680e739922c65751d0c" integrity sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg== +stable-hash@^0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/stable-hash/-/stable-hash-0.0.5.tgz#94e8837aaeac5b4d0f631d2972adef2924b40269" + integrity sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA== + stack-utils@^2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" @@ -5814,7 +6785,7 @@ string.prototype.trim@^1.2.10: es-object-atoms "^1.0.0" has-property-descriptors "^1.0.2" -string.prototype.trimend@^1.0.9: +string.prototype.trimend@^1.0.8, string.prototype.trimend@^1.0.9: version "1.0.9" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz#62e2731272cd285041b36596054e9f66569b6942" integrity sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ== @@ -5963,11 +6934,24 @@ test-exclude@^6.0.0: glob "^7.1.4" minimatch "^3.0.4" +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== + throat@^6.0.1: version "6.0.2" resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.2.tgz#51a3fbb5e11ae72e2cf74861ed5c8020f89f29fe" integrity sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ== +tinyglobby@^0.2.12: + version "0.2.12" + resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.12.tgz#ac941a42e0c5773bd0b5d08f32de82e74a1a61b5" + integrity sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww== + dependencies: + fdir "^6.4.3" + picomatch "^4.0.2" + titleize@2: version "2.1.0" resolved "https://registry.yarnpkg.com/titleize/-/titleize-2.1.0.tgz#5530de07c22147a0488887172b5bd94f5b30a48f" @@ -6080,7 +7064,7 @@ ts-node@^10.9.2: v8-compile-cache-lib "^3.0.1" yn "3.1.1" -tsconfig-paths@^3.14.0: +tsconfig-paths@^3.14.0, tsconfig-paths@^3.15.0: version "3.15.0" resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz#5299ec605e55b1abb23ec939ef15edaf483070d4" integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg== @@ -6090,26 +7074,45 @@ tsconfig-paths@^3.14.0: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^1.10.0, tslib@^1.9.3: +tslib@^1.10.0, tslib@^1.8.1, tslib@^1.9.3: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.1, tslib@^2.1.0, tslib@^2.2.0, tslib@^2.5.0: +tslib@^2.0.1, tslib@^2.1.0, tslib@^2.2.0, tslib@^2.4.0, tslib@^2.5.0: version "2.8.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== +tsutils@^3.21.0: + version "3.21.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== + dependencies: + tslib "^1.8.1" + tunnel@0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c" integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg== +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + type-detect@4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + type-fest@^0.21.3: version "0.21.3" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" @@ -6285,6 +7288,13 @@ update-browserslist-db@^1.1.1: escalade "^3.2.0" picocolors "^1.1.1" +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + url-parse@^1.5.3: version "1.5.10" resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" @@ -6541,6 +7551,11 @@ wkx@^0.5.0: dependencies: "@types/node" "*" +word-wrap@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" + integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== + workerpool@^9.2.0: version "9.2.0" resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-9.2.0.tgz#f74427cbb61234708332ed8ab9cbf56dcb1c4371" @@ -6674,6 +7689,11 @@ yn@3.1.1: resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== + zen-observable-ts@^0.8.21: version "0.8.21" resolved "https://registry.yarnpkg.com/zen-observable-ts/-/zen-observable-ts-0.8.21.tgz#85d0031fbbde1eba3cd07d3ba90da241215f421d" diff --git a/biome.json b/biome.json index 82ba8f18f..419076f6c 100644 --- a/biome.json +++ b/biome.json @@ -73,7 +73,6 @@ "useBlockStatements": "error", "useConsistentBuiltinInstantiation": "error", "useConst": "error", - "useImportType": "error", "useSingleVarDeclarator": "error" }, "suspicious": { diff --git a/package.json b/package.json index a8f307a15..df99a831a 100644 --- a/package.json +++ b/package.json @@ -13,8 +13,5 @@ "dependencies": { "auto-changelog": "^2.4.0", "uuid": "^8.3.2" - }, - "devDependencies": { - "@biomejs/biome": "1.9.4" } } diff --git a/yarn.lock b/yarn.lock index 358d08f46..2c8f9b681 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,60 +2,6 @@ # yarn lockfile v1 -"@biomejs/biome@1.9.4": - version "1.9.4" - resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-1.9.4.tgz#89766281cbc3a0aae865a7ff13d6aaffea2842bf" - integrity sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog== - optionalDependencies: - "@biomejs/cli-darwin-arm64" "1.9.4" - "@biomejs/cli-darwin-x64" "1.9.4" - "@biomejs/cli-linux-arm64" "1.9.4" - "@biomejs/cli-linux-arm64-musl" "1.9.4" - "@biomejs/cli-linux-x64" "1.9.4" - "@biomejs/cli-linux-x64-musl" "1.9.4" - "@biomejs/cli-win32-arm64" "1.9.4" - "@biomejs/cli-win32-x64" "1.9.4" - -"@biomejs/cli-darwin-arm64@1.9.4": - version "1.9.4" - resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz#dfa376d23a54a2d8f17133c92f23c1bf2e62509f" - integrity sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw== - -"@biomejs/cli-darwin-x64@1.9.4": - version "1.9.4" - resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz#eafc2ce3849d385fc02238aad1ca4a73395a64d9" - integrity sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg== - -"@biomejs/cli-linux-arm64-musl@1.9.4": - version "1.9.4" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz#d780c3e01758fc90f3268357e3f19163d1f84fca" - integrity sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA== - -"@biomejs/cli-linux-arm64@1.9.4": - version "1.9.4" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz#8ed1dd0e89419a4b66a47f95aefb8c46ae6041c9" - integrity sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g== - -"@biomejs/cli-linux-x64-musl@1.9.4": - version "1.9.4" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz#f36982b966bd671a36671e1de4417963d7db15fb" - integrity sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg== - -"@biomejs/cli-linux-x64@1.9.4": - version "1.9.4" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz#a0a7f56680c76b8034ddc149dbf398bdd3a462e8" - integrity sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg== - -"@biomejs/cli-win32-arm64@1.9.4": - version "1.9.4" - resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz#e2ef4e0084e76b7e26f0fc887c5ef1265ea56200" - integrity sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg== - -"@biomejs/cli-win32-x64@1.9.4": - version "1.9.4" - resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz#4c7afa90e3970213599b4095e62f87e5972b2340" - integrity sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA== - auto-changelog@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/auto-changelog/-/auto-changelog-2.4.0.tgz#a2d57d49b70ada7ca2e7c6a20a71572561d19cd9" From ecc2cfbca8a4c61967e217cc47820090e8f97520 Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Wed, 30 Apr 2025 09:31:11 +0200 Subject: [PATCH 13/13] remove import type for the time beeing --- backend/biome.json | 147 ------------------ backend/src/apis/gms/GmsClient.ts | 2 +- backend/src/apis/humhub/ExportUsers.ts | 4 +- .../apis/humhub/compareHumhubUserDbUser.ts | 4 +- biome.json | 1 + package.json | 3 + yarn.lock | 54 +++++++ 7 files changed, 63 insertions(+), 152 deletions(-) delete mode 100644 backend/biome.json diff --git a/backend/biome.json b/backend/biome.json deleted file mode 100644 index 84d3a3a29..000000000 --- a/backend/biome.json +++ /dev/null @@ -1,147 +0,0 @@ -{ - "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", - "vcs": { "enabled": false, "clientKind": "git", "useIgnoreFile": false }, - "files": { - "ignoreUnknown": false, - "ignore": ["build", "node_modules", "coverage"], - "include": ["./src/**/*.js", "./src/**/*.ts"] - }, - "formatter": { - "enabled": true, - "useEditorconfig": true, - "formatWithErrors": false, - "indentStyle": "space", - "indentWidth": 2, - "lineEnding": "lf", - "lineWidth": 100, - "attributePosition": "auto", - "bracketSpacing": true - }, - "organizeImports": { "enabled": true }, - "linter": { - "enabled": true, - "rules": { - "recommended": false, - "complexity": { - "noExtraBooleanCast": "error", - "noMultipleSpacesInRegularExpressionLiterals": "error", - "noUselessCatch": "error", - "noUselessConstructor": "error", - "noUselessLoneBlockStatements": "error", - "noUselessRename": "error", - "noUselessTernary": "error", - "noUselessUndefinedInitialization": "error", - "noVoid": "error", - "noWith": "error", - "useLiteralKeys": "error", - "useRegexLiterals": "error" - }, - "correctness": { - "noConstAssign": "error", - "noConstantCondition": "error", - "noEmptyCharacterClassInRegex": "error", - "noEmptyPattern": "error", - "noGlobalObjectCalls": "error", - "noInnerDeclarations": "error", - "noInvalidConstructorSuper": "error", - "noInvalidUseBeforeDeclaration": "error", - "noNewSymbol": "error", - "noNodejsModules": "off", - "noNonoctalDecimalEscape": "error", - "noPrecisionLoss": "error", - "noSelfAssign": "error", - "noSetterReturn": "error", - "noSwitchDeclarations": "error", - "noUndeclaredVariables": "error", - "noUnreachable": "error", - "noUnreachableSuper": "error", - "noUnsafeFinally": "error", - "noUnsafeOptionalChaining": "error", - "noUnusedLabels": "error", - "noUnusedVariables": "error", - "useArrayLiterals": "error", - "useIsNan": "error", - "useValidForDirection": "error", - "useYield": "error" - }, - "security": { "noGlobalEval": "error" }, - "style": { - "noCommaOperator": "error", - "noDefaultExport": "error", - "noVar": "warn", - "noYodaExpression": "error", - "useBlockStatements": "error", - "useConsistentBuiltinInstantiation": "error", - "useConst": "error", - "useSingleVarDeclarator": "error" - }, - "suspicious": { - "noAsyncPromiseExecutor": "error", - "noCatchAssign": "error", - "noClassAssign": "error", - "noCompareNegZero": "error", - "noConsole": "error", - "noControlCharactersInRegex": "error", - "noDebugger": "error", - "noDoubleEquals": "error", - "noDuplicateCase": "error", - "noDuplicateClassMembers": "error", - "noDuplicateObjectKeys": "error", - "noDuplicateParameters": "error", - "noEmptyBlockStatements": "error", - "noFallthroughSwitchClause": "error", - "noFunctionAssign": "error", - "noGlobalAssign": "error", - "noImportAssign": "error", - "noMisleadingCharacterClass": "error", - "noPrototypeBuiltins": "error", - "noRedeclare": "error", - "noSelfCompare": "error", - "noShadowRestrictedNames": "error", - "noSparseArray": "error", - "noUnsafeNegation": "error", - "useDefaultSwitchClauseLast": "error", - "useGetterReturn": "error", - "useValidTypeof": "error" - } - }, - "ignore": ["**/node_modules", "**/*.min.js", "**/build", "**/coverage"] - }, - "javascript": { - "formatter": { - "jsxQuoteStyle": "single", - "quoteProperties": "asNeeded", - "trailingCommas": "all", - "semicolons": "asNeeded", - "arrowParentheses": "always", - "bracketSameLine": false, - "quoteStyle": "single", - "attributePosition": "auto", - "bracketSpacing": true - }, - "globals": [ - "document", - "navigator", - "window", - "describe", - "test", - "it", - "expect", - "beforeAll", - "beforeEach", - "afterAll", - "afterEach", - "jest" - ], - "parser": { - "unsafeParameterDecoratorsEnabled": true - } - }, - "overrides": [ - { - "include": ["*.ts", "*.tsx"], - "linter": { "rules": { "complexity": { "noVoid": "error" } } } - }, - { "include": ["*.test.ts"], "linter": { "rules": {} } } - ] -} diff --git a/backend/src/apis/gms/GmsClient.ts b/backend/src/apis/gms/GmsClient.ts index ce24b95bd..537fe36f2 100644 --- a/backend/src/apis/gms/GmsClient.ts +++ b/backend/src/apis/gms/GmsClient.ts @@ -6,7 +6,7 @@ import { LogError } from '@/server/LogError' import { backendLogger as logger } from '@/server/logger' import { ensureUrlEndsWithSlash } from '@/util/utilities' -import type { GmsUser } from './model/GmsUser' +import { GmsUser } from './model/GmsUser' /* export async function communityList(): Promise { diff --git a/backend/src/apis/humhub/ExportUsers.ts b/backend/src/apis/humhub/ExportUsers.ts index 12208b458..692c90d36 100644 --- a/backend/src/apis/humhub/ExportUsers.ts +++ b/backend/src/apis/humhub/ExportUsers.ts @@ -8,8 +8,8 @@ import { checkDBVersion } from '@/typeorm/DBVersion' import { Connection } from '@/typeorm/connection' import { HumHubClient } from './HumHubClient' -import type { GetUser } from './model/GetUser' -import type { UsersResponse } from './model/UsersResponse' +import { GetUser } from './model/GetUser' +import { UsersResponse } from './model/UsersResponse' import { ExecutedHumhubAction, syncUser } from './syncUser' const USER_BULK_SIZE = 20 diff --git a/backend/src/apis/humhub/compareHumhubUserDbUser.ts b/backend/src/apis/humhub/compareHumhubUserDbUser.ts index 57254e99e..94669b6b4 100644 --- a/backend/src/apis/humhub/compareHumhubUserDbUser.ts +++ b/backend/src/apis/humhub/compareHumhubUserDbUser.ts @@ -1,7 +1,7 @@ -import type { User } from '@entity/User' +import { User } from '@entity/User' import { Account } from './model/Account' -import type { GetUser } from './model/GetUser' +import { GetUser } from './model/GetUser' import { Profile } from './model/Profile' function profileIsTheSame(profile: Profile, user: User): boolean { diff --git a/biome.json b/biome.json index 419076f6c..7549528fb 100644 --- a/biome.json +++ b/biome.json @@ -73,6 +73,7 @@ "useBlockStatements": "error", "useConsistentBuiltinInstantiation": "error", "useConst": "error", + "useImportType": "off", "useSingleVarDeclarator": "error" }, "suspicious": { diff --git a/package.json b/package.json index df99a831a..a8f307a15 100644 --- a/package.json +++ b/package.json @@ -13,5 +13,8 @@ "dependencies": { "auto-changelog": "^2.4.0", "uuid": "^8.3.2" + }, + "devDependencies": { + "@biomejs/biome": "1.9.4" } } diff --git a/yarn.lock b/yarn.lock index 2c8f9b681..358d08f46 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,60 @@ # yarn lockfile v1 +"@biomejs/biome@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-1.9.4.tgz#89766281cbc3a0aae865a7ff13d6aaffea2842bf" + integrity sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog== + optionalDependencies: + "@biomejs/cli-darwin-arm64" "1.9.4" + "@biomejs/cli-darwin-x64" "1.9.4" + "@biomejs/cli-linux-arm64" "1.9.4" + "@biomejs/cli-linux-arm64-musl" "1.9.4" + "@biomejs/cli-linux-x64" "1.9.4" + "@biomejs/cli-linux-x64-musl" "1.9.4" + "@biomejs/cli-win32-arm64" "1.9.4" + "@biomejs/cli-win32-x64" "1.9.4" + +"@biomejs/cli-darwin-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz#dfa376d23a54a2d8f17133c92f23c1bf2e62509f" + integrity sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw== + +"@biomejs/cli-darwin-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz#eafc2ce3849d385fc02238aad1ca4a73395a64d9" + integrity sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg== + +"@biomejs/cli-linux-arm64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz#d780c3e01758fc90f3268357e3f19163d1f84fca" + integrity sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA== + +"@biomejs/cli-linux-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz#8ed1dd0e89419a4b66a47f95aefb8c46ae6041c9" + integrity sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g== + +"@biomejs/cli-linux-x64-musl@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz#f36982b966bd671a36671e1de4417963d7db15fb" + integrity sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg== + +"@biomejs/cli-linux-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz#a0a7f56680c76b8034ddc149dbf398bdd3a462e8" + integrity sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg== + +"@biomejs/cli-win32-arm64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz#e2ef4e0084e76b7e26f0fc887c5ef1265ea56200" + integrity sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg== + +"@biomejs/cli-win32-x64@1.9.4": + version "1.9.4" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz#4c7afa90e3970213599b4095e62f87e5972b2340" + integrity sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA== + auto-changelog@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/auto-changelog/-/auto-changelog-2.4.0.tgz#a2d57d49b70ada7ca2e7c6a20a71572561d19cd9"