diff --git a/Cargo.lock b/Cargo.lock index 99039db5..64a4918b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -588,7 +588,7 @@ dependencies = [ "opentelemetry_api", "opentelemetry_sdk", "rand", - "rdkafka 0.33.2", + "rdkafka 0.34.0", "rdkafka-sys", "serde", "serde_json", @@ -2602,6 +2602,7 @@ dependencies = [ "rand", "serde", "serde_json", + "strum 0.25.0", "talos_certifier", "talos_suffix", "thiserror", diff --git a/cohort_banking_initiator_js/package-lock.json b/cohort_banking_initiator_js/package-lock.json index 9bd4e6a1..70f5a02e 100644 --- a/cohort_banking_initiator_js/package-lock.json +++ b/cohort_banking_initiator_js/package-lock.json @@ -9,15 +9,14 @@ "version": "1.0.0", "license": "UNLICENSED", "dependencies": { - "@types/pg": "^8.10.2", "cohort_sdk_client": "file:../cohort_sdk_client", - "nodejs-dashboard": "^0.5.1", "pg": "^8.11.3", - "ts-node": "^10.9.1", "winston": "^3.10.0" }, "devDependencies": { "@types/node": "^20.5.1", + "@types/pg": "^8.10.2", + "nodejs-dashboard": "^0.5.1", "typescript": "^5.1.6" } }, @@ -2393,16 +2392,6 @@ "node": ">=0.1.90" } }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "license": "MIT", - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/@dabh/diagnostics": { "version": "2.0.3", "license": "MIT", @@ -2412,47 +2401,14 @@ "kuler": "^2.0.0" } }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "license": "MIT" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "license": "MIT" - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "license": "MIT" - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "license": "MIT" - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.4", - "license": "MIT" - }, "node_modules/@types/node": { "version": "20.5.1", + "dev": true, "license": "MIT" }, "node_modules/@types/pg": { "version": "8.10.2", + "dev": true, "license": "MIT", "dependencies": { "@types/node": "*", @@ -2462,6 +2418,7 @@ }, "node_modules/@types/pg/node_modules/pg-types": { "version": "4.0.1", + "dev": true, "license": "MIT", "dependencies": { "pg-int8": "1.0.1", @@ -2478,6 +2435,7 @@ }, "node_modules/@types/pg/node_modules/postgres-array": { "version": "3.0.2", + "dev": true, "license": "MIT", "engines": { "node": ">=12" @@ -2485,6 +2443,7 @@ }, "node_modules/@types/pg/node_modules/postgres-bytea": { "version": "3.0.0", + "dev": true, "license": "MIT", "dependencies": { "obuf": "~1.1.2" @@ -2495,6 +2454,7 @@ }, "node_modules/@types/pg/node_modules/postgres-date": { "version": "2.0.1", + "dev": true, "license": "MIT", "engines": { "node": ">=12" @@ -2502,6 +2462,7 @@ }, "node_modules/@types/pg/node_modules/postgres-interval": { "version": "3.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=12" @@ -2513,10 +2474,12 @@ }, "node_modules/abbrev": { "version": "1.1.1", + "dev": true, "license": "ISC" }, "node_modules/accepts": { "version": "1.3.8", + "dev": true, "license": "MIT", "dependencies": { "mime-types": "~2.1.34", @@ -2526,29 +2489,14 @@ "node": ">= 0.6" } }, - "node_modules/acorn": { - "version": "8.10.0", - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.2.0", - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/after": { "version": "0.8.2", + "dev": true, "license": "MIT" }, "node_modules/ansi-escapes": { "version": "6.2.0", + "dev": true, "license": "MIT", "dependencies": { "type-fest": "^3.0.0" @@ -2562,6 +2510,7 @@ }, "node_modules/ansi-regex": { "version": "2.1.1", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -2569,6 +2518,7 @@ }, "node_modules/ansi-styles": { "version": "2.2.1", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -2576,6 +2526,7 @@ }, "node_modules/ansi-term": { "version": "0.0.2", + "dev": true, "license": "ISC", "dependencies": { "x256": ">=0.0.1" @@ -2583,14 +2534,12 @@ }, "node_modules/ansicolors": { "version": "0.3.2", - "license": "MIT" - }, - "node_modules/arg": { - "version": "4.1.3", + "dev": true, "license": "MIT" }, "node_modules/arraybuffer.slice": { "version": "0.0.7", + "dev": true, "license": "MIT" }, "node_modules/async": { @@ -2599,16 +2548,19 @@ }, "node_modules/backo2": { "version": "1.0.2", + "dev": true, "license": "MIT" }, "node_modules/base64-arraybuffer": { "version": "0.1.4", + "dev": true, "engines": { "node": ">= 0.6.0" } }, "node_modules/base64id": { "version": "2.0.0", + "dev": true, "license": "MIT", "engines": { "node": "^4.5.0 || >= 5.9" @@ -2616,6 +2568,7 @@ }, "node_modules/blessed": { "version": "0.1.81", + "dev": true, "license": "MIT", "bin": { "blessed": "bin/tput.js" @@ -2626,6 +2579,7 @@ }, "node_modules/blessed-contrib": { "version": "4.11.0", + "dev": true, "license": "MIT", "dependencies": { "ansi-term": ">=0.0.2", @@ -2646,10 +2600,12 @@ }, "node_modules/blob": { "version": "0.0.5", + "dev": true, "license": "MIT" }, "node_modules/blocked": { "version": "1.3.0", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.9.1" @@ -2657,6 +2613,7 @@ }, "node_modules/bresenham": { "version": "0.0.3", + "dev": true, "license": "MIT" }, "node_modules/buffer-writer": { @@ -2668,12 +2625,14 @@ }, "node_modules/buffers": { "version": "0.1.1", + "dev": true, "engines": { "node": ">=0.2.0" } }, "node_modules/cardinal": { "version": "2.1.1", + "dev": true, "license": "MIT", "dependencies": { "ansicolors": "~0.3.2", @@ -2685,6 +2644,7 @@ }, "node_modules/chalk": { "version": "1.1.3", + "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^2.2.1", @@ -2699,10 +2659,12 @@ }, "node_modules/charm": { "version": "0.1.2", + "dev": true, "license": "MIT/X11" }, "node_modules/cli-table3": { "version": "0.6.3", + "dev": true, "license": "MIT", "dependencies": { "string-width": "^4.2.0" @@ -2755,23 +2717,28 @@ }, "node_modules/commander": { "version": "4.1.1", + "dev": true, "license": "MIT", "engines": { "node": ">= 6" } }, "node_modules/component-bind": { - "version": "1.0.0" + "version": "1.0.0", + "dev": true }, "node_modules/component-emitter": { "version": "1.3.0", + "dev": true, "license": "MIT" }, "node_modules/component-inherit": { - "version": "0.0.3" + "version": "0.0.3", + "dev": true }, "node_modules/cookie": { "version": "0.4.2", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -2779,14 +2746,12 @@ }, "node_modules/core-util-is": { "version": "1.0.3", - "license": "MIT" - }, - "node_modules/create-require": { - "version": "1.1.1", + "dev": true, "license": "MIT" }, "node_modules/cross-spawn": { "version": "7.0.3", + "dev": true, "license": "MIT", "dependencies": { "path-key": "^3.1.0", @@ -2799,24 +2764,20 @@ }, "node_modules/debug": { "version": "4.1.1", + "dev": true, "license": "MIT", "dependencies": { "ms": "^2.1.1" } }, - "node_modules/diff": { - "version": "4.0.2", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.3.1" - } - }, "node_modules/drawille-blessed-contrib": { "version": "1.0.0", + "dev": true, "license": "MIT" }, "node_modules/drawille-canvas-blessed-contrib": { "version": "0.1.3", + "dev": true, "license": "MIT", "dependencies": { "ansi-term": ">=0.0.2", @@ -2828,6 +2789,7 @@ }, "node_modules/emoji-regex": { "version": "8.0.0", + "dev": true, "license": "MIT" }, "node_modules/enabled": { @@ -2836,6 +2798,7 @@ }, "node_modules/engine.io": { "version": "3.6.1", + "dev": true, "license": "MIT", "dependencies": { "accepts": "~1.3.4", @@ -2851,6 +2814,7 @@ }, "node_modules/engine.io-client": { "version": "3.5.3", + "dev": true, "license": "MIT", "dependencies": { "component-emitter": "~1.3.0", @@ -2868,6 +2832,7 @@ }, "node_modules/engine.io-client/node_modules/debug": { "version": "3.1.0", + "dev": true, "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -2875,10 +2840,12 @@ }, "node_modules/engine.io-client/node_modules/ms": { "version": "2.0.0", + "dev": true, "license": "MIT" }, "node_modules/engine.io-parser": { "version": "2.2.1", + "dev": true, "license": "MIT", "dependencies": { "after": "0.8.2", @@ -2890,6 +2857,7 @@ }, "node_modules/escape-string-regexp": { "version": "1.0.5", + "dev": true, "license": "MIT", "engines": { "node": ">=0.8.0" @@ -2897,6 +2865,7 @@ }, "node_modules/esprima": { "version": "4.0.1", + "dev": true, "license": "BSD-2-Clause", "bin": { "esparse": "bin/esparse.js", @@ -2908,12 +2877,14 @@ }, "node_modules/event-stream": { "version": "0.9.8", + "dev": true, "dependencies": { "optimist": "0.2" } }, "node_modules/event-stream/node_modules/optimist": { "version": "0.2.8", + "dev": true, "license": "MIT/X11", "dependencies": { "wordwrap": ">=0.0.1 <0.1.0" @@ -2929,10 +2900,12 @@ }, "node_modules/gl-matrix": { "version": "2.8.1", + "dev": true, "license": "MIT" }, "node_modules/has-ansi": { "version": "2.0.0", + "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^2.0.0" @@ -2943,6 +2916,7 @@ }, "node_modules/has-binary2": { "version": "1.0.3", + "dev": true, "license": "MIT", "dependencies": { "isarray": "2.0.1" @@ -2950,10 +2924,12 @@ }, "node_modules/has-cors": { "version": "1.1.0", + "dev": true, "license": "MIT" }, "node_modules/has-flag": { "version": "4.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -2961,10 +2937,12 @@ }, "node_modules/here": { "version": "0.0.2", + "dev": true, "license": "MIT" }, "node_modules/indexof": { - "version": "0.0.1" + "version": "0.0.1", + "dev": true }, "node_modules/inherits": { "version": "2.0.4", @@ -2976,6 +2954,7 @@ }, "node_modules/is-fullwidth-code-point": { "version": "3.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -2993,14 +2972,17 @@ }, "node_modules/isarray": { "version": "2.0.1", + "dev": true, "license": "MIT" }, "node_modules/isexe": { "version": "2.0.0", + "dev": true, "license": "ISC" }, "node_modules/jsonschema": { "version": "1.4.1", + "dev": true, "license": "MIT", "engines": { "node": "*" @@ -3012,6 +2994,7 @@ }, "node_modules/lodash": { "version": "4.17.21", + "dev": true, "license": "MIT" }, "node_modules/logform": { @@ -3026,12 +3009,9 @@ "triple-beam": "^1.3.0" } }, - "node_modules/make-error": { - "version": "1.3.6", - "license": "ISC" - }, "node_modules/map-canvas": { "version": "0.1.5", + "dev": true, "license": "ISC", "dependencies": { "drawille-canvas-blessed-contrib": ">=0.0.1", @@ -3040,6 +3020,7 @@ }, "node_modules/marked": { "version": "4.3.0", + "dev": true, "license": "MIT", "bin": { "marked": "bin/marked.js" @@ -3050,6 +3031,7 @@ }, "node_modules/marked-terminal": { "version": "5.2.0", + "dev": true, "license": "MIT", "dependencies": { "ansi-escapes": "^6.2.0", @@ -3068,6 +3050,7 @@ }, "node_modules/marked-terminal/node_modules/chalk": { "version": "5.3.0", + "dev": true, "license": "MIT", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" @@ -3078,6 +3061,7 @@ }, "node_modules/memory-streams": { "version": "0.1.3", + "dev": true, "license": "MIT", "dependencies": { "readable-stream": "~1.0.2" @@ -3085,10 +3069,12 @@ }, "node_modules/memory-streams/node_modules/isarray": { "version": "0.0.1", + "dev": true, "license": "MIT" }, "node_modules/memory-streams/node_modules/readable-stream": { "version": "1.0.34", + "dev": true, "license": "MIT", "dependencies": { "core-util-is": "~1.0.0", @@ -3099,16 +3085,19 @@ }, "node_modules/memory-streams/node_modules/string_decoder": { "version": "0.10.31", + "dev": true, "license": "MIT" }, "node_modules/memorystream": { "version": "0.3.1", + "dev": true, "engines": { "node": ">= 0.10.0" } }, "node_modules/mime-db": { "version": "1.52.0", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -3116,6 +3105,7 @@ }, "node_modules/mime-types": { "version": "2.1.35", + "dev": true, "license": "MIT", "dependencies": { "mime-db": "1.52.0" @@ -3130,6 +3120,7 @@ }, "node_modules/negotiator": { "version": "0.6.3", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -3137,6 +3128,7 @@ }, "node_modules/node-emoji": { "version": "1.11.0", + "dev": true, "license": "MIT", "dependencies": { "lodash": "^4.17.21" @@ -3144,6 +3136,7 @@ }, "node_modules/nodejs-dashboard": { "version": "0.5.1", + "dev": true, "license": "MIT", "dependencies": { "blessed": "^0.1.81", @@ -3167,6 +3160,7 @@ }, "node_modules/nopt": { "version": "2.1.2", + "dev": true, "license": "MIT", "dependencies": { "abbrev": "1" @@ -3177,6 +3171,7 @@ }, "node_modules/obuf": { "version": "1.1.2", + "dev": true, "license": "MIT" }, "node_modules/one-time": { @@ -3188,6 +3183,7 @@ }, "node_modules/optimist": { "version": "0.3.7", + "dev": true, "license": "MIT/X11", "dependencies": { "wordwrap": "~0.0.2" @@ -3199,14 +3195,17 @@ }, "node_modules/parseqs": { "version": "0.0.6", + "dev": true, "license": "MIT" }, "node_modules/parseuri": { "version": "0.0.6", + "dev": true, "license": "MIT" }, "node_modules/path-key": { "version": "3.1.1", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -3257,6 +3256,7 @@ }, "node_modules/pg-numeric": { "version": "1.0.2", + "dev": true, "license": "ISC", "engines": { "node": ">=4" @@ -3296,6 +3296,7 @@ }, "node_modules/picture-tuber": { "version": "1.0.2", + "dev": true, "license": "MIT", "dependencies": { "buffers": "~0.1.1", @@ -3314,6 +3315,7 @@ }, "node_modules/pidusage": { "version": "2.0.21", + "dev": true, "license": "MIT", "dependencies": { "safe-buffer": "^5.2.1" @@ -3323,7 +3325,8 @@ } }, "node_modules/png-js": { - "version": "0.1.1" + "version": "0.1.1", + "dev": true }, "node_modules/postgres-array": { "version": "2.0.0", @@ -3358,10 +3361,12 @@ }, "node_modules/postgres-range": { "version": "1.1.3", + "dev": true, "license": "MIT" }, "node_modules/pretty-bytes": { "version": "5.6.0", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -3384,6 +3389,7 @@ }, "node_modules/redeyed": { "version": "2.1.1", + "dev": true, "license": "MIT", "dependencies": { "esprima": "~4.0.0" @@ -3416,10 +3422,12 @@ }, "node_modules/sax": { "version": "1.2.4", + "dev": true, "license": "ISC" }, "node_modules/shebang-command": { "version": "2.0.0", + "dev": true, "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" @@ -3430,6 +3438,7 @@ }, "node_modules/shebang-regex": { "version": "3.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -3444,6 +3453,7 @@ }, "node_modules/socket.io": { "version": "2.5.0", + "dev": true, "license": "MIT", "dependencies": { "debug": "~4.1.0", @@ -3456,10 +3466,12 @@ }, "node_modules/socket.io-adapter": { "version": "1.1.2", + "dev": true, "license": "MIT" }, "node_modules/socket.io-client": { "version": "2.5.0", + "dev": true, "license": "MIT", "dependencies": { "backo2": "1.0.2", @@ -3477,6 +3489,7 @@ }, "node_modules/socket.io-client/node_modules/debug": { "version": "3.1.0", + "dev": true, "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -3484,10 +3497,12 @@ }, "node_modules/socket.io-client/node_modules/ms": { "version": "2.0.0", + "dev": true, "license": "MIT" }, "node_modules/socket.io-client/node_modules/socket.io-parser": { "version": "3.3.3", + "dev": true, "license": "MIT", "dependencies": { "component-emitter": "~1.3.0", @@ -3497,6 +3512,7 @@ }, "node_modules/socket.io-parser": { "version": "3.4.3", + "dev": true, "license": "MIT", "dependencies": { "component-emitter": "1.2.1", @@ -3509,10 +3525,12 @@ }, "node_modules/socket.io-parser/node_modules/component-emitter": { "version": "1.2.1", + "dev": true, "license": "MIT" }, "node_modules/sparkline": { "version": "0.1.2", + "dev": true, "dependencies": { "here": "0.0.2", "nopt": "~2.1.2" @@ -3547,6 +3565,7 @@ }, "node_modules/string-width": { "version": "4.2.3", + "dev": true, "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", @@ -3559,6 +3578,7 @@ }, "node_modules/string-width/node_modules/ansi-regex": { "version": "5.0.1", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -3566,6 +3586,7 @@ }, "node_modules/string-width/node_modules/strip-ansi": { "version": "6.0.1", + "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" @@ -3576,6 +3597,7 @@ }, "node_modules/strip-ansi": { "version": "3.0.1", + "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^2.0.0" @@ -3586,6 +3608,7 @@ }, "node_modules/supports-color": { "version": "2.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=0.8.0" @@ -3593,6 +3616,7 @@ }, "node_modules/supports-hyperlinks": { "version": "2.3.0", + "dev": true, "license": "MIT", "dependencies": { "has-flag": "^4.0.0", @@ -3604,6 +3628,7 @@ }, "node_modules/supports-hyperlinks/node_modules/supports-color": { "version": "7.2.0", + "dev": true, "license": "MIT", "dependencies": { "has-flag": "^4.0.0" @@ -3613,14 +3638,16 @@ } }, "node_modules/term-canvas": { - "version": "0.0.5" + "version": "0.0.5", + "dev": true }, "node_modules/text-hex": { "version": "1.0.0", "license": "MIT" }, "node_modules/to-array": { - "version": "0.1.4" + "version": "0.1.4", + "dev": true }, "node_modules/triple-beam": { "version": "1.4.1", @@ -3629,49 +3656,9 @@ "node": ">= 14.0.0" } }, - "node_modules/ts-node": { - "version": "10.9.1", - "license": "MIT", - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } - } - }, "node_modules/type-fest": { "version": "3.13.1", + "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=14.16" @@ -3682,6 +3669,7 @@ }, "node_modules/typescript": { "version": "5.1.6", + "dev": true, "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -3695,12 +3683,9 @@ "version": "1.0.2", "license": "MIT" }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "license": "MIT" - }, "node_modules/which": { "version": "2.0.2", + "dev": true, "license": "ISC", "dependencies": { "isexe": "^2.0.0" @@ -3746,6 +3731,7 @@ }, "node_modules/wordwrap": { "version": "0.0.3", + "dev": true, "license": "MIT", "engines": { "node": ">=0.4.0" @@ -3753,6 +3739,7 @@ }, "node_modules/ws": { "version": "7.4.6", + "dev": true, "license": "MIT", "engines": { "node": ">=8.3.0" @@ -3772,6 +3759,7 @@ }, "node_modules/x256": { "version": "0.0.2", + "dev": true, "license": "MIT", "engines": { "node": ">=0.4.0" @@ -3779,6 +3767,7 @@ }, "node_modules/xml2js": { "version": "0.4.23", + "dev": true, "license": "MIT", "dependencies": { "sax": ">=0.6.0", @@ -3790,6 +3779,7 @@ }, "node_modules/xmlbuilder": { "version": "11.0.1", + "dev": true, "license": "MIT", "engines": { "node": ">=4.0" @@ -3797,6 +3787,7 @@ }, "node_modules/xmlhttprequest-ssl": { "version": "1.6.3", + "dev": true, "engines": { "node": ">=0.4.0" } @@ -3810,26 +3801,14 @@ }, "node_modules/yeast": { "version": "0.1.2", + "dev": true, "license": "MIT" - }, - "node_modules/yn": { - "version": "3.1.1", - "license": "MIT", - "engines": { - "node": ">=6" - } } }, "dependencies": { "@colors/colors": { "version": "1.5.0" }, - "@cspotcode/source-map-support": { - "version": "0.8.1", - "requires": { - "@jridgewell/trace-mapping": "0.3.9" - } - }, "@dabh/diagnostics": { "version": "2.0.3", "requires": { @@ -3838,36 +3817,13 @@ "kuler": "^2.0.0" } }, - "@jridgewell/resolve-uri": { - "version": "3.1.1" - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.15" - }, - "@jridgewell/trace-mapping": { - "version": "0.3.9", - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@tsconfig/node10": { - "version": "1.0.9" - }, - "@tsconfig/node12": { - "version": "1.0.11" - }, - "@tsconfig/node14": { - "version": "1.0.3" - }, - "@tsconfig/node16": { - "version": "1.0.4" - }, "@types/node": { - "version": "20.5.1" + "version": "20.5.1", + "dev": true }, "@types/pg": { "version": "8.10.2", + "dev": true, "requires": { "@types/node": "*", "pg-protocol": "*", @@ -3876,6 +3832,7 @@ "dependencies": { "pg-types": { "version": "4.0.1", + "dev": true, "requires": { "pg-int8": "1.0.1", "pg-numeric": "1.0.2", @@ -3887,19 +3844,23 @@ } }, "postgres-array": { - "version": "3.0.2" + "version": "3.0.2", + "dev": true }, "postgres-bytea": { "version": "3.0.0", + "dev": true, "requires": { "obuf": "~1.1.2" } }, "postgres-date": { - "version": "2.0.1" + "version": "2.0.1", + "dev": true }, "postgres-interval": { - "version": "3.0.0" + "version": "3.0.0", + "dev": true } } }, @@ -3907,68 +3868,73 @@ "version": "1.3.2" }, "abbrev": { - "version": "1.1.1" + "version": "1.1.1", + "dev": true }, "accepts": { "version": "1.3.8", + "dev": true, "requires": { "mime-types": "~2.1.34", "negotiator": "0.6.3" } }, - "acorn": { - "version": "8.10.0" - }, - "acorn-walk": { - "version": "8.2.0" - }, "after": { - "version": "0.8.2" + "version": "0.8.2", + "dev": true }, "ansi-escapes": { "version": "6.2.0", + "dev": true, "requires": { "type-fest": "^3.0.0" } }, "ansi-regex": { - "version": "2.1.1" + "version": "2.1.1", + "dev": true }, "ansi-styles": { - "version": "2.2.1" + "version": "2.2.1", + "dev": true }, "ansi-term": { "version": "0.0.2", + "dev": true, "requires": { "x256": ">=0.0.1" } }, "ansicolors": { - "version": "0.3.2" - }, - "arg": { - "version": "4.1.3" + "version": "0.3.2", + "dev": true }, "arraybuffer.slice": { - "version": "0.0.7" + "version": "0.0.7", + "dev": true }, "async": { "version": "3.2.4" }, "backo2": { - "version": "1.0.2" + "version": "1.0.2", + "dev": true }, "base64-arraybuffer": { - "version": "0.1.4" + "version": "0.1.4", + "dev": true }, "base64id": { - "version": "2.0.0" + "version": "2.0.0", + "dev": true }, "blessed": { - "version": "0.1.81" + "version": "0.1.81", + "dev": true }, "blessed-contrib": { "version": "4.11.0", + "dev": true, "requires": { "ansi-term": ">=0.0.2", "chalk": "^1.1.0", @@ -3987,22 +3953,27 @@ } }, "blob": { - "version": "0.0.5" + "version": "0.0.5", + "dev": true }, "blocked": { - "version": "1.3.0" + "version": "1.3.0", + "dev": true }, "bresenham": { - "version": "0.0.3" + "version": "0.0.3", + "dev": true }, "buffer-writer": { "version": "2.0.0" }, "buffers": { - "version": "0.1.1" + "version": "0.1.1", + "dev": true }, "cardinal": { "version": "2.1.1", + "dev": true, "requires": { "ansicolors": "~0.3.2", "redeyed": "~2.1.0" @@ -4010,6 +3981,7 @@ }, "chalk": { "version": "1.1.3", + "dev": true, "requires": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -4019,10 +3991,12 @@ } }, "charm": { - "version": "0.1.2" + "version": "0.1.2", + "dev": true }, "cli-table3": { "version": "0.6.3", + "dev": true, "requires": { "@colors/colors": "1.5.0", "string-width": "^4.2.0" @@ -5446,28 +5420,32 @@ } }, "commander": { - "version": "4.1.1" + "version": "4.1.1", + "dev": true }, "component-bind": { - "version": "1.0.0" + "version": "1.0.0", + "dev": true }, "component-emitter": { - "version": "1.3.0" + "version": "1.3.0", + "dev": true }, "component-inherit": { - "version": "0.0.3" + "version": "0.0.3", + "dev": true }, "cookie": { - "version": "0.4.2" + "version": "0.4.2", + "dev": true }, "core-util-is": { - "version": "1.0.3" - }, - "create-require": { - "version": "1.1.1" + "version": "1.0.3", + "dev": true }, "cross-spawn": { "version": "7.0.3", + "dev": true, "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -5476,18 +5454,18 @@ }, "debug": { "version": "4.1.1", + "dev": true, "requires": { "ms": "^2.1.1" } }, - "diff": { - "version": "4.0.2" - }, "drawille-blessed-contrib": { - "version": "1.0.0" + "version": "1.0.0", + "dev": true }, "drawille-canvas-blessed-contrib": { "version": "0.1.3", + "dev": true, "requires": { "ansi-term": ">=0.0.2", "bresenham": "0.0.3", @@ -5497,13 +5475,15 @@ } }, "emoji-regex": { - "version": "8.0.0" + "version": "8.0.0", + "dev": true }, "enabled": { "version": "2.0.0" }, "engine.io": { "version": "3.6.1", + "dev": true, "requires": { "accepts": "~1.3.4", "base64id": "2.0.0", @@ -5515,6 +5495,7 @@ }, "engine.io-client": { "version": "3.5.3", + "dev": true, "requires": { "component-emitter": "~1.3.0", "component-inherit": "0.0.3", @@ -5531,17 +5512,20 @@ "dependencies": { "debug": { "version": "3.1.0", + "dev": true, "requires": { "ms": "2.0.0" } }, "ms": { - "version": "2.0.0" + "version": "2.0.0", + "dev": true } } }, "engine.io-parser": { "version": "2.2.1", + "dev": true, "requires": { "after": "0.8.2", "arraybuffer.slice": "~0.0.7", @@ -5551,19 +5535,23 @@ } }, "escape-string-regexp": { - "version": "1.0.5" + "version": "1.0.5", + "dev": true }, "esprima": { - "version": "4.0.1" + "version": "4.0.1", + "dev": true }, "event-stream": { "version": "0.9.8", + "dev": true, "requires": { "optimist": "0.2" }, "dependencies": { "optimist": { "version": "0.2.8", + "dev": true, "requires": { "wordwrap": ">=0.0.1 <0.1.0" } @@ -5577,31 +5565,38 @@ "version": "1.1.0" }, "gl-matrix": { - "version": "2.8.1" + "version": "2.8.1", + "dev": true }, "has-ansi": { "version": "2.0.0", + "dev": true, "requires": { "ansi-regex": "^2.0.0" } }, "has-binary2": { "version": "1.0.3", + "dev": true, "requires": { "isarray": "2.0.1" } }, "has-cors": { - "version": "1.1.0" + "version": "1.1.0", + "dev": true }, "has-flag": { - "version": "4.0.0" + "version": "4.0.0", + "dev": true }, "here": { - "version": "0.0.2" + "version": "0.0.2", + "dev": true }, "indexof": { - "version": "0.0.1" + "version": "0.0.1", + "dev": true }, "inherits": { "version": "2.0.4" @@ -5610,25 +5605,30 @@ "version": "0.3.2" }, "is-fullwidth-code-point": { - "version": "3.0.0" + "version": "3.0.0", + "dev": true }, "is-stream": { "version": "2.0.1" }, "isarray": { - "version": "2.0.1" + "version": "2.0.1", + "dev": true }, "isexe": { - "version": "2.0.0" + "version": "2.0.0", + "dev": true }, "jsonschema": { - "version": "1.4.1" + "version": "1.4.1", + "dev": true }, "kuler": { "version": "2.0.0" }, "lodash": { - "version": "4.17.21" + "version": "4.17.21", + "dev": true }, "logform": { "version": "2.5.1", @@ -5641,21 +5641,21 @@ "triple-beam": "^1.3.0" } }, - "make-error": { - "version": "1.3.6" - }, "map-canvas": { "version": "0.1.5", + "dev": true, "requires": { "drawille-canvas-blessed-contrib": ">=0.0.1", "xml2js": "^0.4.5" } }, "marked": { - "version": "4.3.0" + "version": "4.3.0", + "dev": true }, "marked-terminal": { "version": "5.2.0", + "dev": true, "requires": { "ansi-escapes": "^6.2.0", "cardinal": "^2.1.1", @@ -5666,21 +5666,25 @@ }, "dependencies": { "chalk": { - "version": "5.3.0" + "version": "5.3.0", + "dev": true } } }, "memory-streams": { "version": "0.1.3", + "dev": true, "requires": { "readable-stream": "~1.0.2" }, "dependencies": { "isarray": { - "version": "0.0.1" + "version": "0.0.1", + "dev": true }, "readable-stream": { "version": "1.0.34", + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.1", @@ -5689,18 +5693,22 @@ } }, "string_decoder": { - "version": "0.10.31" + "version": "0.10.31", + "dev": true } } }, "memorystream": { - "version": "0.3.1" + "version": "0.3.1", + "dev": true }, "mime-db": { - "version": "1.52.0" + "version": "1.52.0", + "dev": true }, "mime-types": { "version": "2.1.35", + "dev": true, "requires": { "mime-db": "1.52.0" } @@ -5709,16 +5717,19 @@ "version": "2.1.3" }, "negotiator": { - "version": "0.6.3" + "version": "0.6.3", + "dev": true }, "node-emoji": { "version": "1.11.0", + "dev": true, "requires": { "lodash": "^4.17.21" } }, "nodejs-dashboard": { "version": "0.5.1", + "dev": true, "requires": { "blessed": "^0.1.81", "blessed-contrib": "^4.8.18", @@ -5735,12 +5746,14 @@ }, "nopt": { "version": "2.1.2", + "dev": true, "requires": { "abbrev": "1" } }, "obuf": { - "version": "1.1.2" + "version": "1.1.2", + "dev": true }, "one-time": { "version": "1.0.0", @@ -5750,6 +5763,7 @@ }, "optimist": { "version": "0.3.7", + "dev": true, "requires": { "wordwrap": "~0.0.2" } @@ -5758,13 +5772,16 @@ "version": "1.0.0" }, "parseqs": { - "version": "0.0.6" + "version": "0.0.6", + "dev": true }, "parseuri": { - "version": "0.0.6" + "version": "0.0.6", + "dev": true }, "path-key": { - "version": "3.1.1" + "version": "3.1.1", + "dev": true }, "pg": { "version": "8.11.3", @@ -5790,7 +5807,8 @@ "version": "1.0.1" }, "pg-numeric": { - "version": "1.0.2" + "version": "1.0.2", + "dev": true }, "pg-pool": { "version": "3.6.1", @@ -5817,6 +5835,7 @@ }, "picture-tuber": { "version": "1.0.2", + "dev": true, "requires": { "buffers": "~0.1.1", "charm": "~0.1.0", @@ -5828,12 +5847,14 @@ }, "pidusage": { "version": "2.0.21", + "dev": true, "requires": { "safe-buffer": "^5.2.1" } }, "png-js": { - "version": "0.1.1" + "version": "0.1.1", + "dev": true }, "postgres-array": { "version": "2.0.0" @@ -5851,10 +5872,12 @@ } }, "postgres-range": { - "version": "1.1.3" + "version": "1.1.3", + "dev": true }, "pretty-bytes": { - "version": "5.6.0" + "version": "5.6.0", + "dev": true }, "readable-stream": { "version": "3.6.2", @@ -5866,6 +5889,7 @@ }, "redeyed": { "version": "2.1.1", + "dev": true, "requires": { "esprima": "~4.0.0" } @@ -5877,16 +5901,19 @@ "version": "2.4.3" }, "sax": { - "version": "1.2.4" + "version": "1.2.4", + "dev": true }, "shebang-command": { "version": "2.0.0", + "dev": true, "requires": { "shebang-regex": "^3.0.0" } }, "shebang-regex": { - "version": "3.0.0" + "version": "3.0.0", + "dev": true }, "simple-swizzle": { "version": "0.2.2", @@ -5896,6 +5923,7 @@ }, "socket.io": { "version": "2.5.0", + "dev": true, "requires": { "debug": "~4.1.0", "engine.io": "~3.6.0", @@ -5906,10 +5934,12 @@ } }, "socket.io-adapter": { - "version": "1.1.2" + "version": "1.1.2", + "dev": true }, "socket.io-client": { "version": "2.5.0", + "dev": true, "requires": { "backo2": "1.0.2", "component-bind": "1.0.0", @@ -5926,15 +5956,18 @@ "dependencies": { "debug": { "version": "3.1.0", + "dev": true, "requires": { "ms": "2.0.0" } }, "ms": { - "version": "2.0.0" + "version": "2.0.0", + "dev": true }, "socket.io-parser": { "version": "3.3.3", + "dev": true, "requires": { "component-emitter": "~1.3.0", "debug": "~3.1.0", @@ -5945,6 +5978,7 @@ }, "socket.io-parser": { "version": "3.4.3", + "dev": true, "requires": { "component-emitter": "1.2.1", "debug": "~4.1.0", @@ -5952,12 +5986,14 @@ }, "dependencies": { "component-emitter": { - "version": "1.2.1" + "version": "1.2.1", + "dev": true } } }, "sparkline": { "version": "0.1.2", + "dev": true, "requires": { "here": "0.0.2", "nopt": "~2.1.2" @@ -5977,6 +6013,7 @@ }, "string-width": { "version": "4.2.3", + "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -5984,10 +6021,12 @@ }, "dependencies": { "ansi-regex": { - "version": "5.0.1" + "version": "5.0.1", + "dev": true }, "strip-ansi": { "version": "6.0.1", + "dev": true, "requires": { "ansi-regex": "^5.0.1" } @@ -5996,15 +6035,18 @@ }, "strip-ansi": { "version": "3.0.1", + "dev": true, "requires": { "ansi-regex": "^2.0.0" } }, "supports-color": { - "version": "2.0.0" + "version": "2.0.0", + "dev": true }, "supports-hyperlinks": { "version": "2.3.0", + "dev": true, "requires": { "has-flag": "^4.0.0", "supports-color": "^7.0.0" @@ -6012,6 +6054,7 @@ "dependencies": { "supports-color": { "version": "7.2.0", + "dev": true, "requires": { "has-flag": "^4.0.0" } @@ -6019,49 +6062,33 @@ } }, "term-canvas": { - "version": "0.0.5" + "version": "0.0.5", + "dev": true }, "text-hex": { "version": "1.0.0" }, "to-array": { - "version": "0.1.4" + "version": "0.1.4", + "dev": true }, "triple-beam": { "version": "1.4.1" }, - "ts-node": { - "version": "10.9.1", - "requires": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - } - }, "type-fest": { - "version": "3.13.1" + "version": "3.13.1", + "dev": true }, "typescript": { - "version": "5.1.6" + "version": "5.1.6", + "dev": true }, "util-deprecate": { "version": "1.0.2" }, - "v8-compile-cache-lib": { - "version": "3.0.1" - }, "which": { "version": "2.0.2", + "dev": true, "requires": { "isexe": "^2.0.0" } @@ -6091,36 +6118,40 @@ } }, "wordwrap": { - "version": "0.0.3" + "version": "0.0.3", + "dev": true }, "ws": { "version": "7.4.6", + "dev": true, "requires": {} }, "x256": { - "version": "0.0.2" + "version": "0.0.2", + "dev": true }, "xml2js": { "version": "0.4.23", + "dev": true, "requires": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" } }, "xmlbuilder": { - "version": "11.0.1" + "version": "11.0.1", + "dev": true }, "xmlhttprequest-ssl": { - "version": "1.6.3" + "version": "1.6.3", + "dev": true }, "xtend": { "version": "4.0.2" }, "yeast": { - "version": "0.1.2" - }, - "yn": { - "version": "3.1.1" + "version": "0.1.2", + "dev": true } } } diff --git a/cohort_banking_initiator_js/package.json b/cohort_banking_initiator_js/package.json index b505dc05..951cc6a9 100644 --- a/cohort_banking_initiator_js/package.json +++ b/cohort_banking_initiator_js/package.json @@ -13,14 +13,13 @@ "license": "UNLICENSED", "devDependencies": { "@types/node": "^20.5.1", + "@types/pg": "^8.10.2", + "nodejs-dashboard": "^0.5.1", "typescript": "^5.1.6" }, "dependencies": { - "@types/pg": "^8.10.2", "cohort_sdk_client": "file:../cohort_sdk_client", - "nodejs-dashboard": "^0.5.1", "pg": "^8.11.3", - "ts-node": "^10.9.1", "winston": "^3.10.0" } } diff --git a/cohort_banking_initiator_js/src/main.ts b/cohort_banking_initiator_js/src/main.ts index 1de28b35..c5c7989f 100644 --- a/cohort_banking_initiator_js/src/main.ts +++ b/cohort_banking_initiator_js/src/main.ts @@ -76,14 +76,15 @@ new Promise(async (resolve) => { try { await app.init() } catch (e) { + // this is an example of error parsing console.log(JSON.stringify(e, null, 2)) if (e instanceof TalosSdkError) { const sdkError = e as TalosSdkError if (sdkError.kind == SdkErrorKind.Messaging) { logger.error("Unable to connect to kafka....") } - throw e } + throw e } const _worker = createGeneratorService({ channelName: CHANNEL_NAME, count: params.transactionsCount, rate: params.targetRatePerSecond }) }) diff --git a/cohort_banking_replicator_js/package-lock.json b/cohort_banking_replicator_js/package-lock.json index a28d2fd7..e87dcbc0 100644 --- a/cohort_banking_replicator_js/package-lock.json +++ b/cohort_banking_replicator_js/package-lock.json @@ -9,29 +9,29 @@ "version": "1.0.0", "license": "UNLICENSED", "dependencies": { - "@types/pg": "^8.10.2", - "cohort_sdk_js": "file:../packages/cohort_sdk_js", - "nodejs-dashboard": "^0.5.1", + "cohort_sdk_client": "file:../cohort_sdk_client", "pg": "^8.11.3", - "ts-node": "^10.9.1", "winston": "^3.10.0" }, "devDependencies": { "@types/node": "^20.5.1", + "@types/pg": "^8.10.2", + "nodejs-dashboard": "^0.5.1", "typescript": "^5.1.6" } }, - "../packages/cohort_sdk_js": { - "version": "0.1.13", - "license": "MIT", - "devDependencies": { - "@napi-rs/cli": "^2.14.0", - "ava": "^4.3.3", - "esbuild": "^0.18.0", - "uuid": "^9.0.0" + "../cohort_sdk_client": { + "version": "1.0.0", + "license": "UNLICENSED", + "dependencies": { + "@types/pg": "^8.10.2", + "cohort_sdk_js": "file:../packages/cohort_sdk_js", + "ts-node": "^10.9.1", + "winston": "^3.10.0" }, - "engines": { - "node": ">= 10" + "devDependencies": { + "@types/node": "^20.5.1", + "typescript": "^5.1.6" }, "optionalDependencies": { "cohort_sdk_js-darwin-arm64": "0.0.1", @@ -49,17 +49,6 @@ "node": ">=0.1.90" } }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/@dabh/diagnostics": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", @@ -70,57 +59,17 @@ "kuler": "^2.0.0" } }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==" - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==" - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==" - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==" - }, "node_modules/@types/node": { - "version": "20.5.9", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.9.tgz", - "integrity": "sha512-PcGNd//40kHAS3sTlzKB9C9XL4K0sTup8nbG5lC14kzEteTNuAFh9u5nA0o5TWnSG2r/JNPRXFVcHJIIeRlmqQ==" + "version": "20.6.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.6.2.tgz", + "integrity": "sha512-Y+/1vGBHV/cYk6OI1Na/LHzwnlNCAfU3ZNGrc1LdRe/LAIbdDPTTv/HU3M7yXN448aTVDq3eKRm2cg7iKLb8gw==", + "dev": true }, "node_modules/@types/pg": { "version": "8.10.2", "resolved": "https://registry.npmjs.org/@types/pg/-/pg-8.10.2.tgz", "integrity": "sha512-MKFs9P6nJ+LAeHLU3V0cODEOgyThJ3OAnmOlsZsxux6sfQs3HRXR5bBn7xG5DjckEFhTAxsXi7k7cd0pCMxpJw==", + "dev": true, "dependencies": { "@types/node": "*", "pg-protocol": "*", @@ -128,19 +77,21 @@ } }, "node_modules/@types/triple-beam": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz", - "integrity": "sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==" + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.3.tgz", + "integrity": "sha512-6tOUG+nVHn0cJbVp25JFayS5UE6+xlbcNF9Lo9mU7U0zk3zeUShZied4YEQZjy1JBF043FSkdXw8YkUJuVtB5g==" }, "node_modules/abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, "dependencies": { "mime-types": "~2.1.34", "negotiator": "0.6.3" @@ -149,34 +100,17 @@ "node": ">= 0.6" } }, - "node_modules/acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/after": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", - "integrity": "sha512-QbJ0NTQ/I9DI3uSJA4cbexiwQeRAfjPScqIbSjUDd9TOrcg6pTkdgziesOqxBMBzit8vFCTwrP27t13vFOORRA==" + "integrity": "sha512-QbJ0NTQ/I9DI3uSJA4cbexiwQeRAfjPScqIbSjUDd9TOrcg6pTkdgziesOqxBMBzit8vFCTwrP27t13vFOORRA==", + "dev": true }, "node_modules/ansi-escapes": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.0.tgz", "integrity": "sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==", + "dev": true, "dependencies": { "type-fest": "^3.0.0" }, @@ -191,6 +125,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -199,6 +134,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -207,6 +143,7 @@ "version": "0.0.2", "resolved": "https://registry.npmjs.org/ansi-term/-/ansi-term-0.0.2.tgz", "integrity": "sha512-jLnGE+n8uAjksTJxiWZf/kcUmXq+cRWSl550B9NmQ8YiqaTM+lILcSe5dHdp8QkJPhaOghDjnMKwyYSMjosgAA==", + "dev": true, "dependencies": { "x256": ">=0.0.1" } @@ -214,17 +151,14 @@ "node_modules/ansicolors": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", - "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==" - }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" + "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==", + "dev": true }, "node_modules/arraybuffer.slice": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", - "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==" + "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", + "dev": true }, "node_modules/async": { "version": "3.2.4", @@ -234,12 +168,14 @@ "node_modules/backo2": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA==" + "integrity": "sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA==", + "dev": true }, "node_modules/base64-arraybuffer": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz", "integrity": "sha512-a1eIFi4R9ySrbiMuyTGx5e92uRH5tQY6kArNcFaKBUleIoLjdjBg7Zxm3Mqm3Kmkf27HLR/1fnxX9q8GQ7Iavg==", + "dev": true, "engines": { "node": ">= 0.6.0" } @@ -248,6 +184,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true, "engines": { "node": "^4.5.0 || >= 5.9" } @@ -256,6 +193,7 @@ "version": "0.1.81", "resolved": "https://registry.npmjs.org/blessed/-/blessed-0.1.81.tgz", "integrity": "sha512-LoF5gae+hlmfORcG1M5+5XZi4LBmvlXTzwJWzUlPryN/SJdSflZvROM2TwkT0GMpq7oqT48NRd4GS7BiVBc5OQ==", + "dev": true, "bin": { "blessed": "bin/tput.js" }, @@ -267,6 +205,7 @@ "version": "4.11.0", "resolved": "https://registry.npmjs.org/blessed-contrib/-/blessed-contrib-4.11.0.tgz", "integrity": "sha512-P00Xji3xPp53+FdU9f74WpvnOAn/SS0CKLy4vLAf5Ps7FGDOTY711ruJPZb3/7dpFuP+4i7f4a/ZTZdLlKG9WA==", + "dev": true, "dependencies": { "ansi-term": ">=0.0.2", "chalk": "^1.1.0", @@ -287,12 +226,14 @@ "node_modules/blob": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", - "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==" + "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", + "dev": true }, "node_modules/blocked": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/blocked/-/blocked-1.3.0.tgz", "integrity": "sha512-tAb98b4F01wLnKIjCpp17hheKIKnd7j+SgxwgNHQNjQ+EcvOCRZ1HPVNZt3/XnpMjFymVdIZlBQysi+s7OltLw==", + "dev": true, "engines": { "node": ">= 0.9.1" } @@ -300,7 +241,8 @@ "node_modules/bresenham": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/bresenham/-/bresenham-0.0.3.tgz", - "integrity": "sha512-wbMxoJJM1p3+6G7xEFXYNCJ30h2qkwmVxebkbwIl4OcnWtno5R3UT9VuYLfStlVNAQCmRjkGwjPFdfaPd4iNXw==" + "integrity": "sha512-wbMxoJJM1p3+6G7xEFXYNCJ30h2qkwmVxebkbwIl4OcnWtno5R3UT9VuYLfStlVNAQCmRjkGwjPFdfaPd4iNXw==", + "dev": true }, "node_modules/buffer-writer": { "version": "2.0.0", @@ -314,6 +256,7 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==", + "dev": true, "engines": { "node": ">=0.2.0" } @@ -322,6 +265,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/cardinal/-/cardinal-2.1.1.tgz", "integrity": "sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==", + "dev": true, "dependencies": { "ansicolors": "~0.3.2", "redeyed": "~2.1.0" @@ -334,6 +278,7 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "dev": true, "dependencies": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -348,12 +293,14 @@ "node_modules/charm": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/charm/-/charm-0.1.2.tgz", - "integrity": "sha512-syedaZ9cPe7r3hoQA9twWYKu5AIyCswN5+szkmPBe9ccdLrj4bYaCnLVPTLd2kgVRc7+zoX4tyPgRnFKCj5YjQ==" + "integrity": "sha512-syedaZ9cPe7r3hoQA9twWYKu5AIyCswN5+szkmPBe9ccdLrj4bYaCnLVPTLd2kgVRc7+zoX4tyPgRnFKCj5YjQ==", + "dev": true }, "node_modules/cli-table3": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dev": true, "dependencies": { "string-width": "^4.2.0" }, @@ -364,8 +311,8 @@ "@colors/colors": "1.5.0" } }, - "node_modules/cohort_sdk_js": { - "resolved": "../packages/cohort_sdk_js", + "node_modules/cohort_sdk_client": { + "resolved": "../cohort_sdk_client", "link": true }, "node_modules/color": { @@ -412,6 +359,7 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, "engines": { "node": ">= 6" } @@ -419,22 +367,26 @@ "node_modules/component-bind": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", - "integrity": "sha512-WZveuKPeKAG9qY+FkYDeADzdHyTYdIboXS59ixDeRJL5ZhxpqUnxSOwop4FQjMsiYm3/Or8cegVbpAHNA7pHxw==" + "integrity": "sha512-WZveuKPeKAG9qY+FkYDeADzdHyTYdIboXS59ixDeRJL5ZhxpqUnxSOwop4FQjMsiYm3/Or8cegVbpAHNA7pHxw==", + "dev": true }, "node_modules/component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true }, "node_modules/component-inherit": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", - "integrity": "sha512-w+LhYREhatpVqTESyGFg3NlP6Iu0kEKUHETY9GoZP/pQyW4mHFZuFWRUCIqVPZ36ueVLtoOEZaAqbCF2RDndaA==" + "integrity": "sha512-w+LhYREhatpVqTESyGFg3NlP6Iu0kEKUHETY9GoZP/pQyW4mHFZuFWRUCIqVPZ36ueVLtoOEZaAqbCF2RDndaA==", + "dev": true }, "node_modules/cookie": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "dev": true, "engines": { "node": ">= 0.6" } @@ -442,17 +394,14 @@ "node_modules/core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" - }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -467,27 +416,22 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, "dependencies": { "ms": "^2.1.1" } }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "engines": { - "node": ">=0.3.1" - } - }, "node_modules/drawille-blessed-contrib": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/drawille-blessed-contrib/-/drawille-blessed-contrib-1.0.0.tgz", - "integrity": "sha512-WnHMgf5en/hVOsFhxLI8ZX0qTJmerOsVjIMQmn4cR1eI8nLGu+L7w5ENbul+lZ6w827A3JakCuernES5xbHLzQ==" + "integrity": "sha512-WnHMgf5en/hVOsFhxLI8ZX0qTJmerOsVjIMQmn4cR1eI8nLGu+L7w5ENbul+lZ6w827A3JakCuernES5xbHLzQ==", + "dev": true }, "node_modules/drawille-canvas-blessed-contrib": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/drawille-canvas-blessed-contrib/-/drawille-canvas-blessed-contrib-0.1.3.tgz", "integrity": "sha512-bdDvVJOxlrEoPLifGDPaxIzFh3cD7QH05ePoQ4fwnqfi08ZSxzEhOUpI5Z0/SQMlWgcCQOEtuw0zrwezacXglw==", + "dev": true, "dependencies": { "ansi-term": ">=0.0.2", "bresenham": "0.0.3", @@ -499,7 +443,8 @@ "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true }, "node_modules/enabled": { "version": "2.0.0", @@ -510,6 +455,7 @@ "version": "3.6.1", "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.6.1.tgz", "integrity": "sha512-dfs8EVg/i7QjFsXxn7cCRQ+Wai1G1TlEvHhdYEi80fxn5R1vZ2K661O6v/rezj1FP234SZ14r9CmJke99iYDGg==", + "dev": true, "dependencies": { "accepts": "~1.3.4", "base64id": "2.0.0", @@ -526,6 +472,7 @@ "version": "3.5.3", "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.3.tgz", "integrity": "sha512-qsgyc/CEhJ6cgMUwxRRtOndGVhIu5hpL5tR4umSpmX/MvkFoIxUTM7oFMDQumHNzlNLwSVy6qhstFPoWTf7dOw==", + "dev": true, "dependencies": { "component-emitter": "~1.3.0", "component-inherit": "0.0.3", @@ -544,6 +491,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, "dependencies": { "ms": "2.0.0" } @@ -551,12 +499,14 @@ "node_modules/engine.io-client/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true }, "node_modules/engine.io-parser": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.1.tgz", "integrity": "sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg==", + "dev": true, "dependencies": { "after": "0.8.2", "arraybuffer.slice": "~0.0.7", @@ -569,6 +519,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, "engines": { "node": ">=0.8.0" } @@ -577,6 +528,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" @@ -589,6 +541,7 @@ "version": "0.9.8", "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-0.9.8.tgz", "integrity": "sha512-o5h0Mp1bkoR6B0i7pTCAzRy+VzdsRWH997KQD4Psb0EOPoKEIiaRx/EsOdUl7p1Ktjw7aIWvweI/OY1R9XrlUg==", + "dev": true, "dependencies": { "optimist": "0.2" }, @@ -600,6 +553,7 @@ "version": "0.2.8", "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.2.8.tgz", "integrity": "sha512-Wy7E3cQDpqsTIFyW7m22hSevyTLxw850ahYv7FWsw4G6MIKVTZ8NSA95KBrQ95a4SMsMr1UGUUnwEFKhVaSzIg==", + "dev": true, "dependencies": { "wordwrap": ">=0.0.1 <0.1.0" }, @@ -620,12 +574,14 @@ "node_modules/gl-matrix": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-2.8.1.tgz", - "integrity": "sha512-0YCjVpE3pS5XWlN3J4X7AiAx65+nqAI54LndtVFnQZB6G/FVLkZH8y8V6R3cIoOQR4pUdfwQGd1iwyoXHJ4Qfw==" + "integrity": "sha512-0YCjVpE3pS5XWlN3J4X7AiAx65+nqAI54LndtVFnQZB6G/FVLkZH8y8V6R3cIoOQR4pUdfwQGd1iwyoXHJ4Qfw==", + "dev": true }, "node_modules/has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "dev": true, "dependencies": { "ansi-regex": "^2.0.0" }, @@ -637,6 +593,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", + "dev": true, "dependencies": { "isarray": "2.0.1" } @@ -644,17 +601,20 @@ "node_modules/has-binary2/node_modules/isarray": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==" + "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==", + "dev": true }, "node_modules/has-cors": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", - "integrity": "sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA==" + "integrity": "sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA==", + "dev": true }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, "engines": { "node": ">=8" } @@ -662,12 +622,14 @@ "node_modules/here": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/here/-/here-0.0.2.tgz", - "integrity": "sha512-U7VYImCTcPoY27TSmzoiFsmWLEqQFaYNdpsPb9K0dXJhE6kufUqycaz51oR09CW85dDU9iWyy7At8M+p7hb3NQ==" + "integrity": "sha512-U7VYImCTcPoY27TSmzoiFsmWLEqQFaYNdpsPb9K0dXJhE6kufUqycaz51oR09CW85dDU9iWyy7At8M+p7hb3NQ==", + "dev": true }, "node_modules/indexof": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg==" + "integrity": "sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg==", + "dev": true }, "node_modules/inherits": { "version": "2.0.4", @@ -683,6 +645,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, "engines": { "node": ">=8" } @@ -701,17 +664,20 @@ "node_modules/isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true }, "node_modules/jsonschema": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.1.tgz", "integrity": "sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==", + "dev": true, "engines": { "node": "*" } @@ -724,7 +690,8 @@ "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true }, "node_modules/logform": { "version": "2.5.1", @@ -739,15 +706,11 @@ "triple-beam": "^1.3.0" } }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" - }, "node_modules/map-canvas": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/map-canvas/-/map-canvas-0.1.5.tgz", "integrity": "sha512-f7M3sOuL9+up0NCOZbb1rQpWDLZwR/ftCiNbyscjl9LUUEwrRaoumH4sz6swgs58lF21DQ0hsYOCw5C6Zz7hbg==", + "dev": true, "dependencies": { "drawille-canvas-blessed-contrib": ">=0.0.1", "xml2js": "^0.4.5" @@ -757,6 +720,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", + "dev": true, "bin": { "marked": "bin/marked.js" }, @@ -768,6 +732,7 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/marked-terminal/-/marked-terminal-5.2.0.tgz", "integrity": "sha512-Piv6yNwAQXGFjZSaiNljyNFw7jKDdGrw70FSbtxEyldLsyeuV5ZHm/1wW++kWbrOF1VPnUgYOhB2oLL0ZpnekA==", + "dev": true, "dependencies": { "ansi-escapes": "^6.2.0", "cardinal": "^2.1.1", @@ -787,6 +752,7 @@ "version": "5.3.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" }, @@ -798,6 +764,7 @@ "version": "0.1.3", "resolved": "https://registry.npmjs.org/memory-streams/-/memory-streams-0.1.3.tgz", "integrity": "sha512-qVQ/CjkMyMInPaaRMrwWNDvf6boRZXaT/DbQeMYcCWuXPEBf1v8qChOc9OlEVQp2uOvRXa1Qu30fLmKhY6NipA==", + "dev": true, "dependencies": { "readable-stream": "~1.0.2" } @@ -806,6 +773,7 @@ "version": "0.3.1", "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "dev": true, "engines": { "node": ">= 0.10.0" } @@ -814,6 +782,7 @@ "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, "engines": { "node": ">= 0.6" } @@ -822,6 +791,7 @@ "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, "dependencies": { "mime-db": "1.52.0" }, @@ -838,6 +808,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, "engines": { "node": ">= 0.6" } @@ -846,6 +817,7 @@ "version": "1.11.0", "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", + "dev": true, "dependencies": { "lodash": "^4.17.21" } @@ -854,6 +826,7 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/nodejs-dashboard/-/nodejs-dashboard-0.5.1.tgz", "integrity": "sha512-GLeIl/Uj4X6r+pu9qBRQd7K9GzUyqayaNqWnE2jmBYhYgC9ub4QajgCqNs6uuOyDj+YXlukQysaIUmsZp9D8/g==", + "dev": true, "dependencies": { "blessed": "^0.1.81", "blessed-contrib": "^4.8.18", @@ -878,6 +851,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/nopt/-/nopt-2.1.2.tgz", "integrity": "sha512-x8vXm7BZ2jE1Txrxh/hO74HTuYZQEbo8edoRcANgdZ4+PCV+pbjd/xdummkmjjC7LU5EjPzlu8zEq/oxWylnKA==", + "dev": true, "dependencies": { "abbrev": "1" }, @@ -888,7 +862,8 @@ "node_modules/obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true }, "node_modules/one-time": { "version": "1.0.0", @@ -902,6 +877,7 @@ "version": "0.3.7", "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", "integrity": "sha512-TCx0dXQzVtSCg2OgY/bO9hjM9cV4XYx09TVK+s3+FhkjT6LovsLe+pPMzpWf+6yXK/hUizs2gUoTw3jHM0VaTQ==", + "dev": true, "dependencies": { "wordwrap": "~0.0.2" } @@ -914,17 +890,20 @@ "node_modules/parseqs": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz", - "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==" + "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==", + "dev": true }, "node_modules/parseuri": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz", - "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==" + "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==", + "dev": true }, "node_modules/path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, "engines": { "node": ">=8" } @@ -980,6 +959,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/pg-numeric/-/pg-numeric-1.0.2.tgz", "integrity": "sha512-BM/Thnrw5jm2kKLE5uJkXqqExRUY/toLHda65XgFTBTFYZyopbKjBe29Ii3RbkvlsMoFwD+tHeGaCjjv0gHlyw==", + "dev": true, "engines": { "node": ">=4" } @@ -1001,6 +981,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-4.0.1.tgz", "integrity": "sha512-hRCSDuLII9/LE3smys1hRHcu5QGcLs9ggT7I/TCs0IE+2Eesxi9+9RWAAwZ0yaGjxoWICF/YHLOEjydGujoJ+g==", + "dev": true, "dependencies": { "pg-int8": "1.0.1", "pg-numeric": "1.0.2", @@ -1076,6 +1057,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/picture-tuber/-/picture-tuber-1.0.2.tgz", "integrity": "sha512-49/xq+wzbwDeI32aPvwQJldM8pr7dKDRuR76IjztrkmiCkAQDaWFJzkmfVqCHmt/iFoPFhHmI9L0oKhthrTOQw==", + "dev": true, "dependencies": { "buffers": "~0.1.1", "charm": "~0.1.0", @@ -1095,6 +1077,7 @@ "version": "2.0.21", "resolved": "https://registry.npmjs.org/pidusage/-/pidusage-2.0.21.tgz", "integrity": "sha512-cv3xAQos+pugVX+BfXpHsbyz/dLzX+lr44zNMsYiGxUw+kV5sgQCIcLd1z+0vq+KyC7dJ+/ts2PsfgWfSC3WXA==", + "dev": true, "dependencies": { "safe-buffer": "^5.2.1" }, @@ -1105,12 +1088,14 @@ "node_modules/png-js": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/png-js/-/png-js-0.1.1.tgz", - "integrity": "sha512-NTtk2SyfjBm+xYl2/VZJBhFnTQ4kU5qWC7VC4/iGbrgiU4FuB4xC+74erxADYJIqZICOR1HCvRA7EBHkpjTg9g==" + "integrity": "sha512-NTtk2SyfjBm+xYl2/VZJBhFnTQ4kU5qWC7VC4/iGbrgiU4FuB4xC+74erxADYJIqZICOR1HCvRA7EBHkpjTg9g==", + "dev": true }, "node_modules/postgres-array": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-3.0.2.tgz", "integrity": "sha512-6faShkdFugNQCLwucjPcY5ARoW1SlbnrZjmGl0IrrqewpvxvhSLHimCVzqeuULCbG0fQv7Dtk1yDbG3xv7Veog==", + "dev": true, "engines": { "node": ">=12" } @@ -1119,6 +1104,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-3.0.0.tgz", "integrity": "sha512-CNd4jim9RFPkObHSjVHlVrxoVQXz7quwNFpz7RY1okNNme49+sVyiTvTRobiLV548Hx/hb1BG+iE7h9493WzFw==", + "dev": true, "dependencies": { "obuf": "~1.1.2" }, @@ -1130,6 +1116,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/postgres-date/-/postgres-date-2.0.1.tgz", "integrity": "sha512-YtMKdsDt5Ojv1wQRvUhnyDJNSr2dGIC96mQVKz7xufp07nfuFONzdaowrMHjlAzY6GDLd4f+LUHHAAM1h4MdUw==", + "dev": true, "engines": { "node": ">=12" } @@ -1138,6 +1125,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/postgres-interval/-/postgres-interval-3.0.0.tgz", "integrity": "sha512-BSNDnbyZCXSxgA+1f5UU2GmwhoI0aU5yMxRGO8CdFEcY2BQF9xm/7MqKnYoM1nJDk8nONNWDk9WeSmePFhQdlw==", + "dev": true, "engines": { "node": ">=12" } @@ -1145,12 +1133,14 @@ "node_modules/postgres-range": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/postgres-range/-/postgres-range-1.1.3.tgz", - "integrity": "sha512-VdlZoocy5lCP0c/t66xAfclglEapXPCIVhqqJRncYpvbCgImF0w67aPKfbqUMr72tO2k5q0TdTZwCLjPTI6C9g==" + "integrity": "sha512-VdlZoocy5lCP0c/t66xAfclglEapXPCIVhqqJRncYpvbCgImF0w67aPKfbqUMr72tO2k5q0TdTZwCLjPTI6C9g==", + "dev": true }, "node_modules/pretty-bytes": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true, "engines": { "node": ">=6" }, @@ -1162,6 +1152,7 @@ "version": "1.0.34", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", + "dev": true, "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.1", @@ -1173,6 +1164,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/redeyed/-/redeyed-2.1.1.tgz", "integrity": "sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==", + "dev": true, "dependencies": { "esprima": "~4.0.0" } @@ -1207,12 +1199,14 @@ "node_modules/sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, "dependencies": { "shebang-regex": "^3.0.0" }, @@ -1224,6 +1218,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, "engines": { "node": ">=8" } @@ -1240,6 +1235,7 @@ "version": "2.5.0", "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.5.0.tgz", "integrity": "sha512-gGunfS0od3VpwDBpGwVkzSZx6Aqo9uOcf1afJj2cKnKFAoyl16fvhpsUhmUFd4Ldbvl5JvRQed6eQw6oQp6n8w==", + "dev": true, "dependencies": { "debug": "~4.1.0", "engine.io": "~3.6.0", @@ -1252,12 +1248,14 @@ "node_modules/socket.io-adapter": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz", - "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==" + "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==", + "dev": true }, "node_modules/socket.io-client": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.5.0.tgz", "integrity": "sha512-lOO9clmdgssDykiOmVQQitwBAF3I6mYcQAo7hQ7AM6Ny5X7fp8hIJ3HcQs3Rjz4SoggoxA1OgrQyY8EgTbcPYw==", + "dev": true, "dependencies": { "backo2": "1.0.2", "component-bind": "1.0.0", @@ -1276,6 +1274,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, "dependencies": { "ms": "2.0.0" } @@ -1283,17 +1282,20 @@ "node_modules/socket.io-client/node_modules/isarray": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==" + "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==", + "dev": true }, "node_modules/socket.io-client/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true }, "node_modules/socket.io-client/node_modules/socket.io-parser": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.3.tgz", "integrity": "sha512-qOg87q1PMWWTeO01768Yh9ogn7chB9zkKtQnya41Y355S0UmpXgpcrFwAgjYJxu9BdKug5r5e9YtVSeWhKBUZg==", + "dev": true, "dependencies": { "component-emitter": "~1.3.0", "debug": "~3.1.0", @@ -1304,6 +1306,7 @@ "version": "3.4.3", "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.4.3.tgz", "integrity": "sha512-1rE4dZN3kCI/E5wixd393hmbqa78vVpkKmnEJhLeWoS/C5hbFYAbcSfnWoaVH43u9ToUVtzKjguxEZq+1XZfCQ==", + "dev": true, "dependencies": { "component-emitter": "1.2.1", "debug": "~4.1.0", @@ -1316,17 +1319,20 @@ "node_modules/socket.io-parser/node_modules/component-emitter": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA==" + "integrity": "sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA==", + "dev": true }, "node_modules/socket.io-parser/node_modules/isarray": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==" + "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==", + "dev": true }, "node_modules/sparkline": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/sparkline/-/sparkline-0.1.2.tgz", "integrity": "sha512-t//aVOiWt9fi/e22ea1vXVWBDX+gp18y+Ch9sKqmHl828bRfvP2VtfTJVEcgWFBQHd0yDPNQRiHdqzCvbcYSDA==", + "dev": true, "dependencies": { "here": "0.0.2", "nopt": "~2.1.2" @@ -1357,12 +1363,14 @@ "node_modules/string_decoder": { "version": "0.10.31", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true }, "node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -1376,6 +1384,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, "engines": { "node": ">=8" } @@ -1384,6 +1393,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -1395,6 +1405,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, "dependencies": { "ansi-regex": "^2.0.0" }, @@ -1406,6 +1417,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "dev": true, "engines": { "node": ">=0.8.0" } @@ -1414,6 +1426,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, "dependencies": { "has-flag": "^4.0.0", "supports-color": "^7.0.0" @@ -1426,6 +1439,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -1436,7 +1450,8 @@ "node_modules/term-canvas": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/term-canvas/-/term-canvas-0.0.5.tgz", - "integrity": "sha512-eZ3rIWi5yLnKiUcsW8P79fKyooaLmyLWAGqBhFspqMxRNUiB4GmHHk5AzQ4LxvFbJILaXqQZLwbbATLOhCFwkw==" + "integrity": "sha512-eZ3rIWi5yLnKiUcsW8P79fKyooaLmyLWAGqBhFspqMxRNUiB4GmHHk5AzQ4LxvFbJILaXqQZLwbbATLOhCFwkw==", + "dev": true }, "node_modules/text-hex": { "version": "1.0.0", @@ -1446,7 +1461,8 @@ "node_modules/to-array": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", - "integrity": "sha512-LhVdShQD/4Mk4zXNroIQZJC+Ap3zgLcDuwEdcmLv9CCO73NWockQDwyUnW/m8VX/EElfL6FcYx7EeutN4HJA6A==" + "integrity": "sha512-LhVdShQD/4Mk4zXNroIQZJC+Ap3zgLcDuwEdcmLv9CCO73NWockQDwyUnW/m8VX/EElfL6FcYx7EeutN4HJA6A==", + "dev": true }, "node_modules/triple-beam": { "version": "1.4.1", @@ -1456,52 +1472,11 @@ "node": ">= 14.0.0" } }, - "node_modules/ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } - } - }, "node_modules/type-fest": { "version": "3.13.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "dev": true, "engines": { "node": ">=14.16" }, @@ -1513,6 +1488,7 @@ "version": "5.2.2", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", + "dev": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -1526,15 +1502,11 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==" - }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, "dependencies": { "isexe": "^2.0.0" }, @@ -1625,6 +1597,7 @@ "version": "0.0.3", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", "integrity": "sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw==", + "dev": true, "engines": { "node": ">=0.4.0" } @@ -1633,6 +1606,7 @@ "version": "7.4.6", "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "dev": true, "engines": { "node": ">=8.3.0" }, @@ -1653,6 +1627,7 @@ "version": "0.0.2", "resolved": "https://registry.npmjs.org/x256/-/x256-0.0.2.tgz", "integrity": "sha512-ZsIH+sheoF8YG9YG+QKEEIdtqpHRA9FYuD7MqhfyB1kayXU43RUNBFSxBEnF8ywSUxdg+8no4+bPr5qLbyxKgA==", + "dev": true, "engines": { "node": ">=0.4.0" } @@ -1661,6 +1636,7 @@ "version": "0.4.23", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "dev": true, "dependencies": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" @@ -1673,6 +1649,7 @@ "version": "11.0.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "dev": true, "engines": { "node": ">=4.0" } @@ -1681,6 +1658,7 @@ "version": "1.6.3", "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.3.tgz", "integrity": "sha512-3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q==", + "dev": true, "engines": { "node": ">=0.4.0" } @@ -1696,15 +1674,8 @@ "node_modules/yeast": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", - "integrity": "sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg==" - }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "engines": { - "node": ">=6" - } + "integrity": "sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg==", + "dev": true } }, "dependencies": { @@ -1713,14 +1684,6 @@ "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==" }, - "@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "requires": { - "@jridgewell/trace-mapping": "0.3.9" - } - }, "@dabh/diagnostics": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", @@ -1731,54 +1694,17 @@ "kuler": "^2.0.0" } }, - "@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==" - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" - }, - "@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==" - }, - "@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==" - }, - "@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==" - }, - "@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==" - }, "@types/node": { - "version": "20.5.9", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.9.tgz", - "integrity": "sha512-PcGNd//40kHAS3sTlzKB9C9XL4K0sTup8nbG5lC14kzEteTNuAFh9u5nA0o5TWnSG2r/JNPRXFVcHJIIeRlmqQ==" + "version": "20.6.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.6.2.tgz", + "integrity": "sha512-Y+/1vGBHV/cYk6OI1Na/LHzwnlNCAfU3ZNGrc1LdRe/LAIbdDPTTv/HU3M7yXN448aTVDq3eKRm2cg7iKLb8gw==", + "dev": true }, "@types/pg": { "version": "8.10.2", "resolved": "https://registry.npmjs.org/@types/pg/-/pg-8.10.2.tgz", "integrity": "sha512-MKFs9P6nJ+LAeHLU3V0cODEOgyThJ3OAnmOlsZsxux6sfQs3HRXR5bBn7xG5DjckEFhTAxsXi7k7cd0pCMxpJw==", + "dev": true, "requires": { "@types/node": "*", "pg-protocol": "*", @@ -1786,43 +1712,37 @@ } }, "@types/triple-beam": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz", - "integrity": "sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==" + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.3.tgz", + "integrity": "sha512-6tOUG+nVHn0cJbVp25JFayS5UE6+xlbcNF9Lo9mU7U0zk3zeUShZied4YEQZjy1JBF043FSkdXw8YkUJuVtB5g==" }, "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true }, "accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, "requires": { "mime-types": "~2.1.34", "negotiator": "0.6.3" } }, - "acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==" - }, - "acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==" - }, "after": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", - "integrity": "sha512-QbJ0NTQ/I9DI3uSJA4cbexiwQeRAfjPScqIbSjUDd9TOrcg6pTkdgziesOqxBMBzit8vFCTwrP27t13vFOORRA==" + "integrity": "sha512-QbJ0NTQ/I9DI3uSJA4cbexiwQeRAfjPScqIbSjUDd9TOrcg6pTkdgziesOqxBMBzit8vFCTwrP27t13vFOORRA==", + "dev": true }, "ansi-escapes": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.0.tgz", "integrity": "sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==", + "dev": true, "requires": { "type-fest": "^3.0.0" } @@ -1830,17 +1750,20 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==" + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true }, "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==" + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "dev": true }, "ansi-term": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/ansi-term/-/ansi-term-0.0.2.tgz", "integrity": "sha512-jLnGE+n8uAjksTJxiWZf/kcUmXq+cRWSl550B9NmQ8YiqaTM+lILcSe5dHdp8QkJPhaOghDjnMKwyYSMjosgAA==", + "dev": true, "requires": { "x256": ">=0.0.1" } @@ -1848,17 +1771,14 @@ "ansicolors": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", - "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==" - }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" + "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==", + "dev": true }, "arraybuffer.slice": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", - "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==" + "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", + "dev": true }, "async": { "version": "3.2.4", @@ -1868,27 +1788,32 @@ "backo2": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA==" + "integrity": "sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA==", + "dev": true }, "base64-arraybuffer": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz", - "integrity": "sha512-a1eIFi4R9ySrbiMuyTGx5e92uRH5tQY6kArNcFaKBUleIoLjdjBg7Zxm3Mqm3Kmkf27HLR/1fnxX9q8GQ7Iavg==" + "integrity": "sha512-a1eIFi4R9ySrbiMuyTGx5e92uRH5tQY6kArNcFaKBUleIoLjdjBg7Zxm3Mqm3Kmkf27HLR/1fnxX9q8GQ7Iavg==", + "dev": true }, "base64id": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==" + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true }, "blessed": { "version": "0.1.81", "resolved": "https://registry.npmjs.org/blessed/-/blessed-0.1.81.tgz", - "integrity": "sha512-LoF5gae+hlmfORcG1M5+5XZi4LBmvlXTzwJWzUlPryN/SJdSflZvROM2TwkT0GMpq7oqT48NRd4GS7BiVBc5OQ==" + "integrity": "sha512-LoF5gae+hlmfORcG1M5+5XZi4LBmvlXTzwJWzUlPryN/SJdSflZvROM2TwkT0GMpq7oqT48NRd4GS7BiVBc5OQ==", + "dev": true }, "blessed-contrib": { "version": "4.11.0", "resolved": "https://registry.npmjs.org/blessed-contrib/-/blessed-contrib-4.11.0.tgz", "integrity": "sha512-P00Xji3xPp53+FdU9f74WpvnOAn/SS0CKLy4vLAf5Ps7FGDOTY711ruJPZb3/7dpFuP+4i7f4a/ZTZdLlKG9WA==", + "dev": true, "requires": { "ansi-term": ">=0.0.2", "chalk": "^1.1.0", @@ -1909,17 +1834,20 @@ "blob": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", - "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==" + "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", + "dev": true }, "blocked": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/blocked/-/blocked-1.3.0.tgz", - "integrity": "sha512-tAb98b4F01wLnKIjCpp17hheKIKnd7j+SgxwgNHQNjQ+EcvOCRZ1HPVNZt3/XnpMjFymVdIZlBQysi+s7OltLw==" + "integrity": "sha512-tAb98b4F01wLnKIjCpp17hheKIKnd7j+SgxwgNHQNjQ+EcvOCRZ1HPVNZt3/XnpMjFymVdIZlBQysi+s7OltLw==", + "dev": true }, "bresenham": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/bresenham/-/bresenham-0.0.3.tgz", - "integrity": "sha512-wbMxoJJM1p3+6G7xEFXYNCJ30h2qkwmVxebkbwIl4OcnWtno5R3UT9VuYLfStlVNAQCmRjkGwjPFdfaPd4iNXw==" + "integrity": "sha512-wbMxoJJM1p3+6G7xEFXYNCJ30h2qkwmVxebkbwIl4OcnWtno5R3UT9VuYLfStlVNAQCmRjkGwjPFdfaPd4iNXw==", + "dev": true }, "buffer-writer": { "version": "2.0.0", @@ -1929,12 +1857,14 @@ "buffers": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", - "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==" + "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==", + "dev": true }, "cardinal": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/cardinal/-/cardinal-2.1.1.tgz", "integrity": "sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==", + "dev": true, "requires": { "ansicolors": "~0.3.2", "redeyed": "~2.1.0" @@ -1944,6 +1874,7 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "dev": true, "requires": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -1955,29 +1886,33 @@ "charm": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/charm/-/charm-0.1.2.tgz", - "integrity": "sha512-syedaZ9cPe7r3hoQA9twWYKu5AIyCswN5+szkmPBe9ccdLrj4bYaCnLVPTLd2kgVRc7+zoX4tyPgRnFKCj5YjQ==" + "integrity": "sha512-syedaZ9cPe7r3hoQA9twWYKu5AIyCswN5+szkmPBe9ccdLrj4bYaCnLVPTLd2kgVRc7+zoX4tyPgRnFKCj5YjQ==", + "dev": true }, "cli-table3": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dev": true, "requires": { "@colors/colors": "1.5.0", "string-width": "^4.2.0" } }, - "cohort_sdk_js": { - "version": "file:../packages/cohort_sdk_js", + "cohort_sdk_client": { + "version": "file:../cohort_sdk_client", "requires": { - "@napi-rs/cli": "^2.14.0", - "ava": "^4.3.3", + "@types/node": "^20.5.1", + "@types/pg": "^8.10.2", + "cohort_sdk_js": "file:../packages/cohort_sdk_js", "cohort_sdk_js-darwin-arm64": "0.0.1", "cohort_sdk_js-darwin-universal": "0.0.1", "cohort_sdk_js-darwin-x64": "0.0.1", "cohort_sdk_js-linux-x64-gnu": "0.0.1", "cohort_sdk_js-win32-x64-msvc": "0.0.1", - "esbuild": "^0.18.0", - "uuid": "^9.0.0" + "ts-node": "^10.9.1", + "typescript": "^5.1.6", + "winston": "^3.10.0" } }, "color": { @@ -2023,42 +1958,44 @@ "commander": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==" + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true }, "component-bind": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", - "integrity": "sha512-WZveuKPeKAG9qY+FkYDeADzdHyTYdIboXS59ixDeRJL5ZhxpqUnxSOwop4FQjMsiYm3/Or8cegVbpAHNA7pHxw==" + "integrity": "sha512-WZveuKPeKAG9qY+FkYDeADzdHyTYdIboXS59ixDeRJL5ZhxpqUnxSOwop4FQjMsiYm3/Or8cegVbpAHNA7pHxw==", + "dev": true }, "component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true }, "component-inherit": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", - "integrity": "sha512-w+LhYREhatpVqTESyGFg3NlP6Iu0kEKUHETY9GoZP/pQyW4mHFZuFWRUCIqVPZ36ueVLtoOEZaAqbCF2RDndaA==" + "integrity": "sha512-w+LhYREhatpVqTESyGFg3NlP6Iu0kEKUHETY9GoZP/pQyW4mHFZuFWRUCIqVPZ36ueVLtoOEZaAqbCF2RDndaA==", + "dev": true }, "cookie": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==" + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "dev": true }, "core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" - }, - "create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true }, "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -2069,24 +2006,22 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, "requires": { "ms": "^2.1.1" } }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" - }, "drawille-blessed-contrib": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/drawille-blessed-contrib/-/drawille-blessed-contrib-1.0.0.tgz", - "integrity": "sha512-WnHMgf5en/hVOsFhxLI8ZX0qTJmerOsVjIMQmn4cR1eI8nLGu+L7w5ENbul+lZ6w827A3JakCuernES5xbHLzQ==" + "integrity": "sha512-WnHMgf5en/hVOsFhxLI8ZX0qTJmerOsVjIMQmn4cR1eI8nLGu+L7w5ENbul+lZ6w827A3JakCuernES5xbHLzQ==", + "dev": true }, "drawille-canvas-blessed-contrib": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/drawille-canvas-blessed-contrib/-/drawille-canvas-blessed-contrib-0.1.3.tgz", "integrity": "sha512-bdDvVJOxlrEoPLifGDPaxIzFh3cD7QH05ePoQ4fwnqfi08ZSxzEhOUpI5Z0/SQMlWgcCQOEtuw0zrwezacXglw==", + "dev": true, "requires": { "ansi-term": ">=0.0.2", "bresenham": "0.0.3", @@ -2098,7 +2033,8 @@ "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true }, "enabled": { "version": "2.0.0", @@ -2109,6 +2045,7 @@ "version": "3.6.1", "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.6.1.tgz", "integrity": "sha512-dfs8EVg/i7QjFsXxn7cCRQ+Wai1G1TlEvHhdYEi80fxn5R1vZ2K661O6v/rezj1FP234SZ14r9CmJke99iYDGg==", + "dev": true, "requires": { "accepts": "~1.3.4", "base64id": "2.0.0", @@ -2122,6 +2059,7 @@ "version": "3.5.3", "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.3.tgz", "integrity": "sha512-qsgyc/CEhJ6cgMUwxRRtOndGVhIu5hpL5tR4umSpmX/MvkFoIxUTM7oFMDQumHNzlNLwSVy6qhstFPoWTf7dOw==", + "dev": true, "requires": { "component-emitter": "~1.3.0", "component-inherit": "0.0.3", @@ -2140,6 +2078,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -2147,7 +2086,8 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true } } }, @@ -2155,6 +2095,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.1.tgz", "integrity": "sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg==", + "dev": true, "requires": { "after": "0.8.2", "arraybuffer.slice": "~0.0.7", @@ -2166,17 +2107,20 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true }, "esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true }, "event-stream": { "version": "0.9.8", "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-0.9.8.tgz", "integrity": "sha512-o5h0Mp1bkoR6B0i7pTCAzRy+VzdsRWH997KQD4Psb0EOPoKEIiaRx/EsOdUl7p1Ktjw7aIWvweI/OY1R9XrlUg==", + "dev": true, "requires": { "optimist": "0.2" }, @@ -2185,6 +2129,7 @@ "version": "0.2.8", "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.2.8.tgz", "integrity": "sha512-Wy7E3cQDpqsTIFyW7m22hSevyTLxw850ahYv7FWsw4G6MIKVTZ8NSA95KBrQ95a4SMsMr1UGUUnwEFKhVaSzIg==", + "dev": true, "requires": { "wordwrap": ">=0.0.1 <0.1.0" } @@ -2204,12 +2149,14 @@ "gl-matrix": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-2.8.1.tgz", - "integrity": "sha512-0YCjVpE3pS5XWlN3J4X7AiAx65+nqAI54LndtVFnQZB6G/FVLkZH8y8V6R3cIoOQR4pUdfwQGd1iwyoXHJ4Qfw==" + "integrity": "sha512-0YCjVpE3pS5XWlN3J4X7AiAx65+nqAI54LndtVFnQZB6G/FVLkZH8y8V6R3cIoOQR4pUdfwQGd1iwyoXHJ4Qfw==", + "dev": true }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -2218,6 +2165,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", + "dev": true, "requires": { "isarray": "2.0.1" }, @@ -2225,29 +2173,34 @@ "isarray": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==" + "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==", + "dev": true } } }, "has-cors": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", - "integrity": "sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA==" + "integrity": "sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA==", + "dev": true }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true }, "here": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/here/-/here-0.0.2.tgz", - "integrity": "sha512-U7VYImCTcPoY27TSmzoiFsmWLEqQFaYNdpsPb9K0dXJhE6kufUqycaz51oR09CW85dDU9iWyy7At8M+p7hb3NQ==" + "integrity": "sha512-U7VYImCTcPoY27TSmzoiFsmWLEqQFaYNdpsPb9K0dXJhE6kufUqycaz51oR09CW85dDU9iWyy7At8M+p7hb3NQ==", + "dev": true }, "indexof": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg==" + "integrity": "sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg==", + "dev": true }, "inherits": { "version": "2.0.4", @@ -2262,7 +2215,8 @@ "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true }, "is-stream": { "version": "2.0.1", @@ -2272,17 +2226,20 @@ "isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true }, "jsonschema": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.1.tgz", - "integrity": "sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==" + "integrity": "sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==", + "dev": true }, "kuler": { "version": "2.0.0", @@ -2292,7 +2249,8 @@ "lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true }, "logform": { "version": "2.5.1", @@ -2307,15 +2265,11 @@ "triple-beam": "^1.3.0" } }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" - }, "map-canvas": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/map-canvas/-/map-canvas-0.1.5.tgz", "integrity": "sha512-f7M3sOuL9+up0NCOZbb1rQpWDLZwR/ftCiNbyscjl9LUUEwrRaoumH4sz6swgs58lF21DQ0hsYOCw5C6Zz7hbg==", + "dev": true, "requires": { "drawille-canvas-blessed-contrib": ">=0.0.1", "xml2js": "^0.4.5" @@ -2324,12 +2278,14 @@ "marked": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", - "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==" + "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", + "dev": true }, "marked-terminal": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/marked-terminal/-/marked-terminal-5.2.0.tgz", "integrity": "sha512-Piv6yNwAQXGFjZSaiNljyNFw7jKDdGrw70FSbtxEyldLsyeuV5ZHm/1wW++kWbrOF1VPnUgYOhB2oLL0ZpnekA==", + "dev": true, "requires": { "ansi-escapes": "^6.2.0", "cardinal": "^2.1.1", @@ -2342,7 +2298,8 @@ "chalk": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==" + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true } } }, @@ -2350,6 +2307,7 @@ "version": "0.1.3", "resolved": "https://registry.npmjs.org/memory-streams/-/memory-streams-0.1.3.tgz", "integrity": "sha512-qVQ/CjkMyMInPaaRMrwWNDvf6boRZXaT/DbQeMYcCWuXPEBf1v8qChOc9OlEVQp2uOvRXa1Qu30fLmKhY6NipA==", + "dev": true, "requires": { "readable-stream": "~1.0.2" } @@ -2357,17 +2315,20 @@ "memorystream": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==" + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "dev": true }, "mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true }, "mime-types": { "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, "requires": { "mime-db": "1.52.0" } @@ -2380,12 +2341,14 @@ "negotiator": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true }, "node-emoji": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", + "dev": true, "requires": { "lodash": "^4.17.21" } @@ -2394,6 +2357,7 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/nodejs-dashboard/-/nodejs-dashboard-0.5.1.tgz", "integrity": "sha512-GLeIl/Uj4X6r+pu9qBRQd7K9GzUyqayaNqWnE2jmBYhYgC9ub4QajgCqNs6uuOyDj+YXlukQysaIUmsZp9D8/g==", + "dev": true, "requires": { "blessed": "^0.1.81", "blessed-contrib": "^4.8.18", @@ -2412,6 +2376,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/nopt/-/nopt-2.1.2.tgz", "integrity": "sha512-x8vXm7BZ2jE1Txrxh/hO74HTuYZQEbo8edoRcANgdZ4+PCV+pbjd/xdummkmjjC7LU5EjPzlu8zEq/oxWylnKA==", + "dev": true, "requires": { "abbrev": "1" } @@ -2419,7 +2384,8 @@ "obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true }, "one-time": { "version": "1.0.0", @@ -2433,6 +2399,7 @@ "version": "0.3.7", "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", "integrity": "sha512-TCx0dXQzVtSCg2OgY/bO9hjM9cV4XYx09TVK+s3+FhkjT6LovsLe+pPMzpWf+6yXK/hUizs2gUoTw3jHM0VaTQ==", + "dev": true, "requires": { "wordwrap": "~0.0.2" } @@ -2445,17 +2412,20 @@ "parseqs": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz", - "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==" + "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==", + "dev": true }, "parseuri": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz", - "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==" + "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==", + "dev": true }, "path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true }, "pg": { "version": "8.11.3", @@ -2528,7 +2498,8 @@ "pg-numeric": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pg-numeric/-/pg-numeric-1.0.2.tgz", - "integrity": "sha512-BM/Thnrw5jm2kKLE5uJkXqqExRUY/toLHda65XgFTBTFYZyopbKjBe29Ii3RbkvlsMoFwD+tHeGaCjjv0gHlyw==" + "integrity": "sha512-BM/Thnrw5jm2kKLE5uJkXqqExRUY/toLHda65XgFTBTFYZyopbKjBe29Ii3RbkvlsMoFwD+tHeGaCjjv0gHlyw==", + "dev": true }, "pg-pool": { "version": "3.6.1", @@ -2545,6 +2516,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-4.0.1.tgz", "integrity": "sha512-hRCSDuLII9/LE3smys1hRHcu5QGcLs9ggT7I/TCs0IE+2Eesxi9+9RWAAwZ0yaGjxoWICF/YHLOEjydGujoJ+g==", + "dev": true, "requires": { "pg-int8": "1.0.1", "pg-numeric": "1.0.2", @@ -2567,6 +2539,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/picture-tuber/-/picture-tuber-1.0.2.tgz", "integrity": "sha512-49/xq+wzbwDeI32aPvwQJldM8pr7dKDRuR76IjztrkmiCkAQDaWFJzkmfVqCHmt/iFoPFhHmI9L0oKhthrTOQw==", + "dev": true, "requires": { "buffers": "~0.1.1", "charm": "~0.1.0", @@ -2580,6 +2553,7 @@ "version": "2.0.21", "resolved": "https://registry.npmjs.org/pidusage/-/pidusage-2.0.21.tgz", "integrity": "sha512-cv3xAQos+pugVX+BfXpHsbyz/dLzX+lr44zNMsYiGxUw+kV5sgQCIcLd1z+0vq+KyC7dJ+/ts2PsfgWfSC3WXA==", + "dev": true, "requires": { "safe-buffer": "^5.2.1" } @@ -2587,17 +2561,20 @@ "png-js": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/png-js/-/png-js-0.1.1.tgz", - "integrity": "sha512-NTtk2SyfjBm+xYl2/VZJBhFnTQ4kU5qWC7VC4/iGbrgiU4FuB4xC+74erxADYJIqZICOR1HCvRA7EBHkpjTg9g==" + "integrity": "sha512-NTtk2SyfjBm+xYl2/VZJBhFnTQ4kU5qWC7VC4/iGbrgiU4FuB4xC+74erxADYJIqZICOR1HCvRA7EBHkpjTg9g==", + "dev": true }, "postgres-array": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-3.0.2.tgz", - "integrity": "sha512-6faShkdFugNQCLwucjPcY5ARoW1SlbnrZjmGl0IrrqewpvxvhSLHimCVzqeuULCbG0fQv7Dtk1yDbG3xv7Veog==" + "integrity": "sha512-6faShkdFugNQCLwucjPcY5ARoW1SlbnrZjmGl0IrrqewpvxvhSLHimCVzqeuULCbG0fQv7Dtk1yDbG3xv7Veog==", + "dev": true }, "postgres-bytea": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-3.0.0.tgz", "integrity": "sha512-CNd4jim9RFPkObHSjVHlVrxoVQXz7quwNFpz7RY1okNNme49+sVyiTvTRobiLV548Hx/hb1BG+iE7h9493WzFw==", + "dev": true, "requires": { "obuf": "~1.1.2" } @@ -2605,27 +2582,32 @@ "postgres-date": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/postgres-date/-/postgres-date-2.0.1.tgz", - "integrity": "sha512-YtMKdsDt5Ojv1wQRvUhnyDJNSr2dGIC96mQVKz7xufp07nfuFONzdaowrMHjlAzY6GDLd4f+LUHHAAM1h4MdUw==" + "integrity": "sha512-YtMKdsDt5Ojv1wQRvUhnyDJNSr2dGIC96mQVKz7xufp07nfuFONzdaowrMHjlAzY6GDLd4f+LUHHAAM1h4MdUw==", + "dev": true }, "postgres-interval": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/postgres-interval/-/postgres-interval-3.0.0.tgz", - "integrity": "sha512-BSNDnbyZCXSxgA+1f5UU2GmwhoI0aU5yMxRGO8CdFEcY2BQF9xm/7MqKnYoM1nJDk8nONNWDk9WeSmePFhQdlw==" + "integrity": "sha512-BSNDnbyZCXSxgA+1f5UU2GmwhoI0aU5yMxRGO8CdFEcY2BQF9xm/7MqKnYoM1nJDk8nONNWDk9WeSmePFhQdlw==", + "dev": true }, "postgres-range": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/postgres-range/-/postgres-range-1.1.3.tgz", - "integrity": "sha512-VdlZoocy5lCP0c/t66xAfclglEapXPCIVhqqJRncYpvbCgImF0w67aPKfbqUMr72tO2k5q0TdTZwCLjPTI6C9g==" + "integrity": "sha512-VdlZoocy5lCP0c/t66xAfclglEapXPCIVhqqJRncYpvbCgImF0w67aPKfbqUMr72tO2k5q0TdTZwCLjPTI6C9g==", + "dev": true }, "pretty-bytes": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==" + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true }, "readable-stream": { "version": "1.0.34", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.1", @@ -2637,6 +2619,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/redeyed/-/redeyed-2.1.1.tgz", "integrity": "sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==", + "dev": true, "requires": { "esprima": "~4.0.0" } @@ -2654,12 +2637,14 @@ "sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true }, "shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, "requires": { "shebang-regex": "^3.0.0" } @@ -2667,7 +2652,8 @@ "shebang-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true }, "simple-swizzle": { "version": "0.2.2", @@ -2681,6 +2667,7 @@ "version": "2.5.0", "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.5.0.tgz", "integrity": "sha512-gGunfS0od3VpwDBpGwVkzSZx6Aqo9uOcf1afJj2cKnKFAoyl16fvhpsUhmUFd4Ldbvl5JvRQed6eQw6oQp6n8w==", + "dev": true, "requires": { "debug": "~4.1.0", "engine.io": "~3.6.0", @@ -2693,12 +2680,14 @@ "socket.io-adapter": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz", - "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==" + "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==", + "dev": true }, "socket.io-client": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.5.0.tgz", "integrity": "sha512-lOO9clmdgssDykiOmVQQitwBAF3I6mYcQAo7hQ7AM6Ny5X7fp8hIJ3HcQs3Rjz4SoggoxA1OgrQyY8EgTbcPYw==", + "dev": true, "requires": { "backo2": "1.0.2", "component-bind": "1.0.0", @@ -2717,6 +2706,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -2724,17 +2714,20 @@ "isarray": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==" + "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==", + "dev": true }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true }, "socket.io-parser": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.3.tgz", "integrity": "sha512-qOg87q1PMWWTeO01768Yh9ogn7chB9zkKtQnya41Y355S0UmpXgpcrFwAgjYJxu9BdKug5r5e9YtVSeWhKBUZg==", + "dev": true, "requires": { "component-emitter": "~1.3.0", "debug": "~3.1.0", @@ -2747,6 +2740,7 @@ "version": "3.4.3", "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.4.3.tgz", "integrity": "sha512-1rE4dZN3kCI/E5wixd393hmbqa78vVpkKmnEJhLeWoS/C5hbFYAbcSfnWoaVH43u9ToUVtzKjguxEZq+1XZfCQ==", + "dev": true, "requires": { "component-emitter": "1.2.1", "debug": "~4.1.0", @@ -2756,12 +2750,14 @@ "component-emitter": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA==" + "integrity": "sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA==", + "dev": true }, "isarray": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==" + "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==", + "dev": true } } }, @@ -2769,6 +2765,7 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/sparkline/-/sparkline-0.1.2.tgz", "integrity": "sha512-t//aVOiWt9fi/e22ea1vXVWBDX+gp18y+Ch9sKqmHl828bRfvP2VtfTJVEcgWFBQHd0yDPNQRiHdqzCvbcYSDA==", + "dev": true, "requires": { "here": "0.0.2", "nopt": "~2.1.2" @@ -2787,12 +2784,14 @@ "string_decoder": { "version": "0.10.31", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true }, "string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -2802,12 +2801,14 @@ "ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "requires": { "ansi-regex": "^5.0.1" } @@ -2818,6 +2819,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -2825,12 +2827,14 @@ "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==" + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "dev": true }, "supports-hyperlinks": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, "requires": { "has-flag": "^4.0.0", "supports-color": "^7.0.0" @@ -2840,6 +2844,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "requires": { "has-flag": "^4.0.0" } @@ -2849,7 +2854,8 @@ "term-canvas": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/term-canvas/-/term-canvas-0.0.5.tgz", - "integrity": "sha512-eZ3rIWi5yLnKiUcsW8P79fKyooaLmyLWAGqBhFspqMxRNUiB4GmHHk5AzQ4LxvFbJILaXqQZLwbbATLOhCFwkw==" + "integrity": "sha512-eZ3rIWi5yLnKiUcsW8P79fKyooaLmyLWAGqBhFspqMxRNUiB4GmHHk5AzQ4LxvFbJILaXqQZLwbbATLOhCFwkw==", + "dev": true }, "text-hex": { "version": "1.0.0", @@ -2859,57 +2865,36 @@ "to-array": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", - "integrity": "sha512-LhVdShQD/4Mk4zXNroIQZJC+Ap3zgLcDuwEdcmLv9CCO73NWockQDwyUnW/m8VX/EElfL6FcYx7EeutN4HJA6A==" + "integrity": "sha512-LhVdShQD/4Mk4zXNroIQZJC+Ap3zgLcDuwEdcmLv9CCO73NWockQDwyUnW/m8VX/EElfL6FcYx7EeutN4HJA6A==", + "dev": true }, "triple-beam": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==" }, - "ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", - "requires": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - } - }, "type-fest": { "version": "3.13.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==" + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "dev": true }, "typescript": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", - "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==" + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", + "dev": true }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, - "v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==" - }, "which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, "requires": { "isexe": "^2.0.0" } @@ -2985,23 +2970,27 @@ "wordwrap": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw==" + "integrity": "sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw==", + "dev": true }, "ws": { "version": "7.4.6", "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "dev": true, "requires": {} }, "x256": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/x256/-/x256-0.0.2.tgz", - "integrity": "sha512-ZsIH+sheoF8YG9YG+QKEEIdtqpHRA9FYuD7MqhfyB1kayXU43RUNBFSxBEnF8ywSUxdg+8no4+bPr5qLbyxKgA==" + "integrity": "sha512-ZsIH+sheoF8YG9YG+QKEEIdtqpHRA9FYuD7MqhfyB1kayXU43RUNBFSxBEnF8ywSUxdg+8no4+bPr5qLbyxKgA==", + "dev": true }, "xml2js": { "version": "0.4.23", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "dev": true, "requires": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" @@ -3010,12 +2999,14 @@ "xmlbuilder": { "version": "11.0.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "dev": true }, "xmlhttprequest-ssl": { "version": "1.6.3", "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.3.tgz", - "integrity": "sha512-3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q==" + "integrity": "sha512-3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q==", + "dev": true }, "xtend": { "version": "4.0.2", @@ -3025,12 +3016,8 @@ "yeast": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", - "integrity": "sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg==" - }, - "yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==" + "integrity": "sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg==", + "dev": true } } } diff --git a/cohort_banking_replicator_js/package.json b/cohort_banking_replicator_js/package.json index 8bbee51c..11ba4feb 100644 --- a/cohort_banking_replicator_js/package.json +++ b/cohort_banking_replicator_js/package.json @@ -13,14 +13,13 @@ "license": "UNLICENSED", "devDependencies": { "@types/node": "^20.5.1", + "@types/pg": "^8.10.2", + "nodejs-dashboard": "^0.5.1", "typescript": "^5.1.6" }, "dependencies": { - "@types/pg": "^8.10.2", - "cohort_sdk_js": "file:../packages/cohort_sdk_js", - "nodejs-dashboard": "^0.5.1", + "cohort_sdk_client": "file:../cohort_sdk_client", "pg": "^8.11.3", - "ts-node": "^10.9.1", "winston": "^3.10.0" } } diff --git a/cohort_banking_replicator_js/src/cfg/config-kafka.ts b/cohort_banking_replicator_js/src/cfg/config-kafka.ts index bbbfc748..1fbc212d 100644 --- a/cohort_banking_replicator_js/src/cfg/config-kafka.ts +++ b/cohort_banking_replicator_js/src/cfg/config-kafka.ts @@ -1,4 +1,4 @@ -import { JsKafkaConfig } from "cohort_sdk_js" +import { JsKafkaConfig } from "cohort_sdk_client" const kafkaConfig: JsKafkaConfig = { brokers: ["127.0.0.1:9092"], diff --git a/cohort_banking_replicator_js/src/cfg/config-replicator.ts b/cohort_banking_replicator_js/src/cfg/config-replicator.ts index 9d4c37e5..3481e2ac 100644 --- a/cohort_banking_replicator_js/src/cfg/config-replicator.ts +++ b/cohort_banking_replicator_js/src/cfg/config-replicator.ts @@ -1,4 +1,4 @@ -import { JsReplicatorConfig } from "cohort_sdk_js" +import { JsReplicatorConfig } from "cohort_sdk_client" const replicatorConfig: JsReplicatorConfig = { enableStats: true, diff --git a/cohort_banking_replicator_js/src/database.ts b/cohort_banking_replicator_js/src/database.ts index 160a05ab..98b0f2fd 100644 --- a/cohort_banking_replicator_js/src/database.ts +++ b/cohort_banking_replicator_js/src/database.ts @@ -2,7 +2,7 @@ import { Pool, PoolClient } from "pg" import { BroadcastChannel } from "worker_threads" import { logger } from "./logger" -import { JsStatemapAndSnapshot } from "cohort_sdk_js" +import { JsStatemapAndSnapshot } from "cohort_sdk_client" import { DB_CONFIG } from "./cfg/config-db-pool" import { METRICS_CHANNEL_NAME, MetricsSet } from "./metrics" @@ -35,23 +35,21 @@ export class Database { let cnn = null try { cnn = await this.pool.connect() - const result = await cnn.query({ name: "getSnapshot", text: `SELECT "version" FROM cohort_snapshot WHERE id = $1`, values: ["SINGLETON"] }) - if (result.rowCount === 0) { throw "There is no snapshot in the database." } - const version = result.rows[0].version - - logger.warn("Database.getSnapshot(): %d", version) - + logger.info("Database.getSnapshot(): %d", version) return Number(version) - + } catch (e) { + // This print here is important, without it the original reason is lost when using NAPI 2.10. + logger.error("Database.getSnapshot(): %s", e) + throw new Error(`Unable to load initial stapshot. Reason: ${e.message}`, { cause: e }) } finally { cnn?.release() const metric = new MetricsSet() diff --git a/cohort_banking_replicator_js/src/main.ts b/cohort_banking_replicator_js/src/main.ts index 0fe0aa56..15545a3b 100644 --- a/cohort_banking_replicator_js/src/main.ts +++ b/cohort_banking_replicator_js/src/main.ts @@ -1,10 +1,11 @@ -import { Replicator } from "cohort_sdk_js" +import { Replicator, TalosSdkError } from "cohort_sdk_client" import { Database } from "./database" import { KAFKA_CONFIG } from "./cfg/config-kafka" import { REPLICATOR_CONFIG } from "./cfg/config-replicator" import { MetricsCollector } from "./metrics" +import { logger } from "./logger" new Promise(async (_resolve) => { const database = await Database.init() @@ -13,8 +14,25 @@ new Promise(async (_resolve) => { const metricsCollector = new MetricsCollector() metricsCollector.run() - await replicator.run( - async () => await database.getSnapshot(), - async (_, params) => await database.install(params, { delayMs: 2, maxAttempts: 50 }) - ) + try { + await replicator.run( + async () => await database.getSnapshot(), + async (_, params) => await database.install(params, { delayMs: 2, maxAttempts: 50 }) + ) + logger.info("Replciator is running ...") + } catch (e) { + logger.error("Unable start replicator.") + if (e instanceof TalosSdkError) { + const sdkError = e as TalosSdkError + logger.error("TalosSdkError.message: %s", sdkError.message) + logger.error("TalosSdkError.kind: %s", sdkError.kind) + logger.error("TalosSdkError.name: %s", sdkError.name) + logger.error("TalosSdkError.cause: %s", sdkError.cause) + logger.error("TalosSdkError.stack: %s", sdkError.stack) + } else { + logger.error("Error: %s", e) + } + + throw e + } }) \ No newline at end of file diff --git a/cohort_sdk_client/src/index.ts b/cohort_sdk_client/src/index.ts index 5b1318a4..cbc251f2 100644 --- a/cohort_sdk_client/src/index.ts +++ b/cohort_sdk_client/src/index.ts @@ -1,7 +1,11 @@ import { Initiator } from "./initiator" +import { Replicator } from "./replicator" import { JsCertificationRequestPayload, JsInitiatorConfig, + JsKafkaConfig, + JsReplicatorConfig, + JsStatemapAndSnapshot, JsOutOfOrderInstallOutcome, OutOfOrderRequest, SdkErrorKind, @@ -10,6 +14,7 @@ import { class TalosSdkError extends Error { constructor(readonly kind: SdkErrorKind, readonly message: string, options?: ErrorOptions) { super(message, options) + this.name = "TalosSdkError" } } @@ -17,8 +22,12 @@ export { Initiator, JsInitiatorConfig, JsCertificationRequestPayload, + JsKafkaConfig, + JsReplicatorConfig, + JsStatemapAndSnapshot, JsOutOfOrderInstallOutcome, OutOfOrderRequest, + Replicator, SdkErrorKind, TalosSdkError, } \ No newline at end of file diff --git a/cohort_sdk_client/src/initiator.ts b/cohort_sdk_client/src/initiator.ts index 7b505630..13b74915 100644 --- a/cohort_sdk_client/src/initiator.ts +++ b/cohort_sdk_client/src/initiator.ts @@ -12,7 +12,7 @@ export class Initiator { const rawError = JSON.parse(reason) throw new TalosSdkError(rawError.kind, rawError.reason, { cause: e }) } else { - throw new TalosSdkError(SdkErrorKind.Internal, e.message, { cause: e } ) + throw new TalosSdkError(SdkErrorKind.Internal, e.message, { cause: e }) } } } @@ -28,7 +28,7 @@ export class Initiator { const rawError = JSON.parse(reason) throw new TalosSdkError(rawError.kind, rawError.reason, { cause: e }) } else { - throw new TalosSdkError(SdkErrorKind.Internal, e.message, { cause: e } ) + throw new TalosSdkError(SdkErrorKind.Internal, e.message, { cause: e }) } } } diff --git a/cohort_sdk_client/src/replicator.ts b/cohort_sdk_client/src/replicator.ts new file mode 100644 index 00000000..675551cf --- /dev/null +++ b/cohort_sdk_client/src/replicator.ts @@ -0,0 +1,35 @@ +import { InternalReplicator, JsKafkaConfig, JsReplicatorConfig, JsStatemapAndSnapshot, SdkErrorKind } from "cohort_sdk_js" +import { isSdkError } from "./internal" +import { TalosSdkError } from "." + +export class Replicator { + static async init(kafkaConfig: JsKafkaConfig, config: JsReplicatorConfig): Promise { + try { + return new Replicator(await InternalReplicator.init(kafkaConfig, config)) + } catch(e) { + const reason: string = e.message + if (isSdkError(reason)) { + const rawError = JSON.parse(reason) + throw new TalosSdkError(rawError.kind, rawError.reason, { cause: e }) + } else { + throw new TalosSdkError(SdkErrorKind.Internal, e.message, { cause: e }) + } + } + } + + constructor(readonly impl: InternalReplicator) {} + + async run(snapshotProviderCallback: () => Promise, statemapInstallerCallback: (err: Error | null, value: JsStatemapAndSnapshot) => any) { + try { + await this.impl.run(snapshotProviderCallback, statemapInstallerCallback) + } catch(e) { + const reason: string = e.message + if (isSdkError(reason)) { + const rawError = JSON.parse(reason) + throw new TalosSdkError(rawError.kind, rawError.reason, { cause: e }) + } else { + throw new TalosSdkError(SdkErrorKind.Internal, e.message, { cause: e }) + } + } + } +} \ No newline at end of file diff --git a/packages/cohort_sdk/Cargo.toml b/packages/cohort_sdk/Cargo.toml index 38c1f88a..9f9d0aa7 100644 --- a/packages/cohort_sdk/Cargo.toml +++ b/packages/cohort_sdk/Cargo.toml @@ -13,7 +13,7 @@ opentelemetry_api = { version = "0.20.0" } opentelemetry_sdk = { version = "0.20.0", features = ["metrics", "rt-tokio"] } opentelemetry = { version = "0.20.0" } rand = { version = "0.8.5" } -rdkafka = { version = "0.33.0", features = ["sasl"] } +rdkafka = { version = "0.34.0", features = ["sasl"] } rdkafka-sys = { version = "4.3.0" } serde = { workspace = true } serde_json = { workspace = true } diff --git a/packages/cohort_sdk/src/cohort.rs b/packages/cohort_sdk/src/cohort.rs index cffe761d..00ccbdd2 100644 --- a/packages/cohort_sdk/src/cohort.rs +++ b/packages/cohort_sdk/src/cohort.rs @@ -252,7 +252,7 @@ impl Cohort { let error = match install_result { Ok(OutOfOrderInstallOutcome::SafepointCondition) => { is_not_save += 1; - // We create this error as "safepoint timeout" in advance. Error is erased if further attempt will be successfull or replaced with anotuer error. + // We create this error as "safepoint timeout" in advance. Error is erased if further attempt will be successfull or replaced with another error. Some(ClientError { kind: model::ClientErrorKind::OutOfOrderSnapshotTimeout, reason: format!("Timeout waitig for safepoint: {}", safepoint), diff --git a/packages/cohort_sdk_js/src/installer/callback_impl.rs b/packages/cohort_sdk_js/src/installer/callback_impl.rs index dfeebca7..1c8e09c1 100644 --- a/packages/cohort_sdk_js/src/installer/callback_impl.rs +++ b/packages/cohort_sdk_js/src/installer/callback_impl.rs @@ -5,8 +5,6 @@ use talos_cohort_replicator::{ StatemapItem, }; -use crate::map_error_to_napi_error; - use super::JsStatemapAndSnapshot; pub struct SnapshotProviderDelegate { @@ -16,10 +14,14 @@ pub struct SnapshotProviderDelegate { #[async_trait] impl ReplicatorSnapshotProvider for SnapshotProviderDelegate { async fn get_snapshot(&self) -> Result { - let result = self.callback.call_async::>(Ok(())).await.map_err(map_error_to_napi_error); + let result = self.callback.call_async::>(Ok(())).await; match result { - Ok(promise) => promise.await.map(|v| v as u64).map_err(|e| e.to_string()), + Ok(promise) => promise + .await + .map(|v| v as u64) + // Here reason is empty with NAPI 2.10.3 + .map_err(|e| format!("Unable to retrieve snapshot. Native reason reported from JS: \"{}\"", e.reason)), Err(e) => Err(e.to_string()), } @@ -38,10 +40,13 @@ impl ReplicatorInstaller for StatemapInstallerDelegate { version: version as i64, }; - let result = self.callback.call_async::>(Ok(data)).await.map_err(map_error_to_napi_error); + let result = self.callback.call_async::>(Ok(data)).await; match result { - Ok(promise) => promise.await.map_err(|e| e.to_string()), + Ok(promise) => promise + .await + // Here reason is empty with NAPI 2.10.3 + .map_err(|e| format!("Unable to install statemap. Native reason reported from JS: \"{}\"", e.reason)), Err(e) => Err(e.to_string()), } diff --git a/packages/cohort_sdk_js/src/installer/mod.rs b/packages/cohort_sdk_js/src/installer/mod.rs index 99c8ccc2..650e6c5f 100644 --- a/packages/cohort_sdk_js/src/installer/mod.rs +++ b/packages/cohort_sdk_js/src/installer/mod.rs @@ -10,7 +10,7 @@ use talos_certifier::ports::MessageReciever; use talos_certifier_adapters::KafkaConsumer; use talos_cohort_replicator::{talos_cohort_replicator, CohortReplicatorConfig, StatemapItem}; -use crate::{map_error_to_napi_error, models::JsKafkaConfig}; +use crate::{models::JsKafkaConfig, sdk_errors::SdkErrorContainer}; use self::callback_impl::{SnapshotProviderDelegate, StatemapInstallerDelegate}; @@ -68,17 +68,17 @@ pub struct JsStatemapAndSnapshot { } #[napi] -pub struct Replicator { +pub struct InternalReplicator { kafka_config: JsKafkaConfig, config: JsReplicatorConfig, } #[napi] -impl Replicator { +impl InternalReplicator { #[napi] - pub async fn init(kafka_config: JsKafkaConfig, config: JsReplicatorConfig) -> napi::Result { + pub async fn init(kafka_config: JsKafkaConfig, config: JsReplicatorConfig) -> napi::Result { env_logger::builder().format_timestamp_millis().init(); - Ok(Replicator { kafka_config, config }) + Ok(InternalReplicator { kafka_config, config }) } #[napi] @@ -88,22 +88,39 @@ impl Replicator { statemap_installer_callback: ThreadsafeFunction, ) -> napi::Result<()> { let kafka_consumer = KafkaConsumer::new(&self.kafka_config.clone().into()); - kafka_consumer.subscribe().await.map_err(map_error_to_napi_error)?; + let brokers = &self.kafka_config.brokers.clone(); + let topic = &self.kafka_config.topic.clone(); + + kafka_consumer.subscribe().await.map_err(|e| { + // "kafka_consumer.subscribe()" never throws, leaving this mapping here jsut in case, but + // so far testing showed that even when kafka is down during startup this method finishes + // without error. + let sdk_error = SdkErrorContainer::new( + crate::sdk_errors::SdkErrorKind::Messaging, + format!("Unable to subscribe to kafka. Brokers: {:?}, topic: {}", brokers, topic), + Some(e.to_string()), + ); + + napi::Error::from_reason(sdk_error.json().to_string()) + })?; let config: CohortReplicatorConfig = self.config.clone().into(); - let _service_handle = tokio::spawn(async move { - let _result = talos_cohort_replicator( - kafka_consumer, - Arc::new(StatemapInstallerDelegate { - callback: statemap_installer_callback, - }), - SnapshotProviderDelegate { - callback: snapshot_provider_callback, - }, - config, - ) - .await; - }); + + let _result = talos_cohort_replicator( + kafka_consumer, + Arc::new(StatemapInstallerDelegate { + callback: statemap_installer_callback, + }), + SnapshotProviderDelegate { + callback: snapshot_provider_callback, + }, + config, + ) + .await + .map_err(|e| { + let sdk_error = SdkErrorContainer::new(e.kind.clone().into(), e.reason, e.cause); + napi::Error::from_reason(sdk_error.json().to_string()) + })?; Ok(()) } diff --git a/packages/cohort_sdk_js/src/lib.rs b/packages/cohort_sdk_js/src/lib.rs index 05c9828a..db481348 100644 --- a/packages/cohort_sdk_js/src/lib.rs +++ b/packages/cohort_sdk_js/src/lib.rs @@ -1,10 +1,4 @@ -use std::fmt::Display; - pub mod initiator; pub mod installer; pub mod models; pub mod sdk_errors; - -fn map_error_to_napi_error(e: T) -> napi::Error { - napi::Error::from_reason(e.to_string()) -} diff --git a/packages/cohort_sdk_js/src/sdk_errors.rs b/packages/cohort_sdk_js/src/sdk_errors.rs index 496af808..5342f77e 100644 --- a/packages/cohort_sdk_js/src/sdk_errors.rs +++ b/packages/cohort_sdk_js/src/sdk_errors.rs @@ -4,6 +4,7 @@ use napi::bindgen_prelude::ToNapiValue; use napi_derive::napi; use serde::Serialize; use serde_json::Value; +use talos_cohort_replicator::errors::ReplicatorErrorKind; #[napi(string_enum)] #[derive(Serialize)] @@ -34,6 +35,17 @@ impl From for SdkErrorKind { } } +impl From for SdkErrorKind { + fn from(value: ReplicatorErrorKind) -> Self { + match value { + // will never happen in cohort + ReplicatorErrorKind::Internal => SdkErrorKind::Internal, + ReplicatorErrorKind::Messaging => SdkErrorKind::Messaging, + ReplicatorErrorKind::Persistence => SdkErrorKind::Persistence, + } + } +} + #[derive(Serialize)] #[serde(rename_all = "camelCase", tag = "_typ")] #[napi] diff --git a/packages/talos_cohort_replicator/Cargo.toml b/packages/talos_cohort_replicator/Cargo.toml index a1818537..28bb389c 100644 --- a/packages/talos_cohort_replicator/Cargo.toml +++ b/packages/talos_cohort_replicator/Cargo.toml @@ -15,6 +15,7 @@ serde = { workspace = true } serde_json = { workspace = true } tokio = { workspace = true, features = ["full"] } +strum = { version = "0.25", features = ["derive"] } # Error thiserror = { version = "1.0.31" } @@ -31,4 +32,4 @@ talos_suffix = { path = "../talos_suffix" } [dev-dependencies] mockall = { version = "0.11.3" } tokio-test = { version = "0.4.2" } -rand = { version = "0.8.5" } \ No newline at end of file +rand = { version = "0.8.5" } \ No newline at end of file diff --git a/packages/talos_cohort_replicator/src/errors.rs b/packages/talos_cohort_replicator/src/errors.rs index a556e9ab..cebd7a11 100644 --- a/packages/talos_cohort_replicator/src/errors.rs +++ b/packages/talos_cohort_replicator/src/errors.rs @@ -29,3 +29,17 @@ pub struct ServiceError { // // Exhausted retry and no install // } + +#[derive(strum::Display, Debug, Clone)] +pub enum ReplicatorErrorKind { + Messaging, + Internal, + Persistence, +} + +#[derive(Debug, Clone)] +pub struct ReplicatorError { + pub kind: ReplicatorErrorKind, + pub reason: String, + pub cause: Option, +} diff --git a/packages/talos_cohort_replicator/src/services/replicator_service.rs b/packages/talos_cohort_replicator/src/services/replicator_service.rs index b7e4d261..2afed71c 100644 --- a/packages/talos_cohort_replicator/src/services/replicator_service.rs +++ b/packages/talos_cohort_replicator/src/services/replicator_service.rs @@ -3,7 +3,7 @@ use std::{fmt::Debug, time::Duration}; use crate::{ core::{Replicator, ReplicatorChannel, StatemapItem}, - errors::ServiceError, + errors::ReplicatorError, models::ReplicatorCandidate, suffix::ReplicatorSuffixTrait, }; @@ -22,7 +22,7 @@ pub async fn replicator_service( mut replicator_rx: mpsc::Receiver, mut replicator: Replicator, config: ReplicatorServiceConfig, -) -> Result<(), ServiceError> +) -> Result<(), ReplicatorError> where S: ReplicatorSuffixTrait + Debug, M: MessageReciever + Send + Sync, @@ -45,7 +45,7 @@ where // 2. Add/update to suffix. match msg { // 2.1 For CM - Install messages on the version - ChannelMessage::Candidate( message) => { + ChannelMessage::Candidate(message) => { let version = message.version; replicator.process_consumer_message(version, message.into()).await; }, diff --git a/packages/talos_cohort_replicator/src/services/statemap_installer_service.rs b/packages/talos_cohort_replicator/src/services/statemap_installer_service.rs index d9f77159..c21efe5a 100644 --- a/packages/talos_cohort_replicator/src/services/statemap_installer_service.rs +++ b/packages/talos_cohort_replicator/src/services/statemap_installer_service.rs @@ -5,7 +5,7 @@ use std::{sync::Arc, time::Instant}; use crate::{ callbacks::ReplicatorInstaller, core::{ReplicatorChannel, StatemapInstallationStatus, StatemapItem}, - errors::ServiceError, + errors::ReplicatorError, }; use log::{debug, error}; @@ -63,7 +63,7 @@ pub async fn installation_service( mut installation_rx: mpsc::Receiver<(u64, Vec)>, statemap_installation_tx: mpsc::Sender, config: StatemapInstallerConfig, -) -> Result<(), ServiceError> { +) -> Result<(), ReplicatorError> { let permit_count = config.thread_pool.unwrap_or(50) as usize; let semaphore = Arc::new(Semaphore::new(permit_count)); diff --git a/packages/talos_cohort_replicator/src/services/statemap_queue_service.rs b/packages/talos_cohort_replicator/src/services/statemap_queue_service.rs index 9a9029fc..580fcab5 100644 --- a/packages/talos_cohort_replicator/src/services/statemap_queue_service.rs +++ b/packages/talos_cohort_replicator/src/services/statemap_queue_service.rs @@ -9,7 +9,7 @@ use tokio::sync::mpsc; use crate::{ callbacks::ReplicatorSnapshotProvider, core::{StatemapInstallState, StatemapInstallationStatus, StatemapInstallerHashmap, StatemapItem}, - errors::ServiceError, + errors::{ReplicatorError, ReplicatorErrorKind}, models::StatemapInstallerQueue, }; @@ -34,7 +34,7 @@ pub async fn statemap_queue_service( installation_tx: mpsc::Sender<(u64, Vec)>, snapshot_api: S, config: StatemapQueueServiceConfig, -) -> Result<(), ServiceError> +) -> Result<(), ReplicatorError> where S: ReplicatorSnapshotProvider + Send + Sync, { @@ -49,9 +49,11 @@ where let mut statemap_installer_queue = StatemapInstallerQueue::default(); //Gets snapshot initial version from db. - statemap_installer_queue.update_snapshot(snapshot_api.get_snapshot().await.unwrap()); - - // let mut last_item_send_for_install = 0; + statemap_installer_queue.update_snapshot(snapshot_api.get_snapshot().await.map_err(|e| ReplicatorError { + kind: ReplicatorErrorKind::Persistence, + reason: "Unable to get initial snapshot".into(), + cause: Some(e.to_string()), + })?); loop { tokio::select! { diff --git a/packages/talos_cohort_replicator/src/talos_cohort_replicator.rs b/packages/talos_cohort_replicator/src/talos_cohort_replicator.rs index d2bba5d5..cf55bf1f 100644 --- a/packages/talos_cohort_replicator/src/talos_cohort_replicator.rs +++ b/packages/talos_cohort_replicator/src/talos_cohort_replicator.rs @@ -7,7 +7,7 @@ use tokio::{sync::mpsc, task::JoinHandle, try_join}; use crate::{ callbacks::{ReplicatorInstaller, ReplicatorSnapshotProvider}, core::Replicator, - errors::ServiceError, + errors::ReplicatorError, models::ReplicatorCandidate, services::{ replicator_service::{replicator_service, ReplicatorServiceConfig}, @@ -57,15 +57,18 @@ pub struct CohortReplicatorConfig { pub statemap_installer_threadpool: u64, } -async fn flatten_service_result(handle: JoinHandle>) -> Result { +async fn flatten_service_result(handle: JoinHandle>) -> Result { match handle.await { Ok(Ok(result)) => Ok(result), Ok(Err(err)) => Err(err), - Err(err) => Err(ServiceError { - reason: format!("handling failed with error={err:?}"), + Err(err) => Err(ReplicatorError { + kind: crate::errors::ReplicatorErrorKind::Internal, + reason: err.to_string(), + cause: None, }), } } + /// Entry point to replicator and statemap installer /// @@ -74,7 +77,7 @@ pub async fn talos_cohort_replicator( statemap_installer: Arc, // Used by Statemap queue service snapshot_api: Snap, // Used by Statemap Installer service. config: CohortReplicatorConfig, -) -> Result<((), (), ()), ServiceError> +) -> Result<((), (), ()), ReplicatorError> where M: MessageReciever + Send + Sync + 'static, Snap: ReplicatorSnapshotProvider + Send + Sync + 'static,