diff --git a/.dockerignore b/.dockerignore index 1087f90813..b9aa3ae03a 100644 --- a/.dockerignore +++ b/.dockerignore @@ -9,6 +9,7 @@ scripts **/node_modules **/build **/dist +**/tsconfig.tsbuildinfo # Core package artifacts # Hardhat files diff --git a/.github/workflows/cd-logger.yaml b/.github/workflows/cd-logger.yaml new file mode 100644 index 0000000000..02366d03ce --- /dev/null +++ b/.github/workflows/cd-logger.yaml @@ -0,0 +1,26 @@ +name: Logger NPM publish + +permissions: + contents: read + +on: + workflow_dispatch: + +jobs: + logger-publish: + name: Logger NPM Publish + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version-file: .nvmrc + cache: yarn + - name: Install dependencies + run: yarn install --immutable + - name: Build logger package + run: yarn build:logger + - name: Publish package + run: yarn workspace @human-protocol/logger npm publish --access public + env: + YARN_NPM_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/package.json b/package.json index e101aba252..e767ca9cea 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,8 @@ "lint": "yarn workspaces foreach --all -p run lint", "build:core": "yarn workspace @human-protocol/core build", "build:sdk": "yarn workspace @human-protocol/sdk build", - "build:libs": "yarn build:core && yarn build:sdk", + "build:logger": "yarn workspace @human-protocol/logger build", + "build:libs": "yarn build:core && yarn build:sdk && yarn build:logger", "docker:infra-up": "make -C ./docker-setup -f Makefile.dev infra-up", "docker:infra-stop": "make -C ./docker-setup -f Makefile.dev infra-stop", "docker:infra-down": "make -C ./docker-setup -f Makefile.dev infra-down", diff --git a/packages/apps/reputation-oracle/server/Dockerfile b/packages/apps/reputation-oracle/server/Dockerfile index dff82f8a3e..ef91c55cd5 100644 --- a/packages/apps/reputation-oracle/server/Dockerfile +++ b/packages/apps/reputation-oracle/server/Dockerfile @@ -16,6 +16,7 @@ COPY ${APP_PATH}/package.json ./${APP_PATH}/ # so we need to copy and build them COPY packages/core ./packages/core COPY packages/sdk ./packages/sdk +COPY packages/libs ./packages/libs RUN yarn install diff --git a/packages/apps/reputation-oracle/server/package.json b/packages/apps/reputation-oracle/server/package.json index bbdecfb4fd..a1fb2f451c 100644 --- a/packages/apps/reputation-oracle/server/package.json +++ b/packages/apps/reputation-oracle/server/package.json @@ -29,6 +29,7 @@ }, "dependencies": { "@human-protocol/core": "workspace:*", + "@human-protocol/logger": "workspace:*", "@human-protocol/sdk": "workspace:*", "@nestjs/axios": "^3.1.3", "@nestjs/common": "^10.2.7", @@ -62,7 +63,6 @@ "passport": "^0.7.0", "passport-jwt": "^4.0.1", "pg": "8.13.1", - "pino": "^9.6.0", "reflect-metadata": "^0.2.2", "rxjs": "^7.2.0", "typeorm": "^0.3.16", @@ -91,7 +91,6 @@ "eslint-plugin-prettier": "^5.2.1", "jest": "29.7.0", "nock": "^14.0.3", - "pino-pretty": "^13.0.0", "prettier": "^3.4.2", "source-map-support": "^0.5.20", "supertest": "^7.0.0", diff --git a/packages/apps/reputation-oracle/server/src/common/constants/index.ts b/packages/apps/reputation-oracle/server/src/common/constants/index.ts index a2e57e2cc9..637d783de0 100644 --- a/packages/apps/reputation-oracle/server/src/common/constants/index.ts +++ b/packages/apps/reputation-oracle/server/src/common/constants/index.ts @@ -1,3 +1,4 @@ +export const SERVICE_NAME = 'reputation-oracle'; export const DATABASE_SCHEMA_NAME = 'hmt'; export const JWT_STRATEGY_NAME = 'jwt-http'; diff --git a/packages/apps/reputation-oracle/server/src/logger/README.md b/packages/apps/reputation-oracle/server/src/logger/README.md deleted file mode 100644 index 5a8c41198d..0000000000 --- a/packages/apps/reputation-oracle/server/src/logger/README.md +++ /dev/null @@ -1,86 +0,0 @@ -Custom logger implementation for use in Node.js HUMAN apps. - -Provides standartized API and writes logs in pre-defined JSON format: -```json -{ - "level": "debug", - "message": "Some info about error", - "timestamp": 1738937400037, - "error": { - "kind": "CustomError", - "message": "Message from custom error", - "stack": "CustomError: Message from custom error\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)", - "customErrorProp": "error-detail-prop" - } - // ...merging meta -} -``` -:information_source: Error formatting is done only for error argument and "error" context property. - -Pretty-printing is enabled for local/development environment by default. - -### Usage examples -At the moment preferred underlying logger is `pino`. Corresponding file exports `createLogger` factory function that is used to create pre-configured default logger intance, that has service/app name and environment bound to all log messages. - -Import the pre-defined logger -```ts -import logger from '/logger'; -``` -then use it as per API contract: with log message first and any useful detail in log meta -:information_source: If meta is not a plain object and not an error - it is being logged as "meta" property -```ts -// to log simple message -logger.info('Info without any context'); - -// to log message with some context info -loger.info('New user registered', { - userAgent, - country, - ip, - email, -}); - -// to log error -logger.error('Something went wrong', error); - -// or error with some extra context -logger.error('Error updating some entity', { - error, - entityId: 42, - ...extra -}); - -// to log anything -logger.debug('Show me value', someValue); -``` - -If needed, you can create named logger -```ts -const utilsLogger = logger.child({ name: 'UtilsLogger' }) -// .... -utilsLogger.debug('input params', args); -/* -{ - "level": "debug", - "logger": "UtilsLogger", - "message": "input params", - "timestamp": 1738937400037 - ... -} -*/ -``` -or bind a "context" (or any other) prop to it -```ts -const contextLogger = logger.child({ context: 'SomeService' }) -// .... -contextLogger.info('Helpful info', context); -/* -{ - "level": "debug", - "context": "SomeService", - "message": "Helpful info", - "timestamp": 1738937400037, - ... -} -*/ -``` \ No newline at end of file diff --git a/packages/apps/reputation-oracle/server/src/logger/__mocks__/index.ts b/packages/apps/reputation-oracle/server/src/logger/__mocks__/index.ts index f4017058d8..bc3cb79069 100644 --- a/packages/apps/reputation-oracle/server/src/logger/__mocks__/index.ts +++ b/packages/apps/reputation-oracle/server/src/logger/__mocks__/index.ts @@ -1,4 +1,4 @@ -import { Logger } from '../types'; +import type { Logger } from '@human-protocol/logger'; const logger: Logger = { child: () => logger, diff --git a/packages/apps/reputation-oracle/server/src/logger/index.ts b/packages/apps/reputation-oracle/server/src/logger/index.ts index 4509f80573..fe8e9df382 100644 --- a/packages/apps/reputation-oracle/server/src/logger/index.ts +++ b/packages/apps/reputation-oracle/server/src/logger/index.ts @@ -1,6 +1,6 @@ -import { createLogger } from './pino-logger'; -import NestLogger from './nest-logger'; -import { LogLevel } from './types'; +import { createLogger, NestLogger, LogLevel } from '@human-protocol/logger'; + +import { SERVICE_NAME } from '../common/constants'; import Environment from '../utils/environment'; const isDevelopment = Environment.isDevelopment(); @@ -14,7 +14,7 @@ const defaultLogger = createLogger( }, { environment: Environment.name, - service: 'reputation-oracle', + service: SERVICE_NAME, }, ); diff --git a/packages/libs/logger/.prettierrc b/packages/libs/logger/.prettierrc new file mode 100644 index 0000000000..dcb72794f5 --- /dev/null +++ b/packages/libs/logger/.prettierrc @@ -0,0 +1,4 @@ +{ + "singleQuote": true, + "trailingComma": "all" +} \ No newline at end of file diff --git a/packages/libs/logger/README.md b/packages/libs/logger/README.md new file mode 100644 index 0000000000..1091a928f5 --- /dev/null +++ b/packages/libs/logger/README.md @@ -0,0 +1,152 @@ +## HUMAN Protocol Node.js logger + +Custom logger implementation for use in Node.js HUMAN Protocol apps. + +Provides standartized API and writes logs in pre-defined JSON format: +```json +{ + "level": "debug", + "message": "Some info about error", + "timestamp": 1738937400037, + "error": { + "kind": "CustomError", + "message": "Message from custom error", + "stack": "CustomError: Message from custom error\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)", + "customErrorProp": "error-detail-prop" + } + // ...merging meta +} +``` + +## Logger initialization and usage + +### Pre-created logger instance +By defaul this library exports pre-created logger instance that you can start using immediately. This logger is pre-configured with: + - zero-bindings (only `name` is set up as `human-protocol-logger`) + - pretty-printing and structured log format + - has `debug` as its minimum level to log + +To use it: +```ts +import logger from '@human-protocol/logger'; + +logger.info('Some message', { some: 'extras' }); +``` +It's expected to be used only in dev environments, such as a developer toolbox, some local scripts and etc. + +### Create application logger with factory function + +Lib exports `createLogger` factory function that should be used to create a logger intance with proper bindings for application. Recommended bindings are at least `service` and `environment`, so that you can distinguish logs coming from different sources in your log-management system easilly. + +```ts +import { createLogger, LogLevel } from '@human-protocol/logger'; + +const ENV_NAME = process.NODE_ENV || 'development'; +const isDevelopment = ENV_NAME === 'development'; +const isTest = process.NODE_ENV === 'test' + +const defaultAppLogger = createLogger( + { + name: 'DefaultLogger', + level: isDevelopment ? LogLevel.DEBUG : LogLevel.INFO, + pretty: isDevelopment, + disabled: isTest, + }, + { + environment: ENV_NAME, + service: 'you-application-name', + }, +); + +export default defaultAppLogger; + +// import it somewehre in your app and use +import logger from '/logger'; + +logger.info('Some application log', { with: 'useful-context' }); +``` + +### Replacing default Nest.js logger +Once you have your application logger instance created, you can replace default Nest.js logger with it, so anything that comes from your appication follows the same format. This library provides a helper for that: + +```ts +import { NestLogger } from '@human-protocol/logger'; + +// initialize an overridden instance +export const nestLoggerOverride = new NestLogger( + defaultAppLogger.child({ name: 'NestLogger' }), +); + + +// init you Nest.js app with overriden instance +const app = await NestFactory.create(AppModule, { + logger: nestLoggerOverride, +}); + +// Logger is `nestLoggerOverride` now +import { Logger } from '@nestjs/common'; +``` + +## Usage examples +Logger has next API contract: log message first and any useful detail in log meta as a second argument. + +:information_source: If meta is not a plain object and not an error - it is being logged as "meta" property + +:information_source: Error formatting is done only for error argument and "error" context property. + +```ts +// to log simple message +logger.info('Info without any context'); + +// to log message with some context info +loger.info('New user registered', { + userAgent, + country, + ip, + email, +}); + +// to log an error +logger.error('Something went wrong', error); + +// or error with some extra context +logger.error('Error updating some entity', { + error, + entityId: 42, + ...extra +}); + +// to log anything +logger.debug('Show me value', someValue); +``` + +If needed, you can create a named logger +```ts +const utilsLogger = logger.child({ name: 'UtilsLogger' }) +// .... +utilsLogger.debug('input params', args); +/* +{ + "level": "debug", + "logger": "UtilsLogger", + "message": "input params", + "timestamp": 1738937400037 + ... +} +*/ +``` +or bind a "context" (or any other) prop to it +```ts +const contextLogger = logger.child({ context: 'SomeClassOrMethod' }) +// .... +contextLogger.info('Helpful info', context); +/* +{ + "level": "debug", + "context": "SomeClassOrMethod", + "message": "Helpful info", + "timestamp": 1738937400037, + ... +} +*/ +``` \ No newline at end of file diff --git a/packages/libs/logger/eslint.config.mjs b/packages/libs/logger/eslint.config.mjs new file mode 100644 index 0000000000..034ebf9082 --- /dev/null +++ b/packages/libs/logger/eslint.config.mjs @@ -0,0 +1,58 @@ +// @ts-check +import eslint from '@eslint/js'; +import globals from 'globals'; +import eslintPluginPrettierRecommended from 'eslint-plugin-prettier/recommended'; +import importPlugin from 'eslint-plugin-import'; +import tseslint from 'typescript-eslint'; + +export default tseslint.config( + { + ignores: ['eslint.config.mjs', 'dist'], + }, + eslint.configs.recommended, + tseslint.configs.recommended, + eslintPluginPrettierRecommended, + { + languageOptions: { + globals: { + ...globals.node, + }, + ecmaVersion: 2022, + sourceType: 'module', + parserOptions: { + projectService: true, + tsconfigRootDir: import.meta.dirname, + }, + }, + plugins: { + import: importPlugin, + }, + settings: { + 'import/resolver': { + typescript: {}, + }, + }, + rules: { + '@typescript-eslint/no-explicit-any': 'warn', + '@typescript-eslint/no-floating-promises': 'warn', + '@typescript-eslint/no-unsafe-argument': 'warn', + '@typescript-eslint/no-unused-vars': ['error', { + "args": "all", + "argsIgnorePattern": "^_", + "caughtErrors": "all", + "caughtErrorsIgnorePattern": "^noop", + "destructuredArrayIgnorePattern": "^_", + "varsIgnorePattern": "^_", + "ignoreRestSiblings": true + }], + 'import/order': [ + 'warn', + { + alphabetize: { order: 'asc', caseInsensitive: true }, + 'newlines-between': 'always', + groups: ['builtin', 'external', 'internal', ['parent', 'sibling', 'index']], + }, + ], + }, + }, +); diff --git a/packages/libs/logger/package.json b/packages/libs/logger/package.json new file mode 100644 index 0000000000..a78ada3f4d --- /dev/null +++ b/packages/libs/logger/package.json @@ -0,0 +1,57 @@ +{ + "name": "@human-protocol/logger", + "version": "1.0.0", + "description": "Unified logging package for HUMAN Protocol", + "type": "commonjs", + "main": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "dist/**/*" + ], + "scripts": { + "clean": "tsc --build --clean && rm -rf ./dist", + "build": "tsc --build", + "lint": "eslint \"src/**/*.ts\" --fix", + "format": "prettier --write \"src/**/*.ts\"" + }, + "dependencies": { + "pino": "^9.7.0", + "pino-pretty": "^13.0.0" + }, + "devDependencies": { + "@eslint/js": "^9.30.1", + "@types/node": "^22.10.5", + "eslint": "^9.30.1", + "eslint-config-prettier": "^10.1.5", + "eslint-import-resolver-typescript": "^4.4.4", + "eslint-plugin-import": "^2.32.0", + "eslint-plugin-prettier": "^5.5.1", + "globals": "^16.3.0", + "prettier": "^3.4.2", + "typescript": "^5.8.3", + "typescript-eslint": "^8.35.1" + }, + "peerDependencies": { + "@nestjs/common": "^10.2.7" + }, + "engines": { + "node": ">=22" + }, + "repository": { + "type": "git", + "url": "https://github.com/humanprotocol/human-protocol.git", + "directory": "packages/libs/logger" + }, + "keywords": [ + "human-protocol", + "logger" + ], + "license": "MIT", + "lint-staged": { + "*.ts": [ + "prettier --write", + "eslint --fix" + ] + }, + "packageManager": "yarn@4.9.1" +} diff --git a/packages/apps/reputation-oracle/server/src/logger/abstract-logger.ts b/packages/libs/logger/src/abstract-logger.ts similarity index 100% rename from packages/apps/reputation-oracle/server/src/logger/abstract-logger.ts rename to packages/libs/logger/src/abstract-logger.ts diff --git a/packages/libs/logger/src/index.ts b/packages/libs/logger/src/index.ts new file mode 100644 index 0000000000..ab3a81d8ae --- /dev/null +++ b/packages/libs/logger/src/index.ts @@ -0,0 +1,9 @@ +import { createPinoLogger as createLogger } from './pino-logger'; + +export { default as NestLogger } from './nest-logger'; + +export { LogLevel } from './types'; +export type { Logger, LoggerFactory, LoggerFactoryOptions } from './types'; + +export { createLogger }; +export default createLogger({ name: 'human-protocol-logger', pretty: true }); diff --git a/packages/apps/reputation-oracle/server/src/logger/nest-logger.ts b/packages/libs/logger/src/nest-logger.ts similarity index 88% rename from packages/apps/reputation-oracle/server/src/logger/nest-logger.ts rename to packages/libs/logger/src/nest-logger.ts index a8347d52b7..ca29a041a3 100644 --- a/packages/apps/reputation-oracle/server/src/logger/nest-logger.ts +++ b/packages/libs/logger/src/nest-logger.ts @@ -1,14 +1,18 @@ -import { LoggerService } from '@nestjs/common'; +/* eslint-disable @typescript-eslint/no-explicit-any */ +import type { LoggerService } from '@nestjs/common'; + import { Logger, LogLevel, LogMeta } from './types'; class NestLogger implements LoggerService { constructor(private readonly loggerInstance: Logger) {} log(message: any, ...optionalParams: any[]) { + // eslint-disable-next-line @typescript-eslint/no-unsafe-argument this.callLogger(LogLevel.INFO, message, ...optionalParams); } warn(message: any, ...optionalParams: any[]) { + // eslint-disable-next-line @typescript-eslint/no-unsafe-argument this.callLogger(LogLevel.WARN, message, ...optionalParams); } @@ -47,6 +51,7 @@ class NestLogger implements LoggerService { } } + // eslint-disable-next-line @typescript-eslint/no-unsafe-argument this.callLogger(LogLevel.ERROR, _message, ..._optionalParams); } diff --git a/packages/apps/reputation-oracle/server/src/logger/pino-logger.ts b/packages/libs/logger/src/pino-logger.ts similarity index 89% rename from packages/apps/reputation-oracle/server/src/logger/pino-logger.ts rename to packages/libs/logger/src/pino-logger.ts index 09d0a055df..c7da8d5def 100644 --- a/packages/apps/reputation-oracle/server/src/logger/pino-logger.ts +++ b/packages/libs/logger/src/pino-logger.ts @@ -1,11 +1,12 @@ import pino from 'pino'; + import LoggerWrapper from './abstract-logger'; import { ChildBindings, LogMeta, Logger, LogLevel, - LoggerOptions, + LoggerFactory, LogRecord, } from './types'; @@ -35,13 +36,13 @@ export class WrappedPino extends LoggerWrapper { const pinoLogLevelFormatter = (label: string) => ({ level: label }); -export function createLogger( - { name, level, pretty, disabled }: LoggerOptions, +export const createPinoLogger: LoggerFactory = ( + { name, level, pretty, disabled }, bindings: LogMeta = {}, -): WrappedPino { +) => { const pinoLogger = pino({ base: null, - level: level || LogLevel.INFO, + level: level || LogLevel.DEBUG, enabled: disabled !== true, timestamp: false, formatters: { @@ -60,4 +61,4 @@ export function createLogger( }); return new WrappedPino(pinoLogger, { ...bindings, name }); -} +}; diff --git a/packages/apps/reputation-oracle/server/src/logger/types.ts b/packages/libs/logger/src/types.ts similarity index 83% rename from packages/apps/reputation-oracle/server/src/logger/types.ts rename to packages/libs/logger/src/types.ts index 4c5eb3fe1f..127d96eef4 100644 --- a/packages/apps/reputation-oracle/server/src/logger/types.ts +++ b/packages/libs/logger/src/types.ts @@ -30,9 +30,14 @@ export interface Logger { child: (bindings: ChildBindings) => Logger; } -export type LoggerOptions = { +export type LoggerFactoryOptions = { name?: string; pretty?: boolean; level?: `${LogLevel}`; disabled?: boolean; }; + +export type LoggerFactory = ( + optins: LoggerFactoryOptions, + bindings?: LogMeta, +) => Logger; diff --git a/packages/libs/logger/tsconfig.json b/packages/libs/logger/tsconfig.json new file mode 100644 index 0000000000..701e95b085 --- /dev/null +++ b/packages/libs/logger/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "target": "es2022", + "lib": ["ES2022"], + "module": "node18", + "moduleResolution": "node16", + "rootDir": "./src", + "outDir": "./dist", + "declaration": true, + "declarationMap": true, + "sourceMap": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "types": ["node"], + }, + "include": ["src"], + "exclude": ["node_modules", "dist"] +} diff --git a/yarn.lock b/yarn.lock index c858ad4df4..6c338b2bf7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2334,7 +2334,7 @@ __metadata: languageName: node linkType: hard -"@emnapi/core@npm:^1.4.0": +"@emnapi/core@npm:^1.4.0, @emnapi/core@npm:^1.4.3": version: 1.4.3 resolution: "@emnapi/core@npm:1.4.3" dependencies: @@ -2344,7 +2344,7 @@ __metadata: languageName: node linkType: hard -"@emnapi/runtime@npm:^1.4.0": +"@emnapi/runtime@npm:^1.4.0, @emnapi/runtime@npm:^1.4.3": version: 1.4.3 resolution: "@emnapi/runtime@npm:1.4.3" dependencies: @@ -2735,6 +2735,17 @@ __metadata: languageName: node linkType: hard +"@eslint/config-array@npm:^0.21.0": + version: 0.21.0 + resolution: "@eslint/config-array@npm:0.21.0" + dependencies: + "@eslint/object-schema": "npm:^2.1.6" + debug: "npm:^4.3.1" + minimatch: "npm:^3.1.2" + checksum: 10c0/0ea801139166c4aa56465b309af512ef9b2d3c68f9198751bbc3e21894fe70f25fbf26e1b0e9fffff41857bc21bfddeee58649ae6d79aadcd747db0c5dca771f + languageName: node + linkType: hard + "@eslint/config-helpers@npm:^0.2.1": version: 0.2.2 resolution: "@eslint/config-helpers@npm:0.2.2" @@ -2742,6 +2753,13 @@ __metadata: languageName: node linkType: hard +"@eslint/config-helpers@npm:^0.3.0": + version: 0.3.0 + resolution: "@eslint/config-helpers@npm:0.3.0" + checksum: 10c0/013ae7b189eeae8b30cc2ee87bc5c9c091a9cd615579003290eb28bebad5d78806a478e74ba10b3fe08ed66975b52af7d2cd4b4b43990376412b14e5664878c8 + languageName: node + linkType: hard + "@eslint/core@npm:^0.14.0": version: 0.14.0 resolution: "@eslint/core@npm:0.14.0" @@ -2799,6 +2817,13 @@ __metadata: languageName: node linkType: hard +"@eslint/js@npm:9.30.1, @eslint/js@npm:^9.30.1": + version: 9.30.1 + resolution: "@eslint/js@npm:9.30.1" + checksum: 10c0/17fc382a0deafdb1cadac1269d9c2f2464f025bde6e4d12fc4f4775eb9886b41340d4650b72e85a53423644fdc89bf59c987a852f27379ad25feecf2c5bbc1c9 + languageName: node + linkType: hard + "@eslint/object-schema@npm:^2.1.6": version: 2.1.6 resolution: "@eslint/object-schema@npm:2.1.6" @@ -4451,6 +4476,28 @@ __metadata: languageName: unknown linkType: soft +"@human-protocol/logger@workspace:*, @human-protocol/logger@workspace:packages/libs/logger": + version: 0.0.0-use.local + resolution: "@human-protocol/logger@workspace:packages/libs/logger" + dependencies: + "@eslint/js": "npm:^9.30.1" + "@types/node": "npm:^22.10.5" + eslint: "npm:^9.30.1" + eslint-config-prettier: "npm:^10.1.5" + eslint-import-resolver-typescript: "npm:^4.4.4" + eslint-plugin-import: "npm:^2.32.0" + eslint-plugin-prettier: "npm:^5.5.1" + globals: "npm:^16.3.0" + pino: "npm:^9.7.0" + pino-pretty: "npm:^13.0.0" + prettier: "npm:^3.4.2" + typescript: "npm:^5.8.3" + typescript-eslint: "npm:^8.35.1" + peerDependencies: + "@nestjs/common": ^10.2.7 + languageName: unknown + linkType: soft + "@human-protocol/reputation-oracle@workspace:packages/apps/reputation-oracle/server": version: 0.0.0-use.local resolution: "@human-protocol/reputation-oracle@workspace:packages/apps/reputation-oracle/server" @@ -4458,6 +4505,7 @@ __metadata: "@faker-js/faker": "npm:^9.4.0" "@golevelup/ts-jest": "npm:^0.6.1" "@human-protocol/core": "workspace:*" + "@human-protocol/logger": "workspace:*" "@human-protocol/sdk": "workspace:*" "@nestjs/axios": "npm:^3.1.3" "@nestjs/cli": "npm:^10.3.2" @@ -4509,8 +4557,6 @@ __metadata: passport: "npm:^0.7.0" passport-jwt: "npm:^4.0.1" pg: "npm:8.13.1" - pino: "npm:^9.6.0" - pino-pretty: "npm:^13.0.0" prettier: "npm:^3.4.2" reflect-metadata: "npm:^0.2.2" rxjs: "npm:^7.2.0" @@ -6057,6 +6103,17 @@ __metadata: languageName: node linkType: hard +"@napi-rs/wasm-runtime@npm:^0.2.11": + version: 0.2.11 + resolution: "@napi-rs/wasm-runtime@npm:0.2.11" + dependencies: + "@emnapi/core": "npm:^1.4.3" + "@emnapi/runtime": "npm:^1.4.3" + "@tybys/wasm-util": "npm:^0.9.0" + checksum: 10c0/049bd14c58b99fbe0967b95e9921c5503df196b59be22948d2155f17652eb305cff6728efd8685338b855da7e476dd2551fbe3a313fc2d810938f0717478441e + languageName: node + linkType: hard + "@napi-rs/wasm-runtime@npm:^0.2.9": version: 0.2.9 resolution: "@napi-rs/wasm-runtime@npm:0.2.9" @@ -10613,6 +10670,27 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/eslint-plugin@npm:8.35.1": + version: 8.35.1 + resolution: "@typescript-eslint/eslint-plugin@npm:8.35.1" + dependencies: + "@eslint-community/regexpp": "npm:^4.10.0" + "@typescript-eslint/scope-manager": "npm:8.35.1" + "@typescript-eslint/type-utils": "npm:8.35.1" + "@typescript-eslint/utils": "npm:8.35.1" + "@typescript-eslint/visitor-keys": "npm:8.35.1" + graphemer: "npm:^1.4.0" + ignore: "npm:^7.0.0" + natural-compare: "npm:^1.4.0" + ts-api-utils: "npm:^2.1.0" + peerDependencies: + "@typescript-eslint/parser": ^8.35.1 + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + checksum: 10c0/0f369be24644ebea30642512ddae0e602e4ca6bc55ae09d9860f16a3baae6aee1a376c182c61b43d12bc137156e3931f6bac3c73919c9c81b32c962bb5bc544e + languageName: node + linkType: hard + "@typescript-eslint/eslint-plugin@npm:^5.0.0, @typescript-eslint/eslint-plugin@npm:^5.5.0": version: 5.62.0 resolution: "@typescript-eslint/eslint-plugin@npm:5.62.0" @@ -10712,6 +10790,22 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/parser@npm:8.35.1": + version: 8.35.1 + resolution: "@typescript-eslint/parser@npm:8.35.1" + dependencies: + "@typescript-eslint/scope-manager": "npm:8.35.1" + "@typescript-eslint/types": "npm:8.35.1" + "@typescript-eslint/typescript-estree": "npm:8.35.1" + "@typescript-eslint/visitor-keys": "npm:8.35.1" + debug: "npm:^4.3.4" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + checksum: 10c0/949383d74f6db1b91f90923d50f0ecbacaa972fd56e70553c803a8f64131345afdaf096cf1c1fc4a833ddc06ee44b241811edb5d516d769e244560f5b7f0e0af + languageName: node + linkType: hard + "@typescript-eslint/parser@npm:^5.0.0, @typescript-eslint/parser@npm:^5.5.0": version: 5.62.0 resolution: "@typescript-eslint/parser@npm:5.62.0" @@ -10776,6 +10870,19 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/project-service@npm:8.35.1": + version: 8.35.1 + resolution: "@typescript-eslint/project-service@npm:8.35.1" + dependencies: + "@typescript-eslint/tsconfig-utils": "npm:^8.35.1" + "@typescript-eslint/types": "npm:^8.35.1" + debug: "npm:^4.3.4" + peerDependencies: + typescript: ">=4.8.4 <5.9.0" + checksum: 10c0/f8e88d773d7e9f193a05b4daeca1e7571fa0059b36ffad291fc6d83c9df94fbe38c935e076ae29e755bcb6008c4ee5c1073ebb2077258c5c0b53c76a23eb3c16 + languageName: node + linkType: hard + "@typescript-eslint/scope-manager@npm:5.62.0": version: 5.62.0 resolution: "@typescript-eslint/scope-manager@npm:5.62.0" @@ -10826,6 +10933,16 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/scope-manager@npm:8.35.1": + version: 8.35.1 + resolution: "@typescript-eslint/scope-manager@npm:8.35.1" + dependencies: + "@typescript-eslint/types": "npm:8.35.1" + "@typescript-eslint/visitor-keys": "npm:8.35.1" + checksum: 10c0/ddfa0b81f47402874efcdd8e0857142600d90fc4e827243ed0fd058731e77e4beb8f5a60425117d1d4146d84437f538cf303f7bfebbd0f02733b202aa30a8393 + languageName: node + linkType: hard + "@typescript-eslint/tsconfig-utils@npm:8.33.0, @typescript-eslint/tsconfig-utils@npm:^8.33.0": version: 8.33.0 resolution: "@typescript-eslint/tsconfig-utils@npm:8.33.0" @@ -10835,6 +10952,15 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/tsconfig-utils@npm:8.35.1, @typescript-eslint/tsconfig-utils@npm:^8.35.1": + version: 8.35.1 + resolution: "@typescript-eslint/tsconfig-utils@npm:8.35.1" + peerDependencies: + typescript: ">=4.8.4 <5.9.0" + checksum: 10c0/a11b53e05fbc59eff3f95619847fb7222d8b2aa613e602524c9b700be3ce0d48bcf5e5932869df4658f514bd2cdc87c857d484472af3f3f3adf88b6e7e1c26f3 + languageName: node + linkType: hard + "@typescript-eslint/type-utils@npm:5.62.0": version: 5.62.0 resolution: "@typescript-eslint/type-utils@npm:5.62.0" @@ -10901,6 +11027,21 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/type-utils@npm:8.35.1": + version: 8.35.1 + resolution: "@typescript-eslint/type-utils@npm:8.35.1" + dependencies: + "@typescript-eslint/typescript-estree": "npm:8.35.1" + "@typescript-eslint/utils": "npm:8.35.1" + debug: "npm:^4.3.4" + ts-api-utils: "npm:^2.1.0" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + checksum: 10c0/09041dd64684823da169c0668e6187d237c728bf54771003dc6ddaa895cbd11ad401ff14f096451c689e37815a791ef77beaf80d1f8bbf6b92ee3edbf346bc7c + languageName: node + linkType: hard + "@typescript-eslint/types@npm:5.62.0": version: 5.62.0 resolution: "@typescript-eslint/types@npm:5.62.0" @@ -10936,6 +11077,13 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/types@npm:8.35.1, @typescript-eslint/types@npm:^8.35.1": + version: 8.35.1 + resolution: "@typescript-eslint/types@npm:8.35.1" + checksum: 10c0/136dd1c7a39685baa398406423a97a4b6a66e6aed7cbd6ae698a89b0fde92c76f1415294bec612791d67d7917fda280caa65b9d761e2744e8143506d1f417fb2 + languageName: node + linkType: hard + "@typescript-eslint/typescript-estree@npm:5.62.0": version: 5.62.0 resolution: "@typescript-eslint/typescript-estree@npm:5.62.0" @@ -11030,6 +11178,26 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/typescript-estree@npm:8.35.1": + version: 8.35.1 + resolution: "@typescript-eslint/typescript-estree@npm:8.35.1" + dependencies: + "@typescript-eslint/project-service": "npm:8.35.1" + "@typescript-eslint/tsconfig-utils": "npm:8.35.1" + "@typescript-eslint/types": "npm:8.35.1" + "@typescript-eslint/visitor-keys": "npm:8.35.1" + debug: "npm:^4.3.4" + fast-glob: "npm:^3.3.2" + is-glob: "npm:^4.0.3" + minimatch: "npm:^9.0.4" + semver: "npm:^7.6.0" + ts-api-utils: "npm:^2.1.0" + peerDependencies: + typescript: ">=4.8.4 <5.9.0" + checksum: 10c0/6ef093cf9d7a54a323b3d112c78309b2c24c0f94e2c5b61401db9390eb7ffa3ab1da066c497907d58f0bba6986984ac73a478febd91f0bf11598108cc49f6e02 + languageName: node + linkType: hard + "@typescript-eslint/utils@npm:5.62.0, @typescript-eslint/utils@npm:^5.10.0, @typescript-eslint/utils@npm:^5.58.0, @typescript-eslint/utils@npm:^5.62.0": version: 5.62.0 resolution: "@typescript-eslint/utils@npm:5.62.0" @@ -11094,6 +11262,21 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/utils@npm:8.35.1": + version: 8.35.1 + resolution: "@typescript-eslint/utils@npm:8.35.1" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.7.0" + "@typescript-eslint/scope-manager": "npm:8.35.1" + "@typescript-eslint/types": "npm:8.35.1" + "@typescript-eslint/typescript-estree": "npm:8.35.1" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + checksum: 10c0/1fa4877caae48961d160b88fc974bb7bfe355ca2f8f6915987427354ca23621698041678adab5964caf9ad62c17b349110136890688f13b10ab1aaad74ae63d9 + languageName: node + linkType: hard + "@typescript-eslint/utils@npm:^8.18.1": version: 8.32.0 resolution: "@typescript-eslint/utils@npm:8.32.0" @@ -11159,6 +11342,16 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/visitor-keys@npm:8.35.1": + version: 8.35.1 + resolution: "@typescript-eslint/visitor-keys@npm:8.35.1" + dependencies: + "@typescript-eslint/types": "npm:8.35.1" + eslint-visitor-keys: "npm:^4.2.1" + checksum: 10c0/55b9eb15842a5d5dca11375e436340c731e01b07190c741d2656330f3e4d88b59e1bf3d677681dd091460be2b6e5f2c42e92faea36f947d25382ead5e8118108 + languageName: node + linkType: hard + "@ungap/structured-clone@npm:^1.2.0": version: 1.3.0 resolution: "@ungap/structured-clone@npm:1.3.0" @@ -11166,6 +11359,27 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-android-arm-eabi@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-android-arm-eabi@npm:1.11.0" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@unrs/resolver-binding-android-arm64@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-android-arm64@npm:1.11.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-darwin-arm64@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-darwin-arm64@npm:1.11.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@unrs/resolver-binding-darwin-arm64@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-darwin-arm64@npm:1.7.2" @@ -11173,6 +11387,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-darwin-x64@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-darwin-x64@npm:1.11.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@unrs/resolver-binding-darwin-x64@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-darwin-x64@npm:1.7.2" @@ -11180,6 +11401,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-freebsd-x64@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-freebsd-x64@npm:1.11.0" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + "@unrs/resolver-binding-freebsd-x64@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-freebsd-x64@npm:1.7.2" @@ -11187,6 +11415,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.11.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + "@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.7.2" @@ -11194,6 +11429,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-linux-arm-musleabihf@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-arm-musleabihf@npm:1.11.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + "@unrs/resolver-binding-linux-arm-musleabihf@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-linux-arm-musleabihf@npm:1.7.2" @@ -11201,6 +11443,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-linux-arm64-gnu@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-arm64-gnu@npm:1.11.0" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + "@unrs/resolver-binding-linux-arm64-gnu@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-linux-arm64-gnu@npm:1.7.2" @@ -11208,6 +11457,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-linux-arm64-musl@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-arm64-musl@npm:1.11.0" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + "@unrs/resolver-binding-linux-arm64-musl@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-linux-arm64-musl@npm:1.7.2" @@ -11215,6 +11471,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-linux-ppc64-gnu@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-ppc64-gnu@npm:1.11.0" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + "@unrs/resolver-binding-linux-ppc64-gnu@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-linux-ppc64-gnu@npm:1.7.2" @@ -11222,6 +11485,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-linux-riscv64-gnu@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-riscv64-gnu@npm:1.11.0" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + "@unrs/resolver-binding-linux-riscv64-gnu@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-linux-riscv64-gnu@npm:1.7.2" @@ -11229,6 +11499,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-linux-riscv64-musl@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-riscv64-musl@npm:1.11.0" + conditions: os=linux & cpu=riscv64 & libc=musl + languageName: node + linkType: hard + "@unrs/resolver-binding-linux-riscv64-musl@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-linux-riscv64-musl@npm:1.7.2" @@ -11236,6 +11513,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-linux-s390x-gnu@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-s390x-gnu@npm:1.11.0" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + "@unrs/resolver-binding-linux-s390x-gnu@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-linux-s390x-gnu@npm:1.7.2" @@ -11243,6 +11527,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-linux-x64-gnu@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-x64-gnu@npm:1.11.0" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + "@unrs/resolver-binding-linux-x64-gnu@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-linux-x64-gnu@npm:1.7.2" @@ -11250,6 +11541,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-linux-x64-musl@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-x64-musl@npm:1.11.0" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + "@unrs/resolver-binding-linux-x64-musl@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-linux-x64-musl@npm:1.7.2" @@ -11257,6 +11555,15 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-wasm32-wasi@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-wasm32-wasi@npm:1.11.0" + dependencies: + "@napi-rs/wasm-runtime": "npm:^0.2.11" + conditions: cpu=wasm32 + languageName: node + linkType: hard + "@unrs/resolver-binding-wasm32-wasi@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-wasm32-wasi@npm:1.7.2" @@ -11266,6 +11573,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-win32-arm64-msvc@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-win32-arm64-msvc@npm:1.11.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + "@unrs/resolver-binding-win32-arm64-msvc@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-win32-arm64-msvc@npm:1.7.2" @@ -11273,6 +11587,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-win32-ia32-msvc@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-win32-ia32-msvc@npm:1.11.0" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + "@unrs/resolver-binding-win32-ia32-msvc@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-win32-ia32-msvc@npm:1.7.2" @@ -11280,6 +11601,13 @@ __metadata: languageName: node linkType: hard +"@unrs/resolver-binding-win32-x64-msvc@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-win32-x64-msvc@npm:1.11.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@unrs/resolver-binding-win32-x64-msvc@npm:1.7.2": version: 1.7.2 resolution: "@unrs/resolver-binding-win32-x64-msvc@npm:1.7.2" @@ -12610,6 +12938,15 @@ __metadata: languageName: node linkType: hard +"acorn@npm:^8.15.0": + version: 8.15.0 + resolution: "acorn@npm:8.15.0" + bin: + acorn: bin/acorn + checksum: 10c0/dec73ff59b7d6628a01eebaece7f2bdb8bb62b9b5926dcad0f8931f2b8b79c2be21f6c68ac095592adb5adb15831a3635d9343e6a91d028bbe85d564875ec3ec + languageName: node + linkType: hard + "adm-zip@npm:^0.4.16": version: 0.4.16 resolution: "adm-zip@npm:0.4.16" @@ -13008,6 +13345,22 @@ __metadata: languageName: node linkType: hard +"array-includes@npm:^3.1.9": + version: 3.1.9 + resolution: "array-includes@npm:3.1.9" + dependencies: + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.4" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.24.0" + es-object-atoms: "npm:^1.1.1" + get-intrinsic: "npm:^1.3.0" + is-string: "npm:^1.1.1" + math-intrinsics: "npm:^1.1.0" + checksum: 10c0/0235fa69078abeac05ac4250699c44996bc6f774a9cbe45db48674ce6bd142f09b327d31482ff75cf03344db4ea03eae23edb862d59378b484b47ed842574856 + languageName: node + linkType: hard + "array-timsort@npm:^1.0.3": version: 1.0.3 resolution: "array-timsort@npm:1.0.3" @@ -13036,7 +13389,7 @@ __metadata: languageName: node linkType: hard -"array.prototype.findlastindex@npm:^1.2.5": +"array.prototype.findlastindex@npm:^1.2.5, array.prototype.findlastindex@npm:^1.2.6": version: 1.2.6 resolution: "array.prototype.findlastindex@npm:1.2.6" dependencies: @@ -13051,7 +13404,7 @@ __metadata: languageName: node linkType: hard -"array.prototype.flat@npm:^1.3.1, array.prototype.flat@npm:^1.3.2": +"array.prototype.flat@npm:^1.3.1, array.prototype.flat@npm:^1.3.2, array.prototype.flat@npm:^1.3.3": version: 1.3.3 resolution: "array.prototype.flat@npm:1.3.3" dependencies: @@ -15596,6 +15949,18 @@ __metadata: languageName: node linkType: hard +"debug@npm:^4.4.1": + version: 4.4.1 + resolution: "debug@npm:4.4.1" + dependencies: + ms: "npm:^2.1.3" + peerDependenciesMeta: + supports-color: + optional: true + checksum: 10c0/d2b44bc1afd912b49bb7ebb0d50a860dc93a4dd7d946e8de94abc957bb63726b7dd5aa48c18c2386c379ec024c46692e15ed3ed97d481729f929201e671fcd55 + languageName: node + linkType: hard + "decamelize@npm:^1.2.0": version: 1.2.0 resolution: "decamelize@npm:1.2.0" @@ -16380,6 +16745,68 @@ __metadata: languageName: node linkType: hard +"es-abstract@npm:^1.24.0": + version: 1.24.0 + resolution: "es-abstract@npm:1.24.0" + dependencies: + array-buffer-byte-length: "npm:^1.0.2" + arraybuffer.prototype.slice: "npm:^1.0.4" + available-typed-arrays: "npm:^1.0.7" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.4" + data-view-buffer: "npm:^1.0.2" + data-view-byte-length: "npm:^1.0.2" + data-view-byte-offset: "npm:^1.0.1" + es-define-property: "npm:^1.0.1" + es-errors: "npm:^1.3.0" + es-object-atoms: "npm:^1.1.1" + es-set-tostringtag: "npm:^2.1.0" + es-to-primitive: "npm:^1.3.0" + function.prototype.name: "npm:^1.1.8" + get-intrinsic: "npm:^1.3.0" + get-proto: "npm:^1.0.1" + get-symbol-description: "npm:^1.1.0" + globalthis: "npm:^1.0.4" + gopd: "npm:^1.2.0" + has-property-descriptors: "npm:^1.0.2" + has-proto: "npm:^1.2.0" + has-symbols: "npm:^1.1.0" + hasown: "npm:^2.0.2" + internal-slot: "npm:^1.1.0" + is-array-buffer: "npm:^3.0.5" + is-callable: "npm:^1.2.7" + is-data-view: "npm:^1.0.2" + is-negative-zero: "npm:^2.0.3" + is-regex: "npm:^1.2.1" + is-set: "npm:^2.0.3" + is-shared-array-buffer: "npm:^1.0.4" + is-string: "npm:^1.1.1" + is-typed-array: "npm:^1.1.15" + is-weakref: "npm:^1.1.1" + math-intrinsics: "npm:^1.1.0" + object-inspect: "npm:^1.13.4" + object-keys: "npm:^1.1.1" + object.assign: "npm:^4.1.7" + own-keys: "npm:^1.0.1" + regexp.prototype.flags: "npm:^1.5.4" + safe-array-concat: "npm:^1.1.3" + safe-push-apply: "npm:^1.0.0" + safe-regex-test: "npm:^1.1.0" + set-proto: "npm:^1.0.0" + stop-iteration-iterator: "npm:^1.1.0" + string.prototype.trim: "npm:^1.2.10" + string.prototype.trimend: "npm:^1.0.9" + string.prototype.trimstart: "npm:^1.0.8" + typed-array-buffer: "npm:^1.0.3" + typed-array-byte-length: "npm:^1.0.3" + typed-array-byte-offset: "npm:^1.0.4" + typed-array-length: "npm:^1.0.7" + unbox-primitive: "npm:^1.1.0" + which-typed-array: "npm:^1.1.19" + checksum: 10c0/b256e897be32df5d382786ce8cce29a1dd8c97efbab77a26609bd70f2ed29fbcfc7a31758cb07488d532e7ccccdfca76c1118f2afe5a424cdc05ca007867c318 + languageName: node + linkType: hard + "es-define-property@npm:^1.0.0, es-define-property@npm:^1.0.1": version: 1.0.1 resolution: "es-define-property@npm:1.0.1" @@ -16646,6 +17073,17 @@ __metadata: languageName: node linkType: hard +"eslint-config-prettier@npm:^10.1.5": + version: 10.1.5 + resolution: "eslint-config-prettier@npm:10.1.5" + peerDependencies: + eslint: ">=7.0.0" + bin: + eslint-config-prettier: bin/cli.js + checksum: 10c0/5486255428e4577e8064b40f27db299faf7312b8e43d7b4bc913a6426e6c0f5950cd519cad81ae24e9aecb4002c502bc665c02e3b52efde57af2debcf27dd6e0 + languageName: node + linkType: hard + "eslint-config-prettier@npm:^9.1.0": version: 9.1.0 resolution: "eslint-config-prettier@npm:9.1.0" @@ -16681,6 +17119,21 @@ __metadata: languageName: node linkType: hard +"eslint-import-context@npm:^0.1.8": + version: 0.1.9 + resolution: "eslint-import-context@npm:0.1.9" + dependencies: + get-tsconfig: "npm:^4.10.1" + stable-hash-x: "npm:^0.2.0" + peerDependencies: + unrs-resolver: ^1.0.0 + peerDependenciesMeta: + unrs-resolver: + optional: true + checksum: 10c0/07851103443b70af681c5988e2702e681ff9b956e055e11d4bd9b2322847fa0d9e8da50c18fc7cb1165106b043f34fbd0384d7011c239465c4645c52132e56f3 + languageName: node + linkType: hard + "eslint-import-resolver-alias@npm:^1.1.2": version: 1.1.2 resolution: "eslint-import-resolver-alias@npm:1.1.2" @@ -16725,6 +17178,30 @@ __metadata: languageName: node linkType: hard +"eslint-import-resolver-typescript@npm:^4.4.4": + version: 4.4.4 + resolution: "eslint-import-resolver-typescript@npm:4.4.4" + dependencies: + debug: "npm:^4.4.1" + eslint-import-context: "npm:^0.1.8" + get-tsconfig: "npm:^4.10.1" + is-bun-module: "npm:^2.0.0" + stable-hash-x: "npm:^0.2.0" + tinyglobby: "npm:^0.2.14" + unrs-resolver: "npm:^1.7.11" + peerDependencies: + eslint: "*" + eslint-plugin-import: "*" + eslint-plugin-import-x: "*" + peerDependenciesMeta: + eslint-plugin-import: + optional: true + eslint-plugin-import-x: + optional: true + checksum: 10c0/3bf8ad77c21660f77a0e455555ab179420f68ae7a132906c85a217ccce51cb6680cf70027cab32a358d193e5b9e476f6ba2e595585242aa97d4f6435ca22104e + languageName: node + linkType: hard + "eslint-module-utils@npm:^2.12.0": version: 2.12.0 resolution: "eslint-module-utils@npm:2.12.0" @@ -16737,6 +17214,18 @@ __metadata: languageName: node linkType: hard +"eslint-module-utils@npm:^2.12.1": + version: 2.12.1 + resolution: "eslint-module-utils@npm:2.12.1" + dependencies: + debug: "npm:^3.2.7" + peerDependenciesMeta: + eslint: + optional: true + checksum: 10c0/6f4efbe7a91ae49bf67b4ab3644cb60bc5bd7db4cb5521de1b65be0847ffd3fb6bce0dd68f0995e1b312d137f768e2a1f842ee26fe73621afa05f850628fdc40 + languageName: node + linkType: hard + "eslint-plugin-eslint-comments@npm:^3.2.0": version: 3.2.0 resolution: "eslint-plugin-eslint-comments@npm:3.2.0" @@ -16792,6 +17281,35 @@ __metadata: languageName: node linkType: hard +"eslint-plugin-import@npm:^2.32.0": + version: 2.32.0 + resolution: "eslint-plugin-import@npm:2.32.0" + dependencies: + "@rtsao/scc": "npm:^1.1.0" + array-includes: "npm:^3.1.9" + array.prototype.findlastindex: "npm:^1.2.6" + array.prototype.flat: "npm:^1.3.3" + array.prototype.flatmap: "npm:^1.3.3" + debug: "npm:^3.2.7" + doctrine: "npm:^2.1.0" + eslint-import-resolver-node: "npm:^0.3.9" + eslint-module-utils: "npm:^2.12.1" + hasown: "npm:^2.0.2" + is-core-module: "npm:^2.16.1" + is-glob: "npm:^4.0.3" + minimatch: "npm:^3.1.2" + object.fromentries: "npm:^2.0.8" + object.groupby: "npm:^1.0.3" + object.values: "npm:^1.2.1" + semver: "npm:^6.3.1" + string.prototype.trimend: "npm:^1.0.9" + tsconfig-paths: "npm:^3.15.0" + peerDependencies: + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 + checksum: 10c0/bfb1b8fc8800398e62ddfefbf3638d185286edfed26dfe00875cc2846d954491b4f5112457831588b757fa789384e1ae585f812614c4797f0499fa234fd4a48b + languageName: node + linkType: hard + "eslint-plugin-jest@npm:^25.3.0": version: 25.7.0 resolution: "eslint-plugin-jest@npm:25.7.0" @@ -16907,6 +17425,26 @@ __metadata: languageName: node linkType: hard +"eslint-plugin-prettier@npm:^5.5.1": + version: 5.5.1 + resolution: "eslint-plugin-prettier@npm:5.5.1" + dependencies: + prettier-linter-helpers: "npm:^1.0.0" + synckit: "npm:^0.11.7" + peerDependencies: + "@types/eslint": ">=8.0.0" + eslint: ">=8.0.0" + eslint-config-prettier: ">= 7.0.0 <10.0.0 || >=10.1.0" + prettier: ">=3.0.0" + peerDependenciesMeta: + "@types/eslint": + optional: true + eslint-config-prettier: + optional: true + checksum: 10c0/6ed93faa7d885af2a987d732f7e716e7aaba55e2da2b091e1b16bacf68425bffe91d784803597bd3f3e6201499fabb89ae28a51ac3986659a46e55e729ed2d55 + languageName: node + linkType: hard + "eslint-plugin-react-hooks@npm:^4.3.0, eslint-plugin-react-hooks@npm:^4.6.0": version: 4.6.2 resolution: "eslint-plugin-react-hooks@npm:4.6.2" @@ -17067,6 +17605,16 @@ __metadata: languageName: node linkType: hard +"eslint-scope@npm:^8.4.0": + version: 8.4.0 + resolution: "eslint-scope@npm:8.4.0" + dependencies: + esrecurse: "npm:^4.3.0" + estraverse: "npm:^5.2.0" + checksum: 10c0/407f6c600204d0f3705bd557f81bd0189e69cd7996f408f8971ab5779c0af733d1af2f1412066b40ee1588b085874fc37a2333986c6521669cdbdd36ca5058e0 + languageName: node + linkType: hard + "eslint-visitor-keys@npm:^2.1.0": version: 2.1.0 resolution: "eslint-visitor-keys@npm:2.1.0" @@ -17088,6 +17636,13 @@ __metadata: languageName: node linkType: hard +"eslint-visitor-keys@npm:^4.2.1": + version: 4.2.1 + resolution: "eslint-visitor-keys@npm:4.2.1" + checksum: 10c0/fcd43999199d6740db26c58dbe0c2594623e31ca307e616ac05153c9272f12f1364f5a0b1917a8e962268fdecc6f3622c1c2908b4fcc2e047a106fe6de69dc43 + languageName: node + linkType: hard + "eslint@npm:^8.0.1, eslint@npm:^8.55.0, eslint@npm:^8.57.0": version: 8.57.1 resolution: "eslint@npm:8.57.1" @@ -17186,6 +17741,56 @@ __metadata: languageName: node linkType: hard +"eslint@npm:^9.30.1": + version: 9.30.1 + resolution: "eslint@npm:9.30.1" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.2.0" + "@eslint-community/regexpp": "npm:^4.12.1" + "@eslint/config-array": "npm:^0.21.0" + "@eslint/config-helpers": "npm:^0.3.0" + "@eslint/core": "npm:^0.14.0" + "@eslint/eslintrc": "npm:^3.3.1" + "@eslint/js": "npm:9.30.1" + "@eslint/plugin-kit": "npm:^0.3.1" + "@humanfs/node": "npm:^0.16.6" + "@humanwhocodes/module-importer": "npm:^1.0.1" + "@humanwhocodes/retry": "npm:^0.4.2" + "@types/estree": "npm:^1.0.6" + "@types/json-schema": "npm:^7.0.15" + ajv: "npm:^6.12.4" + chalk: "npm:^4.0.0" + cross-spawn: "npm:^7.0.6" + debug: "npm:^4.3.2" + escape-string-regexp: "npm:^4.0.0" + eslint-scope: "npm:^8.4.0" + eslint-visitor-keys: "npm:^4.2.1" + espree: "npm:^10.4.0" + esquery: "npm:^1.5.0" + esutils: "npm:^2.0.2" + fast-deep-equal: "npm:^3.1.3" + file-entry-cache: "npm:^8.0.0" + find-up: "npm:^5.0.0" + glob-parent: "npm:^6.0.2" + ignore: "npm:^5.2.0" + imurmurhash: "npm:^0.1.4" + is-glob: "npm:^4.0.0" + json-stable-stringify-without-jsonify: "npm:^1.0.1" + lodash.merge: "npm:^4.6.2" + minimatch: "npm:^3.1.2" + natural-compare: "npm:^1.4.0" + optionator: "npm:^0.9.3" + peerDependencies: + jiti: "*" + peerDependenciesMeta: + jiti: + optional: true + bin: + eslint: bin/eslint.js + checksum: 10c0/5a5867078e03ea56a1b6d1ee1548659abc38a6d5136c7ef94e21c5dbeb28e3ed50b15d2e0da25fce85600f6cf7ea7715eae650c41e8ae826c34490e9ec73d5d6 + languageName: node + linkType: hard + "espree@npm:^10.0.1, espree@npm:^10.3.0": version: 10.3.0 resolution: "espree@npm:10.3.0" @@ -17197,6 +17802,17 @@ __metadata: languageName: node linkType: hard +"espree@npm:^10.4.0": + version: 10.4.0 + resolution: "espree@npm:10.4.0" + dependencies: + acorn: "npm:^8.15.0" + acorn-jsx: "npm:^5.3.2" + eslint-visitor-keys: "npm:^4.2.1" + checksum: 10c0/c63fe06131c26c8157b4083313cb02a9a54720a08e21543300e55288c40e06c3fc284bdecf108d3a1372c5934a0a88644c98714f38b6ae8ed272b40d9ea08d6b + languageName: node + linkType: hard + "espree@npm:^9.6.0, espree@npm:^9.6.1": version: 9.6.1 resolution: "espree@npm:9.6.1" @@ -18561,6 +19177,15 @@ __metadata: languageName: node linkType: hard +"get-tsconfig@npm:^4.10.1": + version: 4.10.1 + resolution: "get-tsconfig@npm:4.10.1" + dependencies: + resolve-pkg-maps: "npm:^1.0.0" + checksum: 10c0/7f8e3dabc6a49b747920a800fb88e1952fef871cdf51b79e98db48275a5de6cdaf499c55ee67df5fa6fe7ce65f0063e26de0f2e53049b408c585aa74d39ffa21 + languageName: node + linkType: hard + "ghost-testrpc@npm:^0.0.2": version: 0.0.2 resolution: "ghost-testrpc@npm:0.0.2" @@ -18741,6 +19366,13 @@ __metadata: languageName: node linkType: hard +"globals@npm:^16.3.0": + version: 16.3.0 + resolution: "globals@npm:16.3.0" + checksum: 10c0/c62dc20357d1c0bf2be4545d6c4141265d1a229bf1c3294955efb5b5ef611145391895e3f2729f8603809e81b30b516c33e6c2597573844449978606aad6eb38 + languageName: node + linkType: hard + "globalthis@npm:^1.0.4": version: 1.0.4 resolution: "globalthis@npm:1.0.4" @@ -19925,7 +20557,7 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.1.0, is-core-module@npm:^2.13.0, is-core-module@npm:^2.15.1, is-core-module@npm:^2.16.0": +"is-core-module@npm:^2.1.0, is-core-module@npm:^2.13.0, is-core-module@npm:^2.15.1, is-core-module@npm:^2.16.0, is-core-module@npm:^2.16.1": version: 2.16.1 resolution: "is-core-module@npm:2.16.1" dependencies: @@ -20096,6 +20728,13 @@ __metadata: languageName: node linkType: hard +"is-negative-zero@npm:^2.0.3": + version: 2.0.3 + resolution: "is-negative-zero@npm:2.0.3" + checksum: 10c0/bcdcf6b8b9714063ffcfa9929c575ac69bfdabb8f4574ff557dfc086df2836cf07e3906f5bbc4f2a5c12f8f3ba56af640c843cdfc74da8caed86c7c7d66fd08e + languageName: node + linkType: hard + "is-node-process@npm:^1.2.0": version: 1.2.0 resolution: "is-node-process@npm:1.2.0" @@ -20255,7 +20894,7 @@ __metadata: languageName: node linkType: hard -"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.0": +"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.0, is-weakref@npm:^1.1.1": version: 1.1.1 resolution: "is-weakref@npm:1.1.1" dependencies: @@ -22917,6 +23556,15 @@ __metadata: languageName: node linkType: hard +"napi-postinstall@npm:^0.3.0": + version: 0.3.0 + resolution: "napi-postinstall@npm:0.3.0" + bin: + napi-postinstall: lib/cli.js + checksum: 10c0/dd5b295a0c7e669dda81a553b5defcdbe56805beb4279cd0df973454f072c083f574d399c4c825eece128113159658b031b4ac4b9dcb5735c5e34ddaefd3a3ca + languageName: node + linkType: hard + "native-fetch@npm:^4.0.2": version: 4.0.2 resolution: "native-fetch@npm:4.0.2" @@ -23370,7 +24018,7 @@ __metadata: languageName: node linkType: hard -"object-inspect@npm:^1.13.3": +"object-inspect@npm:^1.13.3, object-inspect@npm:^1.13.4": version: 1.13.4 resolution: "object-inspect@npm:1.13.4" checksum: 10c0/d7f8711e803b96ea3191c745d6f8056ce1f2496e530e6a19a0e92d89b0fa3c76d910c31f0aa270432db6bd3b2f85500a376a83aaba849a8d518c8845b3211692 @@ -24402,16 +25050,16 @@ __metadata: languageName: node linkType: hard -"pino@npm:^9.6.0": - version: 9.6.0 - resolution: "pino@npm:9.6.0" +"pino@npm:^9.7.0": + version: 9.7.0 + resolution: "pino@npm:9.7.0" dependencies: atomic-sleep: "npm:^1.0.0" fast-redact: "npm:^3.1.1" on-exit-leak-free: "npm:^2.1.0" pino-abstract-transport: "npm:^2.0.0" pino-std-serializers: "npm:^7.0.0" - process-warning: "npm:^4.0.0" + process-warning: "npm:^5.0.0" quick-format-unescaped: "npm:^4.0.3" real-require: "npm:^0.2.0" safe-stable-stringify: "npm:^2.3.1" @@ -24419,7 +25067,7 @@ __metadata: thread-stream: "npm:^3.0.0" bin: pino: bin.js - checksum: 10c0/bcd1e9d9b301bea13b95689ca9ad7105ae9451928fb6c0b67b3e58c5fe37cea1d40665f3d6641e3da00be0bbc17b89031e67abbc8ea6aac6164f399309fd78e7 + checksum: 10c0/c7f8a83a9a9d728b4eff6d0f4b9367f031c91bcaa5806fbf0eedcc8e77faba593d59baf11a8fba0dd1c778bb17ca7ed01418ac1df4ec129faeedd4f3ecaff66f languageName: node linkType: hard @@ -24695,10 +25343,10 @@ __metadata: languageName: node linkType: hard -"process-warning@npm:^4.0.0": - version: 4.0.1 - resolution: "process-warning@npm:4.0.1" - checksum: 10c0/577a268b9fd5c3d9f6dbb4348220099391d830905642845d591e7ee8b1e45043d98b7b9826a3c1379bdd1686cdfe0f6cf349cb812affc5853b662e6a9896579e +"process-warning@npm:^5.0.0": + version: 5.0.0 + resolution: "process-warning@npm:5.0.0" + checksum: 10c0/941f48863d368ec161e0b5890ba0c6af94170078f3d6b5e915c19b36fb59edb0dc2f8e834d25e0d375a8bf368a49d490f080508842168832b93489d17843ec29 languageName: node linkType: hard @@ -25500,7 +26148,7 @@ __metadata: languageName: node linkType: hard -"regexp.prototype.flags@npm:^1.5.3": +"regexp.prototype.flags@npm:^1.5.3, regexp.prototype.flags@npm:^1.5.4": version: 1.5.4 resolution: "regexp.prototype.flags@npm:1.5.4" dependencies: @@ -26951,6 +27599,13 @@ __metadata: languageName: node linkType: hard +"stable-hash-x@npm:^0.2.0": + version: 0.2.0 + resolution: "stable-hash-x@npm:0.2.0" + checksum: 10c0/c757df58366ee4bb266a9486b8932eab7c1ba730469eaf4b68d2dee404814e9f84089c44c9b5205f8c7d99a0ab036cce2af69139ce5ed44b635923c011a8aea8 + languageName: node + linkType: hard + "stable-hash@npm:^0.0.5": version: 0.0.5 resolution: "stable-hash@npm:0.0.5" @@ -26997,6 +27652,16 @@ __metadata: languageName: node linkType: hard +"stop-iteration-iterator@npm:^1.1.0": + version: 1.1.0 + resolution: "stop-iteration-iterator@npm:1.1.0" + dependencies: + es-errors: "npm:^1.3.0" + internal-slot: "npm:^1.1.0" + checksum: 10c0/de4e45706bb4c0354a4b1122a2b8cc45a639e86206807ce0baf390ee9218d3ef181923fa4d2b67443367c491aa255c5fbaa64bb74648e3c5b48299928af86c09 + languageName: node + linkType: hard + "stream-browserify@npm:^3.0.0": version: 3.0.0 resolution: "stream-browserify@npm:3.0.0" @@ -27777,6 +28442,16 @@ __metadata: languageName: node linkType: hard +"tinyglobby@npm:^0.2.14": + version: 0.2.14 + resolution: "tinyglobby@npm:0.2.14" + dependencies: + fdir: "npm:^6.4.4" + picomatch: "npm:^4.0.2" + checksum: 10c0/f789ed6c924287a9b7d3612056ed0cda67306cd2c80c249fd280cf1504742b12583a2089b61f4abbd24605f390809017240e250241f09938054c9b363e51c0a6 + languageName: node + linkType: hard + "tinypool@npm:^1.0.2": version: 1.0.2 resolution: "tinypool@npm:1.0.2" @@ -28461,6 +29136,20 @@ __metadata: languageName: node linkType: hard +"typescript-eslint@npm:^8.35.1": + version: 8.35.1 + resolution: "typescript-eslint@npm:8.35.1" + dependencies: + "@typescript-eslint/eslint-plugin": "npm:8.35.1" + "@typescript-eslint/parser": "npm:8.35.1" + "@typescript-eslint/utils": "npm:8.35.1" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.9.0" + checksum: 10c0/17781138f59c241658db96f793b745883e427bc48530cec2e81ad0a7941b557ddd2eede290d2c3d254f23d59a36ab1bf2cd1e705797e0db36d0ccd61c1a4299e + languageName: node + linkType: hard + "typescript@npm:5.7.2": version: 5.7.2 resolution: "typescript@npm:5.7.2" @@ -28828,6 +29517,73 @@ __metadata: languageName: node linkType: hard +"unrs-resolver@npm:^1.7.11": + version: 1.11.0 + resolution: "unrs-resolver@npm:1.11.0" + dependencies: + "@unrs/resolver-binding-android-arm-eabi": "npm:1.11.0" + "@unrs/resolver-binding-android-arm64": "npm:1.11.0" + "@unrs/resolver-binding-darwin-arm64": "npm:1.11.0" + "@unrs/resolver-binding-darwin-x64": "npm:1.11.0" + "@unrs/resolver-binding-freebsd-x64": "npm:1.11.0" + "@unrs/resolver-binding-linux-arm-gnueabihf": "npm:1.11.0" + "@unrs/resolver-binding-linux-arm-musleabihf": "npm:1.11.0" + "@unrs/resolver-binding-linux-arm64-gnu": "npm:1.11.0" + "@unrs/resolver-binding-linux-arm64-musl": "npm:1.11.0" + "@unrs/resolver-binding-linux-ppc64-gnu": "npm:1.11.0" + "@unrs/resolver-binding-linux-riscv64-gnu": "npm:1.11.0" + "@unrs/resolver-binding-linux-riscv64-musl": "npm:1.11.0" + "@unrs/resolver-binding-linux-s390x-gnu": "npm:1.11.0" + "@unrs/resolver-binding-linux-x64-gnu": "npm:1.11.0" + "@unrs/resolver-binding-linux-x64-musl": "npm:1.11.0" + "@unrs/resolver-binding-wasm32-wasi": "npm:1.11.0" + "@unrs/resolver-binding-win32-arm64-msvc": "npm:1.11.0" + "@unrs/resolver-binding-win32-ia32-msvc": "npm:1.11.0" + "@unrs/resolver-binding-win32-x64-msvc": "npm:1.11.0" + napi-postinstall: "npm:^0.3.0" + dependenciesMeta: + "@unrs/resolver-binding-android-arm-eabi": + optional: true + "@unrs/resolver-binding-android-arm64": + optional: true + "@unrs/resolver-binding-darwin-arm64": + optional: true + "@unrs/resolver-binding-darwin-x64": + optional: true + "@unrs/resolver-binding-freebsd-x64": + optional: true + "@unrs/resolver-binding-linux-arm-gnueabihf": + optional: true + "@unrs/resolver-binding-linux-arm-musleabihf": + optional: true + "@unrs/resolver-binding-linux-arm64-gnu": + optional: true + "@unrs/resolver-binding-linux-arm64-musl": + optional: true + "@unrs/resolver-binding-linux-ppc64-gnu": + optional: true + "@unrs/resolver-binding-linux-riscv64-gnu": + optional: true + "@unrs/resolver-binding-linux-riscv64-musl": + optional: true + "@unrs/resolver-binding-linux-s390x-gnu": + optional: true + "@unrs/resolver-binding-linux-x64-gnu": + optional: true + "@unrs/resolver-binding-linux-x64-musl": + optional: true + "@unrs/resolver-binding-wasm32-wasi": + optional: true + "@unrs/resolver-binding-win32-arm64-msvc": + optional: true + "@unrs/resolver-binding-win32-ia32-msvc": + optional: true + "@unrs/resolver-binding-win32-x64-msvc": + optional: true + checksum: 10c0/5883c0621e3a57f21426092a99783ecd88e795493a0ab013a10013ddd8fe355d67a88ac37a7e8ae0f3617d52e7f688b95d9b2807ac605b22c174a8bd6d85fc04 + languageName: node + linkType: hard + "unstorage@npm:^1.9.0": version: 1.16.0 resolution: "unstorage@npm:1.16.0" @@ -30018,7 +30774,7 @@ __metadata: languageName: node linkType: hard -"which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.18, which-typed-array@npm:^1.1.2": +"which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.18, which-typed-array@npm:^1.1.19, which-typed-array@npm:^1.1.2": version: 1.1.19 resolution: "which-typed-array@npm:1.1.19" dependencies: