From f75c2b823743990f1c22d052af3c5bce02c00cb7 Mon Sep 17 00:00:00 2001 From: Ian Thomas Date: Mon, 22 Jul 2024 09:30:28 +0100 Subject: [PATCH] Add buffered stdin to accept terminal input whilst running WASM commands --- README.md | 4 +- package.json | 2 +- src/buffered_stdin.ts | 202 ++++++ src/terminal.ts | 28 +- src/tokens.ts | 13 +- src/worker.ts | 45 +- tsconfig.json | 2 +- yarn.lock | 1386 ++++++++++++++++++++--------------------- 8 files changed, 957 insertions(+), 725 deletions(-) create mode 100644 src/buffered_stdin.ts diff --git a/README.md b/README.md index 72eb108..7e2b189 100644 --- a/README.md +++ b/README.md @@ -85,9 +85,11 @@ jupyter lite build And serve it: ```bash -jupyter lite serve +jupyter lite serve --LiteBuildConfig.extra_http_headers=Cross-Origin-Embedder-Policy=require-corp --LiteBuildConfig.extra_http_headers=Cross-Origin-Opener-Policy=same-origin ``` +Note the setting of `extra_http_headers` which are required to support `SharedArrayBuffer`. + ### Packaging the extension See [RELEASE](RELEASE.md) diff --git a/package.json b/package.json index cf8cceb..a8b7223 100644 --- a/package.json +++ b/package.json @@ -62,7 +62,7 @@ "@jupyterlab/services": "^7.2.0", "@jupyterlab/terminal": "^4.2.0", "@jupyterlab/terminal-extension": "^4.2.0", - "@jupyterlite/cockle": "^0.0.4", + "@jupyterlite/cockle": "^0.0.5", "@jupyterlite/contents": "^0.3.0 || ^0.4.0-beta.0", "@jupyterlite/server": "^0.3.0 || ^0.4.0-beta.0", "@lumino/coreutils": "^2.1.2", diff --git a/src/buffered_stdin.ts b/src/buffered_stdin.ts new file mode 100644 index 0000000..8349677 --- /dev/null +++ b/src/buffered_stdin.ts @@ -0,0 +1,202 @@ +/** + * Classes to deal with buffered stdin. Both main and webworkers have access to the same + * SharedArrayBuffer and use that to pass stdin characters from the UI (main worker) to the shell + * (webworker). This is necessary when the shell is running a WASM command that is synchronous and + * blocking, as the usual async message passing from main to webworker does not work as the received + * messages would only be processed when the command has finished. + */ + +// Indexes into SharedArrayBuffer. +const MAIN = 0; +const WORKER = 1; +const LENGTH = 2; +const START_CHAR = 3; + +abstract class BufferedStdin { + constructor(sharedArrayBuffer?: SharedArrayBuffer) { + if (sharedArrayBuffer === undefined) { + const length = (this._maxChars + 3) * Int32Array.BYTES_PER_ELEMENT; + this._sharedArrayBuffer = new SharedArrayBuffer(length); + } else { + this._sharedArrayBuffer = sharedArrayBuffer; + } + + this._intArray = new Int32Array(this._sharedArrayBuffer); + if (sharedArrayBuffer === undefined) { + this._intArray[MAIN] = 0; + this._intArray[WORKER] = 0; + } + } + + async disable(): Promise { + this._enabled = false; + this._clear(); + } + + async enable(): Promise { + this._enabled = true; + } + + get enabled(): boolean { + return this._enabled; + } + + protected _clear() { + this._intArray[MAIN] = 0; + this._intArray[WORKER] = 0; + this._readCount = 0; + } + + /** + * Load the character from the shared array buffer and return it. + */ + protected _loadFromSharedArrayBuffer(): number[] { + const len = Atomics.load(this._intArray, LENGTH); + const ret: number[] = []; + for (let i = 0; i < len; i++) { + ret.push(Atomics.load(this._intArray, START_CHAR + i)); + } + return ret; + } + + protected _enabled: boolean = false; + protected _maxChars: number = 8; // Max number of actual characters in a token. + protected _sharedArrayBuffer: SharedArrayBuffer; + protected _intArray: Int32Array; + protected _readCount: number = 0; +} + +export namespace MainBufferedStdin { + export interface ISendStdinNow { + (output: string): Promise; + } +} + +/** + * Main worker buffers characters locally, and stores just one character at a time in the + * SharedArrayBuffer so that the web worker can read it. + */ +export class MainBufferedStdin extends BufferedStdin { + constructor() { + super(); + } + + override async disable(): Promise { + // Send all remaining buffered characters as soon as possible via the supplied sendFunction. + this._disabling = true; + if (this._storedCount !== this._readCount) { + const codes = this._loadFromSharedArrayBuffer(); + let text = ''; + for (const code of codes) { + text += String.fromCharCode(code); + } + await this._sendStdinNow!(text); + } + while (this._buffer.length > 0) { + await this._sendStdinNow!(this._buffer.shift()!); + } + this._disabling = false; + + super.disable(); + } + + get sharedArrayBuffer(): SharedArrayBuffer { + return this._sharedArrayBuffer; + } + + /** + * Push a character to the buffer. + * It may or may not be stored in the SharedArrayBuffer immediately. + */ + async push(char: string) { + // May be multiple characters if ANSI control sequence. + this._buffer.push(char); + this._bufferCount++; + + if (char.length > this._maxChars) { + // Too big, log this and do not pass it on? + console.log(`String '${char}' is too long to buffer`); + } + + if (!this._disabling && this._readCount === this._storedCount) { + this._storeInSharedArrayBuffer(); + } + } + + registerSendStdinNow(sendStdinNow: MainBufferedStdin.ISendStdinNow) { + this._sendStdinNow = sendStdinNow; + } + + /** + * After a successful read by the worker, main checks if another character can be stored in the + * SharedArrayBuffer. + */ + private _afterRead() { + this._readCount = Atomics.load(this._intArray, 1); + if (this._readCount !== this._storedCount) { + throw new Error('Should not happen'); + } + + if (this._bufferCount > this._storedCount) { + this._storeInSharedArrayBuffer(); + } + } + + protected override _clear() { + super._clear(); + this._buffer = []; + this._bufferCount = 0; + this._storedCount = 0; + } + + private _storeInSharedArrayBuffer() { + const char: string = this._buffer.shift()!; + this._storedCount++; + + // Store character in SharedArrayBuffer. + const len = char.length; + Atomics.store(this._intArray, LENGTH, len); + for (let i = 0; i < len; i++) { + Atomics.store(this._intArray, START_CHAR + i, char.charCodeAt(i)); + } + + // Notify web worker that a new character is available. + Atomics.store(this._intArray, MAIN, this._storedCount); + Atomics.notify(this._intArray, MAIN, 1); + + // Async wait for web worker to read this character. + const { async, value } = Atomics.waitAsync( + this._intArray, + WORKER, + this._readCount + ); + if (async) { + value.then(() => this._afterRead()); + } + } + + private _buffer: string[] = []; + private _bufferCount: number = 0; + private _disabling: boolean = false; + private _storedCount: number = 0; + private _sendStdinNow?: MainBufferedStdin.ISendStdinNow; +} + +export class WorkerBufferedStdin extends BufferedStdin { + constructor(sharedArrayBuffer: SharedArrayBuffer) { + super(sharedArrayBuffer); + } + + get(): number[] { + // Wait for main worker to store a new character. + Atomics.wait(this._intArray, MAIN, this._readCount); + const ret = this._loadFromSharedArrayBuffer(); + this._readCount++; + + // Notify main worker that character has been read and a new one can be stored. + Atomics.store(this._intArray, WORKER, this._readCount); + Atomics.notify(this._intArray, WORKER, 1); + + return ret; + } +} diff --git a/src/terminal.ts b/src/terminal.ts index e6c592e..968c248 100644 --- a/src/terminal.ts +++ b/src/terminal.ts @@ -10,6 +10,7 @@ import { Client as WebSocketClient } from 'mock-socket'; +import { MainBufferedStdin } from './buffered_stdin'; import { ITerminal, IRemoteWorkerTerminal } from './tokens'; export class Terminal implements ITerminal { @@ -17,6 +18,7 @@ export class Terminal implements ITerminal { * Construct a new Terminal. */ constructor(readonly options: ITerminal.IOptions) { + this._bufferedStdin = new MainBufferedStdin(); this._initWorker(); } @@ -27,8 +29,22 @@ export class Terminal implements ITerminal { this._remote = wrap(this._worker); const { baseUrl } = this.options; - await this._remote.initialize({ baseUrl }); - this._remote.registerCallbacks(proxy(this._outputCallback.bind(this))); + const { sharedArrayBuffer } = this._bufferedStdin; + await this._remote.initialize({ baseUrl, sharedArrayBuffer }); + this._remote.registerCallbacks( + proxy(this._outputCallback.bind(this)), + proxy(this._enableBufferedStdinCallback.bind(this)) + ); + + this._bufferedStdin.registerSendStdinNow(this._remote.input); + } + + private async _enableBufferedStdinCallback(enable: boolean) { + if (enable) { + await this._bufferedStdin.enable(); + } else { + await this._bufferedStdin.disable(); + } } private async _outputCallback(text: string): Promise { @@ -61,7 +77,12 @@ export class Terminal implements ITerminal { const content = data.slice(1); if (message_type === 'stdin') { - await this._remote!.input(content[0] as string); + const text = content[0] as string; + if (this._bufferedStdin.enabled) { + await this._bufferedStdin.push(text); + } else { + await this._remote!.input(text); + } } else if (message_type === 'set_size') { const rows = content[0] as number; const columns = content[1] as number; @@ -89,4 +110,5 @@ export class Terminal implements ITerminal { private _worker?: Worker; private _remote?: IRemoteWorkerTerminal; private _socket?: WebSocketClient; + private _bufferedStdin: MainBufferedStdin; } diff --git a/src/tokens.ts b/src/tokens.ts index 5070672..75dd428 100644 --- a/src/tokens.ts +++ b/src/tokens.ts @@ -3,7 +3,10 @@ import { TerminalAPI } from '@jupyterlab/services'; -import { IOutputCallback } from '@jupyterlite/cockle'; +import { + IEnableBufferedStdinCallback, + IOutputCallback +} from '@jupyterlite/cockle'; import { Token } from '@lumino/coreutils'; @@ -70,11 +73,14 @@ export namespace IWorkerTerminal { */ export interface IOptions { baseUrl: string; + sharedArrayBuffer: SharedArrayBuffer; } } export namespace IRemote { export type OutputCallback = IOutputCallback & ProxyMarked; + export type EnableBufferedStdinCallback = IEnableBufferedStdinCallback & + ProxyMarked; } export interface IRemote extends IWorkerTerminal { @@ -83,7 +89,10 @@ export interface IRemote extends IWorkerTerminal { */ initialize(options: IWorkerTerminal.IOptions): Promise; - registerCallbacks(outputCallback: IRemote.OutputCallback): void; + registerCallbacks( + outputCallback: IRemote.OutputCallback, + enableBufferedStdinCallback: IRemote.EnableBufferedStdinCallback + ): void; } /** diff --git a/src/worker.ts b/src/worker.ts index 4f90692..b57aa86 100644 --- a/src/worker.ts +++ b/src/worker.ts @@ -3,11 +3,15 @@ import { DriveFS } from '@jupyterlite/contents'; import { expose } from 'comlink'; +import { WorkerBufferedStdin } from './buffered_stdin'; import { IRemote, IWorkerTerminal } from './tokens'; class WorkerTerminal implements IWorkerTerminal { async initialize(options: IWorkerTerminal.IOptions): Promise { this._options = options; + this._bufferedStdin = new WorkerBufferedStdin( + this._options!.sharedArrayBuffer + ); console.log('WorkerTerminal.initialize', this._options, this._wantDriveFS); } @@ -15,8 +19,12 @@ class WorkerTerminal implements IWorkerTerminal { await this._shell!.input(text); } - registerCallbacks(outputCallback: IRemote.OutputCallback) { + registerCallbacks( + outputCallback: IRemote.OutputCallback, + enableBufferedStdinCallback: IRemote.EnableBufferedStdinCallback + ): void { this._outputCallback = outputCallback; + this._enableBufferedStdinCallback = enableBufferedStdinCallback; } async setSize(rows: number, columns: number): Promise { @@ -24,7 +32,13 @@ class WorkerTerminal implements IWorkerTerminal { } async start(): Promise { - this._shell = new Shell(this.output.bind(this), this._mountpoint); + this._shell = new Shell({ + mountpoint: this._mountpoint, + outputCallback: this._output.bind(this), + enableBufferedStdinCallback: this._enableBufferedStdin.bind(this), + stdinCallback: this._getStdin.bind(this) + }); + const { FS, PATH, ERRNO_CODES } = await this._shell.initFilesystem(); if (this._wantDriveFS) { @@ -40,15 +54,32 @@ class WorkerTerminal implements IWorkerTerminal { FS.chdir(this._mountpoint); } else { // Add some dummy files if not using DriveFS. - FS.writeFile('file.txt', 'This is the contents of the file'); - FS.writeFile('other.txt', 'Some other file'); - FS.mkdir('dir'); + FS.writeFile('file.txt', 'This is the contents of the file', { + mode: 0o664 + }); + FS.writeFile('other.txt', 'Some other file', { mode: 0o664 }); + FS.mkdir('dir', 0o775); } await this._shell.start(); } - private async output(text: string): Promise { + private async _enableBufferedStdin(enable: boolean): Promise { + if (enable) { + await this._bufferedStdin!.enable(); + } else { + await this._bufferedStdin!.disable(); + } + if (this._enableBufferedStdinCallback) { + await this._enableBufferedStdinCallback(enable); + } + } + + private _getStdin(): number[] { + return this._bufferedStdin!.get(); + } + + private async _output(text: string): Promise { if (this._outputCallback) { await this._outputCallback(text); } @@ -61,6 +92,8 @@ class WorkerTerminal implements IWorkerTerminal { private _driveFS?: DriveFS; private _outputCallback?: IRemote.OutputCallback; + private _enableBufferedStdinCallback?: IRemote.EnableBufferedStdinCallback; + private _bufferedStdin?: WorkerBufferedStdin; } const obj = new WorkerTerminal(); diff --git a/tsconfig.json b/tsconfig.json index 04aba93..4733c71 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -18,7 +18,7 @@ "rootDir": "src", "strict": true, "strictNullChecks": true, - "target": "ES2018" + "target": "es2022" }, "include": ["src/*"] } diff --git a/yarn.lock b/yarn.lock index 3b1ca84..cb66822 100644 --- a/yarn.lock +++ b/yarn.lock @@ -25,45 +25,45 @@ __metadata: languageName: node linkType: hard -"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/compat-data@npm:7.24.7" - checksum: 1fc276825dd434fe044877367dfac84171328e75a8483a6976aa28bf833b32367e90ee6df25bdd97c287d1aa8019757adcccac9153de70b1932c0d243a978ae9 +"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.24.8": + version: 7.24.9 + resolution: "@babel/compat-data@npm:7.24.9" + checksum: 3590be0f7028bca0565a83f66752c0f0283b818e9e1bb7fc12912822768e379a6ff84c59d77dc64ba62c140b8500a3828d95c0ce013cd62d254a179bae38709b languageName: node linkType: hard "@babel/core@npm:^7.10.2, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.23.9": - version: 7.24.7 - resolution: "@babel/core@npm:7.24.7" + version: 7.24.9 + resolution: "@babel/core@npm:7.24.9" dependencies: "@ampproject/remapping": ^2.2.0 "@babel/code-frame": ^7.24.7 - "@babel/generator": ^7.24.7 - "@babel/helper-compilation-targets": ^7.24.7 - "@babel/helper-module-transforms": ^7.24.7 - "@babel/helpers": ^7.24.7 - "@babel/parser": ^7.24.7 + "@babel/generator": ^7.24.9 + "@babel/helper-compilation-targets": ^7.24.8 + "@babel/helper-module-transforms": ^7.24.9 + "@babel/helpers": ^7.24.8 + "@babel/parser": ^7.24.8 "@babel/template": ^7.24.7 - "@babel/traverse": ^7.24.7 - "@babel/types": ^7.24.7 + "@babel/traverse": ^7.24.8 + "@babel/types": ^7.24.9 convert-source-map: ^2.0.0 debug: ^4.1.0 gensync: ^1.0.0-beta.2 json5: ^2.2.3 semver: ^6.3.1 - checksum: 017497e2a1b4683a885219eef7d2aee83c1c0cf353506b2e180b73540ec28841d8ef1ea1837fa69f8c561574b24ddd72f04764b27b87afedfe0a07299ccef24d + checksum: eae273bee154d6a059e742a2bb7a58b03438a1f70d7909887a28258b29556dc99bcd5cbd41f13cd4755a20b0baf5e82731acb1d3690e02b7a9300fb6d1950e2c languageName: node linkType: hard -"@babel/generator@npm:^7.24.7, @babel/generator@npm:^7.7.2": - version: 7.24.7 - resolution: "@babel/generator@npm:7.24.7" +"@babel/generator@npm:^7.24.8, @babel/generator@npm:^7.24.9, @babel/generator@npm:^7.7.2": + version: 7.24.10 + resolution: "@babel/generator@npm:7.24.10" dependencies: - "@babel/types": ^7.24.7 + "@babel/types": ^7.24.9 "@jridgewell/gen-mapping": ^0.3.5 "@jridgewell/trace-mapping": ^0.3.25 jsesc: ^2.5.1 - checksum: 0ff31a73b15429f1287e4d57b439bba4a266f8c673bb445fe313b82f6d110f586776997eb723a777cd7adad9d340edd162aea4973a90112c5d0cfcaf6686844b + checksum: eb13806e9eb76932ea5205502a85ea650a991c7a6f757fbe859176f6d9b34b3da5a2c1f52a2c24fdbe0045a90438fe6889077e338cdd6c727619dee925af1ba6 languageName: node linkType: hard @@ -86,27 +86,27 @@ __metadata: languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-compilation-targets@npm:7.24.7" +"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.24.7, @babel/helper-compilation-targets@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/helper-compilation-targets@npm:7.24.8" dependencies: - "@babel/compat-data": ^7.24.7 - "@babel/helper-validator-option": ^7.24.7 - browserslist: ^4.22.2 + "@babel/compat-data": ^7.24.8 + "@babel/helper-validator-option": ^7.24.8 + browserslist: ^4.23.1 lru-cache: ^5.1.1 semver: ^6.3.1 - checksum: dfc88bc35e223ade796c7267901728217c665adc5bc2e158f7b0ae850de14f1b7941bec4fe5950ae46236023cfbdeddd9c747c276acf9b39ca31f8dd97dc6cc6 + checksum: 40c9e87212fffccca387504b259a629615d7df10fc9080c113da6c51095d3e8b622a1409d9ed09faf2191628449ea28d582179c5148e2e993a3140234076b8da languageName: node linkType: hard "@babel/helper-create-class-features-plugin@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-create-class-features-plugin@npm:7.24.7" + version: 7.24.8 + resolution: "@babel/helper-create-class-features-plugin@npm:7.24.8" dependencies: "@babel/helper-annotate-as-pure": ^7.24.7 "@babel/helper-environment-visitor": ^7.24.7 "@babel/helper-function-name": ^7.24.7 - "@babel/helper-member-expression-to-functions": ^7.24.7 + "@babel/helper-member-expression-to-functions": ^7.24.8 "@babel/helper-optimise-call-expression": ^7.24.7 "@babel/helper-replace-supers": ^7.24.7 "@babel/helper-skip-transparent-expression-wrappers": ^7.24.7 @@ -114,7 +114,7 @@ __metadata: semver: ^6.3.1 peerDependencies: "@babel/core": ^7.0.0 - checksum: 371a181a1717a9b0cebc97727c8ea9ca6afa34029476a684b6030f9d1ad94dcdafd7de175da10b63ae3ba79e4e82404db8ed968ebf264b768f097e5d64faab71 + checksum: b4707e2c4a2cb504d7656168d887bf653db6fbe8ece4502e28e5798f2ec624dc606f2d6bc4820d31b4dc1b80f7d83d98db83516dda321a76c075e5f531abed0b languageName: node linkType: hard @@ -174,13 +174,13 @@ __metadata: languageName: node linkType: hard -"@babel/helper-member-expression-to-functions@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-member-expression-to-functions@npm:7.24.7" +"@babel/helper-member-expression-to-functions@npm:^7.24.7, @babel/helper-member-expression-to-functions@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/helper-member-expression-to-functions@npm:7.24.8" dependencies: - "@babel/traverse": ^7.24.7 - "@babel/types": ^7.24.7 - checksum: 9fecf412f85fa23b7cf55d19eb69de39f8240426a028b141c9df2aed8cfedf20b3ec3318d40312eb7a3dec9eea792828ce0d590e0ff62da3da532482f537192c + "@babel/traverse": ^7.24.8 + "@babel/types": ^7.24.8 + checksum: bf923d05d81b06857f4ca4fe9c528c9c447a58db5ea39595bb559eae2fce01a8266173db0fd6a2ec129d7bbbb9bb22f4e90008252f7c66b422c76630a878a4bc languageName: node linkType: hard @@ -194,9 +194,9 @@ __metadata: languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-module-transforms@npm:7.24.7" +"@babel/helper-module-transforms@npm:^7.24.7, @babel/helper-module-transforms@npm:^7.24.8, @babel/helper-module-transforms@npm:^7.24.9": + version: 7.24.9 + resolution: "@babel/helper-module-transforms@npm:7.24.9" dependencies: "@babel/helper-environment-visitor": ^7.24.7 "@babel/helper-module-imports": ^7.24.7 @@ -205,7 +205,7 @@ __metadata: "@babel/helper-validator-identifier": ^7.24.7 peerDependencies: "@babel/core": ^7.0.0 - checksum: ddff3b41c2667876b4e4e73d961168f48a5ec9560c95c8c2d109e6221f9ca36c6f90c6317eb7a47f2a3c99419c356e529a86b79174cad0d4f7a61960866b88ca + checksum: ffcf11b678a8d3e6a243285cb5262c37f4d47d507653420c1f7f0bd27076e88177f2b7158850d1a470fcfe923426a2e6571c554c455a90c9755ff488ac36ac40 languageName: node linkType: hard @@ -218,10 +218,10 @@ __metadata: languageName: node linkType: hard -"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.24.7, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": - version: 7.24.7 - resolution: "@babel/helper-plugin-utils@npm:7.24.7" - checksum: 81f2a15751d892e4a8fce25390f973363a5b27596167861d2d6eab0f61856eb2ba389b031a9f19f669c0bd4dd601185828d3cebafd25431be7a1696f2ce3ef68 +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.24.7, @babel/helper-plugin-utils@npm:^7.24.8, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": + version: 7.24.8 + resolution: "@babel/helper-plugin-utils@npm:7.24.8" + checksum: 73b1a83ba8bcee21dc94de2eb7323207391715e4369fd55844bb15cf13e3df6f3d13a40786d990e6370bf0f571d94fc31f70dec96c1d1002058258c35ca3767a languageName: node linkType: hard @@ -280,10 +280,10 @@ __metadata: languageName: node linkType: hard -"@babel/helper-string-parser@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-string-parser@npm:7.24.7" - checksum: 09568193044a578743dd44bf7397940c27ea693f9812d24acb700890636b376847a611cdd0393a928544e79d7ad5b8b916bd8e6e772bc8a10c48a647a96e7b1a +"@babel/helper-string-parser@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/helper-string-parser@npm:7.24.8" + checksum: 39b03c5119216883878655b149148dc4d2e284791e969b19467a9411fccaa33f7a713add98f4db5ed519535f70ad273cdadfd2eb54d47ebbdeac5083351328ce languageName: node linkType: hard @@ -294,10 +294,10 @@ __metadata: languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helper-validator-option@npm:7.24.7" - checksum: 9689166bf3f777dd424c026841c8cd651e41b21242dbfd4569a53086179a3e744c8eddd56e9d10b54142270141c91581b53af0d7c00c82d552d2540e2a919f7e +"@babel/helper-validator-option@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/helper-validator-option@npm:7.24.8" + checksum: a52442dfa74be6719c0608fee3225bd0493c4057459f3014681ea1a4643cd38b68ff477fe867c4b356da7330d085f247f0724d300582fa4ab9a02efaf34d107c languageName: node linkType: hard @@ -313,13 +313,13 @@ __metadata: languageName: node linkType: hard -"@babel/helpers@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/helpers@npm:7.24.7" +"@babel/helpers@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/helpers@npm:7.24.8" dependencies: "@babel/template": ^7.24.7 - "@babel/types": ^7.24.7 - checksum: 934da58098a3670ca7f9f42425b9c44d0ca4f8fad815c0f51d89fc7b64c5e0b4c7d5fec038599de691229ada737edeaf72fad3eba8e16dd5842e8ea447f76b66 + "@babel/types": ^7.24.8 + checksum: 2d7301b1b9c91e518c4766bae171230e243d98461c15eabbd44f8f9c83c297fad5c4a64ad80cfec9ca8e90412fc2b41ee86d7eb35dc8a7611c268bcf1317fe46 languageName: node linkType: hard @@ -335,12 +335,12 @@ __metadata: languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/parser@npm:7.24.7" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.24.7, @babel/parser@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/parser@npm:7.24.8" bin: parser: ./bin/babel-parser.js - checksum: fc9d2c4c8712f89672edc55c0dc5cf640dcec715b56480f111f85c2bc1d507e251596e4110d65796690a96ac37a4b60432af90b3e97bb47e69d4ef83872dbbd6 + checksum: 76f866333bfbd53800ac027419ae523bb0137fc63daa968232eb780e4390136bb6e497cb4a2cf6051a2c318aa335c2e6d2adc17079d60691ae7bde89b28c5688 languageName: node linkType: hard @@ -718,21 +718,21 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-classes@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-classes@npm:7.24.7" +"@babel/plugin-transform-classes@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/plugin-transform-classes@npm:7.24.8" dependencies: "@babel/helper-annotate-as-pure": ^7.24.7 - "@babel/helper-compilation-targets": ^7.24.7 + "@babel/helper-compilation-targets": ^7.24.8 "@babel/helper-environment-visitor": ^7.24.7 "@babel/helper-function-name": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.24.8 "@babel/helper-replace-supers": ^7.24.7 "@babel/helper-split-export-declaration": ^7.24.7 globals: ^11.1.0 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: f01cb31143730d425681e9816020cbb519c7ddb3b6ca308dfaf2821eda5699a746637fc6bf19811e2fb42cfdf8b00a21b31c754da83771a5c280077925677354 + checksum: 9c0f547d67e255b37055461df9c1a578c29bf59c7055bd5b40b07b92e5448af3ca8d853d50056125b7dae9bfe3a4cf1559d61b9ccbc3d2578dd43f15386f12fe languageName: node linkType: hard @@ -748,14 +748,14 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-destructuring@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-destructuring@npm:7.24.7" +"@babel/plugin-transform-destructuring@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/plugin-transform-destructuring@npm:7.24.8" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.24.8 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b9637b27faf9d24a8119bc5a1f98a2f47c69e6441bd8fc71163500be316253a72173308a93122bcf27d8d314ace43344c976f7291cf6376767f408350c8149d4 + checksum: 0b4bd3d608979a1e5bd97d9d42acd5ad405c7fffa61efac4c7afd8e86ea6c2d91ab2d94b6a98d63919571363fe76e0b03c4ff161f0f60241b895842596e4a999 languageName: node linkType: hard @@ -901,16 +901,16 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-modules-commonjs@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-modules-commonjs@npm:7.24.7" +"@babel/plugin-transform-modules-commonjs@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/plugin-transform-modules-commonjs@npm:7.24.8" dependencies: - "@babel/helper-module-transforms": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-module-transforms": ^7.24.8 + "@babel/helper-plugin-utils": ^7.24.8 "@babel/helper-simple-access": ^7.24.7 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: bfda2a0297197ed342e2a02e5f9847a489a3ae40a4a7d7f00f4aeb8544a85e9006e0c5271c8f61f39bc97975ef2717b5594cf9486694377a53433162909d64c1 + checksum: a4cf95b1639c33382064b44558f73ee5fac023f2a94d16e549d2bb55ceebd5cbc10fcddd505d08cd5bc97f5a64af9fd155512358b7dcf7b1a0082e8945cf21c5 languageName: node linkType: hard @@ -1025,16 +1025,16 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-optional-chaining@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-optional-chaining@npm:7.24.7" +"@babel/plugin-transform-optional-chaining@npm:^7.24.7, @babel/plugin-transform-optional-chaining@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/plugin-transform-optional-chaining@npm:7.24.8" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.24.8 "@babel/helper-skip-transparent-expression-wrappers": ^7.24.7 "@babel/plugin-syntax-optional-chaining": ^7.8.3 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 877e7ce9097d475132c7f4d1244de50bb2fd37993dc4580c735f18f8cbc49282f6e77752821bcad5ca9d3528412d2c8a7ee0aa7ca71bb680ff82648e7a5fed25 + checksum: 45e55e3a2fffb89002d3f89aef59c141610f23b60eee41e047380bffc40290b59f64fc649aa7ec5281f73d41b2065410d788acc6afaad2a9f44cad6e8af04442 languageName: node linkType: hard @@ -1154,14 +1154,14 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-typeof-symbol@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/plugin-transform-typeof-symbol@npm:7.24.7" +"@babel/plugin-transform-typeof-symbol@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/plugin-transform-typeof-symbol@npm:7.24.8" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.24.8 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 6bd16b9347614d44187d8f8ee23ebd7be30dabf3632eed5ff0415f35a482e827de220527089eae9cdfb75e85aa72db0e141ebc2247c4b1187c1abcdacdc34895 + checksum: 8663a8e7347cedf181001d99c88cf794b6598c3d82f324098510fe8fb8bd22113995526a77aa35a3cc5d70ffd0617a59dd0d10311a9bf0e1a3a7d3e59b900c00 languageName: node linkType: hard @@ -1213,13 +1213,13 @@ __metadata: linkType: hard "@babel/preset-env@npm:^7.10.2": - version: 7.24.7 - resolution: "@babel/preset-env@npm:7.24.7" + version: 7.24.8 + resolution: "@babel/preset-env@npm:7.24.8" dependencies: - "@babel/compat-data": ^7.24.7 - "@babel/helper-compilation-targets": ^7.24.7 - "@babel/helper-plugin-utils": ^7.24.7 - "@babel/helper-validator-option": ^7.24.7 + "@babel/compat-data": ^7.24.8 + "@babel/helper-compilation-targets": ^7.24.8 + "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-validator-option": ^7.24.8 "@babel/plugin-bugfix-firefox-class-in-computed-class-key": ^7.24.7 "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": ^7.24.7 "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.24.7 @@ -1250,9 +1250,9 @@ __metadata: "@babel/plugin-transform-block-scoping": ^7.24.7 "@babel/plugin-transform-class-properties": ^7.24.7 "@babel/plugin-transform-class-static-block": ^7.24.7 - "@babel/plugin-transform-classes": ^7.24.7 + "@babel/plugin-transform-classes": ^7.24.8 "@babel/plugin-transform-computed-properties": ^7.24.7 - "@babel/plugin-transform-destructuring": ^7.24.7 + "@babel/plugin-transform-destructuring": ^7.24.8 "@babel/plugin-transform-dotall-regex": ^7.24.7 "@babel/plugin-transform-duplicate-keys": ^7.24.7 "@babel/plugin-transform-dynamic-import": ^7.24.7 @@ -1265,7 +1265,7 @@ __metadata: "@babel/plugin-transform-logical-assignment-operators": ^7.24.7 "@babel/plugin-transform-member-expression-literals": ^7.24.7 "@babel/plugin-transform-modules-amd": ^7.24.7 - "@babel/plugin-transform-modules-commonjs": ^7.24.7 + "@babel/plugin-transform-modules-commonjs": ^7.24.8 "@babel/plugin-transform-modules-systemjs": ^7.24.7 "@babel/plugin-transform-modules-umd": ^7.24.7 "@babel/plugin-transform-named-capturing-groups-regex": ^7.24.7 @@ -1275,7 +1275,7 @@ __metadata: "@babel/plugin-transform-object-rest-spread": ^7.24.7 "@babel/plugin-transform-object-super": ^7.24.7 "@babel/plugin-transform-optional-catch-binding": ^7.24.7 - "@babel/plugin-transform-optional-chaining": ^7.24.7 + "@babel/plugin-transform-optional-chaining": ^7.24.8 "@babel/plugin-transform-parameters": ^7.24.7 "@babel/plugin-transform-private-methods": ^7.24.7 "@babel/plugin-transform-private-property-in-object": ^7.24.7 @@ -1286,7 +1286,7 @@ __metadata: "@babel/plugin-transform-spread": ^7.24.7 "@babel/plugin-transform-sticky-regex": ^7.24.7 "@babel/plugin-transform-template-literals": ^7.24.7 - "@babel/plugin-transform-typeof-symbol": ^7.24.7 + "@babel/plugin-transform-typeof-symbol": ^7.24.8 "@babel/plugin-transform-unicode-escapes": ^7.24.7 "@babel/plugin-transform-unicode-property-regex": ^7.24.7 "@babel/plugin-transform-unicode-regex": ^7.24.7 @@ -1295,11 +1295,11 @@ __metadata: babel-plugin-polyfill-corejs2: ^0.4.10 babel-plugin-polyfill-corejs3: ^0.10.4 babel-plugin-polyfill-regenerator: ^0.6.1 - core-js-compat: ^3.31.0 + core-js-compat: ^3.37.1 semver: ^6.3.1 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 1a82c883c7404359b19b7436d0aab05f8dd4e89e8b1f7de127cc65d0ff6a9b1c345211d9c038f5b6e8f93d26f091fa9c73812d82851026ab4ec93f5ed0f0d675 + checksum: efea0039dbb089c9cc0b792b9ac0eef949699584b4c622e2abea062b44b1a0fbcda6ad25e2263ae36a69586889b4a22439a1096aa8152b366e3fedd921ae66ac languageName: node linkType: hard @@ -1324,11 +1324,11 @@ __metadata: linkType: hard "@babel/runtime@npm:^7.8.4": - version: 7.24.7 - resolution: "@babel/runtime@npm:7.24.7" + version: 7.24.8 + resolution: "@babel/runtime@npm:7.24.8" dependencies: regenerator-runtime: ^0.14.0 - checksum: d17f29eed6f848ac15cdf4202a910b741facfb0419a9d79e5c7fa37df6362fc3227f1cc2e248cc6db5e53ddffb4caa6686c488e6e80ce3d29c36a4e74c8734ea + checksum: 6b1e4230580f67a807ad054720812bbefbb024cc2adc1159d050acbb764c4c81c7ac5f7a042c48f578987c5edc2453c71039268df059058e9501fa6023d764b0 languageName: node linkType: hard @@ -1343,32 +1343,32 @@ __metadata: languageName: node linkType: hard -"@babel/traverse@npm:^7.24.7": - version: 7.24.7 - resolution: "@babel/traverse@npm:7.24.7" +"@babel/traverse@npm:^7.24.7, @babel/traverse@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/traverse@npm:7.24.8" dependencies: "@babel/code-frame": ^7.24.7 - "@babel/generator": ^7.24.7 + "@babel/generator": ^7.24.8 "@babel/helper-environment-visitor": ^7.24.7 "@babel/helper-function-name": ^7.24.7 "@babel/helper-hoist-variables": ^7.24.7 "@babel/helper-split-export-declaration": ^7.24.7 - "@babel/parser": ^7.24.7 - "@babel/types": ^7.24.7 + "@babel/parser": ^7.24.8 + "@babel/types": ^7.24.8 debug: ^4.3.1 globals: ^11.1.0 - checksum: 7cd366afe9e7ee77e493779fdf24f67bf5595247289364f4689e29688572505eaeb886d7a8f20ebb9c29fc2de7d0895e4ff9e203e78e39ac67239724d45aa83b + checksum: ee7955476ce031613249f2b0ce9e74a3b7787c9d52e84534fcf39ad61aeb0b811a4cd83edc157608be4886f04c6ecf210861e211ba2a3db4fda729cc2048b5ed languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.24.7, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": - version: 7.24.7 - resolution: "@babel/types@npm:7.24.7" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.24.7, @babel/types@npm:^7.24.8, @babel/types@npm:^7.24.9, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": + version: 7.24.9 + resolution: "@babel/types@npm:7.24.9" dependencies: - "@babel/helper-string-parser": ^7.24.7 + "@babel/helper-string-parser": ^7.24.8 "@babel/helper-validator-identifier": ^7.24.7 to-fast-properties: ^2.0.0 - checksum: 3e4437fced97e02982972ce5bebd318c47d42c9be2152c0fd28c6f786cc74086cc0a8fb83b602b846e41df37f22c36254338eada1a47ef9d8a1ec92332ca3ea8 + checksum: 15cb05c45be5d4c49a749575d3742bd005d0e2e850c13fb462754983a5bc1063fbc8f6566246fc064e3e8b21a5a75a37a948f1b3f27189cc90b236fee93f5e51 languageName: node linkType: hard @@ -1627,39 +1627,39 @@ __metadata: linkType: hard "@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.17.0, @codemirror/view@npm:^6.23.0, @codemirror/view@npm:^6.26.0, @codemirror/view@npm:^6.27.0": - version: 6.28.3 - resolution: "@codemirror/view@npm:6.28.3" + version: 6.28.6 + resolution: "@codemirror/view@npm:6.28.6" dependencies: "@codemirror/state": ^6.4.0 style-mod: ^4.1.0 w3c-keyname: ^2.2.4 - checksum: 00aa8d1e3c18ae36dfedb1e86b21873f1f4694772274525ad91276a3b49185cbb5d113f0e36fb542e17c2727b7fbe322e9aedc99f23e358ee5b2e31cedca663b + checksum: 396b2645891f067b13d13ef2aeae1473555ddec5be6466a4e89a783ddef2f52ef373a9035e0c906781e7e94ce06fab1f05d43da59a78150e4ac835b94ba3460f languageName: node linkType: hard "@csstools/css-parser-algorithms@npm:^2.3.1": - version: 2.7.0 - resolution: "@csstools/css-parser-algorithms@npm:2.7.0" + version: 2.7.1 + resolution: "@csstools/css-parser-algorithms@npm:2.7.1" peerDependencies: - "@csstools/css-tokenizer": ^2.3.2 - checksum: 25f27d0b647ee2a215f27b7b41e0e3337f6df93bf8b53e6e86f25b6089dd3d8597133919c1c107b5a8c737c83176305ab7818448348036cbacae30cf70c4433c + "@csstools/css-tokenizer": ^2.4.1 + checksum: 304e6f92e583042c310e368a82b694af563a395e5c55911caefe52765c5acb000b9daa17356ea8a4dd37d4d50132b76de48ced75159b169b53e134ff78b362ba languageName: node linkType: hard "@csstools/css-tokenizer@npm:^2.2.0": - version: 2.3.2 - resolution: "@csstools/css-tokenizer@npm:2.3.2" - checksum: 40c0eaba3f46134c4b8952d25c3076a69463b55c82a5b4bf9be344b3db544c6fee2d1ddb2dd7dd0afb8a347a1903b050c29c83c981aa0f8c3f33fc795bf21e58 + version: 2.4.1 + resolution: "@csstools/css-tokenizer@npm:2.4.1" + checksum: 395c51f8724ddc4851d836f484346bb3ea6a67af936dde12cbf9a57ae321372e79dee717cbe4823599eb0e6fd2d5405cf8873450e986c2fca6e6ed82e7b10219 languageName: node linkType: hard "@csstools/media-query-list-parser@npm:^2.1.4": - version: 2.1.12 - resolution: "@csstools/media-query-list-parser@npm:2.1.12" + version: 2.1.13 + resolution: "@csstools/media-query-list-parser@npm:2.1.13" peerDependencies: - "@csstools/css-parser-algorithms": ^2.7.0 - "@csstools/css-tokenizer": ^2.3.2 - checksum: 0c2655cf247fcae3ab5ea9a38264567c5d590d0b3f7d96d33cb92253e95acab25a60d66f70c15e7bf75365fa796bf19d5387991a110dd8b38ed5b1767573e113 + "@csstools/css-parser-algorithms": ^2.7.1 + "@csstools/css-tokenizer": ^2.4.1 + checksum: 7754b4b9fcc749a51a2bcd34a167ad16e7227ff087f6c4e15b3593d3342413446b72dad37f1adb99c62538730c77e3e47842987ce453fbb3849d329a39ba9ad7 languageName: node linkType: hard @@ -2053,9 +2053,9 @@ __metadata: linkType: hard "@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": - version: 1.4.15 - resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" - checksum: b881c7e503db3fc7f3c1f35a1dd2655a188cc51a3612d76efc8a6eb74728bef5606e6758ee77423e564092b4a518aba569bbb21c9bac5ab7a35b0c6ae7e344c8 + version: 1.5.0 + resolution: "@jridgewell/sourcemap-codec@npm:1.5.0" + checksum: 05df4f2538b3b0f998ea4c1cd34574d0feba216fa5d4ccaef0187d12abf82eafe6021cec8b49f9bb4d90f2ba4582ccc581e72986a5fcf4176ae0cfeb04cf52ec languageName: node linkType: hard @@ -2092,23 +2092,9 @@ __metadata: languageName: node linkType: hard -"@jupyter/ydoc@npm:^1.1.1": - version: 1.1.1 - resolution: "@jupyter/ydoc@npm:1.1.1" - dependencies: - "@jupyterlab/nbformat": ^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0 - "@lumino/coreutils": ^1.11.0 || ^2.0.0 - "@lumino/disposable": ^1.10.0 || ^2.0.0 - "@lumino/signaling": ^1.10.0 || ^2.0.0 - y-protocols: ^1.0.5 - yjs: ^13.5.40 - checksum: a239b1dd57cfc9ba36c06ac5032a1b6388849ae01a1d0db0d45094f71fdadf4d473b4bf8becbef0cfcdc85cae505361fbec0822b02da5aa48e06b66f742dd7a0 - languageName: node - linkType: hard - "@jupyter/ydoc@npm:^2.0.1": - version: 2.0.1 - resolution: "@jupyter/ydoc@npm:2.0.1" + version: 2.1.1 + resolution: "@jupyter/ydoc@npm:2.1.1" dependencies: "@jupyterlab/nbformat": ^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0 "@lumino/coreutils": ^1.11.0 || ^2.0.0 @@ -2116,24 +2102,24 @@ __metadata: "@lumino/signaling": ^1.10.0 || ^2.0.0 y-protocols: ^1.0.5 yjs: ^13.5.40 - checksum: f5f29e1ff3327ebc1cf326f53634e03c4c7bf7733d235087fe26975c16eebd404f23c2f3ba88b6e04b1927846be7162b09b8b8719a4b29e51d0299c745018cbb + checksum: f10268d4d990f454279e3908a172755ed5885fa81bb70c31bdf66923598b283d26491741bece137d1c348619861e9b7f8354296773fe5352b1915e69101a9fb0 languageName: node linkType: hard -"@jupyterlab/application@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/application@npm:4.2.3" +"@jupyterlab/application@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/application@npm:4.2.4" dependencies: "@fortawesome/fontawesome-free": ^5.12.0 - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/docregistry": ^4.2.3 - "@jupyterlab/rendermime": ^4.2.3 - "@jupyterlab/rendermime-interfaces": ^3.10.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/statedb": ^4.2.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/docregistry": ^4.2.4 + "@jupyterlab/rendermime": ^4.2.4 + "@jupyterlab/rendermime-interfaces": ^3.10.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/statedb": ^4.2.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/application": ^2.3.1 "@lumino/commands": ^2.3.0 @@ -2144,23 +2130,23 @@ __metadata: "@lumino/properties": ^2.0.1 "@lumino/signaling": ^2.1.2 "@lumino/widgets": ^2.3.2 - checksum: a9dd2b818467f44ffefeab13ed2ca89a2688ff0b0a1a6becd33fc5cca9b70fb0745297812bab56249615f45b125e8129c68939312bb3371b3f50da0e63eef23c + checksum: f2b8c06ad4ee370ed21476c39bfa176bdfe9ef38ec471ea2533a521365655e946b98a7cfa0f2a7f02aab13ad1733c5b24b30760db63bb76124d15d0c78968269 languageName: node linkType: hard -"@jupyterlab/apputils@npm:^4.3.3": - version: 4.3.3 - resolution: "@jupyterlab/apputils@npm:4.3.3" +"@jupyterlab/apputils@npm:^4.3.4": + version: 4.3.4 + resolution: "@jupyterlab/apputils@npm:4.3.4" dependencies: - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/observables": ^5.2.3 - "@jupyterlab/rendermime-interfaces": ^3.10.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/settingregistry": ^4.2.3 - "@jupyterlab/statedb": ^4.2.3 - "@jupyterlab/statusbar": ^4.2.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/observables": ^5.2.4 + "@jupyterlab/rendermime-interfaces": ^3.10.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/settingregistry": ^4.2.4 + "@jupyterlab/statedb": ^4.2.4 + "@jupyterlab/statusbar": ^4.2.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/commands": ^2.3.0 "@lumino/coreutils": ^2.1.2 @@ -2173,27 +2159,27 @@ __metadata: "@types/react": ^18.0.26 react: ^18.2.0 sanitize-html: ~2.12.1 - checksum: c906e899e2598a145789ea27ebd3048ef0877aea90aa5fd1261115b5af002afc6aa5157ccc061fb2de15184922f66eadbb2e23c9187433396a28ec9c42f455dc + checksum: 403e1090506d36eac46191147e832b8897c8daf5981104a085ed654338c9fbb44594d7b63fde219ba22fb94c8070c8cf5fca50a78f0728aafb4a4e2e795eb719 languageName: node linkType: hard -"@jupyterlab/attachments@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/attachments@npm:4.2.3" +"@jupyterlab/attachments@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/attachments@npm:4.2.4" dependencies: - "@jupyterlab/nbformat": ^4.2.3 - "@jupyterlab/observables": ^5.2.3 - "@jupyterlab/rendermime": ^4.2.3 - "@jupyterlab/rendermime-interfaces": ^3.10.3 + "@jupyterlab/nbformat": ^4.2.4 + "@jupyterlab/observables": ^5.2.4 + "@jupyterlab/rendermime": ^4.2.4 + "@jupyterlab/rendermime-interfaces": ^3.10.4 "@lumino/disposable": ^2.1.2 "@lumino/signaling": ^2.1.2 - checksum: 21325cd4cf108f21c997696d9b71efa3a77ce218d28777676dda0519dd92e76e43234c08a433e9473024dcfeb92e3a53ecb6284ef2aff870c0bd21f7d384ec3a + checksum: cf4f394c42323919a356c40b32a2cb6bb027d9378fd93b59aeec494214fe43387bf7d5cf58b7625d4b58c39ce50b23186a15361e201db4f7b6db01e2462edae3 languageName: node linkType: hard "@jupyterlab/builder@npm:^4.0.0": - version: 4.2.3 - resolution: "@jupyterlab/builder@npm:4.2.3" + version: 4.2.4 + resolution: "@jupyterlab/builder@npm:4.2.4" dependencies: "@lumino/algorithm": ^2.0.1 "@lumino/application": ^2.3.1 @@ -2228,32 +2214,32 @@ __metadata: worker-loader: ^3.0.2 bin: build-labextension: lib/build-labextension.js - checksum: 6bc0d3a7404cecf53c4378a051e96e51b777e2017c2890ae9331f51e9433ad643c6627bf61d4a0710c1b2cb0d4839bef79a02656b9cef04bf0ec1e913bf3a890 + checksum: 2488e2013afc5499c409a14c34e9fe92ec30cd99622cdb2f00f42a4cced66afac0a1cdf081cf035f2329b50303f91a265146c1e895e832ddd3651c29e2523844 languageName: node linkType: hard -"@jupyterlab/cells@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/cells@npm:4.2.3" +"@jupyterlab/cells@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/cells@npm:4.2.4" dependencies: "@codemirror/state": ^6.4.1 "@codemirror/view": ^6.26.0 "@jupyter/ydoc": ^2.0.1 - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/attachments": ^4.2.3 - "@jupyterlab/codeeditor": ^4.2.3 - "@jupyterlab/codemirror": ^4.2.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/documentsearch": ^4.2.3 - "@jupyterlab/filebrowser": ^4.2.3 - "@jupyterlab/nbformat": ^4.2.3 - "@jupyterlab/observables": ^5.2.3 - "@jupyterlab/outputarea": ^4.2.3 - "@jupyterlab/rendermime": ^4.2.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/toc": ^6.2.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/attachments": ^4.2.4 + "@jupyterlab/codeeditor": ^4.2.4 + "@jupyterlab/codemirror": ^4.2.4 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/documentsearch": ^4.2.4 + "@jupyterlab/filebrowser": ^4.2.4 + "@jupyterlab/nbformat": ^4.2.4 + "@jupyterlab/observables": ^5.2.4 + "@jupyterlab/outputarea": ^4.2.4 + "@jupyterlab/rendermime": ^4.2.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/toc": ^6.2.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/coreutils": ^2.1.2 "@lumino/domutils": ^2.0.1 @@ -2264,23 +2250,23 @@ __metadata: "@lumino/virtualdom": ^2.0.1 "@lumino/widgets": ^2.3.2 react: ^18.2.0 - checksum: faaaf969d908d6d0f5713ca23d83bf7f69a8afb9ea72b37722a047afc832e4f3ea97299921ff92575a77d5b4856c2862a7b97823b97fe707a16f435d77e1ed1d + checksum: 5fb21e53e73b1ee24d09fe5f6300009d858a36dbfafba9d25ad7b27d0ea9cdd4d06ee9b238bd29553e92a166dbc181d489aec294eda2d411e3d59664cd3599f1 languageName: node linkType: hard -"@jupyterlab/codeeditor@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/codeeditor@npm:4.2.3" +"@jupyterlab/codeeditor@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/codeeditor@npm:4.2.4" dependencies: "@codemirror/state": ^6.4.1 "@jupyter/ydoc": ^2.0.1 - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/nbformat": ^4.2.3 - "@jupyterlab/observables": ^5.2.3 - "@jupyterlab/statusbar": ^4.2.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/nbformat": ^4.2.4 + "@jupyterlab/observables": ^5.2.4 + "@jupyterlab/statusbar": ^4.2.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 "@lumino/dragdrop": ^2.1.4 @@ -2288,13 +2274,13 @@ __metadata: "@lumino/signaling": ^2.1.2 "@lumino/widgets": ^2.3.2 react: ^18.2.0 - checksum: 36e402e35043deb4e40879760eb2e68bd4f6802751e64761cd7d46fc11dbbadfd43481d1fbda91a205cb8a269b9ac1fe3130e0597eb10c63231b2b5087341cad + checksum: 851f7ab884030c41317171aa7e699e37440a41a1aff0859e7f7aaf10d8204802817c25ab227d7f24863ba1ffe689ad06ea7674b53073037b7b59df21613cdfe0 languageName: node linkType: hard -"@jupyterlab/codemirror@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/codemirror@npm:4.2.3" +"@jupyterlab/codemirror@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/codemirror@npm:4.2.4" dependencies: "@codemirror/autocomplete": ^6.15.0 "@codemirror/commands": ^6.3.3 @@ -2317,11 +2303,11 @@ __metadata: "@codemirror/state": ^6.4.1 "@codemirror/view": ^6.26.0 "@jupyter/ydoc": ^2.0.1 - "@jupyterlab/codeeditor": ^4.2.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/documentsearch": ^4.2.3 - "@jupyterlab/nbformat": ^4.2.3 - "@jupyterlab/translation": ^4.2.3 + "@jupyterlab/codeeditor": ^4.2.4 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/documentsearch": ^4.2.4 + "@jupyterlab/nbformat": ^4.2.4 + "@jupyterlab/translation": ^4.2.4 "@lezer/common": ^1.2.1 "@lezer/generator": ^1.7.0 "@lezer/highlight": ^1.2.0 @@ -2330,13 +2316,13 @@ __metadata: "@lumino/disposable": ^2.1.2 "@lumino/signaling": ^2.1.2 yjs: ^13.5.40 - checksum: 0464ca3ddd6df260bbcf0edc5b66a23b76d648e3e4497678cecadfab2286f4e8de8e9bb87b1c1cc9d1bec72a89e1c26770c6af94127e88cbc1ac216b79f32ffe + checksum: 2cceaabd8d7400d80e167d8130697fac4877b7b39d3a63b7b20b6ae4422bd27f34738b678deb2b1de3c6db3452fa6b103c50d9817263ce7246538927d6b1a0cc languageName: node linkType: hard -"@jupyterlab/coreutils@npm:^6.1.8, @jupyterlab/coreutils@npm:^6.2.2, @jupyterlab/coreutils@npm:^6.2.3": - version: 6.2.3 - resolution: "@jupyterlab/coreutils@npm:6.2.3" +"@jupyterlab/coreutils@npm:^6.2.2, @jupyterlab/coreutils@npm:^6.2.4, @jupyterlab/coreutils@npm:~6.2.3": + version: 6.2.4 + resolution: "@jupyterlab/coreutils@npm:6.2.4" dependencies: "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 @@ -2344,36 +2330,22 @@ __metadata: minimist: ~1.2.0 path-browserify: ^1.0.0 url-parse: ~1.5.4 - checksum: 3c3ac6297c92c811839f932c5ba7b71ad9507b16591e90827b8c8b7986cc597cecc0a3c5f80652b6ae2a2b75f194f8944a8b99f5f1108cac89daa201b2bfc881 + checksum: 4ce2c660dea8a174e805b00cdecfa0b00fd7500cd07f5fbb62c69b48722728162baf90dc9c86c8e72044052d9c0217a53d12a7a5ebdbe9714865d18b8e66593f languageName: node linkType: hard -"@jupyterlab/coreutils@npm:~6.1.5": - version: 6.1.8 - resolution: "@jupyterlab/coreutils@npm:6.1.8" +"@jupyterlab/docmanager@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/docmanager@npm:4.2.4" dependencies: - "@lumino/coreutils": ^2.1.2 - "@lumino/disposable": ^2.1.2 - "@lumino/signaling": ^2.1.2 - minimist: ~1.2.0 - path-browserify: ^1.0.0 - url-parse: ~1.5.4 - checksum: 1049c78bdbffb247fe7e7be4e082fe15711ca0d8da997d6da7042e0299d7ebbf1d0341d830ae0ab451bf8dfbfc30027bf3f063fc7e35210409a7aa56fe94cee9 - languageName: node - linkType: hard - -"@jupyterlab/docmanager@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/docmanager@npm:4.2.3" - dependencies: - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/docregistry": ^4.2.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/statedb": ^4.2.3 - "@jupyterlab/statusbar": ^4.2.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/docregistry": ^4.2.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/statedb": ^4.2.4 + "@jupyterlab/statusbar": ^4.2.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 @@ -2383,24 +2355,24 @@ __metadata: "@lumino/signaling": ^2.1.2 "@lumino/widgets": ^2.3.2 react: ^18.2.0 - checksum: cb17332ecbb030378e6b2d14c612313c0ba63b15fed12d3f9c3aae1d14783bc2cde52bbf0e441faee34d1addf653f45a7c0b8f937a2c5acaee964c443044e669 + checksum: d821bf84b49c905d051041c18d453a6dbf165d12ce34c05fce1a871496108fa1aad48416c41dc8363d48a0b587a2f75440e7fbe073d803d5b607e9945705e553 languageName: node linkType: hard -"@jupyterlab/docregistry@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/docregistry@npm:4.2.3" +"@jupyterlab/docregistry@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/docregistry@npm:4.2.4" dependencies: "@jupyter/ydoc": ^2.0.1 - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/codeeditor": ^4.2.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/observables": ^5.2.3 - "@jupyterlab/rendermime": ^4.2.3 - "@jupyterlab/rendermime-interfaces": ^3.10.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/codeeditor": ^4.2.4 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/observables": ^5.2.4 + "@jupyterlab/rendermime": ^4.2.4 + "@jupyterlab/rendermime-interfaces": ^3.10.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 @@ -2409,17 +2381,17 @@ __metadata: "@lumino/signaling": ^2.1.2 "@lumino/widgets": ^2.3.2 react: ^18.2.0 - checksum: da4634294f8e09e7ae8c0a930450291e5b865bfdec107f4d7ea2353cffec12405ca58f57eef50e0ab853db46f5e8a386f03e32e2f96673d7d906f114af823510 + checksum: 725d4a6f4fc960ff9607b82c0d8aa065a0c7770d730ae5022be9db8defede6fa65f3c03d65c4518df8a651219d347c9d7ca75c18134907847e3759154c325650 languageName: node linkType: hard -"@jupyterlab/documentsearch@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/documentsearch@npm:4.2.3" +"@jupyterlab/documentsearch@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/documentsearch@npm:4.2.4" dependencies: - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/commands": ^2.3.0 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 @@ -2428,23 +2400,23 @@ __metadata: "@lumino/signaling": ^2.1.2 "@lumino/widgets": ^2.3.2 react: ^18.2.0 - checksum: af3c9bd88e132b0d9e2a829244196e603720ff92404f05475d1b36f837d10a07579201669d91d9a2b1d8391ec17e46ab965c7b0fa608c753a176af69a117ab0b + checksum: 06f299de3a0eb40a72b27f0d7628f3e0109f1fa22208021ca79655209d14b1db83b15cf5c6d963f86b61ad33c418adc4ec81c4fbd68128a9b71d7d0200ee6061 languageName: node linkType: hard -"@jupyterlab/filebrowser@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/filebrowser@npm:4.2.3" - dependencies: - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/docmanager": ^4.2.3 - "@jupyterlab/docregistry": ^4.2.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/statedb": ^4.2.3 - "@jupyterlab/statusbar": ^4.2.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 +"@jupyterlab/filebrowser@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/filebrowser@npm:4.2.4" + dependencies: + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/docmanager": ^4.2.4 + "@jupyterlab/docregistry": ^4.2.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/statedb": ^4.2.4 + "@jupyterlab/statusbar": ^4.2.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 @@ -2456,17 +2428,17 @@ __metadata: "@lumino/virtualdom": ^2.0.1 "@lumino/widgets": ^2.3.2 react: ^18.2.0 - checksum: d0a4027d7fe277449f54b07e7778903eb1ba99fd983289fb6fb186e9e8237ba393ad377d06dcaa73a3e0b40826ba0e61403bc932df70923fa78ef7f93e3f9e1c + checksum: 563613e176c50bc0a7015e38a1ebac0307a9a15358bf5eee3dfe021303928b44bd5962f595f3e7bb4c20dff6175d503419f31bc5586713e5c831e3ace89583ca languageName: node linkType: hard -"@jupyterlab/launcher@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/launcher@npm:4.2.3" +"@jupyterlab/launcher@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/launcher@npm:4.2.4" dependencies: - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/commands": ^2.3.0 "@lumino/coreutils": ^2.1.2 @@ -2474,21 +2446,21 @@ __metadata: "@lumino/properties": ^2.0.1 "@lumino/widgets": ^2.3.2 react: ^18.2.0 - checksum: f28e092acd5abb33f66af8c8cb935a2ad8e916e305cb0c396901ce1eaa754d30a08000121373b5c15eda6925cecd7c733e92f6a2cc57a27d7dcaafa78440d4cc + checksum: be6f4dc1b11696fa2f103fea2e95670dea0535d3c4f66ed397d78c50188cb6f617e1b328d3fad087089e7f73a76e2117b2c59d69432115ad27b3301e093905c1 languageName: node linkType: hard -"@jupyterlab/lsp@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/lsp@npm:4.2.3" - dependencies: - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/codeeditor": ^4.2.3 - "@jupyterlab/codemirror": ^4.2.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/docregistry": ^4.2.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/translation": ^4.2.3 +"@jupyterlab/lsp@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/lsp@npm:4.2.4" + dependencies: + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/codeeditor": ^4.2.4 + "@jupyterlab/codemirror": ^4.2.4 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/docregistry": ^4.2.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/translation": ^4.2.4 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 "@lumino/signaling": ^2.1.2 @@ -2497,65 +2469,56 @@ __metadata: vscode-jsonrpc: ^6.0.0 vscode-languageserver-protocol: ^3.17.0 vscode-ws-jsonrpc: ~1.0.2 - checksum: 06a75a3b29770f1cd3e3b16d01fe9b2a3fd30a1b567fe13f89548ab10f4b7f8e075c49107362c16d10bcb98c7de8592496a90f4169502a8ec568394a6081744c + checksum: 0a2b951fbaac5359c679d9d6b76a18c6170f2ad2a35cf549aff269ef1fac8ba3fa2d78ae8930c095630a02ebfab93d01bdb419fa93db4d460661a265d69b6d1b languageName: node linkType: hard -"@jupyterlab/mainmenu@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/mainmenu@npm:4.2.3" +"@jupyterlab/mainmenu@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/mainmenu@npm:4.2.4" dependencies: - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/commands": ^2.3.0 "@lumino/coreutils": ^2.1.2 "@lumino/widgets": ^2.3.2 - checksum: 13868244318c3a82d63f9b7d7d4acdd6c58e822644f242de97b7abc0fa26d735ccbf830b0a338c177ea07fd28163ef6f87d34fbad76814a03b54492a1a8a3b76 + checksum: 1142080fa199eb737b1057d7287979f387273b5338869e46f8cc4187098512db83c2644db438a42899d737f842e0b3dde6861b709e9b55ebfaac28bedfa5ab22 languageName: node linkType: hard -"@jupyterlab/nbformat@npm:^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0, @jupyterlab/nbformat@npm:^4.1.8, @jupyterlab/nbformat@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/nbformat@npm:4.2.3" +"@jupyterlab/nbformat@npm:^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0, @jupyterlab/nbformat@npm:^4.2.4, @jupyterlab/nbformat@npm:~4.2.3": + version: 4.2.4 + resolution: "@jupyterlab/nbformat@npm:4.2.4" dependencies: "@lumino/coreutils": ^2.1.2 - checksum: 890844bfe8966023d8b32ba286be159712509005e7c88eb71ba87f9ab6454cc8cbb2e5922e14ba524a147bb2adff2c82563f9c5e7e2331c6dcdef0fbe18e4f97 + checksum: 61ac75dbaa32ef196eb9e177529ba259c6b0648601646b52ec8a1b25dbca4fce8c6d78090b47fd0674bf993f883fa62223dc52e50a59f1b2c843a9d5c8d02ef4 languageName: node linkType: hard -"@jupyterlab/nbformat@npm:~4.1.5": - version: 4.1.8 - resolution: "@jupyterlab/nbformat@npm:4.1.8" - dependencies: - "@lumino/coreutils": ^2.1.2 - checksum: 11d89ae6fb2385a00e60ab84defc61e3cf28510b029ffbe9ffe27a75bc84f85e64a0d0d16b6deb7b57256fdd651d842a0626128def511e7755121a5a0a71f078 - languageName: node - linkType: hard - -"@jupyterlab/notebook@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/notebook@npm:4.2.3" +"@jupyterlab/notebook@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/notebook@npm:4.2.4" dependencies: "@jupyter/ydoc": ^2.0.1 - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/cells": ^4.2.3 - "@jupyterlab/codeeditor": ^4.2.3 - "@jupyterlab/codemirror": ^4.2.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/docregistry": ^4.2.3 - "@jupyterlab/documentsearch": ^4.2.3 - "@jupyterlab/lsp": ^4.2.3 - "@jupyterlab/nbformat": ^4.2.3 - "@jupyterlab/observables": ^5.2.3 - "@jupyterlab/rendermime": ^4.2.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/settingregistry": ^4.2.3 - "@jupyterlab/statusbar": ^4.2.3 - "@jupyterlab/toc": ^6.2.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/cells": ^4.2.4 + "@jupyterlab/codeeditor": ^4.2.4 + "@jupyterlab/codemirror": ^4.2.4 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/docregistry": ^4.2.4 + "@jupyterlab/documentsearch": ^4.2.4 + "@jupyterlab/lsp": ^4.2.4 + "@jupyterlab/nbformat": ^4.2.4 + "@jupyterlab/observables": ^5.2.4 + "@jupyterlab/rendermime": ^4.2.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/settingregistry": ^4.2.4 + "@jupyterlab/statusbar": ^4.2.4 + "@jupyterlab/toc": ^6.2.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 @@ -2568,47 +2531,34 @@ __metadata: "@lumino/virtualdom": ^2.0.1 "@lumino/widgets": ^2.3.2 react: ^18.2.0 - checksum: 148d24c32118478c878e09f77b2a3b211ab52a80feddeca671fadc6505d241188979cce091089ff2807e567b104a2a8b95739cf81caaf5a60240951b627fdbc7 + checksum: 28e6bbcf233d9f52b6b64d52e334770833efea2a347f5bfaf79ee0e7f2b5e7f6a16cd3420cd8bc82ab687af282eb8fc6a1bdf2513d60f9c2497ffcb07a40cd9e languageName: node linkType: hard -"@jupyterlab/observables@npm:^5.2.3": - version: 5.2.3 - resolution: "@jupyterlab/observables@npm:5.2.3" +"@jupyterlab/observables@npm:^5.2.4, @jupyterlab/observables@npm:~5.2.3": + version: 5.2.4 + resolution: "@jupyterlab/observables@npm:5.2.4" dependencies: "@lumino/algorithm": ^2.0.1 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 "@lumino/messaging": ^2.0.1 "@lumino/signaling": ^2.1.2 - checksum: 4e3a0ee95bb37f3148d9b36804ffdccb960f48e001394facb3c964035d61c7ba46572eb033dbd3422822377e408bb00fa28ab1386a48390f66b09d52aefda483 + checksum: 48af3aadfafa8707643678f127d6c9e4e9a2b9ad009cfdbf9de5df7212bfbbb213ab786b05364d647477416a790580b4fd9aa8ade817fd9108df23a815741b05 languageName: node linkType: hard -"@jupyterlab/observables@npm:~5.1.5": - version: 5.1.8 - resolution: "@jupyterlab/observables@npm:5.1.8" +"@jupyterlab/outputarea@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/outputarea@npm:4.2.4" dependencies: - "@lumino/algorithm": ^2.0.1 - "@lumino/coreutils": ^2.1.2 - "@lumino/disposable": ^2.1.2 - "@lumino/messaging": ^2.0.1 - "@lumino/signaling": ^2.1.2 - checksum: c349b4fea92ef28019c0b3f5a100abdd4384554188d6741234e90e03f3f18b343a22ea8560f9d2eea1a00d4cd9514074d195ec850e930785f28a2f8a624a0f4d - languageName: node - linkType: hard - -"@jupyterlab/outputarea@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/outputarea@npm:4.2.3" - dependencies: - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/nbformat": ^4.2.3 - "@jupyterlab/observables": ^5.2.3 - "@jupyterlab/rendermime": ^4.2.3 - "@jupyterlab/rendermime-interfaces": ^3.10.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/translation": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/nbformat": ^4.2.4 + "@jupyterlab/observables": ^5.2.4 + "@jupyterlab/rendermime": ^4.2.4 + "@jupyterlab/rendermime-interfaces": ^3.10.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/translation": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 @@ -2616,48 +2566,48 @@ __metadata: "@lumino/properties": ^2.0.1 "@lumino/signaling": ^2.1.2 "@lumino/widgets": ^2.3.2 - checksum: 5bcd65c224b944c6e27b7c59136e7548b650bb9ae193873b73d95972fb2894221372f99ab6e98615d8d9f0936f6963a7462e91f24f1483a5aa6cc3d2cf9d33f4 + checksum: 4106822616910bd4fab9e20e78960d2f7402764f0a88ebe3b831ff566705c5c1b732bde015700b3a70a445486f3c2d682d82b70acb00745fd2c83d97f5121ca1 languageName: node linkType: hard -"@jupyterlab/rendermime-interfaces@npm:^3.10.3": - version: 3.10.3 - resolution: "@jupyterlab/rendermime-interfaces@npm:3.10.3" +"@jupyterlab/rendermime-interfaces@npm:^3.10.4": + version: 3.10.4 + resolution: "@jupyterlab/rendermime-interfaces@npm:3.10.4" dependencies: "@lumino/coreutils": ^1.11.0 || ^2.1.2 "@lumino/widgets": ^1.37.2 || ^2.3.2 - checksum: c30f0674e2bafa6a2d4479f36b467a72cce16cf00052d6e0cf718262b9687b9254783295c00f3a45e0331c129ba9cf6abfb638b6ba64131678a8153a55a7ce2a + checksum: 9671389dc1714a1c12e1c5a7b7b28388f75e28a53a05721f26035a731578a36ab88c3805dd7425a74857142100ac1b6ec3edf2bd131430a3bac0a9b23ab1fccd languageName: node linkType: hard -"@jupyterlab/rendermime@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/rendermime@npm:4.2.3" - dependencies: - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/nbformat": ^4.2.3 - "@jupyterlab/observables": ^5.2.3 - "@jupyterlab/rendermime-interfaces": ^3.10.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/translation": ^4.2.3 +"@jupyterlab/rendermime@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/rendermime@npm:4.2.4" + dependencies: + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/nbformat": ^4.2.4 + "@jupyterlab/observables": ^5.2.4 + "@jupyterlab/rendermime-interfaces": ^3.10.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/translation": ^4.2.4 "@lumino/coreutils": ^2.1.2 "@lumino/messaging": ^2.0.1 "@lumino/signaling": ^2.1.2 "@lumino/widgets": ^2.3.2 lodash.escape: ^4.0.1 - checksum: c8ed06714364d45aff72fee58ddb53cd483272bf2d52e5d0aa5bf71ac5013f316c67b7d5b744e38729a4b4f8415f7d4fbe2901e300e21d7b05a2677e04fb44e2 + checksum: 45dbe6a32d4718d1e1e35d47c7aadc35c5f59ed9a813129b7736e6aa95122c8d14ef092ca8f0765fb95258352daee6d48c65016d98efcf3bb2d7f278661753f7 languageName: node linkType: hard -"@jupyterlab/running@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/running@npm:4.2.3" +"@jupyterlab/running@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/running@npm:4.2.4" dependencies: - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/statedb": ^4.2.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/statedb": ^4.2.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 "@lumino/domutils": ^2.0.1 @@ -2665,54 +2615,35 @@ __metadata: "@lumino/signaling": ^2.1.2 "@lumino/widgets": ^2.3.2 react: ^18.2.0 - checksum: eb2176019b725a392b89532d4994a18dc2063425eadff089ceb0f043ecbffcd1b908663466700087bf98d1ce651eef6b1608e57e5f2a587ea33cb5f787b3c5f6 + checksum: 0f5b3d3d1b636ce148af690d8aea567c6214e812f558564cd6e02ffa23cfe02fad3a3e7ad987f448e2b20eb7e32787f02b26eed1f01c62759099853af6660916 languageName: node linkType: hard -"@jupyterlab/services@npm:^7.1.6, @jupyterlab/services@npm:^7.2.0, @jupyterlab/services@npm:^7.2.3": - version: 7.2.3 - resolution: "@jupyterlab/services@npm:7.2.3" +"@jupyterlab/services@npm:^7.1.6, @jupyterlab/services@npm:^7.2.0, @jupyterlab/services@npm:^7.2.4, @jupyterlab/services@npm:~7.2.3": + version: 7.2.4 + resolution: "@jupyterlab/services@npm:7.2.4" dependencies: "@jupyter/ydoc": ^2.0.1 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/nbformat": ^4.2.3 - "@jupyterlab/settingregistry": ^4.2.3 - "@jupyterlab/statedb": ^4.2.3 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/nbformat": ^4.2.4 + "@jupyterlab/settingregistry": ^4.2.4 + "@jupyterlab/statedb": ^4.2.4 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 "@lumino/polling": ^2.1.2 "@lumino/properties": ^2.0.1 "@lumino/signaling": ^2.1.2 ws: ^8.11.0 - checksum: 61d7eb84807ddeeaa5105bd127fb69ebc3ff939436938c1c34fdae616c3dbb5254c09d0a3fa825c76348c43de5834d14de438d4548f122e97522c4bb5172ce8e + checksum: 7262d6ac6bc8a41e03ec45c7d4dd8e8eb2547dff315a9be9c81cff0e5f4f9e3fb12fd3d008cb4132efced9800023470fb5fef5f446307903b8cdee8c1ca96d34 languageName: node linkType: hard -"@jupyterlab/services@npm:~7.1.5": - version: 7.1.8 - resolution: "@jupyterlab/services@npm:7.1.8" - dependencies: - "@jupyter/ydoc": ^1.1.1 - "@jupyterlab/coreutils": ^6.1.8 - "@jupyterlab/nbformat": ^4.1.8 - "@jupyterlab/settingregistry": ^4.1.8 - "@jupyterlab/statedb": ^4.1.8 - "@lumino/coreutils": ^2.1.2 - "@lumino/disposable": ^2.1.2 - "@lumino/polling": ^2.1.2 - "@lumino/properties": ^2.0.1 - "@lumino/signaling": ^2.1.2 - ws: ^8.11.0 - checksum: 56143631829ee1081f6ad2f03343a47d83549d2463f9c4bfddb34e4770c74cf78cbcc5f54aca5338a0d5ce4d28e9b8d8301e6e04b4fb7f66570c49d1ceaf19e5 - languageName: node - linkType: hard - -"@jupyterlab/settingregistry@npm:^4.1.8, @jupyterlab/settingregistry@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/settingregistry@npm:4.2.3" +"@jupyterlab/settingregistry@npm:^4.2.4, @jupyterlab/settingregistry@npm:~4.2.3": + version: 4.2.4 + resolution: "@jupyterlab/settingregistry@npm:4.2.4" dependencies: - "@jupyterlab/nbformat": ^4.2.3 - "@jupyterlab/statedb": ^4.2.3 + "@jupyterlab/nbformat": ^4.2.4 + "@jupyterlab/statedb": ^4.2.4 "@lumino/commands": ^2.3.0 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 @@ -2722,60 +2653,28 @@ __metadata: json5: ^2.2.3 peerDependencies: react: ">=16" - checksum: 72eff0c5af9b6e9c3be36aea7e6b435f4bc52e770284f1c2d49061577d37bbec697afc7fe7673a22ab15e35ce4e88e3a4da485f432f42b1b4ec35bd8dfba4b3c + checksum: c4d1bfef80811697c0979f76b3a0c1f6597d6f07fd227004fd7f1237abc20ac6dda4cfffcb487166625e3c72ffa5c9e25e0a865c86217e9280207362b8864247 languageName: node linkType: hard -"@jupyterlab/settingregistry@npm:~4.1.5": - version: 4.1.8 - resolution: "@jupyterlab/settingregistry@npm:4.1.8" - dependencies: - "@jupyterlab/nbformat": ^4.1.8 - "@jupyterlab/statedb": ^4.1.8 - "@lumino/commands": ^2.2.0 - "@lumino/coreutils": ^2.1.2 - "@lumino/disposable": ^2.1.2 - "@lumino/signaling": ^2.1.2 - "@rjsf/utils": ^5.13.4 - ajv: ^8.12.0 - json5: ^2.2.3 - peerDependencies: - react: ">=16" - checksum: 90067142211fdaf6e9a6e0029fe1bc4c9ae05fa8e88e37f912373a0365bc8d507ef44e0bf83deb1e0bd0855a2cf05b0f541db38fafe3bc37d83422df8671e56a - languageName: node - linkType: hard - -"@jupyterlab/statedb@npm:^4.1.8, @jupyterlab/statedb@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/statedb@npm:4.2.3" +"@jupyterlab/statedb@npm:^4.2.4, @jupyterlab/statedb@npm:~4.2.3": + version: 4.2.4 + resolution: "@jupyterlab/statedb@npm:4.2.4" dependencies: "@lumino/commands": ^2.3.0 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 "@lumino/properties": ^2.0.1 "@lumino/signaling": ^2.1.2 - checksum: 6969e54fa8370a918a4d78391116b83bd3c5afb25e1f66d7369ac2d24659b89a32bbb23500d81b50744698c504a47bd8bc355b16e4ec6ea877b74ec512aab3f8 + checksum: 63d2eeab1e4f45593b417f7aa4bbff5a78703858d2c49497632f37d262acca37e4600766dcd3d744de4048ba8e6726dcbe44718453a1d43eb088380f48e70609 languageName: node linkType: hard -"@jupyterlab/statedb@npm:~4.1.5": - version: 4.1.8 - resolution: "@jupyterlab/statedb@npm:4.1.8" +"@jupyterlab/statusbar@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/statusbar@npm:4.2.4" dependencies: - "@lumino/commands": ^2.2.0 - "@lumino/coreutils": ^2.1.2 - "@lumino/disposable": ^2.1.2 - "@lumino/properties": ^2.0.1 - "@lumino/signaling": ^2.1.2 - checksum: 28983e98affec8b8d6bb8e0cbacfe2c74d1ae48af8e69fddc7f457dcd87210adf5e39dafd21bcad24cfe572f45758c7531cd8d991e9eda894e63392b544bf09d - languageName: node - linkType: hard - -"@jupyterlab/statusbar@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/statusbar@npm:4.2.3" - dependencies: - "@jupyterlab/ui-components": ^4.2.3 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 @@ -2783,36 +2682,36 @@ __metadata: "@lumino/signaling": ^2.1.2 "@lumino/widgets": ^2.3.2 react: ^18.2.0 - checksum: f5da446064b564e6fddd4f77b63548cfb593204adabe68e0c494b999639c6779298fbd75d30b94768e73be6d59b68baf137a1bc5d75de95f962b1c1eb4eca1c1 + checksum: 0c7a79473bfe2cfafcd20f3f3ffe5de4192edcf3bcd0a2cb2ac1e1c9aaf49be31d5f70da0c8301d1d347d87400100a570f00a914367150948eb914dbf480d787 languageName: node linkType: hard "@jupyterlab/terminal-extension@npm:^4.2.0": - version: 4.2.3 - resolution: "@jupyterlab/terminal-extension@npm:4.2.3" - dependencies: - "@jupyterlab/application": ^4.2.3 - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/launcher": ^4.2.3 - "@jupyterlab/mainmenu": ^4.2.3 - "@jupyterlab/running": ^4.2.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/settingregistry": ^4.2.3 - "@jupyterlab/terminal": ^4.2.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + version: 4.2.4 + resolution: "@jupyterlab/terminal-extension@npm:4.2.4" + dependencies: + "@jupyterlab/application": ^4.2.4 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/launcher": ^4.2.4 + "@jupyterlab/mainmenu": ^4.2.4 + "@jupyterlab/running": ^4.2.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/settingregistry": ^4.2.4 + "@jupyterlab/terminal": ^4.2.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/widgets": ^2.3.2 - checksum: c96e23ba7567c1ee6e56231f79daff9768555685e5c906d0f9128c9ee6075da7e2e5e2795c9b830f134a5d6686e6732c0d7cdfc7fbfa5a2396d509b4191204e1 + checksum: d2916bb9713aba41aa39def9aa26c32dfd658afb71be61b20f73b670dc6a71737c77f6758039376d191eab0a6f83008d0be6a6767971e3e7ba598c888ff65407 languageName: node linkType: hard -"@jupyterlab/terminal@npm:^4.2.0, @jupyterlab/terminal@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/terminal@npm:4.2.3" +"@jupyterlab/terminal@npm:^4.2.0, @jupyterlab/terminal@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/terminal@npm:4.2.4" dependencies: - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/translation": ^4.2.3 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/translation": ^4.2.4 "@lumino/coreutils": ^2.1.2 "@lumino/domutils": ^2.0.1 "@lumino/messaging": ^2.0.1 @@ -2822,17 +2721,17 @@ __metadata: "@xterm/addon-web-links": ~0.11.0 "@xterm/addon-webgl": ~0.18.0 "@xterm/xterm": ~5.5.0 - checksum: 9f680ac5fce2c335fce3757db67d244f925e1c10370f8cbf647085bea3540ab7506a904de3521e74e3399ddfe48e18c0fabe05233b6562f6c5f7caff96fba22d + checksum: a188c05ca469f496bb026a915f0d951f1bbfb9ea75d80b413a5d53bfea2c3e7ea58fe090f8bd7d7778bc8f0e4b81902adb13edbfc5b82e379152df97875b6660 languageName: node linkType: hard -"@jupyterlab/testing@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/testing@npm:4.2.3" +"@jupyterlab/testing@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/testing@npm:4.2.4" dependencies: "@babel/core": ^7.10.2 "@babel/preset-env": ^7.10.2 - "@jupyterlab/coreutils": ^6.2.3 + "@jupyterlab/coreutils": ^6.2.4 "@lumino/coreutils": ^2.1.2 "@lumino/signaling": ^2.1.2 deepmerge: ^4.2.2 @@ -2845,68 +2744,68 @@ __metadata: ts-jest: ^29.1.0 peerDependencies: typescript: ">=4.3" - checksum: 06e2a6b2c81c6eee6fc8808ab05a7200089f388fd43d29407be1bb48493d93722331eaf03cb3f875c58df65d6d81f05cf0a8c4b89f2bd34683da8a10e1ebcf56 + checksum: 5f02f7c60a684500c3c4c5847bcb152bb777eab7daae8e68f9a1b10ace008f25c8cecac19c83d2f48050eec2b7716cf946192eb4428170707b342d635b27345e languageName: node linkType: hard "@jupyterlab/testutils@npm:^4.0.0": - version: 4.2.3 - resolution: "@jupyterlab/testutils@npm:4.2.3" - dependencies: - "@jupyterlab/application": ^4.2.3 - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/notebook": ^4.2.3 - "@jupyterlab/rendermime": ^4.2.3 - "@jupyterlab/testing": ^4.2.3 - checksum: bada58b53e21c965a81b83105c1a1335688ca8d47118ba197b170de79c7b9f82c2c680ef6c17b01e0a307d5cfa3f10ef365f4c4b4025d99d139b1cc7d7a6997b - languageName: node - linkType: hard - -"@jupyterlab/toc@npm:^6.2.3": - version: 6.2.3 - resolution: "@jupyterlab/toc@npm:6.2.3" - dependencies: - "@jupyterlab/apputils": ^4.3.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/docregistry": ^4.2.3 - "@jupyterlab/observables": ^5.2.3 - "@jupyterlab/rendermime": ^4.2.3 - "@jupyterlab/rendermime-interfaces": ^3.10.3 - "@jupyterlab/translation": ^4.2.3 - "@jupyterlab/ui-components": ^4.2.3 + version: 4.2.4 + resolution: "@jupyterlab/testutils@npm:4.2.4" + dependencies: + "@jupyterlab/application": ^4.2.4 + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/notebook": ^4.2.4 + "@jupyterlab/rendermime": ^4.2.4 + "@jupyterlab/testing": ^4.2.4 + checksum: 31af6e1b7f2e4c4def9acd66eb7411c1451e62e2e2d7fd31d9944d372c8763861b065afa35cd299e3350b165326041e00a2bddb7aed25d0aad15ba1ecd667fef + languageName: node + linkType: hard + +"@jupyterlab/toc@npm:^6.2.4": + version: 6.2.4 + resolution: "@jupyterlab/toc@npm:6.2.4" + dependencies: + "@jupyterlab/apputils": ^4.3.4 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/docregistry": ^4.2.4 + "@jupyterlab/observables": ^5.2.4 + "@jupyterlab/rendermime": ^4.2.4 + "@jupyterlab/rendermime-interfaces": ^3.10.4 + "@jupyterlab/translation": ^4.2.4 + "@jupyterlab/ui-components": ^4.2.4 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 "@lumino/messaging": ^2.0.1 "@lumino/signaling": ^2.1.2 "@lumino/widgets": ^2.3.2 react: ^18.2.0 - checksum: e855adc3e2d825cbe07cda38c9fe03bfda2b8bbf36c320b30a1a70ab57d8c42cfe11a29ccc8bc7598c769443ed5baec54327830b3a7038b7285db2a3d47b7adb + checksum: 1bfc97bd798f67253a8bb26715525eaabd16b71d1d60d9d99a38285ffa212c6760d8a12ba9e95c1d5e395dd0605f7f9a23755946a6cc18dc9590ff7fe14bae37 languageName: node linkType: hard -"@jupyterlab/translation@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/translation@npm:4.2.3" +"@jupyterlab/translation@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/translation@npm:4.2.4" dependencies: - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/rendermime-interfaces": ^3.10.3 - "@jupyterlab/services": ^7.2.3 - "@jupyterlab/statedb": ^4.2.3 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/rendermime-interfaces": ^3.10.4 + "@jupyterlab/services": ^7.2.4 + "@jupyterlab/statedb": ^4.2.4 "@lumino/coreutils": ^2.1.2 - checksum: 0ca7334bcb09a9738ef3c4a16476f388996e6524d4e4b18c39b7ebec5aad3b6292eb17e3bc3dec73620689f5509f493455eee09d5704addaea78c2a872d6716d + checksum: 9551517b95431dd74e68b1cde2931eb4a4a1edfd21562f8c658ea75c4d3e7c66ecc232e441c8e903639517c3495d2fd367c61418266823491c8e665f5880df1a languageName: node linkType: hard -"@jupyterlab/ui-components@npm:^4.2.3": - version: 4.2.3 - resolution: "@jupyterlab/ui-components@npm:4.2.3" +"@jupyterlab/ui-components@npm:^4.2.4": + version: 4.2.4 + resolution: "@jupyterlab/ui-components@npm:4.2.4" dependencies: "@jupyter/react-components": ^0.15.3 "@jupyter/web-components": ^0.15.3 - "@jupyterlab/coreutils": ^6.2.3 - "@jupyterlab/observables": ^5.2.3 - "@jupyterlab/rendermime-interfaces": ^3.10.3 - "@jupyterlab/translation": ^4.2.3 + "@jupyterlab/coreutils": ^6.2.4 + "@jupyterlab/observables": ^5.2.4 + "@jupyterlab/rendermime-interfaces": ^3.10.4 + "@jupyterlab/translation": ^4.2.4 "@lumino/algorithm": ^2.0.1 "@lumino/commands": ^2.3.0 "@lumino/coreutils": ^2.1.2 @@ -2924,111 +2823,111 @@ __metadata: typestyle: ^2.0.4 peerDependencies: react: ^18.2.0 - checksum: 5fc819d633fc8c9774ccd10dc68e3636b06a59089254b2290cfb15b5a04a57133ba43f6e284274c4fbf0e625f688cf49bf7e2a89758e1d98535c51a7efe53216 + checksum: 79282488905776378976516fee64df86be06fdfd838f702048cccc90870ea6b0ac972f24f305416e48deb15470594f31a9b1245ad6b5a6141643397fb94644af languageName: node linkType: hard -"@jupyterlite/cockle@npm:^0.0.4": - version: 0.0.4 - resolution: "@jupyterlite/cockle@npm:0.0.4" +"@jupyterlite/cockle@npm:^0.0.5": + version: 0.0.5 + resolution: "@jupyterlite/cockle@npm:0.0.5" dependencies: "@jupyterlab/services": ^7.1.6 - "@jupyterlite/contents": ^0.3.0 - checksum: 70f5c3f8c831c6ae0d0ec0e16d1f7972678299fdbfa83eef109997d4b2b14ac09d2f60152fd9f80599afd1b80e80b8e6d0fbc75f35d29928d8b96ef0d67a92a0 + "@jupyterlite/contents": ^0.4.0-beta.0 + checksum: d75b2f4f1741a61fbf059533a067cc6cd13aac69a2c72473bad7012b361c0ea75c83dfac2a7c77c74c5d0bfa08e1e4d769e2a7fb4f3a9d40e6651e96842efe56 languageName: node linkType: hard -"@jupyterlite/contents@npm:^0.3.0, @jupyterlite/contents@npm:^0.3.0 || ^0.4.0-beta.0": - version: 0.3.0 - resolution: "@jupyterlite/contents@npm:0.3.0" +"@jupyterlite/contents@npm:^0.3.0 || ^0.4.0-beta.0, @jupyterlite/contents@npm:^0.4.0-beta.0, @jupyterlite/contents@npm:^0.4.0-rc.0": + version: 0.4.0-rc.0 + resolution: "@jupyterlite/contents@npm:0.4.0-rc.0" dependencies: - "@jupyterlab/nbformat": ~4.1.5 - "@jupyterlab/services": ~7.1.5 - "@jupyterlite/localforage": ^0.3.0 + "@jupyterlab/nbformat": ~4.2.3 + "@jupyterlab/services": ~7.2.3 + "@jupyterlite/localforage": ^0.4.0-rc.0 "@lumino/coreutils": ^2.1.2 "@types/emscripten": ^1.39.6 localforage: ^1.9.0 mime: ^3.0.0 - checksum: b0ca5e9b377c1a312cc04cbc9fce01355a3c956e5760f0ca5db42a520b7285e86cd386703183f3bee997a77ee7a26921b50bfed6e511a9f7f703c375863b1bd9 + checksum: 16dd4d9a642cfd426493b7c874d3c3a0b4818264ae08221936ee6fbb00d2694081acd2cfd0ffe80538994190b871de36dca59908b89699931201c1bb8aa45557 languageName: node linkType: hard -"@jupyterlite/kernel@npm:^0.3.0": - version: 0.3.0 - resolution: "@jupyterlite/kernel@npm:0.3.0" +"@jupyterlite/kernel@npm:^0.4.0-rc.0": + version: 0.4.0-rc.0 + resolution: "@jupyterlite/kernel@npm:0.4.0-rc.0" dependencies: - "@jupyterlab/coreutils": ~6.1.5 - "@jupyterlab/observables": ~5.1.5 - "@jupyterlab/services": ~7.1.5 + "@jupyterlab/coreutils": ~6.2.3 + "@jupyterlab/observables": ~5.2.3 + "@jupyterlab/services": ~7.2.3 "@lumino/coreutils": ^2.1.2 "@lumino/disposable": ^2.1.2 "@lumino/signaling": ^2.1.2 async-mutex: ^0.3.1 comlink: ^4.3.1 mock-socket: ^9.1.0 - checksum: 0c1c4e19077c910f9808b1c14bee98ae0f5af1ed86bd4b8768942fc2717a9834618693686892b3efa455e77014540522dc491d74b6dd9a2d41ad8148d275d802 + checksum: ea0f6f4981333b3acbefc94d2e468f60f075f978ea3652598f3307e5ee552a26433230ffbf4c864193aefeaf194fd8c87b9ae7060fd4d6a311d3b160e4506317 languageName: node linkType: hard -"@jupyterlite/localforage@npm:^0.3.0": - version: 0.3.0 - resolution: "@jupyterlite/localforage@npm:0.3.0" +"@jupyterlite/localforage@npm:^0.4.0-rc.0": + version: 0.4.0-rc.0 + resolution: "@jupyterlite/localforage@npm:0.4.0-rc.0" dependencies: - "@jupyterlab/coreutils": ~6.1.5 + "@jupyterlab/coreutils": ~6.2.3 "@lumino/coreutils": ^2.1.2 localforage: ^1.9.0 localforage-memoryStorageDriver: ^0.9.2 - checksum: e090fe2b0ff18d230ef14e9f69c788b92432c30efeca0222d33378d8282399d86fe8ec446f7cdd29ae13ee31de8b7f2f73c1d03a5504b58c8297c17d8db8bb12 + checksum: 053df1ec34fc70102714236091c0e0d65de3722bddc4ef35b2a9ddbb9387c828b5664e68411af002eb8d83140efea663e60648f7b8956f03fd989bbd3da39fbd languageName: node linkType: hard "@jupyterlite/server@npm:^0.3.0 || ^0.4.0-beta.0": - version: 0.3.0 - resolution: "@jupyterlite/server@npm:0.3.0" - dependencies: - "@jupyterlab/coreutils": ~6.1.5 - "@jupyterlab/nbformat": ~4.1.5 - "@jupyterlab/observables": ~5.1.5 - "@jupyterlab/services": ~7.1.5 - "@jupyterlab/settingregistry": ~4.1.5 - "@jupyterlab/statedb": ~4.1.5 - "@jupyterlite/contents": ^0.3.0 - "@jupyterlite/kernel": ^0.3.0 - "@jupyterlite/session": ^0.3.0 - "@jupyterlite/settings": ^0.3.0 - "@jupyterlite/translation": ^0.3.0 - "@lumino/application": ^2.3.0 + version: 0.4.0-rc.0 + resolution: "@jupyterlite/server@npm:0.4.0-rc.0" + dependencies: + "@jupyterlab/coreutils": ~6.2.3 + "@jupyterlab/nbformat": ~4.2.3 + "@jupyterlab/observables": ~5.2.3 + "@jupyterlab/services": ~7.2.3 + "@jupyterlab/settingregistry": ~4.2.3 + "@jupyterlab/statedb": ~4.2.3 + "@jupyterlite/contents": ^0.4.0-rc.0 + "@jupyterlite/kernel": ^0.4.0-rc.0 + "@jupyterlite/session": ^0.4.0-rc.0 + "@jupyterlite/settings": ^0.4.0-rc.0 + "@jupyterlite/translation": ^0.4.0-rc.0 + "@lumino/application": ^2.3.1 "@lumino/coreutils": ^2.1.2 "@lumino/signaling": ^2.1.2 mock-socket: ^9.1.0 - checksum: d7b738dd5eb4cfd75539241d4d8ebe279e095eea675d142a30181f4f84b381c8aab8400a986bc97d3be4c33793da715211660357782af47d4d4f9f3e10d0416a + checksum: 9fdd51f48a8e4056b1a36a271fe2d2b8d17152345ec658e98779e26b6b69a13fbc32c13e7c5bed7f916b3c7bd1500cb942122cd1e2dde753cc2b29021106bcba languageName: node linkType: hard -"@jupyterlite/session@npm:^0.3.0": - version: 0.3.0 - resolution: "@jupyterlite/session@npm:0.3.0" +"@jupyterlite/session@npm:^0.4.0-rc.0": + version: 0.4.0-rc.0 + resolution: "@jupyterlite/session@npm:0.4.0-rc.0" dependencies: - "@jupyterlab/coreutils": ~6.1.5 - "@jupyterlab/services": ~7.1.5 - "@jupyterlite/kernel": ^0.3.0 + "@jupyterlab/coreutils": ~6.2.3 + "@jupyterlab/services": ~7.2.3 + "@jupyterlite/kernel": ^0.4.0-rc.0 "@lumino/algorithm": ^2.0.1 "@lumino/coreutils": ^2.1.2 - checksum: 80e62c15b77d54f20a904aec741d602f14c87de8e6a67b54fe7d76615dfc7dbe747c79b48863441b89c7a20dc933444609d2ee21387d7b85b041bddb2eb86036 + checksum: 7429b6a4128869e6e484362a99a196238fb488375fdee11d7eac9d81e0f2643044bfddb12aad7500bfc2cddb4831791ace7aeecb82913baf6377c9a759a7693a languageName: node linkType: hard -"@jupyterlite/settings@npm:^0.3.0": - version: 0.3.0 - resolution: "@jupyterlite/settings@npm:0.3.0" +"@jupyterlite/settings@npm:^0.4.0-rc.0": + version: 0.4.0-rc.0 + resolution: "@jupyterlite/settings@npm:0.4.0-rc.0" dependencies: - "@jupyterlab/coreutils": ~6.1.5 - "@jupyterlab/settingregistry": ~4.1.5 - "@jupyterlite/localforage": ^0.3.0 + "@jupyterlab/coreutils": ~6.2.3 + "@jupyterlab/settingregistry": ~4.2.3 + "@jupyterlite/localforage": ^0.4.0-rc.0 "@lumino/coreutils": ^2.1.2 json5: ^2.2.0 localforage: ^1.9.0 - checksum: 343f88fe19cf9b24c1f518bf99d288204e922cddf584bff7424ee5ec52c2824a45b7958c3642a53126bedcc8b400289297b21f02dba5326d801f71c6b30a790e + checksum: 0f639f62b7dd33cabbd1f0cb547e2b27a399079a556987a144a0a520d2a8b48d3633a50f650a601329d376aa4947050f48ac848fc548541961dee18b088de78e languageName: node linkType: hard @@ -3042,7 +2941,7 @@ __metadata: "@jupyterlab/terminal": ^4.2.0 "@jupyterlab/terminal-extension": ^4.2.0 "@jupyterlab/testutils": ^4.0.0 - "@jupyterlite/cockle": ^0.0.4 + "@jupyterlite/cockle": ^0.0.5 "@jupyterlite/contents": ^0.3.0 || ^0.4.0-beta.0 "@jupyterlite/server": ^0.3.0 || ^0.4.0-beta.0 "@lumino/coreutils": ^2.1.2 @@ -3076,13 +2975,13 @@ __metadata: languageName: unknown linkType: soft -"@jupyterlite/translation@npm:^0.3.0": - version: 0.3.0 - resolution: "@jupyterlite/translation@npm:0.3.0" +"@jupyterlite/translation@npm:^0.4.0-rc.0": + version: 0.4.0-rc.0 + resolution: "@jupyterlite/translation@npm:0.4.0-rc.0" dependencies: - "@jupyterlab/coreutils": ~6.1.5 + "@jupyterlab/coreutils": ~6.2.3 "@lumino/coreutils": ^2.1.2 - checksum: 4ad7301f66cea0d1f82ea6a9d748321b0b3be8d238383b9aeb160427695a71a941042fddfd3d9052f19508219a250d8c59affaf76c260f5e8db095a11d5b66dc + checksum: d52704e61f443e911565c96958d0667c265936e53843b75a60e64a28420598fda905281a32289b4e7466ac1971a75a7c6482d9de6e62cd4cd0c43c70aed516c5 languageName: node linkType: hard @@ -3250,7 +3149,7 @@ __metadata: languageName: node linkType: hard -"@lumino/application@npm:^2.3.0, @lumino/application@npm:^2.3.1": +"@lumino/application@npm:^2.3.1": version: 2.4.0 resolution: "@lumino/application@npm:2.4.0" dependencies: @@ -3270,7 +3169,7 @@ __metadata: languageName: node linkType: hard -"@lumino/commands@npm:^2.2.0, @lumino/commands@npm:^2.3.0, @lumino/commands@npm:^2.3.1": +"@lumino/commands@npm:^2.3.0, @lumino/commands@npm:^2.3.1": version: 2.3.1 resolution: "@lumino/commands@npm:2.3.1" dependencies: @@ -3504,8 +3403,8 @@ __metadata: linkType: hard "@rjsf/core@npm:^5.13.4": - version: 5.18.6 - resolution: "@rjsf/core@npm:5.18.6" + version: 5.19.3 + resolution: "@rjsf/core@npm:5.19.3" dependencies: lodash: ^4.17.21 lodash-es: ^4.17.21 @@ -3513,15 +3412,15 @@ __metadata: nanoid: ^3.3.7 prop-types: ^15.8.1 peerDependencies: - "@rjsf/utils": ^5.18.x + "@rjsf/utils": ^5.19.x react: ^16.14.0 || >=17 - checksum: f07b25e34b3f3388fae1fbbf362b191000b3012d223e562699f9b11932d3378c422fc4abe5485c256b5023f8ecb43f071412b7e273af94272a1ee4067c308d44 + checksum: ae2516acad16f9c1c9bb81c998067e2143df77e8accb032edd4ca7595ce19c5f481e9c869b842ea04e0c05d4db4ee03c138c2f9cf5858ba9be129d5e99288473 languageName: node linkType: hard "@rjsf/utils@npm:^5.13.4": - version: 5.18.6 - resolution: "@rjsf/utils@npm:5.18.6" + version: 5.19.3 + resolution: "@rjsf/utils@npm:5.19.3" dependencies: json-schema-merge-allof: ^0.8.1 jsonpointer: ^5.0.1 @@ -3530,7 +3429,7 @@ __metadata: react-is: ^18.2.0 peerDependencies: react: ^16.14.0 || >=17 - checksum: 02d4590abc9d1ae313d222db48fcb0f6e5bf9558ef5a2e1a2c552e8ec21e44a4f32c9fbbc7539c1158216d6627068fd7b81957b78958b69f49de4b81a03a8cce + checksum: 498fa72540f6bc12a65cda98a9dc4ebf22ef393b8f97069a82faee0c6317529145a40df713a43e40809560736c47b1e507c7e611d2985c7fe7f2c38fedb489fe languageName: node linkType: hard @@ -3721,11 +3620,11 @@ __metadata: linkType: hard "@types/node@npm:*": - version: 20.14.9 - resolution: "@types/node@npm:20.14.9" + version: 20.14.11 + resolution: "@types/node@npm:20.14.11" dependencies: undici-types: ~5.26.4 - checksum: 5e9eda1ac8c6cc6bcd1063903ae195eaede9aad1bdad00408a919409cfbcdd2d6535aa3d50346f0d385528f9e03dafc7d1b3bad25aedb1dcd79a6ad39d06c35d + checksum: 24396dea2bc803c2d2ebfdd31a3e6e93818ba1a5933d63cd0f64fad1e2955a8280ba09338a48ffe68cd84748eec8bee27135045f15661aa389656f67fe0b0924 languageName: node linkType: hard @@ -4324,14 +4223,14 @@ __metadata: linkType: hard "ajv@npm:^8.0.0, ajv@npm:^8.0.1, ajv@npm:^8.12.0, ajv@npm:^8.9.0": - version: 8.16.0 - resolution: "ajv@npm:8.16.0" + version: 8.17.1 + resolution: "ajv@npm:8.17.1" dependencies: fast-deep-equal: ^3.1.3 + fast-uri: ^3.0.1 json-schema-traverse: ^1.0.0 require-from-string: ^2.0.2 - uri-js: ^4.4.1 - checksum: bdf3d4c9f1d11e220850051ef4cd89346e951cfb933d6d41be36d45053c1092af1523ee6c62525cce567355caf0a4f4c19a08a93851649c1fa32b4a39b7c4858 + checksum: 1797bf242cfffbaf3b870d13565bd1716b73f214bb7ada9a497063aada210200da36e3ed40237285f3255acc4feeae91b1fb183625331bad27da95973f7253d9 languageName: node linkType: hard @@ -4472,6 +4371,13 @@ __metadata: languageName: node linkType: hard +"async@npm:^3.2.3": + version: 3.2.5 + resolution: "async@npm:3.2.5" + checksum: 5ec77f1312301dee02d62140a6b1f7ee0edd2a0f983b6fd2b0849b969f245225b990b47b8243e7b9ad16451a53e7f68e753700385b706198ced888beedba3af4 + languageName: node + linkType: hard + "asynckit@npm:^0.4.0": version: 0.4.0 resolution: "asynckit@npm:0.4.0" @@ -4649,17 +4555,17 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.21.10, browserslist@npm:^4.22.2, browserslist@npm:^4.23.0": - version: 4.23.1 - resolution: "browserslist@npm:4.23.1" +"browserslist@npm:^4.21.10, browserslist@npm:^4.23.0, browserslist@npm:^4.23.1": + version: 4.23.2 + resolution: "browserslist@npm:4.23.2" dependencies: - caniuse-lite: ^1.0.30001629 - electron-to-chromium: ^1.4.796 + caniuse-lite: ^1.0.30001640 + electron-to-chromium: ^1.4.820 node-releases: ^2.0.14 - update-browserslist-db: ^1.0.16 + update-browserslist-db: ^1.1.0 bin: browserslist: cli.js - checksum: 06189e2d6666a203ce097cc0e713a40477d08420927b79af139211e5712f3cf676fdc4dd6af3aa493d47c09206a344b3420a8315577dbe88c58903132de9b0f5 + checksum: 8212af37f6ca6355da191cf2d4ad49bd0b82854888b9a7e103638fada70d38cbe36d28feeeaa98344cb15d9128f9f74bcc8ce1bfc9011b5fd14381c1c6fb542c languageName: node linkType: hard @@ -4689,8 +4595,8 @@ __metadata: linkType: hard "cacache@npm:^18.0.0": - version: 18.0.3 - resolution: "cacache@npm:18.0.3" + version: 18.0.4 + resolution: "cacache@npm:18.0.4" dependencies: "@npmcli/fs": ^3.1.0 fs-minipass: ^3.0.0 @@ -4704,7 +4610,7 @@ __metadata: ssri: ^10.0.0 tar: ^6.1.11 unique-filename: ^3.0.0 - checksum: b717fd9b36e9c3279bfde4545c3a8f6d5a539b084ee26a9504d48f83694beb724057d26e090b97540f9cc62bea18b9f6cf671c50e18fb7dac60eda9db691714f + checksum: b7422c113b4ec750f33beeca0f426a0024c28e3172f332218f48f963e5b970647fa1ac05679fe5bb448832c51efea9fda4456b9a95c3a1af1105fe6c1833cde2 languageName: node linkType: hard @@ -4754,10 +4660,10 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001629": - version: 1.0.30001640 - resolution: "caniuse-lite@npm:1.0.30001640" - checksum: ec492d8d1e11d1c55e0f5c0f218229369dc0a4bd1b5d0a579a6435865fe8f4c84bde7e816a844cce1b9cdd97f5a85b6dac5599639fabcdb0c4c5bd039e46cbfd +"caniuse-lite@npm:^1.0.30001640": + version: 1.0.30001643 + resolution: "caniuse-lite@npm:1.0.30001643" + checksum: e39991c13a0fd8f5c2aa99c9128188e4c4e9d6a203c3da6270c36285460ef152c5e9410ee4db560aa723904668946afe50541dce9636ab5e61434ba71dc22955 languageName: node linkType: hard @@ -4772,7 +4678,7 @@ __metadata: languageName: node linkType: hard -"chalk@npm:^4.0.0": +"chalk@npm:^4.0.0, chalk@npm:^4.0.2": version: 4.1.2 resolution: "chalk@npm:4.1.2" dependencies: @@ -4980,7 +4886,7 @@ __metadata: languageName: node linkType: hard -"core-js-compat@npm:^3.31.0, core-js-compat@npm:^3.36.1": +"core-js-compat@npm:^3.36.1, core-js-compat@npm:^3.37.1": version: 3.37.1 resolution: "core-js-compat@npm:3.37.1" dependencies: @@ -5392,10 +5298,21 @@ __metadata: languageName: node linkType: hard -"electron-to-chromium@npm:^1.4.796": - version: 1.4.816 - resolution: "electron-to-chromium@npm:1.4.816" - checksum: 5abaa04cee77af4889e68d7fd7305c50b98eaa9b4016b228c85de5713a933767e423e2e6bcd71007fff1c405c5bea79d6e9e9d18efddaa966040fe9e97f43e2e +"ejs@npm:^3.1.10": + version: 3.1.10 + resolution: "ejs@npm:3.1.10" + dependencies: + jake: ^10.8.5 + bin: + ejs: bin/cli.js + checksum: ce90637e9c7538663ae023b8a7a380b2ef7cc4096de70be85abf5a3b9641912dde65353211d05e24d56b1f242d71185c6d00e02cb8860701d571786d92c71f05 + languageName: node + linkType: hard + +"electron-to-chromium@npm:^1.4.820": + version: 1.4.832 + resolution: "electron-to-chromium@npm:1.4.832" + checksum: a1f71cf7665441d28cfe5ff31415d7a64036d83226c40322c1412de118091ad5010fd0da831dc04de115d978e91074756b7fbc9e7788e4f98888f0e194b5bdac languageName: node linkType: hard @@ -5651,11 +5568,11 @@ __metadata: linkType: hard "eslint-plugin-prettier@npm:^5.0.0": - version: 5.1.3 - resolution: "eslint-plugin-prettier@npm:5.1.3" + version: 5.2.1 + resolution: "eslint-plugin-prettier@npm:5.2.1" dependencies: prettier-linter-helpers: ^1.0.0 - synckit: ^0.8.6 + synckit: ^0.9.1 peerDependencies: "@types/eslint": ">=8.0.0" eslint: ">=8.0.0" @@ -5666,7 +5583,7 @@ __metadata: optional: true eslint-config-prettier: optional: true - checksum: eb2a7d46a1887e1b93788ee8f8eb81e0b6b2a6f5a66a62bc6f375b033fc4e7ca16448da99380be800042786e76cf5c0df9c87a51a2c9b960ed47acbd7c0b9381 + checksum: 812f4d1596dcd3a55963212dfbd818a4b38f880741aac75f6869aa740dc5d934060674d3b85d10ff9fec424defa61967dbdef26b8a893a92c9b51880264ed0d9 languageName: node linkType: hard @@ -5767,11 +5684,11 @@ __metadata: linkType: hard "esquery@npm:^1.4.2": - version: 1.5.0 - resolution: "esquery@npm:1.5.0" + version: 1.6.0 + resolution: "esquery@npm:1.6.0" dependencies: estraverse: ^5.1.0 - checksum: aefb0d2596c230118656cd4ec7532d447333a410a48834d80ea648b1e7b5c9bc9ed8b5e33a89cb04e487b60d622f44cf5713bf4abed7c97343edefdc84a35900 + checksum: 08ec4fe446d9ab27186da274d979558557fbdbbd10968fa9758552482720c54152a5640e08b9009e5a30706b66aba510692054d4129d32d0e12e05bbc0b96fb2 languageName: node linkType: hard @@ -5904,6 +5821,13 @@ __metadata: languageName: node linkType: hard +"fast-uri@npm:^3.0.1": + version: 3.0.1 + resolution: "fast-uri@npm:3.0.1" + checksum: 106143ff83705995225dcc559411288f3337e732bb2e264e79788f1914b6bd8f8bc3683102de60b15ba00e6ebb443633cabac77d4ebc5cb228c47cf955e199ff + languageName: node + linkType: hard + "fastest-levenshtein@npm:^1.0.12, fastest-levenshtein@npm:^1.0.16": version: 1.0.16 resolution: "fastest-levenshtein@npm:1.0.16" @@ -5947,6 +5871,15 @@ __metadata: languageName: node linkType: hard +"filelist@npm:^1.0.4": + version: 1.0.4 + resolution: "filelist@npm:1.0.4" + dependencies: + minimatch: ^5.0.1 + checksum: a303573b0821e17f2d5e9783688ab6fbfce5d52aaac842790ae85e704a6f5e4e3538660a63183d6453834dedf1e0f19a9dadcebfa3e926c72397694ea11f5160 + languageName: node + linkType: hard + "fill-range@npm:^7.1.1": version: 7.1.1 resolution: "fill-range@npm:7.1.1" @@ -6206,8 +6139,8 @@ __metadata: linkType: hard "glob@npm:^10.2.2, glob@npm:^10.3.10, glob@npm:^10.3.7": - version: 10.4.2 - resolution: "glob@npm:10.4.2" + version: 10.4.5 + resolution: "glob@npm:10.4.5" dependencies: foreground-child: ^3.1.0 jackspeak: ^3.1.2 @@ -6217,11 +6150,25 @@ __metadata: path-scurry: ^1.11.1 bin: glob: dist/esm/bin.mjs - checksum: bd7c0e30701136e936f414e5f6f82c7f04503f01df77408f177aa584927412f0bde0338e6ec541618cd21eacc57dde33e7b3c6c0a779cc1c6e6a0e14f3d15d9b + checksum: 0bc725de5e4862f9f387fd0f2b274baf16850dcd2714502ccf471ee401803997983e2c05590cb65f9675a3c6f2a58e7a53f9e365704108c6ad3cbf1d60934c4a + languageName: node + linkType: hard + +"glob@npm:^7.1.3, glob@npm:^7.1.4": + version: 7.2.3 + resolution: "glob@npm:7.2.3" + dependencies: + fs.realpath: ^1.0.0 + inflight: ^1.0.4 + inherits: 2 + minimatch: ^3.1.1 + once: ^1.3.0 + path-is-absolute: ^1.0.0 + checksum: 29452e97b38fa704dabb1d1045350fb2467cf0277e155aa9ff7077e90ad81d1ea9d53d3ee63bd37c05b09a065e90f16aec4a65f5b8de401d1dac40bc5605d133 languageName: node linkType: hard -"glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:~7.1.6": +"glob@npm:~7.1.6": version: 7.1.7 resolution: "glob@npm:7.1.7" dependencies: @@ -6694,11 +6641,11 @@ __metadata: linkType: hard "is-core-module@npm:^2.13.0, is-core-module@npm:^2.5.0": - version: 2.14.0 - resolution: "is-core-module@npm:2.14.0" + version: 2.15.0 + resolution: "is-core-module@npm:2.15.0" dependencies: hasown: ^2.0.2 - checksum: 6bba6c8dc99d88d6f3b2746709d82caddcd9565cafd5870e28ab320720e27e6d9d2bb953ba0839ed4d2ee264bfdd14a9fa1bbc242a916f7dacc8aa95f0322256 + checksum: a9f7a52707c9b59d7164094d183bda892514fc3ba3139f245219c7abe7f6e8d3e2cdcf861f52a891a467f785f1dfa5d549f73b0ee715f4ba56e8882d335ea585 languageName: node linkType: hard @@ -6980,15 +6927,29 @@ __metadata: linkType: hard "jackspeak@npm:^3.1.2": - version: 3.4.0 - resolution: "jackspeak@npm:3.4.0" + version: 3.4.3 + resolution: "jackspeak@npm:3.4.3" dependencies: "@isaacs/cliui": ^8.0.2 "@pkgjs/parseargs": ^0.11.0 dependenciesMeta: "@pkgjs/parseargs": optional: true - checksum: 350f6f311018bb175ffbe736b19c26ac0b134bb5a17a638169e89594eb0c24ab1c658ab3a2fda24ff63b3b19292e1a5ec19d2255bc526df704e8168d392bef85 + checksum: be31027fc72e7cc726206b9f560395604b82e0fddb46c4cbf9f97d049bcef607491a5afc0699612eaa4213ca5be8fd3e1e7cd187b3040988b65c9489838a7c00 + languageName: node + linkType: hard + +"jake@npm:^10.8.5": + version: 10.9.2 + resolution: "jake@npm:10.9.2" + dependencies: + async: ^3.2.3 + chalk: ^4.0.2 + filelist: ^1.0.4 + minimatch: ^3.1.2 + bin: + jake: bin/cli.js + checksum: f2dc4a086b4f58446d02cb9be913c39710d9ea570218d7681bb861f7eeaecab7b458256c946aeaa7e548c5e0686cc293e6435501e4047174a3b6a504dcbfcaae languageName: node linkType: hard @@ -7883,9 +7844,9 @@ __metadata: linkType: hard "lru-cache@npm:^10.0.1, lru-cache@npm:^10.2.0": - version: 10.3.0 - resolution: "lru-cache@npm:10.3.0" - checksum: f2289639bd94cf3c87bfd8a77ac991f9afe3af004ddca3548c3dae63ead1c73bba449a60a4e270992e16cf3261b3d4130943234d52ca3a4d4de2fc074a3cc7b5 + version: 10.4.3 + resolution: "lru-cache@npm:10.4.3" + checksum: 6476138d2125387a6d20f100608c2583d415a4f64a0fecf30c9e2dda976614f09cad4baa0842447bd37dd459a7bd27f57d9d8f8ce558805abd487c583f3d774a languageName: node linkType: hard @@ -8109,7 +8070,7 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.2": +"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" dependencies: @@ -8118,6 +8079,15 @@ __metadata: languageName: node linkType: hard +"minimatch@npm:^5.0.1": + version: 5.1.6 + resolution: "minimatch@npm:5.1.6" + dependencies: + brace-expansion: ^2.0.1 + checksum: 7564208ef81d7065a370f788d337cd80a689e981042cb9a1d0e6580b6c6a8c9279eba80010516e258835a988363f99f54a6f711a315089b8b42694f5da9d0d77 + languageName: node + linkType: hard + "minimatch@npm:^9.0.4": version: 9.0.5 resolution: "minimatch@npm:9.0.5" @@ -8290,8 +8260,8 @@ __metadata: linkType: hard "node-gyp@npm:latest": - version: 10.1.0 - resolution: "node-gyp@npm:10.1.0" + version: 10.2.0 + resolution: "node-gyp@npm:10.2.0" dependencies: env-paths: ^2.2.0 exponential-backoff: ^3.1.1 @@ -8299,13 +8269,13 @@ __metadata: graceful-fs: ^4.2.6 make-fetch-happen: ^13.0.0 nopt: ^7.0.0 - proc-log: ^3.0.0 + proc-log: ^4.1.0 semver: ^7.3.5 - tar: ^6.1.2 + tar: ^6.2.1 which: ^4.0.0 bin: node-gyp: bin/node-gyp.js - checksum: 72e2ab4b23fc32007a763da94018f58069fc0694bf36115d49a2b195c8831e12cf5dd1e7a3718fa85c06969aedf8fc126722d3b672ec1cb27e06ed33caee3c60 + checksum: 0233759d8c19765f7fdc259a35eb046ad86c3d09e22f7384613ae2b89647dd27fcf833fdf5293d9335041e91f9b1c539494225959cdb312a5c8080b7534b926f languageName: node linkType: hard @@ -8317,9 +8287,9 @@ __metadata: linkType: hard "node-releases@npm:^2.0.14": - version: 2.0.14 - resolution: "node-releases@npm:2.0.14" - checksum: 59443a2f77acac854c42d321bf1b43dea0aef55cd544c6a686e9816a697300458d4e82239e2d794ea05f7bbbc8a94500332e2d3ac3f11f52e4b16cbe638b3c41 + version: 2.0.18 + resolution: "node-releases@npm:2.0.18" + checksum: ef55a3d853e1269a6d6279b7692cd6ff3e40bc74947945101138745bfdc9a5edabfe72cb19a31a8e45752e1910c4c65c77d931866af6357f242b172b7283f5b3 languageName: node linkType: hard @@ -8396,9 +8366,9 @@ __metadata: linkType: hard "nwsapi@npm:^2.2.2": - version: 2.2.10 - resolution: "nwsapi@npm:2.2.10" - checksum: 5f1d361b38c47ab49727d5ea8bbfeb5867ae6de0e538eec9a8b77c88005ddde36d8b930e0730b50ee5e5dda949112c0f9ffed1bf15e7e1b3cd9cfa319f5a9b6f + version: 2.2.12 + resolution: "nwsapi@npm:2.2.12" + checksum: 4dbce7ecbcf336eef1edcbb5161cbceea95863e63a16d9bcec8e81cbb260bdab3d07e6c7b58354d465dc803eef6d0ea4fb20220a80fa148ae65f18d56df81799 languageName: node linkType: hard @@ -8755,12 +8725,12 @@ __metadata: linkType: hard "postcss-selector-parser@npm:^6.0.13, postcss-selector-parser@npm:^6.0.2, postcss-selector-parser@npm:^6.0.4": - version: 6.1.0 - resolution: "postcss-selector-parser@npm:6.1.0" + version: 6.1.1 + resolution: "postcss-selector-parser@npm:6.1.1" dependencies: cssesc: ^3.0.0 util-deprecate: ^1.0.2 - checksum: 449f614e6706421be307d8638183c61ba45bc3b460fe3815df8971dbb4d59c4087181940d879daee4a7a2daf3d86e915db1cce0c006dd68ca75b4087079273bd + checksum: 1c6a5adfc3c19c6e1e7d94f8addb89a5166fcca72c41f11713043d381ecbe82ce66360c5524e904e17b54f7fc9e6a077994ff31238a456bc7320c3e02e88d92e languageName: node linkType: hard @@ -8799,11 +8769,11 @@ __metadata: linkType: hard "prettier@npm:^3.0.0": - version: 3.3.2 - resolution: "prettier@npm:3.3.2" + version: 3.3.3 + resolution: "prettier@npm:3.3.3" bin: prettier: bin/prettier.cjs - checksum: 5557d8caed0b182f68123c2e1e370ef105251d1dd75800fadaece3d061daf96b1389141634febf776050f9d732c7ae8fd444ff0b4a61b20535e7610552f32c69 + checksum: bc8604354805acfdde6106852d14b045bb20827ad76a5ffc2455b71a8257f94de93f17f14e463fe844808d2ccc87248364a5691488a3304f1031326e62d9276e languageName: node linkType: hard @@ -8818,14 +8788,7 @@ __metadata: languageName: node linkType: hard -"proc-log@npm:^3.0.0": - version: 3.0.0 - resolution: "proc-log@npm:3.0.0" - checksum: 02b64e1b3919e63df06f836b98d3af002b5cd92655cab18b5746e37374bfb73e03b84fe305454614b34c25b485cc687a9eebdccf0242cda8fda2475dd2c97e02 - languageName: node - linkType: hard - -"proc-log@npm:^4.2.0": +"proc-log@npm:^4.1.0, proc-log@npm:^4.2.0": version: 4.2.0 resolution: "proc-log@npm:4.2.0" checksum: 98f6cd012d54b5334144c5255ecb941ee171744f45fca8b43b58ae5a0c1af07352475f481cadd9848e7f0250376ee584f6aa0951a856ff8f021bdfbff4eb33fc @@ -9181,13 +9144,13 @@ __metadata: linkType: hard "rimraf@npm:^5.0.1": - version: 5.0.7 - resolution: "rimraf@npm:5.0.7" + version: 5.0.9 + resolution: "rimraf@npm:5.0.9" dependencies: glob: ^10.3.7 bin: rimraf: dist/esm/bin.mjs - checksum: 884852abf8aefd4667448d87bdab04120a8641266c828cf382ac811713547eda18f81799d2146ffec3178f357d83d44ec01c10095949c82e23551660732bf14f + checksum: e6dd5007e34181e1fa732437499d798035b2f3313887435cb855c5c9055bf9646795fc1c63ef843de830df8577cd9862df2dabf913fe08dcc1758c96de4a4fdb languageName: node linkType: hard @@ -9322,11 +9285,11 @@ __metadata: linkType: hard "semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.5.3, semver@npm:^7.5.4": - version: 7.6.2 - resolution: "semver@npm:7.6.2" + version: 7.6.3 + resolution: "semver@npm:7.6.3" bin: semver: bin/semver.js - checksum: 40f6a95101e8d854357a644da1b8dd9d93ce786d5c6a77227bc69dbb17bea83d0d1d1d7c4cd5920a6df909f48e8bd8a5909869535007f90278289f2451d0292d + checksum: 4110ec5d015c9438f322257b1c51fe30276e5f766a3f64c09edd1d7ea7118ecbc3f379f3b69032bacf13116dc7abc4ad8ce0d7e2bd642e26b0d271b56b61a7d8 languageName: node linkType: hard @@ -9946,13 +9909,13 @@ __metadata: languageName: node linkType: hard -"synckit@npm:^0.8.6": - version: 0.8.8 - resolution: "synckit@npm:0.8.8" +"synckit@npm:^0.9.1": + version: 0.9.1 + resolution: "synckit@npm:0.9.1" dependencies: "@pkgr/core": ^0.1.0 tslib: ^2.6.2 - checksum: 9ed5d33abb785f5f24e2531efd53b2782ca77abf7912f734d170134552b99001915531be5a50297aa45c5701b5c9041e8762e6cd7a38e41e2461c1e7fccdedf8 + checksum: 4042941a4d939675f1d7b01124b8405b6ac616f3e3f396d00e46c67f38d0d5b7f9a1de05bc7ceea4ce80d967b450cfa2460e5f6aca81f7cea8f1a28be9392985 languageName: node linkType: hard @@ -9983,7 +9946,7 @@ __metadata: languageName: node linkType: hard -"tar@npm:^6.1.11, tar@npm:^6.1.2": +"tar@npm:^6.1.11, tar@npm:^6.2.1": version: 6.2.1 resolution: "tar@npm:6.2.1" dependencies: @@ -10020,8 +9983,8 @@ __metadata: linkType: hard "terser@npm:^5.26.0": - version: 5.31.1 - resolution: "terser@npm:5.31.1" + version: 5.31.3 + resolution: "terser@npm:5.31.3" dependencies: "@jridgewell/source-map": ^0.3.3 acorn: ^8.8.2 @@ -10029,7 +9992,7 @@ __metadata: source-map-support: ~0.5.20 bin: terser: bin/terser - checksum: 6ab57e62e9cd690dc99b3d0ee2e07289cd3408109a950c7118bf39e32851a5bf08b67fe19e0ac43a5a98813792ac78101bf25e5aa524f05ae8bb4e0131d0feef + checksum: cb4ccd5cb42c719272959dcae63d41e4696fb304123392943282caa6dfcdc49f94e7c48353af8bcd4fbc34457b240b7f843db7fec21bb2bdc18e01d4f45b035e languageName: node linkType: hard @@ -10121,10 +10084,11 @@ __metadata: linkType: hard "ts-jest@npm:^29.1.0": - version: 29.1.5 - resolution: "ts-jest@npm:29.1.5" + version: 29.2.3 + resolution: "ts-jest@npm:29.2.3" dependencies: bs-logger: 0.x + ejs: ^3.1.10 fast-json-stable-stringify: 2.x jest-util: ^29.0.0 json5: ^2.2.3 @@ -10152,7 +10116,7 @@ __metadata: optional: true bin: ts-jest: cli.js - checksum: 96bfdea46d7faa83457c2647806a31a86f28656f703515fee9f6d2ff1ccfc58ccfbbe3ae9283f40141a85af0def30afe887843be5b002c08ed5d5189c941eab1 + checksum: b405fe2f5f9b8aee8ec83520e91ce61a43b3025069dc59809cfbee7255ac1710d694a6bdfecc5bba5f365b9605d0520d62855d0c1bbf0665096e12a71ed3a642 languageName: node linkType: hard @@ -10371,7 +10335,7 @@ __metadata: languageName: node linkType: hard -"update-browserslist-db@npm:^1.0.16": +"update-browserslist-db@npm:^1.1.0": version: 1.1.0 resolution: "update-browserslist-db@npm:1.1.0" dependencies: @@ -10385,7 +10349,7 @@ __metadata: languageName: node linkType: hard -"uri-js@npm:^4.2.2, uri-js@npm:^4.4.1": +"uri-js@npm:^4.2.2": version: 4.4.1 resolution: "uri-js@npm:4.4.1" dependencies: @@ -10638,8 +10602,8 @@ __metadata: linkType: hard "webpack@npm:^5.76.1, webpack@npm:^5.87.0": - version: 5.92.1 - resolution: "webpack@npm:5.92.1" + version: 5.93.0 + resolution: "webpack@npm:5.93.0" dependencies: "@types/eslint-scope": ^3.7.3 "@types/estree": ^1.0.5 @@ -10670,7 +10634,7 @@ __metadata: optional: true bin: webpack: bin/webpack.js - checksum: 11bec781260c4180883e98a4a15a08df297aca654ded45e70598f688881dd722f992d680addafe6f6342debede345cddcce2b781c50f5cde29d6c0bc33a82452 + checksum: c93bd73d9e1ab49b07e139582187f1c3760ee2cf0163b6288fab2ae210e39e59240a26284e7e5d29bec851255ef4b43c51642c882fa5a94e16ce7cb906deeb47 languageName: node linkType: hard @@ -10853,8 +10817,8 @@ __metadata: linkType: hard "ws@npm:^8.11.0": - version: 8.17.1 - resolution: "ws@npm:8.17.1" + version: 8.18.0 + resolution: "ws@npm:8.18.0" peerDependencies: bufferutil: ^4.0.1 utf-8-validate: ">=5.0.2" @@ -10863,7 +10827,7 @@ __metadata: optional: true utf-8-validate: optional: true - checksum: 442badcce1f1178ec87a0b5372ae2e9771e07c4929a3180321901f226127f252441e8689d765aa5cfba5f50ac60dd830954afc5aeae81609aefa11d3ddf5cecf + checksum: 91d4d35bc99ff6df483bdf029b9ea4bfd7af1f16fc91231a96777a63d263e1eabf486e13a2353970efc534f9faa43bdbf9ee76525af22f4752cbc5ebda333975 languageName: node linkType: hard