From 6d25487f7268982c13b8a088235aa1267285568f Mon Sep 17 00:00:00 2001 From: "Afshin T. Darian" Date: Fri, 2 May 2025 11:21:47 +0100 Subject: [PATCH 1/6] Lint all the things --- src/bluetooth-extension/index.ts | 18 +- src/bluetooth/BluetoothDeviceRunningItem.ts | 17 +- src/bluetooth/BluetoothManager.ts | 71 ++++---- src/bluetooth/icon.ts | 2 - .../components/BatteryGauge.tsx | 52 +++--- .../components/ConnectionStatus.tsx | 13 +- .../components/CopyToClipboard.tsx | 58 ++++--- .../components/DeviceIdentifier.tsx | 2 +- src/movehub-extension/components/Frankie.tsx | 20 ++- .../components/FrankieComponent.tsx | 13 +- .../components/LegoBuildSpecific.tsx | 7 +- .../components/ManualControl.tsx | 155 +++++++++--------- src/movehub-extension/components/MoveHub.tsx | 42 +++-- .../components/MoveHubComponent.tsx | 17 +- .../components/MoveHubList.tsx | 37 +++-- .../components/MoveHubPanel.tsx | 18 +- .../components/MoveHubView.tsx | 69 +++++--- src/movehub-extension/components/Vernie.tsx | 42 +++-- .../components/VernieComponent.tsx | 17 +- src/movehub-extension/index.ts | 38 +++-- src/movehub-extension/moveHub.ts | 15 +- src/movehub-extension/moveHub/hub/hub.ts | 45 +++-- src/movehub-extension/widget.tsx | 45 ++--- style/base.css | 2 +- 24 files changed, 466 insertions(+), 349 deletions(-) diff --git a/src/bluetooth-extension/index.ts b/src/bluetooth-extension/index.ts index f20b645..dc3170f 100644 --- a/src/bluetooth-extension/index.ts +++ b/src/bluetooth-extension/index.ts @@ -64,14 +64,14 @@ const BluetoothSidebarPlugin: JupyterFrontEndPlugin = { console.log('JupyterLab bluetooth-sidebar plugin is activated!'); const trans = translator.load('jupyterlab'); const { commands } = app; - const openDeviceRegistryDialogLabel = trans.__( - 'Add a Device' - ); + const openDeviceRegistryDialogLabel = trans.__('Add a Device'); let runningItemsList: Array; app.commands.addCommand(CommandIDs.disconnectDevice, { - execute: (args) => { - const selectedDevice= bluetoothManager.deviceList.find((device) => device.native.id === args.deviceID as string); + execute: args => { + const selectedDevice = bluetoothManager.deviceList.find( + device => device.native.id === (args.deviceID as string) + ); if (selectedDevice) { bluetoothManager.disconnectDevice(selectedDevice); return selectedDevice; @@ -83,7 +83,6 @@ const BluetoothSidebarPlugin: JupyterFrontEndPlugin = { label: trans.__('Disconnect Device') }); - app.commands.addCommand(CommandIDs.openDeviceRegistryDialog, { execute: async () => { showDialog({ @@ -107,7 +106,6 @@ const BluetoothSidebarPlugin: JupyterFrontEndPlugin = { } }); - managers.add({ name: trans.__('Bluetooth Devices'), supportsMultipleViews: false, @@ -121,8 +119,7 @@ const BluetoothSidebarPlugin: JupyterFrontEndPlugin = { commands ) ); - } - ); + }); return runningItemsList; }, shutdownAll: () => { @@ -152,7 +149,8 @@ const BluetoothSidebarPlugin: JupyterFrontEndPlugin = { export class DropDownRegistry extends Widget - implements Dialog.IBodyWidget { + implements Dialog.IBodyWidget +{ constructor(registry: BluetoothManager.DeviceRegistry) { super(); this._selectList = document.createElement('select'); diff --git a/src/bluetooth/BluetoothDeviceRunningItem.ts b/src/bluetooth/BluetoothDeviceRunningItem.ts index ab68714..158794c 100644 --- a/src/bluetooth/BluetoothDeviceRunningItem.ts +++ b/src/bluetooth/BluetoothDeviceRunningItem.ts @@ -8,8 +8,13 @@ import { CommandRegistry } from '@lumino/commands'; export const disconnectDevice = 'bluetooth-manager:disconnect-device'; export class BluetoothDeviceRunningItem - implements IRunningSessions.IRunningItem { - constructor(device: BluetoothManager.Device, bluetoothManager: BluetoothManager, commands: CommandRegistry) { + implements IRunningSessions.IRunningItem +{ + constructor( + device: BluetoothManager.Device, + bluetoothManager: BluetoothManager, + commands: CommandRegistry + ) { this._device = device; this.bluetoothManager = bluetoothManager; if (this._device.native.name) { @@ -24,11 +29,11 @@ export class BluetoothDeviceRunningItem open() { const commands = this.commands; const deviceID = this._device.native.id; - const menu = new Menu({ commands: commands }) + const menu = new Menu({ commands: commands }); this._device.contextCommands.map((command: string) => { - menu.addItem({ command: command, args: {deviceID}}) - }) - menu.addClass('jp-bluetooth-device-running-item-menu') + menu.addItem({ command: command, args: { deviceID } }); + }); + menu.addClass('jp-bluetooth-device-running-item-menu'); const deviceElement = document.querySelector(`.${this.className}`); if (deviceElement) { const rect = deviceElement.getBoundingClientRect(); diff --git a/src/bluetooth/BluetoothManager.ts b/src/bluetooth/BluetoothManager.ts index c83bcc6..c08376d 100644 --- a/src/bluetooth/BluetoothManager.ts +++ b/src/bluetooth/BluetoothManager.ts @@ -5,7 +5,6 @@ import { buildCompleteIdentifier } from '../bluetooth-extension'; import { IDisposable } from '@lumino/disposable'; import { Dialog, showDialog } from '@jupyterlab/apputils'; - /** * A class used to update the list of connected device and the related signals used to rerender the connected devices section. */ @@ -101,29 +100,24 @@ export class BluetoothManager implements IBluetoothManager { const isWebBluetoothSupported: boolean = navigator.bluetooth ? true : false; if (isWebBluetoothSupported === false) { showDialog({ - title: ('Error'), - body: ( - 'Web Bluetooth is not supported on your browser. It works on Chrome and Edge (Firefox and Explorer are not supported). \n Please also check that the Web Bluetooth flag is properly set to enabled in the Chrome flags (chrome://flags/).' - ), - buttons: [ - Dialog.okButton({ label: ('Close') }) - ] + title: 'Error', + body: 'Web Bluetooth is not supported on your browser. It works on Chrome and Edge (Firefox and Explorer are not supported). \n Please also check that the Web Bluetooth flag is properly set to enabled in the Chrome flags (chrome://flags/).', + buttons: [Dialog.okButton({ label: 'Close' })] }); } - return isWebBluetoothSupported + return isWebBluetoothSupported; } async requestDevice( registryItem: IDeviceRegistryItem ): Promise { - const isWebBluetoothSupported = await this.checkWebBluetoothSupport() + const isWebBluetoothSupported = await this.checkWebBluetoothSupport(); if (isWebBluetoothSupported) { const native = await navigator.bluetooth.requestDevice( registryItem.options ); return native; - } - else { + } else { return; } } @@ -146,7 +140,7 @@ export namespace BluetoothManager { public connected: Signal; public disconnected: Signal; public isDisposed: boolean; - public contextCommands:Array; + public contextCommands: Array; constructor(native: BluetoothDevice) { this.connected = new Signal(this); @@ -154,7 +148,10 @@ export namespace BluetoothManager { this.isConnected = false; this.isDisposed = false; this.native = native; - this.contextCommands = ['bluetooth-manager:disconnect-device', 'bluetooth-manager:add-lego-movehub-control-panel'] + this.contextCommands = [ + 'bluetooth-manager:disconnect-device', + 'bluetooth-manager:add-lego-movehub-control-panel' + ]; } async connectAndGetAllServices(): Promise< @@ -164,40 +161,45 @@ export namespace BluetoothManager { this.isConnected = false; this.disconnected.emit(true); }); - const server = this.native.gatt + const server = this.native.gatt; if (server) { const timeout = 5000; const connectWithTimeout = new Promise((resolve, reject) => { - const timeoutId = setTimeout(() => { - reject( - new Error('Connection to GATT server timed out')); + const timeoutId = setTimeout(() => { + reject(new Error('Connection to GATT server timed out')); server.disconnect(); this.dispose(); }, timeout); - server.connect().then(async () => { - clearTimeout(timeoutId); - resolve(); - this.isConnected = true; - this.connected.emit(true); - }) - .catch((error) => { + server + .connect() + .then(async () => { + clearTimeout(timeoutId); + resolve(); + this.isConnected = true; + this.connected.emit(true); + }) + .catch(error => { server.disconnect(); reject(error); }); }); - await connectWithTimeout + await connectWithTimeout; if (server.connected === true) { const services = await server.getPrimaryServices(); if (!services || services.length === 0) { - throw new Error('Server exists but no service found on the device.'); - } else { return services; } - } - else { - throw new Error('There is no connection to server. No attempt to get a service.') + throw new Error( + 'Server exists but no service found on the device.' + ); + } else { + return services; + } + } else { + throw new Error( + 'There is no connection to server. No attempt to get a service.' + ); } - } - else { + } else { throw new Error('Server is not defined.'); } } @@ -256,7 +258,7 @@ export namespace BluetoothManager { if (service) { return service.getCharacteristics(); } else { - throw new Error('The requested service is not available.') + throw new Error('The requested service is not available.'); } } @@ -267,7 +269,6 @@ export namespace BluetoothManager { const service = await this.getService(serviceUUID); if (service) { return service.getCharacteristic(characteristicUUID); - } else { throw new Error('The requested service is not available.'); } diff --git a/src/bluetooth/icon.ts b/src/bluetooth/icon.ts index 6094fbc..23e72db 100644 --- a/src/bluetooth/icon.ts +++ b/src/bluetooth/icon.ts @@ -19,8 +19,6 @@ export const LegoBrickIcon = new LabIcon({ name: '@jupyterlab/bluetooh-manager:bluetooth-lego-brick', svgstr: LegoBrickSvgstr }); -; - export const GreenCircle = new LabIcon({ name: '@jupyterlab/bluetooh-manager:bluetooth-green-circle', svgstr: GreenCircleSvgstr diff --git a/src/movehub-extension/components/BatteryGauge.tsx b/src/movehub-extension/components/BatteryGauge.tsx index 07f8c60..2934ee8 100644 --- a/src/movehub-extension/components/BatteryGauge.tsx +++ b/src/movehub-extension/components/BatteryGauge.tsx @@ -38,8 +38,8 @@ const batteryCustomizationLight = { lowBatteryColor: 'red', fontFamily: 'Helvetica', fontSize: 20, - showPercentage: true // Set to true to show battery percentage - }, + showPercentage: true // Set to true to show battery percentage + } }; const batteryCustomizationDark = { @@ -72,11 +72,14 @@ const batteryCustomizationDark = { lowBatteryColor: 'red', fontFamily: 'Helvetica', fontSize: 20, - showPercentage: true // Set to true to show battery percentage - }, + showPercentage: true // Set to true to show battery percentage + } }; -export default function BatteryComponent({ device, themeManager }: IMoveHubPanelWithThemeProps) { +export default function BatteryComponent({ + device, + themeManager +}: IMoveHubPanelWithThemeProps) { const [deviceState, setDeviceState] = useState(defaultDeviceInfo); const theme = themeManager.theme; console.log('theme:', theme); @@ -106,45 +109,50 @@ export default function BatteryComponent({ device, themeManager }: IMoveHubPanel const isThemeLight = themeManager.isLight(theme); return ( - {(): JSX.Element => ( + {(): JSX.Element => deviceState.batteryLevel !== undefined && - deviceState.connected === true ? ( + deviceState.connected === true ? ( ) : (
) - )} + }
); } else { - return ( - deviceState.batteryLevel !== undefined && - deviceState.connected === true ? ( - ) : (
) - ) + return deviceState.batteryLevel !== undefined && + deviceState.connected === true ? ( + + ) : ( +
+ ); } } export class BatteryWidget extends ReactWidget { public device: MoveHub; - public themeManager: IThemeManager + public themeManager: IThemeManager; constructor(device: MoveHub, themeManager: IThemeManager) { super(); this.device = device; - this.themeManager = themeManager + this.themeManager = themeManager; } render() { - return ; + return ( + + ); } } diff --git a/src/movehub-extension/components/ConnectionStatus.tsx b/src/movehub-extension/components/ConnectionStatus.tsx index b9ebad2..2e13eef 100644 --- a/src/movehub-extension/components/ConnectionStatus.tsx +++ b/src/movehub-extension/components/ConnectionStatus.tsx @@ -11,7 +11,6 @@ import { BluetoothManager } from '../../bluetooth/BluetoothManager'; export const connectMoveHub = 'bluetooth-manager:connect-movehub'; export const disconnectMoveHub = 'bluetooth-manager:disconnect-movehub'; - export default function ConnectionStatus({ device }: IMoveHubPanelProps) { const [deviceState, setDeviceState] = useState(defaultDeviceInfo); @@ -47,19 +46,23 @@ export class ConnectionStatusWidget extends ReactWidget { public device: MoveHub; public menu: Menu; - constructor(device: MoveHub, bluetoothManager: BluetoothManager, commands: CommandRegistry) { + constructor( + device: MoveHub, + bluetoothManager: BluetoothManager, + commands: CommandRegistry + ) { super(); this.device = device; const deviceID = this.device.native.id; - + this.menu = new Menu({ commands: commands }); this.menu.addItem({ command: disconnectMoveHub, - args: {deviceID} + args: { deviceID } }); this.menu.addItem({ command: connectMoveHub, - args: {deviceID} + args: { deviceID } }); this.menu.addClass('jp-connection-status-menu'); } diff --git a/src/movehub-extension/components/CopyToClipboard.tsx b/src/movehub-extension/components/CopyToClipboard.tsx index c1f44d3..81e0199 100644 --- a/src/movehub-extension/components/CopyToClipboard.tsx +++ b/src/movehub-extension/components/CopyToClipboard.tsx @@ -2,29 +2,41 @@ import copySVG from '../../../style/copy.svg'; const copySVGUrl = `data:image/svg+xml;base64,${btoa(copySVG)}`; interface ICopyToClipboardProps { - textToCopy: string + textToCopy: string; } export default function CopyToClipboard({ textToCopy }: ICopyToClipboardProps) { - - const handleCopyClick = async () => { - try { - await navigator.clipboard.writeText(textToCopy); - } catch (err) { - console.error('Failed to copy text: ', err); - } - }; - return ( -
-
ID:
- - -
- ); + const handleCopyClick = async () => { + try { + await navigator.clipboard.writeText(textToCopy); + } catch (err) { + console.error('Failed to copy text: ', err); + } + }; + return ( +
+
ID:
+ + +
+ ); } diff --git a/src/movehub-extension/components/DeviceIdentifier.tsx b/src/movehub-extension/components/DeviceIdentifier.tsx index ae99c28..046104f 100644 --- a/src/movehub-extension/components/DeviceIdentifier.tsx +++ b/src/movehub-extension/components/DeviceIdentifier.tsx @@ -30,7 +30,7 @@ export default function DeviceIdentifier({ device }: IMoveHubPanelProps) { }, [device.deviceInfo]); return deviceState.connected === true ? ( -
+
{'Device ID: ' + device.native.id}{' '}
) : ( diff --git a/src/movehub-extension/components/Frankie.tsx b/src/movehub-extension/components/Frankie.tsx index 0c0f35f..573863d 100644 --- a/src/movehub-extension/components/Frankie.tsx +++ b/src/movehub-extension/components/Frankie.tsx @@ -5,7 +5,6 @@ const FrankieDarkSVGUrl = `data:image/svg+xml;base64,${btoa(FrankieDarkSVG)}`; import { IBuildProps } from './MoveHubPanel'; import { UseSignal } from '@jupyterlab/apputils'; - export default function Frankie({ themeManager }: IBuildProps) { const theme = themeManager.theme; if (theme) { @@ -14,14 +13,21 @@ export default function Frankie({ themeManager }: IBuildProps) { return ( {(): JSX.Element => ( - Frankie build represented with LeoCAD + Frankie build represented with LeoCAD )} ); - } - else + } else { return ( - Frankie build represented with LeoCAD - + Frankie build represented with LeoCAD ); -} \ No newline at end of file + } +} diff --git a/src/movehub-extension/components/FrankieComponent.tsx b/src/movehub-extension/components/FrankieComponent.tsx index bf8777e..be8cd76 100644 --- a/src/movehub-extension/components/FrankieComponent.tsx +++ b/src/movehub-extension/components/FrankieComponent.tsx @@ -3,7 +3,10 @@ import { MoveForm } from './MoveForm'; import { ColorSelector } from './ColorSelector'; import Frankie from './Frankie'; -export function FrankieComponent({ device, themeManager }: IMoveHubPanelWithThemeProps) { +export function FrankieComponent({ + device, + themeManager +}: IMoveHubPanelWithThemeProps) { return ( <>
@@ -43,7 +46,9 @@ export function FrankieComponent({ device, themeManager }: IMoveHubPanelWithThem > Other motor(s) -

Motor 1 on port D

+

+ Motor 1 on port D +

-

Motor 2 on port C

+

+ Motor 2 on port C +

('Move Hub'); const renderSelectedComponent = () => { @@ -12,7 +15,7 @@ export function LegoBuildSpecific({ device, themeManager }: IMoveHubPanelWithThe case 'Move Hub': return ; case 'Vernie': - return ; + return ; case 'Frankie': return ; default: diff --git a/src/movehub-extension/components/ManualControl.tsx b/src/movehub-extension/components/ManualControl.tsx index 2742270..70c83e6 100644 --- a/src/movehub-extension/components/ManualControl.tsx +++ b/src/movehub-extension/components/ManualControl.tsx @@ -23,7 +23,10 @@ export interface IMoveHubControlProps { device: MoveHub; } -export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemeProps) { +export function ManualControl({ + device, + themeManager +}: IMoveHubPanelWithThemeProps) { let pressStartTime: number = 0; let pressDuration: number = 0; let poll: Poll | null = null; @@ -39,9 +42,9 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr }, frequency: { interval: 100, - backoff: true, + backoff: true }, - standby: 'when-hidden', + standby: 'when-hidden' }); poll.start(); @@ -51,31 +54,27 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr if (poll) { poll.stop(); } - if (action === "inactive") { + if (action === 'inactive') { console.error('Inactive button, no control available.'); } - if (action === "stop") { + if (action === 'stop') { device.stop(); } if (pressDuration < LONG_PRESS_THRESHOLD) { - if (action === "drive") { + if (action === 'drive') { await device.hub.drive(20 * direction); - } - else if (action === "turn") { + } else if (action === 'turn') { await device.hub.turn(90 * direction); } - } else { - if (action === "drive") { + if (action === 'drive') { await device.hub.driveToDirection(direction); + } else if (action === 'turn') { + await device.hub.turn(3600 * direction); } - - else if (action === "turn") { - await device.hub.turn(3600*direction); - } - }; - } + } + }; const handleMouseLeave = () => { if (poll) { @@ -86,13 +85,15 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr const theme = themeManager.theme; if (theme) { const isThemeLight = themeManager.isLight(theme!); - const currentEmptySVGUrl = isThemeLight ? emptyLightSVGUrl : emptyDarkSVGUrl; + const currentEmptySVGUrl = isThemeLight + ? emptyLightSVGUrl + : emptyDarkSVGUrl; const images = [ { id: 1, src: currentEmptySVGUrl, alt: 'Image 1', - action: "inactive", + action: 'inactive', direction: 0, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -112,7 +113,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 3, src: currentEmptySVGUrl, alt: 'Image 3', - action: "inactive", + action: 'inactive', direction: 0, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -121,7 +122,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr { id: 4, src: turnLeftSVGUrl, - action: "turn", + action: 'turn', direction: -1, alt: 'Image 4', handleMouseDown: handleMouseDown, @@ -132,7 +133,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 5, src: stopSVGUrl, alt: 'Image 5', - action: "stop", + action: 'stop', direction: 0, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -142,7 +143,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 6, src: turnRightSVGUrl, alt: 'Image 6', - action: "turn", + action: 'turn', direction: 1, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -152,7 +153,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 7, src: currentEmptySVGUrl, alt: 'Image 7', - action: "inactive", + action: 'inactive', direction: 0, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -162,7 +163,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 8, src: arrowDownSVGUrl, alt: 'Image 8', - action: "drive", + action: 'drive', direction: -1, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -172,7 +173,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 9, src: currentEmptySVGUrl, alt: 'Image 9', - action: "inactive", + action: 'inactive', direction: 0, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -180,35 +181,36 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr } ]; - return ( - {(): JSX.Element => ( -
- {images.map((image, index) => ( -
- -
- ))} -
- )} -
+ return ( + + {(): JSX.Element => ( +
+ {images.map((image, index) => ( +
+ +
+ ))} +
+ )} +
); - - } - else { + } else { const images = [ { id: 1, src: emptyLightSVGUrl, alt: 'Image 1', - action: "inactive", + action: 'inactive', direction: 0, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -228,7 +230,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 3, src: emptyLightSVGUrl, alt: 'Image 3', - action: "inactive", + action: 'inactive', direction: 0, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -237,7 +239,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr { id: 4, src: turnLeftSVGUrl, - action: "turn", + action: 'turn', direction: -1, alt: 'Image 4', handleMouseDown: handleMouseDown, @@ -248,7 +250,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 5, src: stopSVGUrl, alt: 'Image 5', - action: "stop", + action: 'stop', direction: 0, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -258,7 +260,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 6, src: turnRightSVGUrl, alt: 'Image 6', - action: "turn", + action: 'turn', direction: 1, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -268,7 +270,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 7, src: emptyLightSVGUrl, alt: 'Image 7', - action: "inactive", + action: 'inactive', direction: 0, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -278,7 +280,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 8, src: arrowDownSVGUrl, alt: 'Image 8', - action: "drive", + action: 'drive', direction: -1, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -288,7 +290,7 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr id: 9, src: emptyLightSVGUrl, alt: 'Image 9', - action: "inactive", + action: 'inactive', direction: 0, handleMouseDown: handleMouseDown, handleMouseUp: handleMouseUp, @@ -296,27 +298,28 @@ export function ManualControl({ device, themeManager }: IMoveHubPanelWithThemePr } ]; - return ( - {(): JSX.Element => ( -
- {images.map((image, index) => ( -
- -
- ))} -
- )} -
+ return ( + + {(): JSX.Element => ( +
+ {images.map((image, index) => ( +
+ +
+ ))} +
+ )} +
); } } - diff --git a/src/movehub-extension/components/MoveHub.tsx b/src/movehub-extension/components/MoveHub.tsx index dc5fd8d..34392bc 100644 --- a/src/movehub-extension/components/MoveHub.tsx +++ b/src/movehub-extension/components/MoveHub.tsx @@ -5,23 +5,29 @@ const MoveHubDarkSVGUrl = `data:image/svg+xml;base64,${btoa(MoveHubDarkSVG)}`; import { IBuildProps } from './MoveHubPanel'; import { UseSignal } from '@jupyterlab/apputils'; - export default function MoveHub({ themeManager }: IBuildProps) { - const theme = themeManager.theme; - if (theme) { - const isThemeLight = themeManager.isLight(theme!); - const currentSVGUrl = isThemeLight ? MoveHubLightSVGUrl :MoveHubDarkSVGUrl; - return ( - - {(): JSX.Element => ( - Move Hub represented with LeoCAD - )} - - ); - } - else - return ( - Move Hub represented with LeoCAD - - ); + const theme = themeManager.theme; + if (theme) { + const isThemeLight = themeManager.isLight(theme!); + const currentSVGUrl = isThemeLight ? MoveHubLightSVGUrl : MoveHubDarkSVGUrl; + return ( + + {(): JSX.Element => ( + Move Hub represented with LeoCAD + )} + + ); + } else { + return ( + Move Hub represented with LeoCAD + ); + } } diff --git a/src/movehub-extension/components/MoveHubComponent.tsx b/src/movehub-extension/components/MoveHubComponent.tsx index e54b9eb..3df5886 100644 --- a/src/movehub-extension/components/MoveHubComponent.tsx +++ b/src/movehub-extension/components/MoveHubComponent.tsx @@ -8,7 +8,10 @@ export interface IHubControlProps { hub: HubAsync; } -export function MoveHubComponent({ device, themeManager }: IMoveHubPanelWithThemeProps) { +export function MoveHubComponent({ + device, + themeManager +}: IMoveHubPanelWithThemeProps) { return ( <>
@@ -45,9 +48,11 @@ export function MoveHubComponent({ device, themeManager }: IMoveHubPanelWithThem padding: '0' }} > - Other motor(s) + Other motor(s) -

Motor 1 on port D

+

+ Motor 1 on port D +

-

Motor 2 on port C

- + Motor 2 on port C{' '} +

+ - <> -
-
Move Hub n°{index + 1}
-
- - ); - return ( -
    {listItems}
+ const listItems = bluetoothManager.deviceList.map( + (item: BluetoothManager.Device, index) => ( + <> +
+
Move Hub n°{index + 1}
{' '} + +
+ ) -} \ No newline at end of file + ); + return
    {listItems}
; +} diff --git a/src/movehub-extension/components/MoveHubPanel.tsx b/src/movehub-extension/components/MoveHubPanel.tsx index 4abaa98..5829fd5 100644 --- a/src/movehub-extension/components/MoveHubPanel.tsx +++ b/src/movehub-extension/components/MoveHubPanel.tsx @@ -5,14 +5,13 @@ import { DeviceInfoTable } from './DeviceInfoTable'; import { LegoBuildSpecific } from './LegoBuildSpecific'; import { IThemeManager } from '@jupyterlab/apputils'; - export interface IMoveHubPanelProps { device: MoveHub; } export interface IMoveHubPanelWithThemeProps { device: MoveHub; - themeManager: IThemeManager + themeManager: IThemeManager; } export interface IHubControlProps { @@ -20,14 +19,17 @@ export interface IHubControlProps { } export interface IBuildProps { - themeManager: IThemeManager + themeManager: IThemeManager; } export function MoveHubInfos(props: { device: MoveHub }) { return ; } -export function MoveHubPanel({ device, themeManager }: IMoveHubPanelWithThemeProps) { +export function MoveHubPanel({ + device, + themeManager +}: IMoveHubPanelWithThemeProps) { return (
@@ -38,15 +40,17 @@ export function MoveHubPanel({ device, themeManager }: IMoveHubPanelWithThemePro export class MoveHubPanelWidget extends ReactWidget { public device: MoveHub; - public themeManager: IThemeManager + public themeManager: IThemeManager; constructor(device: MoveHub, themeManager: IThemeManager) { super(); this.device = device; - this.themeManager = themeManager; + this.themeManager = themeManager; } render() { - return ; + return ( + + ); } } diff --git a/src/movehub-extension/components/MoveHubView.tsx b/src/movehub-extension/components/MoveHubView.tsx index 75757fa..ab0ce20 100644 --- a/src/movehub-extension/components/MoveHubView.tsx +++ b/src/movehub-extension/components/MoveHubView.tsx @@ -1,29 +1,48 @@ -import { IBluetoothManager } from "../../bluetooth/BluetoothManager" -import { MoveHubList } from "./MoveHubList" -import { DeviceInfoTableComplete } from "./DeviceInfoTableComplete" -import { MoveHub } from "../moveHub" +import { IBluetoothManager } from '../../bluetooth/BluetoothManager'; +import { MoveHubList } from './MoveHubList'; +import { DeviceInfoTableComplete } from './DeviceInfoTableComplete'; +import { MoveHub } from '../moveHub'; interface IMoveHubViewProps { - bluetoothManager: IBluetoothManager - areMoveHubsAlreadyConnected: boolean - moveHub: MoveHub | undefined; + bluetoothManager: IBluetoothManager; + areMoveHubsAlreadyConnected: boolean; + moveHub: MoveHub | undefined; } -export default function MoveHubViewComponent({ areMoveHubsAlreadyConnected, bluetoothManager, moveHub }: IMoveHubViewProps) { - if (areMoveHubsAlreadyConnected === true) { - return ( - <> - {!moveHub ? <>
Warning: there are already one or more Lego Move Hubs connected. If you want to use one of them, you can copy paste its ID from the clipboard:
- : } - - ) - } - - else { - return ( - <> - {!moveHub ?
There is no device connected yet. Instantiate a new instance of Move Hub class.
: } - - ) - } -} \ No newline at end of file +export default function MoveHubViewComponent({ + areMoveHubsAlreadyConnected, + bluetoothManager, + moveHub +}: IMoveHubViewProps) { + if (areMoveHubsAlreadyConnected === true) { + return ( + <> + {!moveHub ? ( + <> +
+ Warning: there are already one or more Lego Move Hubs connected. + If you want to use one of them, you can copy paste its ID from the + clipboard:{' '} +
+ + + ) : ( + + )} + + ); + } else { + return ( + <> + {!moveHub ? ( +
+ There is no device connected yet. Instantiate a new instance of Move + Hub class. +
+ ) : ( + + )} + + ); + } +} diff --git a/src/movehub-extension/components/Vernie.tsx b/src/movehub-extension/components/Vernie.tsx index 54cc9c4..d3d0980 100644 --- a/src/movehub-extension/components/Vernie.tsx +++ b/src/movehub-extension/components/Vernie.tsx @@ -5,23 +5,29 @@ const VernieDarkSVGUrl = `data:image/svg+xml;base64,${btoa(VernieDarkSVG)}`; import { IBuildProps } from './MoveHubPanel'; import { UseSignal } from '@jupyterlab/apputils'; - export default function Vernie({ themeManager }: IBuildProps) { const theme = themeManager.theme; - if (theme) { - const isThemeLight = themeManager.isLight(theme!); - const currentSVGUrl = isThemeLight ? VernieLightSVGUrl :VernieDarkSVGUrl; - return ( - - {(): JSX.Element => ( - Vernie build represented with LeoCAD - )} - - ); - } - else - return ( - Vernie build represented with LeoCAD - - ); - } + if (theme) { + const isThemeLight = themeManager.isLight(theme!); + const currentSVGUrl = isThemeLight ? VernieLightSVGUrl : VernieDarkSVGUrl; + return ( + + {(): JSX.Element => ( + Vernie build represented with LeoCAD + )} + + ); + } else { + return ( + Vernie build represented with LeoCAD + ); + } +} diff --git a/src/movehub-extension/components/VernieComponent.tsx b/src/movehub-extension/components/VernieComponent.tsx index eb3d6c8..95aa592 100644 --- a/src/movehub-extension/components/VernieComponent.tsx +++ b/src/movehub-extension/components/VernieComponent.tsx @@ -4,12 +4,15 @@ import { ManualControl } from './ManualControl'; import { IMoveHubPanelWithThemeProps } from './MoveHubPanel'; import { MoveForm } from './MoveForm'; -export function VernieComponent({ device, themeManager }: IMoveHubPanelWithThemeProps) { +export function VernieComponent({ + device, + themeManager +}: IMoveHubPanelWithThemeProps) { return ( <>
- +

Other motor(s)

-

Motor 1 on port D

+

+ Motor 1 on port D +

-

Motor 2 on port C

+

+ Motor 2 on port C{' '} +

- +
diff --git a/src/movehub-extension/index.ts b/src/movehub-extension/index.ts index 3eb94e3..19b2505 100644 --- a/src/movehub-extension/index.ts +++ b/src/movehub-extension/index.ts @@ -74,7 +74,6 @@ const LEGOMoveHubControlPanelPlugin: JupyterFrontEndPlugin = { console.log('JupyterLab lego-movehub-control-panel plugin is activated!'); const trans = translator.load('jupyterlab'); - app.commands.addCommand(addLEGOMoveHubControlPanel, { execute: args => { const result = bluetoothManager.deviceList.filter( @@ -99,7 +98,10 @@ const LEGOMoveHubControlPanelPlugin: JupyterFrontEndPlugin = { new LegoBuildSelectorWidget(device) ); toolbar.addItem('spacer', Toolbar.createSpacerItem()); - main.toolbar.addItem('battery-gauge', new BatteryWidget(device, themeManager)); + main.toolbar.addItem( + 'battery-gauge', + new BatteryWidget(device, themeManager) + ); main.toolbar.addItem( 'device-identifier', new DeviceIdentifierWidget(device) @@ -109,8 +111,6 @@ const LEGOMoveHubControlPanelPlugin: JupyterFrontEndPlugin = { main.title.closable = true; main.title.icon = LegoBrickIcon; app.shell.add(main, 'main'); - - } else { throw new Error('The device is not a Move Hub.'); } @@ -121,7 +121,9 @@ const LEGOMoveHubControlPanelPlugin: JupyterFrontEndPlugin = { app.commands.addCommand(disconnectMoveHub, { execute: args => { - const selectedDevice = bluetoothManager.deviceList.find((device) => device.native.id === args.deviceID as string); + const selectedDevice = bluetoothManager.deviceList.find( + device => device.native.id === (args.deviceID as string) + ); if (selectedDevice && selectedDevice instanceof MoveHub) { bluetoothManager.disconnectDevice(selectedDevice); return selectedDevice; @@ -131,16 +133,22 @@ const LEGOMoveHubControlPanelPlugin: JupyterFrontEndPlugin = { }, caption: 'Disconnect MoveHub', label: 'Disconnect MoveHub', - isEnabled: (args) => { - const selectedDevice = bluetoothManager.deviceList.find((device) => device.native.id === args.deviceID as string); - if (selectedDevice && selectedDevice instanceof MoveHub && selectedDevice.deviceInfo.connected) { + isEnabled: args => { + const selectedDevice = bluetoothManager.deviceList.find( + device => device.native.id === (args.deviceID as string) + ); + if ( + selectedDevice && + selectedDevice instanceof MoveHub && + selectedDevice.deviceInfo.connected + ) { return true; } else { return false; } } }); - + app.commands.addCommand(connectMoveHub, { execute: args => { const newDevice = bluetoothManager.connectDevice(movehubRegistryItem); @@ -148,9 +156,15 @@ const LEGOMoveHubControlPanelPlugin: JupyterFrontEndPlugin = { }, caption: 'Connect MoveHub', label: 'Connect MoveHub', - isEnabled: (args) => { - const selectedDevice = bluetoothManager.deviceList.find((device) => device.native.id === args.deviceID as string); - if (selectedDevice && selectedDevice instanceof MoveHub && selectedDevice.deviceInfo.connected) { + isEnabled: args => { + const selectedDevice = bluetoothManager.deviceList.find( + device => device.native.id === (args.deviceID as string) + ); + if ( + selectedDevice && + selectedDevice instanceof MoveHub && + selectedDevice.deviceInfo.connected + ) { return false; } else { return true; diff --git a/src/movehub-extension/moveHub.ts b/src/movehub-extension/moveHub.ts index 7977cf2..91094c3 100644 --- a/src/movehub-extension/moveHub.ts +++ b/src/movehub-extension/moveHub.ts @@ -79,7 +79,10 @@ export class MoveHub extends BluetoothManager.Device { driveSpeed: DEFAULT_CONFIG.DRIVE_SPEED, turnSpeed: DEFAULT_CONFIG.TURN_SPEED }; - this.contextCommands = ['bluetooth-manager:disconnect-device','bluetooth-manager:add-lego-movehub-control-panel'] + this.contextCommands = [ + 'bluetooth-manager:disconnect-device', + 'bluetooth-manager:add-lego-movehub-control-panel' + ]; this.isConnected = false; } logDebug(message?: any, ...optionalParams: any[]): void { @@ -103,10 +106,7 @@ export class MoveHub extends BluetoothManager.Device { this.deviceInfo.connected = connected; this.isConnected = connected; } - console.warn( - 'The connection state is', - this.isConnected - ); + console.warn('The connection state is', this.isConnected); this.deviceInfo.identifier = buildShortIdentifier(this.native); }); this.disconnected.connect(async (sender, disconnected: boolean) => { @@ -114,10 +114,7 @@ export class MoveHub extends BluetoothManager.Device { this.deviceInfo.connected = false; this.isConnected = false; } - console.warn( - 'The connection state is', - this.isConnected - ); + console.warn('The connection state is', this.isConnected); }); const characteristic = await this.getCharacteristic( diff --git a/src/movehub-extension/moveHub/hub/hub.ts b/src/movehub-extension/moveHub/hub/hub.ts index ff45de3..1691747 100644 --- a/src/movehub-extension/moveHub/hub/hub.ts +++ b/src/movehub-extension/moveHub/hub/hub.ts @@ -174,31 +174,35 @@ export class Hub { this.batteryLevel = data[5]; this.emit('batteryLevel', data[5]); } - if (data.length === 11 && data[3] === 0x0D && data[4] === 0x06) { + if (data.length === 11 && data[3] === 0x0d && data[4] === 0x06) { /* hub property reference : primary MAC address 0x0D*/ const payload = data.slice(5, 11); - let primaryMACAddress = ""; + let primaryMACAddress = ''; payload.forEach((item: number, index: number) => { - if (index !== payload.length - 1) { if (item < 10) { - primaryMACAddress = primaryMACAddress + "0" + item.toString(16).toUpperCase() + ':'; - } - else { - primaryMACAddress = primaryMACAddress + item.toString(16).toUpperCase() + ':'; - } - } - else { - if (item < 10){ - primaryMACAddress = primaryMACAddress + "0" + item.toString(16).toUpperCase(); + primaryMACAddress = + primaryMACAddress + + '0' + + item.toString(16).toUpperCase() + + ':'; + } else { + primaryMACAddress = + primaryMACAddress + item.toString(16).toUpperCase() + ':'; } - else { - primaryMACAddress = primaryMACAddress + item.toString(16).toUpperCase(); + } else { + if (item < 10) { + primaryMACAddress = + primaryMACAddress + '0' + item.toString(16).toUpperCase(); + } else { + primaryMACAddress = + primaryMACAddress + item.toString(16).toUpperCase(); } } - }) + }); this.primaryMACAddress = primaryMACAddress; } + break; } case 0x04: { clearTimeout(this.portInfoTimeout); @@ -577,7 +581,6 @@ export class Hub { /** Enable hub battery 0x06, 0x00 0x01 0x06 0x02 0x01*/ enableBatteryUpdates() { - // @ts-ignore this.write( // @ts-expect-error To be fixed Buffer.from([ @@ -588,7 +591,6 @@ export class Hub { /** Request hub battery update 0x06, 0x00 0x01 0x06 0x05 0x01*/ requestBatteryUpdates() { - // @ts-ignore this.write( // @ts-expect-error To be fixed Buffer.from([ @@ -600,27 +602,24 @@ export class Hub { /** Enable hub battery 0x06, 0x00 0x01 0x06 0x02 0x01*/ enablePrimaryMACAddressUpdates() { - // @ts-ignore this.write( // @ts-expect-error To be fixed Buffer.from([ - 0x06, 0x00, 0x01, 0x0D, 0x02, 0x01 + 0x06, 0x00, 0x01, 0x0d, 0x02, 0x01 ]) /* enable updates for the primary MAC address*/ ); } /** Request hub battery update 0x06, 0x00 0x01 0x06 0x05 0x01*/ requestPrimaryMACAddressUpdates() { - // @ts-ignore this.write( - // @ts-ignore + // @ts-expect-error To be fixed Buffer.from([ - 0x06, 0x00, 0x01, 0x0D, 0x05, 0x01 + 0x06, 0x00, 0x01, 0x0d, 0x05, 0x01 ]) /* request update for the primary MAC address*/ ); } - subscribeAll() { Object.entries(this.ports).forEach(([port, data]) => { if (data.deviceType === 'DISTANCE') { diff --git a/src/movehub-extension/widget.tsx b/src/movehub-extension/widget.tsx index 61b3461..f5d7dd1 100644 --- a/src/movehub-extension/widget.tsx +++ b/src/movehub-extension/widget.tsx @@ -37,7 +37,6 @@ import { Root } from 'react-dom/client'; //import { DeviceInfoTableComplete } from './components/DeviceInfoTableComplete'; import MoveHubViewComponent from './components/MoveHubView'; - // we use globals for the movehub device since connecting to // them takes a long time. If the model would hold the // movehub instance, we would need to re-connect any time @@ -95,7 +94,6 @@ export class MoveHubModel extends DOMWidgetModel { const identifier: string = this.get('identifier'); console.log(`initialize with name=${identifier}`); - this.on('msg:custom', async (command: any, buffers: any) => { const lane = command['lane']; this.lanes[lane] = this.lanes[lane].then(async () => { @@ -116,7 +114,7 @@ export class MoveHubModel extends DOMWidgetModel { private async onCommand(command: any, buffers: any) { console.log('onCommand', command); const cmd = command['command']; - const args = command['args']; + const args = command['args'] as Array; if (cmd === 'connect') { await this.connect(); @@ -129,34 +127,34 @@ export class MoveHubModel extends DOMWidgetModel { this.poll(); break; case 'led': - this.movehub.led.apply(this.movehub, args); + this.movehub.led.call(this.movehub, ...args); break; case 'ledAsync': - await this.movehub.ledAsync.apply(this.movehub, args); + await this.movehub.ledAsync.call(this.movehub, ...args); break; case 'motorTime': - this.movehub.motorTime.apply(this.movehub, args); + this.movehub.motorTime.call(this.movehub, ...args); break; case 'motorTimeMulti': - this.movehub.motorTimeMulti.apply(this.movehub, args); + this.movehub.motorTimeMulti.call(this.movehub, ...args); break; case 'motorTimeAsync': - await this.movehub.motorTimeAsync.apply(this.movehub, args); + await this.movehub.motorTimeAsync.call(this.movehub, ...args); break; case 'motorTimeMultiAsync': - await this.movehub.motorTimeMultiAsync.apply(this.movehub, args); + await this.movehub.motorTimeMultiAsync.call(this.movehub, ...args); break; case 'motorAngle': - this.movehub.motorAngle.apply(this.movehub, args); + this.movehub.motorAngle.call(this.movehub, ...args); break; case 'motorAngleMulti': - this.movehub.motorAngleMulti.apply(this.movehub, args); + this.movehub.motorAngleMulti.call(this.movehub, ...args); break; case 'motorAngleAsync': - await this.movehub.motorAngleAsync.apply(this.movehub, args); + await this.movehub.motorAngleAsync.call(this.movehub, ...args); break; case 'motorAngleMultiAsync': - await this.movehub.motorAngleMultiAsync.apply(this.movehub, args); + await this.movehub.motorAngleMultiAsync.call(this.movehub, ...args); break; default: console.error(`unknown command "${cmd}"`); @@ -171,15 +169,16 @@ export class MoveHubModel extends DOMWidgetModel { async connect() { const sleep = (ms: number) => new Promise(r => setTimeout(r, ms)); const identifier = this.get('identifier'); - + /*if (!this.movehub.deviceInfo.connected) { console.log('not connected yet');*/ if (identifier === '') { this.movehub = await MoveHubModel.bluetoothManager.connectDevice(movehubRegistryItem); - } - else { - const selectedDevice = MoveHubModel.bluetoothManager.deviceList.find(device => device.native.id === identifier); + } else { + const selectedDevice = MoveHubModel.bluetoothManager.deviceList.find( + device => device.native.id === identifier + ); if (selectedDevice && selectedDevice instanceof MoveHub) { this.movehub = selectedDevice; console.log('MoveHub is:', this.movehub); @@ -252,11 +251,15 @@ export class MoveHubView extends DOMWidgetView { this.root = ReactDOMClient.createRoot(this.el); const model = this.model as MoveHubModel; const moveHub = model.movehub; - const areDevicesConnected = (MoveHubModel.bluetoothManager.deviceList.length !== 0); + const areDevicesConnected = + MoveHubModel.bluetoothManager.deviceList.length !== 0; this.root.render( - ( - - )) + + ); } remove() { this.root?.unmount(); diff --git a/style/base.css b/style/base.css index ab87ab8..734bd44 100644 --- a/style/base.css +++ b/style/base.css @@ -338,4 +338,4 @@ ul { padding-left: 0; -} \ No newline at end of file +} From 14ddc34ca731883db25f018589c59f9b8d5c01f5 Mon Sep 17 00:00:00 2001 From: "Afshin T. Darian" Date: Fri, 2 May 2025 13:19:33 +0100 Subject: [PATCH 2/6] Don't enforce label on private repo --- .github/workflows/enforce-label.yml | 13 ------------- tsconfig.json | 1 - 2 files changed, 14 deletions(-) delete mode 100644 .github/workflows/enforce-label.yml diff --git a/.github/workflows/enforce-label.yml b/.github/workflows/enforce-label.yml deleted file mode 100644 index 725feab..0000000 --- a/.github/workflows/enforce-label.yml +++ /dev/null @@ -1,13 +0,0 @@ -name: Enforce PR label - -on: - pull_request: - types: [labeled, unlabeled, opened, edited, synchronize] -jobs: - enforce-label: - runs-on: ubuntu-latest - permissions: - pull-requests: write - steps: - - name: enforce-triage-label - uses: jupyterlab/maintainer-tools/.github/actions/enforce-label@v1 diff --git a/tsconfig.json b/tsconfig.json index e8d8810..7b7bd86 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -19,7 +19,6 @@ "target": "ES2018", "strict": false }, - "include": ["src/**/*"], "references": [ { From 031d57a0834029588bab7e5305d9297a2b928c69 Mon Sep 17 00:00:00 2001 From: "Afshin T. Darian" Date: Fri, 2 May 2025 14:19:45 +0100 Subject: [PATCH 3/6] lint --- .github/workflows/build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 20f926f..54d3908 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,9 +2,9 @@ name: Build on: push: - branches: main + branches: ["main"] pull_request: - branches: '*' + branches: ["*"] concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} From 4375ea41e73d0d2719a40c3861622051536df405 Mon Sep 17 00:00:00 2001 From: "Afshin T. Darian" Date: Fri, 2 May 2025 15:00:08 +0100 Subject: [PATCH 4/6] Add ui-tests yarn.lock --- tsconfig.json | 2 +- ui-tests/yarn.lock | 4241 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 4242 insertions(+), 1 deletion(-) diff --git a/tsconfig.json b/tsconfig.json index 7b7bd86..b241453 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -17,7 +17,7 @@ "rootDir": "src", "strictNullChecks": true, "target": "ES2018", - "strict": false + "strict": true }, "include": ["src/**/*"], "references": [ diff --git a/ui-tests/yarn.lock b/ui-tests/yarn.lock index e69de29..a6574df 100644 --- a/ui-tests/yarn.lock +++ b/ui-tests/yarn.lock @@ -0,0 +1,4241 @@ +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + +__metadata: + version: 6 + cacheKey: 8 + +"@codemirror/autocomplete@npm:^6.0.0, @codemirror/autocomplete@npm:^6.18.3, @codemirror/autocomplete@npm:^6.3.2, @codemirror/autocomplete@npm:^6.7.1": + version: 6.18.6 + resolution: "@codemirror/autocomplete@npm:6.18.6" + dependencies: + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.17.0 + "@lezer/common": ^1.0.0 + checksum: 1d3657d5fbd2bbf983edf7fb14568b1f813a15f03848bef3833835dd3a30985d881e093842f7b3def23789b542db4eb81ec07bfa313d1ee1d54cb1b273027dea + languageName: node + linkType: hard + +"@codemirror/commands@npm:^6.7.1": + version: 6.8.1 + resolution: "@codemirror/commands@npm:6.8.1" + dependencies: + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.4.0 + "@codemirror/view": ^6.27.0 + "@lezer/common": ^1.1.0 + checksum: 838365af4f12e985c35f4bc59e38eb809e951fd3e35d5ad43548e61c26deda050276346dd031b9c6ed7fe13a777d59c37b9b1e46609d1d79e622d908340a468e + languageName: node + linkType: hard + +"@codemirror/lang-cpp@npm:^6.0.2": + version: 6.0.2 + resolution: "@codemirror/lang-cpp@npm:6.0.2" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/cpp": ^1.0.0 + checksum: bb9eba482cca80037ce30c7b193cf45eff19ccbb773764fddf2071756468ecc25aa53c777c943635054f89095b0247b9b50c339e107e41e68d34d12a7295f9a9 + languageName: node + linkType: hard + +"@codemirror/lang-css@npm:^6.0.0, @codemirror/lang-css@npm:^6.3.1": + version: 6.3.1 + resolution: "@codemirror/lang-css@npm:6.3.1" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.0.2 + "@lezer/css": ^1.1.7 + checksum: ed175d75d75bc0a059d1e60b3dcd8464d570da14fc97388439943c9c43e1e9146e37b83fe2ccaad9cd387420b7b411ea1d24ede78ecd1f2045a38acbb4dd36bc + languageName: node + linkType: hard + +"@codemirror/lang-html@npm:^6.0.0, @codemirror/lang-html@npm:^6.4.9": + version: 6.4.9 + resolution: "@codemirror/lang-html@npm:6.4.9" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/lang-css": ^6.0.0 + "@codemirror/lang-javascript": ^6.0.0 + "@codemirror/language": ^6.4.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.17.0 + "@lezer/common": ^1.0.0 + "@lezer/css": ^1.1.0 + "@lezer/html": ^1.3.0 + checksum: ac8c3ceb0396f2e032752c5079bd950124dca708bc64e96fc147dc5fe7133e5cee0814fe951abdb953ec1d11fa540e4b30a712b5149d9a36016a197a28de45d7 + languageName: node + linkType: hard + +"@codemirror/lang-java@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-java@npm:6.0.1" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/java": ^1.0.0 + checksum: 4679104683cbffcd224ac04c7e5d144b787494697b26470b07017259035b7bb3fa62609d9a61bfbc566f1756d9f972f9f26d96a3c1362dd48881c1172f9a914d + languageName: node + linkType: hard + +"@codemirror/lang-javascript@npm:^6.0.0, @codemirror/lang-javascript@npm:^6.2.2": + version: 6.2.3 + resolution: "@codemirror/lang-javascript@npm:6.2.3" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.6.0 + "@codemirror/lint": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.17.0 + "@lezer/common": ^1.0.0 + "@lezer/javascript": ^1.0.0 + checksum: c56407ddedc80e417dd105a39f11f837fad6fd4d91fe7934c61e48c54227350e4e8f940f81d26030a6c4ff9da16f734361cd1eaed63ba22aadf71fcf6172cbd5 + languageName: node + linkType: hard + +"@codemirror/lang-json@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-json@npm:6.0.1" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/json": ^1.0.0 + checksum: e9e87d50ff7b81bd56a6ab50740b1dd54e9a93f1be585e1d59d0642e2148842ea1528ac7b7221eb4ddc7fe84bbc28065144cc3ab86f6e06c6aeb2d4b4e62acf1 + languageName: node + linkType: hard + +"@codemirror/lang-markdown@npm:^6.3.1": + version: 6.3.2 + resolution: "@codemirror/lang-markdown@npm:6.3.2" + dependencies: + "@codemirror/autocomplete": ^6.7.1 + "@codemirror/lang-html": ^6.0.0 + "@codemirror/language": ^6.3.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.0.0 + "@lezer/common": ^1.2.1 + "@lezer/markdown": ^1.0.0 + checksum: f136d50156f13619d7ceb4fae28fc2342064be371a6cb057ba304658d885cf029d2d0d69b03b3c591c86a2c9b46bb2b3820549d5ff936a9b6aabaf692923c84a + languageName: node + linkType: hard + +"@codemirror/lang-php@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-php@npm:6.0.1" + dependencies: + "@codemirror/lang-html": ^6.0.0 + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.0.0 + "@lezer/php": ^1.0.0 + checksum: c003a29a426486453fdfddbf7302982fa2aa7f059bf6f1ce4cbf08341b0162eee5e2f50e0d71c418dcd358491631780156d846fe352754d042576172c5d86721 + languageName: node + linkType: hard + +"@codemirror/lang-python@npm:^6.1.7": + version: 6.2.0 + resolution: "@codemirror/lang-python@npm:6.2.0" + dependencies: + "@codemirror/autocomplete": ^6.3.2 + "@codemirror/language": ^6.8.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.2.1 + "@lezer/python": ^1.1.4 + checksum: 2326932a59af8c56dc4e8a621f542a59944b93d4e5f50b23dab65d15486cc7a59a6f5fe11595ac478974270084db4770942621dbd834021247f34f2d34063757 + languageName: node + linkType: hard + +"@codemirror/lang-rust@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-rust@npm:6.0.1" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/rust": ^1.0.0 + checksum: 8a439944cb22159b0b3465ca4fa4294c69843219d5d30e278ae6df8e48f30a7a9256129723c025ec9b5e694d31a3560fb004300b125ffcd81c22d13825845170 + languageName: node + linkType: hard + +"@codemirror/lang-sql@npm:^6.8.0": + version: 6.8.0 + resolution: "@codemirror/lang-sql@npm:6.8.0" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 1b5a3c8129b09f24039d8c0906fc4cb8d0f706a424a1d56721057bd1e647797c2b1240bb53eed9bf2bac5806a4e0363e555a3963f04c478efa05829890c537f7 + languageName: node + linkType: hard + +"@codemirror/lang-wast@npm:^6.0.2": + version: 6.0.2 + resolution: "@codemirror/lang-wast@npm:6.0.2" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 72119d4a7d726c54167aa227c982ae9fa785c8ad97a158d8350ae95eecfbd8028a803eef939f7e6c5c6e626fcecda1dc37e9dffc6d5d6ec105f686aeda6b2c24 + languageName: node + linkType: hard + +"@codemirror/lang-xml@npm:^6.1.0": + version: 6.1.0 + resolution: "@codemirror/lang-xml@npm:6.1.0" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.4.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.0.0 + "@lezer/common": ^1.0.0 + "@lezer/xml": ^1.0.0 + checksum: 3a1b7af07b29ad7e53b77bf584245580b613bc92256059f175f2b1d7c28c4e39b75654fe169b9a8a330a60164b53ff5254bdb5b8ee8c6e6766427ee115c4e229 + languageName: node + linkType: hard + +"@codemirror/language@npm:^6.0.0, @codemirror/language@npm:^6.10.6, @codemirror/language@npm:^6.3.0, @codemirror/language@npm:^6.4.0, @codemirror/language@npm:^6.6.0, @codemirror/language@npm:^6.8.0": + version: 6.11.0 + resolution: "@codemirror/language@npm:6.11.0" + dependencies: + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.23.0 + "@lezer/common": ^1.1.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + style-mod: ^4.0.0 + checksum: 5556dc163d5bd1d771a4f64e2750d3d1dc1f39030bc6e4b9a4704e4de7501e8d3511002e0f8f96cd8deef782730e0b49b576e30f0ea820e1c632995bd75caddd + languageName: node + linkType: hard + +"@codemirror/legacy-modes@npm:^6.4.2": + version: 6.5.1 + resolution: "@codemirror/legacy-modes@npm:6.5.1" + dependencies: + "@codemirror/language": ^6.0.0 + checksum: ad92399fdd5f7342d2b8d1ef450ac01cee96f2266938ca09de5047998bf6ac7a085dfe9941feb9ef6a924fda80aa7a1dc0ddc5dd6ce9c3ceaa36bcc14c5b2264 + languageName: node + linkType: hard + +"@codemirror/lint@npm:^6.0.0": + version: 6.8.5 + resolution: "@codemirror/lint@npm:6.8.5" + dependencies: + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.35.0 + crelt: ^1.0.5 + checksum: 76fa457c6664f333216aacb0112bce8a0e2fd7011c180b7c855027dbb871dc112a31bf828f5affc0e53973111dee3aac4c9c3b80ade8534ac9748f296fb77abc + languageName: node + linkType: hard + +"@codemirror/search@npm:^6.5.8": + version: 6.5.10 + resolution: "@codemirror/search@npm:6.5.10" + dependencies: + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.0.0 + crelt: ^1.0.5 + checksum: a30048004ce7cc1ee77a7618485ab5399939eab72b64329d57be98245ea39cb68ba54ad944ee679cc2aeac5bf9f202b2073ad0916f0788497fb64a07073399e8 + languageName: node + linkType: hard + +"@codemirror/state@npm:^6.0.0, @codemirror/state@npm:^6.4.0, @codemirror/state@npm:^6.5.0": + version: 6.5.2 + resolution: "@codemirror/state@npm:6.5.2" + dependencies: + "@marijn/find-cluster-break": ^1.0.0 + checksum: 4473a79475070d73f2e72f2eaaee5b69d2833b5020faa9714609d95dd03f0e5ad02cad8031a541dcd748436842a300332a2925317b39ffa09e3b4831145d98bc + languageName: node + linkType: hard + +"@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.17.0, @codemirror/view@npm:^6.23.0, @codemirror/view@npm:^6.27.0, @codemirror/view@npm:^6.35.0, @codemirror/view@npm:^6.35.3": + version: 6.36.6 + resolution: "@codemirror/view@npm:6.36.6" + dependencies: + "@codemirror/state": ^6.5.0 + style-mod: ^4.1.0 + w3c-keyname: ^2.2.4 + checksum: a36662e61743d379a4bc8f5a5e441b23d6612e029e4d4f494aec974adb81752488be2fc55a9105a8b6c0e846b4a26ed570d9d1df4577affb3fc7c63de9407a45 + languageName: node + linkType: hard + +"@fortawesome/fontawesome-free@npm:^5.12.0": + version: 5.15.4 + resolution: "@fortawesome/fontawesome-free@npm:5.15.4" + checksum: 32281c3df4075290d9a96dfc22f72fadb3da7055d4117e48d34046b8c98032a55fa260ae351b0af5d6f6fb57a2f5d79a4abe52af456da35195f7cb7dda27b4a2 + languageName: node + linkType: hard + +"@isaacs/cliui@npm:^8.0.2": + version: 8.0.2 + resolution: "@isaacs/cliui@npm:8.0.2" + dependencies: + string-width: ^5.1.2 + string-width-cjs: "npm:string-width@^4.2.0" + strip-ansi: ^7.0.1 + strip-ansi-cjs: "npm:strip-ansi@^6.0.1" + wrap-ansi: ^8.1.0 + wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" + checksum: 4a473b9b32a7d4d3cfb7a614226e555091ff0c5a29a1734c28c72a182c2f6699b26fc6b5c2131dfd841e86b185aea714c72201d7c98c2fba5f17709333a67aeb + languageName: node + linkType: hard + +"@isaacs/fs-minipass@npm:^4.0.0": + version: 4.0.1 + resolution: "@isaacs/fs-minipass@npm:4.0.1" + dependencies: + minipass: ^7.0.4 + checksum: 5d36d289960e886484362d9eb6a51d1ea28baed5f5d0140bbe62b99bac52eaf06cc01c2bc0d3575977962f84f6b2c4387b043ee632216643d4787b0999465bf2 + languageName: node + linkType: hard + +"@jupyter/react-components@npm:^0.16.6": + version: 0.16.7 + resolution: "@jupyter/react-components@npm:0.16.7" + dependencies: + "@jupyter/web-components": ^0.16.7 + react: ">=17.0.0 <19.0.0" + checksum: 37894347e63ebb528725e8b8b4038d138019823f5c9e28e3f6abb93b46d771b2ee3cc004d5ff7d9a06a93f2d90e41000bd2abae14364be34ba99c5e05864810e + languageName: node + linkType: hard + +"@jupyter/web-components@npm:^0.16.6, @jupyter/web-components@npm:^0.16.7": + version: 0.16.7 + resolution: "@jupyter/web-components@npm:0.16.7" + dependencies: + "@microsoft/fast-colors": ^5.3.1 + "@microsoft/fast-element": ^1.12.0 + "@microsoft/fast-foundation": ^2.49.4 + "@microsoft/fast-web-utilities": ^5.4.1 + checksum: ec3336247bbabb2e2587c2cf8b9d0e80786b454916dd600b3d6791bf08c3d1e45a7ec1becf366a5491ab56b0be020baa8c50a5b6067961faf5ec904de31243aa + languageName: node + linkType: hard + +"@jupyter/ydoc@npm:^3.0.4": + version: 3.0.4 + resolution: "@jupyter/ydoc@npm:3.0.4" + 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: 85ca033a51c0f26080bcea7c0aac7cbd4ef66bc745fd48786aa1a2f9bdf06b99b67f40d8775ff04bb700e78782fbfdc6c97d2e94b45bd65ad5288c44ca158e19 + languageName: node + linkType: hard + +"@jupyterlab/application@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/application@npm:4.4.1" + dependencies: + "@fortawesome/fontawesome-free": ^5.12.0 + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/docregistry": ^4.4.1 + "@jupyterlab/rendermime": ^4.4.1 + "@jupyterlab/rendermime-interfaces": ^3.12.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/statedb": ^4.4.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/algorithm": ^2.0.3 + "@lumino/application": ^2.4.3 + "@lumino/commands": ^2.3.2 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/messaging": ^2.0.3 + "@lumino/polling": ^2.1.4 + "@lumino/properties": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + checksum: fbfca39af70c2f8a0f6ec4dceba7561bebfaa61d1a072c54cea70cb03626d9620c3d5d28659ba620edf41524796ab78cda9be2c9d40c477a81f6b586eeff1d48 + languageName: node + linkType: hard + +"@jupyterlab/apputils@npm:^4.5.1": + version: 4.5.1 + resolution: "@jupyterlab/apputils@npm:4.5.1" + dependencies: + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/rendermime-interfaces": ^3.12.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/settingregistry": ^4.4.1 + "@jupyterlab/statedb": ^4.4.1 + "@jupyterlab/statusbar": ^4.4.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/algorithm": ^2.0.3 + "@lumino/commands": ^2.3.2 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/domutils": ^2.0.3 + "@lumino/messaging": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/virtualdom": ^2.0.3 + "@lumino/widgets": ^2.7.0 + "@types/react": ^18.0.26 + react: ^18.2.0 + sanitize-html: ~2.12.1 + checksum: 0eb98d9ccb6efe13b24ecd8c0d19ba0e2ac48a8283e14ad691cc9b95f1f4f8a39e40968e6cfafca9091b0b86c2fef53cf41faf94cf43a5195f421c4216534f4c + languageName: node + linkType: hard + +"@jupyterlab/attachments@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/attachments@npm:4.4.1" + dependencies: + "@jupyterlab/nbformat": ^4.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/rendermime": ^4.4.1 + "@jupyterlab/rendermime-interfaces": ^3.12.1 + "@lumino/disposable": ^2.1.4 + "@lumino/signaling": ^2.1.4 + checksum: 0c58dbb327e6e59cb0974e110d1055f623ca9d893ad5915936ab00454e87b9b9cc27e441616a9345cb78c854a51b1aa6058f92086bca584a6b83defc2d4173a9 + languageName: node + linkType: hard + +"@jupyterlab/cells@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/cells@npm:4.4.1" + dependencies: + "@codemirror/state": ^6.5.0 + "@codemirror/view": ^6.35.3 + "@jupyter/ydoc": ^3.0.4 + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/attachments": ^4.4.1 + "@jupyterlab/codeeditor": ^4.4.1 + "@jupyterlab/codemirror": ^4.4.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/documentsearch": ^4.4.1 + "@jupyterlab/filebrowser": ^4.4.1 + "@jupyterlab/nbformat": ^4.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/outputarea": ^4.4.1 + "@jupyterlab/rendermime": ^4.4.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/toc": ^6.4.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/algorithm": ^2.0.3 + "@lumino/coreutils": ^2.2.1 + "@lumino/domutils": ^2.0.3 + "@lumino/dragdrop": ^2.1.6 + "@lumino/messaging": ^2.0.3 + "@lumino/polling": ^2.1.4 + "@lumino/signaling": ^2.1.4 + "@lumino/virtualdom": ^2.0.3 + "@lumino/widgets": ^2.7.0 + react: ^18.2.0 + checksum: 3ada79faa55904ecc3e504d33eccf79584a14f03d915df2191eef73bd718ab505a5451182eb049f4989f592e943c6d6509861752b43e27574a985841334fdcd6 + languageName: node + linkType: hard + +"@jupyterlab/codeeditor@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/codeeditor@npm:4.4.1" + dependencies: + "@codemirror/state": ^6.5.0 + "@jupyter/ydoc": ^3.0.4 + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/nbformat": ^4.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/statusbar": ^4.4.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/dragdrop": ^2.1.6 + "@lumino/messaging": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + react: ^18.2.0 + checksum: f9949bca20387650d707ec8874489d9747c6ffd6d310fadd56dd3d31ee3b7ee73d7f0543d31cdeb298b8995247462f970dbf5bd5681c0756212c44f44d4cec96 + languageName: node + linkType: hard + +"@jupyterlab/codemirror@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/codemirror@npm:4.4.1" + dependencies: + "@codemirror/autocomplete": ^6.18.3 + "@codemirror/commands": ^6.7.1 + "@codemirror/lang-cpp": ^6.0.2 + "@codemirror/lang-css": ^6.3.1 + "@codemirror/lang-html": ^6.4.9 + "@codemirror/lang-java": ^6.0.1 + "@codemirror/lang-javascript": ^6.2.2 + "@codemirror/lang-json": ^6.0.1 + "@codemirror/lang-markdown": ^6.3.1 + "@codemirror/lang-php": ^6.0.1 + "@codemirror/lang-python": ^6.1.7 + "@codemirror/lang-rust": ^6.0.1 + "@codemirror/lang-sql": ^6.8.0 + "@codemirror/lang-wast": ^6.0.2 + "@codemirror/lang-xml": ^6.1.0 + "@codemirror/language": ^6.10.6 + "@codemirror/legacy-modes": ^6.4.2 + "@codemirror/search": ^6.5.8 + "@codemirror/state": ^6.5.0 + "@codemirror/view": ^6.35.3 + "@jupyter/ydoc": ^3.0.4 + "@jupyterlab/codeeditor": ^4.4.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/documentsearch": ^4.4.1 + "@jupyterlab/nbformat": ^4.4.1 + "@jupyterlab/translation": ^4.4.1 + "@lezer/common": ^1.2.1 + "@lezer/generator": ^1.7.0 + "@lezer/highlight": ^1.2.0 + "@lezer/markdown": ^1.3.0 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/signaling": ^2.1.4 + yjs: ^13.5.40 + checksum: 2de25bf20a20586e6a4e15c3951dc9f8fcf3a3bab748d985cf081134b050d580617d1b337c1e686e80fb2dc65589cd04a92703ca4ee245a55ebd0fe92cf581db + languageName: node + linkType: hard + +"@jupyterlab/console@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/console@npm:4.4.1" + dependencies: + "@jupyter/ydoc": ^3.0.4 + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/cells": ^4.4.1 + "@jupyterlab/codeeditor": ^4.4.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/nbformat": ^4.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/rendermime": ^4.4.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/dragdrop": ^2.1.6 + "@lumino/messaging": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + checksum: 2b2aa3ecc28e12d927332d739bc7e91644b81fe8a50acd22d88caa734f0f0c5deac56206ebed7a11f53317d2baf98c5a43c888cab4ee8e1188b962b2058c5628 + languageName: node + linkType: hard + +"@jupyterlab/coreutils@npm:^6.4.1": + version: 6.4.1 + resolution: "@jupyterlab/coreutils@npm:6.4.1" + dependencies: + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/signaling": ^2.1.4 + minimist: ~1.2.0 + path-browserify: ^1.0.0 + url-parse: ~1.5.4 + checksum: 6679bb08d56e570a5fe98da2e100b8f242e6900a7d39454086804bab2cd522f31eca52747bc04ff27449a0006d159b9e9b13345308d0b6480a52fe944b383a11 + languageName: node + linkType: hard + +"@jupyterlab/debugger@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/debugger@npm:4.4.1" + dependencies: + "@codemirror/state": ^6.5.0 + "@codemirror/view": ^6.35.3 + "@jupyter/react-components": ^0.16.6 + "@jupyter/ydoc": ^3.0.4 + "@jupyterlab/application": ^4.4.1 + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/cells": ^4.4.1 + "@jupyterlab/codeeditor": ^4.4.1 + "@jupyterlab/codemirror": ^4.4.1 + "@jupyterlab/console": ^4.4.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/docregistry": ^4.4.1 + "@jupyterlab/fileeditor": ^4.4.1 + "@jupyterlab/notebook": ^4.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/rendermime": ^4.4.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/algorithm": ^2.0.3 + "@lumino/commands": ^2.3.2 + "@lumino/coreutils": ^2.2.1 + "@lumino/datagrid": ^2.5.1 + "@lumino/disposable": ^2.1.4 + "@lumino/messaging": ^2.0.3 + "@lumino/polling": ^2.1.4 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + "@vscode/debugprotocol": ^1.51.0 + react: ^18.2.0 + checksum: 8d1b136372d5e92fb642eb1f734e3551f3e0d5197ecdcebe62db9e34495203e962d91601eb0437d8f3ca515e13f905a0fe5db787e36b2081755a2b8de8aaf142 + languageName: node + linkType: hard + +"@jupyterlab/docmanager@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/docmanager@npm:4.4.1" + dependencies: + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/docregistry": ^4.4.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/statedb": ^4.4.1 + "@jupyterlab/statusbar": ^4.4.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/algorithm": ^2.0.3 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/messaging": ^2.0.3 + "@lumino/polling": ^2.1.4 + "@lumino/properties": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + react: ^18.2.0 + checksum: c85391af35a4284d249796b4854ef849bc091ec1b5c0328a26e3e70b7955c386e0f931a90ecdf625a99ba291d9cf4b61aa2a5993ad1c83c77409a19e3a47aad9 + languageName: node + linkType: hard + +"@jupyterlab/docregistry@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/docregistry@npm:4.4.1" + dependencies: + "@jupyter/ydoc": ^3.0.4 + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/codeeditor": ^4.4.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/rendermime": ^4.4.1 + "@jupyterlab/rendermime-interfaces": ^3.12.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/algorithm": ^2.0.3 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/messaging": ^2.0.3 + "@lumino/properties": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + react: ^18.2.0 + checksum: a451d1d8f32b4e07c810c3e2c3615e7abd1c1d57a088ec9b5a38cfe46dd863fd5e0c018ace25720bb0b05e5e632efe29c6d1d261906066bbc84ac31b54287e1a + languageName: node + linkType: hard + +"@jupyterlab/documentsearch@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/documentsearch@npm:4.4.1" + dependencies: + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/commands": ^2.3.2 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/messaging": ^2.0.3 + "@lumino/polling": ^2.1.4 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + react: ^18.2.0 + checksum: 482319ab66a83b4e563692f368861727ec764aa0a5d95aff0fccc69d5c7c5e1633b893086507a4a900d1a452bf35683764c73959036f370b805c7f9e8a156317 + languageName: node + linkType: hard + +"@jupyterlab/filebrowser@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/filebrowser@npm:4.4.1" + dependencies: + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/docmanager": ^4.4.1 + "@jupyterlab/docregistry": ^4.4.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/statedb": ^4.4.1 + "@jupyterlab/statusbar": ^4.4.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/algorithm": ^2.0.3 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/domutils": ^2.0.3 + "@lumino/dragdrop": ^2.1.6 + "@lumino/messaging": ^2.0.3 + "@lumino/polling": ^2.1.4 + "@lumino/signaling": ^2.1.4 + "@lumino/virtualdom": ^2.0.3 + "@lumino/widgets": ^2.7.0 + react: ^18.2.0 + checksum: 38f01686e8e6fd2fdfa5480a73f8fad4dc11cd2b86818ade22f40a718fe011680967dc021ee326998b172a60f5d0faa8efcee4363bb71f6e48d229e7bfb9f1ff + languageName: node + linkType: hard + +"@jupyterlab/fileeditor@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/fileeditor@npm:4.4.1" + dependencies: + "@jupyter/ydoc": ^3.0.4 + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/codeeditor": ^4.4.1 + "@jupyterlab/codemirror": ^4.4.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/docregistry": ^4.4.1 + "@jupyterlab/documentsearch": ^4.4.1 + "@jupyterlab/lsp": ^4.4.1 + "@jupyterlab/statusbar": ^4.4.1 + "@jupyterlab/toc": ^6.4.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/commands": ^2.3.2 + "@lumino/coreutils": ^2.2.1 + "@lumino/messaging": ^2.0.3 + "@lumino/widgets": ^2.7.0 + react: ^18.2.0 + regexp-match-indices: ^1.0.2 + checksum: 85b017c331caed96ed94bdb84301cce2e01b42d2f3803ae978cd07178fa7d50a8d73771dc24bea1324bbfce71945e49e5956ffdd2353eb6bc72f07186187276f + languageName: node + linkType: hard + +"@jupyterlab/galata@npm:^5.0.5": + version: 5.4.1 + resolution: "@jupyterlab/galata@npm:5.4.1" + dependencies: + "@jupyterlab/application": ^4.4.1 + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/debugger": ^4.4.1 + "@jupyterlab/docmanager": ^4.4.1 + "@jupyterlab/nbformat": ^4.4.1 + "@jupyterlab/notebook": ^4.4.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/settingregistry": ^4.4.1 + "@lumino/coreutils": ^2.2.1 + "@playwright/test": ^1.51.0 + "@stdlib/stats": ~0.0.13 + fs-extra: ^10.1.0 + json5: ^2.2.3 + path: ~0.12.7 + systeminformation: ^5.8.6 + vega: ^5.20.0 + vega-lite: ^5.6.1 + vega-statistics: ^1.7.9 + checksum: b7361f1f3c63a4ed6a3cdf9cc5be6ce9203babf6e1e319e7b0f3d20886ab620261f0be1381a85bea5fd00927b87b16369ef9af9e54af446087459f9d802be959 + languageName: node + linkType: hard + +"@jupyterlab/lsp@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/lsp@npm:4.4.1" + dependencies: + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/codeeditor": ^4.4.1 + "@jupyterlab/codemirror": ^4.4.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/docregistry": ^4.4.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/translation": ^4.4.1 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + lodash.mergewith: ^4.6.1 + vscode-jsonrpc: ^6.0.0 + vscode-languageserver-protocol: ^3.17.0 + vscode-ws-jsonrpc: ~1.0.2 + checksum: 556f2bbb66a11353bb6d356b7678926e25fd9c3a77716a4c925647e4c9a0d6b7f927906a9e3cf50a4840b5be0558eab026fce6490b9ee0fe9c0f60f2b07535ff + languageName: node + linkType: hard + +"@jupyterlab/nbformat@npm:^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0, @jupyterlab/nbformat@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/nbformat@npm:4.4.1" + dependencies: + "@lumino/coreutils": ^2.2.1 + checksum: cac3cc70bbd35f808cad2f76a6d85c18af00b94680527fc7c06a099dbfe3d59d53567c6556e947d7c5b5c351396ccbba16991cfa76eb96dec540d4666b301756 + languageName: node + linkType: hard + +"@jupyterlab/notebook@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/notebook@npm:4.4.1" + dependencies: + "@jupyter/ydoc": ^3.0.4 + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/cells": ^4.4.1 + "@jupyterlab/codeeditor": ^4.4.1 + "@jupyterlab/codemirror": ^4.4.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/docregistry": ^4.4.1 + "@jupyterlab/documentsearch": ^4.4.1 + "@jupyterlab/lsp": ^4.4.1 + "@jupyterlab/nbformat": ^4.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/rendermime": ^4.4.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/settingregistry": ^4.4.1 + "@jupyterlab/statusbar": ^4.4.1 + "@jupyterlab/toc": ^6.4.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/algorithm": ^2.0.3 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/domutils": ^2.0.3 + "@lumino/dragdrop": ^2.1.6 + "@lumino/messaging": ^2.0.3 + "@lumino/polling": ^2.1.4 + "@lumino/properties": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/virtualdom": ^2.0.3 + "@lumino/widgets": ^2.7.0 + react: ^18.2.0 + checksum: 7c7f5c3558109758a8129337954a264e214074e99ae4731f3f2fb2a8b81672ebc4fc19ccd90f2341b8d00f6e22e43215764ba1ba55b725e1f27402871f701bb4 + languageName: node + linkType: hard + +"@jupyterlab/observables@npm:^5.4.1": + version: 5.4.1 + resolution: "@jupyterlab/observables@npm:5.4.1" + dependencies: + "@lumino/algorithm": ^2.0.3 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/messaging": ^2.0.3 + "@lumino/signaling": ^2.1.4 + checksum: 9ce27774a532f55259622fccce679777bad57f92a7667dc9f1e4f913b469eb696550c2520f49fcc1e57dcefd8348171e56bb7d108502a2eb11b72b0a71da6633 + languageName: node + linkType: hard + +"@jupyterlab/outputarea@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/outputarea@npm:4.4.1" + dependencies: + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/nbformat": ^4.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/rendermime": ^4.4.1 + "@jupyterlab/rendermime-interfaces": ^3.12.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/translation": ^4.4.1 + "@lumino/algorithm": ^2.0.3 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/messaging": ^2.0.3 + "@lumino/properties": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + checksum: 1288ef0127f701739401b573e3a81fee71e4af1e9226790d422e081f8d6d98064a4cb732c8095d40deb75156e4bdbda654285e4ecf0b62ae8baf80d4d2efcf77 + languageName: node + linkType: hard + +"@jupyterlab/rendermime-interfaces@npm:^3.12.1": + version: 3.12.1 + resolution: "@jupyterlab/rendermime-interfaces@npm:3.12.1" + dependencies: + "@lumino/coreutils": ^1.11.0 || ^2.2.1 + "@lumino/widgets": ^1.37.2 || ^2.7.0 + checksum: 73ac345f0367c0ee502a66aad2b35d4be7da4d1cb52a89959a72dc84029adc95714121e2d22144208be1e1050cff8198c9208ddde4cec7a12ba8a69981bd7091 + languageName: node + linkType: hard + +"@jupyterlab/rendermime@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/rendermime@npm:4.4.1" + dependencies: + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/nbformat": ^4.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/rendermime-interfaces": ^3.12.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/translation": ^4.4.1 + "@lumino/coreutils": ^2.2.1 + "@lumino/messaging": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + lodash.escape: ^4.0.1 + checksum: ad6138dd7078ea7352edde0381cc0fcce8f032a3e0351c6ab079aa1c5d59b8e0d05529d2c030e595da311c412ab7cac015c2cd47e1f8aa45972ffb30175282d5 + languageName: node + linkType: hard + +"@jupyterlab/services@npm:^7.4.1": + version: 7.4.1 + resolution: "@jupyterlab/services@npm:7.4.1" + dependencies: + "@jupyter/ydoc": ^3.0.4 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/nbformat": ^4.4.1 + "@jupyterlab/settingregistry": ^4.4.1 + "@jupyterlab/statedb": ^4.4.1 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/polling": ^2.1.4 + "@lumino/properties": ^2.0.3 + "@lumino/signaling": ^2.1.4 + ws: ^8.11.0 + checksum: 0a6e5ad5de07db7cc672248307da891ca1f70447eaf40daa137886992b86e3c939da351ef183cb40896bc3bca41e6c45c13488b777108500436c343eb04769a8 + languageName: node + linkType: hard + +"@jupyterlab/settingregistry@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/settingregistry@npm:4.4.1" + dependencies: + "@jupyterlab/nbformat": ^4.4.1 + "@jupyterlab/statedb": ^4.4.1 + "@lumino/commands": ^2.3.2 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/signaling": ^2.1.4 + "@rjsf/utils": ^5.13.4 + ajv: ^8.12.0 + json5: ^2.2.3 + peerDependencies: + react: ">=16" + checksum: 5da756d9fc860b1e04dc6fbafa05bc5e3d985be31224faebb7a6af434a445fdb769607b584d19f3d8c7377896279bfaec31ce2299f5073c2f770225a7196aaa1 + languageName: node + linkType: hard + +"@jupyterlab/statedb@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/statedb@npm:4.4.1" + dependencies: + "@lumino/commands": ^2.3.2 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/properties": ^2.0.3 + "@lumino/signaling": ^2.1.4 + checksum: 472893498cd9c8eb9bd9c891e2abf3d9a965e257b37e1d576f323b51032e72b16ac02d1c4b1864b0fa837089ad4e495690c2adb4a0e3685d56ee8496e43161c4 + languageName: node + linkType: hard + +"@jupyterlab/statusbar@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/statusbar@npm:4.4.1" + dependencies: + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/algorithm": ^2.0.3 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/messaging": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + react: ^18.2.0 + checksum: 2b18f0983ac134299ffb07d9b917f1ff0db9dd54672b242e9dda8d33c1196399fb44a540a07b34f5d4cddb4aef7d389d70160d6cf4647d494975544f67be3e23 + languageName: node + linkType: hard + +"@jupyterlab/toc@npm:^6.4.1": + version: 6.4.1 + resolution: "@jupyterlab/toc@npm:6.4.1" + dependencies: + "@jupyter/react-components": ^0.16.6 + "@jupyterlab/apputils": ^4.5.1 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/docregistry": ^4.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/rendermime": ^4.4.1 + "@jupyterlab/rendermime-interfaces": ^3.12.1 + "@jupyterlab/translation": ^4.4.1 + "@jupyterlab/ui-components": ^4.4.1 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/messaging": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.0 + react: ^18.2.0 + checksum: bd002eea0caf5f2f05593c19491d52ede7bfaf01d44779f3833fb1c230db3fe21774a66634ecabb3f10450e14b697fe2083a7cdc182c7fe77aa60a79e405d046 + languageName: node + linkType: hard + +"@jupyterlab/translation@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/translation@npm:4.4.1" + dependencies: + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/rendermime-interfaces": ^3.12.1 + "@jupyterlab/services": ^7.4.1 + "@jupyterlab/statedb": ^4.4.1 + "@lumino/coreutils": ^2.2.1 + checksum: eb535c8a3f60212f506ee9e52a95280cf34ba0d004dc0761f6489fd61b552f3028a11618c05112db5fff9a003d575a8cfcce929923752681fb47dc813dacac8a + languageName: node + linkType: hard + +"@jupyterlab/ui-components@npm:^4.4.1": + version: 4.4.1 + resolution: "@jupyterlab/ui-components@npm:4.4.1" + dependencies: + "@jupyter/react-components": ^0.16.6 + "@jupyter/web-components": ^0.16.6 + "@jupyterlab/coreutils": ^6.4.1 + "@jupyterlab/observables": ^5.4.1 + "@jupyterlab/rendermime-interfaces": ^3.12.1 + "@jupyterlab/translation": ^4.4.1 + "@lumino/algorithm": ^2.0.3 + "@lumino/commands": ^2.3.2 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/messaging": ^2.0.3 + "@lumino/polling": ^2.1.4 + "@lumino/properties": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/virtualdom": ^2.0.3 + "@lumino/widgets": ^2.7.0 + "@rjsf/core": ^5.13.4 + "@rjsf/utils": ^5.13.4 + react: ^18.2.0 + react-dom: ^18.2.0 + typestyle: ^2.0.4 + peerDependencies: + react: ^18.2.0 + checksum: d4fadfa3c686f5bc5b5f280c245d21b4d9e53542e362b7191d72c709f622e6317d48062039a9512f11cbeacb0773598d7cfc008fa2528fc7c6926baf8295007e + languageName: node + linkType: hard + +"@lezer/common@npm:^1.0.0, @lezer/common@npm:^1.0.2, @lezer/common@npm:^1.1.0, @lezer/common@npm:^1.2.0, @lezer/common@npm:^1.2.1": + version: 1.2.3 + resolution: "@lezer/common@npm:1.2.3" + checksum: 9b5f52d949adae69d077f56c0b1c2295923108c3dfb241dd9f17654ff708f3eab81ff9fa7f0d0e4a668eabdcb9d961c73e75caca87c966ca1436e30e49130fcb + languageName: node + linkType: hard + +"@lezer/cpp@npm:^1.0.0": + version: 1.1.3 + resolution: "@lezer/cpp@npm:1.1.3" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 87b48d89f3cd60c5a5c4368ea394fe7e27abb6ec9e6f8b7b4d005e3dd4d5268eb4e1c3a8a58807f63d18043ccfdc864965b9787c1274260999167d447cf562c3 + languageName: node + linkType: hard + +"@lezer/css@npm:^1.1.0, @lezer/css@npm:^1.1.7": + version: 1.1.11 + resolution: "@lezer/css@npm:1.1.11" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: d2c870ba2c2b4205bfe222101d53658896dab6b44f6a944111f314f8dc387f97ca53409897e8e7e305bb8cf224cc72861650ef52298b9b1da832f46d82116748 + languageName: node + linkType: hard + +"@lezer/generator@npm:^1.7.0": + version: 1.7.3 + resolution: "@lezer/generator@npm:1.7.3" + dependencies: + "@lezer/common": ^1.1.0 + "@lezer/lr": ^1.3.0 + bin: + lezer-generator: src/lezer-generator.cjs + checksum: 99d89b365490ad0aa486d3c86bf091bcf5472c7bb8a2116ed83110b3d0801af542d94bfe8d6190912290f921711627b9e6f4aefd712007cfa5733880cfb42a8d + languageName: node + linkType: hard + +"@lezer/highlight@npm:^1.0.0, @lezer/highlight@npm:^1.1.3, @lezer/highlight@npm:^1.2.0": + version: 1.2.1 + resolution: "@lezer/highlight@npm:1.2.1" + dependencies: + "@lezer/common": ^1.0.0 + checksum: a8822d7e37f79ff64669eb2df4a9f9d16580e88f2b276a646092e19a9bdccac304e92510e200e35869a8b1f6c27eba5972c508d347a277e9b722d582ab7a23d5 + languageName: node + linkType: hard + +"@lezer/html@npm:^1.3.0": + version: 1.3.10 + resolution: "@lezer/html@npm:1.3.10" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: cce391aab9259704ae3079b3209f74b2f248594dd8b851c28aaff26765e00ebb890a5ff1fe600f2d03aaf4ade0e36de8048d9632b12bfbccd47b3e649c3b0ecd + languageName: node + linkType: hard + +"@lezer/java@npm:^1.0.0": + version: 1.1.3 + resolution: "@lezer/java@npm:1.1.3" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: a4b8a348ab08465cff6e54ec80e397d2629e0911decb4c6a47fd56cd74f6978fae478879b15a2e239203b9e53aef41ecaeba675f8013e290165249abdab7da74 + languageName: node + linkType: hard + +"@lezer/javascript@npm:^1.0.0": + version: 1.5.1 + resolution: "@lezer/javascript@npm:1.5.1" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.1.3 + "@lezer/lr": ^1.3.0 + checksum: 8de877c3f41a985211d0ef80c98966f1339f1a0ec1df0b199ce58d97cb4c0648cb3176d76ff426b9c5aa4a3bbb51bb6e673b5cc73763cb8dc4505f3853697fb5 + languageName: node + linkType: hard + +"@lezer/json@npm:^1.0.0": + version: 1.0.3 + resolution: "@lezer/json@npm:1.0.3" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 48e7b945fdfa2b5b6f862e27bc31f3991cba93f18df7fed0059b25f119b64dedd50bbc709d279e16e2b3eee10e7758d7d80c6d98d21bc15c284809d268837897 + languageName: node + linkType: hard + +"@lezer/lr@npm:^1.0.0, @lezer/lr@npm:^1.1.0, @lezer/lr@npm:^1.3.0": + version: 1.4.2 + resolution: "@lezer/lr@npm:1.4.2" + dependencies: + "@lezer/common": ^1.0.0 + checksum: 94318ad046c7dfcc8d37e26cb85b99623c39aef60aa51ec2abb30928e7a649f38fa5520f34bd5b356f1db11b6991999589f039e87c8949b0f163be3764f029d8 + languageName: node + linkType: hard + +"@lezer/markdown@npm:^1.0.0, @lezer/markdown@npm:^1.3.0": + version: 1.4.3 + resolution: "@lezer/markdown@npm:1.4.3" + dependencies: + "@lezer/common": ^1.0.0 + "@lezer/highlight": ^1.0.0 + checksum: d730c5b273f0fc9df0658c338f007e00838aa87d7ecdda181eb5def5253cf76aaac0671ef03e7459fd179128e77c2e8d74c2dc43402ee21cebb4fb9dd7db89c7 + languageName: node + linkType: hard + +"@lezer/php@npm:^1.0.0": + version: 1.0.2 + resolution: "@lezer/php@npm:1.0.2" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.1.0 + checksum: c85ef18571d37826b687dd141a0fe110f5814adaf9d1a391e7e482020d7f81df189ca89ec0dd141c1433d48eff4c6e53648b46f008dea8ad2dc574f35f1d4d79 + languageName: node + linkType: hard + +"@lezer/python@npm:^1.1.4": + version: 1.1.18 + resolution: "@lezer/python@npm:1.1.18" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 774d5bee83106b586159e3330452e9a3a72706d98d77929c44480a653ed560a80db2aa8f2f270858d176ac8e7187f0c585109fdac579deca115173dcaee13f9f + languageName: node + linkType: hard + +"@lezer/rust@npm:^1.0.0": + version: 1.0.2 + resolution: "@lezer/rust@npm:1.0.2" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: fc5e97852b42beeb44a0ebe316dc64e3cc49ff481c22e3e67d6003fc4a5c257fcd94959cfcc76cd154fa172db9b3b4b28de5c09f10550d6e5f14869ddc274e5b + languageName: node + linkType: hard + +"@lezer/xml@npm:^1.0.0": + version: 1.0.6 + resolution: "@lezer/xml@npm:1.0.6" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 71217d49b9207bd19d69ae98ad406d0c7ff395b6ad118528f3f81455f973e01597cac1ffa2741f2c6739d4ede17edb49573eaa3246f8f5a6da4d97dcb940309d + languageName: node + linkType: hard + +"@lumino/algorithm@npm:^2.0.3": + version: 2.0.3 + resolution: "@lumino/algorithm@npm:2.0.3" + checksum: 03932cdc39d612a00579ee40bafb0b1d8bf5f8a12449f777a1ae7201843ddefb557bc3f9260aa6b9441d87bfc43e53cced854e71c4737de59e32cd00d4ac1394 + languageName: node + linkType: hard + +"@lumino/application@npm:^2.4.3": + version: 2.4.4 + resolution: "@lumino/application@npm:2.4.4" + dependencies: + "@lumino/commands": ^2.3.2 + "@lumino/coreutils": ^2.2.1 + "@lumino/widgets": ^2.7.1 + checksum: 3223d145172d2d7a793e038631463fdb8c70d46f8343512d452a90f54ac70c6004462ded66edba3313038888f8271ad186feb63918620b27bde500eaa9f33d95 + languageName: node + linkType: hard + +"@lumino/collections@npm:^2.0.3": + version: 2.0.3 + resolution: "@lumino/collections@npm:2.0.3" + dependencies: + "@lumino/algorithm": ^2.0.3 + checksum: 1c7aca239731e6c7379ce593318fd3f646b38c1903e81e884e36ed01f61017498f6699ba58848c43191f4825a9968b7f9c94e9355f1614c9baee84ce9ea6221f + languageName: node + linkType: hard + +"@lumino/commands@npm:^2.3.2": + version: 2.3.2 + resolution: "@lumino/commands@npm:2.3.2" + dependencies: + "@lumino/algorithm": ^2.0.3 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/domutils": ^2.0.3 + "@lumino/keyboard": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/virtualdom": ^2.0.3 + checksum: 090454bcc07aeb71f0791d6ca86ca4857b16bb6286a47ab6e59c3046e7f99cd3ef27c36d2dd35de7cf2bdeeaf5fc00ae8f29246a39e276eac2d186ae3cd7023e + languageName: node + linkType: hard + +"@lumino/coreutils@npm:^1.11.0 || ^2.0.0, @lumino/coreutils@npm:^1.11.0 || ^2.2.1, @lumino/coreutils@npm:^2.2.1": + version: 2.2.1 + resolution: "@lumino/coreutils@npm:2.2.1" + dependencies: + "@lumino/algorithm": ^2.0.3 + checksum: d08570d1ebcf6bca973ba3af0836fb19a5a7a5b24979e90aab0fb4acb245e9619a0db356a78d67f618ae565435bb2aaf7c158c5bc0ae1ef9e9f1638ebfa05484 + languageName: node + linkType: hard + +"@lumino/datagrid@npm:^2.5.1": + version: 2.5.2 + resolution: "@lumino/datagrid@npm:2.5.2" + dependencies: + "@lumino/algorithm": ^2.0.3 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/domutils": ^2.0.3 + "@lumino/dragdrop": ^2.1.6 + "@lumino/keyboard": ^2.0.3 + "@lumino/messaging": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/widgets": ^2.7.1 + checksum: b11320a7635c974b451650b78a772bfccee95360f77dc4e790b0139a8a0dab82cf4bb0a4238ea90581fb2d6e2ac1e425cc4a3cc17e2ab4b8aab94e3fff5735a0 + languageName: node + linkType: hard + +"@lumino/disposable@npm:^1.10.0 || ^2.0.0, @lumino/disposable@npm:^2.1.4": + version: 2.1.4 + resolution: "@lumino/disposable@npm:2.1.4" + dependencies: + "@lumino/signaling": ^2.1.4 + checksum: 0274c1cd81683f0d37c79795ed683fe49929452e6f075b9027b62dee376b5c6aa5f27b279236c4e1621bcbdcb844d5be0bbde3a065ab39159deb995244d1d2a7 + languageName: node + linkType: hard + +"@lumino/domutils@npm:^2.0.3": + version: 2.0.3 + resolution: "@lumino/domutils@npm:2.0.3" + checksum: 46cbcbd38f6abb53eab1b6de0a2ea8a9fa5e28b0f5aa4b058c35f2380cb8ec881fe7616c7468ba200b785f95357ac8cbac6b64512f9945f5973d1d425864b163 + languageName: node + linkType: hard + +"@lumino/dragdrop@npm:^2.1.6": + version: 2.1.6 + resolution: "@lumino/dragdrop@npm:2.1.6" + dependencies: + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + checksum: 5a746ee0644e2fa02cba47d6ef45f3fb09ebc3391ac0f478f6f3073864a9637e13fcee666038c751ab8f17bc69c55299c85a88f526ea645cc3240a367490c8ca + languageName: node + linkType: hard + +"@lumino/keyboard@npm:^2.0.3": + version: 2.0.3 + resolution: "@lumino/keyboard@npm:2.0.3" + checksum: ca648cf978ddcf15fe3af2b8c8beb8aff153dfe616099df5a8bc7f43124420f77c358dbd33a988911b82f68debe07268d630c1777618b182ef7b520962d653e7 + languageName: node + linkType: hard + +"@lumino/messaging@npm:^2.0.3": + version: 2.0.3 + resolution: "@lumino/messaging@npm:2.0.3" + dependencies: + "@lumino/algorithm": ^2.0.3 + "@lumino/collections": ^2.0.3 + checksum: 9c2bea2a31d3922a29276df751b651e6bd41d1ed3a5f61ba94d3e90d454c53f07fc4dac7d435867fb8480415222a3d45d74188dd73e9c89c43110ebbee0ff301 + languageName: node + linkType: hard + +"@lumino/polling@npm:^2.1.4": + version: 2.1.4 + resolution: "@lumino/polling@npm:2.1.4" + dependencies: + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/signaling": ^2.1.4 + checksum: e08d07d11eb030fed83bea232dba91af4ea40ef8f6ec7b8fe61722ebbd29faba10c67d269596c19c515c920f607c73bb64cdc9319af9ecef4619cddfd92ea764 + languageName: node + linkType: hard + +"@lumino/properties@npm:^2.0.3": + version: 2.0.3 + resolution: "@lumino/properties@npm:2.0.3" + checksum: a575d821f994090907abb567d3af21a828f528ae5f329ada92719eba9818bbb2b0955e675b91bd392043a5d835c345d7b500994a77157c5ea317f36442ce570e + languageName: node + linkType: hard + +"@lumino/signaling@npm:^1.10.0 || ^2.0.0, @lumino/signaling@npm:^2.1.4": + version: 2.1.4 + resolution: "@lumino/signaling@npm:2.1.4" + dependencies: + "@lumino/algorithm": ^2.0.3 + "@lumino/coreutils": ^2.2.1 + checksum: 554a5135c8742ed3f61a4923b1f26cb29b55447ca5939df70033449cfb654a37048d7a3e2fd0932497099cd24501a3819b85cd1fdf4e76023ba0af747c171d53 + languageName: node + linkType: hard + +"@lumino/virtualdom@npm:^2.0.3": + version: 2.0.3 + resolution: "@lumino/virtualdom@npm:2.0.3" + dependencies: + "@lumino/algorithm": ^2.0.3 + checksum: 66c18494fdfc1b87e76286140cd256b3616aede262641912646a18395226e200048ddeaa6d1644dff3f597b1cde8e583968cb973d64a9e9d4f45e2b24c1e2c7c + languageName: node + linkType: hard + +"@lumino/widgets@npm:^1.37.2 || ^2.7.0, @lumino/widgets@npm:^2.7.0, @lumino/widgets@npm:^2.7.1": + version: 2.7.1 + resolution: "@lumino/widgets@npm:2.7.1" + dependencies: + "@lumino/algorithm": ^2.0.3 + "@lumino/commands": ^2.3.2 + "@lumino/coreutils": ^2.2.1 + "@lumino/disposable": ^2.1.4 + "@lumino/domutils": ^2.0.3 + "@lumino/dragdrop": ^2.1.6 + "@lumino/keyboard": ^2.0.3 + "@lumino/messaging": ^2.0.3 + "@lumino/properties": ^2.0.3 + "@lumino/signaling": ^2.1.4 + "@lumino/virtualdom": ^2.0.3 + checksum: c57f7e6cfbaddbd830e14db55242dcbdf531524cdf8641214ce737f43a6684004219eb58a572838f99f78af433bb8f9f19fd2ac6f0ffab4a635bd20164b75cec + languageName: node + linkType: hard + +"@marijn/find-cluster-break@npm:^1.0.0": + version: 1.0.2 + resolution: "@marijn/find-cluster-break@npm:1.0.2" + checksum: 0d836de25e04d58325813401ef3c2d34caf040da985a5935fcbc9d84e7b47a21bdb15f57d70c2bf0960bd29ed3dbbb1afd00cdd0fc4fafbee7fd0ffe7d508ae1 + languageName: node + linkType: hard + +"@microsoft/fast-colors@npm:^5.3.1": + version: 5.3.1 + resolution: "@microsoft/fast-colors@npm:5.3.1" + checksum: ff87f402faadb4b5aeee3d27762566c11807f927cd4012b8bbc7f073ca68de0e2197f95330ff5dfd7038f4b4f0e2f51b11feb64c5d570f5c598d37850a5daf60 + languageName: node + linkType: hard + +"@microsoft/fast-element@npm:^1.12.0, @microsoft/fast-element@npm:^1.14.0": + version: 1.14.0 + resolution: "@microsoft/fast-element@npm:1.14.0" + checksum: 58765739492997a5c51f7841cf6f334e2d2c4ad2365db4a228c07df1c89d139b026abf6afc6691ac48066070d3c94d09afdea2929bdca25842f778293e19892d + languageName: node + linkType: hard + +"@microsoft/fast-foundation@npm:^2.49.4": + version: 2.50.0 + resolution: "@microsoft/fast-foundation@npm:2.50.0" + dependencies: + "@microsoft/fast-element": ^1.14.0 + "@microsoft/fast-web-utilities": ^5.4.1 + tabbable: ^5.2.0 + tslib: ^1.13.0 + checksum: 651501eb8cd5a3e583638f70a4e7c0ad30952fe12adedd5c4c24861515d0aaeec0e83d1f1cd25dece899d2fa1614b415001c461f76bb84b20e1a8e18a3fcf219 + languageName: node + linkType: hard + +"@microsoft/fast-web-utilities@npm:^5.4.1": + version: 5.4.1 + resolution: "@microsoft/fast-web-utilities@npm:5.4.1" + dependencies: + exenv-es6: ^1.1.1 + checksum: 303e87847f962944f474e3716c3eb305668243916ca9e0719e26bb9a32346144bc958d915c103776b3e552cea0f0f6233f839fad66adfdf96a8436b947288ca7 + languageName: node + linkType: hard + +"@npmcli/agent@npm:^3.0.0": + version: 3.0.0 + resolution: "@npmcli/agent@npm:3.0.0" + dependencies: + agent-base: ^7.1.0 + http-proxy-agent: ^7.0.0 + https-proxy-agent: ^7.0.1 + lru-cache: ^10.0.1 + socks-proxy-agent: ^8.0.3 + checksum: e8fc25d536250ed3e669813b36e8c6d805628b472353c57afd8c4fde0fcfcf3dda4ffe22f7af8c9070812ec2e7a03fb41d7151547cef3508efe661a5a3add20f + languageName: node + linkType: hard + +"@npmcli/fs@npm:^4.0.0": + version: 4.0.0 + resolution: "@npmcli/fs@npm:4.0.0" + dependencies: + semver: ^7.3.5 + checksum: 68951c589e9a4328698a35fd82fe71909a257d6f2ede0434d236fa55634f0fbcad9bb8755553ce5849bd25ee6f019f4d435921ac715c853582c4a7f5983c8d4a + languageName: node + linkType: hard + +"@pkgjs/parseargs@npm:^0.11.0": + version: 0.11.0 + resolution: "@pkgjs/parseargs@npm:0.11.0" + checksum: 6ad6a00fc4f2f2cfc6bff76fb1d88b8ee20bc0601e18ebb01b6d4be583733a860239a521a7fbca73b612e66705078809483549d2b18f370eb346c5155c8e4a0f + languageName: node + linkType: hard + +"@playwright/test@npm:^1.37.0, @playwright/test@npm:^1.51.0": + version: 1.52.0 + resolution: "@playwright/test@npm:1.52.0" + dependencies: + playwright: 1.52.0 + bin: + playwright: cli.js + checksum: a7e30109399ad40b9c5a5322d8adbb4f759e139169deb8c0c9b62ec678359bb0bb64155497f05dc4a96ff582da55c4f821da6f59d4b321b154ae706c923ee3b5 + languageName: node + linkType: hard + +"@rjsf/core@npm:^5.13.4": + version: 5.24.10 + resolution: "@rjsf/core@npm:5.24.10" + dependencies: + lodash: ^4.17.21 + lodash-es: ^4.17.21 + markdown-to-jsx: ^7.4.1 + nanoid: ^3.3.7 + prop-types: ^15.8.1 + peerDependencies: + "@rjsf/utils": ^5.24.x + react: ^16.14.0 || >=17 + checksum: 90316d9dd90ae58805fc4f6fa2bb14dfd9a361abebb75bd3b1b7ed55b554e9a7d5145fc09ee5906bc91d362fc8f8c24619d4d4c432bae782da5cebb0a5b9cddf + languageName: node + linkType: hard + +"@rjsf/utils@npm:^5.13.4": + version: 5.24.10 + resolution: "@rjsf/utils@npm:5.24.10" + dependencies: + json-schema-merge-allof: ^0.8.1 + jsonpointer: ^5.0.1 + lodash: ^4.17.21 + lodash-es: ^4.17.21 + react-is: ^18.2.0 + peerDependencies: + react: ^16.14.0 || >=17 + checksum: 64d9bcfea100c4b89128c20473982d316e960c01f9887fb3613bc0ecdaa9fdf8804f96ff99b0b415c2cbc7b4f7d5de941328a1a1a5d53148489d395a1f07a78e + languageName: node + linkType: hard + +"@stdlib/array@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/array@npm:0.0.12" + dependencies: + "@stdlib/assert": ^0.0.x + "@stdlib/blas": ^0.0.x + "@stdlib/complex": ^0.0.x + "@stdlib/constants": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/symbol": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 0d95690461f0c4560eabef0796d1170274415cd03de80333c6d39814d0484a6873ef4be04a64941ebf3a600747e84c3a4f23b21c7020e53842c07985331b39f1 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/assert@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/assert@npm:0.0.12" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/cli": ^0.0.x + "@stdlib/complex": ^0.0.x + "@stdlib/constants": ^0.0.x + "@stdlib/fs": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/ndarray": ^0.0.x + "@stdlib/number": ^0.0.x + "@stdlib/os": ^0.0.x + "@stdlib/process": ^0.0.x + "@stdlib/regexp": ^0.0.x + "@stdlib/streams": ^0.0.x + "@stdlib/string": ^0.0.x + "@stdlib/symbol": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: d4dcbeabbfb86ba56cdd972ff785f43e7d25018b2b1800cab8b0deb9e5c54c795d6ead3d142f4dd13c351f636deba4dc1857c85147d6b059fdc78eb2c9510b99 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/bigint@npm:^0.0.x": + version: 0.0.11 + resolution: "@stdlib/bigint@npm:0.0.11" + dependencies: + "@stdlib/utils": ^0.0.x + checksum: 7bf825d116e4b010e214209af239706ac1ef923eecb5c8b0af9229c9975450081355e441ecc7b4765d81a9e653141868e0492b8061d1e65724fa42fb8283aabd + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/blas@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/blas@npm:0.0.12" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/assert": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/number": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 67ea00a968f7a9c710b37f718b7f756e2830e479a1a1ee44cbf6ec3cc27dd8863078928867707d9d1624007e81de89d040f2326d10f435e2cce913cab121975e + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/buffer@npm:^0.0.x": + version: 0.0.11 + resolution: "@stdlib/buffer@npm:0.0.11" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/assert": ^0.0.x + "@stdlib/process": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 93df02e3bf548e940ff9cef65121566e7bf93b554f0614d62336c9dbccfc07c9f1b1c4e9a7aebbe4819ef16a6d2a33a7010c2fdf908fface8298a3109c3c4ef0 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/cli@npm:^0.0.x": + version: 0.0.10 + resolution: "@stdlib/cli@npm:0.0.10" + dependencies: + "@stdlib/utils": ^0.0.x + minimist: ^1.2.0 + checksum: bbece8d3dbff2835518582a7726c6c4c22743dc408d2303d9e35a3b72151d5d0a8e78d61bc896663d4c3fb702e966abea7a1bd621ed943723a359f57053f121f + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/complex@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/complex@npm:0.0.12" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/assert": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 8eda35027495417f1b0dd9bbbc2d4983f50ad3cf9e2276ffe0945ccdbe78f0fc66b9fc36ab71926d2a125c8fb7467c8970a222b230b42ff4bb8042c53314ca09 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/constants@npm:^0.0.x": + version: 0.0.11 + resolution: "@stdlib/constants@npm:0.0.11" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/assert": ^0.0.x + "@stdlib/number": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: fc19d055a4e71ae84b6c92e4a3a88371d50693da8f0a813df4063dc549374d19b9cf23f4fdae2fb7b2013e13929f713c3e1b9e4054767e741b75561ed43d15c3 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/fs@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/fs@npm:0.0.12" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/assert": ^0.0.x + "@stdlib/cli": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/process": ^0.0.x + "@stdlib/string": ^0.0.x + "@stdlib/utils": ^0.0.x + debug: ^2.6.9 + checksum: 33ac5ee4844d4599fe3a8a8402f1a3e2cafee31a5c9cf5b85df530a61a2b54ef17dc30a67be98dacdc2958219413edd0e4cdc3c28266f4bc30277ee024f6a49e + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/math@npm:^0.0.x": + version: 0.0.11 + resolution: "@stdlib/math@npm:0.0.11" + dependencies: + "@stdlib/assert": ^0.0.x + "@stdlib/constants": ^0.0.x + "@stdlib/ndarray": ^0.0.x + "@stdlib/number": ^0.0.x + "@stdlib/strided": ^0.0.x + "@stdlib/symbol": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + debug: ^2.6.9 + checksum: 6c4c9dda36fbce50553e1437354c5286aa782c42399534dbed8e696ddeb1b91ef6cff5fe5962f1c9e1eb2ef63c63d9bd58f7ca4b87d59018aaac20099c3fb79a + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/ndarray@npm:^0.0.x": + version: 0.0.13 + resolution: "@stdlib/ndarray@npm:0.0.13" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/assert": ^0.0.x + "@stdlib/bigint": ^0.0.x + "@stdlib/buffer": ^0.0.x + "@stdlib/complex": ^0.0.x + "@stdlib/constants": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/number": ^0.0.x + "@stdlib/string": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 842a94afce5fc74bf8a964b75a302ddb8713eadbc79616e6799f1310c8bce860ed9e9877adc4a39338d9136b8798947ee21cf03368d46408308a313c8075d49a + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/nlp@npm:^0.0.x": + version: 0.0.11 + resolution: "@stdlib/nlp@npm:0.0.11" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/assert": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/random": ^0.0.x + "@stdlib/string": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 398fe2853fb95404bb6598e3e199ca3e0435b94447d50e14e2e30582cadfb91f43464f23d80a0e1da4d64567a4a108a7299d7440509f1ab26b02aea7bb16e9a8 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/number@npm:^0.0.x": + version: 0.0.10 + resolution: "@stdlib/number@npm:0.0.10" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/assert": ^0.0.x + "@stdlib/constants": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/os": ^0.0.x + "@stdlib/string": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 326190956c787cbf9321c332beedab5ba4b3fa97d52a82aa708a0349b4678c0df7a351424f00a606f4eaca4fb4ba4cc191580c99d7c64ee0f08d37baa3de14f2 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/os@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/os@npm:0.0.12" + dependencies: + "@stdlib/assert": ^0.0.x + "@stdlib/cli": ^0.0.x + "@stdlib/fs": ^0.0.x + "@stdlib/process": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 37156b0c723da70d7740d92d08fc592eae803461c1d546cff6ac044765d6e40722fdad342219277e747c39344b513096ac1d0aa1e733cf3079bd8a9a8578612a + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/process@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/process@npm:0.0.12" + dependencies: + "@stdlib/assert": ^0.0.x + "@stdlib/buffer": ^0.0.x + "@stdlib/cli": ^0.0.x + "@stdlib/fs": ^0.0.x + "@stdlib/streams": ^0.0.x + "@stdlib/string": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 6d5c3d943f9914d1ae39bd36ad7436f783cf64baa2bff67a808035c99258676ae3f704c328a78d62754951cf85fe99d8e9af5f4fa7d5f8cba347bca72767e357 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/random@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/random@npm:0.0.12" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/assert": ^0.0.x + "@stdlib/blas": ^0.0.x + "@stdlib/buffer": ^0.0.x + "@stdlib/cli": ^0.0.x + "@stdlib/constants": ^0.0.x + "@stdlib/fs": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/process": ^0.0.x + "@stdlib/stats": ^0.0.x + "@stdlib/streams": ^0.0.x + "@stdlib/symbol": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + debug: ^2.6.9 + readable-stream: ^2.1.4 + checksum: 67fcb5553274f8596ceae91153e96ae297bacfd55279821cb09f19f2844845aaf892802e4a5962965323dbfded0c7df8a89a6ce77d60d5c8a5899d483055a964 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/regexp@npm:^0.0.x": + version: 0.0.13 + resolution: "@stdlib/regexp@npm:0.0.13" + dependencies: + "@stdlib/assert": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: dd52adb096ff9a02d1c4818be2889ae01bc04a0cdbc0d52473685e0a7a4eaa13e1be603b964f140f7488d11450b644dc5f8c97029d77db1ed4a563554245ff1c + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/stats@npm:^0.0.x, @stdlib/stats@npm:~0.0.13": + version: 0.0.13 + resolution: "@stdlib/stats@npm:0.0.13" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/assert": ^0.0.x + "@stdlib/blas": ^0.0.x + "@stdlib/constants": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/ndarray": ^0.0.x + "@stdlib/random": ^0.0.x + "@stdlib/string": ^0.0.x + "@stdlib/symbol": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 5ca12b2e123543f56a59aca828e14afaf525ad4aa40467bee7037a9178e21e55d4ce8ba3de9387cc9a0efe3e0d035d6c58705b12f634f77a2b3f87d334dfb076 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/streams@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/streams@npm:0.0.12" + dependencies: + "@stdlib/assert": ^0.0.x + "@stdlib/buffer": ^0.0.x + "@stdlib/cli": ^0.0.x + "@stdlib/fs": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + debug: ^2.6.9 + readable-stream: ^2.1.4 + checksum: 231b4607d082ea81d9dadbeab08002ec398a29c7eb5d611d8a4183f9db6964428e2f8a9e0f8edd085ca12b5d58258576987a575e9d8f6fcabcb5a62c6b8efe88 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/strided@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/strided@npm:0.0.12" + dependencies: + "@stdlib/assert": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/ndarray": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 55ccc8543596894a2e3ad734b394700c69697b499a54b3bfbcf80cddd8d91509792c23931f5cebf7c89269676ac3f44352582e4f42e2c2c2898363cc3a76403d + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/string@npm:^0.0.x": + version: 0.0.14 + resolution: "@stdlib/string@npm:0.0.14" + dependencies: + "@stdlib/assert": ^0.0.x + "@stdlib/cli": ^0.0.x + "@stdlib/constants": ^0.0.x + "@stdlib/fs": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/nlp": ^0.0.x + "@stdlib/process": ^0.0.x + "@stdlib/regexp": ^0.0.x + "@stdlib/streams": ^0.0.x + "@stdlib/types": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: aaaaaddf381cccc67f15dbab76f43ce81cb71a4f5595bfa06ef915b6747458deca3c25c60ff3c002c0c36482687d92a150f364069559dfea915f63a040d5f603 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/symbol@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/symbol@npm:0.0.12" + dependencies: + "@stdlib/assert": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 2263341ce0296de2063d26038902bd63bf1d7b820307402fdf38c3b248bd026f17d96bccdc3189fd9fcc9c83a778eaab797dc11805bd66203b8ac9c6934f6588 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/time@npm:^0.0.x": + version: 0.0.14 + resolution: "@stdlib/time@npm:0.0.14" + dependencies: + "@stdlib/assert": ^0.0.x + "@stdlib/cli": ^0.0.x + "@stdlib/constants": ^0.0.x + "@stdlib/fs": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/string": ^0.0.x + "@stdlib/utils": ^0.0.x + checksum: 6e8a1b985a09936ab09c98d44bf1b2c79e08995c3c73401494bc1f6f708747ef136d769af4809a8af92a9ceb3d390db6c4c4e01608cd8d794a86c4b57e343eb1 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/types@npm:^0.0.x": + version: 0.0.14 + resolution: "@stdlib/types@npm:0.0.14" + checksum: 5680a655ddb3ad730f5c7eb2363a43e089f3e6a1b85b12546cab49f7749bb3baf293bd50fbfe55486f233f4227f1020b65eb461b754b94fb4a4bc2799647ec22 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@stdlib/utils@npm:^0.0.x": + version: 0.0.12 + resolution: "@stdlib/utils@npm:0.0.12" + dependencies: + "@stdlib/array": ^0.0.x + "@stdlib/assert": ^0.0.x + "@stdlib/blas": ^0.0.x + "@stdlib/buffer": ^0.0.x + "@stdlib/cli": ^0.0.x + "@stdlib/constants": ^0.0.x + "@stdlib/fs": ^0.0.x + "@stdlib/math": ^0.0.x + "@stdlib/os": ^0.0.x + "@stdlib/process": ^0.0.x + "@stdlib/random": ^0.0.x + "@stdlib/regexp": ^0.0.x + "@stdlib/streams": ^0.0.x + "@stdlib/string": ^0.0.x + "@stdlib/symbol": ^0.0.x + "@stdlib/time": ^0.0.x + "@stdlib/types": ^0.0.x + debug: ^2.6.9 + checksum: e0c3671c5f62c11bb3abd721f2958c41641b00a75d449bd25fbb62bcb8689cfe9c1f600c0688e7b6819ae870d6e5974d0fc7b2ec86081c45d9194b316b2a2ec2 + conditions: (os=aix | os=darwin | os=freebsd | os=linux | os=macos | os=openbsd | os=sunos | os=win32 | os=windows) + languageName: node + linkType: hard + +"@types/estree@npm:^1.0.0": + version: 1.0.7 + resolution: "@types/estree@npm:1.0.7" + checksum: d9312b7075bdd08f3c9e1bb477102f5458aaa42a8eec31a169481ce314ca99ac716645cff4fca81ea65a2294b0276a0de63159d1baca0f8e7b5050a92de950ad + languageName: node + linkType: hard + +"@types/geojson@npm:7946.0.4": + version: 7946.0.4 + resolution: "@types/geojson@npm:7946.0.4" + checksum: 541aea46540c918b9fe21ab73f497fe17b1eaf4d0d3baeb5f5614029b7f488c37f63843b644c024a8178dc2fb66d3d6623c25d9cf61d7b553aa19c8dc7f99047 + languageName: node + linkType: hard + +"@types/prop-types@npm:*": + version: 15.7.14 + resolution: "@types/prop-types@npm:15.7.14" + checksum: d0c5407b9ccc3dd5fae0ccf9b1007e7622ba5e6f1c18399b4f24dff33619d469da4b9fa918a374f19dc0d9fe6a013362aab0b844b606cfc10676efba3f5f736d + languageName: node + linkType: hard + +"@types/react@npm:^18.0.26": + version: 18.3.20 + resolution: "@types/react@npm:18.3.20" + dependencies: + "@types/prop-types": "*" + csstype: ^3.0.2 + checksum: a93a4eec87c671ad9d68eaedaa2aa3688926409802939d2b291800cf926c771eb505a18721174364217ae9e1e8b89d09c1519f06ba1f168271de9f4c832710ea + languageName: node + linkType: hard + +"@vscode/debugprotocol@npm:^1.51.0": + version: 1.68.0 + resolution: "@vscode/debugprotocol@npm:1.68.0" + checksum: 6fed2d8372c154731cd6a9d7f51fadfaf92f07d567ab46d182470287fd0fd5e2b167a5c24a1616f7bbca74b9b0a288a05891cfd1409cbfb88c4f0917ab96532a + languageName: node + linkType: hard + +"abbrev@npm:^3.0.0": + version: 3.0.1 + resolution: "abbrev@npm:3.0.1" + checksum: e70b209f5f408dd3a3bbd0eec4b10a2ffd64704a4a3821d0969d84928cc490a8eb60f85b78a95622c1841113edac10161c62e52f5e7d0027aa26786a8136e02e + languageName: node + linkType: hard + +"agent-base@npm:^7.1.0, agent-base@npm:^7.1.2": + version: 7.1.3 + resolution: "agent-base@npm:7.1.3" + checksum: 87bb7ee54f5ecf0ccbfcba0b07473885c43ecd76cb29a8db17d6137a19d9f9cd443a2a7c5fd8a3f24d58ad8145f9eb49116344a66b107e1aeab82cf2383f4753 + languageName: node + linkType: hard + +"ajv@npm:^8.12.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 + checksum: 1797bf242cfffbaf3b870d13565bd1716b73f214bb7ada9a497063aada210200da36e3ed40237285f3255acc4feeae91b1fb183625331bad27da95973f7253d9 + languageName: node + linkType: hard + +"ansi-regex@npm:^5.0.1": + version: 5.0.1 + resolution: "ansi-regex@npm:5.0.1" + checksum: 2aa4bb54caf2d622f1afdad09441695af2a83aa3fe8b8afa581d205e57ed4261c183c4d3877cee25794443fde5876417d859c108078ab788d6af7e4fe52eb66b + languageName: node + linkType: hard + +"ansi-regex@npm:^6.0.1": + version: 6.1.0 + resolution: "ansi-regex@npm:6.1.0" + checksum: 495834a53b0856c02acd40446f7130cb0f8284f4a39afdab20d5dc42b2e198b1196119fe887beed8f9055c4ff2055e3b2f6d4641d0be018cdfb64fedf6fc1aac + languageName: node + linkType: hard + +"ansi-styles@npm:^4.0.0": + version: 4.3.0 + resolution: "ansi-styles@npm:4.3.0" + dependencies: + color-convert: ^2.0.1 + checksum: 513b44c3b2105dd14cc42a19271e80f386466c4be574bccf60b627432f9198571ebf4ab1e4c3ba17347658f4ee1711c163d574248c0c1cdc2d5917a0ad582ec4 + languageName: node + linkType: hard + +"ansi-styles@npm:^6.1.0": + version: 6.2.1 + resolution: "ansi-styles@npm:6.2.1" + checksum: ef940f2f0ced1a6347398da88a91da7930c33ecac3c77b72c5905f8b8fe402c52e6fde304ff5347f616e27a742da3f1dc76de98f6866c69251ad0b07a66776d9 + languageName: node + linkType: hard + +"balanced-match@npm:^1.0.0": + version: 1.0.2 + resolution: "balanced-match@npm:1.0.2" + checksum: 9706c088a283058a8a99e0bf91b0a2f75497f185980d9ffa8b304de1d9e58ebda7c72c07ebf01dadedaac5b2907b2c6f566f660d62bd336c3468e960403b9d65 + languageName: node + linkType: hard + +"bluetooth-manager-ui-tests@workspace:.": + version: 0.0.0-use.local + resolution: "bluetooth-manager-ui-tests@workspace:." + dependencies: + "@jupyterlab/galata": ^5.0.5 + "@playwright/test": ^1.37.0 + languageName: unknown + linkType: soft + +"brace-expansion@npm:^2.0.1": + version: 2.0.1 + resolution: "brace-expansion@npm:2.0.1" + dependencies: + balanced-match: ^1.0.0 + checksum: a61e7cd2e8a8505e9f0036b3b6108ba5e926b4b55089eeb5550cd04a471fe216c96d4fe7e4c7f995c728c554ae20ddfc4244cad10aef255e72b62930afd233d1 + languageName: node + linkType: hard + +"cacache@npm:^19.0.1": + version: 19.0.1 + resolution: "cacache@npm:19.0.1" + dependencies: + "@npmcli/fs": ^4.0.0 + fs-minipass: ^3.0.0 + glob: ^10.2.2 + lru-cache: ^10.0.1 + minipass: ^7.0.3 + minipass-collect: ^2.0.1 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + p-map: ^7.0.2 + ssri: ^12.0.0 + tar: ^7.4.3 + unique-filename: ^4.0.0 + checksum: e95684717de6881b4cdaa949fa7574e3171946421cd8291769dd3d2417dbf7abf4aa557d1f968cca83dcbc95bed2a281072b09abfc977c942413146ef7ed4525 + languageName: node + linkType: hard + +"chownr@npm:^3.0.0": + version: 3.0.0 + resolution: "chownr@npm:3.0.0" + checksum: fd73a4bab48b79e66903fe1cafbdc208956f41ea4f856df883d0c7277b7ab29fd33ee65f93b2ec9192fc0169238f2f8307b7735d27c155821d886b84aa97aa8d + languageName: node + linkType: hard + +"cliui@npm:^8.0.1": + version: 8.0.1 + resolution: "cliui@npm:8.0.1" + dependencies: + string-width: ^4.2.0 + strip-ansi: ^6.0.1 + wrap-ansi: ^7.0.0 + checksum: 79648b3b0045f2e285b76fb2e24e207c6db44323581e421c3acbd0e86454cba1b37aea976ab50195a49e7384b871e6dfb2247ad7dec53c02454ac6497394cb56 + languageName: node + linkType: hard + +"color-convert@npm:^2.0.1": + version: 2.0.1 + resolution: "color-convert@npm:2.0.1" + dependencies: + color-name: ~1.1.4 + checksum: 79e6bdb9fd479a205c71d89574fccfb22bd9053bd98c6c4d870d65c132e5e904e6034978e55b43d69fcaa7433af2016ee203ce76eeba9cfa554b373e7f7db336 + languageName: node + linkType: hard + +"color-name@npm:~1.1.4": + version: 1.1.4 + resolution: "color-name@npm:1.1.4" + checksum: b0445859521eb4021cd0fb0cc1a75cecf67fceecae89b63f62b201cca8d345baf8b952c966862a9d9a2632987d4f6581f0ec8d957dfacece86f0a7919316f610 + languageName: node + linkType: hard + +"commander@npm:2": + version: 2.20.3 + resolution: "commander@npm:2.20.3" + checksum: ab8c07884e42c3a8dbc5dd9592c606176c7eb5c1ca5ff274bcf907039b2c41de3626f684ea75ccf4d361ba004bbaff1f577d5384c155f3871e456bdf27becf9e + languageName: node + linkType: hard + +"commander@npm:7": + version: 7.2.0 + resolution: "commander@npm:7.2.0" + checksum: 53501cbeee61d5157546c0bef0fedb6cdfc763a882136284bed9a07225f09a14b82d2a84e7637edfd1a679fb35ed9502fd58ef1d091e6287f60d790147f68ddc + languageName: node + linkType: hard + +"compute-gcd@npm:^1.2.1": + version: 1.2.1 + resolution: "compute-gcd@npm:1.2.1" + dependencies: + validate.io-array: ^1.0.3 + validate.io-function: ^1.0.2 + validate.io-integer-array: ^1.0.0 + checksum: 51cf33b75f7c8db5142fcb99a9d84a40260993fed8e02a7ab443834186c3ab99b3fd20b30ad9075a6a9d959d69df6da74dd3be8a59c78d9f2fe780ebda8242e1 + languageName: node + linkType: hard + +"compute-lcm@npm:^1.1.2": + version: 1.1.2 + resolution: "compute-lcm@npm:1.1.2" + dependencies: + compute-gcd: ^1.2.1 + validate.io-array: ^1.0.3 + validate.io-function: ^1.0.2 + validate.io-integer-array: ^1.0.0 + checksum: d499ab57dcb48e8d0fd233b99844a06d1cc56115602c920c586e998ebba60293731f5b6976e8a1e83ae6cbfe86716f62d9432e8d94913fed8bd8352f447dc917 + languageName: node + linkType: hard + +"core-util-is@npm:~1.0.0": + version: 1.0.3 + resolution: "core-util-is@npm:1.0.3" + checksum: 9de8597363a8e9b9952491ebe18167e3b36e7707569eed0ebf14f8bba773611376466ae34575bca8cfe3c767890c859c74056084738f09d4e4a6f902b2ad7d99 + languageName: node + linkType: hard + +"crelt@npm:^1.0.5": + version: 1.0.6 + resolution: "crelt@npm:1.0.6" + checksum: dad842093371ad702afbc0531bfca2b0a8dd920b23a42f26e66dabbed9aad9acd5b9030496359545ef3937c3aced0fd4ac39f7a2d280a23ddf9eb7fdcb94a69f + languageName: node + linkType: hard + +"cross-spawn@npm:^7.0.6": + version: 7.0.6 + resolution: "cross-spawn@npm:7.0.6" + dependencies: + path-key: ^3.1.0 + shebang-command: ^2.0.0 + which: ^2.0.1 + checksum: 8d306efacaf6f3f60e0224c287664093fa9185680b2d195852ba9a863f85d02dcc737094c6e512175f8ee0161f9b87c73c6826034c2422e39de7d6569cf4503b + languageName: node + linkType: hard + +"csstype@npm:3.0.10": + version: 3.0.10 + resolution: "csstype@npm:3.0.10" + checksum: 20a8fa324f2b33ddf94aa7507d1b6ab3daa6f3cc308888dc50126585d7952f2471de69b2dbe0635d1fdc31223fef8e070842691877e725caf456e2378685a631 + languageName: node + linkType: hard + +"csstype@npm:^3.0.2": + version: 3.1.3 + resolution: "csstype@npm:3.1.3" + checksum: 8db785cc92d259102725b3c694ec0c823f5619a84741b5c7991b8ad135dfaa66093038a1cc63e03361a6cd28d122be48f2106ae72334e067dd619a51f49eddf7 + languageName: node + linkType: hard + +"d3-array@npm:1 - 3, d3-array@npm:2 - 3, d3-array@npm:2.10.0 - 3, d3-array@npm:2.5.0 - 3, d3-array@npm:3.2.4, d3-array@npm:^3.2.2": + version: 3.2.4 + resolution: "d3-array@npm:3.2.4" + dependencies: + internmap: 1 - 2 + checksum: a5976a6d6205f69208478bb44920dd7ce3e788c9dceb86b304dbe401a4bfb42ecc8b04c20facde486e9adcb488b5d1800d49393a3f81a23902b68158e12cddd0 + languageName: node + linkType: hard + +"d3-color@npm:1 - 3, d3-color@npm:^3.1.0": + version: 3.1.0 + resolution: "d3-color@npm:3.1.0" + checksum: 4931fbfda5d7c4b5cfa283a13c91a954f86e3b69d75ce588d06cde6c3628cebfc3af2069ccf225e982e8987c612aa7948b3932163ce15eb3c11cd7c003f3ee3b + languageName: node + linkType: hard + +"d3-delaunay@npm:^6.0.2": + version: 6.0.4 + resolution: "d3-delaunay@npm:6.0.4" + dependencies: + delaunator: 5 + checksum: ce6d267d5ef21a8aeadfe4606329fc80a22ab6e7748d47bc220bcc396ee8be84b77a5473033954c5ac4aa522d265ddc45d4165d30fe4787dd60a15ea66b9bbb4 + languageName: node + linkType: hard + +"d3-dispatch@npm:1 - 3": + version: 3.0.1 + resolution: "d3-dispatch@npm:3.0.1" + checksum: fdfd4a230f46463e28e5b22a45dd76d03be9345b605e1b5dc7d18bd7ebf504e6c00ae123fd6d03e23d9e2711e01f0e14ea89cd0632545b9f0c00b924ba4be223 + languageName: node + linkType: hard + +"d3-dsv@npm:^3.0.1": + version: 3.0.1 + resolution: "d3-dsv@npm:3.0.1" + dependencies: + commander: 7 + iconv-lite: 0.6 + rw: 1 + bin: + csv2json: bin/dsv2json.js + csv2tsv: bin/dsv2dsv.js + dsv2dsv: bin/dsv2dsv.js + dsv2json: bin/dsv2json.js + json2csv: bin/json2dsv.js + json2dsv: bin/json2dsv.js + json2tsv: bin/json2dsv.js + tsv2csv: bin/dsv2dsv.js + tsv2json: bin/dsv2json.js + checksum: 5fc0723647269d5dccd181d74f2265920ab368a2868b0b4f55ffa2fecdfb7814390ea28622cd61ee5d9594ab262879509059544e9f815c54fe76fbfb4ffa4c8a + languageName: node + linkType: hard + +"d3-force@npm:^3.0.0": + version: 3.0.0 + resolution: "d3-force@npm:3.0.0" + dependencies: + d3-dispatch: 1 - 3 + d3-quadtree: 1 - 3 + d3-timer: 1 - 3 + checksum: 6c7e96438cab62fa32aeadb0ade3297b62b51f81b1b38b0a60a5ec9fd627d74090c1189654d92df2250775f31b06812342f089f1d5947de9960a635ee3581def + languageName: node + linkType: hard + +"d3-format@npm:1 - 3, d3-format@npm:^3.1.0": + version: 3.1.0 + resolution: "d3-format@npm:3.1.0" + checksum: f345ec3b8ad3cab19bff5dead395bd9f5590628eb97a389b1dd89f0b204c7c4fc1d9520f13231c2c7cf14b7c9a8cf10f8ef15bde2befbab41454a569bd706ca2 + languageName: node + linkType: hard + +"d3-geo-projection@npm:^4.0.0": + version: 4.0.0 + resolution: "d3-geo-projection@npm:4.0.0" + dependencies: + commander: 7 + d3-array: 1 - 3 + d3-geo: 1.12.0 - 3 + bin: + geo2svg: bin/geo2svg.js + geograticule: bin/geograticule.js + geoproject: bin/geoproject.js + geoquantize: bin/geoquantize.js + geostitch: bin/geostitch.js + checksum: 631422b10dd78d1047ba5a3b073148bea27721060bd7087a5fa6c053ca80445d26432e505e0e3acbd6e0d76cf577c61bf9a5db70dabbc9310c493de1f7ff736d + languageName: node + linkType: hard + +"d3-geo@npm:1.12.0 - 3, d3-geo@npm:^3.1.0": + version: 3.1.1 + resolution: "d3-geo@npm:3.1.1" + dependencies: + d3-array: 2.5.0 - 3 + checksum: 3cc4bb50af5d2d4858d2df1729a1777b7fd361854079d9faab1166186c988d2cba0d11911da0c4598d5e22fae91d79113ed262a9f98cabdbc6dbf7c30e5c0363 + languageName: node + linkType: hard + +"d3-hierarchy@npm:^3.1.2": + version: 3.1.2 + resolution: "d3-hierarchy@npm:3.1.2" + checksum: 0fd946a8c5fd4686d43d3e11bbfc2037a145fda29d2261ccd0e36f70b66af6d7638e2c0c7112124d63fc3d3127197a00a6aecf676bd5bd392a94d7235a214263 + languageName: node + linkType: hard + +"d3-interpolate@npm:1 - 3, d3-interpolate@npm:1.2.0 - 3, d3-interpolate@npm:^3.0.1": + version: 3.0.1 + resolution: "d3-interpolate@npm:3.0.1" + dependencies: + d3-color: 1 - 3 + checksum: a42ba314e295e95e5365eff0f604834e67e4a3b3c7102458781c477bd67e9b24b6bb9d8e41ff5521050a3f2c7c0c4bbbb6e187fd586daa3980943095b267e78b + languageName: node + linkType: hard + +"d3-path@npm:^3.1.0": + version: 3.1.0 + resolution: "d3-path@npm:3.1.0" + checksum: 2306f1bd9191e1eac895ec13e3064f732a85f243d6e627d242a313f9777756838a2215ea11562f0c7630c7c3b16a19ec1fe0948b1c82f3317fac55882f6ee5d8 + languageName: node + linkType: hard + +"d3-quadtree@npm:1 - 3": + version: 3.0.1 + resolution: "d3-quadtree@npm:3.0.1" + checksum: 5469d462763811475f34a7294d984f3eb100515b0585ca5b249656f6b1a6e99b20056a2d2e463cc9944b888896d2b1d07859c50f9c0cf23438df9cd2e3146066 + languageName: node + linkType: hard + +"d3-scale-chromatic@npm:^3.1.0": + version: 3.1.0 + resolution: "d3-scale-chromatic@npm:3.1.0" + dependencies: + d3-color: 1 - 3 + d3-interpolate: 1 - 3 + checksum: ab6324bd8e1f708e731e02ab44e09741efda2b174cea1d8ca21e4a87546295e99856bc44e2fd3890f228849c96bccfbcf922328f95be6a7df117453eb5cf22c9 + languageName: node + linkType: hard + +"d3-scale@npm:^4.0.2": + version: 4.0.2 + resolution: "d3-scale@npm:4.0.2" + dependencies: + d3-array: 2.10.0 - 3 + d3-format: 1 - 3 + d3-interpolate: 1.2.0 - 3 + d3-time: 2.1.1 - 3 + d3-time-format: 2 - 4 + checksum: a9c770d283162c3bd11477c3d9d485d07f8db2071665f1a4ad23eec3e515e2cefbd369059ec677c9ac849877d1a765494e90e92051d4f21111aa56791c98729e + languageName: node + linkType: hard + +"d3-shape@npm:^3.2.0": + version: 3.2.0 + resolution: "d3-shape@npm:3.2.0" + dependencies: + d3-path: ^3.1.0 + checksum: de2af5fc9a93036a7b68581ca0bfc4aca2d5a328aa7ba7064c11aedd44d24f310c20c40157cb654359d4c15c3ef369f95ee53d71221017276e34172c7b719cfa + languageName: node + linkType: hard + +"d3-time-format@npm:2 - 4, d3-time-format@npm:^4.1.0": + version: 4.1.0 + resolution: "d3-time-format@npm:4.1.0" + dependencies: + d3-time: 1 - 3 + checksum: 7342bce28355378152bbd4db4e275405439cabba082d9cd01946d40581140481c8328456d91740b0fe513c51ec4a467f4471ffa390c7e0e30ea30e9ec98fcdf4 + languageName: node + linkType: hard + +"d3-time@npm:1 - 3, d3-time@npm:2.1.1 - 3, d3-time@npm:^3.1.0": + version: 3.1.0 + resolution: "d3-time@npm:3.1.0" + dependencies: + d3-array: 2 - 3 + checksum: 613b435352a78d9f31b7f68540788186d8c331b63feca60ad21c88e9db1989fe888f97f242322ebd6365e45ec3fb206a4324cd4ca0dfffa1d9b5feb856ba00a7 + languageName: node + linkType: hard + +"d3-timer@npm:1 - 3, d3-timer@npm:^3.0.1": + version: 3.0.1 + resolution: "d3-timer@npm:3.0.1" + checksum: 1cfddf86d7bca22f73f2c427f52dfa35c49f50d64e187eb788dcad6e927625c636aa18ae4edd44d084eb9d1f81d8ca4ec305dae7f733c15846a824575b789d73 + languageName: node + linkType: hard + +"debug@npm:4, debug@npm:^4.3.4": + version: 4.4.0 + resolution: "debug@npm:4.4.0" + dependencies: + ms: ^2.1.3 + peerDependenciesMeta: + supports-color: + optional: true + checksum: fb42df878dd0e22816fc56e1fdca9da73caa85212fbe40c868b1295a6878f9101ae684f4eeef516c13acfc700f5ea07f1136954f43d4cd2d477a811144136479 + languageName: node + linkType: hard + +"debug@npm:^2.6.9": + version: 2.6.9 + resolution: "debug@npm:2.6.9" + dependencies: + ms: 2.0.0 + checksum: d2f51589ca66df60bf36e1fa6e4386b318c3f1e06772280eea5b1ae9fd3d05e9c2b7fd8a7d862457d00853c75b00451aa2d7459b924629ee385287a650f58fe6 + languageName: node + linkType: hard + +"deepmerge@npm:^4.2.2": + version: 4.3.1 + resolution: "deepmerge@npm:4.3.1" + checksum: 2024c6a980a1b7128084170c4cf56b0fd58a63f2da1660dcfe977415f27b17dbe5888668b59d0b063753f3220719d5e400b7f113609489c90160bb9a5518d052 + languageName: node + linkType: hard + +"delaunator@npm:5": + version: 5.0.1 + resolution: "delaunator@npm:5.0.1" + dependencies: + robust-predicates: ^3.0.2 + checksum: 69ee43ec649b4a13b7f33c8a027fb3e8dfcb09266af324286118da757e04d3d39df619b905dca41421405c311317ccf632ecfa93db44519bacec3303c57c5a0b + languageName: node + linkType: hard + +"dom-serializer@npm:^2.0.0": + version: 2.0.0 + resolution: "dom-serializer@npm:2.0.0" + dependencies: + domelementtype: ^2.3.0 + domhandler: ^5.0.2 + entities: ^4.2.0 + checksum: cd1810544fd8cdfbd51fa2c0c1128ec3a13ba92f14e61b7650b5de421b88205fd2e3f0cc6ace82f13334114addb90ed1c2f23074a51770a8e9c1273acbc7f3e6 + languageName: node + linkType: hard + +"domelementtype@npm:^2.3.0": + version: 2.3.0 + resolution: "domelementtype@npm:2.3.0" + checksum: ee837a318ff702622f383409d1f5b25dd1024b692ef64d3096ff702e26339f8e345820f29a68bcdcea8cfee3531776b3382651232fbeae95612d6f0a75efb4f6 + languageName: node + linkType: hard + +"domhandler@npm:^5.0.2, domhandler@npm:^5.0.3": + version: 5.0.3 + resolution: "domhandler@npm:5.0.3" + dependencies: + domelementtype: ^2.3.0 + checksum: 0f58f4a6af63e6f3a4320aa446d28b5790a009018707bce2859dcb1d21144c7876482b5188395a188dfa974238c019e0a1e610d2fc269a12b2c192ea2b0b131c + languageName: node + linkType: hard + +"domutils@npm:^3.0.1": + version: 3.2.2 + resolution: "domutils@npm:3.2.2" + dependencies: + dom-serializer: ^2.0.0 + domelementtype: ^2.3.0 + domhandler: ^5.0.3 + checksum: ae941d56f03d857077d55dde9297e960a625229fc2b933187cc4123084d7c2d2517f58283a7336567127029f1e008449bac8ac8506d44341e29e3bb18e02f906 + languageName: node + linkType: hard + +"eastasianwidth@npm:^0.2.0": + version: 0.2.0 + resolution: "eastasianwidth@npm:0.2.0" + checksum: 7d00d7cd8e49b9afa762a813faac332dee781932d6f2c848dc348939c4253f1d4564341b7af1d041853bc3f32c2ef141b58e0a4d9862c17a7f08f68df1e0f1ed + languageName: node + linkType: hard + +"emoji-regex@npm:^8.0.0": + version: 8.0.0 + resolution: "emoji-regex@npm:8.0.0" + checksum: d4c5c39d5a9868b5fa152f00cada8a936868fd3367f33f71be515ecee4c803132d11b31a6222b2571b1e5f7e13890156a94880345594d0ce7e3c9895f560f192 + languageName: node + linkType: hard + +"emoji-regex@npm:^9.2.2": + version: 9.2.2 + resolution: "emoji-regex@npm:9.2.2" + checksum: 8487182da74aabd810ac6d6f1994111dfc0e331b01271ae01ec1eb0ad7b5ecc2bbbbd2f053c05cb55a1ac30449527d819bbfbf0e3de1023db308cbcb47f86601 + languageName: node + linkType: hard + +"encoding@npm:^0.1.13": + version: 0.1.13 + resolution: "encoding@npm:0.1.13" + dependencies: + iconv-lite: ^0.6.2 + checksum: bb98632f8ffa823996e508ce6a58ffcf5856330fde839ae42c9e1f436cc3b5cc651d4aeae72222916545428e54fd0f6aa8862fd8d25bdbcc4589f1e3f3715e7f + languageName: node + linkType: hard + +"entities@npm:^4.2.0, entities@npm:^4.4.0": + version: 4.5.0 + resolution: "entities@npm:4.5.0" + checksum: 853f8ebd5b425d350bffa97dd6958143179a5938352ccae092c62d1267c4e392a039be1bae7d51b6e4ffad25f51f9617531fedf5237f15df302ccfb452cbf2d7 + languageName: node + linkType: hard + +"env-paths@npm:^2.2.0": + version: 2.2.1 + resolution: "env-paths@npm:2.2.1" + checksum: 65b5df55a8bab92229ab2b40dad3b387fad24613263d103a97f91c9fe43ceb21965cd3392b1ccb5d77088021e525c4e0481adb309625d0cb94ade1d1fb8dc17e + languageName: node + linkType: hard + +"err-code@npm:^2.0.2": + version: 2.0.3 + resolution: "err-code@npm:2.0.3" + checksum: 8b7b1be20d2de12d2255c0bc2ca638b7af5171142693299416e6a9339bd7d88fc8d7707d913d78e0993176005405a236b066b45666b27b797252c771156ace54 + languageName: node + linkType: hard + +"escalade@npm:^3.1.1": + version: 3.2.0 + resolution: "escalade@npm:3.2.0" + checksum: 47b029c83de01b0d17ad99ed766347b974b0d628e848de404018f3abee728e987da0d2d370ad4574aa3d5b5bfc368754fd085d69a30f8e75903486ec4b5b709e + languageName: node + linkType: hard + +"escape-string-regexp@npm:^4.0.0": + version: 4.0.0 + resolution: "escape-string-regexp@npm:4.0.0" + checksum: 98b48897d93060f2322108bf29db0feba7dd774be96cd069458d1453347b25ce8682ecc39859d4bca2203cc0ab19c237bcc71755eff49a0f8d90beadeeba5cc5 + languageName: node + linkType: hard + +"exenv-es6@npm:^1.1.1": + version: 1.1.1 + resolution: "exenv-es6@npm:1.1.1" + checksum: 7f2aa12025e6f06c48dc286f380cf3183bb19c6017b36d91695034a3e5124a7235c4f8ff24ca2eb88ae801322f0f99605cedfcfd996a5fcbba7669320e2a448e + languageName: node + linkType: hard + +"exponential-backoff@npm:^3.1.1": + version: 3.1.2 + resolution: "exponential-backoff@npm:3.1.2" + checksum: 7e191e3dd6edd8c56c88f2c8037c98fbb8034fe48778be53ed8cb30ccef371a061a4e999a469aab939b92f8f12698f3b426d52f4f76b7a20da5f9f98c3cbc862 + languageName: node + linkType: hard + +"fast-deep-equal@npm:^3.1.3": + version: 3.1.3 + resolution: "fast-deep-equal@npm:3.1.3" + checksum: e21a9d8d84f53493b6aa15efc9cfd53dd5b714a1f23f67fb5dc8f574af80df889b3bce25dc081887c6d25457cce704e636395333abad896ccdec03abaf1f3f9d + languageName: node + linkType: hard + +"fast-uri@npm:^3.0.1": + version: 3.0.6 + resolution: "fast-uri@npm:3.0.6" + checksum: 7161ba2a7944778d679ba8e5f00d6a2bb479a2142df0982f541d67be6c979b17808f7edbb0ce78161c85035974bde3fa52b5137df31da46c0828cb629ba67c4e + languageName: node + linkType: hard + +"fdir@npm:^6.4.4": + version: 6.4.4 + resolution: "fdir@npm:6.4.4" + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + checksum: 79043610236579ffbd0647c508b43bd030a2d034a17c43cf96813a00e8e92e51acdb115c6ddecef3b5812cc2692b976155b4f6413e51e3761f1e772fa019a321 + languageName: node + linkType: hard + +"foreground-child@npm:^3.1.0": + version: 3.3.1 + resolution: "foreground-child@npm:3.3.1" + dependencies: + cross-spawn: ^7.0.6 + signal-exit: ^4.0.1 + checksum: b2c1a6fc0bf0233d645d9fefdfa999abf37db1b33e5dab172b3cbfb0662b88bfbd2c9e7ab853533d199050ec6b65c03fcf078fc212d26e4990220e98c6930eef + languageName: node + linkType: hard + +"free-style@npm:3.1.0": + version: 3.1.0 + resolution: "free-style@npm:3.1.0" + checksum: 949258ae315deda48cac93ecd5f9a80f36e8a027e19ce2103598dc8d5ab60e963bbad5444b2a4990ddb746798dd188896f430285cf484afbf2141f7d75a191d8 + languageName: node + linkType: hard + +"fs-extra@npm:^10.1.0": + version: 10.1.0 + resolution: "fs-extra@npm:10.1.0" + dependencies: + graceful-fs: ^4.2.0 + jsonfile: ^6.0.1 + universalify: ^2.0.0 + checksum: dc94ab37096f813cc3ca12f0f1b5ad6744dfed9ed21e953d72530d103cea193c2f81584a39e9dee1bea36de5ee66805678c0dddc048e8af1427ac19c00fffc50 + languageName: node + linkType: hard + +"fs-minipass@npm:^3.0.0": + version: 3.0.3 + resolution: "fs-minipass@npm:3.0.3" + dependencies: + minipass: ^7.0.3 + checksum: 8722a41109130851d979222d3ec88aabaceeaaf8f57b2a8f744ef8bd2d1ce95453b04a61daa0078822bc5cd21e008814f06fe6586f56fef511e71b8d2394d802 + languageName: node + linkType: hard + +"fsevents@npm:2.3.2": + version: 2.3.2 + resolution: "fsevents@npm:2.3.2" + dependencies: + node-gyp: latest + checksum: 97ade64e75091afee5265e6956cb72ba34db7819b4c3e94c431d4be2b19b8bb7a2d4116da417950c3425f17c8fe693d25e20212cac583ac1521ad066b77ae31f + conditions: os=darwin + languageName: node + linkType: hard + +"fsevents@patch:fsevents@2.3.2#~builtin": + version: 2.3.2 + resolution: "fsevents@patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=df0bf1" + dependencies: + node-gyp: latest + conditions: os=darwin + languageName: node + linkType: hard + +"get-caller-file@npm:^2.0.5": + version: 2.0.5 + resolution: "get-caller-file@npm:2.0.5" + checksum: b9769a836d2a98c3ee734a88ba712e62703f1df31b94b784762c433c27a386dd6029ff55c2a920c392e33657d80191edbf18c61487e198844844516f843496b9 + languageName: node + linkType: hard + +"glob@npm:^10.2.2": + version: 10.4.5 + resolution: "glob@npm:10.4.5" + dependencies: + foreground-child: ^3.1.0 + jackspeak: ^3.1.2 + minimatch: ^9.0.4 + minipass: ^7.1.2 + package-json-from-dist: ^1.0.0 + path-scurry: ^1.11.1 + bin: + glob: dist/esm/bin.mjs + checksum: 0bc725de5e4862f9f387fd0f2b274baf16850dcd2714502ccf471ee401803997983e2c05590cb65f9675a3c6f2a58e7a53f9e365704108c6ad3cbf1d60934c4a + languageName: node + linkType: hard + +"graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.6": + version: 4.2.11 + resolution: "graceful-fs@npm:4.2.11" + checksum: ac85f94da92d8eb6b7f5a8b20ce65e43d66761c55ce85ac96df6865308390da45a8d3f0296dd3a663de65d30ba497bd46c696cc1e248c72b13d6d567138a4fc7 + languageName: node + linkType: hard + +"htmlparser2@npm:^8.0.0": + version: 8.0.2 + resolution: "htmlparser2@npm:8.0.2" + dependencies: + domelementtype: ^2.3.0 + domhandler: ^5.0.3 + domutils: ^3.0.1 + entities: ^4.4.0 + checksum: 29167a0f9282f181da8a6d0311b76820c8a59bc9e3c87009e21968264c2987d2723d6fde5a964d4b7b6cba663fca96ffb373c06d8223a85f52a6089ced942700 + languageName: node + linkType: hard + +"http-cache-semantics@npm:^4.1.1": + version: 4.1.1 + resolution: "http-cache-semantics@npm:4.1.1" + checksum: 83ac0bc60b17a3a36f9953e7be55e5c8f41acc61b22583060e8dedc9dd5e3607c823a88d0926f9150e571f90946835c7fe150732801010845c72cd8bbff1a236 + languageName: node + linkType: hard + +"http-proxy-agent@npm:^7.0.0": + version: 7.0.2 + resolution: "http-proxy-agent@npm:7.0.2" + dependencies: + agent-base: ^7.1.0 + debug: ^4.3.4 + checksum: 670858c8f8f3146db5889e1fa117630910101db601fff7d5a8aa637da0abedf68c899f03d3451cac2f83bcc4c3d2dabf339b3aa00ff8080571cceb02c3ce02f3 + languageName: node + linkType: hard + +"https-proxy-agent@npm:^7.0.1": + version: 7.0.6 + resolution: "https-proxy-agent@npm:7.0.6" + dependencies: + agent-base: ^7.1.2 + debug: 4 + checksum: b882377a120aa0544846172e5db021fa8afbf83fea2a897d397bd2ddd8095ab268c24bc462f40a15f2a8c600bf4aa05ce52927f70038d4014e68aefecfa94e8d + languageName: node + linkType: hard + +"iconv-lite@npm:0.6, iconv-lite@npm:^0.6.2": + version: 0.6.3 + resolution: "iconv-lite@npm:0.6.3" + dependencies: + safer-buffer: ">= 2.1.2 < 3.0.0" + checksum: 3f60d47a5c8fc3313317edfd29a00a692cc87a19cac0159e2ce711d0ebc9019064108323b5e493625e25594f11c6236647d8e256fbe7a58f4a3b33b89e6d30bf + languageName: node + linkType: hard + +"imurmurhash@npm:^0.1.4": + version: 0.1.4 + resolution: "imurmurhash@npm:0.1.4" + checksum: 7cae75c8cd9a50f57dadd77482359f659eaebac0319dd9368bcd1714f55e65badd6929ca58569da2b6494ef13fdd5598cd700b1eba23f8b79c5f19d195a3ecf7 + languageName: node + linkType: hard + +"inherits@npm:2.0.3": + version: 2.0.3 + resolution: "inherits@npm:2.0.3" + checksum: 78cb8d7d850d20a5e9a7f3620db31483aa00ad5f722ce03a55b110e5a723539b3716a3b463e2b96ce3fe286f33afc7c131fa2f91407528ba80cea98a7545d4c0 + languageName: node + linkType: hard + +"inherits@npm:~2.0.3": + version: 2.0.4 + resolution: "inherits@npm:2.0.4" + checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 + languageName: node + linkType: hard + +"internmap@npm:1 - 2": + version: 2.0.3 + resolution: "internmap@npm:2.0.3" + checksum: 7ca41ec6aba8f0072fc32fa8a023450a9f44503e2d8e403583c55714b25efd6390c38a87161ec456bf42d7bc83aab62eb28f5aef34876b1ac4e60693d5e1d241 + languageName: node + linkType: hard + +"ip-address@npm:^9.0.5": + version: 9.0.5 + resolution: "ip-address@npm:9.0.5" + dependencies: + jsbn: 1.1.0 + sprintf-js: ^1.1.3 + checksum: aa15f12cfd0ef5e38349744e3654bae649a34c3b10c77a674a167e99925d1549486c5b14730eebce9fea26f6db9d5e42097b00aa4f9f612e68c79121c71652dc + languageName: node + linkType: hard + +"is-fullwidth-code-point@npm:^3.0.0": + version: 3.0.0 + resolution: "is-fullwidth-code-point@npm:3.0.0" + checksum: 44a30c29457c7fb8f00297bce733f0a64cd22eca270f83e58c105e0d015e45c019491a4ab2faef91ab51d4738c670daff901c799f6a700e27f7314029e99e348 + languageName: node + linkType: hard + +"is-plain-object@npm:^5.0.0": + version: 5.0.0 + resolution: "is-plain-object@npm:5.0.0" + checksum: e32d27061eef62c0847d303125440a38660517e586f2f3db7c9d179ae5b6674ab0f469d519b2e25c147a1a3bc87156d0d5f4d8821e0ce4a9ee7fe1fcf11ce45c + languageName: node + linkType: hard + +"isarray@npm:~1.0.0": + version: 1.0.0 + resolution: "isarray@npm:1.0.0" + checksum: f032df8e02dce8ec565cf2eb605ea939bdccea528dbcf565cdf92bfa2da9110461159d86a537388ef1acef8815a330642d7885b29010e8f7eac967c9993b65ab + languageName: node + linkType: hard + +"isexe@npm:^2.0.0": + version: 2.0.0 + resolution: "isexe@npm:2.0.0" + checksum: 26bf6c5480dda5161c820c5b5c751ae1e766c587b1f951ea3fcfc973bafb7831ae5b54a31a69bd670220e42e99ec154475025a468eae58ea262f813fdc8d1c62 + languageName: node + linkType: hard + +"isexe@npm:^3.1.1": + version: 3.1.1 + resolution: "isexe@npm:3.1.1" + checksum: 7fe1931ee4e88eb5aa524cd3ceb8c882537bc3a81b02e438b240e47012eef49c86904d0f0e593ea7c3a9996d18d0f1f3be8d3eaa92333977b0c3a9d353d5563e + languageName: node + linkType: hard + +"isomorphic.js@npm:^0.2.4": + version: 0.2.5 + resolution: "isomorphic.js@npm:0.2.5" + checksum: d8d1b083f05f3c337a06628b982ac3ce6db953bbef14a9de8ad49131250c3592f864b73c12030fdc9ef138ce97b76ef55c7d96a849561ac215b1b4b9d301c8e9 + languageName: node + linkType: hard + +"jackspeak@npm:^3.1.2": + 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: be31027fc72e7cc726206b9f560395604b82e0fddb46c4cbf9f97d049bcef607491a5afc0699612eaa4213ca5be8fd3e1e7cd187b3040988b65c9489838a7c00 + languageName: node + linkType: hard + +"js-tokens@npm:^3.0.0 || ^4.0.0": + version: 4.0.0 + resolution: "js-tokens@npm:4.0.0" + checksum: 8a95213a5a77deb6cbe94d86340e8d9ace2b93bc367790b260101d2f36a2eaf4e4e22d9fa9cf459b38af3a32fb4190e638024cf82ec95ef708680e405ea7cc78 + languageName: node + linkType: hard + +"jsbn@npm:1.1.0": + version: 1.1.0 + resolution: "jsbn@npm:1.1.0" + checksum: 944f924f2bd67ad533b3850eee47603eed0f6ae425fd1ee8c760f477e8c34a05f144c1bd4f5a5dd1963141dc79a2c55f89ccc5ab77d039e7077f3ad196b64965 + languageName: node + linkType: hard + +"json-schema-compare@npm:^0.2.2": + version: 0.2.2 + resolution: "json-schema-compare@npm:0.2.2" + dependencies: + lodash: ^4.17.4 + checksum: dd6f2173857c8e3b77d6ebdfa05bd505bba5b08709ab46b532722f5d1c33b5fee1fc8f3c97d0c0d011db25f9f3b0baf7ab783bb5f55c32abd9f1201760e43c2c + languageName: node + linkType: hard + +"json-schema-merge-allof@npm:^0.8.1": + version: 0.8.1 + resolution: "json-schema-merge-allof@npm:0.8.1" + dependencies: + compute-lcm: ^1.1.2 + json-schema-compare: ^0.2.2 + lodash: ^4.17.20 + checksum: 82700f6ac77351959138d6b153d77375a8c29cf48d907241b85c8292dd77aabd8cb816400f2b0d17062c4ccc8893832ec4f664ab9c814927ef502e7a595ea873 + languageName: node + linkType: hard + +"json-schema-traverse@npm:^1.0.0": + version: 1.0.0 + resolution: "json-schema-traverse@npm:1.0.0" + checksum: 02f2f466cdb0362558b2f1fd5e15cce82ef55d60cd7f8fa828cf35ba74330f8d767fcae5c5c2adb7851fa811766c694b9405810879bc4e1ddd78a7c0e03658ad + languageName: node + linkType: hard + +"json-stringify-pretty-compact@npm:~4.0.0": + version: 4.0.0 + resolution: "json-stringify-pretty-compact@npm:4.0.0" + checksum: a10d5c423e467872994a49c5c1b56b073f277ce02d899cf567fc625f3783b89406bee6408bfb3b4bdeeff509b6a562f5259227e26754a6186f721809ca895f0c + languageName: node + linkType: hard + +"json5@npm:^2.2.3": + version: 2.2.3 + resolution: "json5@npm:2.2.3" + bin: + json5: lib/cli.js + checksum: 2a7436a93393830bce797d4626275152e37e877b265e94ca69c99e3d20c2b9dab021279146a39cdb700e71b2dd32a4cebd1514cd57cee102b1af906ce5040349 + languageName: node + linkType: hard + +"jsonfile@npm:^6.0.1": + version: 6.1.0 + resolution: "jsonfile@npm:6.1.0" + dependencies: + graceful-fs: ^4.1.6 + universalify: ^2.0.0 + dependenciesMeta: + graceful-fs: + optional: true + checksum: 7af3b8e1ac8fe7f1eccc6263c6ca14e1966fcbc74b618d3c78a0a2075579487547b94f72b7a1114e844a1e15bb00d440e5d1720bfc4612d790a6f285d5ea8354 + languageName: node + linkType: hard + +"jsonpointer@npm:^5.0.1": + version: 5.0.1 + resolution: "jsonpointer@npm:5.0.1" + checksum: 0b40f712900ad0c846681ea2db23b6684b9d5eedf55807b4708c656f5894b63507d0e28ae10aa1bddbea551241035afe62b6df0800fc94c2e2806a7f3adecd7c + languageName: node + linkType: hard + +"lib0@npm:^0.2.85, lib0@npm:^0.2.99": + version: 0.2.105 + resolution: "lib0@npm:0.2.105" + dependencies: + isomorphic.js: ^0.2.4 + bin: + 0ecdsa-generate-keypair: bin/0ecdsa-generate-keypair.js + 0gentesthtml: bin/gentesthtml.js + 0serve: bin/0serve.js + checksum: 31e542f19db54edb163507da8103c28f40f61947cc6156c9feab933efc331894dc0b910f412a674a4dda0d8baaf37cd41806872915ad5f7cbaf53d36261374b3 + languageName: node + linkType: hard + +"lodash-es@npm:^4.17.21": + version: 4.17.21 + resolution: "lodash-es@npm:4.17.21" + checksum: 05cbffad6e2adbb331a4e16fbd826e7faee403a1a04873b82b42c0f22090f280839f85b95393f487c1303c8a3d2a010048bf06151a6cbe03eee4d388fb0a12d2 + languageName: node + linkType: hard + +"lodash.escape@npm:^4.0.1": + version: 4.0.1 + resolution: "lodash.escape@npm:4.0.1" + checksum: fcb54f457497256964d619d5cccbd80a961916fca60df3fe0fa3e7f052715c2944c0ed5aefb4f9e047d127d44aa2d55555f3350cb42c6549e9e293fb30b41e7f + languageName: node + linkType: hard + +"lodash.mergewith@npm:^4.6.1": + version: 4.6.2 + resolution: "lodash.mergewith@npm:4.6.2" + checksum: a6db2a9339752411f21b956908c404ec1e088e783a65c8b29e30ae5b3b6384f82517662d6f425cc97c2070b546cc2c7daaa8d33f78db7b6e9be06cd834abdeb8 + languageName: node + linkType: hard + +"lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.17.4": + version: 4.17.21 + resolution: "lodash@npm:4.17.21" + checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7 + languageName: node + linkType: hard + +"loose-envify@npm:^1.1.0, loose-envify@npm:^1.4.0": + version: 1.4.0 + resolution: "loose-envify@npm:1.4.0" + dependencies: + js-tokens: ^3.0.0 || ^4.0.0 + bin: + loose-envify: cli.js + checksum: 6517e24e0cad87ec9888f500c5b5947032cdfe6ef65e1c1936a0c48a524b81e65542c9c3edc91c97d5bddc806ee2a985dbc79be89215d613b1de5db6d1cfe6f4 + languageName: node + linkType: hard + +"lru-cache@npm:^10.0.1, lru-cache@npm:^10.2.0": + version: 10.4.3 + resolution: "lru-cache@npm:10.4.3" + checksum: 6476138d2125387a6d20f100608c2583d415a4f64a0fecf30c9e2dda976614f09cad4baa0842447bd37dd459a7bd27f57d9d8f8ce558805abd487c583f3d774a + languageName: node + linkType: hard + +"make-fetch-happen@npm:^14.0.3": + version: 14.0.3 + resolution: "make-fetch-happen@npm:14.0.3" + dependencies: + "@npmcli/agent": ^3.0.0 + cacache: ^19.0.1 + http-cache-semantics: ^4.1.1 + minipass: ^7.0.2 + minipass-fetch: ^4.0.0 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + negotiator: ^1.0.0 + proc-log: ^5.0.0 + promise-retry: ^2.0.1 + ssri: ^12.0.0 + checksum: 6fb2fee6da3d98f1953b03d315826b5c5a4ea1f908481afc113782d8027e19f080c85ae998454de4e5f27a681d3ec58d57278f0868d4e0b736f51d396b661691 + languageName: node + linkType: hard + +"markdown-to-jsx@npm:^7.4.1": + version: 7.7.6 + resolution: "markdown-to-jsx@npm:7.7.6" + peerDependencies: + react: ">= 0.14.0" + checksum: 326fee0bd03686b640632c36a5250d2f3b9fba6d8cdf6719bc6c0b27cc27a1bed86ae3d940dacc52d7be28e02238ad458aa0b5fdb1331463a23037975a672202 + languageName: node + linkType: hard + +"minimatch@npm:^9.0.4": + version: 9.0.5 + resolution: "minimatch@npm:9.0.5" + dependencies: + brace-expansion: ^2.0.1 + checksum: 2c035575eda1e50623c731ec6c14f65a85296268f749b9337005210bb2b34e2705f8ef1a358b188f69892286ab99dc42c8fb98a57bde55c8d81b3023c19cea28 + languageName: node + linkType: hard + +"minimist@npm:^1.2.0, minimist@npm:~1.2.0": + version: 1.2.8 + resolution: "minimist@npm:1.2.8" + checksum: 75a6d645fb122dad29c06a7597bddea977258957ed88d7a6df59b5cd3fe4a527e253e9bbf2e783e4b73657f9098b96a5fe96ab8a113655d4109108577ecf85b0 + languageName: node + linkType: hard + +"minipass-collect@npm:^2.0.1": + version: 2.0.1 + resolution: "minipass-collect@npm:2.0.1" + dependencies: + minipass: ^7.0.3 + checksum: b251bceea62090f67a6cced7a446a36f4cd61ee2d5cea9aee7fff79ba8030e416327a1c5aa2908dc22629d06214b46d88fdab8c51ac76bacbf5703851b5ad342 + languageName: node + linkType: hard + +"minipass-fetch@npm:^4.0.0": + version: 4.0.1 + resolution: "minipass-fetch@npm:4.0.1" + dependencies: + encoding: ^0.1.13 + minipass: ^7.0.3 + minipass-sized: ^1.0.3 + minizlib: ^3.0.1 + dependenciesMeta: + encoding: + optional: true + checksum: 3dfca705ce887ca9ff14d73e8d8593996dea1a1ecd8101fdbb9c10549d1f9670bc8fb66ad0192769ead4c2dc01b4f9ca1cf567ded365adff17827a303b948140 + languageName: node + linkType: hard + +"minipass-flush@npm:^1.0.5": + version: 1.0.5 + resolution: "minipass-flush@npm:1.0.5" + dependencies: + minipass: ^3.0.0 + checksum: 56269a0b22bad756a08a94b1ffc36b7c9c5de0735a4dd1ab2b06c066d795cfd1f0ac44a0fcae13eece5589b908ecddc867f04c745c7009be0b566421ea0944cf + languageName: node + linkType: hard + +"minipass-pipeline@npm:^1.2.4": + version: 1.2.4 + resolution: "minipass-pipeline@npm:1.2.4" + dependencies: + minipass: ^3.0.0 + checksum: b14240dac0d29823c3d5911c286069e36d0b81173d7bdf07a7e4a91ecdef92cdff4baaf31ea3746f1c61e0957f652e641223970870e2353593f382112257971b + languageName: node + linkType: hard + +"minipass-sized@npm:^1.0.3": + version: 1.0.3 + resolution: "minipass-sized@npm:1.0.3" + dependencies: + minipass: ^3.0.0 + checksum: 79076749fcacf21b5d16dd596d32c3b6bf4d6e62abb43868fac21674078505c8b15eaca4e47ed844985a4514854f917d78f588fcd029693709417d8f98b2bd60 + languageName: node + linkType: hard + +"minipass@npm:^3.0.0": + version: 3.3.6 + resolution: "minipass@npm:3.3.6" + dependencies: + yallist: ^4.0.0 + checksum: a30d083c8054cee83cdcdc97f97e4641a3f58ae743970457b1489ce38ee1167b3aaf7d815cd39ec7a99b9c40397fd4f686e83750e73e652b21cb516f6d845e48 + languageName: node + linkType: hard + +"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2": + version: 7.1.2 + resolution: "minipass@npm:7.1.2" + checksum: 2bfd325b95c555f2b4d2814d49325691c7bee937d753814861b0b49d5edcda55cbbf22b6b6a60bb91eddac8668771f03c5ff647dcd9d0f798e9548b9cdc46ee3 + languageName: node + linkType: hard + +"minizlib@npm:^3.0.1": + version: 3.0.2 + resolution: "minizlib@npm:3.0.2" + dependencies: + minipass: ^7.1.2 + checksum: 493bed14dcb6118da7f8af356a8947cf1473289c09658e5aabd69a737800a8c3b1736fb7d7931b722268a9c9bc038a6d53c049b6a6af24b34a121823bb709996 + languageName: node + linkType: hard + +"mkdirp@npm:^3.0.1": + version: 3.0.1 + resolution: "mkdirp@npm:3.0.1" + bin: + mkdirp: dist/cjs/src/bin.js + checksum: 972deb188e8fb55547f1e58d66bd6b4a3623bf0c7137802582602d73e6480c1c2268dcbafbfb1be466e00cc7e56ac514d7fd9334b7cf33e3e2ab547c16f83a8d + languageName: node + linkType: hard + +"ms@npm:2.0.0": + version: 2.0.0 + resolution: "ms@npm:2.0.0" + checksum: 0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4 + languageName: node + linkType: hard + +"ms@npm:^2.1.3": + version: 2.1.3 + resolution: "ms@npm:2.1.3" + checksum: aa92de608021b242401676e35cfa5aa42dd70cbdc082b916da7fb925c542173e36bce97ea3e804923fe92c0ad991434e4a38327e15a1b5b5f945d66df615ae6d + languageName: node + linkType: hard + +"nanoid@npm:^3.3.7, nanoid@npm:^3.3.8": + version: 3.3.11 + resolution: "nanoid@npm:3.3.11" + bin: + nanoid: bin/nanoid.cjs + checksum: 3be20d8866a57a6b6d218e82549711c8352ed969f9ab3c45379da28f405363ad4c9aeb0b39e9abc101a529ca65a72ff9502b00bf74a912c4b64a9d62dfd26c29 + languageName: node + linkType: hard + +"negotiator@npm:^1.0.0": + version: 1.0.0 + resolution: "negotiator@npm:1.0.0" + checksum: 20ebfe79b2d2e7cf9cbc8239a72662b584f71164096e6e8896c8325055497c96f6b80cd22c258e8a2f2aa382a787795ec3ee8b37b422a302c7d4381b0d5ecfbb + languageName: node + linkType: hard + +"node-fetch@npm:^2.6.7": + version: 2.7.0 + resolution: "node-fetch@npm:2.7.0" + dependencies: + whatwg-url: ^5.0.0 + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + checksum: d76d2f5edb451a3f05b15115ec89fc6be39de37c6089f1b6368df03b91e1633fd379a7e01b7ab05089a25034b2023d959b47e59759cb38d88341b2459e89d6e5 + languageName: node + linkType: hard + +"node-gyp@npm:latest": + version: 11.2.0 + resolution: "node-gyp@npm:11.2.0" + dependencies: + env-paths: ^2.2.0 + exponential-backoff: ^3.1.1 + graceful-fs: ^4.2.6 + make-fetch-happen: ^14.0.3 + nopt: ^8.0.0 + proc-log: ^5.0.0 + semver: ^7.3.5 + tar: ^7.4.3 + tinyglobby: ^0.2.12 + which: ^5.0.0 + bin: + node-gyp: bin/node-gyp.js + checksum: 2536282ba81f8a94b29482d3622b6ab298611440619e46de4512a6f32396a68b5530357c474b859787069d84a4c537d99e0c71078cce5b9f808bf84eeb78e8fb + languageName: node + linkType: hard + +"nopt@npm:^8.0.0": + version: 8.1.0 + resolution: "nopt@npm:8.1.0" + dependencies: + abbrev: ^3.0.0 + bin: + nopt: bin/nopt.js + checksum: 49cfd3eb6f565e292bf61f2ff1373a457238804d5a5a63a8d786c923007498cba89f3648e3b952bc10203e3e7285752abf5b14eaf012edb821e84f24e881a92a + languageName: node + linkType: hard + +"object-assign@npm:^4.1.1": + version: 4.1.1 + resolution: "object-assign@npm:4.1.1" + checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f + languageName: node + linkType: hard + +"p-map@npm:^7.0.2": + version: 7.0.3 + resolution: "p-map@npm:7.0.3" + checksum: 8c92d533acf82f0d12f7e196edccff773f384098bbb048acdd55a08778ce4fc8889d8f1bde72969487bd96f9c63212698d79744c20bedfce36c5b00b46d369f8 + languageName: node + linkType: hard + +"package-json-from-dist@npm:^1.0.0": + version: 1.0.1 + resolution: "package-json-from-dist@npm:1.0.1" + checksum: 58ee9538f2f762988433da00e26acc788036914d57c71c246bf0be1b60cdbd77dd60b6a3e1a30465f0b248aeb80079e0b34cb6050b1dfa18c06953bb1cbc7602 + languageName: node + linkType: hard + +"parse-srcset@npm:^1.0.2": + version: 1.0.2 + resolution: "parse-srcset@npm:1.0.2" + checksum: 3a0380380c6082021fcce982f0b89fb8a493ce9dfd7d308e5e6d855201e80db8b90438649b31fdd82a3d6089a8ca17dccddaa2b730a718389af4c037b8539ebf + languageName: node + linkType: hard + +"path-browserify@npm:^1.0.0": + version: 1.0.1 + resolution: "path-browserify@npm:1.0.1" + checksum: c6d7fa376423fe35b95b2d67990060c3ee304fc815ff0a2dc1c6c3cfaff2bd0d572ee67e18f19d0ea3bbe32e8add2a05021132ac40509416459fffee35200699 + languageName: node + linkType: hard + +"path-key@npm:^3.1.0": + version: 3.1.1 + resolution: "path-key@npm:3.1.1" + checksum: 55cd7a9dd4b343412a8386a743f9c746ef196e57c823d90ca3ab917f90ab9f13dd0ded27252ba49dbdfcab2b091d998bc446f6220cd3cea65db407502a740020 + languageName: node + linkType: hard + +"path-scurry@npm:^1.11.1": + version: 1.11.1 + resolution: "path-scurry@npm:1.11.1" + dependencies: + lru-cache: ^10.2.0 + minipass: ^5.0.0 || ^6.0.2 || ^7.0.0 + checksum: 890d5abcd593a7912dcce7cf7c6bf7a0b5648e3dee6caf0712c126ca0a65c7f3d7b9d769072a4d1baf370f61ce493ab5b038d59988688e0c5f3f646ee3c69023 + languageName: node + linkType: hard + +"path@npm:~0.12.7": + version: 0.12.7 + resolution: "path@npm:0.12.7" + dependencies: + process: ^0.11.1 + util: ^0.10.3 + checksum: 5dedb71e78fc008fcba797defc0b4e1cf06c1f18e0a631e03ba5bb505136f587ff017afc14f9a3d481cbe77aeedff7dc0c1d2ce4d820c1ebf3c4281ca49423a1 + languageName: node + linkType: hard + +"picocolors@npm:^1.1.1": + version: 1.1.1 + resolution: "picocolors@npm:1.1.1" + checksum: e1cf46bf84886c79055fdfa9dcb3e4711ad259949e3565154b004b260cd356c5d54b31a1437ce9782624bf766272fe6b0154f5f0c744fb7af5d454d2b60db045 + languageName: node + linkType: hard + +"picomatch@npm:^4.0.2": + version: 4.0.2 + resolution: "picomatch@npm:4.0.2" + checksum: a7a5188c954f82c6585720e9143297ccd0e35ad8072231608086ca950bee672d51b0ef676254af0788205e59bd4e4deb4e7708769226bed725bf13370a7d1464 + languageName: node + linkType: hard + +"playwright-core@npm:1.52.0": + version: 1.52.0 + resolution: "playwright-core@npm:1.52.0" + bin: + playwright-core: cli.js + checksum: 28aa7785afb6ef9b05e8573a0655cb7cf72a782329f51d1e152ed94273c69206588b44a9440ca4b500cd1a15e6068ec9c2746ec4666a89bcce2854d429d22dc8 + languageName: node + linkType: hard + +"playwright@npm:1.52.0": + version: 1.52.0 + resolution: "playwright@npm:1.52.0" + dependencies: + fsevents: 2.3.2 + playwright-core: 1.52.0 + dependenciesMeta: + fsevents: + optional: true + bin: + playwright: cli.js + checksum: ad072d7c2eef2568f9b35471221eeb838406e7d4b9c38624430003c235b0b939fd10d02080e6fa39ece43e88d04be0b6f3d875d16aa82ae691705f5ac2055ec5 + languageName: node + linkType: hard + +"postcss@npm:^8.3.11": + version: 8.5.3 + resolution: "postcss@npm:8.5.3" + dependencies: + nanoid: ^3.3.8 + picocolors: ^1.1.1 + source-map-js: ^1.2.1 + checksum: da574620eb84ff60e65e1d8fc6bd5ad87a19101a23d0aba113c653434161543918229a0f673d89efb3b6d4906287eb04b957310dbcf4cbebacad9d1312711461 + languageName: node + linkType: hard + +"proc-log@npm:^5.0.0": + version: 5.0.0 + resolution: "proc-log@npm:5.0.0" + checksum: c78b26ecef6d5cce4a7489a1e9923d7b4b1679028c8654aef0463b27f4a90b0946cd598f55799da602895c52feb085ec76381d007ab8dcceebd40b89c2f9dfe0 + languageName: node + linkType: hard + +"process-nextick-args@npm:~2.0.0": + version: 2.0.1 + resolution: "process-nextick-args@npm:2.0.1" + checksum: 1d38588e520dab7cea67cbbe2efdd86a10cc7a074c09657635e34f035277b59fbb57d09d8638346bf7090f8e8ebc070c96fa5fd183b777fff4f5edff5e9466cf + languageName: node + linkType: hard + +"process@npm:^0.11.1": + version: 0.11.10 + resolution: "process@npm:0.11.10" + checksum: bfcce49814f7d172a6e6a14d5fa3ac92cc3d0c3b9feb1279774708a719e19acd673995226351a082a9ae99978254e320ccda4240ddc474ba31a76c79491ca7c3 + languageName: node + linkType: hard + +"promise-retry@npm:^2.0.1": + version: 2.0.1 + resolution: "promise-retry@npm:2.0.1" + dependencies: + err-code: ^2.0.2 + retry: ^0.12.0 + checksum: f96a3f6d90b92b568a26f71e966cbbc0f63ab85ea6ff6c81284dc869b41510e6cdef99b6b65f9030f0db422bf7c96652a3fff9f2e8fb4a0f069d8f4430359429 + languageName: node + linkType: hard + +"prop-types@npm:^15.8.1": + version: 15.8.1 + resolution: "prop-types@npm:15.8.1" + dependencies: + loose-envify: ^1.4.0 + object-assign: ^4.1.1 + react-is: ^16.13.1 + checksum: c056d3f1c057cb7ff8344c645450e14f088a915d078dcda795041765047fa080d38e5d626560ccaac94a4e16e3aa15f3557c1a9a8d1174530955e992c675e459 + languageName: node + linkType: hard + +"querystringify@npm:^2.1.1": + version: 2.2.0 + resolution: "querystringify@npm:2.2.0" + checksum: 5641ea231bad7ef6d64d9998faca95611ed4b11c2591a8cae741e178a974f6a8e0ebde008475259abe1621cb15e692404e6b6626e927f7b849d5c09392604b15 + languageName: node + linkType: hard + +"react-dom@npm:^18.2.0": + version: 18.3.1 + resolution: "react-dom@npm:18.3.1" + dependencies: + loose-envify: ^1.1.0 + scheduler: ^0.23.2 + peerDependencies: + react: ^18.3.1 + checksum: 298954ecd8f78288dcaece05e88b570014d8f6dce5db6f66e6ee91448debeb59dcd31561dddb354eee47e6c1bb234669459060deb238ed0213497146e555a0b9 + languageName: node + linkType: hard + +"react-is@npm:^16.13.1": + version: 16.13.1 + resolution: "react-is@npm:16.13.1" + checksum: f7a19ac3496de32ca9ae12aa030f00f14a3d45374f1ceca0af707c831b2a6098ef0d6bdae51bd437b0a306d7f01d4677fcc8de7c0d331eb47ad0f46130e53c5f + languageName: node + linkType: hard + +"react-is@npm:^18.2.0": + version: 18.3.1 + resolution: "react-is@npm:18.3.1" + checksum: e20fe84c86ff172fc8d898251b7cc2c43645d108bf96d0b8edf39b98f9a2cae97b40520ee7ed8ee0085ccc94736c4886294456033304151c3f94978cec03df21 + languageName: node + linkType: hard + +"react@npm:>=17.0.0 <19.0.0, react@npm:^18.2.0": + version: 18.3.1 + resolution: "react@npm:18.3.1" + dependencies: + loose-envify: ^1.1.0 + checksum: a27bcfa8ff7c15a1e50244ad0d0c1cb2ad4375eeffefd266a64889beea6f6b64c4966c9b37d14ee32d6c9fcd5aa6ba183b6988167ab4d127d13e7cb5b386a376 + languageName: node + linkType: hard + +"readable-stream@npm:^2.1.4": + version: 2.3.8 + resolution: "readable-stream@npm:2.3.8" + dependencies: + core-util-is: ~1.0.0 + inherits: ~2.0.3 + isarray: ~1.0.0 + process-nextick-args: ~2.0.0 + safe-buffer: ~5.1.1 + string_decoder: ~1.1.1 + util-deprecate: ~1.0.1 + checksum: 65645467038704f0c8aaf026a72fbb588a9e2ef7a75cd57a01702ee9db1c4a1e4b03aaad36861a6a0926546a74d174149c8c207527963e0c2d3eee2f37678a42 + languageName: node + linkType: hard + +"regexp-match-indices@npm:^1.0.2": + version: 1.0.2 + resolution: "regexp-match-indices@npm:1.0.2" + dependencies: + regexp-tree: ^0.1.11 + checksum: 8cc779f6cf8f404ead828d09970a7d4bd66bd78d43ab9eb2b5e65f2ef2ba1ed53536f5b5fa839fb90b350365fb44b6a851c7f16289afc3f37789c113ab2a7916 + languageName: node + linkType: hard + +"regexp-tree@npm:^0.1.11": + version: 0.1.27 + resolution: "regexp-tree@npm:0.1.27" + bin: + regexp-tree: bin/regexp-tree + checksum: 129aebb34dae22d6694ab2ac328be3f99105143737528ab072ef624d599afecbcfae1f5c96a166fa9e5f64fa1ecf30b411c4691e7924c3e11bbaf1712c260c54 + languageName: node + linkType: hard + +"require-directory@npm:^2.1.1": + version: 2.1.1 + resolution: "require-directory@npm:2.1.1" + checksum: fb47e70bf0001fdeabdc0429d431863e9475e7e43ea5f94ad86503d918423c1543361cc5166d713eaa7029dd7a3d34775af04764bebff99ef413111a5af18c80 + languageName: node + linkType: hard + +"require-from-string@npm:^2.0.2": + version: 2.0.2 + resolution: "require-from-string@npm:2.0.2" + checksum: a03ef6895445f33a4015300c426699bc66b2b044ba7b670aa238610381b56d3f07c686251740d575e22f4c87531ba662d06937508f0f3c0f1ddc04db3130560b + languageName: node + linkType: hard + +"requires-port@npm:^1.0.0": + version: 1.0.0 + resolution: "requires-port@npm:1.0.0" + checksum: eee0e303adffb69be55d1a214e415cf42b7441ae858c76dfc5353148644f6fd6e698926fc4643f510d5c126d12a705e7c8ed7e38061113bdf37547ab356797ff + languageName: node + linkType: hard + +"retry@npm:^0.12.0": + version: 0.12.0 + resolution: "retry@npm:0.12.0" + checksum: 623bd7d2e5119467ba66202d733ec3c2e2e26568074923bc0585b6b99db14f357e79bdedb63cab56cec47491c4a0da7e6021a7465ca6dc4f481d3898fdd3158c + languageName: node + linkType: hard + +"robust-predicates@npm:^3.0.2": + version: 3.0.2 + resolution: "robust-predicates@npm:3.0.2" + checksum: 36854c1321548ceca96d36ad9d6e0a5a512986029ec6929ad6ed3ec1612c22cc8b46cc72d2c5674af42e8074a119d793f6f0ea3a5b51373e3ab926c64b172d7a + languageName: node + linkType: hard + +"rw@npm:1": + version: 1.3.3 + resolution: "rw@npm:1.3.3" + checksum: c20d82421f5a71c86a13f76121b751553a99cd4a70ea27db86f9b23f33db941f3f06019c30f60d50c356d0bd674c8e74764ac146ea55e217c091bde6fba82aa3 + languageName: node + linkType: hard + +"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": + version: 5.1.2 + resolution: "safe-buffer@npm:5.1.2" + checksum: f2f1f7943ca44a594893a852894055cf619c1fbcb611237fc39e461ae751187e7baf4dc391a72125e0ac4fb2d8c5c0b3c71529622e6a58f46b960211e704903c + languageName: node + linkType: hard + +"safer-buffer@npm:>= 2.1.2 < 3.0.0": + version: 2.1.2 + resolution: "safer-buffer@npm:2.1.2" + checksum: cab8f25ae6f1434abee8d80023d7e72b598cf1327164ddab31003c51215526801e40b66c5e65d658a0af1e9d6478cadcb4c745f4bd6751f97d8644786c0978b0 + languageName: node + linkType: hard + +"sanitize-html@npm:~2.12.1": + version: 2.12.1 + resolution: "sanitize-html@npm:2.12.1" + dependencies: + deepmerge: ^4.2.2 + escape-string-regexp: ^4.0.0 + htmlparser2: ^8.0.0 + is-plain-object: ^5.0.0 + parse-srcset: ^1.0.2 + postcss: ^8.3.11 + checksum: fb96ea7170d51b5af2607f5cfd84464c78fc6f47e339407f55783e781c6a0288a8d40bbf97ea6a8758924ba9b2d33dcc4846bb94caacacd90d7f2de10ed8541a + languageName: node + linkType: hard + +"scheduler@npm:^0.23.2": + version: 0.23.2 + resolution: "scheduler@npm:0.23.2" + dependencies: + loose-envify: ^1.1.0 + checksum: 3e82d1f419e240ef6219d794ff29c7ee415fbdc19e038f680a10c067108e06284f1847450a210b29bbaf97b9d8a97ced5f624c31c681248ac84c80d56ad5a2c4 + languageName: node + linkType: hard + +"semver@npm:^7.3.5": + version: 7.7.1 + resolution: "semver@npm:7.7.1" + bin: + semver: bin/semver.js + checksum: 586b825d36874007c9382d9e1ad8f93888d8670040add24a28e06a910aeebd673a2eb9e3bf169c6679d9245e66efb9057e0852e70d9daa6c27372aab1dda7104 + languageName: node + linkType: hard + +"shebang-command@npm:^2.0.0": + version: 2.0.0 + resolution: "shebang-command@npm:2.0.0" + dependencies: + shebang-regex: ^3.0.0 + checksum: 6b52fe87271c12968f6a054e60f6bde5f0f3d2db483a1e5c3e12d657c488a15474121a1d55cd958f6df026a54374ec38a4a963988c213b7570e1d51575cea7fa + languageName: node + linkType: hard + +"shebang-regex@npm:^3.0.0": + version: 3.0.0 + resolution: "shebang-regex@npm:3.0.0" + checksum: 1a2bcae50de99034fcd92ad4212d8e01eedf52c7ec7830eedcf886622804fe36884278f2be8be0ea5fde3fd1c23911643a4e0f726c8685b61871c8908af01222 + languageName: node + linkType: hard + +"signal-exit@npm:^4.0.1": + version: 4.1.0 + resolution: "signal-exit@npm:4.1.0" + checksum: 64c757b498cb8629ffa5f75485340594d2f8189e9b08700e69199069c8e3070fb3e255f7ab873c05dc0b3cec412aea7402e10a5990cb6a050bd33ba062a6c549 + languageName: node + linkType: hard + +"smart-buffer@npm:^4.2.0": + version: 4.2.0 + resolution: "smart-buffer@npm:4.2.0" + checksum: b5167a7142c1da704c0e3af85c402002b597081dd9575031a90b4f229ca5678e9a36e8a374f1814c8156a725d17008ae3bde63b92f9cfd132526379e580bec8b + languageName: node + linkType: hard + +"socks-proxy-agent@npm:^8.0.3": + version: 8.0.5 + resolution: "socks-proxy-agent@npm:8.0.5" + dependencies: + agent-base: ^7.1.2 + debug: ^4.3.4 + socks: ^2.8.3 + checksum: b4fbcdb7ad2d6eec445926e255a1fb95c975db0020543fbac8dfa6c47aecc6b3b619b7fb9c60a3f82c9b2969912a5e7e174a056ae4d98cb5322f3524d6036e1d + languageName: node + linkType: hard + +"socks@npm:^2.8.3": + version: 2.8.4 + resolution: "socks@npm:2.8.4" + dependencies: + ip-address: ^9.0.5 + smart-buffer: ^4.2.0 + checksum: cd1edc924475d5dfde534adf66038df7e62c7343e6b8c0113e52dc9bb6a0a10e25b2f136197f379d695f18e8f0f2b7f6e42977bf720ddbee912a851201c396ad + languageName: node + linkType: hard + +"source-map-js@npm:^1.2.1": + version: 1.2.1 + resolution: "source-map-js@npm:1.2.1" + checksum: 4eb0cd997cdf228bc253bcaff9340afeb706176e64868ecd20efbe6efea931465f43955612346d6b7318789e5265bdc419bc7669c1cebe3db0eb255f57efa76b + languageName: node + linkType: hard + +"sprintf-js@npm:^1.1.3": + version: 1.1.3 + resolution: "sprintf-js@npm:1.1.3" + checksum: a3fdac7b49643875b70864a9d9b469d87a40dfeaf5d34d9d0c5b1cda5fd7d065531fcb43c76357d62254c57184a7b151954156563a4d6a747015cfb41021cad0 + languageName: node + linkType: hard + +"ssri@npm:^12.0.0": + version: 12.0.0 + resolution: "ssri@npm:12.0.0" + dependencies: + minipass: ^7.0.3 + checksum: ef4b6b0ae47b4a69896f5f1c4375f953b9435388c053c36d27998bc3d73e046969ccde61ab659e679142971a0b08e50478a1228f62edb994105b280f17900c98 + languageName: node + linkType: hard + +"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": + version: 4.2.3 + resolution: "string-width@npm:4.2.3" + dependencies: + emoji-regex: ^8.0.0 + is-fullwidth-code-point: ^3.0.0 + strip-ansi: ^6.0.1 + checksum: e52c10dc3fbfcd6c3a15f159f54a90024241d0f149cf8aed2982a2d801d2e64df0bf1dc351cf8e95c3319323f9f220c16e740b06faecd53e2462df1d2b5443fb + languageName: node + linkType: hard + +"string-width@npm:^5.0.1, string-width@npm:^5.1.2": + version: 5.1.2 + resolution: "string-width@npm:5.1.2" + dependencies: + eastasianwidth: ^0.2.0 + emoji-regex: ^9.2.2 + strip-ansi: ^7.0.1 + checksum: 7369deaa29f21dda9a438686154b62c2c5f661f8dda60449088f9f980196f7908fc39fdd1803e3e01541970287cf5deae336798337e9319a7055af89dafa7193 + languageName: node + linkType: hard + +"string_decoder@npm:~1.1.1": + version: 1.1.1 + resolution: "string_decoder@npm:1.1.1" + dependencies: + safe-buffer: ~5.1.0 + checksum: 9ab7e56f9d60a28f2be697419917c50cac19f3e8e6c28ef26ed5f4852289fe0de5d6997d29becf59028556f2c62983790c1d9ba1e2a3cc401768ca12d5183a5b + languageName: node + linkType: hard + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": + version: 6.0.1 + resolution: "strip-ansi@npm:6.0.1" + dependencies: + ansi-regex: ^5.0.1 + checksum: f3cd25890aef3ba6e1a74e20896c21a46f482e93df4a06567cebf2b57edabb15133f1f94e57434e0a958d61186087b1008e89c94875d019910a213181a14fc8c + languageName: node + linkType: hard + +"strip-ansi@npm:^7.0.1": + version: 7.1.0 + resolution: "strip-ansi@npm:7.1.0" + dependencies: + ansi-regex: ^6.0.1 + checksum: 859c73fcf27869c22a4e4d8c6acfe690064659e84bef9458aa6d13719d09ca88dcfd40cbf31fd0be63518ea1a643fe070b4827d353e09533a5b0b9fd4553d64d + languageName: node + linkType: hard + +"style-mod@npm:^4.0.0, style-mod@npm:^4.1.0": + version: 4.1.2 + resolution: "style-mod@npm:4.1.2" + checksum: 7c5c3e82747f9bcf5f288d8d07f50848e4630fe5ff7bfe4d94cc87d6b6a2588227cbf21b4c792ac6406e5852293300a75e710714479a5c59a06af677f0825ef8 + languageName: node + linkType: hard + +"systeminformation@npm:^5.8.6": + version: 5.25.11 + resolution: "systeminformation@npm:5.25.11" + bin: + systeminformation: lib/cli.js + checksum: 4cee19bff31456f6e777fa165eebb16623d9b911b2ce89dd8157a3eb700f356b8c746dd16fe86d9d5855c654d3f947b30c49122819a206eb8ca750d8290c1f18 + conditions: (os=darwin | os=linux | os=win32 | os=freebsd | os=openbsd | os=netbsd | os=sunos | os=android) + languageName: node + linkType: hard + +"tabbable@npm:^5.2.0": + version: 5.3.3 + resolution: "tabbable@npm:5.3.3" + checksum: 1aa56e1bb617cc10616c407f4e756f0607f3e2d30f9803664d70b85db037ca27e75918ed1c71443f3dc902e21dc9f991ce4b52d63a538c9b69b3218d3babcd70 + languageName: node + linkType: hard + +"tar@npm:^7.4.3": + version: 7.4.3 + resolution: "tar@npm:7.4.3" + dependencies: + "@isaacs/fs-minipass": ^4.0.0 + chownr: ^3.0.0 + minipass: ^7.1.2 + minizlib: ^3.0.1 + mkdirp: ^3.0.1 + yallist: ^5.0.0 + checksum: 8485350c0688331c94493031f417df069b778aadb25598abdad51862e007c39d1dd5310702c7be4a6784731a174799d8885d2fde0484269aea205b724d7b2ffa + languageName: node + linkType: hard + +"tinyglobby@npm:^0.2.12": + version: 0.2.13 + resolution: "tinyglobby@npm:0.2.13" + dependencies: + fdir: ^6.4.4 + picomatch: ^4.0.2 + checksum: 3a2e87a2518cb3616057b0aa58be4f17771ae78c6890556516ae1e631f8ce4cfee1ba1dcb62fcc54a64e2bdd6c3104f4f3d021e1a3e3f8fb0875bca380b913e5 + languageName: node + linkType: hard + +"topojson-client@npm:^3.1.0": + version: 3.1.0 + resolution: "topojson-client@npm:3.1.0" + dependencies: + commander: 2 + bin: + topo2geo: bin/topo2geo + topomerge: bin/topomerge + topoquantize: bin/topoquantize + checksum: 8c029a4f18324ace0b8b55dd90edbd40c9e3c6de18bafbb5da37ca20ebf20e26fbd4420891acb3c2c264e214185f7557871f5651a9eee517028663be98d836de + languageName: node + linkType: hard + +"tr46@npm:~0.0.3": + version: 0.0.3 + resolution: "tr46@npm:0.0.3" + checksum: 726321c5eaf41b5002e17ffbd1fb7245999a073e8979085dacd47c4b4e8068ff5777142fc6726d6ca1fd2ff16921b48788b87225cbc57c72636f6efa8efbffe3 + languageName: node + linkType: hard + +"tslib@npm:^1.13.0": + version: 1.14.1 + resolution: "tslib@npm:1.14.1" + checksum: dbe628ef87f66691d5d2959b3e41b9ca0045c3ee3c7c7b906cc1e328b39f199bb1ad9e671c39025bd56122ac57dfbf7385a94843b1cc07c60a4db74795829acd + languageName: node + linkType: hard + +"tslib@npm:~2.8.1": + version: 2.8.1 + resolution: "tslib@npm:2.8.1" + checksum: e4aba30e632b8c8902b47587fd13345e2827fa639e7c3121074d5ee0880723282411a8838f830b55100cbe4517672f84a2472667d355b81e8af165a55dc6203a + languageName: node + linkType: hard + +"typestyle@npm:^2.0.4": + version: 2.4.0 + resolution: "typestyle@npm:2.4.0" + dependencies: + csstype: 3.0.10 + free-style: 3.1.0 + checksum: 8b4f02c24f67b594f98507b15a753dabd4db5eb0af007e1d310527c64030e11e9464b25b5a6bc65fb5eec9a4459a8336050121ecc29063ac87b8b47a6d698893 + languageName: node + linkType: hard + +"unique-filename@npm:^4.0.0": + version: 4.0.0 + resolution: "unique-filename@npm:4.0.0" + dependencies: + unique-slug: ^5.0.0 + checksum: 6a62094fcac286b9ec39edbd1f8f64ff92383baa430af303dfed1ffda5e47a08a6b316408554abfddd9730c78b6106bef4ca4d02c1231a735ddd56ced77573df + languageName: node + linkType: hard + +"unique-slug@npm:^5.0.0": + version: 5.0.0 + resolution: "unique-slug@npm:5.0.0" + dependencies: + imurmurhash: ^0.1.4 + checksum: 222d0322bc7bbf6e45c08967863212398313ef73423f4125e075f893a02405a5ffdbaaf150f7dd1e99f8861348a486dd079186d27c5f2c60e465b7dcbb1d3e5b + languageName: node + linkType: hard + +"universalify@npm:^2.0.0": + version: 2.0.1 + resolution: "universalify@npm:2.0.1" + checksum: ecd8469fe0db28e7de9e5289d32bd1b6ba8f7183db34f3bfc4ca53c49891c2d6aa05f3fb3936a81285a905cc509fb641a0c3fc131ec786167eff41236ae32e60 + languageName: node + linkType: hard + +"url-parse@npm:~1.5.4": + version: 1.5.10 + resolution: "url-parse@npm:1.5.10" + dependencies: + querystringify: ^2.1.1 + requires-port: ^1.0.0 + checksum: fbdba6b1d83336aca2216bbdc38ba658d9cfb8fc7f665eb8b17852de638ff7d1a162c198a8e4ed66001ddbf6c9888d41e4798912c62b4fd777a31657989f7bdf + languageName: node + linkType: hard + +"util-deprecate@npm:~1.0.1": + version: 1.0.2 + resolution: "util-deprecate@npm:1.0.2" + checksum: 474acf1146cb2701fe3b074892217553dfcf9a031280919ba1b8d651a068c9b15d863b7303cb15bd00a862b498e6cf4ad7b4a08fb134edd5a6f7641681cb54a2 + languageName: node + linkType: hard + +"util@npm:^0.10.3": + version: 0.10.4 + resolution: "util@npm:0.10.4" + dependencies: + inherits: 2.0.3 + checksum: 913f9a90d05a60e91f91af01b8bd37e06bca4cc02d7b49e01089f9d5b78be2fffd61fb1a41b517de7238c5fc7337fa939c62d1fb4eb82e014894c7bee6637aaf + languageName: node + linkType: hard + +"validate.io-array@npm:^1.0.3": + version: 1.0.6 + resolution: "validate.io-array@npm:1.0.6" + checksum: 54eca83ebc702e3e46499f9d9e77287a95ae25c4e727cd2fafee29c7333b3a36cca0c5d8f090b9406262786de80750fba85e7e7ef41e20bf8cc67d5570de449b + languageName: node + linkType: hard + +"validate.io-function@npm:^1.0.2": + version: 1.0.2 + resolution: "validate.io-function@npm:1.0.2" + checksum: e4cce2479a20cb7c42e8630c777fb107059c27bc32925f769e3a73ca5fd62b4892d897b3c80227e14d5fcd1c5b7d05544e0579d63e59f14034c0052cda7f7c44 + languageName: node + linkType: hard + +"validate.io-integer-array@npm:^1.0.0": + version: 1.0.0 + resolution: "validate.io-integer-array@npm:1.0.0" + dependencies: + validate.io-array: ^1.0.3 + validate.io-integer: ^1.0.4 + checksum: 5f6d7fab8df7d2bf546a05e830201768464605539c75a2c2417b632b4411a00df84b462f81eac75e1be95303e7e0ac92f244c137424739f4e15cd21c2eb52c7f + languageName: node + linkType: hard + +"validate.io-integer@npm:^1.0.4": + version: 1.0.5 + resolution: "validate.io-integer@npm:1.0.5" + dependencies: + validate.io-number: ^1.0.3 + checksum: 88b3f8bb5a5277a95305d64abbfc437079220ce4f57a148cc6113e7ccec03dd86b10a69d413982602aa90a62b8d516148a78716f550dcd3aff863ac1c2a7a5e6 + languageName: node + linkType: hard + +"validate.io-number@npm:^1.0.3": + version: 1.0.3 + resolution: "validate.io-number@npm:1.0.3" + checksum: 42418aeb6c969efa745475154fe576809b02eccd0961aad0421b090d6e7a12d23a3e28b0d5dddd2c6347c1a6bdccb82bba5048c716131cd20207244d50e07282 + languageName: node + linkType: hard + +"vega-canvas@npm:^1.2.7": + version: 1.2.7 + resolution: "vega-canvas@npm:1.2.7" + checksum: 6ff92fcdf0c359f2f662909c859a7f4cb4a502436136ab2f4c02373c47a621996ec0eea23e2108f11d62a618be301de86cd8528b5058c2e207a53ddd7ff58d1b + languageName: node + linkType: hard + +"vega-crossfilter@npm:~4.1.3": + version: 4.1.3 + resolution: "vega-crossfilter@npm:4.1.3" + dependencies: + d3-array: ^3.2.2 + vega-dataflow: ^5.7.7 + vega-util: ^1.17.3 + checksum: a0117bf07c6d94192333f16b0994c90748ad88db675702a79c1073b0d94100619ab3c75898bd45430fee6b6d46028b4c3b205819062de4fc72e93f5a9fc7bb0d + languageName: node + linkType: hard + +"vega-dataflow@npm:^5.7.7, vega-dataflow@npm:~5.7.7": + version: 5.7.7 + resolution: "vega-dataflow@npm:5.7.7" + dependencies: + vega-format: ^1.1.3 + vega-loader: ^4.5.3 + vega-util: ^1.17.3 + checksum: 43c1c039fea007dbca1a7c942821ac734a3068b3ef848f87b3b51265eb2dbd63796f58295313dda9ee8a6d308d9dfb7083530f69a5ffb0f756ce5345544cc60e + languageName: node + linkType: hard + +"vega-encode@npm:~4.10.2": + version: 4.10.2 + resolution: "vega-encode@npm:4.10.2" + dependencies: + d3-array: ^3.2.2 + d3-interpolate: ^3.0.1 + vega-dataflow: ^5.7.7 + vega-scale: ^7.4.2 + vega-util: ^1.17.3 + checksum: d8aa4250debf405ed6c9ca641aaa2a2d6a7ba7c3b7f7d2a319c5a1719fc9ff3b0303563120da2572fe8dd6f2db89b2f1eaeb254ec180d8ca8b16b8dbf8826124 + languageName: node + linkType: hard + +"vega-event-selector@npm:^3.0.1, vega-event-selector@npm:~3.0.1": + version: 3.0.1 + resolution: "vega-event-selector@npm:3.0.1" + checksum: 66d09b5800a19a9b0c75f28811b140a1a2e70e84be6d6f87c568cdbce6e17c8e195f130f4e3de5d6dc737142d1f46f4fe7645177e154582cc8ba27c6845b54e8 + languageName: node + linkType: hard + +"vega-expression@npm:^5.2.0, vega-expression@npm:~5.2.0": + version: 5.2.0 + resolution: "vega-expression@npm:5.2.0" + dependencies: + "@types/estree": ^1.0.0 + vega-util: ^1.17.3 + checksum: 38df3b25ea994b28ec59fba869b9cb1e87518cedd3525886dc7aef5205372bac323635cd7be9907e4d71281e129689f475d3a688ea1ed015f4607088a27ca72a + languageName: node + linkType: hard + +"vega-expression@npm:~5.1.1": + version: 5.1.2 + resolution: "vega-expression@npm:5.1.2" + dependencies: + "@types/estree": ^1.0.0 + vega-util: ^1.17.3 + checksum: bf1b05edc9b290e213b33ad4ab2b581bd752983fb5b126cb8cb9b653c54e12b55b346bb2f85d8d8bccf2113a1d9d4497d99ced837061b6516c41d97624fac959 + languageName: node + linkType: hard + +"vega-force@npm:~4.2.2": + version: 4.2.2 + resolution: "vega-force@npm:4.2.2" + dependencies: + d3-force: ^3.0.0 + vega-dataflow: ^5.7.7 + vega-util: ^1.17.3 + checksum: 9a632423cf8e1bd36b953ad99de7fde1a06fc1f1fccdde5692a90e7c1c6df7c4baa9ee950eca5c9c028db3b9ea23efef73af337d1129caa6343f6f45a484c5fe + languageName: node + linkType: hard + +"vega-format@npm:^1.1.3, vega-format@npm:~1.1.3": + version: 1.1.3 + resolution: "vega-format@npm:1.1.3" + dependencies: + d3-array: ^3.2.2 + d3-format: ^3.1.0 + d3-time-format: ^4.1.0 + vega-time: ^2.1.3 + vega-util: ^1.17.3 + checksum: ed46385be98ed837bc23f2578e6e81bfe30be18de0c2bacea8d3d02811d62ca91631f875ffae385be201b669e55f4e1d48cbf926a5377da02ff73f12f8e4f9bf + languageName: node + linkType: hard + +"vega-functions@npm:^5.18.0, vega-functions@npm:~5.18.0": + version: 5.18.0 + resolution: "vega-functions@npm:5.18.0" + dependencies: + d3-array: ^3.2.2 + d3-color: ^3.1.0 + d3-geo: ^3.1.0 + vega-dataflow: ^5.7.7 + vega-expression: ^5.2.0 + vega-scale: ^7.4.2 + vega-scenegraph: ^4.13.1 + vega-selections: ^5.6.0 + vega-statistics: ^1.9.0 + vega-time: ^2.1.3 + vega-util: ^1.17.3 + checksum: 3255bc908079d7f901c66e96dd65aa2a825a7be7e74b74d1ed6a07ba52e1e2419a9281c730be9251f2272803aaeb9a11b21ad9994fc1435f6e1a5aa9043d9e23 + languageName: node + linkType: hard + +"vega-geo@npm:~4.4.3": + version: 4.4.3 + resolution: "vega-geo@npm:4.4.3" + dependencies: + d3-array: ^3.2.2 + d3-color: ^3.1.0 + d3-geo: ^3.1.0 + vega-canvas: ^1.2.7 + vega-dataflow: ^5.7.7 + vega-projection: ^1.6.2 + vega-statistics: ^1.9.0 + vega-util: ^1.17.3 + checksum: d4576ff22301d8c0dbac83c9a008c8bc01b8097765f0c79100b864caf907032a0b2280855a8cc955da795ccf9d9b6cacf1734fec7c8cc417832487e921e8cdd0 + languageName: node + linkType: hard + +"vega-hierarchy@npm:~4.1.3": + version: 4.1.3 + resolution: "vega-hierarchy@npm:4.1.3" + dependencies: + d3-hierarchy: ^3.1.2 + vega-dataflow: ^5.7.7 + vega-util: ^1.17.3 + checksum: f51c417a76c4d404cbcd79c43871316db49e6c8862cf11ea62fa053219735152863f7cc0e4ad1fb62949a06adc69293ca85c511f291ca1d96ded7b192532d829 + languageName: node + linkType: hard + +"vega-label@npm:~1.3.1": + version: 1.3.1 + resolution: "vega-label@npm:1.3.1" + dependencies: + vega-canvas: ^1.2.7 + vega-dataflow: ^5.7.7 + vega-scenegraph: ^4.13.1 + vega-util: ^1.17.3 + checksum: 2a8ea6a59d76f668eece257bc9c7649652882c6d1d0fabd3ee7fbddc7948be2d7c608ab9f211e68574e89f4a8cb34cce127cba08dfc0ce228c3c47b558943f0b + languageName: node + linkType: hard + +"vega-lite@npm:^5.6.1": + version: 5.23.0 + resolution: "vega-lite@npm:5.23.0" + dependencies: + json-stringify-pretty-compact: ~4.0.0 + tslib: ~2.8.1 + vega-event-selector: ~3.0.1 + vega-expression: ~5.1.1 + vega-util: ~1.17.2 + yargs: ~17.7.2 + peerDependencies: + vega: ^5.24.0 + bin: + vl2pdf: bin/vl2pdf + vl2png: bin/vl2png + vl2svg: bin/vl2svg + vl2vg: bin/vl2vg + checksum: 6a52c4f62b4089543af38378db149cd5ee1059d7a4275a0a33ba8a0e00fd5c7b7695abe164348636fdf59529255abfc1253672416f0154a62db900daa2dc31a0 + languageName: node + linkType: hard + +"vega-loader@npm:^4.5.3, vega-loader@npm:~4.5.3": + version: 4.5.3 + resolution: "vega-loader@npm:4.5.3" + dependencies: + d3-dsv: ^3.0.1 + node-fetch: ^2.6.7 + topojson-client: ^3.1.0 + vega-format: ^1.1.3 + vega-util: ^1.17.3 + checksum: f3b87f12725de843ecd6a44f29800d5aae9966c1b07d632a70fef87cae93f433bc5e47ba25f45f99725f988cb424016453d1b0452ca695401b7b40c47b47b411 + languageName: node + linkType: hard + +"vega-parser@npm:~6.6.0": + version: 6.6.0 + resolution: "vega-parser@npm:6.6.0" + dependencies: + vega-dataflow: ^5.7.7 + vega-event-selector: ^3.0.1 + vega-functions: ^5.18.0 + vega-scale: ^7.4.2 + vega-util: ^1.17.3 + checksum: 3f810bddf85b3b3e125e85a774324a0d9a5f7487a9da1936c3137f676df32665fa192d2124d04d5df9de43f2ef8015a4b7f56c9fac0319dc1e9ce20c547ca4a6 + languageName: node + linkType: hard + +"vega-projection@npm:^1.6.2, vega-projection@npm:~1.6.2": + version: 1.6.2 + resolution: "vega-projection@npm:1.6.2" + dependencies: + d3-geo: ^3.1.0 + d3-geo-projection: ^4.0.0 + vega-scale: ^7.4.2 + checksum: 55deb14c22b4d39ec3d1248dc1718d2ae9addad8d11937617158a8c979fcfdaacf274ee55cebd111a72d6489af25c8351a5e7dbcc19bddb3221bf28ae5dd140d + languageName: node + linkType: hard + +"vega-regression@npm:~1.3.1": + version: 1.3.1 + resolution: "vega-regression@npm:1.3.1" + dependencies: + d3-array: ^3.2.2 + vega-dataflow: ^5.7.7 + vega-statistics: ^1.9.0 + vega-util: ^1.17.3 + checksum: 6bf8dd47f64ec37c8c7d8820b71b55c6b0833a53df1acad6ce5d831d9119d0a576dda464523d1d6941f53971826062355259ba9bf483101928344f1804ac64cb + languageName: node + linkType: hard + +"vega-runtime@npm:^6.2.1, vega-runtime@npm:~6.2.1": + version: 6.2.1 + resolution: "vega-runtime@npm:6.2.1" + dependencies: + vega-dataflow: ^5.7.7 + vega-util: ^1.17.3 + checksum: 5481f943c18c4277d3f0aabd3e06a2d37b57fde52ef2d2e93ade759184f530bbca4ed38e3708342338dac7d56ce94eb3c3cb30ef2e3d10a7b8ab796dee40e8e4 + languageName: node + linkType: hard + +"vega-scale@npm:^7.4.2, vega-scale@npm:~7.4.2": + version: 7.4.2 + resolution: "vega-scale@npm:7.4.2" + dependencies: + d3-array: ^3.2.2 + d3-interpolate: ^3.0.1 + d3-scale: ^4.0.2 + d3-scale-chromatic: ^3.1.0 + vega-time: ^2.1.3 + vega-util: ^1.17.3 + checksum: 3168ad4e9e80075f8d521947070225906085bdfeafe774c31f7549b3b80d31d5cb3f94e9cd8d408098bfe6431347fa95ae7654b006d7893f33057a789cc75156 + languageName: node + linkType: hard + +"vega-scenegraph@npm:^4.13.1, vega-scenegraph@npm:~4.13.1": + version: 4.13.1 + resolution: "vega-scenegraph@npm:4.13.1" + dependencies: + d3-path: ^3.1.0 + d3-shape: ^3.2.0 + vega-canvas: ^1.2.7 + vega-loader: ^4.5.3 + vega-scale: ^7.4.2 + vega-util: ^1.17.3 + checksum: 66ef0e8fd50f3794aece2f951c2c092518e52448b4ecd334cca944e1161b3c1b9680b8743ca0358c1b3e92e1b81aaa6ce5042dce5c5a20e3bcdd22613378b7d0 + languageName: node + linkType: hard + +"vega-selections@npm:^5.6.0": + version: 5.6.0 + resolution: "vega-selections@npm:5.6.0" + dependencies: + d3-array: 3.2.4 + vega-expression: ^5.2.0 + vega-util: ^1.17.3 + checksum: 6533b003fbc4cd523ae5c7650e5e905007fe37ac3db01ad6f652b62b3ab6a846441ddd38018a7e13cf275e176d92c193e2100c02aac8f03788f51326aeafd5fd + languageName: node + linkType: hard + +"vega-statistics@npm:^1.7.9, vega-statistics@npm:^1.9.0, vega-statistics@npm:~1.9.0": + version: 1.9.0 + resolution: "vega-statistics@npm:1.9.0" + dependencies: + d3-array: ^3.2.2 + checksum: bbf2ea088c5a6a662c6aed1bf57996c06a82a98228730ada8a97e57824a6ed391999ea974f16dcde6e73bf88799976d91aff748842848d38ab45dbb9fafba3f9 + languageName: node + linkType: hard + +"vega-time@npm:^2.1.3, vega-time@npm:~2.1.3": + version: 2.1.3 + resolution: "vega-time@npm:2.1.3" + dependencies: + d3-array: ^3.2.2 + d3-time: ^3.1.0 + vega-util: ^1.17.3 + checksum: c2a72ac6593ea1fabab95b72ce33b89a6ce2161330bcbaaa6508d61bbcd7edc940a9e76ae6d9a979be9d7c81eef4b26cd3592209bac201eca7356dfea7cc38ac + languageName: node + linkType: hard + +"vega-transforms@npm:~4.12.1": + version: 4.12.1 + resolution: "vega-transforms@npm:4.12.1" + dependencies: + d3-array: ^3.2.2 + vega-dataflow: ^5.7.7 + vega-statistics: ^1.9.0 + vega-time: ^2.1.3 + vega-util: ^1.17.3 + checksum: 60489c52f7a50d52fb0f226c5e958298bbb8e34fd0f0faec17edd1c0de193436b22b308e4e71a12be1015f1fe3adc90f6474905c8ae0083be97e744b8f9d085e + languageName: node + linkType: hard + +"vega-typings@npm:~1.5.0": + version: 1.5.0 + resolution: "vega-typings@npm:1.5.0" + dependencies: + "@types/geojson": 7946.0.4 + vega-event-selector: ^3.0.1 + vega-expression: ^5.2.0 + vega-util: ^1.17.3 + checksum: 847999836a15bfaebfd60208114eca6ca9262d0d67abfbc51d05932cd879017dcec5190fb1131a00e1060a6eb8672d975889cfca782ef2e99dc7a23c4cc49acf + languageName: node + linkType: hard + +"vega-util@npm:^1.17.3, vega-util@npm:~1.17.2": + version: 1.17.3 + resolution: "vega-util@npm:1.17.3" + checksum: d8bb21e2cb2ffa005bc3d9859d13aca8a0f13d6a143b8e12598c307de011ce1bc947402769e735ceb62d3b4e648214bdc00664aea1d819ad56563090e96d44b5 + languageName: node + linkType: hard + +"vega-view-transforms@npm:~4.6.1": + version: 4.6.1 + resolution: "vega-view-transforms@npm:4.6.1" + dependencies: + vega-dataflow: ^5.7.7 + vega-scenegraph: ^4.13.1 + vega-util: ^1.17.3 + checksum: 36c06f3feb018d9f86546cd329392dce19699308f6fde3c931805dffa805e3dbf2d55b1f76831d7a754067645281d3ada51910e190b9c08e7111932f14cc2031 + languageName: node + linkType: hard + +"vega-view@npm:~5.16.0": + version: 5.16.0 + resolution: "vega-view@npm:5.16.0" + dependencies: + d3-array: ^3.2.2 + d3-timer: ^3.0.1 + vega-dataflow: ^5.7.7 + vega-format: ^1.1.3 + vega-functions: ^5.18.0 + vega-runtime: ^6.2.1 + vega-scenegraph: ^4.13.1 + vega-util: ^1.17.3 + checksum: e17d2a476969d12e72520bfd32d3fb83cf011655e271fcd8d3640f3903b21c26798d43206961e39f87b9335311fd6324d760fad38c4617fffea65f9774dd3820 + languageName: node + linkType: hard + +"vega-voronoi@npm:~4.2.4": + version: 4.2.4 + resolution: "vega-voronoi@npm:4.2.4" + dependencies: + d3-delaunay: ^6.0.2 + vega-dataflow: ^5.7.7 + vega-util: ^1.17.3 + checksum: 66a6664d74973a28ecbf0eb1aba4c6c290eb8ccda670b61e2d3d10fefed28ff5de71f0800850f01b7c18032031f5501e833ce3edcc2278c5449401809d185be6 + languageName: node + linkType: hard + +"vega-wordcloud@npm:~4.1.6": + version: 4.1.6 + resolution: "vega-wordcloud@npm:4.1.6" + dependencies: + vega-canvas: ^1.2.7 + vega-dataflow: ^5.7.7 + vega-scale: ^7.4.2 + vega-statistics: ^1.9.0 + vega-util: ^1.17.3 + checksum: 5f0cd55d6d4fcec1345be496eec57b38cd78b8294d4f88ea0cacc6241fc64543b50f4a3165640f93e73cf0a3d8866218673ce3720a467741c778a413899207e8 + languageName: node + linkType: hard + +"vega@npm:^5.20.0": + version: 5.33.0 + resolution: "vega@npm:5.33.0" + dependencies: + vega-crossfilter: ~4.1.3 + vega-dataflow: ~5.7.7 + vega-encode: ~4.10.2 + vega-event-selector: ~3.0.1 + vega-expression: ~5.2.0 + vega-force: ~4.2.2 + vega-format: ~1.1.3 + vega-functions: ~5.18.0 + vega-geo: ~4.4.3 + vega-hierarchy: ~4.1.3 + vega-label: ~1.3.1 + vega-loader: ~4.5.3 + vega-parser: ~6.6.0 + vega-projection: ~1.6.2 + vega-regression: ~1.3.1 + vega-runtime: ~6.2.1 + vega-scale: ~7.4.2 + vega-scenegraph: ~4.13.1 + vega-statistics: ~1.9.0 + vega-time: ~2.1.3 + vega-transforms: ~4.12.1 + vega-typings: ~1.5.0 + vega-util: ~1.17.2 + vega-view: ~5.16.0 + vega-view-transforms: ~4.6.1 + vega-voronoi: ~4.2.4 + vega-wordcloud: ~4.1.6 + checksum: c8adb982b8852d0f5b55d8929302635d51d8155c2bbec477d2ee5635e6705a59f3a4efc472c9e74d6d5ab18c8ff3d3a1304219706a32129ac147e2cca13a4d91 + languageName: node + linkType: hard + +"vscode-jsonrpc@npm:8.2.0": + version: 8.2.0 + resolution: "vscode-jsonrpc@npm:8.2.0" + checksum: f302a01e59272adc1ae6494581fa31c15499f9278df76366e3b97b2236c7c53ebfc71efbace9041cfd2caa7f91675b9e56f2407871a1b3c7f760a2e2ee61484a + languageName: node + linkType: hard + +"vscode-jsonrpc@npm:^6.0.0": + version: 6.0.0 + resolution: "vscode-jsonrpc@npm:6.0.0" + checksum: 3a67a56f287e8c449f2d9752eedf91e704dc7b9a326f47fb56ac07667631deb45ca52192e9bccb2ab108764e48409d70fa64b930d46fc3822f75270b111c5f53 + languageName: node + linkType: hard + +"vscode-jsonrpc@npm:^8.0.2": + version: 8.2.1 + resolution: "vscode-jsonrpc@npm:8.2.1" + checksum: 2af2c333d73f6587896a7077978b8d4b430e55c674d5dbb90597a84a6647057c1655a3bff398a9b08f1f8ba57dbd2deabf05164315829c297b0debba3b8bc19e + languageName: node + linkType: hard + +"vscode-languageserver-protocol@npm:^3.17.0": + version: 3.17.5 + resolution: "vscode-languageserver-protocol@npm:3.17.5" + dependencies: + vscode-jsonrpc: 8.2.0 + vscode-languageserver-types: 3.17.5 + checksum: dfb42d276df5dfea728267885b99872ecff62f6c20448b8539fae71bb196b420f5351c5aca7c1047bf8fb1f89fa94a961dce2bc5bf7e726198f4be0bb86a1e71 + languageName: node + linkType: hard + +"vscode-languageserver-types@npm:3.17.5": + version: 3.17.5 + resolution: "vscode-languageserver-types@npm:3.17.5" + checksum: 79b420e7576398d396579ca3a461c9ed70e78db4403cd28bbdf4d3ed2b66a2b4114031172e51fad49f0baa60a2180132d7cb2ea35aa3157d7af3c325528210ac + languageName: node + linkType: hard + +"vscode-ws-jsonrpc@npm:~1.0.2": + version: 1.0.2 + resolution: "vscode-ws-jsonrpc@npm:1.0.2" + dependencies: + vscode-jsonrpc: ^8.0.2 + checksum: eb2fdb5c96f124326505f06564dfc6584318b748fd6e39b4c0ba16a0d383d13ba0e9433596abdb841428dfc2a5501994c3206723d1cb38c6af5fcac1faf4be26 + languageName: node + linkType: hard + +"w3c-keyname@npm:^2.2.4": + version: 2.2.8 + resolution: "w3c-keyname@npm:2.2.8" + checksum: 95bafa4c04fa2f685a86ca1000069c1ec43ace1f8776c10f226a73296caeddd83f893db885c2c220ebeb6c52d424e3b54d7c0c1e963bbf204038ff1a944fbb07 + languageName: node + linkType: hard + +"webidl-conversions@npm:^3.0.0": + version: 3.0.1 + resolution: "webidl-conversions@npm:3.0.1" + checksum: c92a0a6ab95314bde9c32e1d0a6dfac83b578f8fa5f21e675bc2706ed6981bc26b7eb7e6a1fab158e5ce4adf9caa4a0aee49a52505d4d13c7be545f15021b17c + languageName: node + linkType: hard + +"whatwg-url@npm:^5.0.0": + version: 5.0.0 + resolution: "whatwg-url@npm:5.0.0" + dependencies: + tr46: ~0.0.3 + webidl-conversions: ^3.0.0 + checksum: b8daed4ad3356cc4899048a15b2c143a9aed0dfae1f611ebd55073310c7b910f522ad75d727346ad64203d7e6c79ef25eafd465f4d12775ca44b90fa82ed9e2c + languageName: node + linkType: hard + +"which@npm:^2.0.1": + version: 2.0.2 + resolution: "which@npm:2.0.2" + dependencies: + isexe: ^2.0.0 + bin: + node-which: ./bin/node-which + checksum: 1a5c563d3c1b52d5f893c8b61afe11abc3bab4afac492e8da5bde69d550de701cf9806235f20a47b5c8fa8a1d6a9135841de2596535e998027a54589000e66d1 + languageName: node + linkType: hard + +"which@npm:^5.0.0": + version: 5.0.0 + resolution: "which@npm:5.0.0" + dependencies: + isexe: ^3.1.1 + bin: + node-which: bin/which.js + checksum: 6ec99e89ba32c7e748b8a3144e64bfc74aa63e2b2eacbb61a0060ad0b961eb1a632b08fb1de067ed59b002cec3e21de18299216ebf2325ef0f78e0f121e14e90 + languageName: node + linkType: hard + +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0, wrap-ansi@npm:^7.0.0": + version: 7.0.0 + resolution: "wrap-ansi@npm:7.0.0" + dependencies: + ansi-styles: ^4.0.0 + string-width: ^4.1.0 + strip-ansi: ^6.0.0 + checksum: a790b846fd4505de962ba728a21aaeda189b8ee1c7568ca5e817d85930e06ef8d1689d49dbf0e881e8ef84436af3a88bc49115c2e2788d841ff1b8b5b51a608b + languageName: node + linkType: hard + +"wrap-ansi@npm:^8.1.0": + version: 8.1.0 + resolution: "wrap-ansi@npm:8.1.0" + dependencies: + ansi-styles: ^6.1.0 + string-width: ^5.0.1 + strip-ansi: ^7.0.1 + checksum: 371733296dc2d616900ce15a0049dca0ef67597d6394c57347ba334393599e800bab03c41d4d45221b6bc967b8c453ec3ae4749eff3894202d16800fdfe0e238 + languageName: node + linkType: hard + +"ws@npm:^8.11.0": + version: 8.18.1 + resolution: "ws@npm:8.18.1" + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ">=5.0.2" + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + checksum: 4658357185d891bc45cc2d42a84f9e192d047e8476fb5cba25b604f7d75ca87ca0dd54cd0b2cc49aeee57c79045a741cb7d0b14501953ac60c790cd105c42f23 + languageName: node + linkType: hard + +"y-protocols@npm:^1.0.5": + version: 1.0.6 + resolution: "y-protocols@npm:1.0.6" + dependencies: + lib0: ^0.2.85 + peerDependencies: + yjs: ^13.0.0 + checksum: 4b57c8811befcf2e45c3d47830005f8a33e626c734f78a42fe8a4fa3caad2233ba85a7c8bceefbd52ffc40130d3f3faee664fd0d1c324ff1fa8817a056ccdc1c + languageName: node + linkType: hard + +"y18n@npm:^5.0.5": + version: 5.0.8 + resolution: "y18n@npm:5.0.8" + checksum: 54f0fb95621ee60898a38c572c515659e51cc9d9f787fb109cef6fde4befbe1c4602dc999d30110feee37456ad0f1660fa2edcfde6a9a740f86a290999550d30 + languageName: node + linkType: hard + +"yallist@npm:^4.0.0": + version: 4.0.0 + resolution: "yallist@npm:4.0.0" + checksum: 343617202af32df2a15a3be36a5a8c0c8545208f3d3dfbc6bb7c3e3b7e8c6f8e7485432e4f3b88da3031a6e20afa7c711eded32ddfb122896ac5d914e75848d5 + languageName: node + linkType: hard + +"yallist@npm:^5.0.0": + version: 5.0.0 + resolution: "yallist@npm:5.0.0" + checksum: eba51182400b9f35b017daa7f419f434424410691bbc5de4f4240cc830fdef906b504424992700dc047f16b4d99100a6f8b8b11175c193f38008e9c96322b6a5 + languageName: node + linkType: hard + +"yargs-parser@npm:^21.1.1": + version: 21.1.1 + resolution: "yargs-parser@npm:21.1.1" + checksum: ed2d96a616a9e3e1cc7d204c62ecc61f7aaab633dcbfab2c6df50f7f87b393993fe6640d017759fe112d0cb1e0119f2b4150a87305cc873fd90831c6a58ccf1c + languageName: node + linkType: hard + +"yargs@npm:~17.7.2": + version: 17.7.2 + resolution: "yargs@npm:17.7.2" + dependencies: + cliui: ^8.0.1 + escalade: ^3.1.1 + get-caller-file: ^2.0.5 + require-directory: ^2.1.1 + string-width: ^4.2.3 + y18n: ^5.0.5 + yargs-parser: ^21.1.1 + checksum: 73b572e863aa4a8cbef323dd911d79d193b772defd5a51aab0aca2d446655216f5002c42c5306033968193bdbf892a7a4c110b0d77954a7fdf563e653967b56a + languageName: node + linkType: hard + +"yjs@npm:^13.5.40": + version: 13.6.26 + resolution: "yjs@npm:13.6.26" + dependencies: + lib0: ^0.2.99 + checksum: 86def6cce6410aa929d1ba62dc712d8f73261f16b4526589b5a2354c206d936bb922e28fff93391f49c23fef251d911d34475e52c7998a77be0b8536a36825c7 + languageName: node + linkType: hard From dbd0a8d48e61100be09a98e96bfab6e39590f89f Mon Sep 17 00:00:00 2001 From: "Afshin T. Darian" Date: Fri, 2 May 2025 15:30:45 +0100 Subject: [PATCH 5/6] Fix playwright test --- tsconfig.json | 10 ++-------- .../tests/jupyterlab_web_bluetooth_manager.spec.ts | 2 +- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/tsconfig.json b/tsconfig.json index b241453..a2483d3 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -17,14 +17,8 @@ "rootDir": "src", "strictNullChecks": true, "target": "ES2018", - "strict": true + "strict": false }, "include": ["src/**/*"], - "references": [ - { - "@jupyterlab/bluetooth": ["./src/bluetooth"], - "@jupyterlab/bluetooth-extension": ["./src/bluetooth-extension"], - "movehub-extension": ["./src/movehub-extension"] - } - ] + "rootDirs": ["src", "ui-tests"] } diff --git a/ui-tests/tests/jupyterlab_web_bluetooth_manager.spec.ts b/ui-tests/tests/jupyterlab_web_bluetooth_manager.spec.ts index 4d64c12..661891c 100644 --- a/ui-tests/tests/jupyterlab_web_bluetooth_manager.spec.ts +++ b/ui-tests/tests/jupyterlab_web_bluetooth_manager.spec.ts @@ -17,7 +17,7 @@ test('should emit an activation console message', async ({ page }) => { expect( logs.filter( - s => s === 'JupyterLab extension bluetooh-manager is activated!' + s => s === 'JupyterLab bluetooth-manager-plugin is activated!' ) ).toHaveLength(1); }); From 174adb7448b67e1a9e00c0dd51cf4c864a05d67a Mon Sep 17 00:00:00 2001 From: "Afshin T. Darian" Date: Fri, 2 May 2025 15:33:35 +0100 Subject: [PATCH 6/6] lint --- ui-tests/tests/jupyterlab_web_bluetooth_manager.spec.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/ui-tests/tests/jupyterlab_web_bluetooth_manager.spec.ts b/ui-tests/tests/jupyterlab_web_bluetooth_manager.spec.ts index 661891c..7d5dfb2 100644 --- a/ui-tests/tests/jupyterlab_web_bluetooth_manager.spec.ts +++ b/ui-tests/tests/jupyterlab_web_bluetooth_manager.spec.ts @@ -16,8 +16,6 @@ test('should emit an activation console message', async ({ page }) => { await page.goto(); expect( - logs.filter( - s => s === 'JupyterLab bluetooth-manager-plugin is activated!' - ) + logs.filter(s => s === 'JupyterLab bluetooth-manager-plugin is activated!') ).toHaveLength(1); });