From 49fb5f9d8841634bf0f97fb0d56ab6a41b8b3e97 Mon Sep 17 00:00:00 2001 From: Gili Tzabari Date: Tue, 5 Dec 2023 09:42:41 -0500 Subject: [PATCH] * Added type declaration for .eslintrc.mjs. * Isolated logging code into LogFactory.mts. * Moved build scripts to "build" directory. * Fixed unit-tests. --- .eslintrc.d.mts | 4 + build/LogFactory.mts | 49 ++++ scripts/build.mts => build/Project.mts | 71 +----- {scripts => build}/TestCompiler.mts | 2 +- {scripts => build}/mode.mts | 0 package.json | 24 +- pnpm-lock.yaml | 316 ++++++++++++------------- test/BooleanTest.mts | 6 +- test/MapTest.mts | 4 +- test/ObjectTest.mts | 22 +- test/SetTest.mts | 4 +- tsconfig.json | 14 +- 12 files changed, 256 insertions(+), 260 deletions(-) create mode 100644 .eslintrc.d.mts create mode 100644 build/LogFactory.mts rename scripts/build.mts => build/Project.mts (82%) rename {scripts => build}/TestCompiler.mts (97%) rename {scripts => build}/mode.mts (100%) diff --git a/.eslintrc.d.mts b/.eslintrc.d.mts new file mode 100644 index 0000000..bfcf504 --- /dev/null +++ b/.eslintrc.d.mts @@ -0,0 +1,4 @@ +import {Linter} from "eslint"; + +declare const config: Linter.Config; +export default config; \ No newline at end of file diff --git a/build/LogFactory.mts b/build/LogFactory.mts new file mode 100644 index 0000000..3f3ff88 --- /dev/null +++ b/build/LogFactory.mts @@ -0,0 +1,49 @@ +import { + createLogger, + format, + Logger, + transports +} from "winston"; + +// https://stackoverflow.com/a/63486530/14731 +const Reset = "\x1b[0m"; +const FgWhite = "\x1b[37m"; +const BgRed = "\x1b[41m"; + +class LogFactory +{ + /** + * @param name the name of the logger + */ + public static getLogger(name: string): Logger + { + return createLogger({ + transports: [new transports.Console()], + format: format.combine( + format(info => + { + // https://github.com/winstonjs/winston/issues/1345#issuecomment-393853665 + info.level = info.level.toUpperCase(); + return info; + })(), + format.errors({stack: true}), + format.prettyPrint(), + format.colorize(), + format.timestamp({format: "YYYY-MM-DD HH:mm:ss.SSS"}), + format.printf(({ + timestamp, + level, + message, + stack + }) => + { + if (stack) + return `${timestamp} ${level} ${FgWhite + BgRed + name + Reset} - ${message}\n${stack}`; + return `${timestamp} ${level} ${FgWhite + BgRed + name + Reset} - ${message}`; + }) + ) + }); + } +} + +export {LogFactory}; \ No newline at end of file diff --git a/scripts/build.mts b/build/Project.mts similarity index 82% rename from scripts/build.mts rename to build/Project.mts index b0691e1..d39467a 100644 --- a/scripts/build.mts +++ b/build/Project.mts @@ -1,10 +1,8 @@ -import * as url from "url"; +import url from "url"; import path from "path"; import {ESLint} from "eslint"; -// @ts-ignore -import eslintConfig from "../.eslintrc.mjs"; import TypeDoc from "typedoc"; -import fs from "fs"; +import fs from "node:fs"; import rollupCommonjs from "@rollup/plugin-commonjs"; import {nodeResolve as rollupNodeResolve} from "@rollup/plugin-node-resolve"; import rollupTypescript from "@rollup/plugin-typescript"; @@ -17,15 +15,11 @@ import ts from "typescript"; import {glob} from "glob"; import {minify} from "terser"; import {spawn} from "child_process"; -import { - createLogger, - format, - Logger, - transports -} from "winston"; import {mode} from "./mode.mjs"; +import {LogFactory} from "./LogFactory.mjs"; +import eslintConfig from "../.eslintrc.mjs"; -class Build +class Project { private readonly mode: string; @@ -86,7 +80,7 @@ class Build // them. config.include = config.include.filter((element: string) => { - return element !== "build.mts" && !element.startsWith("test/"); + return element !== "build/Project.mts" && !element.startsWith("test/"); }); config.compilerOptions.outDir = "target/publish/node/"; config.compilerOptions.declaration = true; @@ -283,62 +277,13 @@ class Build } } -// https://stackoverflow.com/a/63486530/14731 -const Reset = "\x1b[0m"; -const FgWhite = "\x1b[37m"; -const BgRed = "\x1b[41m"; - -class LogFactory -{ - /** - * @param name the name of the logger - * @param mode the operational mode ("DEBUG" or "RELEASE") - */ - public static getLogger(name: string, mode: string): Logger - { - let messageFormat; - if (mode === "DEBUG") - messageFormat = format.prettyPrint(); - else - messageFormat = format.simple(); - return createLogger({ - transports: [new transports.Console()], - format: format.combine( - format(info => - { - // https://github.com/winstonjs/winston/issues/1345#issuecomment-393853665 - info.level = info.level.toUpperCase(); - return info; - })(), - format.errors({stack: true}), - messageFormat, - format.colorize(), - format.timestamp({format: "YYYY-MM-DD HH:mm:ss.SSS"}), - format.printf(({ - timestamp, - level, - message, - stack - }) => - { - if (stack) - { - return `${timestamp} ${level} ${FgWhite + BgRed + name + Reset} - ${message}\n${stack}`; - } - return `${timestamp} ${level} ${FgWhite + BgRed + name + Reset} - ${message}`; - }) - ) - }); - } -} - console.time("Time elapsed"); const __filename = path.basename(url.fileURLToPath(import.meta.url)); -const log = LogFactory.getLogger(__filename, mode); +const log = LogFactory.getLogger(__filename); log.info(mode + " mode detected"); -const build = new Build(mode); +const build = new Project(mode); await Promise.all([build.lint(), build.compileForNode(), build.compileForBrowser(), build.generateDocumentation(), build.copyResources()]); await build.test(); diff --git a/scripts/TestCompiler.mts b/build/TestCompiler.mts similarity index 97% rename from scripts/TestCompiler.mts rename to build/TestCompiler.mts index b5804b3..279ee61 100644 --- a/scripts/TestCompiler.mts +++ b/build/TestCompiler.mts @@ -10,7 +10,7 @@ class TestCompiler private static readonly rootDir: string = path.resolve("."); // We have to include at least one existing file to avoid CompilerHost complaining that it couldn't find any // input files - private static readonly existingFileToSuppressError = "scripts/build.mts"; + private static readonly existingFileToSuppressError = "build/Project.mts"; private static readonly snippetFilename = "test.mts"; private static readonly config = TestCompiler.createParsedCommandLine(); private static readonly defaultCompilerHost = ts.createCompilerHost(TestCompiler.config.options); diff --git a/scripts/mode.mts b/build/mode.mts similarity index 100% rename from scripts/mode.mts rename to build/mode.mts diff --git a/package.json b/package.json index 977b50e..4a92d0e 100644 --- a/package.json +++ b/package.json @@ -18,8 +18,8 @@ "url": "https://github.com/cowwoc/requirements.js/" }, "scripts": { - "build.debug": "node node_modules/tsx/dist/cli.mjs scripts/build.mts --mode=DEBUG", - "build.release": "node node_modules/tsx/dist/cli.mjs scripts/build.mts --mode=RELEASE" + "build.debug": "node node_modules/tsx/dist/cli.mjs build/Project.mts --mode=DEBUG", + "build.release": "node node_modules/tsx/dist/cli.mjs build/Project.mts --mode=RELEASE" }, "browser": "browser/index.js", "module": "node/index.mjs", @@ -33,25 +33,25 @@ "license": "Apache-2.0", "packageManager": "pnpm@8.6.9", "devDependencies": { - "@eslint/js": "^8.54.0", + "@eslint/js": "^8.55.0", "@rollup/plugin-commonjs": "^25.0.7", "@rollup/plugin-node-resolve": "^15.2.3", "@rollup/plugin-typescript": "^11.1.5", "@types/chai": "^4.3.11", "@types/diff": "^5.0.8", - "@types/eslint": "^8.44.7", + "@types/eslint": "^8.44.8", "@types/lodash": "^4.14.202", "@types/minimist": "^1.2.5", "@types/mocha": "^10.0.6", - "@types/node": "^20.9.4", + "@types/node": "^20.10.3", "@types/rollup-plugin-node-globals": "^1.4.4", "@types/tmp": "^0.2.6", - "@typescript-eslint/eslint-plugin": "^6.12.0", - "@typescript-eslint/parser": "^6.12.0", + "@typescript-eslint/eslint-plugin": "^6.13.2", + "@typescript-eslint/parser": "^6.13.2", "browser-sync": "^2.29.3", "c8": "^8.0.1", "chai": "^4.3.10", - "eslint": "^8.54.0", + "eslint": "^8.55.0", "eslint-import-resolver-typescript": "^3.6.1", "eslint-plugin-import": "^2.29.0", "eslint-plugin-tsdoc": "^0.2.17", @@ -60,19 +60,19 @@ "install": "^0.13.0", "minimist": "^1.2.8", "mocha": "^10.2.0", - "pnpm": "^8.10.5", + "pnpm": "^8.11.0", "react": "^18.2.0", "react-dom": "^18.2.0", - "rollup": "^4.5.1", + "rollup": "^4.6.1", "rollup-plugin-node-globals": "^1.4.0", "source-map-support": "^0.5.21", "strip-ansi": "^7.1.0", "taffydb": "^2.7.3", - "terser": "^5.24.0", + "terser": "^5.25.0", "tmp": "^0.2.1", "ts-node": "^10.9.1", "tslib": "^2.6.2", - "tsx": "^4.4.0", + "tsx": "^4.6.2", "typedoc": "^0.25.4", "typedoc-plugin-missing-exports": "^2.1.0", "typescript": "^5.3.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 748d33c..d9c1adf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,17 +17,17 @@ dependencies: devDependencies: '@eslint/js': - specifier: ^8.54.0 - version: 8.54.0 + specifier: ^8.55.0 + version: 8.55.0 '@rollup/plugin-commonjs': specifier: ^25.0.7 - version: 25.0.7(rollup@4.5.1) + version: 25.0.7(rollup@4.6.1) '@rollup/plugin-node-resolve': specifier: ^15.2.3 - version: 15.2.3(rollup@4.5.1) + version: 15.2.3(rollup@4.6.1) '@rollup/plugin-typescript': specifier: ^11.1.5 - version: 11.1.5(rollup@4.5.1)(tslib@2.6.2)(typescript@5.3.2) + version: 11.1.5(rollup@4.6.1)(tslib@2.6.2)(typescript@5.3.2) '@types/chai': specifier: ^4.3.11 version: 4.3.11 @@ -35,8 +35,8 @@ devDependencies: specifier: ^5.0.8 version: 5.0.8 '@types/eslint': - specifier: ^8.44.7 - version: 8.44.7 + specifier: ^8.44.8 + version: 8.44.8 '@types/lodash': specifier: ^4.14.202 version: 4.14.202 @@ -47,8 +47,8 @@ devDependencies: specifier: ^10.0.6 version: 10.0.6 '@types/node': - specifier: ^20.9.4 - version: 20.9.4 + specifier: ^20.10.3 + version: 20.10.3 '@types/rollup-plugin-node-globals': specifier: ^1.4.4 version: 1.4.4 @@ -56,11 +56,11 @@ devDependencies: specifier: ^0.2.6 version: 0.2.6 '@typescript-eslint/eslint-plugin': - specifier: ^6.12.0 - version: 6.12.0(@typescript-eslint/parser@6.12.0)(eslint@8.54.0)(typescript@5.3.2) + specifier: ^6.13.2 + version: 6.13.2(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.2) '@typescript-eslint/parser': - specifier: ^6.12.0 - version: 6.12.0(eslint@8.54.0)(typescript@5.3.2) + specifier: ^6.13.2 + version: 6.13.2(eslint@8.55.0)(typescript@5.3.2) browser-sync: specifier: ^2.29.3 version: 2.29.3 @@ -71,14 +71,14 @@ devDependencies: specifier: ^4.3.10 version: 4.3.10 eslint: - specifier: ^8.54.0 - version: 8.54.0 + specifier: ^8.55.0 + version: 8.55.0 eslint-import-resolver-typescript: specifier: ^3.6.1 - version: 3.6.1(@typescript-eslint/parser@6.12.0)(eslint-plugin-import@2.29.0)(eslint@8.54.0) + version: 3.6.1(@typescript-eslint/parser@6.13.2)(eslint-plugin-import@2.29.0)(eslint@8.55.0) eslint-plugin-import: specifier: ^2.29.0 - version: 2.29.0(@typescript-eslint/parser@6.12.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.54.0) + version: 2.29.0(@typescript-eslint/parser@6.13.2)(eslint-import-resolver-typescript@3.6.1)(eslint@8.55.0) eslint-plugin-tsdoc: specifier: ^0.2.17 version: 0.2.17 @@ -98,8 +98,8 @@ devDependencies: specifier: ^10.2.0 version: 10.2.0 pnpm: - specifier: ^8.10.5 - version: 8.10.5 + specifier: ^8.11.0 + version: 8.11.0 react: specifier: ^18.2.0 version: 18.2.0 @@ -107,8 +107,8 @@ devDependencies: specifier: ^18.2.0 version: 18.2.0(react@18.2.0) rollup: - specifier: ^4.5.1 - version: 4.5.1 + specifier: ^4.6.1 + version: 4.6.1 rollup-plugin-node-globals: specifier: ^1.4.0 version: 1.4.0 @@ -122,20 +122,20 @@ devDependencies: specifier: ^2.7.3 version: 2.7.3 terser: - specifier: ^5.24.0 - version: 5.24.0 + specifier: ^5.25.0 + version: 5.25.0 tmp: specifier: ^0.2.1 version: 0.2.1 ts-node: specifier: ^10.9.1 - version: 10.9.1(@types/node@20.9.4)(typescript@5.3.2) + version: 10.9.1(@types/node@20.10.3)(typescript@5.3.2) tslib: specifier: ^2.6.2 version: 2.6.2 tsx: - specifier: ^4.4.0 - version: 4.4.0 + specifier: ^4.6.2 + version: 4.6.2 typedoc: specifier: ^0.25.4 version: 0.25.4(typescript@5.3.2) @@ -381,13 +381,13 @@ packages: dev: true optional: true - /@eslint-community/eslint-utils@4.4.0(eslint@8.54.0): + /@eslint-community/eslint-utils@4.4.0(eslint@8.55.0): resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: - eslint: 8.54.0 + eslint: 8.55.0 eslint-visitor-keys: 3.4.3 dev: true @@ -396,8 +396,8 @@ packages: engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} dev: true - /@eslint/eslintrc@2.1.3: - resolution: {integrity: sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==} + /@eslint/eslintrc@2.1.4: + resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 @@ -413,8 +413,8 @@ packages: - supports-color dev: true - /@eslint/js@8.54.0: - resolution: {integrity: sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==} + /@eslint/js@8.55.0: + resolution: {integrity: sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true @@ -540,7 +540,7 @@ packages: dev: true optional: true - /@rollup/plugin-commonjs@25.0.7(rollup@4.5.1): + /@rollup/plugin-commonjs@25.0.7(rollup@4.6.1): resolution: {integrity: sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -549,16 +549,16 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.0.5(rollup@4.5.1) + '@rollup/pluginutils': 5.1.0(rollup@4.6.1) commondir: 1.0.1 estree-walker: 2.0.2 glob: 8.1.0 is-reference: 1.2.1 magic-string: 0.30.5 - rollup: 4.5.1 + rollup: 4.6.1 dev: true - /@rollup/plugin-node-resolve@15.2.3(rollup@4.5.1): + /@rollup/plugin-node-resolve@15.2.3(rollup@4.6.1): resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -567,16 +567,16 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.0.5(rollup@4.5.1) + '@rollup/pluginutils': 5.1.0(rollup@4.6.1) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-builtin-module: 3.2.1 is-module: 1.0.0 resolve: 1.22.8 - rollup: 4.5.1 + rollup: 4.6.1 dev: true - /@rollup/plugin-typescript@11.1.5(rollup@4.5.1)(tslib@2.6.2)(typescript@5.3.2): + /@rollup/plugin-typescript@11.1.5(rollup@4.6.1)(tslib@2.6.2)(typescript@5.3.2): resolution: {integrity: sha512-rnMHrGBB0IUEv69Q8/JGRD/n4/n6b3nfpufUu26axhUcboUzv/twfZU8fIBbTOphRAe0v8EyxzeDpKXqGHfyDA==} engines: {node: '>=14.0.0'} peerDependencies: @@ -589,15 +589,15 @@ packages: tslib: optional: true dependencies: - '@rollup/pluginutils': 5.0.5(rollup@4.5.1) + '@rollup/pluginutils': 5.1.0(rollup@4.6.1) resolve: 1.22.8 - rollup: 4.5.1 + rollup: 4.6.1 tslib: 2.6.2 typescript: 5.3.2 dev: true - /@rollup/pluginutils@5.0.5(rollup@4.5.1): - resolution: {integrity: sha512-6aEYR910NyP73oHiJglti74iRyOwgFU4x3meH/H8OJx6Ry0j6cOVZ5X/wTvub7G7Ao6qaHBEaNsV3GLJkSsF+Q==} + /@rollup/pluginutils@5.1.0(rollup@4.6.1): + resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 @@ -608,99 +608,99 @@ packages: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 - rollup: 4.5.1 + rollup: 4.6.1 dev: true - /@rollup/rollup-android-arm-eabi@4.5.1: - resolution: {integrity: sha512-YaN43wTyEBaMqLDYeze+gQ4ZrW5RbTEGtT5o1GVDkhpdNcsLTnLRcLccvwy3E9wiDKWg9RIhuoy3JQKDRBfaZA==} + /@rollup/rollup-android-arm-eabi@4.6.1: + resolution: {integrity: sha512-0WQ0ouLejaUCRsL93GD4uft3rOmB8qoQMU05Kb8CmMtMBe7XUDLAltxVZI1q6byNqEtU7N1ZX1Vw5lIpgulLQA==} cpu: [arm] os: [android] requiresBuild: true dev: true optional: true - /@rollup/rollup-android-arm64@4.5.1: - resolution: {integrity: sha512-n1bX+LCGlQVuPlCofO0zOKe1b2XkFozAVRoczT+yxWZPGnkEAKTTYVOGZz8N4sKuBnKMxDbfhUsB1uwYdup/sw==} + /@rollup/rollup-android-arm64@4.6.1: + resolution: {integrity: sha512-1TKm25Rn20vr5aTGGZqo6E4mzPicCUD79k17EgTLAsXc1zysyi4xXKACfUbwyANEPAEIxkzwue6JZ+stYzWUTA==} cpu: [arm64] os: [android] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-arm64@4.5.1: - resolution: {integrity: sha512-QqJBumdvfBqBBmyGHlKxje+iowZwrHna7pokj/Go3dV1PJekSKfmjKrjKQ/e6ESTGhkfPNLq3VXdYLAc+UtAQw==} + /@rollup/rollup-darwin-arm64@4.6.1: + resolution: {integrity: sha512-cEXJQY/ZqMACb+nxzDeX9IPLAg7S94xouJJCNVE5BJM8JUEP4HeTF+ti3cmxWeSJo+5D+o8Tc0UAWUkfENdeyw==} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-x64@4.5.1: - resolution: {integrity: sha512-RrkDNkR/P5AEQSPkxQPmd2ri8WTjSl0RYmuFOiEABkEY/FSg0a4riihWQGKDJ4LnV9gigWZlTMx2DtFGzUrYQw==} + /@rollup/rollup-darwin-x64@4.6.1: + resolution: {integrity: sha512-LoSU9Xu56isrkV2jLldcKspJ7sSXmZWkAxg7sW/RfF7GS4F5/v4EiqKSMCFbZtDu2Nc1gxxFdQdKwkKS4rwxNg==} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm-gnueabihf@4.5.1: - resolution: {integrity: sha512-ZFPxvUZmE+fkB/8D9y/SWl/XaDzNSaxd1TJUSE27XAKlRpQ2VNce/86bGd9mEUgL3qrvjJ9XTGwoX0BrJkYK/A==} + /@rollup/rollup-linux-arm-gnueabihf@4.6.1: + resolution: {integrity: sha512-EfI3hzYAy5vFNDqpXsNxXcgRDcFHUWSx5nnRSCKwXuQlI5J9dD84g2Usw81n3FLBNsGCegKGwwTVsSKK9cooSQ==} cpu: [arm] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-gnu@4.5.1: - resolution: {integrity: sha512-FEuAjzVIld5WVhu+M2OewLmjmbXWd3q7Zcx+Rwy4QObQCqfblriDMMS7p7+pwgjZoo9BLkP3wa9uglQXzsB9ww==} + /@rollup/rollup-linux-arm64-gnu@4.6.1: + resolution: {integrity: sha512-9lhc4UZstsegbNLhH0Zu6TqvDfmhGzuCWtcTFXY10VjLLUe4Mr0Ye2L3rrtHaDd/J5+tFMEuo5LTCSCMXWfUKw==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-musl@4.5.1: - resolution: {integrity: sha512-f5Gs8WQixqGRtI0Iq/cMqvFYmgFzMinuJO24KRfnv7Ohi/HQclwrBCYkzQu1XfLEEt3DZyvveq9HWo4bLJf1Lw==} + /@rollup/rollup-linux-arm64-musl@4.6.1: + resolution: {integrity: sha512-FfoOK1yP5ksX3wwZ4Zk1NgyGHZyuRhf99j64I5oEmirV8EFT7+OhUZEnP+x17lcP/QHJNWGsoJwrz4PJ9fBEXw==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-gnu@4.5.1: - resolution: {integrity: sha512-CWPkPGrFfN2vj3mw+S7A/4ZaU3rTV7AkXUr08W9lNP+UzOvKLVf34tWCqrKrfwQ0NTk5GFqUr2XGpeR2p6R4gw==} + /@rollup/rollup-linux-x64-gnu@4.6.1: + resolution: {integrity: sha512-DNGZvZDO5YF7jN5fX8ZqmGLjZEXIJRdJEdTFMhiyXqyXubBa0WVLDWSNlQ5JR2PNgDbEV1VQowhVRUh+74D+RA==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-musl@4.5.1: - resolution: {integrity: sha512-ZRETMFA0uVukUC9u31Ed1nx++29073goCxZtmZARwk5aF/ltuENaeTtRVsSQzFlzdd4J6L3qUm+EW8cbGt0CKQ==} + /@rollup/rollup-linux-x64-musl@4.6.1: + resolution: {integrity: sha512-RkJVNVRM+piYy87HrKmhbexCHg3A6Z6MU0W9GHnJwBQNBeyhCJG9KDce4SAMdicQnpURggSvtbGo9xAWOfSvIQ==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-arm64-msvc@4.5.1: - resolution: {integrity: sha512-ihqfNJNb2XtoZMSCPeoo0cYMgU04ksyFIoOw5S0JUVbOhafLot+KD82vpKXOurE2+9o/awrqIxku9MRR9hozHQ==} + /@rollup/rollup-win32-arm64-msvc@4.6.1: + resolution: {integrity: sha512-v2FVT6xfnnmTe3W9bJXl6r5KwJglMK/iRlkKiIFfO6ysKs0rDgz7Cwwf3tjldxQUrHL9INT/1r4VA0n9L/F1vQ==} cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-ia32-msvc@4.5.1: - resolution: {integrity: sha512-zK9MRpC8946lQ9ypFn4gLpdwr5a01aQ/odiIJeL9EbgZDMgbZjjT/XzTqJvDfTmnE1kHdbG20sAeNlpc91/wbg==} + /@rollup/rollup-win32-ia32-msvc@4.6.1: + resolution: {integrity: sha512-YEeOjxRyEjqcWphH9dyLbzgkF8wZSKAKUkldRY6dgNR5oKs2LZazqGB41cWJ4Iqqcy9/zqYgmzBkRoVz3Q9MLw==} cpu: [ia32] os: [win32] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-x64-msvc@4.5.1: - resolution: {integrity: sha512-5I3Nz4Sb9TYOtkRwlH0ow+BhMH2vnh38tZ4J4mggE48M/YyJyp/0sPSxhw1UeS1+oBgQ8q7maFtSeKpeRJu41Q==} + /@rollup/rollup-win32-x64-msvc@4.6.1: + resolution: {integrity: sha512-0zfTlFAIhgz8V2G8STq8toAjsYYA6eci1hnXuyOTUFnymrtJwnS6uGKiv3v5UrPZkBlamLvrLV2iiaeqCKzb0A==} cpu: [x64] os: [win32] requiresBuild: true @@ -738,15 +738,15 @@ packages: /@types/cors@2.8.17: resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==} dependencies: - '@types/node': 20.9.4 + '@types/node': 20.10.3 dev: true /@types/diff@5.0.8: resolution: {integrity: sha512-kR0gRf0wMwpxQq6ME5s+tWk9zVCfJUl98eRkD05HWWRbhPB/eu4V1IbyZAsvzC1Gn4znBJ0HN01M4DGXdBEV8Q==} dev: true - /@types/eslint@8.44.7: - resolution: {integrity: sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ==} + /@types/eslint@8.44.8: + resolution: {integrity: sha512-4K8GavROwhrYl2QXDXm0Rv9epkA8GBFu0EI+XrrnnuCl7u8CWBRusX7fXJfanhZTDWSAL24gDI/UqXyUM0Injw==} dependencies: '@types/estree': 1.0.5 '@types/json-schema': 7.0.15 @@ -784,8 +784,8 @@ packages: resolution: {integrity: sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==} dev: true - /@types/node@20.9.4: - resolution: {integrity: sha512-wmyg8HUhcn6ACjsn8oKYjkN/zUzQeNtMy44weTJSM6p4MMzEOuKbA3OjJ267uPCOW7Xex9dyrNTful8XTQYoDA==} + /@types/node@20.10.3: + resolution: {integrity: sha512-XJavIpZqiXID5Yxnxv3RUDKTN5b81ddNC3ecsA0SoFXz/QU8OGBwZGMomiq0zw+uuqbL/krztv/DINAQ/EV4gg==} dependencies: undici-types: 5.26.5 dev: true @@ -797,7 +797,7 @@ packages: /@types/rollup-plugin-node-globals@1.4.4: resolution: {integrity: sha512-T+eX0O6QFd7qEPzQik9m3DDRmtUusJV4KgN7S5Q6zOlQx7a+ZTDR61VL89a7sG0pCTpOHjQivPx5OOtkr3xGKA==} dependencies: - '@types/node': 20.9.4 + '@types/node': 20.10.3 rollup: 0.63.5 dev: true @@ -813,8 +813,8 @@ packages: resolution: {integrity: sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==} dev: true - /@typescript-eslint/eslint-plugin@6.12.0(@typescript-eslint/parser@6.12.0)(eslint@8.54.0)(typescript@5.3.2): - resolution: {integrity: sha512-XOpZ3IyJUIV1b15M7HVOpgQxPPF7lGXgsfcEIu3yDxFPaf/xZKt7s9QO/pbk7vpWQyVulpJbu4E5LwpZiQo4kA==} + /@typescript-eslint/eslint-plugin@6.13.2(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.2): + resolution: {integrity: sha512-3+9OGAWHhk4O1LlcwLBONbdXsAhLjyCFogJY/cWy2lxdVJ2JrcTF2pTGMaLl2AE7U1l31n8Py4a8bx5DLf/0dQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha @@ -825,13 +825,13 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 6.12.0(eslint@8.54.0)(typescript@5.3.2) - '@typescript-eslint/scope-manager': 6.12.0 - '@typescript-eslint/type-utils': 6.12.0(eslint@8.54.0)(typescript@5.3.2) - '@typescript-eslint/utils': 6.12.0(eslint@8.54.0)(typescript@5.3.2) - '@typescript-eslint/visitor-keys': 6.12.0 + '@typescript-eslint/parser': 6.13.2(eslint@8.55.0)(typescript@5.3.2) + '@typescript-eslint/scope-manager': 6.13.2 + '@typescript-eslint/type-utils': 6.13.2(eslint@8.55.0)(typescript@5.3.2) + '@typescript-eslint/utils': 6.13.2(eslint@8.55.0)(typescript@5.3.2) + '@typescript-eslint/visitor-keys': 6.13.2 debug: 4.3.4(supports-color@8.1.1) - eslint: 8.54.0 + eslint: 8.55.0 graphemer: 1.4.0 ignore: 5.3.0 natural-compare: 1.4.0 @@ -842,8 +842,8 @@ packages: - supports-color dev: true - /@typescript-eslint/parser@6.12.0(eslint@8.54.0)(typescript@5.3.2): - resolution: {integrity: sha512-s8/jNFPKPNRmXEnNXfuo1gemBdVmpQsK1pcu+QIvuNJuhFzGrpD7WjOcvDc/+uEdfzSYpNu7U/+MmbScjoQ6vg==} + /@typescript-eslint/parser@6.13.2(eslint@8.55.0)(typescript@5.3.2): + resolution: {integrity: sha512-MUkcC+7Wt/QOGeVlM8aGGJZy1XV5YKjTpq9jK6r6/iLsGXhBVaGP5N0UYvFsu9BFlSpwY9kMretzdBH01rkRXg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -852,27 +852,27 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.12.0 - '@typescript-eslint/types': 6.12.0 - '@typescript-eslint/typescript-estree': 6.12.0(typescript@5.3.2) - '@typescript-eslint/visitor-keys': 6.12.0 + '@typescript-eslint/scope-manager': 6.13.2 + '@typescript-eslint/types': 6.13.2 + '@typescript-eslint/typescript-estree': 6.13.2(typescript@5.3.2) + '@typescript-eslint/visitor-keys': 6.13.2 debug: 4.3.4(supports-color@8.1.1) - eslint: 8.54.0 + eslint: 8.55.0 typescript: 5.3.2 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/scope-manager@6.12.0: - resolution: {integrity: sha512-5gUvjg+XdSj8pcetdL9eXJzQNTl3RD7LgUiYTl8Aabdi8hFkaGSYnaS6BLc0BGNaDH+tVzVwmKtWvu0jLgWVbw==} + /@typescript-eslint/scope-manager@6.13.2: + resolution: {integrity: sha512-CXQA0xo7z6x13FeDYCgBkjWzNqzBn8RXaE3QVQVIUm74fWJLkJkaHmHdKStrxQllGh6Q4eUGyNpMe0b1hMkXFA==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.12.0 - '@typescript-eslint/visitor-keys': 6.12.0 + '@typescript-eslint/types': 6.13.2 + '@typescript-eslint/visitor-keys': 6.13.2 dev: true - /@typescript-eslint/type-utils@6.12.0(eslint@8.54.0)(typescript@5.3.2): - resolution: {integrity: sha512-WWmRXxhm1X8Wlquj+MhsAG4dU/Blvf1xDgGaYCzfvStP2NwPQh6KBvCDbiOEvaE0filhranjIlK/2fSTVwtBng==} + /@typescript-eslint/type-utils@6.13.2(eslint@8.55.0)(typescript@5.3.2): + resolution: {integrity: sha512-Qr6ssS1GFongzH2qfnWKkAQmMUyZSyOr0W54nZNU1MDfo+U4Mv3XveeLZzadc/yq8iYhQZHYT+eoXJqnACM1tw==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -881,23 +881,23 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.12.0(typescript@5.3.2) - '@typescript-eslint/utils': 6.12.0(eslint@8.54.0)(typescript@5.3.2) + '@typescript-eslint/typescript-estree': 6.13.2(typescript@5.3.2) + '@typescript-eslint/utils': 6.13.2(eslint@8.55.0)(typescript@5.3.2) debug: 4.3.4(supports-color@8.1.1) - eslint: 8.54.0 + eslint: 8.55.0 ts-api-utils: 1.0.3(typescript@5.3.2) typescript: 5.3.2 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/types@6.12.0: - resolution: {integrity: sha512-MA16p/+WxM5JG/F3RTpRIcuOghWO30//VEOvzubM8zuOOBYXsP+IfjoCXXiIfy2Ta8FRh9+IO9QLlaFQUU+10Q==} + /@typescript-eslint/types@6.13.2: + resolution: {integrity: sha512-7sxbQ+EMRubQc3wTfTsycgYpSujyVbI1xw+3UMRUcrhSy+pN09y/lWzeKDbvhoqcRbHdc+APLs/PWYi/cisLPg==} engines: {node: ^16.0.0 || >=18.0.0} dev: true - /@typescript-eslint/typescript-estree@6.12.0(typescript@5.3.2): - resolution: {integrity: sha512-vw9E2P9+3UUWzhgjyyVczLWxZ3GuQNT7QpnIY3o5OMeLO/c8oHljGc8ZpryBMIyympiAAaKgw9e5Hl9dCWFOYw==} + /@typescript-eslint/typescript-estree@6.13.2(typescript@5.3.2): + resolution: {integrity: sha512-SuD8YLQv6WHnOEtKv8D6HZUzOub855cfPnPMKvdM/Bh1plv1f7Q/0iFUDLKKlxHcEstQnaUU4QZskgQq74t+3w==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' @@ -905,8 +905,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 6.12.0 - '@typescript-eslint/visitor-keys': 6.12.0 + '@typescript-eslint/types': 6.13.2 + '@typescript-eslint/visitor-keys': 6.13.2 debug: 4.3.4(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 @@ -917,30 +917,30 @@ packages: - supports-color dev: true - /@typescript-eslint/utils@6.12.0(eslint@8.54.0)(typescript@5.3.2): - resolution: {integrity: sha512-LywPm8h3tGEbgfyjYnu3dauZ0U7R60m+miXgKcZS8c7QALO9uWJdvNoP+duKTk2XMWc7/Q3d/QiCuLN9X6SWyQ==} + /@typescript-eslint/utils@6.13.2(eslint@8.55.0)(typescript@5.3.2): + resolution: {integrity: sha512-b9Ptq4eAZUym4idijCRzl61oPCwwREcfDI8xGk751Vhzig5fFZR9CyzDz4Sp/nxSLBYxUPyh4QdIDqWykFhNmQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.54.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.55.0) '@types/json-schema': 7.0.15 '@types/semver': 7.5.6 - '@typescript-eslint/scope-manager': 6.12.0 - '@typescript-eslint/types': 6.12.0 - '@typescript-eslint/typescript-estree': 6.12.0(typescript@5.3.2) - eslint: 8.54.0 + '@typescript-eslint/scope-manager': 6.13.2 + '@typescript-eslint/types': 6.13.2 + '@typescript-eslint/typescript-estree': 6.13.2(typescript@5.3.2) + eslint: 8.55.0 semver: 7.5.4 transitivePeerDependencies: - supports-color - typescript dev: true - /@typescript-eslint/visitor-keys@6.12.0: - resolution: {integrity: sha512-rg3BizTZHF1k3ipn8gfrzDXXSFKyOEB5zxYXInQ6z0hUvmQlhaZQzK+YmHmNViMA9HzW5Q9+bPPt90bU6GQwyw==} + /@typescript-eslint/visitor-keys@6.13.2: + resolution: {integrity: sha512-OGznFs0eAQXJsp+xSd6k/O1UbFi/K/L7WjqeRoFE7vadjAF9y0uppXhYNQNEqygjou782maGClOoZwPqF0Drlw==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.12.0 + '@typescript-eslint/types': 6.13.2 eslint-visitor-keys: 3.4.3 dev: true @@ -1679,7 +1679,7 @@ packages: dependencies: '@types/cookie': 0.4.1 '@types/cors': 2.8.17 - '@types/node': 20.9.4 + '@types/node': 20.10.3 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.4.2 @@ -1731,7 +1731,7 @@ packages: is-weakref: 1.0.2 object-inspect: 1.13.1 object-keys: 1.1.1 - object.assign: 4.1.4 + object.assign: 4.1.5 regexp.prototype.flags: 1.5.1 safe-array-concat: 1.0.1 safe-regex-test: 1.0.0 @@ -1824,7 +1824,7 @@ packages: - supports-color dev: true - /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.12.0)(eslint-plugin-import@2.29.0)(eslint@8.54.0): + /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.13.2)(eslint-plugin-import@2.29.0)(eslint@8.55.0): resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: @@ -1833,9 +1833,9 @@ packages: dependencies: debug: 4.3.4(supports-color@8.1.1) enhanced-resolve: 5.15.0 - eslint: 8.54.0 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.12.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.54.0) - eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.12.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.54.0) + eslint: 8.55.0 + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.13.2)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.55.0) + eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.13.2)(eslint-import-resolver-typescript@3.6.1)(eslint@8.55.0) fast-glob: 3.3.2 get-tsconfig: 4.7.2 is-core-module: 2.13.1 @@ -1847,7 +1847,7 @@ packages: - supports-color dev: true - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.12.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.54.0): + /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.13.2)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.55.0): resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} engines: {node: '>=4'} peerDependencies: @@ -1868,16 +1868,16 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 6.12.0(eslint@8.54.0)(typescript@5.3.2) + '@typescript-eslint/parser': 6.13.2(eslint@8.55.0)(typescript@5.3.2) debug: 3.2.7 - eslint: 8.54.0 + eslint: 8.55.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.12.0)(eslint-plugin-import@2.29.0)(eslint@8.54.0) + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.13.2)(eslint-plugin-import@2.29.0)(eslint@8.55.0) transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.12.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.54.0): + /eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.13.2)(eslint-import-resolver-typescript@3.6.1)(eslint@8.55.0): resolution: {integrity: sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==} engines: {node: '>=4'} peerDependencies: @@ -1887,16 +1887,16 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 6.12.0(eslint@8.54.0)(typescript@5.3.2) + '@typescript-eslint/parser': 6.13.2(eslint@8.55.0)(typescript@5.3.2) array-includes: 3.1.7 array.prototype.findlastindex: 1.2.3 array.prototype.flat: 1.3.2 array.prototype.flatmap: 1.3.2 debug: 3.2.7 doctrine: 2.1.0 - eslint: 8.54.0 + eslint: 8.55.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.12.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.54.0) + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.13.2)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.55.0) hasown: 2.0.0 is-core-module: 2.13.1 is-glob: 4.0.3 @@ -1932,15 +1932,15 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /eslint@8.54.0: - resolution: {integrity: sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==} + /eslint@8.55.0: + resolution: {integrity: sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.54.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.55.0) '@eslint-community/regexpp': 4.10.0 - '@eslint/eslintrc': 2.1.3 - '@eslint/js': 8.54.0 + '@eslint/eslintrc': 2.1.4 + '@eslint/js': 8.55.0 '@humanwhocodes/config-array': 0.11.13 '@humanwhocodes/module-importer': 1.0.1 '@nodelib/fs.walk': 1.2.8 @@ -3012,8 +3012,8 @@ packages: engines: {node: '>= 0.4'} dev: true - /object.assign@4.1.4: - resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} + /object.assign@4.1.5: + resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.5 @@ -3158,8 +3158,8 @@ packages: engines: {node: '>=8.6'} dev: true - /pnpm@8.10.5: - resolution: {integrity: sha512-nBYfQz2FVRxY8bOhCxjMPfcrWgLSyu5lZswFtvIK3e+UfnldkMOQM7+S3lUXfq1p2H9iqdqtyR56LjtY9JNToA==} + /pnpm@8.11.0: + resolution: {integrity: sha512-nfh8FsmNsntOBR14fmfyIH7EfoCcywe/e17ErNzRYTNVg5o40LkAFEkj1qcFdwC3TSoMyxVYvrJBZHoSBqmnqw==} engines: {node: '>=16.14'} hasBin: true dev: true @@ -3331,26 +3331,26 @@ packages: hasBin: true dependencies: '@types/estree': 0.0.39 - '@types/node': 20.9.4 + '@types/node': 20.10.3 dev: true - /rollup@4.5.1: - resolution: {integrity: sha512-0EQribZoPKpb5z1NW/QYm3XSR//Xr8BeEXU49Lc/mQmpmVVG5jPUVrpc2iptup/0WMrY9mzas0fxH+TjYvG2CA==} + /rollup@4.6.1: + resolution: {integrity: sha512-jZHaZotEHQaHLgKr8JnQiDT1rmatjgKlMekyksz+yk9jt/8z9quNjnKNRoaM0wd9DC2QKXjmWWuDYtM3jfF8pQ==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.5.1 - '@rollup/rollup-android-arm64': 4.5.1 - '@rollup/rollup-darwin-arm64': 4.5.1 - '@rollup/rollup-darwin-x64': 4.5.1 - '@rollup/rollup-linux-arm-gnueabihf': 4.5.1 - '@rollup/rollup-linux-arm64-gnu': 4.5.1 - '@rollup/rollup-linux-arm64-musl': 4.5.1 - '@rollup/rollup-linux-x64-gnu': 4.5.1 - '@rollup/rollup-linux-x64-musl': 4.5.1 - '@rollup/rollup-win32-arm64-msvc': 4.5.1 - '@rollup/rollup-win32-ia32-msvc': 4.5.1 - '@rollup/rollup-win32-x64-msvc': 4.5.1 + '@rollup/rollup-android-arm-eabi': 4.6.1 + '@rollup/rollup-android-arm64': 4.6.1 + '@rollup/rollup-darwin-arm64': 4.6.1 + '@rollup/rollup-darwin-x64': 4.6.1 + '@rollup/rollup-linux-arm-gnueabihf': 4.6.1 + '@rollup/rollup-linux-arm64-gnu': 4.6.1 + '@rollup/rollup-linux-arm64-musl': 4.6.1 + '@rollup/rollup-linux-x64-gnu': 4.6.1 + '@rollup/rollup-linux-x64-musl': 4.6.1 + '@rollup/rollup-win32-arm64-msvc': 4.6.1 + '@rollup/rollup-win32-ia32-msvc': 4.6.1 + '@rollup/rollup-win32-x64-msvc': 4.6.1 fsevents: 2.3.3 dev: true @@ -3739,8 +3739,8 @@ packages: engines: {node: '>=6'} dev: true - /terser@5.24.0: - resolution: {integrity: sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==} + /terser@5.25.0: + resolution: {integrity: sha512-we0I9SIsfvNUMP77zC9HG+MylwYYsGFSBG8qm+13oud2Yh+O104y614FRbyjpxys16jZwot72Fpi827YvGzuqg==} engines: {node: '>=10'} hasBin: true dependencies: @@ -3800,7 +3800,7 @@ packages: typescript: 5.3.2 dev: true - /ts-node@10.9.1(@types/node@20.9.4)(typescript@5.3.2): + /ts-node@10.9.1(@types/node@20.10.3)(typescript@5.3.2): resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true peerDependencies: @@ -3819,7 +3819,7 @@ packages: '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 20.9.4 + '@types/node': 20.10.3 acorn: 8.11.2 acorn-walk: 8.3.0 arg: 4.1.3 @@ -3844,8 +3844,8 @@ packages: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} dev: true - /tsx@4.4.0: - resolution: {integrity: sha512-4fwcEjRUxW20ciSaMB8zkpGwCPxuRGnadDuj/pBk5S9uT29zvWz15PK36GrKJo45mSJomDxVejZ73c6lr3811Q==} + /tsx@4.6.2: + resolution: {integrity: sha512-QPpBdJo+ZDtqZgAnq86iY/PD2KYCUPSUGIunHdGwyII99GKH+f3z3FZ8XNFLSGQIA4I365ui8wnQpl8OKLqcsg==} engines: {node: '>=18.0.0'} hasBin: true dependencies: diff --git a/test/BooleanTest.mts b/test/BooleanTest.mts index 9250fc7..8ae1b6d 100644 --- a/test/BooleanTest.mts +++ b/test/BooleanTest.mts @@ -10,9 +10,9 @@ import { requireThat } from "../src/index.mjs"; import {TestGlobalConfiguration} from "./TestGlobalConfiguration.mjs"; -import {TestCompiler} from "../scripts/TestCompiler.mjs"; +import {TestCompiler} from "../build/TestCompiler.mjs"; import os from "os"; -import {mode} from "../scripts/mode.mjs"; +import {mode} from "../build/mode.mjs"; const globalConfiguration = new TestGlobalConfiguration(TerminalEncoding.NONE); const configuration = new Configuration(globalConfiguration); @@ -58,7 +58,7 @@ suite("BooleanTest", () => { let actual; requireThat(actual, "actual").isBoolean(); - }, RangeError); + }, TypeError); }); test("nullAsBoolean", () => diff --git a/test/MapTest.mts b/test/MapTest.mts index 1821b3c..b6befde 100644 --- a/test/MapTest.mts +++ b/test/MapTest.mts @@ -105,7 +105,7 @@ suite("MapTest", () => { const actual = new Map(); requirements.requireThat(actual as unknown, "actual").isInstanceOf(String); - }, RangeError); + }, TypeError); }); test("isNull_False", () => @@ -114,7 +114,7 @@ suite("MapTest", () => { const actual = new Map(); requirements.requireThat(actual as unknown, "actual").isNull(); - }, RangeError); + }, TypeError); }); test("isNotNull", () => diff --git a/test/ObjectTest.mts b/test/ObjectTest.mts index e131d36..849337b 100644 --- a/test/ObjectTest.mts +++ b/test/ObjectTest.mts @@ -13,10 +13,10 @@ import { TerminalEncoding } from "../src/internal/internal.mjs"; import {Requirements} from "../src/index.mjs"; -import {TestCompiler} from "../scripts/TestCompiler.mjs"; +import {TestCompiler} from "../build/TestCompiler.mjs"; import {TestGlobalConfiguration} from "./TestGlobalConfiguration.mjs"; import * as os from "os"; -import {mode} from "../scripts/mode.mjs"; +import {mode} from "../build/mode.mjs"; const globalConfiguration = new TestGlobalConfiguration(TerminalEncoding.NONE); @@ -167,7 +167,7 @@ suite("ObjectTest", () => { const actual = {}; requirements.requireThat(actual, "actual").isTypeOf("null"); - }, RangeError); + }, TypeError); }); test("isTypeOf_False", () => @@ -176,7 +176,7 @@ suite("ObjectTest", () => { const actual = {}; requirements.requireThat(actual, "actual").isTypeOf("string"); - }, RangeError); + }, TypeError); }); class Person @@ -210,7 +210,7 @@ suite("ObjectTest", () => { const actual = null; requirements.requireThat(actual, "actual").isInstanceOf(String); - }, RangeError); + }, TypeError); }); test("isInstanceOf_expectedIsNull", () => @@ -229,7 +229,7 @@ suite("ObjectTest", () => { const actual = {}; requirements.requireThat(actual as unknown, "actual").isInstanceOf(String); - }, RangeError); + }, TypeError); }); test("isTypeOf_AnonymousFunction", () => @@ -251,7 +251,7 @@ suite("ObjectTest", () => { const actual = 5; requirements.requireThat(actual as unknown, "actual").isInstanceOf(Object); - }, RangeError); + }, TypeError); }); test("isNull", () => @@ -265,7 +265,7 @@ suite("ObjectTest", () => { const actual = {} as object | null; const isNull: null = requirements.requireThat(actual, "actual").isNull().getActual(); - }, RangeError); + }, TypeError); }); test("isNotNull", () => @@ -281,7 +281,7 @@ suite("ObjectTest", () => { const actual = null; requirements.requireThat(actual, "actual").isNotNull(); - }, RangeError); + }, TypeError); }); test("isDefined", () => @@ -297,7 +297,7 @@ suite("ObjectTest", () => let actual; // noinspection JSUnusedAssignment requirements.requireThat(actual, "actual").isDefined(); - }, RangeError); + }, TypeError); }); test("isUndefined", () => @@ -313,7 +313,7 @@ suite("ObjectTest", () => { const actual = 5; requirements.requireThat(actual as unknown, "actual").isUndefined(); - }, RangeError); + }, TypeError); }); test("isArray", () => diff --git a/test/SetTest.mts b/test/SetTest.mts index 2c89f8c..b7fac71 100644 --- a/test/SetTest.mts +++ b/test/SetTest.mts @@ -106,7 +106,7 @@ suite("SetTest", () => { const actual = [1, 2, 3]; requirements.requireThat(actual, "actual").isSet(); - }, RangeError); + }, TypeError); }); test("isNull_False", () => @@ -115,7 +115,7 @@ suite("SetTest", () => { const actual = new Set(); requirements.requireThat(actual, "actual").isNull(); - }, RangeError); + }, TypeError); }); test("isNotNull", () => diff --git a/tsconfig.json b/tsconfig.json index bf2aee6..59c5861 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -10,7 +10,7 @@ "ES2021" ], "module": "Node16", - "moduleResolution": "node16", + "moduleResolution": "Node16", // Fix importing of CommonJS/AMD/UMD modules "esModuleInterop": true, "strict": true, @@ -20,18 +20,16 @@ "sourceMap": true }, "include": [ - "src/**/*.mts", - "test/**/*.mts" + // Files used to generate the target/publish directory + "./src" ], "exclude": [ - "scripts", "node_modules", "target", "./.eslintrc.mjs", - "test/TestGlobalConfiguration.mts" - ], - "typeRoots": [ - "node_modules/@types" + "./build", + "./test", + "./test/TestGlobalConfiguration.mts" ], "declaration": true } \ No newline at end of file