From 4965637a11a1331993551cb01006057d7a672558 Mon Sep 17 00:00:00 2001 From: Patrick Sullivan Date: Fri, 13 Sep 2024 13:26:43 +0100 Subject: [PATCH] fix(telemetry): Resolve issue with color tokens in trace message --- package.json | 27 +- packages/errors/src/storm-error.ts | 6 +- packages/logging/src/composition/index.ts | 17 + .../logging/src/composition/logger-wrapper.ts | 20 +- packages/logging/src/errors.ts | 19 +- packages/logging/src/index.ts | 17 + packages/logging/src/storm-log.ts | 24 +- packages/logging/src/types.ts | 21 +- .../logging/src/utilities/get-log-level.ts | 34 +- .../logging/src/utilities/get-pino-options.ts | 26 +- packages/logging/src/utilities/index.ts | 17 + .../logging/src/utilities/log-serializer.ts | 24 +- packages/serialization/src/index.ts | 17 + packages/serialization/src/serializable.ts | 23 +- packages/serialization/src/storm-parser.ts | 22 +- .../serialization/src/storm-url-builder.ts | 22 +- packages/serialization/src/types.ts | 22 +- packages/server-cache/src/index.ts | 17 + .../src/notification-bus/index.ts | 17 + .../notification-bus-driver.ts | 17 + .../src/notification-bus/notification-bus.ts | 18 + packages/server-cache/src/storm-cache.ts | 32 +- packages/server-result/README.md | 234 +++++++++++ packages/telemetry/src/index.ts | 17 + .../src/logging/create-file-stream-logs.ts | 33 +- .../telemetry/src/logging/get-pino-logger.ts | 33 +- packages/telemetry/src/logging/index.ts | 17 + packages/telemetry/src/schema.ts | 17 + packages/telemetry/src/storm-trace.ts | 24 +- packages/telemetry/src/types.ts | 17 + pnpm-lock.yaml | 374 +++++++----------- tsconfig.base.json | 136 ++----- 32 files changed, 970 insertions(+), 391 deletions(-) diff --git a/package.json b/package.json index 917995ba..ec114754 100644 --- a/package.json +++ b/package.json @@ -47,19 +47,19 @@ "adr": "pnpm log4brains adr new", "adr-preview": "pnpm log4brains preview", "api-extractor": "pnpm storm-docs api-extractor --outputPath=\"docs/api-reference\" --clean", - "build": "nx affected -t build --parallel=5 --nxBail --exclude=\"@storm-stack/monorepo,web-docs,nx\"", - "build-all": "nx run-many -t build --parallel=5 --nxBail --exclude=\"@storm-stack/monorepo,web-docs,nx\"", + "build": "nx affected -t build --parallel=5 --nxBail --exclude=\"@storm-stack/monorepo,nx\"", + "build-all": "nx run-many -t build --parallel=5 --nxBail --exclude=\"@storm-stack/monorepo,nx\"", "build-apps": "nx run-many -t build --projects=apps/* --parallel=5", "build-docs": "nx run-many -t build --projects=docs/* --parallel=5", "build-libs": "nx run-many -t build --projects=libs/* --parallel=5", + "build-packages": "nx run-many -t build --projects=packages/* --parallel=5", "build-prod": "nx run-many -t build --all --prod --parallel=5", "build-tools": "nx run-many -t build --projects=tools/* --parallel=5", "clean": "pnpm exec rimraf dist", "clean-apps": "pnpm exec rimraf dist/apps", - "clean-components": "pnpm exec rimraf dist/components", "clean-docs": "pnpm exec rimraf dist/docs", "clean-libs": "pnpm exec rimraf dist/libs", - "clean-storybook": "pnpm exec rimraf dist/storybook", + "clean-packages": "pnpm exec rimraf dist/packages", "clean-tools": "pnpm exec rimraf dist/tools", "commit": "pnpm storm-git commit", "dep-graph": "nx dep-graph", @@ -100,13 +100,6 @@ "@nx/rollup": "19.7.3", "@nx/rspack": "^19.7.1", "@nx/workspace": "19.7.3", - "@rollup/plugin-babel": "^6.0.4", - "@rollup/plugin-commonjs": "^26.0.1", - "@rollup/plugin-node-resolve": "^15.2.3", - "@rollup/plugin-terser": "^0.4.4", - "@rollup/plugin-typescript": "^11.1.6", - "@rslib/core": "^0.0.5", - "@rspack/cli": "^1.0.4", "@storm-software/build-tools": "latest", "@storm-software/config": "latest", "@storm-software/eslint": "latest", @@ -135,6 +128,7 @@ "jest": "29.7.0", "jest-environment-jsdom": "29.7.0", "jest-environment-node": "29.7.0", + "knip": "5.25.2", "lefthook": "^1.5.6", "log4brains": "1.0.1", "ls-lint": "^0.1.2", @@ -145,19 +139,24 @@ "react-dom": "19.0.0-rc-f6cce072-20240723", "react-native": "0.74.1", "rimraf": "^5.0.5", - "rollup": "^4.21.2", + "sherif": "0.10.0", "ts-jest": "29.1.2", "ts-node": "10.9.2", "tslib": "^2.6.2", "typescript": "5.6.2", - "unbuild": "^2.0.0", "verdaccio": "5.29.2" }, "namespace": "@storm-stack", "nx": { "includedScripts": [ + "lint-ls", "lint", - "format" + "format", + "format-readme", + "format-prettier", + "format-toml", + "commit", + "release" ] }, "pnpm": { diff --git a/packages/errors/src/storm-error.ts b/packages/errors/src/storm-error.ts index 5170a09d..15198fd5 100644 --- a/packages/errors/src/storm-error.ts +++ b/packages/errors/src/storm-error.ts @@ -50,7 +50,7 @@ export function createStormError({ stack, data }: StormErrorOptions & { code?: TCode }): StormError { - if (isStormError(cause)) { + if (isStormError(cause)) { return cause; } @@ -273,9 +273,9 @@ export class StormError extends Error { return this.message ? `${this.name ? (this.code ? `${this.name} ` : this.name) : EMPTY_STRING} ${ this.code - ? (this.code && this.name + ? this.code && this.name ? `(${this.code})` - : this.code) + : this.code : EMPTY_STRING }${this.code || this.name ? ": " : EMPTY_STRING}${this.message}${ this.cause diff --git a/packages/logging/src/composition/index.ts b/packages/logging/src/composition/index.ts index cc6af4fc..54ab5e97 100644 --- a/packages/logging/src/composition/index.ts +++ b/packages/logging/src/composition/index.ts @@ -1 +1,18 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + export * from "./logger-wrapper"; diff --git a/packages/logging/src/composition/logger-wrapper.ts b/packages/logging/src/composition/logger-wrapper.ts index 1fe58c67..727ddbf9 100644 --- a/packages/logging/src/composition/logger-wrapper.ts +++ b/packages/logging/src/composition/logger-wrapper.ts @@ -1,6 +1,24 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + import type { StormConfig } from "@storm-software/config"; import { getCauseFromUnknown } from "@storm-stack/errors"; -import { type MaybePromise, isSet, isSetString } from "@storm-stack/types"; +import { isSet, isSetString } from "@storm-stack/types/type-checks"; +import { type MaybePromise } from "@storm-stack/types/utility-types"; import type { ILogger, ILoggerWrapper } from "../types"; /** diff --git a/packages/logging/src/errors.ts b/packages/logging/src/errors.ts index 5e538e09..6c331eac 100644 --- a/packages/logging/src/errors.ts +++ b/packages/logging/src/errors.ts @@ -1,4 +1,21 @@ -import { ErrorCode } from "@storm-stack/errors"; +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + +import { ErrorCode } from "@storm-stack/errors/errors"; export type LoggingErrorCode = ErrorCode | "logs_uninitialized"; export const LoggingErrorCode = { diff --git a/packages/logging/src/index.ts b/packages/logging/src/index.ts index a501380c..1eacce8e 100644 --- a/packages/logging/src/index.ts +++ b/packages/logging/src/index.ts @@ -1,3 +1,20 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + export * from "./composition"; export * from "./errors"; export * from "./storm-log"; diff --git a/packages/logging/src/storm-log.ts b/packages/logging/src/storm-log.ts index 6d39488b..0656234b 100644 --- a/packages/logging/src/storm-log.ts +++ b/packages/logging/src/storm-log.ts @@ -1,5 +1,23 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + import type { StormConfig } from "@storm-software/config"; -import { StormTime, formatSince } from "@storm-stack/date-time"; +import { StormTime } from "@storm-stack/date-time/storm-time"; +import { formatSince } from "@storm-stack/date-time/utilities/format-since"; import { StormError, getCauseFromUnknown } from "@storm-stack/errors"; import type { Logger, LoggerOptions as PinoLoggerOptions } from "pino"; import pino from "pino"; @@ -26,7 +44,9 @@ import { getPinoOptions } from "./utilities/get-pino-options"; */ export class StormLog implements IStormLog { protected static logger: Logger; + protected static logLevel: LogLevel; + protected static logLevelLabel: LogLevelLabel; protected static getLoggers = (): Promise => { @@ -69,7 +89,9 @@ export class StormLog implements IStormLog { }; #logger: Logger; + #logLevel: LogLevel; + #processes: Array<{ name: string; startedAt: StormTime }> = []; /** diff --git a/packages/logging/src/types.ts b/packages/logging/src/types.ts index b26c71bd..b444d6db 100644 --- a/packages/logging/src/types.ts +++ b/packages/logging/src/types.ts @@ -1,5 +1,22 @@ -import type { StormTime } from "@storm-stack/date-time"; -import type { MaybePromise } from "@storm-stack/types"; +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + +import type { StormTime } from "@storm-stack/date-time/storm-time"; +import type { MaybePromise } from "@storm-stack/types/utility-types"; import type pino from "pino"; import type { LogLevel, LogLevelLabel } from "./utilities/get-log-level"; diff --git a/packages/logging/src/utilities/get-log-level.ts b/packages/logging/src/utilities/get-log-level.ts index 6b260e6d..d1f60d8d 100644 --- a/packages/logging/src/utilities/get-log-level.ts +++ b/packages/logging/src/utilities/get-log-level.ts @@ -1,4 +1,21 @@ -export type LogLevel = 0 | 10 | 20 | 30 | 40 | 60 | 70; +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + +export type LogLevel = 0 | 10 | 20 | 30 | 40 | 60 | 70 | 100; export const LogLevel = { SILENT: 0 as LogLevel, FATAL: 10 as LogLevel, @@ -6,7 +23,8 @@ export const LogLevel = { WARN: 30 as LogLevel, INFO: 40 as LogLevel, DEBUG: 60 as LogLevel, - TRACE: 70 as LogLevel + TRACE: 70 as LogLevel, + ALL: 100 as LogLevel }; export type LogLevelLabel = @@ -16,7 +34,8 @@ export type LogLevelLabel = | "warn" | "info" | "debug" - | "trace"; + | "trace" + | "all"; export const LogLevelLabel = { SILENT: "silent" as LogLevelLabel, FATAL: "fatal" as LogLevelLabel, @@ -24,7 +43,8 @@ export const LogLevelLabel = { WARN: "warn" as LogLevelLabel, INFO: "info" as LogLevelLabel, DEBUG: "debug" as LogLevelLabel, - TRACE: "trace" as LogLevelLabel + TRACE: "trace" as LogLevelLabel, + ALL: "all" as LogLevelLabel }; /** @@ -35,6 +55,9 @@ export const LogLevelLabel = { */ export const getLogLevel = (label: string): LogLevel => { switch (label) { + case "all": { + return LogLevel.ALL; + } case "trace": { return LogLevel.TRACE; } @@ -69,6 +92,9 @@ export const getLogLevel = (label: string): LogLevel => { * @returns The log level label */ export const getLogLevelLabel = (logLevel: number): LogLevelLabel => { + if (logLevel >= LogLevel.ALL) { + return LogLevelLabel.ALL; + } if (logLevel >= LogLevel.TRACE) { return LogLevelLabel.TRACE; } diff --git a/packages/logging/src/utilities/get-pino-options.ts b/packages/logging/src/utilities/get-pino-options.ts index 6474d131..54cfaa87 100644 --- a/packages/logging/src/utilities/get-pino-options.ts +++ b/packages/logging/src/utilities/get-pino-options.ts @@ -1,7 +1,24 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + import type { StormConfig } from "@storm-software/config"; -import { isStormError } from "@storm-stack/errors"; -import { titleCase } from "@storm-stack/string-fns"; -import { isRuntimeServer } from "@storm-stack/utilities"; +import { isStormError } from "@storm-stack/errors/storm-error"; +import { titleCase } from "@storm-stack/string-fns/title-case"; +import { isRuntimeServer } from "@storm-stack/utilities/helper-fns/is-runtime-server"; import type { LoggerOptions as PinoLoggerOptions } from "pino"; import { LogLevel, getLogLevel } from "./get-log-level"; import { createErrorSerializer } from "./log-serializer"; @@ -20,8 +37,7 @@ export const getPinoOptions = ( ): PinoLoggerOptions => { config.logLevel ??= config.env === "production" ? "info" : "debug"; const _stacktrace = - stacktrace || - (config?.env === "production" && !isRuntimeServer() ? false : true); + stacktrace || !(config?.env === "production" && !isRuntimeServer()); const errorSerializer = createErrorSerializer(_stacktrace); const baseOptions: PinoLoggerOptions = { diff --git a/packages/logging/src/utilities/index.ts b/packages/logging/src/utilities/index.ts index 746537d8..4092b878 100644 --- a/packages/logging/src/utilities/index.ts +++ b/packages/logging/src/utilities/index.ts @@ -1,3 +1,20 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + export * from "./get-log-level"; export * from "./get-pino-options"; export * from "./log-serializer"; diff --git a/packages/logging/src/utilities/log-serializer.ts b/packages/logging/src/utilities/log-serializer.ts index 8c31c993..0802572c 100644 --- a/packages/logging/src/utilities/log-serializer.ts +++ b/packages/logging/src/utilities/log-serializer.ts @@ -1,6 +1,26 @@ -import { StormError, getCauseFromUnknown } from "@storm-stack/errors"; +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + +import { + StormError, + getCauseFromUnknown +} from "@storm-stack/errors/storm-error"; import { type JsonObject, StormParser } from "@storm-stack/serialization"; -import { EMPTY_STRING } from "@storm-stack/types"; +import { EMPTY_STRING } from "@storm-stack/types/utility-types"; import { errWithCause } from "pino-std-serializers"; export const createErrorSerializer = diff --git a/packages/serialization/src/index.ts b/packages/serialization/src/index.ts index b9ae5eed..262339f3 100644 --- a/packages/serialization/src/index.ts +++ b/packages/serialization/src/index.ts @@ -1,3 +1,20 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + export * from "./serializable"; export * from "./storm-parser"; export * from "./storm-url-builder"; diff --git a/packages/serialization/src/serializable.ts b/packages/serialization/src/serializable.ts index 77501611..8213012d 100644 --- a/packages/serialization/src/serializable.ts +++ b/packages/serialization/src/serializable.ts @@ -1,8 +1,25 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + +import { isFunction } from "@storm-stack/types/type-checks/is-function"; import { type ClassTypeCheckable, - type ITyped, - isFunction -} from "@storm-stack/types"; + type ITyped +} from "@storm-stack/types/utility-types"; import { StormParser } from "./storm-parser"; import type { ClassSerializable, JsonParserResult, JsonValue } from "./types"; diff --git a/packages/serialization/src/storm-parser.ts b/packages/serialization/src/storm-parser.ts index 13ad3bbc..af880c53 100644 --- a/packages/serialization/src/storm-parser.ts +++ b/packages/serialization/src/storm-parser.ts @@ -1,4 +1,20 @@ -/* eslint-disable @typescript-eslint/no-explicit-any */ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + // import { Decimal } from "decimal.js"; import { isObject, isString } from "@storm-stack/types"; import { Buffer } from "buffer/"; @@ -114,9 +130,9 @@ export class StormParser extends SuperJSON { } } -/*export const registerClass = StormParser.registerClass; +/* export const registerClass = StormParser.registerClass; export const register = StormParser.register; export const deserialize = StormParser.deserialize; export const serialize = StormParser.serialize; export const parse = StormParser.parse; -export const stringify = StormParser.stringify;*/ +export const stringify = StormParser.stringify; */ diff --git a/packages/serialization/src/storm-url-builder.ts b/packages/serialization/src/storm-url-builder.ts index 322f8168..4b3c233a 100644 --- a/packages/serialization/src/storm-url-builder.ts +++ b/packages/serialization/src/storm-url-builder.ts @@ -1,4 +1,21 @@ -import { isString } from "@storm-stack/types"; +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + +import { isString } from "@storm-stack/types/type-checks/is-string"; import { cleanDoubleSlashes, decode as decodeURL, @@ -298,8 +315,7 @@ export class StormURLBuilder { values.push(this.parseQueryParamValue(item)); } return values; - } else { - return StormParser.parse(value); } + return StormParser.parse(value); } } diff --git a/packages/serialization/src/types.ts b/packages/serialization/src/types.ts index 31914a11..f476e175 100644 --- a/packages/serialization/src/types.ts +++ b/packages/serialization/src/types.ts @@ -1,4 +1,24 @@ -import type { ClassTypeCheckable, ITyped } from "@storm-stack/types"; +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + +import type { + ClassTypeCheckable, + ITyped +} from "@storm-stack/types/utility-types"; import { ParsedURL } from "ufo"; /* eslint-disable @typescript-eslint/no-explicit-any */ diff --git a/packages/server-cache/src/index.ts b/packages/server-cache/src/index.ts index 12b89bdb..5eea9440 100644 --- a/packages/server-cache/src/index.ts +++ b/packages/server-cache/src/index.ts @@ -1,3 +1,20 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + /** * The server-cache library used by Storm Software for building TypeScript applications. * diff --git a/packages/server-cache/src/notification-bus/index.ts b/packages/server-cache/src/notification-bus/index.ts index 278dbba9..324d0296 100644 --- a/packages/server-cache/src/notification-bus/index.ts +++ b/packages/server-cache/src/notification-bus/index.ts @@ -1,2 +1,19 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + export * from "./notification-bus"; export * from "./notification-bus-driver"; diff --git a/packages/server-cache/src/notification-bus/notification-bus-driver.ts b/packages/server-cache/src/notification-bus/notification-bus-driver.ts index 689c756a..1d0db818 100644 --- a/packages/server-cache/src/notification-bus/notification-bus-driver.ts +++ b/packages/server-cache/src/notification-bus/notification-bus-driver.ts @@ -1,3 +1,20 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + import type { BusOptions, CreateBusDriverResult } from "bentocache/types"; import { NotificationBus } from "./notification-bus"; diff --git a/packages/server-cache/src/notification-bus/notification-bus.ts b/packages/server-cache/src/notification-bus/notification-bus.ts index 37e4a585..5a0e0f97 100644 --- a/packages/server-cache/src/notification-bus/notification-bus.ts +++ b/packages/server-cache/src/notification-bus/notification-bus.ts @@ -1,3 +1,20 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + import type { StormTrace } from "@storm-stack/telemetry"; import type { BusDriver, CacheBusMessage } from "bentocache/types"; @@ -25,6 +42,7 @@ export class NotificationBus implements BusDriver { receivedMessages: CacheBusMessage[] = []; #id!: string; + #trace?: StormTrace; setId(id: string) { diff --git a/packages/server-cache/src/storm-cache.ts b/packages/server-cache/src/storm-cache.ts index 150fc225..3603df63 100644 --- a/packages/server-cache/src/storm-cache.ts +++ b/packages/server-cache/src/storm-cache.ts @@ -1,6 +1,23 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + import type { StormConfig } from "@storm-software/config"; -import { joinPaths } from "@storm-stack/file-system"; -import { StormTrace } from "@storm-stack/telemetry"; +import { joinPaths } from "@storm-stack/file-system/files/join-paths"; +import { StormTrace } from "@storm-stack/telemetry/storm-trace"; import { BentoCache, bentostore } from "bentocache"; import { fileDriver } from "bentocache/drivers/file"; import { memoryDriver } from "bentocache/drivers/memory"; @@ -30,7 +47,7 @@ export class StormCache { trace?: StormTrace, options: StormCacheOptions = {} ) { - const _trace = trace ?? StormTrace.create("storm-cache", config); + const _trace = trace ?? StormTrace.create(config, "storm-cache"); const cache = new StormCache(config, _trace, options); _trace.debug("StormCache initialization has completed successfully..."); @@ -41,7 +58,9 @@ export class StormCache { protected trace: StormTrace; #config: StormConfig; + #cacheManager: BentoCache>>; + #configCache: CacheProvider; private constructor( @@ -50,7 +69,7 @@ export class StormCache { options: StormCacheOptions ) { this.#config = config; - this.trace = trace ?? StormTrace.create("storm-cache", this.#config); + this.trace = trace ?? StormTrace.create(this.#config, "storm-cache"); this.#cacheManager = this.createCacheManager(options); @@ -150,9 +169,8 @@ export class StormCache { ? this.#config.cacheDirectory : joinPaths( this.#config.workstationRoot, - this.#config.cacheDirectory - ? this.#config.cacheDirectory - : "./node_modules/.cache/storm" + this.#config.cacheDirectory || + "./node_modules/.cache/storm" ) }) ) diff --git a/packages/server-result/README.md b/packages/server-result/README.md index ec3c2a9b..02144051 100644 --- a/packages/server-result/README.md +++ b/packages/server-result/README.md @@ -1,4 +1,69 @@ + + + + +
Storm Software
+
+ +
+ +Website • +GitHub • +DiscordDocsContact • +Report a Bug + +
+ +
+This package is part of the ⚡Storm Stack monorepo. Storm Stack packages include CLI utility applications, tools, and various libraries used to create modern, scalable web applications. +
+ +

💻 Visit stormsoftware.com to stay up to date with this developer


+ +[![Version](https://img.shields.io/badge/version-0.0.1-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://prettier.io/) [![Nx](https://img.shields.io/badge/Nx-17.0.2-lightgrey?style=for-the-badge&logo=nx&logoWidth=20&&color=1fb2a6)](http://nx.dev/) [![NextJs](https://img.shields.io/badge/Next.js-14.0.2-lightgrey?style=for-the-badge&logo=nextdotjs&logoWidth=20&color=1fb2a6)](https://nextjs.org/) [![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/) ![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6) [![documented with Fumadocs](https://img.shields.io/badge/documented_with-fumadocs-success.svg?style=for-the-badge&logo=readthedocs&color=1fb2a6)](https://fumadocs.vercel.app/) ![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/storm-stack/cr.yml?style=for-the-badge&logo=github-actions&color=1fb2a6) + + + + +> [!IMPORTANT] +> This repository, and the apps, libraries, and tools contained within, is still in it's initial development phase. As a result, bugs and issues are expected with it's usage. When the main development phase completes, a proper release will be performed, the packages will be availible through NPM (and other distributions), and this message will be removed. However, in the meantime, please feel free to report any issues you may come across. + + + + +
+Be sure to ⭐ this repository on GitHub so you can keep up to date on any daily progress! +
+ +
+ + + +## Table of Contents + +- [server-result](#server-result) + - [Installing](#installing) + - [Reduced Package Size](#reduced-package-size) + - [Development](#development) + - [Building](#building) + - [Running unit tests](#running-unit-tests) + - [Linting](#linting) + - [Storm Workspaces](#storm-workspaces) + - [Roadmap](#roadmap) + - [Support](#support) + - [License](#license) + - [Changelog](#changelog) + - [Contributing](#contributing) + - [Contributors](#contributors) + + + +
+ + + + # server-result @@ -60,4 +125,173 @@ Run `nx test server-result` to execute the unit tests via Run `nx lint server-result` to run [ESLint](https://eslint.org/) on the package. + + + + +## Storm Workspaces + +Storm workspaces are built using +Nx, a set of extensible dev tools +for monorepos, which helps you develop like Google, Facebook, and Microsoft. +Building on top of Nx, the Open System provides a set of tools and patterns that +help you scale your monorepo to many teams while keeping the codebase +maintainable. + + +
+ +## Roadmap + +See the [open issues](https://github.com/storm-software/storm-stack/issues) for a +list of proposed features (and known issues). + +- [Top Feature Requests](https://github.com/storm-software/storm-stack/issues?q=label%3Aenhancement+is%3Aopen+sort%3Areactions-%2B1-desc) + (Add your votes using the 👍 reaction) +- [Top Bugs](https://github.com/storm-software/storm-stack/issues?q=is%3Aissue+is%3Aopen+label%3Abug+sort%3Areactions-%2B1-desc) + (Add your votes using the 👍 reaction) +- [Newest Bugs](https://github.com/storm-software/storm-stack/issues?q=is%3Aopen+is%3Aissue+label%3Abug) + + +
+ +## Support + +Reach out to the maintainer at one of the following places: + +- [Contact](https://stormsoftware.com/contact) +- [GitHub discussions](https://github.com/storm-software/storm-stack/discussions) +- + + +
+ +## License + +This project is licensed under the **Apache License 2.0**. Feel free to edit and +distribute this template as you like. + +See [LICENSE](LICENSE) for more information. + + +
+ +## Changelog + +This project adheres to +[Semantic Versioning](https://semver.org/spec/v2.0.0.html). Every release, along +with the migration instructions, is documented in the [CHANGELOG](CHANGELOG.md) +file + + +
+ +## Contributing + +First off, thanks for taking the time to contribute! Contributions are what +makes the open-source community such an amazing place to learn, inspire, and +create. Any contributions you make will benefit everybody else and are **greatly +appreciated**. + +Please try to create bug reports that are: + +- _Reproducible._ Include steps to reproduce the problem. +- _Specific._ Include as much detail as possible: which version, what + environment, etc. +- _Unique._ Do not duplicate existing opened issues. +- _Scoped to a Single Bug._ One bug per report. + +Please adhere to this project's [code of conduct](.github/CODE_OF_CONDUCT.md). + +You can use +[markdownlint-cli](https://github.com/storm-software/storm-stack/markdownlint-cli) +to check for common markdown style inconsistency. + + +
+ +## Contributors + +Thanks goes to these wonderful people +([emoji key](https://allcontributors.org/docs/en/emoji-key)): + + + + + + + + + + + + + + + + +
Patrick Sullivan
Patrick Sullivan

🎨 💻 🔧 📖 ⚠️
Tyler Benning
Tyler Benning

🎨
Stormie
Stormie

🚧
+ All Contributors + Add your contributions + +
+ + + +This project follows the +[all-contributors](https://github.com/all-contributors/all-contributors) +specification. Contributions of any kind welcome! + + +
+ +
+
+ +
+Storm Software +
+
+ + + +
+Fingerprint: 1BD2 7192 7770 2549 F4C9 F238 E6AD C420 DA5C 4C2D +
+
+ +Storm Software is an open source software development organization and creator +of Acidic, StormStack and StormCloud. + +Our mission is to make software development more accessible. Our ideal future is +one where anyone can create software without years of prior development +experience serving as a barrier to entry. We hope to achieve this via LLMs, +Generative AI, and intuitive, high-level data modeling/programming languages. + +Join us on [Discord](https://discord.gg/MQ6YVzakM5) to chat with the team, +receive release notifications, ask questions, and get involved. + +If this sounds interesting, and you would like to help us in creating the next +generation of development tools, please reach out on our +[website](https://stormsoftware.com/contact) or join our +[Slack channel](https://join.slack.com/t/storm-software/shared_invite/zt-2gsmk04hs-i6yhK_r6urq0dkZYAwq2pA)! + +
+ +
Storm Software
+
+
Visit us at stormsoftware.com
+ +
+ + +
+
+ + + + + diff --git a/packages/telemetry/src/index.ts b/packages/telemetry/src/index.ts index 8a61fdf6..e8be39fd 100644 --- a/packages/telemetry/src/index.ts +++ b/packages/telemetry/src/index.ts @@ -1,3 +1,20 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + /** * The backend-telemetry library used by Storm Software for building TypeScript applications. * diff --git a/packages/telemetry/src/logging/create-file-stream-logs.ts b/packages/telemetry/src/logging/create-file-stream-logs.ts index 47406838..07342f2d 100644 --- a/packages/telemetry/src/logging/create-file-stream-logs.ts +++ b/packages/telemetry/src/logging/create-file-stream-logs.ts @@ -1,10 +1,25 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + import type { StormConfig } from "@storm-software/config"; -import { - StormDateTime, - formatDate, - formatDateTime -} from "@storm-stack/date-time"; -import { EMPTY_STRING, isSetString } from "@storm-stack/utilities"; +import { StormDateTime } from "@storm-stack/date-time/storm-date-time"; +import { formatDate, formatDateTime } from "@storm-stack/date-time/utilities"; +import { isSetString } from "@storm-stack/types/type-checks/is-set-string"; +import { EMPTY_STRING } from "@storm-stack/types/utility-types/base"; import { tmpdir } from "node:os"; import { join } from "node:path"; import pino from "pino"; @@ -37,7 +52,7 @@ export const createFileStreamLogs = ( dest: join( logPath, formatDate().replaceAll("/", "-").replaceAll(" ", "-"), - `${`${loggingConfig.fileName ? loggingConfig.fileName : "storm"}-`}${formatDateTime( + `${`${loggingConfig.fileName || "storm"}-`}${formatDateTime( StormDateTime.current(), { smallestUnit: "second", @@ -63,7 +78,7 @@ export const createFileStreamLogs = ( }) }); - /*streams.push({ + /* streams.push({ level: "error", stream: createWriteStream( join( @@ -88,7 +103,7 @@ export const createFileStreamLogs = ( }` ) ) - });*/ + }); */ } if ( diff --git a/packages/telemetry/src/logging/get-pino-logger.ts b/packages/telemetry/src/logging/get-pino-logger.ts index 6a32dddb..f42bb2b2 100644 --- a/packages/telemetry/src/logging/get-pino-logger.ts +++ b/packages/telemetry/src/logging/get-pino-logger.ts @@ -1,5 +1,22 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + import type { StormConfig } from "@storm-software/config"; -import { getPinoOptions } from "@storm-stack/logging"; +import { getPinoOptions } from "@storm-stack/logging/utilities/get-pino-options"; import pino, { type DestinationStream, type Logger, @@ -36,12 +53,18 @@ export const getPinoLogger = ( colorize: true, colorizeObjects: true, errorLikeObjectKeys: ["err", "error", "exception"], - minimumLevel: config.logLevel, + minimumLevel: config.logLevel + ? config.logLevel === "silent" + ? "fatal" + : config.logLevel === "all" + ? "trace" + : config.logLevel + : "info", messageKey: "msg", timestampKey: "time", messageFormat: ` *********************************************** -Name: ${name ? name : config.name} +Name: ${name || config.name} Timestamp: {time} Log Level: {logLevelLabel} {if pid} Process ID: {pid}{end}{if req.url} @@ -57,7 +80,9 @@ Message: {msg} pinoPretty.pipe(process.stdout); if (config.colors) { - prettyOptions.customColors = `exception:${config.colors.error},err:${config.colors.error},error:${config.colors.error},fatal:${config.colors.fatal},warn:${config.colors.warning},info:${config.colors.info},debug:${config.colors.primary},trace:${config.colors.primary},req.url:${config.colors.primary},success:${config.colors.success}`; + const colors = + (config.colors as any)?.base?.dark ?? (config.colors as any)?.dark?.error; + prettyOptions.customColors = `exception:${colors.fatal},err:${colors.error},error:${colors.error},fatal:${colors.fatal},warn:${colors.warning},info:${colors.info},debug:${colors.brand},trace:${colors.brand},req.url:${colors.brand},success:${colors.success}`; } const streams: Array> = diff --git a/packages/telemetry/src/logging/index.ts b/packages/telemetry/src/logging/index.ts index 53259aa9..dd8e2419 100644 --- a/packages/telemetry/src/logging/index.ts +++ b/packages/telemetry/src/logging/index.ts @@ -1,2 +1,19 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + export * from "./create-file-stream-logs"; export * from "./get-pino-logger"; diff --git a/packages/telemetry/src/schema.ts b/packages/telemetry/src/schema.ts index 51dcc7b8..348a7241 100644 --- a/packages/telemetry/src/schema.ts +++ b/packages/telemetry/src/schema.ts @@ -1,3 +1,20 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + import * as z from "zod"; /** diff --git a/packages/telemetry/src/storm-trace.ts b/packages/telemetry/src/storm-trace.ts index c4e82d94..0d75f413 100644 --- a/packages/telemetry/src/storm-trace.ts +++ b/packages/telemetry/src/storm-trace.ts @@ -1,7 +1,25 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + import type { StormConfig } from "@storm-software/config"; import { createStormConfig } from "@storm-software/config-tools"; -import { type StormTime, formatSince } from "@storm-stack/date-time"; -import { getCauseFromUnknown } from "@storm-stack/errors"; +import { type StormTime } from "@storm-stack/date-time/storm-time"; +import { formatSince } from "@storm-stack/date-time/utilities/format-since"; +import { getCauseFromUnknown } from "@storm-stack/errors/storm-error"; import { type GetLoggersResult, type ILoggerWrapper, @@ -233,7 +251,7 @@ export class StormTrace extends StormLog implements IStormLog { * * @returns Additional log streams to use during initialization */ - protected override getStreams = (): Array< + protected getStreams = (): Array< pino.DestinationStream | pino.StreamEntry > => { return createFileStreamLogs(this.config); diff --git a/packages/telemetry/src/types.ts b/packages/telemetry/src/types.ts index 6b65d87e..7dfa3197 100644 --- a/packages/telemetry/src/types.ts +++ b/packages/telemetry/src/types.ts @@ -1,3 +1,20 @@ +/*------------------------------------------------------------------- + + ⚡ Storm Software - Storm Stack + + This code was released as part of the Storm Stack project. Storm Stack + is maintained by Storm Software under the Apache-2.0 License, and is + free for commercial and private use. For more information, please visit + our licensing page. + + Website: https://stormsoftware.com + Repository: https://github.com/storm-software/storm-stack + Documentation: https://stormsoftware.com/projects/storm-stack/docs + Contact: https://stormsoftware.com/contact + License: https://stormsoftware.com/projects/storm-stack/license + + -------------------------------------------------------------------*/ + import type * as z from "zod"; import type { TelemetryConfigSchema } from "./schema"; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e2bbf96e..52f2ea68 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -93,27 +93,6 @@ importers: '@nx/workspace': specifier: 19.7.3 version: 19.7.3(@swc-node/register@1.9.2(@swc/core@1.5.7(@swc/helpers@0.5.12))(@swc/types@0.1.12)(typescript@5.6.2))(@swc/core@1.5.7(@swc/helpers@0.5.12)) - '@rollup/plugin-babel': - specifier: ^6.0.4 - version: 6.0.4(@babel/core@7.25.2)(@types/babel__core@7.20.5)(rollup@4.21.2) - '@rollup/plugin-commonjs': - specifier: ^26.0.1 - version: 26.0.1(rollup@4.21.2) - '@rollup/plugin-node-resolve': - specifier: ^15.2.3 - version: 15.2.3(rollup@4.21.2) - '@rollup/plugin-terser': - specifier: ^0.4.4 - version: 0.4.4(rollup@4.21.2) - '@rollup/plugin-typescript': - specifier: ^11.1.6 - version: 11.1.6(rollup@4.21.2)(tslib@2.6.3)(typescript@5.6.2) - '@rslib/core': - specifier: ^0.0.5 - version: 0.0.5(@microsoft/api-extractor@7.46.2(@types/node@22.5.4))(typescript@5.6.2) - '@rspack/cli': - specifier: ^1.0.4 - version: 1.0.4(@rspack/core@1.0.4(@swc/helpers@0.5.12))(@types/express@4.17.21)(bufferutil@4.0.8)(utf-8-validate@5.0.10)(webpack@5.93.0(@swc/core@1.5.7(@swc/helpers@0.5.12))(esbuild@0.19.12)) '@storm-software/build-tools': specifier: latest version: 0.84.0(clcjq3hbejflptfq6tvq634jxi) @@ -198,6 +177,9 @@ importers: jest-environment-node: specifier: 29.7.0 version: 29.7.0 + knip: + specifier: 5.25.2 + version: 5.25.2(@types/node@22.5.4)(typescript@5.6.2) lefthook: specifier: ^1.5.6 version: 1.7.5 @@ -228,9 +210,9 @@ importers: rimraf: specifier: ^5.0.5 version: 5.0.9 - rollup: - specifier: ^4.21.2 - version: 4.21.2 + sherif: + specifier: 0.10.0 + version: 0.10.0 ts-jest: specifier: 29.1.2 version: 29.1.2(@babel/core@7.25.2)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(esbuild@0.19.12)(jest@29.7.0(@types/node@22.5.4)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.12))(@types/node@22.5.4)(typescript@5.6.2)))(typescript@5.6.2) @@ -243,9 +225,6 @@ importers: typescript: specifier: 5.6.2 version: 5.6.2 - unbuild: - specifier: ^2.0.0 - version: 2.0.0(sass@1.77.6)(typescript@5.6.2) verdaccio: specifier: 5.29.2 version: 5.29.2(typanion@3.14.0) @@ -1626,10 +1605,6 @@ packages: '@cypress/xvfb@1.2.4': resolution: {integrity: sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==} - '@discoveryjs/json-ext@0.5.7': - resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} - engines: {node: '>=10.0.0'} - '@emnapi/core@1.2.0': resolution: {integrity: sha512-E7Vgw78I93we4ZWdYCb4DGAwRROGkMIXk7/y87UmANR+J6qsWusmC3gLt0H+O0KOt5e6O38U8oJamgbudrES/w==} @@ -2644,7 +2619,6 @@ packages: '@ls-lint/ls-lint@2.2.3': resolution: {integrity: sha512-ekM12jNm/7O2I/hsRv9HvYkRdfrHpiV1epVuI2NP+eTIcEgdIdKkKCs9KgQydu/8R5YXTov9aHdOgplmCHLupw==} - cpu: [x64, arm64, s390x] os: [darwin, linux, win32] hasBin: true @@ -3621,15 +3595,6 @@ packages: rollup: optional: true - '@rollup/plugin-commonjs@26.0.1': - resolution: {integrity: sha512-UnsKoZK6/aGIH6AdkptXhNvhaqftcjq3zZdT+LY5Ftms6JR06nADcDsYp5hTU9E2lbJUEOhdlY5J4DNTneM+jQ==} - engines: {node: '>=16.0.0 || 14 >= 14.17'} - peerDependencies: - rollup: ^2.68.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - '@rollup/plugin-image@3.0.3': resolution: {integrity: sha512-qXWQwsXpvD4trSb8PeFPFajp8JLpRtqqOeNYRUKnEQNHm7e5UP7fuSRcbjQAJ7wDZBbnJvSdY5ujNBQd9B1iFg==} engines: {node: '>=14.0.0'} @@ -3666,28 +3631,6 @@ packages: rollup: optional: true - '@rollup/plugin-terser@0.4.4': - resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - - '@rollup/plugin-typescript@11.1.6': - resolution: {integrity: sha512-R92yOmIACgYdJ7dJ97p4K69I8gg6IEHt8M7dUBxN3W6nrO8uUxX5ixl0yU/N3aZTi8WhPuICvOHXQvF6FaykAA==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.14.0||^3.0.0||^4.0.0 - tslib: '*' - typescript: '>=3.7.0' - peerDependenciesMeta: - rollup: - optional: true - tslib: - optional: true - '@rollup/pluginutils@4.2.1': resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} engines: {node: '>= 8.0.0'} @@ -3927,12 +3870,6 @@ packages: '@rspack/binding@1.0.4': resolution: {integrity: sha512-YbVyVWvYXCAqUqIyBPEwl+M0js4BqVAxqnsRiZG861MXrqNyYbGOMTcc3Pc6D0SW/gkcWugGWzQ5jgMjAIhHzw==} - '@rspack/cli@1.0.4': - resolution: {integrity: sha512-ujo8nyfaELlFsBwbls/M2gODayr5+aHeP5Hr0BRqRVhwh7ey01rPxUKiXwVKvZfHxnmVaXyPVYo0jraur33d+Q==} - hasBin: true - peerDependencies: - '@rspack/core': ^1.0.0-alpha || ^1.x - '@rspack/core@1.0.4': resolution: {integrity: sha512-/R3JenF5wJSj3DPxiewyIPGzuZV336XpRORjUAOvbHPK6zea8Eeqcx6RopWM6TMikRYdZOHThKV99tyi4QLsMg==} engines: {node: '>=16.0.0'} @@ -3942,11 +3879,6 @@ packages: '@swc/helpers': optional: true - '@rspack/dev-server@1.0.4': - resolution: {integrity: sha512-4VzafpG/avv9z42BmFc8Cto6QSxgDO4WtypRP5JgGc35vUEpPEzFjQGHPbBr8u8CuGoqjZ4GXsqDzsVxx/q8pg==} - peerDependencies: - '@rspack/core': '*' - '@rspack/lite-tapable@1.0.0': resolution: {integrity: sha512-7MZf4lburSUZoEenwazwUDKHhqyfnLCGnQ/tKcUtztfmVzfjZfRn/EaiT0AKkYGnL2U8AGsw89oUeVyvaOLVCw==} engines: {node: '>=16.0.0'} @@ -4039,6 +3971,11 @@ packages: peerDependencies: size-limit: 11.1.4 + '@snyk/github-codeowners@1.1.0': + resolution: {integrity: sha512-lGFf08pbkEac0NYgVf4hdANpAgApRjNByLXB+WBip3qj1iendOIyAwP2GKkKbQMNVy2r1xxDf0ssfWscoiC+Vw==} + engines: {node: '>=8.10'} + hasBin: true + '@solidity-parser/parser@0.17.0': resolution: {integrity: sha512-Nko8R0/kUo391jsEHHxrGM07QFdnPGvlmox4rmH0kNiNAashItAilhy4Mv4pK5gQmW5f4sXAF58fwJbmlkGcVw==} @@ -4682,9 +4619,6 @@ packages: '@types/resolve@1.20.2': resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} - '@types/retry@0.12.0': - resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} - '@types/retry@0.12.2': resolution: {integrity: sha512-XISRgDJ2Tc5q4TRqvgJtzsRkFYNJzZrhTdtMoGVBttwzzQJkPnS3WWTFc7kuDRoPtPakl+T+OfdEUjYJj7Jbow==} @@ -5919,9 +5853,6 @@ packages: colorette@1.4.0: resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} - colorette@2.0.19: - resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==} - colorette@2.0.20: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} @@ -6770,6 +6701,9 @@ packages: eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + easy-table@1.2.0: + resolution: {integrity: sha512-OFzVOv03YpvtcWGe5AayU5G2hgybsg3iqA6drU8UaoZyB9jLGMTrz9+asnLp/E+6qPh88yEI1gvyZFZ41dmgww==} + ecc-jsbn@0.1.2: resolution: {integrity: sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==} @@ -7286,10 +7220,6 @@ packages: resolution: {integrity: sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==} engines: {node: '>=4'} - exit-hook@3.2.0: - resolution: {integrity: sha512-aIQN7Q04HGAV/I5BszisuHTZHXNoC23WtLkxdCLuYZMdWviRD0TMIt2bnUBi9MrHaF/hH8b3gwG9iaAUHKnJGA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - exit@0.1.2: resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==} engines: {node: '>= 0.8.0'} @@ -8311,10 +8241,6 @@ packages: resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} engines: {node: '>= 0.4'} - interpret@3.1.1: - resolution: {integrity: sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==} - engines: {node: '>=10.13.0'} - invariant@2.2.4: resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} @@ -9040,6 +8966,14 @@ packages: resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==} engines: {node: '>= 8'} + knip@5.25.2: + resolution: {integrity: sha512-ivo01AK3f6Afj00/8j+3Nfdv2md+a6/ASfuurY2Nun1ni2oYS1Y1t6f05q4CldigaMjOMC7oWbgANRIG+McxGQ==} + engines: {node: '>=18.6.0'} + hasBin: true + peerDependencies: + '@types/node': '>=18' + typescript: '>=5.0.4' + koa-compose@4.1.0: resolution: {integrity: sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==} @@ -10567,10 +10501,6 @@ packages: resolution: {integrity: sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==} engines: {node: '>=8'} - p-retry@4.6.2: - resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==} - engines: {node: '>=8'} - p-retry@6.2.0: resolution: {integrity: sha512-JA6nkq6hKyWLLasXQXUrO4z8BUZGUt/LjlJxx8Gb2+2ntodU/SS63YZ8b0LUTbQ8ZB9iwOfhEPhg4ykKnn2KsA==} engines: {node: '>=16.17'} @@ -10645,6 +10575,10 @@ packages: parse-latin@7.0.0: resolution: {integrity: sha512-mhHgobPPua5kZ98EF4HWiH167JWBfl4pvAIXXdbaVohtK7a6YBOy56kvhCqduqyo/f3yrHFWmqmiMg/BkBkYYQ==} + parse-ms@4.0.0: + resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==} + engines: {node: '>=18'} + parse-node-version@1.0.1: resolution: {integrity: sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==} engines: {node: '>= 0.10'} @@ -10757,6 +10691,10 @@ packages: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} + picomatch@4.0.2: + resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} + engines: {node: '>=12'} + pify@2.3.0: resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} engines: {node: '>=0.10.0'} @@ -11522,6 +11460,10 @@ packages: resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + pretty-ms@9.1.0: + resolution: {integrity: sha512-o1piW0n3tgKIKCwk2vpM/vOV13zjJzvP37Ioze54YlTHE06m4tjEbzg9WsKkvTuyYln2DHjo5pY4qrZGI0otpw==} + engines: {node: '>=18'} + proc-log@3.0.0: resolution: {integrity: sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -11845,10 +11787,6 @@ packages: resolution: {integrity: sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg==} engines: {node: '>= 4'} - rechoir@0.8.0: - resolution: {integrity: sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==} - engines: {node: '>= 10.13.0'} - redent@4.0.0: resolution: {integrity: sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==} engines: {node: '>=12'} @@ -12392,6 +12330,40 @@ packages: shell-quote@1.8.1: resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} + sherif-darwin-arm64@0.10.0: + resolution: {integrity: sha512-4o1EIHsLfCmvT0tryeoLTerPxb47pYdwuWzpeV1+KSaE1hvlorAbBVgc2YBrkdwbgqZrWYzAdeWGmS/Ob3sIMw==} + cpu: [arm64] + os: [darwin] + + sherif-darwin-x64@0.10.0: + resolution: {integrity: sha512-MhaPxhGmn66J/aLjpIbf93B4XWlu2sKo+rzXohCbCYU2ajsgswMIw8gDi3JGPHLuilhWZB8kS9I/rEczAD3CQA==} + cpu: [x64] + os: [darwin] + + sherif-linux-arm64@0.10.0: + resolution: {integrity: sha512-INTPHGvxdRxIEOAemWfltIyJatL8O9IPxwPkZX499Fn6vK9yj5ZHSlZ+SUgXpp1aX2Yo35gFuHshDRQ1Kuh9UA==} + cpu: [arm64] + os: [linux] + + sherif-linux-x64@0.10.0: + resolution: {integrity: sha512-NYUDzTdUnCxbDFjpS8VLoUF9aTsZ+3L7q4H5s5m8sHO8e3Swf2jgK7LixNhyGLhLcXtBAP5Veit4zy4yQ3WP1Q==} + cpu: [x64] + os: [linux] + + sherif-windows-arm64@0.10.0: + resolution: {integrity: sha512-iKni78rIcN0PTzI+V8+o81R0G7RA391wCxroU6tBS/tkBTBsPNzzO5KpOw3tgyZt3nETbL5hBZbHxV3MuE/+Ag==} + cpu: [arm64] + os: [win32] + + sherif-windows-x64@0.10.0: + resolution: {integrity: sha512-ylERbSsYmjHL6nX+NfX8jcnODKQQPrVT6wyp9INmvY+eoiovE1Ck7HOgyWGXpOEAYnr2/UOooTczKVQJDrXqhA==} + cpu: [x64] + os: [win32] + + sherif@0.10.0: + resolution: {integrity: sha512-KAKYAnhgJaz2F7EFowXU3xrukrRWkNsC8OhmTD9TW84mu0Pb6jI2GabFd9U/umMTVshDjS9l43D1JAGx/e0JdQ==} + hasBin: true + side-channel@1.0.6: resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} engines: {node: '>= 0.4'} @@ -12455,8 +12427,9 @@ packages: resolution: {integrity: sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==} engines: {node: '>=8.0.0'} - smob@1.5.0: - resolution: {integrity: sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==} + smol-toml@1.3.0: + resolution: {integrity: sha512-tWpi2TsODPScmi48b/OQZGi2lgUmBCHy6SZrhi/FdnnHiU1GwebbCfuQuxsC3nHaLwtYeJGPrDZDIeodDOc4pA==} + engines: {node: '>= 18'} snake-case@3.0.4: resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==} @@ -12736,6 +12709,10 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} + strip-json-comments@5.0.1: + resolution: {integrity: sha512-0fk9zBqO67Nq5M/m45qHCJxylV/DhBlIOVExqgOMiCCrzrhU6tCibRXNqE3jwJLftzE9SNuZtYbpzcO+i9FiKw==} + engines: {node: '>=14.16'} + strip-outer@2.0.0: resolution: {integrity: sha512-A21Xsm1XzUkK0qK1ZrytDUvqsQWict2Cykhvi0fBQntGG5JSprESasEyV1EZ/4CiR5WB5KjzLTrP/bO37B0wPg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -12811,6 +12788,9 @@ packages: sudo-prompt@9.2.1: resolution: {integrity: sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==} + summary@2.1.0: + resolution: {integrity: sha512-nMIjMrd5Z2nuB2RZCKJfFMjgS3fygbeyGk9PxPPaJR1RIcyN9yn4A63Isovzm3ZtQuEkLBVgMdPup8UeLH7aQw==} + superjson@2.2.1: resolution: {integrity: sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==} engines: {node: '>=16'} @@ -13718,11 +13698,6 @@ packages: engines: {node: '>= 10.13.0'} hasBin: true - webpack-bundle-analyzer@4.6.1: - resolution: {integrity: sha512-oKz9Oz9j3rUciLNfpGFjOb49/jEpXNmWdVH8Ls//zNcnLlQdTGXQQMsBbb/gR7Zl8WNLxVCq+0Hqbx3zv6twBw==} - engines: {node: '>= 10.13.0'} - hasBin: true - webpack-dev-middleware@7.4.2: resolution: {integrity: sha512-xOO8n6eggxnwYpy1NlzUKpvrjfJTvae5/D6WOK0S2LSo7vjmo5gCM1DbLUmFqrMTJP+W/0YZNctm7jasWvLuBA==} engines: {node: '>= 18.12.0'} @@ -14005,10 +13980,6 @@ packages: resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} engines: {node: '>=10'} - yargs@17.6.2: - resolution: {integrity: sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==} - engines: {node: '>=12'} - yargs@17.7.2: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} @@ -15510,8 +15481,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@discoveryjs/json-ext@0.5.7': {} - '@emnapi/core@1.2.0': dependencies: '@emnapi/wasi-threads': 1.0.1 @@ -19086,17 +19055,6 @@ snapshots: optionalDependencies: rollup: 4.21.2 - '@rollup/plugin-commonjs@26.0.1(rollup@4.21.2)': - dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.21.2) - commondir: 1.0.1 - estree-walker: 2.0.2 - glob: 10.4.5 - is-reference: 1.2.1 - magic-string: 0.30.11 - optionalDependencies: - rollup: 4.21.2 - '@rollup/plugin-image@3.0.3(rollup@4.18.0)': dependencies: '@rollup/pluginutils': 5.1.0(rollup@4.18.0) @@ -19169,23 +19127,6 @@ snapshots: optionalDependencies: rollup: 3.29.4 - '@rollup/plugin-terser@0.4.4(rollup@4.21.2)': - dependencies: - serialize-javascript: 6.0.2 - smob: 1.5.0 - terser: 5.31.3 - optionalDependencies: - rollup: 4.21.2 - - '@rollup/plugin-typescript@11.1.6(rollup@4.21.2)(tslib@2.6.3)(typescript@5.6.2)': - dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.21.2) - resolve: 1.22.8 - typescript: 5.6.2 - optionalDependencies: - rollup: 4.21.2 - tslib: 2.6.3 - '@rollup/pluginutils@4.2.1': dependencies: estree-walker: 2.0.2 @@ -19368,27 +19309,6 @@ snapshots: '@rspack/binding-win32-ia32-msvc': 1.0.4 '@rspack/binding-win32-x64-msvc': 1.0.4 - '@rspack/cli@1.0.4(@rspack/core@1.0.4(@swc/helpers@0.5.12))(@types/express@4.17.21)(bufferutil@4.0.8)(utf-8-validate@5.0.10)(webpack@5.93.0(@swc/core@1.5.7(@swc/helpers@0.5.12))(esbuild@0.19.12))': - dependencies: - '@discoveryjs/json-ext': 0.5.7 - '@rspack/core': 1.0.4(@swc/helpers@0.5.12) - '@rspack/dev-server': 1.0.4(@rspack/core@1.0.4(@swc/helpers@0.5.12))(@types/express@4.17.21)(bufferutil@4.0.8)(utf-8-validate@5.0.10)(webpack@5.93.0(@swc/core@1.5.7(@swc/helpers@0.5.12))(esbuild@0.19.12)) - colorette: 2.0.19 - exit-hook: 3.2.0 - interpret: 3.1.1 - rechoir: 0.8.0 - semver: 7.6.3 - webpack-bundle-analyzer: 4.6.1(bufferutil@4.0.8)(utf-8-validate@5.0.10) - yargs: 17.6.2 - transitivePeerDependencies: - - '@types/express' - - bufferutil - - debug - - supports-color - - utf-8-validate - - webpack - - webpack-cli - '@rspack/core@1.0.4(@swc/helpers@0.5.12)': dependencies: '@module-federation/runtime-tools': 0.5.1 @@ -19398,27 +19318,6 @@ snapshots: optionalDependencies: '@swc/helpers': 0.5.12 - '@rspack/dev-server@1.0.4(@rspack/core@1.0.4(@swc/helpers@0.5.12))(@types/express@4.17.21)(bufferutil@4.0.8)(utf-8-validate@5.0.10)(webpack@5.93.0(@swc/core@1.5.7(@swc/helpers@0.5.12))(esbuild@0.19.12))': - dependencies: - '@rspack/core': 1.0.4(@swc/helpers@0.5.12) - chokidar: 3.6.0 - connect-history-api-fallback: 2.0.0 - express: 4.19.2 - http-proxy-middleware: 2.0.6(@types/express@4.17.21) - mime-types: 2.1.35 - p-retry: 4.6.2 - webpack-dev-middleware: 7.4.2(webpack@5.93.0(@swc/core@1.5.7(@swc/helpers@0.5.12))(esbuild@0.19.12)) - webpack-dev-server: 5.0.4(bufferutil@4.0.8)(utf-8-validate@5.0.10)(webpack@5.93.0(@swc/core@1.5.7(@swc/helpers@0.5.12))(esbuild@0.19.12)) - ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) - transitivePeerDependencies: - - '@types/express' - - bufferutil - - debug - - supports-color - - utf-8-validate - - webpack - - webpack-cli - '@rspack/lite-tapable@1.0.0': {} '@rspack/plugin-minify@0.7.5': @@ -19516,6 +19415,12 @@ snapshots: dependencies: size-limit: 11.1.4 + '@snyk/github-codeowners@1.1.0': + dependencies: + commander: 4.1.1 + ignore: 5.3.1 + p-map: 4.0.0 + '@solidity-parser/parser@0.17.0': {} '@storm-software/build-tools@0.84.0(clcjq3hbejflptfq6tvq634jxi)': @@ -20550,8 +20455,6 @@ snapshots: '@types/resolve@1.20.2': {} - '@types/retry@0.12.0': {} - '@types/retry@0.12.2': {} '@types/semver@6.2.7': {} @@ -22019,8 +21922,6 @@ snapshots: colorette@1.4.0: {} - colorette@2.0.19: {} - colorette@2.0.20: {} columnify@1.6.0: @@ -23066,6 +22967,12 @@ snapshots: eastasianwidth@0.2.0: {} + easy-table@1.2.0: + dependencies: + ansi-regex: 5.0.1 + optionalDependencies: + wcwidth: 1.0.1 + ecc-jsbn@0.1.2: dependencies: jsbn: 0.1.1 @@ -23920,8 +23827,6 @@ snapshots: dependencies: pify: 2.3.0 - exit-hook@3.2.0: {} - exit@0.1.2: {} expand-tilde@2.0.2: @@ -25240,8 +25145,6 @@ snapshots: hasown: 2.0.2 side-channel: 1.0.6 - interpret@3.1.1: {} - invariant@2.2.4: dependencies: loose-envify: 1.4.0 @@ -26219,6 +26122,28 @@ snapshots: klona@2.0.6: {} + knip@5.25.2(@types/node@22.5.4)(typescript@5.6.2): + dependencies: + '@nodelib/fs.walk': 1.2.8 + '@snyk/github-codeowners': 1.1.0 + '@types/node': 22.5.4 + easy-table: 1.2.0 + fast-glob: 3.3.2 + jiti: 1.21.6 + js-yaml: 4.1.0 + minimist: 1.2.8 + picocolors: 1.1.0 + picomatch: 4.0.2 + pretty-ms: 9.1.0 + resolve: 1.22.8 + smol-toml: 1.3.0 + strip-json-comments: 5.0.1 + summary: 2.1.0 + tsconfig-paths: 4.2.0 + typescript: 5.6.2 + zod: 3.23.8 + zod-validation-error: 3.3.1(zod@3.23.8) + koa-compose@4.1.0: {} koa-convert@2.0.0: @@ -28740,11 +28665,6 @@ snapshots: eventemitter3: 4.0.7 p-timeout: 3.2.0 - p-retry@4.6.2: - dependencies: - '@types/retry': 0.12.0 - retry: 0.13.1 - p-retry@6.2.0: dependencies: '@types/retry': 0.12.2 @@ -28860,6 +28780,8 @@ snapshots: unist-util-visit-children: 3.0.0 vfile: 6.0.2 + parse-ms@4.0.0: {} + parse-node-version@1.0.1: {} parse-passwd@1.0.0: {} @@ -28941,6 +28863,8 @@ snapshots: picomatch@2.3.1: {} + picomatch@4.0.2: {} + pify@2.3.0: {} pify@3.0.0: {} @@ -29696,6 +29620,10 @@ snapshots: ansi-styles: 5.2.0 react-is: 18.3.1 + pretty-ms@9.1.0: + dependencies: + parse-ms: 4.0.0 + proc-log@3.0.0: {} proc-log@4.2.0: {} @@ -30085,10 +30013,6 @@ snapshots: source-map: 0.6.1 tslib: 2.6.3 - rechoir@0.8.0: - dependencies: - resolve: 1.22.8 - redent@4.0.0: dependencies: indent-string: 5.0.0 @@ -30872,6 +30796,33 @@ snapshots: shell-quote@1.8.1: {} + sherif-darwin-arm64@0.10.0: + optional: true + + sherif-darwin-x64@0.10.0: + optional: true + + sherif-linux-arm64@0.10.0: + optional: true + + sherif-linux-x64@0.10.0: + optional: true + + sherif-windows-arm64@0.10.0: + optional: true + + sherif-windows-x64@0.10.0: + optional: true + + sherif@0.10.0: + optionalDependencies: + sherif-darwin-arm64: 0.10.0 + sherif-darwin-x64: 0.10.0 + sherif-linux-arm64: 0.10.0 + sherif-linux-x64: 0.10.0 + sherif-windows-arm64: 0.10.0 + sherif-windows-x64: 0.10.0 + side-channel@1.0.6: dependencies: call-bind: 1.0.7 @@ -30943,7 +30894,7 @@ snapshots: slugify@1.6.6: {} - smob@1.5.0: {} + smol-toml@1.3.0: {} snake-case@3.0.4: dependencies: @@ -31302,6 +31253,8 @@ snapshots: strip-json-comments@3.1.1: {} + strip-json-comments@5.0.1: {} + strip-outer@2.0.0: {} strnum@1.0.5: {} @@ -31384,6 +31337,8 @@ snapshots: sudo-prompt@9.2.1: {} + summary@2.1.0: {} + superjson@2.2.1: dependencies: copy-anything: 3.0.5 @@ -32639,21 +32594,6 @@ snapshots: - bufferutil - utf-8-validate - webpack-bundle-analyzer@4.6.1(bufferutil@4.0.8)(utf-8-validate@5.0.10): - dependencies: - acorn: 8.12.1 - acorn-walk: 8.3.3 - chalk: 4.1.2 - commander: 7.2.0 - gzip-size: 6.0.0 - lodash: 4.17.21 - opener: 1.5.2 - sirv: 1.0.19 - ws: 7.5.10(bufferutil@4.0.8)(utf-8-validate@5.0.10) - transitivePeerDependencies: - - bufferutil - - utf-8-validate - webpack-dev-middleware@7.4.2(webpack@5.93.0(@swc/core@1.5.7(@swc/helpers@0.5.12))(esbuild@0.19.12)): dependencies: colorette: 2.0.20 @@ -32972,16 +32912,6 @@ snapshots: y18n: 5.0.8 yargs-parser: 20.2.9 - yargs@17.6.2: - dependencies: - cliui: 8.0.1 - escalade: 3.1.2 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.3 - y18n: 5.0.8 - yargs-parser: 21.1.1 - yargs@17.7.2: dependencies: cliui: 8.0.1 diff --git a/tsconfig.base.json b/tsconfig.base.json index e18e67eb..f9e8e50e 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -8,112 +8,42 @@ "incremental": false, "composite": false, "paths": { - "@storm-stack/cli": [ - "packages/cli/src/index.ts" - ], - "@storm-stack/cli/*": [ - "packages/cli/src/*" - ], - "@storm-stack/date-time": [ - "packages/date-time/src/index.ts" - ], - "@storm-stack/date-time/*": [ - "packages/date-time/src/*" - ], - "@storm-stack/errors": [ - "packages/errors/src/index.ts" - ], - "@storm-stack/errors/*": [ - "packages/errors/src/*" - ], - "@storm-stack/file-system": [ - "packages/file-system/src/index.ts" - ], - "@storm-stack/file-system/*": [ - "packages/file-system/src/*" - ], - "@storm-stack/hashing": [ - "packages/hashing/src/index.ts" - ], - "@storm-stack/hashing/*": [ - "packages/hashing/src/*" - ], - "@storm-stack/logging": [ - "packages/logging/src/index.ts" - ], - "@storm-stack/logging/*": [ - "packages/logging/src/*" - ], - "@storm-stack/nx": [ - "apps/nx/src/index.ts" - ], - "@storm-stack/nx/*": [ - "apps/nx/src/*" - ], - "@storm-stack/plugin-system": [ - "packages/plugin-system/src/index.ts" - ], - "@storm-stack/plugin-system/*": [ - "packages/plugin-system/src/*" - ], - "@storm-stack/serialization": [ - "packages/serialization/src/index.ts" - ], - "@storm-stack/serialization/*": [ - "packages/serialization/src/*" - ], - "@storm-stack/server-cache": [ - "packages/server-cache/src/index.ts" - ], - "@storm-stack/server-cache/*": [ - "packages/server-cache/src/*" - ], - "@storm-stack/string-fns": [ - "packages/string-fns/src/index.ts" - ], - "@storm-stack/string-fns/*": [ - "packages/string-fns/src/*" - ], - "@storm-stack/telemetry": [ - "packages/telemetry/src/index.ts" - ], - "@storm-stack/telemetry/*": [ - "packages/telemetry/src/*" - ], - "@storm-stack/types": [ - "packages/types/src/index.ts" - ], - "@storm-stack/types/*": [ - "packages/types/src/*" - ], + "@storm-stack/cli": ["packages/cli/src/index.ts"], + "@storm-stack/cli/*": ["packages/cli/src/*"], + "@storm-stack/date-time": ["packages/date-time/src/index.ts"], + "@storm-stack/date-time/*": ["packages/date-time/src/*"], + "@storm-stack/errors": ["packages/errors/src/index.ts"], + "@storm-stack/errors/*": ["packages/errors/src/*"], + "@storm-stack/file-system": ["packages/file-system/src/index.ts"], + "@storm-stack/file-system/*": ["packages/file-system/src/*"], + "@storm-stack/hashing": ["packages/hashing/src/index.ts"], + "@storm-stack/hashing/*": ["packages/hashing/src/*"], + "@storm-stack/logging": ["packages/logging/src/index.ts"], + "@storm-stack/logging/*": ["packages/logging/src/*"], + "@storm-stack/nx": ["apps/nx/src/index.ts"], + "@storm-stack/nx/*": ["apps/nx/src/*"], + "@storm-stack/plugin-system": ["packages/plugin-system/src/index.ts"], + "@storm-stack/plugin-system/*": ["packages/plugin-system/src/*"], + "@storm-stack/serialization": ["packages/serialization/src/index.ts"], + "@storm-stack/serialization/*": ["packages/serialization/src/*"], + "@storm-stack/server-cache": ["packages/server-cache/src/index.ts"], + "@storm-stack/server-cache/*": ["packages/server-cache/src/*"], + "@storm-stack/server-result": ["packages/server-result/src/index.ts"], + "@storm-stack/server-result/*": ["packages/server-result/src/*"], + "@storm-stack/string-fns": ["packages/string-fns/src/index.ts"], + "@storm-stack/string-fns/*": ["packages/string-fns/src/*"], + "@storm-stack/telemetry": ["packages/telemetry/src/index.ts"], + "@storm-stack/telemetry/*": ["packages/telemetry/src/*"], + "@storm-stack/types": ["packages/types/src/index.ts"], + "@storm-stack/types/*": ["packages/types/src/*"], "@storm-stack/unique-identifier": [ "packages/unique-identifier/src/index.ts" ], - "@storm-stack/unique-identifier/*": [ - "packages/unique-identifier/src/*" - ], - "@storm-stack/utilities": [ - "packages/utilities/src/index.ts" - ], - "@storm-stack/utilities/*": [ - "packages/utilities/src/*" - ], - "@storm-stack/server-result": [ - "packages/server-result/src/index.ts" - ], - "@storm-stack/server-result/*": [ - "packages/server-result/src/*" - ] + "@storm-stack/unique-identifier/*": ["packages/unique-identifier/src/*"], + "@storm-stack/utilities": ["packages/utilities/src/index.ts"], + "@storm-stack/utilities/*": ["packages/utilities/src/*"] } }, - "include": [ - "**/*.ts", - "**/*.tsx", - "**/*.d.ts", - "**/*.js", - "**/*.jsx" - ], - "exclude": [ - "tmp" - ] + "include": ["**/*.ts", "**/*.tsx", "**/*.d.ts", "**/*.js", "**/*.jsx"], + "exclude": ["tmp"] }