From a2ae73537f996970e20b13a4694d0825d6850f1d Mon Sep 17 00:00:00 2001 From: Paul Elliott Date: Wed, 21 Feb 2024 15:01:05 -0500 Subject: [PATCH 1/8] feat: add image viewer to typescript demo template --- .../demo/input-parameters-demo-html.js | 2 +- .../demo/input-parameters-demo-typescript.js | 2 +- .../demo/output-demo-run-typescript.js | 4 +- .../resources/demo-app/utilities.js | 39 +++++++++++++++++++ .../resources/template.package.json | 6 ++- .../typescript/resources/vite.config.js | 2 +- .../bindgen/typescript/typescript-bindings.js | 4 ++ packages/downsample/typescript/vite.config.js | 2 +- 8 files changed, 54 insertions(+), 7 deletions(-) diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-html.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-html.js index 6334bb3c7..03a9a7155 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-html.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-html.js @@ -55,8 +55,8 @@ function inputParametersDemoHtml (functionName, prefix, indent, parameter, requi case 'INPUT_JSON': case 'INPUT_IMAGE': case 'INPUT_MESH': - result += `${prefix}${indent}\n` result += `${prefix}${indent}\n` + result += `${prefix}${indent}\n` result += '

\n' break default: diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-typescript.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-typescript.js index bb9ab031d..18176c351 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-typescript.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-typescript.js @@ -117,7 +117,7 @@ function inputParametersDemoTypeScript(functionName, indent, parameter, required result += `${indent}${indent}webWorker.terminate()\n` result += `${indent}${indent}model.${modelProperty}.set("${parameterName}", image)\n` result += `${indent}${indent}const details = document.getElementById("${functionName}-${parameter.name}-details")\n` - result += `${indent}${indent}details.innerHTML = \`
$\{globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
\`\n` + result += `${indent}${indent}loadImage(image, details)\n` } } else if (parameterType === 'INPUT_MESH') { if (parameter.itemsExpectedMax > 1) { diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-run-typescript.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-run-typescript.js index fd38837b5..2aa08863c 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-run-typescript.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-run-typescript.js @@ -50,7 +50,9 @@ function outputDemoRunTypeScript(functionName, prefix, indent, parameter) { result += `${indent}${indent}const ${parameterName}Details = document.getElementById("${functionName}-${parameter.name}-details")\n` result += `${indent}${indent}${parameterName}Details.innerHTML = \`
$\{globalThis.escapeHtml(JSON.stringify(${parameterName}, globalThis.interfaceTypeJsonReplacer, 2))}
\`\n` result += `${indent}${indent}${parameterName}Details.disabled = false\n` - result += `${prefix}${indent}const ${parameterName}Output = document.getElementById('${functionName}-${parameter.name}-details')\n` + if(parameter.type === 'OUTPUT_IMAGE' && parameter.itemsExpectedMax === 1) { + result += `${indent}${indent}loadImage(${parameterName}, ${parameterName}Details)\n` + } break default: console.error(`Unexpected interface type: ${parameter.type}`) diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/utilities.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/utilities.js index 8e598a101..0f7749368 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/utilities.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/utilities.js @@ -1,4 +1,5 @@ import * as itk from 'itk-wasm' +import { ItkWasmMultiscaleSpatialImage } from "@itk-viewer/io/ItkWasmMultiscaleSpatialImage.js"; globalThis.itk = itk function downloadFile(content, filename) { @@ -91,3 +92,41 @@ function applyInputParsedJson(inputElement, modelMap, parameterName) { } } globalThis.applyInputParsedJson = applyInputParsedJson + + +function showImage(image, details) { + details.innerHTML = '' + + const viewer = document.createElement('itk-viewer-2d') + viewer.style.width = '100%' + viewer.style.height = '26rem' + const multiImage = new ItkWasmMultiscaleSpatialImage(image); + // need to wait a tick due to bad setup flow in @itk-viewer/element + setTimeout(() => { + const viewerActor = viewer.getActor(); + viewerActor.send({ type: "setImage", image: multiImage }); + }, 0) + + const imageInfo = document.createElement('pre') + imageInfo.innerHTML = escapeHtml(JSON.stringify(image, interfaceTypeJsonReplacer, 2)) + + details.appendChild(viewer) + details.appendChild(imageInfo) +} + +function loadImage(image, details) { + if(!details.summary.startsWith('️🔎')) { + details.summary = '️🔎 ' + details.summary + } + if(details.open) { + showImage(image, details) + } + if(details.showImageListener) { + details.removeEventListener('sl-show', details.showImageListener) + } + details.showImageListener = () => { + showImage(image, details) + } + details.addEventListener('sl-show', details.showImageListener) +} +globalThis.loadImage = loadImage \ No newline at end of file diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/template.package.json b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/template.package.json index fe7a8ac95..14a05b9bf 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/template.package.json +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/template.package.json @@ -37,8 +37,10 @@ "itk-wasm": "1.0.0-b.172" }, "devDependencies": { - "@itk-wasm/image-io": "^1.1.1", - "@itk-wasm/mesh-io": "^1.1.1", + "@itk-viewer/element": "^0.2.12", + "@itk-viewer/io": "^0.1.8", + "@itk-wasm/image-io": "^1.1.0", + "@itk-wasm/mesh-io": "^1.1.0", "@shoelace-style/shoelace": "^2.12.0", "@types/node": "^20.2.5", "esbuild": "^0.19.8", diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/vite.config.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/vite.config.js index 143dcb805..eb915742e 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/vite.config.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/vite.config.js @@ -15,7 +15,7 @@ export default defineConfig({ format: 'es' }, optimizeDeps: { - exclude: ['itk-wasm', '@itk-wasm/image-io', '@itk-wasm/mesh-io', '@thewtex/zstddec'] + exclude: ['itk-wasm', '@itk-wasm/image-io', '@itk-wasm/mesh-io', '@thewtex/zstddec', '@itk-viewer/io'] }, plugins: [ // put lazy loaded JavaScript and Wasm bundles in dist directory diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/typescript-bindings.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/typescript-bindings.js index ee64db604..f442d45be 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/typescript-bindings.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/typescript-bindings.js @@ -314,6 +314,10 @@ export * from './index-node-only.js' // dark mode document.documentElement.classList.add('sl-theme-dark'); } + + import '@shoelace-style/shoelace/dist/components/range/range.js'; + import '@shoelace-style/shoelace/dist/components/card/card.js'; + import '@itk-viewer/element/itk-viewer-2d.js' ` demoIndexContent = demoIndexContent.replaceAll( diff --git a/packages/downsample/typescript/vite.config.js b/packages/downsample/typescript/vite.config.js index 6995b1d10..a67111499 100644 --- a/packages/downsample/typescript/vite.config.js +++ b/packages/downsample/typescript/vite.config.js @@ -18,7 +18,7 @@ export default defineConfig({ format: 'es' }, optimizeDeps: { - exclude: ['itk-wasm', '@itk-wasm/image-io', '@itk-wasm/mesh-io', '@thewtex/zstddec'] + exclude: ['itk-wasm', '@itk-wasm/image-io', '@itk-wasm/mesh-io', '@thewtex/zstddec', '@itk-viewer/io'] }, plugins: [ // put lazy loaded JavaScript and Wasm bundles in dist directory From 7d7036655994391fd950dbfd6806221369e7a371 Mon Sep 17 00:00:00 2001 From: Paul Elliott Date: Mon, 11 Mar 2024 18:05:26 -0400 Subject: [PATCH 2/8] feat: include image viewer in package demo apps Manually updated readImage and compareImages TS code and index.html. --- .../inputs-outputs/typescript/package.json | 2 + .../typescript/package.json | 2 + .../compare-images/typescript/package.json | 2 + .../compare-double-images-controller.ts | 6 +- .../test/browser/demo-app/index.html | 4 + .../compare-images/typescript/vite.config.js | 2 +- .../typescript/package.json | 2 + .../typescript/vite.config.js | 2 +- packages/dicom/typescript/package.json | 2 + packages/dicom/typescript/vite.config.js | 2 +- packages/downsample/typescript/package.json | 2 + .../image-io/typescript/build/vite.config.js | 2 +- packages/image-io/typescript/package.json | 2 + .../test/browser/demo-app/index.html | 4 + .../browser/demo-app/read-image-controller.ts | 2 +- .../test/browser/demo-app/utilities.js | 39 + packages/image-io/typescript/vite.config.js | 2 +- packages/mesh-io/typescript/package.json | 2 + pnpm-lock.yaml | 2489 ++++++++++++++++- 19 files changed, 2455 insertions(+), 115 deletions(-) diff --git a/examples/inputs-outputs/typescript/package.json b/examples/inputs-outputs/typescript/package.json index d5b62d7f7..ba1dba259 100644 --- a/examples/inputs-outputs/typescript/package.json +++ b/examples/inputs-outputs/typescript/package.json @@ -39,6 +39,8 @@ "itk-wasm": "workspace:^" }, "devDependencies": { + "@itk-viewer/element": "^0.2.12", + "@itk-viewer/io": "^0.1.8", "@itk-wasm/image-io": "workspace:^", "@itk-wasm/mesh-io": "workspace:^", "@shoelace-style/shoelace": "^2.5.2", diff --git a/examples/mean-squares-versor-registration/typescript/package.json b/examples/mean-squares-versor-registration/typescript/package.json index a99747f1b..d3f0c50d7 100644 --- a/examples/mean-squares-versor-registration/typescript/package.json +++ b/examples/mean-squares-versor-registration/typescript/package.json @@ -37,6 +37,8 @@ "itk-wasm": "workspace:^" }, "devDependencies": { + "@itk-viewer/element": "^0.2.12", + "@itk-viewer/io": "^0.1.8", "@itk-wasm/image-io": "workspace:^", "@itk-wasm/mesh-io": "workspace:^", "@shoelace-style/shoelace": "^2.5.2", diff --git a/packages/compare-images/typescript/package.json b/packages/compare-images/typescript/package.json index a1d6f4ddb..6c77e8b44 100644 --- a/packages/compare-images/typescript/package.json +++ b/packages/compare-images/typescript/package.json @@ -45,6 +45,8 @@ "itk-wasm": "workspace:^" }, "devDependencies": { + "@itk-viewer/element": "^0.2.12", + "@itk-viewer/io": "^0.1.8", "@itk-wasm/compare-images-build": "workspace:^", "@itk-wasm/image-io": "workspace:^", "@shoelace-style/shoelace": "^2.12.0", diff --git a/packages/compare-images/typescript/test/browser/demo-app/compare-double-images-controller.ts b/packages/compare-images/typescript/test/browser/demo-app/compare-double-images-controller.ts index 8a92cb70e..93032840a 100644 --- a/packages/compare-images/typescript/test/browser/demo-app/compare-double-images-controller.ts +++ b/packages/compare-images/typescript/test/browser/demo-app/compare-double-images-controller.ts @@ -47,7 +47,7 @@ class CompareDoubleImagesController { webWorker.terminate() model.inputs.set("testImage", image) const details = document.getElementById("compareDoubleImages-test-image-details") - details.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + loadImage(image, details) details.disabled = false }) @@ -192,7 +192,7 @@ class CompareDoubleImagesController { const differenceImageDetails = document.getElementById("compareDoubleImages-difference-image-details") differenceImageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(differenceImage, globalThis.interfaceTypeJsonReplacer, 2))}
` differenceImageDetails.disabled = false - const differenceImageOutput = document.getElementById('compareDoubleImages-difference-image-details') + loadImage(differenceImage, differenceImageDetails) model.outputs.set("differenceUchar2dImage", differenceUchar2dImage) differenceUchar2dImageOutputDownload.variant = "success" @@ -200,7 +200,7 @@ class CompareDoubleImagesController { const differenceUchar2dImageDetails = document.getElementById("compareDoubleImages-difference-uchar-2d-image-details") differenceUchar2dImageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(differenceUchar2dImage, globalThis.interfaceTypeJsonReplacer, 2))}
` differenceUchar2dImageDetails.disabled = false - const differenceUchar2dImageOutput = document.getElementById('compareDoubleImages-difference-uchar-2d-image-details') + loadImage(differenceUchar2dImage, differenceUchar2dImageDetails) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/compare-images/typescript/test/browser/demo-app/index.html b/packages/compare-images/typescript/test/browser/demo-app/index.html index d701df4f3..078bd77d0 100644 --- a/packages/compare-images/typescript/test/browser/demo-app/index.html +++ b/packages/compare-images/typescript/test/browser/demo-app/index.html @@ -34,6 +34,10 @@ // dark mode document.documentElement.classList.add('sl-theme-dark'); } + + import '@shoelace-style/shoelace/dist/components/range/range.js'; + import '@shoelace-style/shoelace/dist/components/card/card.js'; + import '@itk-viewer/element/itk-viewer-2d.js' @itk-wasm/compare-images<img src="./javascript-logo.svg" alt="JavaScript logo" class="language-logo"/><img src="./typescript-logo.svg" alt="TypeScript logo" class="language-logo"/> diff --git a/packages/compare-images/typescript/vite.config.js b/packages/compare-images/typescript/vite.config.js index ab940bb40..cfa6c89b6 100644 --- a/packages/compare-images/typescript/vite.config.js +++ b/packages/compare-images/typescript/vite.config.js @@ -18,7 +18,7 @@ export default defineConfig({ format: 'es' }, optimizeDeps: { - exclude: ['itk-wasm', '@itk-wasm/image-io', '@thewtex/zstddec'] + exclude: ['itk-wasm', '@itk-wasm/image-io', '@thewtex/zstddec', '@itk-viewer/io'] }, plugins: [ // put lazy loaded JavaScript and Wasm bundles in dist directory diff --git a/packages/compress-stringify/typescript/package.json b/packages/compress-stringify/typescript/package.json index 22886e5e5..6cd0d1096 100644 --- a/packages/compress-stringify/typescript/package.json +++ b/packages/compress-stringify/typescript/package.json @@ -46,6 +46,8 @@ "devDependencies": { "@itk-wasm/compare-images": "workspace:*", "@itk-wasm/compare-meshes": "workspace:*", + "@itk-viewer/element": "^0.2.12", + "@itk-viewer/io": "^0.1.8", "@itk-wasm/compress-stringify-build": "workspace:*", "@itk-wasm/image-io": "workspace:*", "@itk-wasm/mesh-io": "workspace:*", diff --git a/packages/compress-stringify/typescript/vite.config.js b/packages/compress-stringify/typescript/vite.config.js index d365f291c..7bfa7bb02 100644 --- a/packages/compress-stringify/typescript/vite.config.js +++ b/packages/compress-stringify/typescript/vite.config.js @@ -18,7 +18,7 @@ export default defineConfig({ format: 'es' }, optimizeDeps: { - exclude: ['itk-wasm', '@itk-wasm/image-io', '@thewtex/zstddec', '@itk-wasm/mesh-io', '@itk-wasm/compare-images', '@itk-wasm/compare-meshes'] + exclude: ['itk-wasm', '@itk-wasm/image-io', '@thewtex/zstddec', '@itk-wasm/mesh-io', '@itk-wasm/compare-images', '@itk-wasm/compare-meshes', '@itk-viewer/io'] }, plugins: [ // put lazy loaded JavaScript and Wasm bundles in dist directory diff --git a/packages/dicom/typescript/package.json b/packages/dicom/typescript/package.json index 15a0c62fb..e5e32b60b 100644 --- a/packages/dicom/typescript/package.json +++ b/packages/dicom/typescript/package.json @@ -44,6 +44,8 @@ "itk-wasm": "workspace:^" }, "devDependencies": { + "@itk-viewer/element": "^0.2.12", + "@itk-viewer/io": "^0.1.8", "@itk-wasm/dicom-build": "workspace:*", "@itk-wasm/image-io": "workspace:*", "@shoelace-style/shoelace": "^2.12.0", diff --git a/packages/dicom/typescript/vite.config.js b/packages/dicom/typescript/vite.config.js index 13c22e1a4..f71449d48 100644 --- a/packages/dicom/typescript/vite.config.js +++ b/packages/dicom/typescript/vite.config.js @@ -18,7 +18,7 @@ export default defineConfig({ format: 'es' }, optimizeDeps: { - exclude: ['itk-wasm', '@itk-wasm/image-io', '@thewtex/zstddec', 'comlink', 'wasm-feature-detect', 'axios'] + exclude: ['itk-wasm', '@itk-wasm/image-io', '@thewtex/zstddec', 'comlink', 'wasm-feature-detect', 'axios', 'itk-viewer/io'] }, plugins: [ // put lazy loaded JavaScript and Wasm bundles in dist directory diff --git a/packages/downsample/typescript/package.json b/packages/downsample/typescript/package.json index e652b6afb..26eb4a4e8 100644 --- a/packages/downsample/typescript/package.json +++ b/packages/downsample/typescript/package.json @@ -46,6 +46,8 @@ }, "devDependencies": { "@itk-wasm/downsample-build": "workspace:^", + "@itk-viewer/element": "^0.2.12", + "@itk-viewer/io": "^0.1.8", "@itk-wasm/compare-images": "workspace:^", "@itk-wasm/image-io": "workspace:^", "@itk-wasm/mesh-io": "workspace:^", diff --git a/packages/image-io/typescript/build/vite.config.js b/packages/image-io/typescript/build/vite.config.js index c3a580cf0..4b388db7f 100644 --- a/packages/image-io/typescript/build/vite.config.js +++ b/packages/image-io/typescript/build/vite.config.js @@ -22,7 +22,7 @@ export function generateConfig() { format: 'es' }, optimizeDeps: { - exclude: ['itk-wasm', '@thewtex/zstddec'] + exclude: ['itk-wasm', '@thewtex/zstddec', '@itk-viewer/io'] }, plugins: [ // put lazy loaded JavaScript and Wasm bundles in dist directory diff --git a/packages/image-io/typescript/package.json b/packages/image-io/typescript/package.json index 17805d10d..131e766f5 100644 --- a/packages/image-io/typescript/package.json +++ b/packages/image-io/typescript/package.json @@ -51,6 +51,8 @@ "mime-types": "^2.1.35" }, "devDependencies": { + "@itk-viewer/element": "^0.2.12", + "@itk-viewer/io": "^0.1.8", "@itk-wasm/image-io-build": "workspace:*", "@shoelace-style/shoelace": "^2.12.0", "@types/mime-types": "^2.1.4", diff --git a/packages/image-io/typescript/test/browser/demo-app/index.html b/packages/image-io/typescript/test/browser/demo-app/index.html index 4c3ea15bc..b1f20fa05 100644 --- a/packages/image-io/typescript/test/browser/demo-app/index.html +++ b/packages/image-io/typescript/test/browser/demo-app/index.html @@ -34,6 +34,10 @@ // dark mode document.documentElement.classList.add('sl-theme-dark'); } + + import '@shoelace-style/shoelace/dist/components/range/range.js'; + import '@shoelace-style/shoelace/dist/components/card/card.js'; + import '@itk-viewer/element/itk-viewer-2d.js' @itk-wasm/image-io<img src="./javascript-logo.svg" alt="JavaScript logo" class="language-logo"/><img src="./typescript-logo.svg" alt="TypeScript logo" class="language-logo"/> diff --git a/packages/image-io/typescript/test/browser/demo-app/read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/read-image-controller.ts index f2be923a5..293632052 100644 --- a/packages/image-io/typescript/test/browser/demo-app/read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/read-image-controller.ts @@ -129,7 +129,7 @@ class ReadImageController { const imageDetails = document.getElementById("readImage-image-details") imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` imageDetails.disabled = false - const imageOutput = document.getElementById('readImage-image-details') + loadImage(image, imageDetails) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/utilities.js b/packages/image-io/typescript/test/browser/demo-app/utilities.js index 909a54302..a75568ea9 100644 --- a/packages/image-io/typescript/test/browser/demo-app/utilities.js +++ b/packages/image-io/typescript/test/browser/demo-app/utilities.js @@ -1,6 +1,7 @@ // Generated file. To retain edits, remove this comment. import * as itk from 'itk-wasm' +import { ItkWasmMultiscaleSpatialImage } from "@itk-viewer/io/ItkWasmMultiscaleSpatialImage.js"; globalThis.itk = itk function downloadFile(content, filename) { @@ -93,3 +94,41 @@ function applyInputParsedJson(inputElement, modelMap, parameterName) { } } globalThis.applyInputParsedJson = applyInputParsedJson + + +function showImage(image, details) { + details.innerHTML = '' + + const viewer = document.createElement('itk-viewer-2d') + viewer.style.width = '100%' + viewer.style.height = '26rem' + const multiImage = new ItkWasmMultiscaleSpatialImage(image); + // need to wait a tick due to bad setup flow in @itk-viewer/element + setTimeout(() => { + const viewerActor = viewer.getActor(); + viewerActor.send({ type: "setImage", image: multiImage }); + }, 0) + + const imageInfo = document.createElement('pre') + imageInfo.innerHTML = escapeHtml(JSON.stringify(image, interfaceTypeJsonReplacer, 2)) + + details.appendChild(viewer) + details.appendChild(imageInfo) +} + +function loadImage(image, details) { + if(!details.summary.startsWith('️🔎')) { + details.summary = '️🔎 ' + details.summary + } + if(details.open) { + showImage(image, details) + } + if(details.showImageListener) { + details.removeEventListener('sl-show', details.showImageListener) + } + details.showImageListener = () => { + showImage(image, details) + } + details.addEventListener('sl-show', details.showImageListener) +} +globalThis.loadImage = loadImage \ No newline at end of file diff --git a/packages/image-io/typescript/vite.config.js b/packages/image-io/typescript/vite.config.js index 143dcb805..eb915742e 100644 --- a/packages/image-io/typescript/vite.config.js +++ b/packages/image-io/typescript/vite.config.js @@ -15,7 +15,7 @@ export default defineConfig({ format: 'es' }, optimizeDeps: { - exclude: ['itk-wasm', '@itk-wasm/image-io', '@itk-wasm/mesh-io', '@thewtex/zstddec'] + exclude: ['itk-wasm', '@itk-wasm/image-io', '@itk-wasm/mesh-io', '@thewtex/zstddec', '@itk-viewer/io'] }, plugins: [ // put lazy loaded JavaScript and Wasm bundles in dist directory diff --git a/packages/mesh-io/typescript/package.json b/packages/mesh-io/typescript/package.json index e67acb1f5..412b07e95 100644 --- a/packages/mesh-io/typescript/package.json +++ b/packages/mesh-io/typescript/package.json @@ -46,6 +46,8 @@ "mime-types": "^2.1.35" }, "devDependencies": { + "@itk-viewer/element": "^0.2.12", + "@itk-viewer/io": "^0.1.8", "@itk-wasm/image-io": "workspace:^", "@itk-wasm/mesh-io-build": "workspace:*", "@shoelace-style/shoelace": "^2.5.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8294045e8..2147c3cf9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -48,6 +48,12 @@ importers: specifier: workspace:^ version: link:../../../packages/core/typescript/itk-wasm devDependencies: + '@itk-viewer/element': + specifier: ^0.2.12 + version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + '@itk-viewer/io': + specifier: ^0.1.8 + version: 0.1.8 '@itk-wasm/image-io': specifier: workspace:^ version: link:../../../packages/image-io/typescript @@ -94,6 +100,12 @@ importers: specifier: workspace:^ version: link:../../../packages/core/typescript/itk-wasm devDependencies: + '@itk-viewer/element': + specifier: ^0.2.12 + version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + '@itk-viewer/io': + specifier: ^0.1.8 + version: 0.1.8 '@itk-wasm/image-io': specifier: workspace:^ version: link:../../../packages/image-io/typescript @@ -158,6 +170,12 @@ importers: specifier: workspace:^ version: link:../../core/typescript/itk-wasm devDependencies: + '@itk-viewer/element': + specifier: ^0.2.12 + version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + '@itk-viewer/io': + specifier: ^0.1.8 + version: 0.1.8 '@itk-wasm/compare-images-build': specifier: workspace:^ version: link:.. @@ -274,6 +292,12 @@ importers: specifier: workspace:^ version: link:../../core/typescript/itk-wasm devDependencies: + '@itk-viewer/element': + specifier: ^0.2.12 + version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + '@itk-viewer/io': + specifier: ^0.1.8 + version: 0.1.8 '@itk-wasm/compare-images': specifier: workspace:* version: link:../../compare-images/typescript @@ -509,6 +533,12 @@ importers: specifier: workspace:^ version: link:../../core/typescript/itk-wasm devDependencies: + '@itk-viewer/element': + specifier: ^0.2.12 + version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + '@itk-viewer/io': + specifier: ^0.1.8 + version: 0.1.8 '@itk-wasm/dicom-build': specifier: workspace:* version: link:.. @@ -570,6 +600,12 @@ importers: specifier: workspace:^ version: link:../../core/typescript/itk-wasm devDependencies: + '@itk-viewer/element': + specifier: ^0.2.12 + version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + '@itk-viewer/io': + specifier: ^0.1.8 + version: 0.1.8 '@itk-wasm/compare-images': specifier: workspace:^ version: link:../../compare-images/typescript @@ -637,6 +673,12 @@ importers: specifier: ^2.1.35 version: 2.1.35 devDependencies: + '@itk-viewer/element': + specifier: ^0.2.12 + version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + '@itk-viewer/io': + specifier: ^0.1.8 + version: 0.1.8 '@itk-wasm/image-io-build': specifier: workspace:* version: link:.. @@ -698,6 +740,12 @@ importers: specifier: ^2.1.35 version: 2.1.35 devDependencies: + '@itk-viewer/element': + specifier: ^0.2.12 + version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + '@itk-viewer/io': + specifier: ^0.1.8 + version: 0.1.8 '@itk-wasm/image-io': specifier: workspace:^ version: link:../../image-io/typescript @@ -804,135 +852,1265 @@ packages: uuid: 3.4.0 dev: true + /@ampproject/remapping@2.3.0: + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + dev: true + /@azure/abort-controller@1.1.0: resolution: {integrity: sha512-TrRLIoSQVzfAJX9H1JeFjzAoDGcoK1IYX1UImfceTZpsyYfWr09Ss1aHW1y5TrrR3iq6RZLBwJ3E24uwPhwahw==} engines: {node: '>=12.0.0'} dependencies: - tslib: 2.6.2 + tslib: 2.6.2 + dev: true + + /@azure/core-auth@1.5.0: + resolution: {integrity: sha512-udzoBuYG1VBoHVohDTrvKjyzel34zt77Bhp7dQntVGGD0ehVq48owENbBG8fIgkHRNUBQH5k1r0hpoMu5L8+kw==} + engines: {node: '>=14.0.0'} + dependencies: + '@azure/abort-controller': 1.1.0 + '@azure/core-util': 1.6.1 + tslib: 2.6.2 + dev: true + + /@azure/core-http@3.0.4: + resolution: {integrity: sha512-Fok9VVhMdxAFOtqiiAtg74fL0UJkt0z3D+ouUUxcRLzZNBioPRAMJFVxiWoJljYpXsRi4GDQHzQHDc9AiYaIUQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@azure/abort-controller': 1.1.0 + '@azure/core-auth': 1.5.0 + '@azure/core-tracing': 1.0.0-preview.13 + '@azure/core-util': 1.6.1 + '@azure/logger': 1.0.4 + '@types/node-fetch': 2.6.9 + '@types/tunnel': 0.0.3 + form-data: 4.0.0 + node-fetch: 2.7.0 + process: 0.11.10 + tslib: 2.6.2 + tunnel: 0.0.6 + uuid: 8.3.2 + xml2js: 0.5.0 + transitivePeerDependencies: + - encoding + dev: true + + /@azure/core-lro@2.5.4: + resolution: {integrity: sha512-3GJiMVH7/10bulzOKGrrLeG/uCBH/9VtxqaMcB9lIqAeamI/xYQSHJL/KcsLDuH+yTjYpro/u6D/MuRe4dN70Q==} + engines: {node: '>=14.0.0'} + dependencies: + '@azure/abort-controller': 1.1.0 + '@azure/core-util': 1.6.1 + '@azure/logger': 1.0.4 + tslib: 2.6.2 + dev: true + + /@azure/core-paging@1.5.0: + resolution: {integrity: sha512-zqWdVIt+2Z+3wqxEOGzR5hXFZ8MGKK52x4vFLw8n58pR6ZfKRx3EXYTxTaYxYHc/PexPUTyimcTWFJbji9Z6Iw==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 + dev: true + + /@azure/core-tracing@1.0.0-preview.13: + resolution: {integrity: sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==} + engines: {node: '>=12.0.0'} + dependencies: + '@opentelemetry/api': 1.7.0 + tslib: 2.6.2 + dev: true + + /@azure/core-util@1.6.1: + resolution: {integrity: sha512-h5taHeySlsV9qxuK64KZxy4iln1BtMYlNt5jbuEFN3UFSAd1EwKg/Gjl5a6tZ/W8t6li3xPnutOx7zbDyXnPmQ==} + engines: {node: '>=16.0.0'} + dependencies: + '@azure/abort-controller': 1.1.0 + tslib: 2.6.2 + dev: true + + /@azure/logger@1.0.4: + resolution: {integrity: sha512-ustrPY8MryhloQj7OWGe+HrYx+aoiOxzbXTtgblbV3xwCqpzUK36phH3XNHQKj3EPonyFUuDTfR3qFhTEAuZEg==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 + dev: true + + /@azure/ms-rest-js@2.7.0: + resolution: {integrity: sha512-ngbzWbqF+NmztDOpLBVDxYM+XLcUj7nKhxGbSU9WtIsXfRB//cf2ZbAG5HkOrhU9/wd/ORRB6lM/d69RKVjiyA==} + dependencies: + '@azure/core-auth': 1.5.0 + abort-controller: 3.0.0 + form-data: 2.5.1 + node-fetch: 2.7.0 + tslib: 1.14.1 + tunnel: 0.0.6 + uuid: 8.3.2 + xml2js: 0.5.0 + transitivePeerDependencies: + - encoding + dev: true + + /@azure/storage-blob@12.17.0: + resolution: {integrity: sha512-sM4vpsCpcCApagRW5UIjQNlNylo02my2opgp0Emi8x888hZUvJ3dN69Oq20cEGXkMUWnoCrBaB0zyS3yeB87sQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@azure/abort-controller': 1.1.0 + '@azure/core-http': 3.0.4 + '@azure/core-lro': 2.5.4 + '@azure/core-paging': 1.5.0 + '@azure/core-tracing': 1.0.0-preview.13 + '@azure/logger': 1.0.4 + events: 3.3.0 + tslib: 2.6.2 + transitivePeerDependencies: + - encoding + dev: true + + /@babel/code-frame@7.23.5: + resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/highlight': 7.23.4 + chalk: 2.4.2 + dev: true + + /@babel/compat-data@7.23.5: + resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/core@7.24.0: + resolution: {integrity: sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==} + engines: {node: '>=6.9.0'} + dependencies: + '@ampproject/remapping': 2.3.0 + '@babel/code-frame': 7.23.5 + '@babel/generator': 7.23.6 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helpers': 7.24.0 + '@babel/parser': 7.24.0 + '@babel/template': 7.24.0 + '@babel/traverse': 7.24.0 + '@babel/types': 7.24.0 + convert-source-map: 2.0.0 + debug: 4.3.4(supports-color@8.1.1) + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/generator@7.23.6: + resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.24.0 + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + jsesc: 2.5.2 + dev: true + + /@babel/helper-annotate-as-pure@7.22.5: + resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.24.0 + dev: true + + /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: + resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.24.0 + dev: true + + /@babel/helper-compilation-targets@7.23.6: + resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/compat-data': 7.23.5 + '@babel/helper-validator-option': 7.23.5 + browserslist: 4.23.0 + lru-cache: 5.1.1 + semver: 6.3.1 + dev: true + + /@babel/helper-create-class-features-plugin@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-member-expression-to-functions': 7.23.0 + '@babel/helper-optimise-call-expression': 7.22.5 + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + semver: 6.3.1 + dev: true + + /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.0): + resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-annotate-as-pure': 7.22.5 + regexpu-core: 5.3.2 + semver: 6.3.1 + dev: true + + /@babel/helper-define-polyfill-provider@0.5.0(@babel/core@7.24.0): + resolution: {integrity: sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-plugin-utils': 7.24.0 + debug: 4.3.4(supports-color@8.1.1) + lodash.debounce: 4.0.8 + resolve: 1.22.8 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/helper-define-polyfill-provider@0.6.0(@babel/core@7.24.0): + resolution: {integrity: sha512-efwOM90nCG6YeT8o3PCyBVSxRfmILxCNL+TNI8CGQl7a62M0Wd9VkV+XHwIlkOz1r4b+lxu6gBjdWiOMdUCrCQ==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-plugin-utils': 7.24.0 + debug: 4.3.4(supports-color@8.1.1) + lodash.debounce: 4.0.8 + resolve: 1.22.8 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/helper-environment-visitor@7.22.20: + resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/helper-function-name@7.23.0: + resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/template': 7.24.0 + '@babel/types': 7.24.0 + dev: true + + /@babel/helper-hoist-variables@7.22.5: + resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.24.0 + dev: true + + /@babel/helper-member-expression-to-functions@7.23.0: + resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.24.0 + dev: true + + /@babel/helper-module-imports@7.22.15: + resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.24.0 + dev: true + + /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-simple-access': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-validator-identifier': 7.22.20 + dev: true + + /@babel/helper-optimise-call-expression@7.22.5: + resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.24.0 + dev: true + + /@babel/helper-plugin-utils@7.24.0: + resolution: {integrity: sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.24.0): + resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-wrap-function': 7.22.20 + dev: true + + /@babel/helper-replace-supers@7.22.20(@babel/core@7.24.0): + resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-member-expression-to-functions': 7.23.0 + '@babel/helper-optimise-call-expression': 7.22.5 + dev: true + + /@babel/helper-simple-access@7.22.5: + resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.24.0 + dev: true + + /@babel/helper-skip-transparent-expression-wrappers@7.22.5: + resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.24.0 + dev: true + + /@babel/helper-split-export-declaration@7.22.6: + resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.24.0 + dev: true + + /@babel/helper-string-parser@7.23.4: + resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/helper-validator-identifier@7.22.20: + resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/helper-validator-option@7.23.5: + resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/helper-wrap-function@7.22.20: + resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-function-name': 7.23.0 + '@babel/template': 7.24.0 + '@babel/types': 7.24.0 + dev: true + + /@babel/helpers@7.24.0: + resolution: {integrity: sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/template': 7.24.0 + '@babel/traverse': 7.24.0 + '@babel/types': 7.24.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/highlight@7.23.4: + resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': 7.22.20 + chalk: 2.4.2 + js-tokens: 4.0.0 + dev: true + + /@babel/parser@7.24.0: + resolution: {integrity: sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==} + engines: {node: '>=6.0.0'} + hasBin: true + dependencies: + '@babel/types': 7.24.0 + dev: true + + /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.13.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.24.0) + dev: true + + /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7(@babel/core@7.24.0): + resolution: {integrity: sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.0): + resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + dev: true + + /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.0): + resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.0): + resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.0): + resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.0): + resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.0): + resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.0): + resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.0): + resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.0): + resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.0): + resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.0): + resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.0): + resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.0): + resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.0): + resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.0): + resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.0): + resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.0): + resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-async-generator-functions@7.23.9(@babel/core@7.24.0): + resolution: {integrity: sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.0) + dev: true + + /@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) + dev: true + + /@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.12.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.0) + dev: true + + /@babel/plugin-transform-classes@7.23.8(@babel/core@7.24.0): + resolution: {integrity: sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) + '@babel/helper-split-export-declaration': 7.22.6 + globals: 11.12.0 + dev: true + + /@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/template': 7.24.0 + dev: true + + /@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.0) + dev: true + + /@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.0) + dev: true + + /@babel/plugin-transform-for-of@7.23.6(@babel/core@7.24.0): + resolution: {integrity: sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + dev: true + + /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.0) + dev: true + + /@babel/plugin-transform-literals@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.0) + dev: true + + /@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-simple-access': 7.22.5 + dev: true + + /@babel/plugin-transform-modules-systemjs@7.23.9(@babel/core@7.24.0): + resolution: {integrity: sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-validator-identifier': 7.22.20 + dev: true + + /@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@azure/core-auth@1.5.0: - resolution: {integrity: sha512-udzoBuYG1VBoHVohDTrvKjyzel34zt77Bhp7dQntVGGD0ehVq48owENbBG8fIgkHRNUBQH5k1r0hpoMu5L8+kw==} - engines: {node: '>=14.0.0'} + /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.0): + resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 dependencies: - '@azure/abort-controller': 1.1.0 - '@azure/core-util': 1.6.1 - tslib: 2.6.2 + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@azure/core-http@3.0.4: - resolution: {integrity: sha512-Fok9VVhMdxAFOtqiiAtg74fL0UJkt0z3D+ouUUxcRLzZNBioPRAMJFVxiWoJljYpXsRi4GDQHzQHDc9AiYaIUQ==} - engines: {node: '>=14.0.0'} + /@babel/plugin-transform-new-target@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - '@azure/abort-controller': 1.1.0 - '@azure/core-auth': 1.5.0 - '@azure/core-tracing': 1.0.0-preview.13 - '@azure/core-util': 1.6.1 - '@azure/logger': 1.0.4 - '@types/node-fetch': 2.6.9 - '@types/tunnel': 0.0.3 - form-data: 4.0.0 - node-fetch: 2.7.0 - process: 0.11.10 - tslib: 2.6.2 - tunnel: 0.0.6 - uuid: 8.3.2 - xml2js: 0.5.0 - transitivePeerDependencies: - - encoding + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@azure/core-lro@2.5.4: - resolution: {integrity: sha512-3GJiMVH7/10bulzOKGrrLeG/uCBH/9VtxqaMcB9lIqAeamI/xYQSHJL/KcsLDuH+yTjYpro/u6D/MuRe4dN70Q==} - engines: {node: '>=14.0.0'} + /@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - '@azure/abort-controller': 1.1.0 - '@azure/core-util': 1.6.1 - '@azure/logger': 1.0.4 - tslib: 2.6.2 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.0) dev: true - /@azure/core-paging@1.5.0: - resolution: {integrity: sha512-zqWdVIt+2Z+3wqxEOGzR5hXFZ8MGKK52x4vFLw8n58pR6ZfKRx3EXYTxTaYxYHc/PexPUTyimcTWFJbji9Z6Iw==} - engines: {node: '>=14.0.0'} + /@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - tslib: 2.6.2 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.0) dev: true - /@azure/core-tracing@1.0.0-preview.13: - resolution: {integrity: sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==} - engines: {node: '>=12.0.0'} + /@babel/plugin-transform-object-rest-spread@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-y/yKMm7buHpFFXfxVFS4Vk1ToRJDilIa6fKRioB9Vjichv58TDGXTvqV0dN7plobAmTW5eSEGXDngE+Mm+uO+w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - '@opentelemetry/api': 1.7.0 - tslib: 2.6.2 + '@babel/compat-data': 7.23.5 + '@babel/core': 7.24.0 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) dev: true - /@azure/core-util@1.6.1: - resolution: {integrity: sha512-h5taHeySlsV9qxuK64KZxy4iln1BtMYlNt5jbuEFN3UFSAd1EwKg/Gjl5a6tZ/W8t6li3xPnutOx7zbDyXnPmQ==} - engines: {node: '>=16.0.0'} + /@babel/plugin-transform-object-super@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - '@azure/abort-controller': 1.1.0 - tslib: 2.6.2 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) dev: true - /@azure/logger@1.0.4: - resolution: {integrity: sha512-ustrPY8MryhloQj7OWGe+HrYx+aoiOxzbXTtgblbV3xwCqpzUK36phH3XNHQKj3EPonyFUuDTfR3qFhTEAuZEg==} - engines: {node: '>=14.0.0'} + /@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - tslib: 2.6.2 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.0) dev: true - /@azure/ms-rest-js@2.7.0: - resolution: {integrity: sha512-ngbzWbqF+NmztDOpLBVDxYM+XLcUj7nKhxGbSU9WtIsXfRB//cf2ZbAG5HkOrhU9/wd/ORRB6lM/d69RKVjiyA==} + /@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - '@azure/core-auth': 1.5.0 - abort-controller: 3.0.0 - form-data: 2.5.1 - node-fetch: 2.7.0 - tslib: 1.14.1 - tunnel: 0.0.6 - uuid: 8.3.2 - xml2js: 0.5.0 - transitivePeerDependencies: - - encoding + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.0) dev: true - /@azure/storage-blob@12.17.0: - resolution: {integrity: sha512-sM4vpsCpcCApagRW5UIjQNlNylo02my2opgp0Emi8x888hZUvJ3dN69Oq20cEGXkMUWnoCrBaB0zyS3yeB87sQ==} - engines: {node: '>=14.0.0'} + /@babel/plugin-transform-parameters@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - '@azure/abort-controller': 1.1.0 - '@azure/core-http': 3.0.4 - '@azure/core-lro': 2.5.4 - '@azure/core-paging': 1.5.0 - '@azure/core-tracing': 1.0.0-preview.13 - '@azure/logger': 1.0.4 - events: 3.3.0 - tslib: 2.6.2 - transitivePeerDependencies: - - encoding + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/code-frame@7.23.5: - resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} + /@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - '@babel/highlight': 7.23.4 - chalk: 2.4.2 + '@babel/core': 7.24.0 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/helper-validator-identifier@7.22.20: - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} + /@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.24.0): + resolution: {integrity: sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.0) dev: true - /@babel/highlight@7.23.4: - resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} + /@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - '@babel/helper-validator-identifier': 7.22.20 - chalk: 2.4.2 - js-tokens: 4.0.0 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + regenerator-transform: 0.15.2 + dev: true + + /@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-spread@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + dev: true + + /@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.24.0): + resolution: {integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + dev: true + + /@babel/preset-env@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-ZxPEzV9IgvGn73iK0E6VB9/95Nd7aMFpbE0l8KQFDG70cOV9IxRP7Y2FUPmlK0v6ImlLqYX50iuZ3ZTVhOF2lA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/compat-data': 7.23.5 + '@babel/core': 7.24.0 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-validator-option': 7.23.5 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.23.7(@babel/core@7.24.0) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.0) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.0) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.0) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.0) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-import-assertions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-syntax-import-attributes': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.0) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.0) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.0) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.0) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.0) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.0) + '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-async-generator-functions': 7.23.9(@babel/core@7.24.0) + '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-class-static-block': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-classes': 7.23.8(@babel/core@7.24.0) + '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-dotall-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-duplicate-keys': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-dynamic-import': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-exponentiation-operator': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-export-namespace-from': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-for-of': 7.23.6(@babel/core@7.24.0) + '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-json-strings': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-logical-assignment-operators': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-member-expression-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-amd': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-systemjs': 7.23.9(@babel/core@7.24.0) + '@babel/plugin-transform-modules-umd': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.0) + '@babel/plugin-transform-new-target': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-numeric-separator': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-object-rest-spread': 7.24.0(@babel/core@7.24.0) + '@babel/plugin-transform-object-super': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-optional-catch-binding': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-private-property-in-object': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-regenerator': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-reserved-words': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-sticky-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-typeof-symbol': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-escapes': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-property-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-sets-regex': 7.23.3(@babel/core@7.24.0) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.0) + babel-plugin-polyfill-corejs2: 0.4.9(@babel/core@7.24.0) + babel-plugin-polyfill-corejs3: 0.9.0(@babel/core@7.24.0) + babel-plugin-polyfill-regenerator: 0.5.5(@babel/core@7.24.0) + core-js-compat: 3.36.0 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.0): + resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} + peerDependencies: + '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/types': 7.24.0 + esutils: 2.0.3 + dev: true + + /@babel/regjsgen@0.8.0: + resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} + dev: true + + /@babel/runtime@7.22.11: + resolution: {integrity: sha512-ee7jVNlWN09+KftVOu9n7S8gQzD/Z6hN/I8VBRXW4P1+Xe7kJGXMwu8vds4aGIMHZnNbdpSWCfZZtinytpcAvA==} + engines: {node: '>=6.9.0'} + dependencies: + regenerator-runtime: 0.14.0 dev: true /@babel/runtime@7.23.5: @@ -942,6 +2120,42 @@ packages: regenerator-runtime: 0.14.0 dev: true + /@babel/template@7.24.0: + resolution: {integrity: sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.23.5 + '@babel/parser': 7.24.0 + '@babel/types': 7.24.0 + dev: true + + /@babel/traverse@7.24.0: + resolution: {integrity: sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.23.5 + '@babel/generator': 7.23.6 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/parser': 7.24.0 + '@babel/types': 7.24.0 + debug: 4.3.4(supports-color@8.1.1) + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/types@7.24.0: + resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': 7.23.4 + '@babel/helper-validator-identifier': 7.22.20 + to-fast-properties: 2.0.0 + dev: true + /@changesets/apply-release-plan@7.0.0: resolution: {integrity: sha512-vfi69JR416qC9hWmFGSxj7N6wA5J222XNBmezSVATPWDVPIF7gkd4d8CpbEbXmRWbVrkoli3oerGS6dcL/BGsQ==} dependencies: @@ -1891,23 +3105,136 @@ packages: cborg: 4.0.5 multiformats: 12.1.3 - /@ipld/dag-pb@4.0.6: - resolution: {integrity: sha512-wOij3jfDKZsb9yjhQeHp+TQy0pu1vmUkGv324xciFFZ7xGbDfAGTQW03lSA5aJ/7HBBNYgjEE0nvHmNW1Qjfag==} - engines: {node: '>=16.0.0', npm: '>=7.0.0'} + /@ipld/dag-pb@4.0.6: + resolution: {integrity: sha512-wOij3jfDKZsb9yjhQeHp+TQy0pu1vmUkGv324xciFFZ7xGbDfAGTQW03lSA5aJ/7HBBNYgjEE0nvHmNW1Qjfag==} + engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dependencies: + multiformats: 12.1.3 + + /@ipld/unixfs@2.1.2: + resolution: {integrity: sha512-yZC2Ih0smcFLNVperNK1eg9fJYOyml3havbvVgUvLkb2M8UDmPGdVnv40SLv/4e4YY6Dg6iSheXEdj4txvmN9w==} + dependencies: + '@ipld/dag-pb': 4.0.6 + '@multiformats/murmur3': 2.1.7 + '@perma/map': 1.0.3 + '@web-std/stream': 1.0.1 + actor: 2.3.1 + multiformats: 11.0.2 + protobufjs: 7.2.5 + rabin-rs: 2.1.0 + + /@itk-viewer/arcball@0.0.1: + resolution: {integrity: sha512-TpXNoKAOtmpVVULUbytEVLyGTjgtpAuitNLXRY5Avf6+Tcsiogj7Im+a7J9Jr2Vr6lGS4fp4B6Pd1hwKotW0vw==} + dependencies: + gl-matrix: 3.4.3 + dev: true + + /@itk-viewer/blosc-zarr@0.1.3: + resolution: {integrity: sha512-O8REh/T8M99ADtE0Cr17FvhJtt++8MLP6giGcAaH35gbNqpMVJeg0gI2444HQplaJ4xicoeVrU5B0ja58+OfJA==} + dependencies: + '@itk-viewer/utils': 0.1.3 + itk-wasm: 1.0.0-b.160 + transitivePeerDependencies: + - debug + dev: true + + /@itk-viewer/element@0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): + resolution: {integrity: sha512-PGkPVqN8Sr13pgmwNOUyv3qRe2ZMOaqZdhAc3b+5NEUPO2gaA9XhUEuPIAptof5+RE3vzeo6XXuzjl/I2E1jyA==} + peerDependencies: + '@material/web': ^1.3.0 + peerDependenciesMeta: + '@material/web': + optional: true + dependencies: + '@itk-viewer/arcball': 0.0.1 + '@itk-viewer/io': 0.1.8 + '@itk-viewer/remote-viewport': 0.2.11 + '@itk-viewer/utils': 0.1.3 + '@itk-viewer/viewer': 0.2.8 + '@itk-viewer/vtkjs': 0.0.5(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + '@lit/context': 1.1.0 + gl-matrix: 3.4.3 + itk-wasm: 1.0.0-b.160 + lit: 3.1.0 + xstate: 5.5.2 + xstate-lit: 2.0.5(@lit/context@1.1.0)(lit@3.1.0)(xstate@5.5.2) + transitivePeerDependencies: + - '@babel/preset-env' + - autoprefixer + - bufferutil + - debug + - supports-color + - utf-8-validate + - webpack + - wslink + dev: true + + /@itk-viewer/io@0.1.8: + resolution: {integrity: sha512-soewY9nbLq0Z8HK2U8mdfzNZtmRPZbxcmzl7HWYdpmCu1cn5pp2y3cZsARjKTnuzsXrRr0DzfV29cBiJg21H8A==} + dependencies: + '@itk-viewer/blosc-zarr': 0.1.3 + '@itk-viewer/utils': 0.1.3 + axios: 1.6.7 + comlink: 4.4.1 + gl-matrix: 3.4.3 + itk-wasm: 1.0.0-b.160 + p-queue: 8.0.1 + zod: 3.22.4 + transitivePeerDependencies: + - debug + dev: true + + /@itk-viewer/remote-viewport@0.2.11: + resolution: {integrity: sha512-0JdBXWBUCCiTYGcAfpb1NDjpRbeMjomqvaYLeWn3qDSiX8UUc+8jSuOWBQ1yaGd/WVL74xaorOKMpC6zD8QcdA==} + dependencies: + '@itk-viewer/io': 0.1.8 + '@itk-viewer/utils': 0.1.3 + '@itk-viewer/viewer': 0.2.8 + '@itk-wasm/htj2k': 2.1.0 + gl-matrix: 3.4.3 + imjoy-rpc: 0.5.48 + xstate: 5.5.2 + transitivePeerDependencies: + - bufferutil + - debug + - supports-color + - utf-8-validate + dev: true + + /@itk-viewer/utils@0.1.3: + resolution: {integrity: sha512-2liw+6wvTRI/eDqPAwVmi+lPT6vj9YiAMt2qdEirc4b6Lg4WpYdsExgaYVgYM9hJpH71xo2DkIlAn7ns2pPF9A==} + dependencies: + itk-wasm: 1.0.0-b.160 + transitivePeerDependencies: + - debug + dev: true + + /@itk-viewer/viewer@0.2.8: + resolution: {integrity: sha512-g0C/IiVxzupkU5YerZCkTSPeKbLVGA3dukZc6o/wKKO+R+0KfF8T+oWT9NqlPJENaDxG+P+lTuOEAc4Xi/ejSQ==} dependencies: - multiformats: 12.1.3 + '@itk-viewer/io': 0.1.8 + '@itk-viewer/utils': 0.1.3 + gl-matrix: 3.4.3 + xstate: 5.5.2 + transitivePeerDependencies: + - debug + dev: true - /@ipld/unixfs@2.1.2: - resolution: {integrity: sha512-yZC2Ih0smcFLNVperNK1eg9fJYOyml3havbvVgUvLkb2M8UDmPGdVnv40SLv/4e4YY6Dg6iSheXEdj4txvmN9w==} + /@itk-viewer/vtkjs@0.0.5(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): + resolution: {integrity: sha512-1PPvzLgV5HrfxPDcTT8OQTH9V4nGGtC4kEOyEB3oHlKRttlprvC3ze/lXPN6F+m7ZVIx94TvaLsuARrwgccKcw==} dependencies: - '@ipld/dag-pb': 4.0.6 - '@multiformats/murmur3': 2.1.7 - '@perma/map': 1.0.3 - '@web-std/stream': 1.0.1 - actor: 2.3.1 - multiformats: 11.0.2 - protobufjs: 7.2.5 - rabin-rs: 2.1.0 + '@itk-viewer/io': 0.1.8 + '@itk-viewer/viewer': 0.2.8 + '@kitware/vtk.js': 29.8.0(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + gl-matrix: 3.4.3 + xstate: 5.5.2 + transitivePeerDependencies: + - '@babel/preset-env' + - autoprefixer + - debug + - webpack + - wslink + dev: true /@itk-wasm/dam@1.1.0: resolution: {integrity: sha512-f5uLh1cWixveehskXbHdEBUWbyv1n4bN/UVozK4apmreMP79l047f3FHiNStJQO/d/D+U4gT3KepXuQWGXD4BA==} @@ -1936,6 +3263,14 @@ packages: transitivePeerDependencies: - debug + /@itk-wasm/htj2k@2.1.0: + resolution: {integrity: sha512-22+mWgXr/LYRCqzzfIJ5il5bgYdJjPD5jiP4XXPvSgCjp48bui5zvZSkvMmXy89bJbVinUB1O6KHuB3K0MUong==} + dependencies: + itk-wasm: 1.0.0-b.172 + transitivePeerDependencies: + - debug + dev: true + /@itk-wasm/mesh-to-poly-data@1.0.0: resolution: {integrity: sha512-j1vJNaNpmZG3wjt7sU8/t/cxJvIto6dlCTdl/5oNGHWNz+81g3N/fWdwR6+wafr4OuHyut83LV+0J00sGYnX4Q==} dependencies: @@ -1944,10 +3279,84 @@ packages: - debug dev: true + /@jridgewell/gen-mapping@0.3.5: + resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/trace-mapping': 0.3.25 + dev: true + + /@jridgewell/resolve-uri@3.1.2: + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + dev: true + + /@jridgewell/set-array@1.2.1: + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + dev: true + + /@jridgewell/source-map@0.3.5: + resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} + dependencies: + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + dev: true + + /@jridgewell/sourcemap-codec@1.4.15: + resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + dev: true + + /@jridgewell/trace-mapping@0.3.25: + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.4.15 + dev: true + + /@kitware/vtk.js@29.8.0(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): + resolution: {integrity: sha512-gFAXmQa2X1eD2chuTDEKRS6tgg4eQNFjsfa/15yARlir/+Fn+STLllt6dBkJ4y6jrBtMHW9hwpQCZaP82PA2UQ==} + hasBin: true + peerDependencies: + '@babel/preset-env': ^7.17.10 + autoprefixer: ^10.4.7 + wslink: ^1.1.0 + dependencies: + '@babel/preset-env': 7.24.0(@babel/core@7.24.0) + '@babel/runtime': 7.22.11 + '@types/webxr': 0.5.14 + autoprefixer: 10.4.18(postcss@8.4.32) + commander: 9.2.0 + d3-scale: 4.0.2 + fast-deep-equal: 3.1.3 + fflate: 0.7.3 + gl-matrix: 3.4.3 + globalthis: 1.0.3 + seedrandom: 3.0.5 + shader-loader: 1.3.1 + shelljs: 0.8.5 + spark-md5: 3.0.2 + stream-browserify: 3.0.0 + webworker-promise: 0.5.0 + worker-loader: 3.0.8(webpack@5.90.3) + wslink: 1.12.4 + xmlbuilder2: 3.0.2 + transitivePeerDependencies: + - webpack + dev: true + /@lit-labs/ssr-dom-shim@1.1.2: resolution: {integrity: sha512-jnOD+/+dSrfTWYfSXBXlo5l5f0q1UuJo3tkbMDCYA2lKUYq79jaxqtGEvnRoh049nt1vdo1+45RinipU6FGY2g==} dev: true + /@lit/context@1.1.0: + resolution: {integrity: sha512-fCyv4dsH05wCNm3AKbB+PdYbXGJd/XT8OOwo4hVmD4COq5wOWJlQreGAMDvmHZ7osqxuu06Y4nmP6ooXpN7ErA==} + dependencies: + '@lit/reactive-element': 2.0.2 + dev: true + /@lit/react@1.0.2(@types/react@18.2.42): resolution: {integrity: sha512-UJ5TQ46DPcJDIzyjbwbj6Iye0XcpCxL2yb03zcWq1BpWchpXS3Z0BPVhg7zDfZLF6JemPml8u/gt/+KwJ/23sg==} peerDependencies: @@ -2007,6 +3416,11 @@ packages: - supports-color dev: true + /@msgpack/msgpack@2.8.0: + resolution: {integrity: sha512-h9u4u/jiIRKbq25PM+zymTyW6bhTzELvOoUd+AvYriWOAKpLGnIamaET3pnHYoI5iYphAHBI4ayx0MehR+VVPQ==} + engines: {node: '>= 10'} + dev: true + /@multiformats/blake2@1.0.13: resolution: {integrity: sha512-T1Kzya0wjj85CaVeRSpJ858EnSvW1pw94GSitxYf84VsNdv5XYbJ6QG8y26Ft1bVALzrUCmqkQrR53QHSyu6RA==} dependencies: @@ -2053,6 +3467,35 @@ packages: fastq: 1.15.0 dev: true + /@oozcitak/dom@1.15.10: + resolution: {integrity: sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==} + engines: {node: '>=8.0'} + dependencies: + '@oozcitak/infra': 1.0.8 + '@oozcitak/url': 1.0.4 + '@oozcitak/util': 8.3.8 + dev: true + + /@oozcitak/infra@1.0.8: + resolution: {integrity: sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==} + engines: {node: '>=6.0'} + dependencies: + '@oozcitak/util': 8.3.8 + dev: true + + /@oozcitak/url@1.0.4: + resolution: {integrity: sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==} + engines: {node: '>=8.0'} + dependencies: + '@oozcitak/infra': 1.0.8 + '@oozcitak/util': 8.3.8 + dev: true + + /@oozcitak/util@8.3.8: + resolution: {integrity: sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==} + engines: {node: '>=8.0'} + dev: true + /@opentelemetry/api@1.7.0: resolution: {integrity: sha512-AdY5wvN0P2vXBi3b29hxZgSFvdhdxPB9+f0B6s//P9Q8nibRWeA3cHm8UmLpio9ABigkVHJ5NMPk+Mz8VCCyrw==} engines: {node: '>=8.0.0'} @@ -2257,6 +3700,10 @@ packages: engines: {node: '>=18'} dev: true + /@socket.io/component-emitter@3.1.0: + resolution: {integrity: sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==} + dev: true + /@thewtex/setup-micromamba@1.9.7: resolution: {integrity: sha512-aP+gLE3dWIidtjhvLwJPb4E/AxmCFMnJd7J3Vdsj9T0hjsPrgTreAnbLod8oetwN2ohrJ5LxKCmtGa0b+lDqbw==} hasBin: true @@ -2281,6 +3728,24 @@ packages: /@types/emscripten@1.39.10: resolution: {integrity: sha512-TB/6hBkYQJxsZHSqyeuO1Jt0AB/bW6G7rHt9g7lML7SOF6lbgcHvw/Lr+69iqN0qxgXLhWKScAon73JNnptuDw==} + /@types/eslint-scope@3.7.7: + resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==} + dependencies: + '@types/eslint': 8.56.5 + '@types/estree': 1.0.5 + dev: true + + /@types/eslint@8.56.5: + resolution: {integrity: sha512-u5/YPJHo1tvkSF2CE0USEkxon82Z5DBy2xR+qfyYNszpX9qcs4sT6uq2kBbj4BXY1+DBGDPnrhMZV3pKWGNukw==} + dependencies: + '@types/estree': 1.0.5 + '@types/json-schema': 7.0.15 + dev: true + + /@types/estree@1.0.5: + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + dev: true + /@types/figlet@1.5.8: resolution: {integrity: sha512-G22AUvy4Tl95XLE7jmUM8s8mKcoz+Hr+Xm9W90gJsppJq9f9tHvOGkrpn4gRX0q/cLtBdNkWtWCKDg2UDZoZvQ==} dev: true @@ -2388,6 +3853,10 @@ packages: resolution: {integrity: sha512-lrpDziQipxCEeK5kWxvljWYhUvOiB2A9izZd9B2AFarYAkqZshb4lPbRs7zKEic6eGtH8V/2qJW+dPp9OtF6bw==} dev: true + /@types/webxr@0.5.14: + resolution: {integrity: sha512-UEMMm/Xn3DtEa+gpzUrOcDj+SJS1tk5YodjwOxcqStNhCfPcwgyC5Srg2ToVKyg2Fhq16Ffpb0UWUQHqoT9AMA==} + dev: true + /@types/yauzl@2.10.3: resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} requiresBuild: true @@ -2565,6 +4034,120 @@ packages: multiformats: 9.9.0 uint8arrays: 3.1.1 + /@webassemblyjs/ast@1.11.6: + resolution: {integrity: sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==} + dependencies: + '@webassemblyjs/helper-numbers': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + dev: true + + /@webassemblyjs/floating-point-hex-parser@1.11.6: + resolution: {integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==} + dev: true + + /@webassemblyjs/helper-api-error@1.11.6: + resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==} + dev: true + + /@webassemblyjs/helper-buffer@1.11.6: + resolution: {integrity: sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==} + dev: true + + /@webassemblyjs/helper-numbers@1.11.6: + resolution: {integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==} + dependencies: + '@webassemblyjs/floating-point-hex-parser': 1.11.6 + '@webassemblyjs/helper-api-error': 1.11.6 + '@xtuc/long': 4.2.2 + dev: true + + /@webassemblyjs/helper-wasm-bytecode@1.11.6: + resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==} + dev: true + + /@webassemblyjs/helper-wasm-section@1.11.6: + resolution: {integrity: sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==} + dependencies: + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/helper-buffer': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/wasm-gen': 1.11.6 + dev: true + + /@webassemblyjs/ieee754@1.11.6: + resolution: {integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==} + dependencies: + '@xtuc/ieee754': 1.2.0 + dev: true + + /@webassemblyjs/leb128@1.11.6: + resolution: {integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==} + dependencies: + '@xtuc/long': 4.2.2 + dev: true + + /@webassemblyjs/utf8@1.11.6: + resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==} + dev: true + + /@webassemblyjs/wasm-edit@1.11.6: + resolution: {integrity: sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==} + dependencies: + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/helper-buffer': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/helper-wasm-section': 1.11.6 + '@webassemblyjs/wasm-gen': 1.11.6 + '@webassemblyjs/wasm-opt': 1.11.6 + '@webassemblyjs/wasm-parser': 1.11.6 + '@webassemblyjs/wast-printer': 1.11.6 + dev: true + + /@webassemblyjs/wasm-gen@1.11.6: + resolution: {integrity: sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==} + dependencies: + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/ieee754': 1.11.6 + '@webassemblyjs/leb128': 1.11.6 + '@webassemblyjs/utf8': 1.11.6 + dev: true + + /@webassemblyjs/wasm-opt@1.11.6: + resolution: {integrity: sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==} + dependencies: + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/helper-buffer': 1.11.6 + '@webassemblyjs/wasm-gen': 1.11.6 + '@webassemblyjs/wasm-parser': 1.11.6 + dev: true + + /@webassemblyjs/wasm-parser@1.11.6: + resolution: {integrity: sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==} + dependencies: + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/helper-api-error': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/ieee754': 1.11.6 + '@webassemblyjs/leb128': 1.11.6 + '@webassemblyjs/utf8': 1.11.6 + dev: true + + /@webassemblyjs/wast-printer@1.11.6: + resolution: {integrity: sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==} + dependencies: + '@webassemblyjs/ast': 1.11.6 + '@xtuc/long': 4.2.2 + dev: true + + /@xtuc/ieee754@1.2.0: + resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} + dev: true + + /@xtuc/long@4.2.2: + resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} + dev: true + /abbrev@1.1.1: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} dev: true @@ -2576,6 +4159,14 @@ packages: event-target-shim: 5.0.1 dev: true + /acorn-import-assertions@1.9.0(acorn@8.11.2): + resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} + peerDependencies: + acorn: ^8 + dependencies: + acorn: 8.11.2 + dev: true + /acorn-jsx@5.3.2(acorn@8.11.2): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -2615,6 +4206,14 @@ packages: indent-string: 4.0.0 dev: true + /ajv-keywords@3.5.2(ajv@6.12.6): + resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==} + peerDependencies: + ajv: ^6.9.1 + dependencies: + ajv: 6.12.6 + dev: true + /ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} dependencies: @@ -2845,6 +4444,22 @@ packages: engines: {node: '>= 4.0.0'} dev: true + /autoprefixer@10.4.18(postcss@8.4.32): + resolution: {integrity: sha512-1DKbDfsr6KUElM6wg+0zRNkB/Q7WcKYAaK+pzXn+Xqmszm/5Xa9coeNdtP88Vi+dPzZnMjhge8GIV49ZQkDa+g==} + engines: {node: ^10 || ^12 || >=14} + hasBin: true + peerDependencies: + postcss: ^8.1.0 + dependencies: + browserslist: 4.23.0 + caniuse-lite: 1.0.30001597 + fraction.js: 4.3.7 + normalize-range: 0.1.2 + picocolors: 1.0.0 + postcss: 8.4.32 + postcss-value-parser: 4.2.0 + dev: true + /ava@6.1.0: resolution: {integrity: sha512-0fOQIWMHT9DYelzTYc3TI/4fmmmJ5LdvRWd6F43CppYfg84VrM5EO+hmlv2cPujMJAWuVesUWVloUu9PIwrgTA==} engines: {node: ^18.18 || ^20.8 || ^21} @@ -2922,6 +4537,52 @@ packages: transitivePeerDependencies: - debug + /axios@1.6.7: + resolution: {integrity: sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==} + dependencies: + follow-redirects: 1.15.5 + form-data: 4.0.0 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + dev: true + + /babel-plugin-polyfill-corejs2@0.4.9(@babel/core@7.24.0): + resolution: {integrity: sha512-BXIWIaO3MewbXWdJdIGDWZurv5OGJlFNo7oy20DpB3kWDVJLcY2NRypRsRUbRe5KMqSNLuOGnWTFQQtY5MAsRw==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/compat-data': 7.23.5 + '@babel/core': 7.24.0 + '@babel/helper-define-polyfill-provider': 0.6.0(@babel/core@7.24.0) + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + dev: true + + /babel-plugin-polyfill-corejs3@0.9.0(@babel/core@7.24.0): + resolution: {integrity: sha512-7nZPG1uzK2Ymhy/NbaOWTg3uibM2BmGASS4vHS4szRZAIR8R6GwA/xAujpdrXU5iyklrimWnLWU+BLF9suPTqg==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.24.0) + core-js-compat: 3.36.0 + transitivePeerDependencies: + - supports-color + dev: true + + /babel-plugin-polyfill-regenerator@0.5.5(@babel/core@7.24.0): + resolution: {integrity: sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/core': 7.24.0 + '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.24.0) + transitivePeerDependencies: + - supports-color + dev: true + /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -2948,6 +4609,10 @@ packages: is-windows: 1.0.2 dev: true + /big.js@5.2.2: + resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} + dev: true + /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} @@ -3013,6 +4678,17 @@ packages: wcwidth: 1.0.1 dev: true + /browserslist@4.23.0: + resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + dependencies: + caniuse-lite: 1.0.30001597 + electron-to-chromium: 1.4.700 + node-releases: 2.0.14 + update-browserslist-db: 1.0.13(browserslist@4.23.0) + dev: true + /buffer-alloc-unsafe@1.1.0: resolution: {integrity: sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==} @@ -3028,6 +4704,10 @@ packages: /buffer-fill@1.0.0: resolution: {integrity: sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==} + /buffer-from@1.1.2: + resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + dev: true + /buffer@5.7.1: resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} dependencies: @@ -3075,6 +4755,10 @@ packages: engines: {node: '>=6'} dev: true + /caniuse-lite@1.0.30001597: + resolution: {integrity: sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w==} + dev: true + /caseless@0.12.0: resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} dev: true @@ -3142,6 +4826,11 @@ packages: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} engines: {node: '>=10'} + /chrome-trace-event@1.0.3: + resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} + engines: {node: '>=6.0'} + dev: true + /chunkd@2.0.1: resolution: {integrity: sha512-7d58XsFmOq0j6el67Ug9mHf9ELUXsQXYJBkyxhH/k+6Ke0qXRnv0kbemx+Twc6fRJ07C49lcbdgm9FL1Ei/6SQ==} dev: true @@ -3292,6 +4981,11 @@ packages: engines: {node: '>= 6'} dev: true + /commander@9.2.0: + resolution: {integrity: sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==} + engines: {node: ^12.20.0 || >=14} + dev: true + /common-path-prefix@3.0.0: resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==} dev: true @@ -3357,11 +5051,21 @@ packages: compare-func: 2.0.0 dev: true + /convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + dev: true + /convert-to-spaces@2.0.1: resolution: {integrity: sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: true + /core-js-compat@3.36.0: + resolution: {integrity: sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw==} + dependencies: + browserslist: 4.23.0 + dev: true + /core-util-is@1.0.2: resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} @@ -3470,6 +5174,55 @@ packages: yauzl: 2.10.0 dev: true + /d3-array@3.2.4: + resolution: {integrity: sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==} + engines: {node: '>=12'} + dependencies: + internmap: 2.0.3 + dev: true + + /d3-color@3.1.0: + resolution: {integrity: sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==} + engines: {node: '>=12'} + dev: true + + /d3-format@3.1.0: + resolution: {integrity: sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==} + engines: {node: '>=12'} + dev: true + + /d3-interpolate@3.0.1: + resolution: {integrity: sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==} + engines: {node: '>=12'} + dependencies: + d3-color: 3.1.0 + dev: true + + /d3-scale@4.0.2: + resolution: {integrity: sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==} + engines: {node: '>=12'} + dependencies: + d3-array: 3.2.4 + d3-format: 3.1.0 + d3-interpolate: 3.0.1 + d3-time: 3.1.0 + d3-time-format: 4.1.0 + dev: true + + /d3-time-format@4.1.0: + resolution: {integrity: sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==} + engines: {node: '>=12'} + dependencies: + d3-time: 3.1.0 + dev: true + + /d3-time@3.1.0: + resolution: {integrity: sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==} + engines: {node: '>=12'} + dependencies: + d3-array: 3.2.4 + dev: true + /dashdash@1.14.1: resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==} engines: {node: '>=0.10'} @@ -3662,6 +5415,10 @@ packages: safer-buffer: 2.1.2 dev: true + /electron-to-chromium@1.4.700: + resolution: {integrity: sha512-40dqKQ3F7C8fbBEmjSeJ+qEHCKzPyrP9SkeIBZ3wSCUH9nhWStrDz030XlDzlhNhlul1Z0fz7TpDFnsIzo4Jtg==} + dev: true + /emittery@1.0.1: resolution: {integrity: sha512-2ID6FdrMD9KDLldGesP6317G78K7km/kMcwItRtVFva7I/cSEOIaLpewaUb+YLXVwdAp3Ctfxh/V5zIl1sj7dQ==} engines: {node: '>=14.16'} @@ -3678,11 +5435,43 @@ packages: resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==} dev: false + /emojis-list@3.0.0: + resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} + engines: {node: '>= 4'} + dev: true + /end-of-stream@1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} dependencies: once: 1.4.0 + /engine.io-client@6.5.3: + resolution: {integrity: sha512-9Z0qLB0NIisTRt1DZ/8U2k12RJn8yls/nXMZLn+/N8hANT3TcYjKFKcwbw5zFQiN4NTde3TSY9zb79e1ij6j9Q==} + dependencies: + '@socket.io/component-emitter': 3.1.0 + debug: 4.3.4(supports-color@8.1.1) + engine.io-parser: 5.2.2 + ws: 8.11.0 + xmlhttprequest-ssl: 2.0.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + + /engine.io-parser@5.2.2: + resolution: {integrity: sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==} + engines: {node: '>=10.0.0'} + dev: true + + /enhanced-resolve@5.16.0: + resolution: {integrity: sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==} + engines: {node: '>=10.13.0'} + dependencies: + graceful-fs: 4.2.11 + tapable: 2.2.1 + dev: true + /enquirer@2.4.1: resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} engines: {node: '>=8.6'} @@ -3764,6 +5553,10 @@ packages: safe-array-concat: 1.0.1 dev: true + /es-module-lexer@1.4.1: + resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==} + dev: true + /es-set-tostringtag@2.0.2: resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==} engines: {node: '>= 0.4'} @@ -4385,6 +6178,10 @@ packages: dependencies: pend: 1.2.0 + /fflate@0.7.3: + resolution: {integrity: sha512-0Zz1jOzJWERhyhsimS54VTqOteCNwRtIlh8isdL0AXLo0g7xNTfTL7oWrkmCnPhZGocKIkWHBistBrrpoNH3aw==} + dev: true + /figlet@1.7.0: resolution: {integrity: sha512-gO8l3wvqo0V7wEFLXPbkX83b7MVjRrk1oRLfYlZXol8nEpb/ON9pcKLI4qpBv5YtOTfrINtqb7b40iYY2FTWFg==} engines: {node: '>= 0.4.0'} @@ -4496,16 +6293,26 @@ packages: resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} dev: true - /follow-redirects@1.15.3(debug@4.3.4): - resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==} + /follow-redirects@1.15.3(debug@4.3.4): + resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + dependencies: + debug: 4.3.4(supports-color@8.1.1) + + /follow-redirects@1.15.5: + resolution: {integrity: sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==} engines: {node: '>=4.0'} peerDependencies: debug: '*' peerDependenciesMeta: debug: optional: true - dependencies: - debug: 4.3.4(supports-color@8.1.1) + dev: true /for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} @@ -4547,6 +6354,10 @@ packages: resolution: {integrity: sha512-by7U5W8dkIzcvDofUcO42yl9JbnHTEDBrzu3pt5fKT+Z4Oy85I21K80EYJYdjQGC2qum4Vo55Ag57iiIK4FYuA==} dev: true + /fraction.js@4.3.7: + resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} + dev: true + /from@0.1.7: resolution: {integrity: sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==} dev: true @@ -4639,6 +6450,11 @@ packages: wide-align: 1.1.5 dev: true + /gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + dev: true + /get-caller-file@2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} @@ -4701,6 +6517,10 @@ packages: assert-plus: 1.0.0 dev: true + /gl-matrix@3.4.3: + resolution: {integrity: sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==} + dev: true + /glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -4715,6 +6535,10 @@ packages: is-glob: 4.0.3 dev: true + /glob-to-regexp@0.4.1: + resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} + dev: true + /glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} dependencies: @@ -4743,6 +6567,11 @@ packages: ini: 2.0.0 dev: true + /globals@11.12.0: + resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} + engines: {node: '>=4'} + dev: true + /globals@13.23.0: resolution: {integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==} engines: {node: '>=8'} @@ -4961,6 +6790,17 @@ packages: engines: {node: '>= 4'} dev: true + /imjoy-rpc@0.5.48: + resolution: {integrity: sha512-nzjuKnatuEDj5LinXFT+fhw2QRVMOo8XtApKTS7TIC58aeyv61UE8yavORVx7nrjhLO2RL4c9wKgMCi+38ptgQ==} + dependencies: + '@msgpack/msgpack': 2.8.0 + socket.io-client: 4.7.4 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + /import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} @@ -5037,6 +6877,11 @@ packages: side-channel: 1.0.4 dev: true + /internmap@2.0.3: + resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} + engines: {node: '>=12'} + dev: true + /interpret@1.4.0: resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} engines: {node: '>= 0.10'} @@ -5417,6 +7262,24 @@ packages: set-function-name: 2.0.1 dev: true + /itk-wasm@1.0.0-b.160: + resolution: {integrity: sha512-yrt0uRukqI9Q5s9HhzArxMNYvyU5CMbI1ddGzH0A4O3JWscnJug7J0RtY+RTl6nTHcqdrppNH7IRbnTXLZ79Rg==} + hasBin: true + dependencies: + '@thewtex/zstddec': 0.2.0 + '@types/emscripten': 1.39.10 + axios: 1.6.7 + comlink: 4.4.1 + commander: 11.1.0 + fs-extra: 11.2.0 + glob: 8.1.0 + markdown-table: 3.0.3 + mime-types: 2.1.35 + wasm-feature-detect: 1.6.1 + transitivePeerDependencies: + - debug + dev: true + /itk-wasm@1.0.0-b.172: resolution: {integrity: sha512-Y07MLumv+C+ZdvEp5rUeiCgQ6m3awVX80a3fCPIZjDt+FAVdP+KNyqy7/1zWSbJtiGY31j4w/QCFR6x+BghHWw==} hasBin: true @@ -5424,7 +7287,7 @@ packages: '@itk-wasm/dam': 1.1.1 '@thewtex/zstddec': 0.2.0 '@types/emscripten': 1.39.10 - axios: 1.6.2(debug@4.3.4) + axios: 1.6.7 chalk: 5.3.0 comlink: 4.4.1 commander: 11.1.0 @@ -5437,6 +7300,15 @@ packages: - debug dev: true + /jest-worker@27.5.1: + resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} + engines: {node: '>= 10.13.0'} + dependencies: + '@types/node': 20.11.16 + merge-stream: 2.0.0 + supports-color: 8.1.1 + dev: true + /joi@17.11.0: resolution: {integrity: sha512-NgB+lZLNoqISVy1rZocE9PZI36bL/77ie924Ri43yEvi9GUUMPeyVIr8KdFTMUlby1p0PBYMk9spIxEUQYqrJQ==} dependencies: @@ -5459,6 +7331,14 @@ packages: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} dev: true + /js-yaml@3.14.0: + resolution: {integrity: sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==} + hasBin: true + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + dev: true + /js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} hasBin: true @@ -5478,6 +7358,17 @@ packages: resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} dev: true + /jsesc@0.5.0: + resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} + hasBin: true + dev: true + + /jsesc@2.5.2: + resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} + engines: {node: '>=4'} + hasBin: true + dev: true + /json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} dev: true @@ -5513,6 +7404,12 @@ packages: minimist: 1.2.8 dev: true + /json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + dev: true + /jsonfile@4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} optionalDependencies: @@ -5647,6 +7544,29 @@ packages: strip-bom: 3.0.0 dev: true + /loader-runner@4.3.0: + resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} + engines: {node: '>=6.11.5'} + dev: true + + /loader-utils@1.4.2: + resolution: {integrity: sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==} + engines: {node: '>=4.0.0'} + dependencies: + big.js: 5.2.2 + emojis-list: 3.0.0 + json5: 1.0.2 + dev: true + + /loader-utils@2.0.4: + resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} + engines: {node: '>=8.9.0'} + dependencies: + big.js: 5.2.2 + emojis-list: 3.0.0 + json5: 2.2.3 + dev: true + /locate-path@3.0.0: resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} engines: {node: '>=6'} @@ -5676,6 +7596,10 @@ packages: p-locate: 6.0.0 dev: true + /lodash.debounce@4.0.8: + resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + dev: true + /lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} dev: true @@ -5725,6 +7649,12 @@ packages: yallist: 2.1.2 dev: true + /lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + dependencies: + yallist: 3.1.1 + dev: true + /lru-cache@6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} engines: {node: '>=10'} @@ -5948,6 +7878,10 @@ packages: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} dev: true + /neo-async@2.6.2: + resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} + dev: true + /node-emoji@2.1.3: resolution: {integrity: sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==} engines: {node: '>=18'} @@ -5975,6 +7909,10 @@ packages: hasBin: true dev: true + /node-releases@2.0.14: + resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} + dev: true + /nofilter@3.1.0: resolution: {integrity: sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==} engines: {node: '>=12.19'} @@ -6002,6 +7940,11 @@ packages: engines: {node: '>=0.10.0'} dev: true + /normalize-range@0.1.2: + resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} + engines: {node: '>=0.10.0'} + dev: true + /npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} engines: {node: '>=8'} @@ -6222,10 +8165,23 @@ packages: eventemitter3: 5.0.1 p-timeout: 5.1.0 + /p-queue@8.0.1: + resolution: {integrity: sha512-NXzu9aQJTAzbBqOt2hwsR63ea7yvxJc0PwN/zobNAudYfb1B7R08SzB4TsLeSbUCuG467NhnoT0oO6w1qRO+BA==} + engines: {node: '>=18'} + dependencies: + eventemitter3: 5.0.1 + p-timeout: 6.1.2 + dev: true + /p-timeout@5.1.0: resolution: {integrity: sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==} engines: {node: '>=12'} + /p-timeout@6.1.2: + resolution: {integrity: sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==} + engines: {node: '>=14.16'} + dev: true + /p-try@2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} @@ -6399,6 +8355,10 @@ packages: - supports-color dev: false + /postcss-value-parser@4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + dev: true + /postcss@8.4.32: resolution: {integrity: sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==} engines: {node: ^10 || ^12 || >=14} @@ -6560,6 +8520,12 @@ packages: /rabin-rs@2.1.0: resolution: {integrity: sha512-5y72gAXPzIBsAMHcpxZP8eMDuDT98qMP1BqSDHRbHkJJXEgWIN1lA47LxUqzsK6jknOJtgfkQr9v+7qMlFDm6g==} + /randombytes@2.1.0: + resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + dependencies: + safe-buffer: 5.2.1 + dev: true + /react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} dev: true @@ -6646,10 +8612,27 @@ packages: which-builtin-type: 1.1.3 dev: true + /regenerate-unicode-properties@10.1.1: + resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==} + engines: {node: '>=4'} + dependencies: + regenerate: 1.4.2 + dev: true + + /regenerate@1.4.2: + resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} + dev: true + /regenerator-runtime@0.14.0: resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} dev: true + /regenerator-transform@0.15.2: + resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} + dependencies: + '@babel/runtime': 7.23.5 + dev: true + /regexp.prototype.flags@1.5.1: resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} engines: {node: '>= 0.4'} @@ -6664,6 +8647,25 @@ packages: engines: {node: '>=8'} dev: true + /regexpu-core@5.3.2: + resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} + engines: {node: '>=4'} + dependencies: + '@babel/regjsgen': 0.8.0 + regenerate: 1.4.2 + regenerate-unicode-properties: 10.1.1 + regjsparser: 0.9.1 + unicode-match-property-ecmascript: 2.0.0 + unicode-match-property-value-ecmascript: 2.1.0 + dev: true + + /regjsparser@0.9.1: + resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} + hasBin: true + dependencies: + jsesc: 0.5.0 + dev: true + /request-progress@3.0.0: resolution: {integrity: sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==} dependencies: @@ -6822,10 +8824,23 @@ packages: resolution: {integrity: sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==} dev: true + /schema-utils@3.3.0: + resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} + engines: {node: '>= 10.13.0'} + dependencies: + '@types/json-schema': 7.0.15 + ajv: 6.12.6 + ajv-keywords: 3.5.2(ajv@6.12.6) + dev: true + /secure-compare@3.0.1: resolution: {integrity: sha512-AckIIV90rPDcBcglUwXPF3kg0P0qmPsPXAj6BBEENQE1p5yA1xfmDJzfi1Tappj37Pv2mVbKpL3Z1T+Nn7k1Qw==} dev: false + /seedrandom@3.0.5: + resolution: {integrity: sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==} + dev: true + /seek-bzip@1.0.6: resolution: {integrity: sha512-e1QtP3YL5tWww8uKaOCQ18UxIT2laNBXHjV/S2WYCiK4udiv8lkG89KRIoCjUagnAmCBurjF4zEVX2ByBbnCjQ==} hasBin: true @@ -6856,6 +8871,12 @@ packages: type-fest: 0.13.1 dev: true + /serialize-javascript@6.0.2: + resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} + dependencies: + randombytes: 2.1.0 + dev: true + /set-blocking@2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} dev: true @@ -6878,6 +8899,12 @@ packages: has-property-descriptors: 1.0.1 dev: true + /shader-loader@1.3.1: + resolution: {integrity: sha512-dt8F9K0x4rjmaFyHh7rNDfpt4LUiR64zhNIEwp2WbE99B3z4ALuvvmhftkElg93dUD6sTmv/aXa/z9SJiEddcA==} + dependencies: + loader-utils: 1.4.2 + dev: true + /shebang-command@1.2.0: resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} engines: {node: '>=0.10.0'} @@ -6996,11 +9023,51 @@ packages: yargs: 15.4.1 dev: true + /socket.io-client@4.7.4: + resolution: {integrity: sha512-wh+OkeF0rAVCrABWQBaEjLfb7DVPotMbu0cgWgyR0v6eA4EoVnAwcIeIbcdTE3GT/H3kbdLl7OoH2+asoDRIIg==} + engines: {node: '>=10.0.0'} + dependencies: + '@socket.io/component-emitter': 3.1.0 + debug: 4.3.4(supports-color@8.1.1) + engine.io-client: 6.5.3 + socket.io-parser: 4.2.4 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + + /socket.io-parser@4.2.4: + resolution: {integrity: sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==} + engines: {node: '>=10.0.0'} + dependencies: + '@socket.io/component-emitter': 3.1.0 + debug: 4.3.4(supports-color@8.1.1) + transitivePeerDependencies: + - supports-color + dev: true + /source-map-js@1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} dev: true + /source-map-support@0.5.21: + resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + dev: true + + /source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + dev: true + + /spark-md5@3.0.2: + resolution: {integrity: sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==} + dev: true + /sparse-array@1.3.2: resolution: {integrity: sha512-ZT711fePGn3+kQyLuv1fpd3rNSkNF8vd5Kv2D+qnOANeyKs3fx6bUMGWRPvgTTcYV64QMqZKZwcuaQSP3AZ0tg==} @@ -7118,6 +9185,13 @@ packages: - supports-color dev: true + /stream-browserify@3.0.0: + resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==} + dependencies: + inherits: 2.0.4 + readable-stream: 3.6.2 + dev: true + /stream-combiner@0.0.4: resolution: {integrity: sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==} dependencies: @@ -7265,6 +9339,11 @@ packages: engines: {node: '>= 0.4'} dev: true + /tapable@2.2.1: + resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} + engines: {node: '>=6'} + dev: true + /tar-stream@1.6.2: resolution: {integrity: sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==} engines: {node: '>= 0.8.0'} @@ -7298,6 +9377,42 @@ packages: engines: {node: '>=8'} dev: true + /terser-webpack-plugin@5.3.10(esbuild@0.19.9)(webpack@5.90.3): + resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} + engines: {node: '>= 10.13.0'} + peerDependencies: + '@swc/core': '*' + esbuild: '*' + uglify-js: '*' + webpack: ^5.1.0 + peerDependenciesMeta: + '@swc/core': + optional: true + esbuild: + optional: true + uglify-js: + optional: true + dependencies: + '@jridgewell/trace-mapping': 0.3.25 + esbuild: 0.19.9 + jest-worker: 27.5.1 + schema-utils: 3.3.0 + serialize-javascript: 6.0.2 + terser: 5.29.1 + webpack: 5.90.3(esbuild@0.19.9) + dev: true + + /terser@5.29.1: + resolution: {integrity: sha512-lZQ/fyaIGxsbGxApKmoPTODIzELy3++mXhS5hOqaAWZjQtpq/hFHAc+rm29NND1rYRxRWKcjuARNwULNXa5RtQ==} + engines: {node: '>=10'} + hasBin: true + dependencies: + '@jridgewell/source-map': 0.3.5 + acorn: 8.11.2 + commander: 2.20.3 + source-map-support: 0.5.21 + dev: true + /text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} dev: true @@ -7330,6 +9445,11 @@ packages: /to-buffer@1.1.1: resolution: {integrity: sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==} + /to-fast-properties@2.0.0: + resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} + engines: {node: '>=4'} + dev: true + /to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -7574,11 +9694,34 @@ packages: '@fastify/busboy': 2.1.0 dev: true + /unicode-canonical-property-names-ecmascript@2.0.0: + resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} + engines: {node: '>=4'} + dev: true + /unicode-emoji-modifier-base@1.0.0: resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} engines: {node: '>=4'} dev: false + /unicode-match-property-ecmascript@2.0.0: + resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} + engines: {node: '>=4'} + dependencies: + unicode-canonical-property-names-ecmascript: 2.0.0 + unicode-property-aliases-ecmascript: 2.1.0 + dev: true + + /unicode-match-property-value-ecmascript@2.1.0: + resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} + engines: {node: '>=4'} + dev: true + + /unicode-property-aliases-ecmascript@2.1.0: + resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} + engines: {node: '>=4'} + dev: true + /unicorn-magic@0.1.0: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} engines: {node: '>=18'} @@ -7615,6 +9758,17 @@ packages: engines: {node: '>=16'} dev: true + /update-browserslist-db@1.0.13(browserslist@4.23.0): + resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + dependencies: + browserslist: 4.23.0 + escalade: 3.1.1 + picocolors: 1.0.0 + dev: true + /uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: @@ -7864,6 +10018,14 @@ packages: /wasm-feature-detect@1.6.1: resolution: {integrity: sha512-R1i9ED8UlLu/foILNB1ck9XS63vdtqU/tP1MCugVekETp/ySCrBZRk5I/zI67cI1wlQYeSonNm1PLjDHZDNg6g==} + /watchpack@2.4.0: + resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} + engines: {node: '>=10.13.0'} + dependencies: + glob-to-regexp: 0.4.1 + graceful-fs: 4.2.11 + dev: true + /wcwidth@1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} dependencies: @@ -7877,6 +10039,55 @@ packages: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} dev: true + /webpack-sources@3.2.3: + resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} + engines: {node: '>=10.13.0'} + dev: true + + /webpack@5.90.3(esbuild@0.19.9): + resolution: {integrity: sha512-h6uDYlWCctQRuXBs1oYpVe6sFcWedl0dpcVaTf/YF67J9bKvwJajFulMVSYKHrksMB3I/pIagRzDxwxkebuzKA==} + engines: {node: '>=10.13.0'} + hasBin: true + peerDependencies: + webpack-cli: '*' + peerDependenciesMeta: + webpack-cli: + optional: true + dependencies: + '@types/eslint-scope': 3.7.7 + '@types/estree': 1.0.5 + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/wasm-edit': 1.11.6 + '@webassemblyjs/wasm-parser': 1.11.6 + acorn: 8.11.2 + acorn-import-assertions: 1.9.0(acorn@8.11.2) + browserslist: 4.23.0 + chrome-trace-event: 1.0.3 + enhanced-resolve: 5.16.0 + es-module-lexer: 1.4.1 + eslint-scope: 5.1.1 + events: 3.3.0 + glob-to-regexp: 0.4.1 + graceful-fs: 4.2.11 + json-parse-even-better-errors: 2.3.1 + loader-runner: 4.3.0 + mime-types: 2.1.35 + neo-async: 2.6.2 + schema-utils: 3.3.0 + tapable: 2.2.1 + terser-webpack-plugin: 5.3.10(esbuild@0.19.9)(webpack@5.90.3) + watchpack: 2.4.0 + webpack-sources: 3.2.3 + transitivePeerDependencies: + - '@swc/core' + - esbuild + - uglify-js + dev: true + + /webworker-promise@0.5.0: + resolution: {integrity: sha512-14iR79jHAV7ozwvbfif+3wCaApT3I1g8Lo0rJZrwAu6wxZGx/08Y8KXz6as6ZLNUEEufeiEBBYrqyDBClXOsEw==} + dev: true + /well-known-symbols@2.0.0: resolution: {integrity: sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q==} engines: {node: '>=6'} @@ -7985,6 +10196,17 @@ packages: string-width: 4.2.3 dev: true + /worker-loader@3.0.8(webpack@5.90.3): + resolution: {integrity: sha512-XQyQkIFeRVC7f7uRhFdNMe/iJOdO6zxAaR3EWbDp45v3mDhrTi+++oswKNxShUNjPC/1xUp5DB29YKLhFo129g==} + engines: {node: '>= 10.13.0'} + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + dependencies: + loader-utils: 2.0.4 + schema-utils: 3.3.0 + webpack: 5.90.3(esbuild@0.19.9) + dev: true + /wrap-ansi@6.2.0: resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} engines: {node: '>=8'} @@ -8013,6 +10235,25 @@ packages: signal-exit: 4.1.0 dev: true + /ws@8.11.0: + resolution: {integrity: sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + dev: true + + /wslink@1.12.4: + resolution: {integrity: sha512-4AJtHZ0qtBa7zOp0e3R5OJxQ6HY9eo+jDPcjms6E2ChXgQ5D4hlMynFF8mEFXx54+PmLo8f2DMiM9bxN6QTAjg==} + dependencies: + json5: 2.2.3 + dev: true + /xdg-basedir@4.0.0: resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==} engines: {node: '>=8'} @@ -8026,11 +10267,43 @@ packages: xmlbuilder: 11.0.1 dev: true + /xmlbuilder2@3.0.2: + resolution: {integrity: sha512-h4MUawGY21CTdhV4xm3DG9dgsqyhDkZvVJBx88beqX8wJs3VgyGQgAn5VreHuae6unTQxh115aMK5InCVmOIKw==} + engines: {node: '>=12.0'} + dependencies: + '@oozcitak/dom': 1.15.10 + '@oozcitak/infra': 1.0.8 + '@oozcitak/util': 8.3.8 + '@types/node': 20.11.16 + js-yaml: 3.14.0 + dev: true + /xmlbuilder@11.0.1: resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==} engines: {node: '>=4.0'} dev: true + /xmlhttprequest-ssl@2.0.0: + resolution: {integrity: sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==} + engines: {node: '>=0.4.0'} + dev: true + + /xstate-lit@2.0.5(@lit/context@1.1.0)(lit@3.1.0)(xstate@5.5.2): + resolution: {integrity: sha512-XThgLbeJiii3eQvmF+lnxas+6OZB3EbZQ6qBD3uHql5OdTEktDz52pGIFCMqqGNLIsaR5xRIteN1w9VR1XqWBw==} + peerDependencies: + '@lit/context': ^1.1.0 + lit: ^3.1.0 + xstate: ^5.4.1 + dependencies: + '@lit/context': 1.1.0 + lit: 3.1.0 + xstate: 5.5.2 + dev: true + + /xstate@5.5.2: + resolution: {integrity: sha512-RLf9wc5HDO0pvj2TQQ+lY6tDW8CU8Entfgmtzzo6NhkC8qOEBXSN6WUSvnUM7NHZgdih06+by1b4nbaHVu1c+g==} + dev: true + /xstate@5.8.0: resolution: {integrity: sha512-YoJDJFRmmXcI6ZrL7H15Ew2Q5HjM/X3zcz1cqLT4OEeF/ktXDkWMGyIZOOMItM5ELR6sSqm1GY5el11M/JAb/A==} dev: false @@ -8052,6 +10325,10 @@ packages: resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} dev: true + /yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + dev: true + /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} From 436d25c3eb309944db2e9000581a5c1fae64da20 Mon Sep 17 00:00:00 2001 From: Paul Elliott Date: Sat, 30 Mar 2024 13:17:12 -0400 Subject: [PATCH 3/8] chore(demo-app): add new package for browser demo app --- .../inputs-outputs/typescript/package.json | 6 +- .../typescript/package.json | 6 +- .../compare-images/typescript/package.json | 6 +- .../test/browser/demo-app/index.html | 32 +- .../demo-app/vector-magnitude-controller.ts | 4 +- .../typescript/package.json | 6 +- .../test/browser/demo-app/index.html | 28 +- .../core/typescript/demo-app/package.json | 28 ++ .../core/typescript/demo-app/src/demo-app.js | 74 +++ .../resources/demo-app/utilities.js | 39 -- .../resources/template.package.json | 6 +- .../bindgen/typescript/typescript-bindings.js | 32 +- .../test/pipelines/typescript/package.json | 4 +- packages/dicom/typescript/package.json | 6 +- ...-presentation-state-to-image-controller.ts | 2 +- .../test/browser/demo-app/index.html | 30 +- packages/downsample/typescript/package.json | 4 +- .../downsample-bin-shrink-controller.ts | 4 +- .../browser/demo-app/downsample-controller.ts | 4 +- .../downsample-label-image-controller.ts | 4 +- .../test/browser/demo-app/index.html | 34 +- packages/image-io/typescript/package.json | 6 +- .../test/browser/demo-app/index.html | 32 +- .../test/browser/demo-app/utilities.js | 39 -- packages/mesh-io/typescript/package.json | 6 +- .../demo-app/byu-read-mesh-controller.ts | 1 - .../free-surfer-ascii-read-mesh-controller.ts | 1 - ...free-surfer-binary-read-mesh-controller.ts | 1 - .../test/browser/demo-app/index.html | 28 +- .../demo-app/obj-read-mesh-controller.ts | 1 - .../demo-app/off-read-mesh-controller.ts | 1 - .../demo-app/stl-read-mesh-controller.ts | 1 - .../demo-app/swc-read-mesh-controller.ts | 1 - .../vtk-poly-data-read-mesh-controller.ts | 1 - .../demo-app/wasm-read-mesh-controller.ts | 1 - pnpm-lock.yaml | 458 ++---------------- 36 files changed, 188 insertions(+), 749 deletions(-) create mode 100644 packages/core/typescript/demo-app/package.json create mode 100644 packages/core/typescript/demo-app/src/demo-app.js diff --git a/examples/inputs-outputs/typescript/package.json b/examples/inputs-outputs/typescript/package.json index ba1dba259..30afa4b29 100644 --- a/examples/inputs-outputs/typescript/package.json +++ b/examples/inputs-outputs/typescript/package.json @@ -24,7 +24,7 @@ "build:browser:workerEmbeddedMin": "esbuild --minify --loader:.worker.js=dataurl --bundle --format=esm --outfile=./dist/bundle/index-worker-embedded.min.js ./src/index-worker-embedded.min.ts", "build:version": "node -p \"'const version = ' + JSON.stringify(require('./package.json').version) + '\\nexport default version\\n'\" > src/version.ts", "build:tsc": "pnpm build:version && tsc --pretty", - "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", + "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@itk-wasm/demo-app/node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", "build:demo": "pnpm copyShoelaceAssets && vite build" }, "keywords": [ @@ -39,11 +39,9 @@ "itk-wasm": "workspace:^" }, "devDependencies": { - "@itk-viewer/element": "^0.2.12", - "@itk-viewer/io": "^0.1.8", "@itk-wasm/image-io": "workspace:^", "@itk-wasm/mesh-io": "workspace:^", - "@shoelace-style/shoelace": "^2.5.2", + "@itk-wasm/demo-app": "workspace:^", "@types/node": "^20.2.5", "esbuild": "^0.19.8", "shx": "^0.3.4", diff --git a/examples/mean-squares-versor-registration/typescript/package.json b/examples/mean-squares-versor-registration/typescript/package.json index d3f0c50d7..9eda89095 100644 --- a/examples/mean-squares-versor-registration/typescript/package.json +++ b/examples/mean-squares-versor-registration/typescript/package.json @@ -22,7 +22,7 @@ "build:browser:workerEmbeddedMin": "esbuild --minify --loader:.worker.js=dataurl --bundle --format=esm --outfile=./dist/bundle/index-worker-embedded.min.js ./src/index-worker-embedded.min.ts", "build:version": "node -p \"'const version = ' + JSON.stringify(require('./package.json').version) + '\\nexport default version\\n'\" > src/version.ts", "build:tsc": "pnpm build:version && tsc --pretty", - "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", + "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@itk-wasm/demo-app/node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", "build:demo": "pnpm copyShoelaceAssets && vite build" }, "keywords": [ @@ -37,11 +37,9 @@ "itk-wasm": "workspace:^" }, "devDependencies": { - "@itk-viewer/element": "^0.2.12", - "@itk-viewer/io": "^0.1.8", "@itk-wasm/image-io": "workspace:^", "@itk-wasm/mesh-io": "workspace:^", - "@shoelace-style/shoelace": "^2.5.2", + "@itk-wasm/demo-app": "workspace:^", "@types/node": "^20.2.5", "esbuild": "^0.19.8", "shx": "^0.3.4", diff --git a/packages/compare-images/typescript/package.json b/packages/compare-images/typescript/package.json index 6c77e8b44..a0ca2dc68 100644 --- a/packages/compare-images/typescript/package.json +++ b/packages/compare-images/typescript/package.json @@ -30,7 +30,7 @@ "build:browser:workerEmbeddedMin": "esbuild --minify --loader:.worker.js=dataurl --bundle --format=esm --outfile=./dist/bundle/index-worker-embedded.min.js ./src/index-worker-embedded.min.ts", "build:tsc": "pnpm build:version && tsc --pretty", "build:version": "node -p \"'const version = ' + JSON.stringify(require('./package.json').version) + '\\nexport default version\\n'\" > src/version.ts", - "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", + "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@itk-wasm/demo-app/node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", "build:demo": "pnpm copyShoelaceAssets && vite build" }, "keywords": [ @@ -45,11 +45,9 @@ "itk-wasm": "workspace:^" }, "devDependencies": { - "@itk-viewer/element": "^0.2.12", - "@itk-viewer/io": "^0.1.8", "@itk-wasm/compare-images-build": "workspace:^", "@itk-wasm/image-io": "workspace:^", - "@shoelace-style/shoelace": "^2.12.0", + "@itk-wasm/demo-app": "workspace:*", "@types/node": "^20.10.4", "ava": "^5.3.1", "cypress": "^13.6.1", diff --git a/packages/compare-images/typescript/test/browser/demo-app/index.html b/packages/compare-images/typescript/test/browser/demo-app/index.html index 078bd77d0..e3969d7e3 100644 --- a/packages/compare-images/typescript/test/browser/demo-app/index.html +++ b/packages/compare-images/typescript/test/browser/demo-app/index.html @@ -7,37 +7,7 @@ @itk-wasm/compare-images<img src="./javascript-logo.svg" alt="JavaScript logo" class="language-logo"/><img src="./typescript-logo.svg" alt="TypeScript logo" class="language-logo"/> diff --git a/packages/compare-images/typescript/test/browser/demo-app/vector-magnitude-controller.ts b/packages/compare-images/typescript/test/browser/demo-app/vector-magnitude-controller.ts index 05952a344..e67dc98bd 100644 --- a/packages/compare-images/typescript/test/browser/demo-app/vector-magnitude-controller.ts +++ b/packages/compare-images/typescript/test/browser/demo-app/vector-magnitude-controller.ts @@ -47,7 +47,7 @@ class VectorMagnitudeController { webWorker.terminate() model.inputs.set("vectorImage", image) const details = document.getElementById("vectorMagnitude-vector-image-details") - details.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + loadImage(image, details) details.disabled = false }) @@ -125,7 +125,7 @@ class VectorMagnitudeController { const magnitudeImageDetails = document.getElementById("vectorMagnitude-magnitude-image-details") magnitudeImageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(magnitudeImage, globalThis.interfaceTypeJsonReplacer, 2))}
` magnitudeImageDetails.disabled = false - const magnitudeImageOutput = document.getElementById('vectorMagnitude-magnitude-image-details') + loadImage(magnitudeImage, magnitudeImageDetails) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/compress-stringify/typescript/package.json b/packages/compress-stringify/typescript/package.json index 6cd0d1096..5e6ef47b9 100644 --- a/packages/compress-stringify/typescript/package.json +++ b/packages/compress-stringify/typescript/package.json @@ -22,7 +22,7 @@ "test:browser:firefox": "start-server-and-test start http-get://localhost:5176 cypress:runFirefox", "test:browser:chrome": "start-server-and-test start http-get://localhost:5176 cypress:runChrome", "test:browser:debug": "start-server-and-test start http-get://localhost:5176 cypress:open", - "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public/shoelace && shx cp -r node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", + "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public/shoelace && shx cp -r node_modules/@itk-wasm/demo-app/node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", "cypress:open": "pnpm exec cypress open", "cypress:runChrome": "pnpm exec cypress run --browser chrome", "cypress:runFirefox": "pnpm exec cypress run --browser firefox", @@ -46,13 +46,11 @@ "devDependencies": { "@itk-wasm/compare-images": "workspace:*", "@itk-wasm/compare-meshes": "workspace:*", - "@itk-viewer/element": "^0.2.12", - "@itk-viewer/io": "^0.1.8", "@itk-wasm/compress-stringify-build": "workspace:*", "@itk-wasm/image-io": "workspace:*", "@itk-wasm/mesh-io": "workspace:*", "@itk-wasm/mesh-to-poly-data": "^1.0.0", - "@shoelace-style/shoelace": "^2.5.2", + "@itk-wasm/demo-app": "workspace:*", "@types/node": "^20.2.5", "ava": "^5.1.0", "cypress": "^13.3.1", diff --git a/packages/compress-stringify/typescript/test/browser/demo-app/index.html b/packages/compress-stringify/typescript/test/browser/demo-app/index.html index 435706fa1..f9801b940 100644 --- a/packages/compress-stringify/typescript/test/browser/demo-app/index.html +++ b/packages/compress-stringify/typescript/test/browser/demo-app/index.html @@ -9,33 +9,7 @@ @itk-wasm/compress-stringify<img src="./javascript-logo.svg" alt="JavaScript logo" class="language-logo"/><img src="./typescript-logo.svg" alt="TypeScript logo" class="language-logo"/> diff --git a/packages/core/typescript/demo-app/package.json b/packages/core/typescript/demo-app/package.json new file mode 100644 index 000000000..e609de289 --- /dev/null +++ b/packages/core/typescript/demo-app/package.json @@ -0,0 +1,28 @@ +{ + "name": "@itk-wasm/demo-app", + "version": "0.0.0", + "packageManager": "pnpm@8.11.0", + "description": "Try pipelines in a browser", + "type": "module", + "exports": { + "./*": "./src/*" + }, + "keywords": [ + "itk", + "wasm", + "webassembly", + "wasi" + ], + "author": "", + "license": "Apache-2.0", + "dependencies": { + "itk-wasm": "1.0.0-b.170", + "@itk-viewer/element": "^0.2.12", + "@itk-viewer/io": "^0.1.8", + "@shoelace-style/shoelace": "^2.12.0" + }, + "repository": { + "type": "git", + "url": "https://github.com/InsightSoftwareConsortium/itk-wasm" + } +} diff --git a/packages/core/typescript/demo-app/src/demo-app.js b/packages/core/typescript/demo-app/src/demo-app.js new file mode 100644 index 000000000..a8942a309 --- /dev/null +++ b/packages/core/typescript/demo-app/src/demo-app.js @@ -0,0 +1,74 @@ +import { ItkWasmMultiscaleSpatialImage } from "@itk-viewer/io/ItkWasmMultiscaleSpatialImage.js"; +import "@itk-viewer/element/itk-viewer-2d.js"; + +import "@shoelace-style/shoelace/dist/themes/light.css"; +import "@shoelace-style/shoelace/dist/themes/dark.css"; +import "@shoelace-style/shoelace/dist/components/button/button.js"; +import "@shoelace-style/shoelace/dist/components/tab-group/tab-group.js"; +import "@shoelace-style/shoelace/dist/components/tab-panel/tab-panel.js"; +import "@shoelace-style/shoelace/dist/components/tab/tab.js"; +import "@shoelace-style/shoelace/dist/components/input/input.js"; +import "@shoelace-style/shoelace/dist/components/checkbox/checkbox.js"; +import "@shoelace-style/shoelace/dist/components/textarea/textarea.js"; +import "@shoelace-style/shoelace/dist/components/alert/alert.js"; +import "@shoelace-style/shoelace/dist/components/icon/icon.js"; +import "@shoelace-style/shoelace/dist/components/icon-button/icon-button.js"; +import "@shoelace-style/shoelace/dist/components/divider/divider.js"; +import "@shoelace-style/shoelace/dist/components/details/details.js"; +import "@shoelace-style/shoelace/dist/components/popup/popup.js"; +import "@shoelace-style/shoelace/dist/components/tag/tag.js"; +import "@shoelace-style/shoelace/dist/components/select/select.js"; +import "@shoelace-style/shoelace/dist/components/option/option.js"; +import "@shoelace-style/shoelace/dist/components/tooltip/tooltip.js"; +import "@shoelace-style/shoelace/dist/components/range/range.js"; +import "@shoelace-style/shoelace/dist/components/card/card.js"; +import { setBasePath } from "@shoelace-style/shoelace/dist/utilities/base-path"; + +setBasePath("/"); + +if ( + window.matchMedia && + window.matchMedia("(prefers-color-scheme: dark)").matches +) { + // dark mode + document.documentElement.classList.add("sl-theme-dark"); +} + +function showImage(image, details) { + details.innerHTML = ""; + + const viewer = document.createElement("itk-viewer-2d"); + viewer.style.width = "100%"; + viewer.style.height = "26rem"; + const multiImage = new ItkWasmMultiscaleSpatialImage(image); + // need to wait a tick due to bad setup flow in @itk-viewer/element + setTimeout(() => { + const viewerActor = viewer.getActor(); + viewerActor.send({ type: "setImage", image: multiImage }); + }, 0); + + const imageInfo = document.createElement("pre"); + imageInfo.innerHTML = escapeHtml( + JSON.stringify(image, interfaceTypeJsonReplacer, 2), + ); + + details.appendChild(viewer); + details.appendChild(imageInfo); +} + +function loadImage(image, details) { + if (!details.summary.startsWith("️🔎")) { + details.summary = "️🔎 " + details.summary; + } + if (details.open) { + showImage(image, details); + } + if (details.showImageListener) { + details.removeEventListener("sl-show", details.showImageListener); + } + details.showImageListener = () => { + showImage(image, details); + }; + details.addEventListener("sl-show", details.showImageListener); +} +globalThis.loadImage = loadImage; diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/utilities.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/utilities.js index 0f7749368..8e598a101 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/utilities.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/utilities.js @@ -1,5 +1,4 @@ import * as itk from 'itk-wasm' -import { ItkWasmMultiscaleSpatialImage } from "@itk-viewer/io/ItkWasmMultiscaleSpatialImage.js"; globalThis.itk = itk function downloadFile(content, filename) { @@ -92,41 +91,3 @@ function applyInputParsedJson(inputElement, modelMap, parameterName) { } } globalThis.applyInputParsedJson = applyInputParsedJson - - -function showImage(image, details) { - details.innerHTML = '' - - const viewer = document.createElement('itk-viewer-2d') - viewer.style.width = '100%' - viewer.style.height = '26rem' - const multiImage = new ItkWasmMultiscaleSpatialImage(image); - // need to wait a tick due to bad setup flow in @itk-viewer/element - setTimeout(() => { - const viewerActor = viewer.getActor(); - viewerActor.send({ type: "setImage", image: multiImage }); - }, 0) - - const imageInfo = document.createElement('pre') - imageInfo.innerHTML = escapeHtml(JSON.stringify(image, interfaceTypeJsonReplacer, 2)) - - details.appendChild(viewer) - details.appendChild(imageInfo) -} - -function loadImage(image, details) { - if(!details.summary.startsWith('️🔎')) { - details.summary = '️🔎 ' + details.summary - } - if(details.open) { - showImage(image, details) - } - if(details.showImageListener) { - details.removeEventListener('sl-show', details.showImageListener) - } - details.showImageListener = () => { - showImage(image, details) - } - details.addEventListener('sl-show', details.showImageListener) -} -globalThis.loadImage = loadImage \ No newline at end of file diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/template.package.json b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/template.package.json index 14a05b9bf..2be0de84d 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/template.package.json +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/template.package.json @@ -22,7 +22,7 @@ "build:browser:workerEmbeddedMin": "esbuild --minify --loader:.worker.js=dataurl --bundle --format=esm --outfile=./dist/bundle/index-worker-embedded.min.js ./src/index-worker-embedded.min.ts", "build:version": "node -p \"'const version = ' + JSON.stringify(require('./package.json').version) + '\\nexport default version\\n'\" > src/version.ts", "build:tsc": "pnpm build:version && tsc --pretty", - "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", + "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@itk-wasm/demo-app/node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", "build:demo": "pnpm copyShoelaceAssets && vite build" }, "keywords": [ @@ -37,11 +37,9 @@ "itk-wasm": "1.0.0-b.172" }, "devDependencies": { - "@itk-viewer/element": "^0.2.12", - "@itk-viewer/io": "^0.1.8", + "@itk-wasm/demo-app": "^0.0.0", "@itk-wasm/image-io": "^1.1.0", "@itk-wasm/mesh-io": "^1.1.0", - "@shoelace-style/shoelace": "^2.12.0", "@types/node": "^20.2.5", "esbuild": "^0.19.8", "shx": "^0.3.4", diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/typescript-bindings.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/typescript-bindings.js index f442d45be..ae786a64d 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/typescript-bindings.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/typescript-bindings.js @@ -287,37 +287,7 @@ export * from './index-node-only.js' ) const shoelaceScript = ` ` demoIndexContent = demoIndexContent.replaceAll( diff --git a/packages/core/typescript/itk-wasm/test/pipelines/typescript/package.json b/packages/core/typescript/itk-wasm/test/pipelines/typescript/package.json index 471279189..70f76c4b5 100644 --- a/packages/core/typescript/itk-wasm/test/pipelines/typescript/package.json +++ b/packages/core/typescript/itk-wasm/test/pipelines/typescript/package.json @@ -22,7 +22,7 @@ "build:browser:workerEmbeddedMin": "esbuild --minify --loader:.worker.js=dataurl --bundle --format=esm --outfile=./dist/bundle/index-worker-embedded.min.js ./src/index-worker-embedded.min.ts", "build:version": "node -p \"'const version = ' + JSON.stringify(require('./package.json').version) + '\\nexport default version\\n'\" > src/version.ts", "build:tsc": "pnpm build:version && tsc --pretty", - "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", + "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@itk-wasm/demo-app/node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", "build:demo": "pnpm copyShoelaceAssets && vite build" }, "keywords": [ @@ -39,7 +39,7 @@ "devDependencies": { "@itk-wasm/image-io": "workspace:*", "@itk-wasm/mesh-io": "workspace:*", - "@shoelace-style/shoelace": "^2.12.0", + "@itk-wasm/demo-app": "workspace:*", "@types/node": "^20.2.5", "esbuild": "^0.19.8", "shx": "^0.3.4", diff --git a/packages/dicom/typescript/package.json b/packages/dicom/typescript/package.json index e5e32b60b..39d7254c1 100644 --- a/packages/dicom/typescript/package.json +++ b/packages/dicom/typescript/package.json @@ -22,7 +22,7 @@ "test:browser:firefox": "start-server-and-test start http-get://localhost:5177 cypress:runFirefox", "test:browser:chrome": "start-server-and-test start http-get://localhost:5177 cypress:runChrome", "test:browser:debug": "start-server-and-test start http-get://localhost:5177 cypress:open", - "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public/shoelace && shx cp -r node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", + "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public/shoelace && shx cp -r node_modules/@itk-wasm/demo-app/node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", "cypress:open": "pnpm exec cypress open", "cypress:runChrome": "pnpm exec cypress run --browser chrome", "cypress:runFirefox": "pnpm exec cypress run --browser firefox", @@ -44,11 +44,9 @@ "itk-wasm": "workspace:^" }, "devDependencies": { - "@itk-viewer/element": "^0.2.12", - "@itk-viewer/io": "^0.1.8", "@itk-wasm/dicom-build": "workspace:*", "@itk-wasm/image-io": "workspace:*", - "@shoelace-style/shoelace": "^2.12.0", + "@itk-wasm/demo-app": "workspace:*", "@types/node": "^20.2.5", "ava": "^5.1.0", "cypress": "^13.6.1", diff --git a/packages/dicom/typescript/test/browser/demo-app/apply-presentation-state-to-image-controller.ts b/packages/dicom/typescript/test/browser/demo-app/apply-presentation-state-to-image-controller.ts index d34d0ebdb..150ed0dcb 100644 --- a/packages/dicom/typescript/test/browser/demo-app/apply-presentation-state-to-image-controller.ts +++ b/packages/dicom/typescript/test/browser/demo-app/apply-presentation-state-to-image-controller.ts @@ -182,7 +182,7 @@ class ApplyPresentationStateToImageController { const outputImageDetails = document.getElementById("applyPresentationStateToImage-output-image-details") outputImageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(outputImage, globalThis.interfaceTypeJsonReplacer, 2))}
` outputImageDetails.disabled = false - const outputImageOutput = document.getElementById('applyPresentationStateToImage-output-image-details') + loadImage(outputImage, outputImageDetails) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/dicom/typescript/test/browser/demo-app/index.html b/packages/dicom/typescript/test/browser/demo-app/index.html index f2e908a15..4a12f745d 100644 --- a/packages/dicom/typescript/test/browser/demo-app/index.html +++ b/packages/dicom/typescript/test/browser/demo-app/index.html @@ -9,33 +9,7 @@ @itk-wasm/dicom<img src="./javascript-logo.svg" alt="JavaScript logo" class="language-logo"/><img src="./typescript-logo.svg" alt="TypeScript logo" class="language-logo"/> @@ -356,8 +330,8 @@

👨‍💻 Live API Demo ✨



- +


Load sample inputs diff --git a/packages/downsample/typescript/package.json b/packages/downsample/typescript/package.json index 26eb4a4e8..6fc5c63c1 100644 --- a/packages/downsample/typescript/package.json +++ b/packages/downsample/typescript/package.json @@ -30,7 +30,7 @@ "build:browser:workerEmbeddedMin": "esbuild --minify --loader:.worker.js=dataurl --bundle --format=esm --outfile=./dist/bundle/index-worker-embedded.min.js ./src/index-worker-embedded.min.ts", "build:version": "node -p \"'const version = ' + JSON.stringify(require('./package.json').version) + '\\nexport default version\\n'\" > src/version.ts", "build:tsc": "pnpm build:version && tsc --pretty", - "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", + "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@itk-wasm/demo-app/node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", "build:demo": "pnpm copyShoelaceAssets && vite build" }, "keywords": [ @@ -51,7 +51,7 @@ "@itk-wasm/compare-images": "workspace:^", "@itk-wasm/image-io": "workspace:^", "@itk-wasm/mesh-io": "workspace:^", - "@shoelace-style/shoelace": "^2.5.2", + "@itk-wasm/demo-app": "workspace:*", "@types/node": "^20.2.5", "ava": "^6.1.0", "cypress": "^13.6.3", diff --git a/packages/downsample/typescript/test/browser/demo-app/downsample-bin-shrink-controller.ts b/packages/downsample/typescript/test/browser/demo-app/downsample-bin-shrink-controller.ts index b21baf90f..cb9bf0502 100644 --- a/packages/downsample/typescript/test/browser/demo-app/downsample-bin-shrink-controller.ts +++ b/packages/downsample/typescript/test/browser/demo-app/downsample-bin-shrink-controller.ts @@ -47,7 +47,7 @@ class DownsampleBinShrinkController { webWorker.terminate() model.inputs.set("input", image) const details = document.getElementById("downsampleBinShrink-input-details") - details.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + loadImage(image, details) details.disabled = false }) @@ -135,7 +135,7 @@ class DownsampleBinShrinkController { const downsampledDetails = document.getElementById("downsampleBinShrink-downsampled-details") downsampledDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(downsampled, globalThis.interfaceTypeJsonReplacer, 2))}
` downsampledDetails.disabled = false - const downsampledOutput = document.getElementById('downsampleBinShrink-downsampled-details') + loadImage(downsampled, downsampledDetails) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/downsample/typescript/test/browser/demo-app/downsample-controller.ts b/packages/downsample/typescript/test/browser/demo-app/downsample-controller.ts index e4b702b9b..bed57e787 100644 --- a/packages/downsample/typescript/test/browser/demo-app/downsample-controller.ts +++ b/packages/downsample/typescript/test/browser/demo-app/downsample-controller.ts @@ -47,7 +47,7 @@ class DownsampleController { webWorker.terminate() model.inputs.set("input", image) const details = document.getElementById("downsample-input-details") - details.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + loadImage(image, details) details.disabled = false }) @@ -135,7 +135,7 @@ class DownsampleController { const downsampledDetails = document.getElementById("downsample-downsampled-details") downsampledDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(downsampled, globalThis.interfaceTypeJsonReplacer, 2))}
` downsampledDetails.disabled = false - const downsampledOutput = document.getElementById('downsample-downsampled-details') + loadImage(downsampled, downsampledDetails) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/downsample/typescript/test/browser/demo-app/downsample-label-image-controller.ts b/packages/downsample/typescript/test/browser/demo-app/downsample-label-image-controller.ts index e1f2cba14..ac4079278 100644 --- a/packages/downsample/typescript/test/browser/demo-app/downsample-label-image-controller.ts +++ b/packages/downsample/typescript/test/browser/demo-app/downsample-label-image-controller.ts @@ -47,7 +47,7 @@ class DownsampleLabelImageController { webWorker.terminate() model.inputs.set("input", image) const details = document.getElementById("downsampleLabelImage-input-details") - details.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + loadImage(image, details) details.disabled = false }) @@ -135,7 +135,7 @@ class DownsampleLabelImageController { const downsampledDetails = document.getElementById("downsampleLabelImage-downsampled-details") downsampledDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(downsampled, globalThis.interfaceTypeJsonReplacer, 2))}
` downsampledDetails.disabled = false - const downsampledOutput = document.getElementById('downsampleLabelImage-downsampled-details') + loadImage(downsampled, downsampledDetails) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/downsample/typescript/test/browser/demo-app/index.html b/packages/downsample/typescript/test/browser/demo-app/index.html index 589f96b28..631ac6568 100644 --- a/packages/downsample/typescript/test/browser/demo-app/index.html +++ b/packages/downsample/typescript/test/browser/demo-app/index.html @@ -9,33 +9,7 @@ @itk-wasm/downsample<img src="./javascript-logo.svg" alt="JavaScript logo" class="language-logo"/><img src="./typescript-logo.svg" alt="TypeScript logo" class="language-logo"/> @@ -70,8 +44,8 @@

👨‍💻 Live API Demo ✨

Apply local averaging and subsample the input image.

- +


@@ -121,8 +95,8 @@

👨‍💻 Live API Demo ✨

Subsample the input label image a according to weighted voting of local labels.

- +


@@ -195,8 +169,8 @@

👨‍💻 Live API Demo ✨

Apply a smoothing anti-alias filter and subsample the input image.

- +


diff --git a/packages/image-io/typescript/package.json b/packages/image-io/typescript/package.json index 131e766f5..a49d9be44 100644 --- a/packages/image-io/typescript/package.json +++ b/packages/image-io/typescript/package.json @@ -30,7 +30,7 @@ "build:browser:workerEmbeddedMin": "esbuild --minify --loader:.worker.js=dataurl --bundle --format=esm --outfile=./dist/bundle/index-worker-embedded.min.js ./src/index-worker-embedded.min.ts", "build:version": "node -p \"'const version = ' + JSON.stringify(require('./package.json').version) + '\\nexport default version\\n'\" > src/version.ts", "build:tsc": "pnpm build:version && tsc --pretty", - "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", + "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@itk-wasm/demo-app/node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", "build:demo": "pnpm copyShoelaceAssets && vite -c build/vite.config.js build", "vite:start": "pnpm copyShoelaceAssets && vite -c build/vite.config.js", "rollup:start": "pnpm copyShoelaceAssets && pnpm build:demo && concurrently npm:rollup:preview npm:rollup:dev", @@ -51,10 +51,8 @@ "mime-types": "^2.1.35" }, "devDependencies": { - "@itk-viewer/element": "^0.2.12", - "@itk-viewer/io": "^0.1.8", "@itk-wasm/image-io-build": "workspace:*", - "@shoelace-style/shoelace": "^2.12.0", + "@itk-wasm/demo-app": "workspace:*", "@types/mime-types": "^2.1.4", "@types/node": "^20.10.4", "ava": "^5.3.1", diff --git a/packages/image-io/typescript/test/browser/demo-app/index.html b/packages/image-io/typescript/test/browser/demo-app/index.html index b1f20fa05..f9d261665 100644 --- a/packages/image-io/typescript/test/browser/demo-app/index.html +++ b/packages/image-io/typescript/test/browser/demo-app/index.html @@ -7,37 +7,7 @@ @itk-wasm/image-io<img src="./javascript-logo.svg" alt="JavaScript logo" class="language-logo"/><img src="./typescript-logo.svg" alt="TypeScript logo" class="language-logo"/> diff --git a/packages/image-io/typescript/test/browser/demo-app/utilities.js b/packages/image-io/typescript/test/browser/demo-app/utilities.js index a75568ea9..909a54302 100644 --- a/packages/image-io/typescript/test/browser/demo-app/utilities.js +++ b/packages/image-io/typescript/test/browser/demo-app/utilities.js @@ -1,7 +1,6 @@ // Generated file. To retain edits, remove this comment. import * as itk from 'itk-wasm' -import { ItkWasmMultiscaleSpatialImage } from "@itk-viewer/io/ItkWasmMultiscaleSpatialImage.js"; globalThis.itk = itk function downloadFile(content, filename) { @@ -94,41 +93,3 @@ function applyInputParsedJson(inputElement, modelMap, parameterName) { } } globalThis.applyInputParsedJson = applyInputParsedJson - - -function showImage(image, details) { - details.innerHTML = '' - - const viewer = document.createElement('itk-viewer-2d') - viewer.style.width = '100%' - viewer.style.height = '26rem' - const multiImage = new ItkWasmMultiscaleSpatialImage(image); - // need to wait a tick due to bad setup flow in @itk-viewer/element - setTimeout(() => { - const viewerActor = viewer.getActor(); - viewerActor.send({ type: "setImage", image: multiImage }); - }, 0) - - const imageInfo = document.createElement('pre') - imageInfo.innerHTML = escapeHtml(JSON.stringify(image, interfaceTypeJsonReplacer, 2)) - - details.appendChild(viewer) - details.appendChild(imageInfo) -} - -function loadImage(image, details) { - if(!details.summary.startsWith('️🔎')) { - details.summary = '️🔎 ' + details.summary - } - if(details.open) { - showImage(image, details) - } - if(details.showImageListener) { - details.removeEventListener('sl-show', details.showImageListener) - } - details.showImageListener = () => { - showImage(image, details) - } - details.addEventListener('sl-show', details.showImageListener) -} -globalThis.loadImage = loadImage \ No newline at end of file diff --git a/packages/mesh-io/typescript/package.json b/packages/mesh-io/typescript/package.json index 412b07e95..0d7c93828 100644 --- a/packages/mesh-io/typescript/package.json +++ b/packages/mesh-io/typescript/package.json @@ -30,7 +30,7 @@ "build:browser:workerEmbeddedMin": "esbuild --minify --loader:.worker.js=dataurl --bundle --format=esm --outfile=./dist/bundle/index-worker-embedded.min.js ./src/index-worker-embedded.min.ts", "build:version": "node -p \"'const version = ' + JSON.stringify(require('./package.json').version) + '\\nexport default version\\n'\" > src/version.ts", "build:tsc": "pnpm build:version && tsc --pretty", - "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", + "copyShoelaceAssets": "shx mkdir -p test/browser/demo-app/public && shx cp -r node_modules/@itk-wasm/demo-app/node_modules/@shoelace-style/shoelace/dist/assets test/browser/demo-app/public/", "build:demo": "pnpm copyShoelaceAssets && vite build" }, "keywords": [ @@ -46,11 +46,9 @@ "mime-types": "^2.1.35" }, "devDependencies": { - "@itk-viewer/element": "^0.2.12", - "@itk-viewer/io": "^0.1.8", "@itk-wasm/image-io": "workspace:^", "@itk-wasm/mesh-io-build": "workspace:*", - "@shoelace-style/shoelace": "^2.5.2", + "@itk-wasm/demo-app": "workspace:*", "@types/mime-types": "^2.1.4", "@types/node": "^20.2.5", "ava": "^5.3.1", diff --git a/packages/mesh-io/typescript/test/browser/demo-app/byu-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/byu-read-mesh-controller.ts index 80c3ad908..7863a95ee 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/byu-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/byu-read-mesh-controller.ts @@ -146,7 +146,6 @@ class ByuReadMeshController { const meshDetails = document.getElementById("byuReadMesh-mesh-details") meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false - const meshOutput = document.getElementById('byuReadMesh-mesh-details') } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-ascii-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-ascii-read-mesh-controller.ts index 878ffe82b..4617f9ed0 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-ascii-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-ascii-read-mesh-controller.ts @@ -146,7 +146,6 @@ class FreeSurferAsciiReadMeshController { const meshDetails = document.getElementById("freeSurferAsciiReadMesh-mesh-details") meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false - const meshOutput = document.getElementById('freeSurferAsciiReadMesh-mesh-details') } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-binary-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-binary-read-mesh-controller.ts index d9793f8e6..29fe977af 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-binary-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-binary-read-mesh-controller.ts @@ -146,7 +146,6 @@ class FreeSurferBinaryReadMeshController { const meshDetails = document.getElementById("freeSurferBinaryReadMesh-mesh-details") meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false - const meshOutput = document.getElementById('freeSurferBinaryReadMesh-mesh-details') } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/index.html b/packages/mesh-io/typescript/test/browser/demo-app/index.html index 291e35034..820e8777b 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/index.html +++ b/packages/mesh-io/typescript/test/browser/demo-app/index.html @@ -7,33 +7,7 @@ @itk-wasm/mesh-io<img src="./javascript-logo.svg" alt="JavaScript logo" class="language-logo"/><img src="./typescript-logo.svg" alt="TypeScript logo" class="language-logo"/> diff --git a/packages/mesh-io/typescript/test/browser/demo-app/obj-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/obj-read-mesh-controller.ts index 2c7663f50..2170954b5 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/obj-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/obj-read-mesh-controller.ts @@ -146,7 +146,6 @@ class ObjReadMeshController { const meshDetails = document.getElementById("objReadMesh-mesh-details") meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false - const meshOutput = document.getElementById('objReadMesh-mesh-details') } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/off-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/off-read-mesh-controller.ts index 0944723bc..591c36291 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/off-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/off-read-mesh-controller.ts @@ -146,7 +146,6 @@ class OffReadMeshController { const meshDetails = document.getElementById("offReadMesh-mesh-details") meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false - const meshOutput = document.getElementById('offReadMesh-mesh-details') } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/stl-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/stl-read-mesh-controller.ts index 1ebd2ddcf..6c7982964 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/stl-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/stl-read-mesh-controller.ts @@ -146,7 +146,6 @@ class StlReadMeshController { const meshDetails = document.getElementById("stlReadMesh-mesh-details") meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false - const meshOutput = document.getElementById('stlReadMesh-mesh-details') } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/swc-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/swc-read-mesh-controller.ts index 74aaa69b7..bb8c13e72 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/swc-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/swc-read-mesh-controller.ts @@ -146,7 +146,6 @@ class SwcReadMeshController { const meshDetails = document.getElementById("swcReadMesh-mesh-details") meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false - const meshOutput = document.getElementById('swcReadMesh-mesh-details') } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/vtk-poly-data-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/vtk-poly-data-read-mesh-controller.ts index 4104c62aa..3df89b0c4 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/vtk-poly-data-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/vtk-poly-data-read-mesh-controller.ts @@ -146,7 +146,6 @@ class VtkPolyDataReadMeshController { const meshDetails = document.getElementById("vtkPolyDataReadMesh-mesh-details") meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false - const meshOutput = document.getElementById('vtkPolyDataReadMesh-mesh-details') } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/wasm-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/wasm-read-mesh-controller.ts index 5211f4e94..feacc7f3b 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/wasm-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/wasm-read-mesh-controller.ts @@ -146,7 +146,6 @@ class WasmReadMeshController { const meshDetails = document.getElementById("wasmReadMesh-mesh-details") meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false - const meshOutput = document.getElementById('wasmReadMesh-mesh-details') } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2147c3cf9..afbc9aba1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -48,21 +48,15 @@ importers: specifier: workspace:^ version: link:../../../packages/core/typescript/itk-wasm devDependencies: - '@itk-viewer/element': - specifier: ^0.2.12 - version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) - '@itk-viewer/io': - specifier: ^0.1.8 - version: 0.1.8 + '@itk-wasm/demo-app': + specifier: workspace:^ + version: link:../../../packages/core/typescript/demo-app '@itk-wasm/image-io': specifier: workspace:^ version: link:../../../packages/image-io/typescript '@itk-wasm/mesh-io': specifier: workspace:^ version: link:../../../packages/mesh-io/typescript - '@shoelace-style/shoelace': - specifier: ^2.12.0 - version: 2.12.0(@types/react@18.2.42) '@types/node': specifier: ^20.2.5 version: 20.10.4 @@ -100,21 +94,15 @@ importers: specifier: workspace:^ version: link:../../../packages/core/typescript/itk-wasm devDependencies: - '@itk-viewer/element': - specifier: ^0.2.12 - version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) - '@itk-viewer/io': - specifier: ^0.1.8 - version: 0.1.8 + '@itk-wasm/demo-app': + specifier: workspace:^ + version: link:../../../packages/core/typescript/demo-app '@itk-wasm/image-io': specifier: workspace:^ version: link:../../../packages/image-io/typescript '@itk-wasm/mesh-io': specifier: workspace:^ version: link:../../../packages/mesh-io/typescript - '@shoelace-style/shoelace': - specifier: ^2.12.0 - version: 2.12.0(@types/react@18.2.42) '@types/node': specifier: ^20.2.5 version: 20.10.4 @@ -170,21 +158,15 @@ importers: specifier: workspace:^ version: link:../../core/typescript/itk-wasm devDependencies: - '@itk-viewer/element': - specifier: ^0.2.12 - version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) - '@itk-viewer/io': - specifier: ^0.1.8 - version: 0.1.8 '@itk-wasm/compare-images-build': specifier: workspace:^ version: link:.. + '@itk-wasm/demo-app': + specifier: workspace:* + version: link:../../core/typescript/demo-app '@itk-wasm/image-io': specifier: workspace:^ version: link:../../image-io/typescript - '@shoelace-style/shoelace': - specifier: ^2.12.0 - version: 2.12.0(@types/react@18.2.42) '@types/node': specifier: ^20.10.4 version: 20.10.4 @@ -292,12 +274,6 @@ importers: specifier: workspace:^ version: link:../../core/typescript/itk-wasm devDependencies: - '@itk-viewer/element': - specifier: ^0.2.12 - version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) - '@itk-viewer/io': - specifier: ^0.1.8 - version: 0.1.8 '@itk-wasm/compare-images': specifier: workspace:* version: link:../../compare-images/typescript @@ -307,6 +283,9 @@ importers: '@itk-wasm/compress-stringify-build': specifier: workspace:* version: link:.. + '@itk-wasm/demo-app': + specifier: workspace:* + version: link:../../core/typescript/demo-app '@itk-wasm/image-io': specifier: workspace:* version: link:../../image-io/typescript @@ -316,9 +295,6 @@ importers: '@itk-wasm/mesh-to-poly-data': specifier: ^1.0.0 version: 1.0.0 - '@shoelace-style/shoelace': - specifier: ^2.12.0 - version: 2.12.0(@types/react@18.2.42) '@types/node': specifier: ^20.2.5 version: 20.10.3 @@ -405,6 +381,21 @@ importers: specifier: ^5.3.3 version: 5.3.3 + packages/core/typescript/demo-app: + dependencies: + '@itk-viewer/element': + specifier: ^0.2.12 + version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + '@itk-viewer/io': + specifier: ^0.1.8 + version: 0.1.8 + '@shoelace-style/shoelace': + specifier: ^2.12.0 + version: 2.12.0(@types/react@18.2.42) + itk-wasm: + specifier: 1.0.0-b.170 + version: 1.0.0-b.170 + packages/core/typescript/itk-wasm: dependencies: '@itk-wasm/dam': @@ -484,15 +475,15 @@ importers: specifier: workspace:* version: link:../../.. devDependencies: + '@itk-wasm/demo-app': + specifier: workspace:* + version: link:../../../../demo-app '@itk-wasm/image-io': specifier: workspace:* version: link:../../../../../../image-io/typescript '@itk-wasm/mesh-io': specifier: workspace:* version: link:../../../../../../mesh-io/typescript - '@shoelace-style/shoelace': - specifier: ^2.12.0 - version: 2.12.0(@types/react@18.2.42) '@types/node': specifier: ^20.2.5 version: 20.11.16 @@ -533,21 +524,15 @@ importers: specifier: workspace:^ version: link:../../core/typescript/itk-wasm devDependencies: - '@itk-viewer/element': - specifier: ^0.2.12 - version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) - '@itk-viewer/io': - specifier: ^0.1.8 - version: 0.1.8 + '@itk-wasm/demo-app': + specifier: workspace:* + version: link:../../core/typescript/demo-app '@itk-wasm/dicom-build': specifier: workspace:* version: link:.. '@itk-wasm/image-io': specifier: workspace:* version: link:../../image-io/typescript - '@shoelace-style/shoelace': - specifier: ^2.12.0 - version: 2.12.0(@types/react@18.2.42) '@types/node': specifier: ^20.2.5 version: 20.10.3 @@ -609,6 +594,9 @@ importers: '@itk-wasm/compare-images': specifier: workspace:^ version: link:../../compare-images/typescript + '@itk-wasm/demo-app': + specifier: workspace:* + version: link:../../core/typescript/demo-app '@itk-wasm/downsample-build': specifier: workspace:^ version: link:.. @@ -618,9 +606,6 @@ importers: '@itk-wasm/mesh-io': specifier: workspace:^ version: link:../../mesh-io/typescript - '@shoelace-style/shoelace': - specifier: ^2.12.0 - version: 2.12.0(@types/react@18.2.42) '@types/node': specifier: ^20.2.5 version: 20.10.4 @@ -673,18 +658,12 @@ importers: specifier: ^2.1.35 version: 2.1.35 devDependencies: - '@itk-viewer/element': - specifier: ^0.2.12 - version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) - '@itk-viewer/io': - specifier: ^0.1.8 - version: 0.1.8 + '@itk-wasm/demo-app': + specifier: workspace:* + version: link:../../core/typescript/demo-app '@itk-wasm/image-io-build': specifier: workspace:* version: link:.. - '@shoelace-style/shoelace': - specifier: ^2.12.0 - version: 2.12.0(@types/react@18.2.42) '@types/mime-types': specifier: ^2.1.4 version: 2.1.4 @@ -740,21 +719,15 @@ importers: specifier: ^2.1.35 version: 2.1.35 devDependencies: - '@itk-viewer/element': - specifier: ^0.2.12 - version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) - '@itk-viewer/io': - specifier: ^0.1.8 - version: 0.1.8 + '@itk-wasm/demo-app': + specifier: workspace:* + version: link:../../core/typescript/demo-app '@itk-wasm/image-io': specifier: workspace:^ version: link:../../image-io/typescript '@itk-wasm/mesh-io-build': specifier: workspace:* version: link:.. - '@shoelace-style/shoelace': - specifier: ^2.12.0 - version: 2.12.0(@types/react@18.2.42) '@types/mime-types': specifier: ^2.1.4 version: 2.1.4 @@ -858,7 +831,6 @@ packages: dependencies: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - dev: true /@azure/abort-controller@1.1.0: resolution: {integrity: sha512-TrRLIoSQVzfAJX9H1JeFjzAoDGcoK1IYX1UImfceTZpsyYfWr09Ss1aHW1y5TrrR3iq6RZLBwJ3E24uwPhwahw==} @@ -975,12 +947,10 @@ packages: dependencies: '@babel/highlight': 7.23.4 chalk: 2.4.2 - dev: true /@babel/compat-data@7.23.5: resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} engines: {node: '>=6.9.0'} - dev: true /@babel/core@7.24.0: resolution: {integrity: sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==} @@ -1003,7 +973,6 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color - dev: true /@babel/generator@7.23.6: resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} @@ -1013,21 +982,18 @@ packages: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 - dev: true /@babel/helper-annotate-as-pure@7.22.5: resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 - dev: true /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 - dev: true /@babel/helper-compilation-targets@7.23.6: resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} @@ -1038,7 +1004,6 @@ packages: browserslist: 4.23.0 lru-cache: 5.1.1 semver: 6.3.1 - dev: true /@babel/helper-create-class-features-plugin@7.24.0(@babel/core@7.24.0): resolution: {integrity: sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g==} @@ -1056,7 +1021,6 @@ packages: '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 semver: 6.3.1 - dev: true /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} @@ -1068,7 +1032,6 @@ packages: '@babel/helper-annotate-as-pure': 7.22.5 regexpu-core: 5.3.2 semver: 6.3.1 - dev: true /@babel/helper-define-polyfill-provider@0.5.0(@babel/core@7.24.0): resolution: {integrity: sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==} @@ -1083,7 +1046,6 @@ packages: resolve: 1.22.8 transitivePeerDependencies: - supports-color - dev: true /@babel/helper-define-polyfill-provider@0.6.0(@babel/core@7.24.0): resolution: {integrity: sha512-efwOM90nCG6YeT8o3PCyBVSxRfmILxCNL+TNI8CGQl7a62M0Wd9VkV+XHwIlkOz1r4b+lxu6gBjdWiOMdUCrCQ==} @@ -1098,12 +1060,10 @@ packages: resolve: 1.22.8 transitivePeerDependencies: - supports-color - dev: true /@babel/helper-environment-visitor@7.22.20: resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-function-name@7.23.0: resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} @@ -1111,28 +1071,24 @@ packages: dependencies: '@babel/template': 7.24.0 '@babel/types': 7.24.0 - dev: true /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 - dev: true /@babel/helper-member-expression-to-functions@7.23.0: resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 - dev: true /@babel/helper-module-imports@7.22.15: resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 - dev: true /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} @@ -1146,19 +1102,16 @@ packages: '@babel/helper-simple-access': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 '@babel/helper-validator-identifier': 7.22.20 - dev: true /@babel/helper-optimise-call-expression@7.22.5: resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 - dev: true /@babel/helper-plugin-utils@7.24.0: resolution: {integrity: sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.24.0): resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} @@ -1170,7 +1123,6 @@ packages: '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-wrap-function': 7.22.20 - dev: true /@babel/helper-replace-supers@7.22.20(@babel/core@7.24.0): resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} @@ -1182,43 +1134,36 @@ packages: '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-member-expression-to-functions': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 - dev: true /@babel/helper-simple-access@7.22.5: resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 - dev: true /@babel/helper-skip-transparent-expression-wrappers@7.22.5: resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 - dev: true /@babel/helper-split-export-declaration@7.22.6: resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 - dev: true /@babel/helper-string-parser@7.23.4: resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-identifier@7.22.20: resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-option@7.23.5: resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-wrap-function@7.22.20: resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==} @@ -1227,7 +1172,6 @@ packages: '@babel/helper-function-name': 7.23.0 '@babel/template': 7.24.0 '@babel/types': 7.24.0 - dev: true /@babel/helpers@7.24.0: resolution: {integrity: sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==} @@ -1238,7 +1182,6 @@ packages: '@babel/types': 7.24.0 transitivePeerDependencies: - supports-color - dev: true /@babel/highlight@7.23.4: resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} @@ -1247,7 +1190,6 @@ packages: '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 - dev: true /@babel/parser@7.24.0: resolution: {integrity: sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==} @@ -1255,7 +1197,6 @@ packages: hasBin: true dependencies: '@babel/types': 7.24.0 - dev: true /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==} @@ -1265,7 +1206,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==} @@ -1277,7 +1217,6 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.24.0) - dev: true /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7(@babel/core@7.24.0): resolution: {integrity: sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw==} @@ -1288,7 +1227,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.0): resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} @@ -1297,7 +1235,6 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.0 - dev: true /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.0): resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} @@ -1306,7 +1243,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.0): resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} @@ -1315,7 +1251,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.0): resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} @@ -1325,7 +1260,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} @@ -1334,7 +1268,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} @@ -1343,7 +1276,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==} @@ -1353,7 +1285,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==} @@ -1363,7 +1294,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} @@ -1372,7 +1302,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} @@ -1381,7 +1310,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} @@ -1390,7 +1318,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} @@ -1399,7 +1326,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} @@ -1408,7 +1334,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} @@ -1417,7 +1342,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} @@ -1426,7 +1350,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} @@ -1435,7 +1358,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.0): resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} @@ -1445,7 +1367,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.0): resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} @@ -1455,7 +1376,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.0): resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} @@ -1466,7 +1386,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==} @@ -1476,7 +1395,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-async-generator-functions@7.23.9(@babel/core@7.24.0): resolution: {integrity: sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ==} @@ -1489,7 +1407,6 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==} @@ -1501,7 +1418,6 @@ packages: '@babel/helper-module-imports': 7.22.15 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==} @@ -1511,7 +1427,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==} @@ -1521,7 +1436,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==} @@ -1532,7 +1446,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==} @@ -1544,7 +1457,6 @@ packages: '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-classes@7.23.8(@babel/core@7.24.0): resolution: {integrity: sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg==} @@ -1561,7 +1473,6 @@ packages: '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) '@babel/helper-split-export-declaration': 7.22.6 globals: 11.12.0 - dev: true /@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==} @@ -1572,7 +1483,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/template': 7.24.0 - dev: true /@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==} @@ -1582,7 +1492,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==} @@ -1593,7 +1502,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==} @@ -1603,7 +1511,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==} @@ -1614,7 +1521,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==} @@ -1625,7 +1531,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==} @@ -1636,7 +1541,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-for-of@7.23.6(@babel/core@7.24.0): resolution: {integrity: sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw==} @@ -1647,7 +1551,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - dev: true /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==} @@ -1659,7 +1562,6 @@ packages: '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-function-name': 7.23.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==} @@ -1670,7 +1572,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==} @@ -1680,7 +1581,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==} @@ -1691,7 +1591,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==} @@ -1701,7 +1600,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==} @@ -1712,7 +1610,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==} @@ -1724,7 +1621,6 @@ packages: '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-simple-access': 7.22.5 - dev: true /@babel/plugin-transform-modules-systemjs@7.23.9(@babel/core@7.24.0): resolution: {integrity: sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw==} @@ -1737,7 +1633,6 @@ packages: '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-validator-identifier': 7.22.20 - dev: true /@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==} @@ -1748,7 +1643,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} @@ -1759,7 +1653,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-new-target@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==} @@ -1769,7 +1662,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==} @@ -1780,7 +1672,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==} @@ -1791,7 +1682,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-object-rest-spread@7.24.0(@babel/core@7.24.0): resolution: {integrity: sha512-y/yKMm7buHpFFXfxVFS4Vk1ToRJDilIa6fKRioB9Vjichv58TDGXTvqV0dN7plobAmTW5eSEGXDngE+Mm+uO+w==} @@ -1805,7 +1695,6 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.0) '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-object-super@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==} @@ -1816,7 +1705,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==} @@ -1827,7 +1715,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==} @@ -1839,7 +1726,6 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-parameters@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==} @@ -1849,7 +1735,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==} @@ -1860,7 +1745,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==} @@ -1873,7 +1757,6 @@ packages: '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.0) - dev: true /@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==} @@ -1883,7 +1766,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==} @@ -1894,7 +1776,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 regenerator-transform: 0.15.2 - dev: true /@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==} @@ -1904,7 +1785,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==} @@ -1914,7 +1794,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-spread@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==} @@ -1925,7 +1804,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - dev: true /@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==} @@ -1935,7 +1813,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==} @@ -1945,7 +1822,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==} @@ -1955,7 +1831,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==} @@ -1965,7 +1840,6 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==} @@ -1976,7 +1850,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==} @@ -1987,7 +1860,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==} @@ -1998,7 +1870,6 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 - dev: true /@babel/preset-env@7.24.0(@babel/core@7.24.0): resolution: {integrity: sha512-ZxPEzV9IgvGn73iK0E6VB9/95Nd7aMFpbE0l8KQFDG70cOV9IxRP7Y2FUPmlK0v6ImlLqYX50iuZ3ZTVhOF2lA==} @@ -2089,7 +1960,6 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color - dev: true /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.0): resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} @@ -2100,25 +1970,21 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/types': 7.24.0 esutils: 2.0.3 - dev: true /@babel/regjsgen@0.8.0: resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - dev: true /@babel/runtime@7.22.11: resolution: {integrity: sha512-ee7jVNlWN09+KftVOu9n7S8gQzD/Z6hN/I8VBRXW4P1+Xe7kJGXMwu8vds4aGIMHZnNbdpSWCfZZtinytpcAvA==} engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.14.0 - dev: true /@babel/runtime@7.23.5: resolution: {integrity: sha512-NdUTHcPe4C99WxPub+K9l9tK5/lV4UXIoaHSYgzco9BCyjKAAwzdBI+wWtYqHt7LJdbo74ZjRPJgzVweq1sz0w==} engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.14.0 - dev: true /@babel/template@7.24.0: resolution: {integrity: sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==} @@ -2127,7 +1993,6 @@ packages: '@babel/code-frame': 7.23.5 '@babel/parser': 7.24.0 '@babel/types': 7.24.0 - dev: true /@babel/traverse@7.24.0: resolution: {integrity: sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==} @@ -2145,7 +2010,6 @@ packages: globals: 11.12.0 transitivePeerDependencies: - supports-color - dev: true /@babel/types@7.24.0: resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==} @@ -2154,7 +2018,6 @@ packages: '@babel/helper-string-parser': 7.23.4 '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 - dev: true /@changesets/apply-release-plan@7.0.0: resolution: {integrity: sha512-vfi69JR416qC9hWmFGSxj7N6wA5J222XNBmezSVATPWDVPIF7gkd4d8CpbEbXmRWbVrkoli3oerGS6dcL/BGsQ==} @@ -2364,7 +2227,6 @@ packages: /@ctrl/tinycolor@4.0.2: resolution: {integrity: sha512-fKQinXE9pJ83J1n+C3rDl2xNLJwfoYNvXLRy5cYZA9hBJJw2q+sbb/AOSNKmLxnTWyNTmy4994dueSwP4opi5g==} engines: {node: '>=14'} - dev: true /@cypress/request@3.0.1: resolution: {integrity: sha512-TWivJlJi8ZDx2wGOw1dbLuHJKUYX7bWySw377nlnGOW3hP9/MUKIsEdXT/YngWxVdgNCHRBmFlBipE+5/2ZZlQ==} @@ -2423,7 +2285,6 @@ packages: cpu: [arm64] os: [android] requiresBuild: true - dev: true optional: true /@esbuild/android-arm@0.18.20: @@ -2450,7 +2311,6 @@ packages: cpu: [arm] os: [android] requiresBuild: true - dev: true optional: true /@esbuild/android-x64@0.18.20: @@ -2477,7 +2337,6 @@ packages: cpu: [x64] os: [android] requiresBuild: true - dev: true optional: true /@esbuild/darwin-arm64@0.18.20: @@ -2504,7 +2363,6 @@ packages: cpu: [arm64] os: [darwin] requiresBuild: true - dev: true optional: true /@esbuild/darwin-x64@0.18.20: @@ -2531,7 +2389,6 @@ packages: cpu: [x64] os: [darwin] requiresBuild: true - dev: true optional: true /@esbuild/freebsd-arm64@0.18.20: @@ -2558,7 +2415,6 @@ packages: cpu: [arm64] os: [freebsd] requiresBuild: true - dev: true optional: true /@esbuild/freebsd-x64@0.18.20: @@ -2585,7 +2441,6 @@ packages: cpu: [x64] os: [freebsd] requiresBuild: true - dev: true optional: true /@esbuild/linux-arm64@0.18.20: @@ -2612,7 +2467,6 @@ packages: cpu: [arm64] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-arm@0.18.20: @@ -2639,7 +2493,6 @@ packages: cpu: [arm] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-ia32@0.18.20: @@ -2666,7 +2519,6 @@ packages: cpu: [ia32] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-loong64@0.18.20: @@ -2693,7 +2545,6 @@ packages: cpu: [loong64] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-mips64el@0.18.20: @@ -2720,7 +2571,6 @@ packages: cpu: [mips64el] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-ppc64@0.18.20: @@ -2747,7 +2597,6 @@ packages: cpu: [ppc64] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-riscv64@0.18.20: @@ -2774,7 +2623,6 @@ packages: cpu: [riscv64] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-s390x@0.18.20: @@ -2801,7 +2649,6 @@ packages: cpu: [s390x] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-x64@0.18.20: @@ -2828,7 +2675,6 @@ packages: cpu: [x64] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/netbsd-x64@0.18.20: @@ -2855,7 +2701,6 @@ packages: cpu: [x64] os: [netbsd] requiresBuild: true - dev: true optional: true /@esbuild/openbsd-x64@0.18.20: @@ -2882,7 +2727,6 @@ packages: cpu: [x64] os: [openbsd] requiresBuild: true - dev: true optional: true /@esbuild/sunos-x64@0.18.20: @@ -2909,7 +2753,6 @@ packages: cpu: [x64] os: [sunos] requiresBuild: true - dev: true optional: true /@esbuild/win32-arm64@0.18.20: @@ -2936,7 +2779,6 @@ packages: cpu: [arm64] os: [win32] requiresBuild: true - dev: true optional: true /@esbuild/win32-ia32@0.18.20: @@ -2963,7 +2805,6 @@ packages: cpu: [ia32] os: [win32] requiresBuild: true - dev: true optional: true /@esbuild/win32-x64@0.18.20: @@ -2990,7 +2831,6 @@ packages: cpu: [x64] os: [win32] requiresBuild: true - dev: true optional: true /@eslint-community/eslint-utils@4.4.0(eslint@8.56.0): @@ -3039,18 +2879,15 @@ packages: resolution: {integrity: sha512-QgcKYwzcc8vvZ4n/5uklchy8KVdjJwcOeI+HnnTNclJjs2nYsy23DOCf+sSV1kBwD9yDAoVKCkv/gEPzgQU3Pw==} dependencies: '@floating-ui/utils': 0.1.6 - dev: true /@floating-ui/dom@1.5.3: resolution: {integrity: sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==} dependencies: '@floating-ui/core': 1.5.1 '@floating-ui/utils': 0.1.6 - dev: true /@floating-ui/utils@0.1.6: resolution: {integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==} - dev: true /@hapi/hoek@9.3.0: resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} @@ -3127,7 +2964,6 @@ packages: resolution: {integrity: sha512-TpXNoKAOtmpVVULUbytEVLyGTjgtpAuitNLXRY5Avf6+Tcsiogj7Im+a7J9Jr2Vr6lGS4fp4B6Pd1hwKotW0vw==} dependencies: gl-matrix: 3.4.3 - dev: true /@itk-viewer/blosc-zarr@0.1.3: resolution: {integrity: sha512-O8REh/T8M99ADtE0Cr17FvhJtt++8MLP6giGcAaH35gbNqpMVJeg0gI2444HQplaJ4xicoeVrU5B0ja58+OfJA==} @@ -3136,7 +2972,6 @@ packages: itk-wasm: 1.0.0-b.160 transitivePeerDependencies: - debug - dev: true /@itk-viewer/element@0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): resolution: {integrity: sha512-PGkPVqN8Sr13pgmwNOUyv3qRe2ZMOaqZdhAc3b+5NEUPO2gaA9XhUEuPIAptof5+RE3vzeo6XXuzjl/I2E1jyA==} @@ -3167,7 +3002,6 @@ packages: - utf-8-validate - webpack - wslink - dev: true /@itk-viewer/io@0.1.8: resolution: {integrity: sha512-soewY9nbLq0Z8HK2U8mdfzNZtmRPZbxcmzl7HWYdpmCu1cn5pp2y3cZsARjKTnuzsXrRr0DzfV29cBiJg21H8A==} @@ -3182,7 +3016,6 @@ packages: zod: 3.22.4 transitivePeerDependencies: - debug - dev: true /@itk-viewer/remote-viewport@0.2.11: resolution: {integrity: sha512-0JdBXWBUCCiTYGcAfpb1NDjpRbeMjomqvaYLeWn3qDSiX8UUc+8jSuOWBQ1yaGd/WVL74xaorOKMpC6zD8QcdA==} @@ -3199,7 +3032,6 @@ packages: - debug - supports-color - utf-8-validate - dev: true /@itk-viewer/utils@0.1.3: resolution: {integrity: sha512-2liw+6wvTRI/eDqPAwVmi+lPT6vj9YiAMt2qdEirc4b6Lg4WpYdsExgaYVgYM9hJpH71xo2DkIlAn7ns2pPF9A==} @@ -3207,7 +3039,6 @@ packages: itk-wasm: 1.0.0-b.160 transitivePeerDependencies: - debug - dev: true /@itk-viewer/viewer@0.2.8: resolution: {integrity: sha512-g0C/IiVxzupkU5YerZCkTSPeKbLVGA3dukZc6o/wKKO+R+0KfF8T+oWT9NqlPJENaDxG+P+lTuOEAc4Xi/ejSQ==} @@ -3218,7 +3049,6 @@ packages: xstate: 5.5.2 transitivePeerDependencies: - debug - dev: true /@itk-viewer/vtkjs@0.0.5(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): resolution: {integrity: sha512-1PPvzLgV5HrfxPDcTT8OQTH9V4nGGtC4kEOyEB3oHlKRttlprvC3ze/lXPN6F+m7ZVIx94TvaLsuARrwgccKcw==} @@ -3234,7 +3064,6 @@ packages: - debug - webpack - wslink - dev: true /@itk-wasm/dam@1.1.0: resolution: {integrity: sha512-f5uLh1cWixveehskXbHdEBUWbyv1n4bN/UVozK4apmreMP79l047f3FHiNStJQO/d/D+U4gT3KepXuQWGXD4BA==} @@ -3266,15 +3095,14 @@ packages: /@itk-wasm/htj2k@2.1.0: resolution: {integrity: sha512-22+mWgXr/LYRCqzzfIJ5il5bgYdJjPD5jiP4XXPvSgCjp48bui5zvZSkvMmXy89bJbVinUB1O6KHuB3K0MUong==} dependencies: - itk-wasm: 1.0.0-b.172 + itk-wasm: 1.0.0-b.170 transitivePeerDependencies: - debug - dev: true /@itk-wasm/mesh-to-poly-data@1.0.0: resolution: {integrity: sha512-j1vJNaNpmZG3wjt7sU8/t/cxJvIto6dlCTdl/5oNGHWNz+81g3N/fWdwR6+wafr4OuHyut83LV+0J00sGYnX4Q==} dependencies: - itk-wasm: 1.0.0-b.172 + itk-wasm: 1.0.0-b.170 transitivePeerDependencies: - debug dev: true @@ -3286,35 +3114,29 @@ packages: '@jridgewell/set-array': 1.2.1 '@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/trace-mapping': 0.3.25 - dev: true /@jridgewell/resolve-uri@3.1.2: resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} - dev: true /@jridgewell/set-array@1.2.1: resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} engines: {node: '>=6.0.0'} - dev: true /@jridgewell/source-map@0.3.5: resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} dependencies: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - dev: true /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - dev: true /@jridgewell/trace-mapping@0.3.25: resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} dependencies: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 - dev: true /@kitware/vtk.js@29.8.0(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): resolution: {integrity: sha512-gFAXmQa2X1eD2chuTDEKRS6tgg4eQNFjsfa/15yARlir/+Fn+STLllt6dBkJ4y6jrBtMHW9hwpQCZaP82PA2UQ==} @@ -3345,17 +3167,14 @@ packages: xmlbuilder2: 3.0.2 transitivePeerDependencies: - webpack - dev: true /@lit-labs/ssr-dom-shim@1.1.2: resolution: {integrity: sha512-jnOD+/+dSrfTWYfSXBXlo5l5f0q1UuJo3tkbMDCYA2lKUYq79jaxqtGEvnRoh049nt1vdo1+45RinipU6FGY2g==} - dev: true /@lit/context@1.1.0: resolution: {integrity: sha512-fCyv4dsH05wCNm3AKbB+PdYbXGJd/XT8OOwo4hVmD4COq5wOWJlQreGAMDvmHZ7osqxuu06Y4nmP6ooXpN7ErA==} dependencies: '@lit/reactive-element': 2.0.2 - dev: true /@lit/react@1.0.2(@types/react@18.2.42): resolution: {integrity: sha512-UJ5TQ46DPcJDIzyjbwbj6Iye0XcpCxL2yb03zcWq1BpWchpXS3Z0BPVhg7zDfZLF6JemPml8u/gt/+KwJ/23sg==} @@ -3363,13 +3182,11 @@ packages: '@types/react': 17 || 18 dependencies: '@types/react': 18.2.42 - dev: true /@lit/reactive-element@2.0.2: resolution: {integrity: sha512-SVOwLAWUQg3Ji1egtOt1UiFe4zdDpnWHyc5qctSceJ5XIu0Uc76YmGpIjZgx9YJ0XtdW0Jm507sDvjOu+HnB8w==} dependencies: '@lit-labs/ssr-dom-shim': 1.1.2 - dev: true /@ljharb/through@2.3.12: resolution: {integrity: sha512-ajo/heTlG3QgC8EGP6APIejksVAYt4ayz4tqoP3MolFELzcH1x1fzwEYRJTPO0IELutZ5HQ0c26/GqAYy79u3g==} @@ -3419,7 +3236,6 @@ packages: /@msgpack/msgpack@2.8.0: resolution: {integrity: sha512-h9u4u/jiIRKbq25PM+zymTyW6bhTzELvOoUd+AvYriWOAKpLGnIamaET3pnHYoI5iYphAHBI4ayx0MehR+VVPQ==} engines: {node: '>= 10'} - dev: true /@multiformats/blake2@1.0.13: resolution: {integrity: sha512-T1Kzya0wjj85CaVeRSpJ858EnSvW1pw94GSitxYf84VsNdv5XYbJ6QG8y26Ft1bVALzrUCmqkQrR53QHSyu6RA==} @@ -3474,14 +3290,12 @@ packages: '@oozcitak/infra': 1.0.8 '@oozcitak/url': 1.0.4 '@oozcitak/util': 8.3.8 - dev: true /@oozcitak/infra@1.0.8: resolution: {integrity: sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==} engines: {node: '>=6.0'} dependencies: '@oozcitak/util': 8.3.8 - dev: true /@oozcitak/url@1.0.4: resolution: {integrity: sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==} @@ -3489,12 +3303,10 @@ packages: dependencies: '@oozcitak/infra': 1.0.8 '@oozcitak/util': 8.3.8 - dev: true /@oozcitak/util@8.3.8: resolution: {integrity: sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==} engines: {node: '>=8.0'} - dev: true /@opentelemetry/api@1.7.0: resolution: {integrity: sha512-AdY5wvN0P2vXBi3b29hxZgSFvdhdxPB9+f0B6s//P9Q8nibRWeA3cHm8UmLpio9ABigkVHJ5NMPk+Mz8VCCyrw==} @@ -3654,11 +3466,9 @@ packages: /@shoelace-style/animations@1.1.0: resolution: {integrity: sha512-Be+cahtZyI2dPKRm8EZSx3YJQ+jLvEcn3xzRP7tM4tqBnvd/eW/64Xh0iOf0t2w5P8iJKfdBbpVNE9naCaOf2g==} - dev: true /@shoelace-style/localize@3.1.2: resolution: {integrity: sha512-Hf45HeO+vdQblabpyZOTxJ4ZeZsmIUYXXPmoYrrR4OJ5OKxL+bhMz5mK8JXgl7HsoEowfz7+e248UGi861de9Q==} - dev: true /@shoelace-style/shoelace@2.12.0(@types/react@18.2.42): resolution: {integrity: sha512-1Amirj0c5WLkymDcP6ZQmBfMC6zTNmGGK7/mjmGq4yhljrVaECVlBoKm0tfmo1jd3r8XJ8xYbQ8cxPAlwiDDvw==} @@ -3674,7 +3484,6 @@ packages: qr-creator: 1.0.0 transitivePeerDependencies: - '@types/react' - dev: true /@sideway/address@4.1.4: resolution: {integrity: sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==} @@ -3702,7 +3511,6 @@ packages: /@socket.io/component-emitter@3.1.0: resolution: {integrity: sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==} - dev: true /@thewtex/setup-micromamba@1.9.7: resolution: {integrity: sha512-aP+gLE3dWIidtjhvLwJPb4E/AxmCFMnJd7J3Vdsj9T0hjsPrgTreAnbLod8oetwN2ohrJ5LxKCmtGa0b+lDqbw==} @@ -3733,18 +3541,15 @@ packages: dependencies: '@types/eslint': 8.56.5 '@types/estree': 1.0.5 - dev: true /@types/eslint@8.56.5: resolution: {integrity: sha512-u5/YPJHo1tvkSF2CE0USEkxon82Z5DBy2xR+qfyYNszpX9qcs4sT6uq2kBbj4BXY1+DBGDPnrhMZV3pKWGNukw==} dependencies: '@types/estree': 1.0.5 '@types/json-schema': 7.0.15 - dev: true /@types/estree@1.0.5: resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} - dev: true /@types/figlet@1.5.8: resolution: {integrity: sha512-G22AUvy4Tl95XLE7jmUM8s8mKcoz+Hr+Xm9W90gJsppJq9f9tHvOGkrpn4gRX0q/cLtBdNkWtWCKDg2UDZoZvQ==} @@ -3759,7 +3564,6 @@ packages: /@types/json-schema@7.0.15: resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - dev: true /@types/json5@0.0.29: resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} @@ -3807,7 +3611,6 @@ packages: /@types/prop-types@15.7.11: resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==} - dev: true /@types/react@18.2.42: resolution: {integrity: sha512-c1zEr96MjakLYus/wPnuWDo1/zErfdU9rNsIGmE+NV71nx88FG9Ttgo5dqorXTu/LImX2f63WBP986gJkMPNbA==} @@ -3815,11 +3618,9 @@ packages: '@types/prop-types': 15.7.11 '@types/scheduler': 0.16.8 csstype: 3.1.2 - dev: true /@types/scheduler@0.16.8: resolution: {integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==} - dev: true /@types/semver@7.5.6: resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==} @@ -3841,7 +3642,6 @@ packages: /@types/trusted-types@2.0.7: resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} - dev: true /@types/tunnel@0.0.3: resolution: {integrity: sha512-sOUTGn6h1SfQ+gbgqC364jLFBw2lnFqkgF3q0WovEHRLMrVD1sd5aufqi/aJObLekJO+Aq5z646U4Oxy6shXMA==} @@ -3855,7 +3655,6 @@ packages: /@types/webxr@0.5.14: resolution: {integrity: sha512-UEMMm/Xn3DtEa+gpzUrOcDj+SJS1tk5YodjwOxcqStNhCfPcwgyC5Srg2ToVKyg2Fhq16Ffpb0UWUQHqoT9AMA==} - dev: true /@types/yauzl@2.10.3: resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} @@ -4039,19 +3838,15 @@ packages: dependencies: '@webassemblyjs/helper-numbers': 1.11.6 '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - dev: true /@webassemblyjs/floating-point-hex-parser@1.11.6: resolution: {integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==} - dev: true /@webassemblyjs/helper-api-error@1.11.6: resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==} - dev: true /@webassemblyjs/helper-buffer@1.11.6: resolution: {integrity: sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==} - dev: true /@webassemblyjs/helper-numbers@1.11.6: resolution: {integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==} @@ -4059,11 +3854,9 @@ packages: '@webassemblyjs/floating-point-hex-parser': 1.11.6 '@webassemblyjs/helper-api-error': 1.11.6 '@xtuc/long': 4.2.2 - dev: true /@webassemblyjs/helper-wasm-bytecode@1.11.6: resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==} - dev: true /@webassemblyjs/helper-wasm-section@1.11.6: resolution: {integrity: sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==} @@ -4072,23 +3865,19 @@ packages: '@webassemblyjs/helper-buffer': 1.11.6 '@webassemblyjs/helper-wasm-bytecode': 1.11.6 '@webassemblyjs/wasm-gen': 1.11.6 - dev: true /@webassemblyjs/ieee754@1.11.6: resolution: {integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==} dependencies: '@xtuc/ieee754': 1.2.0 - dev: true /@webassemblyjs/leb128@1.11.6: resolution: {integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==} dependencies: '@xtuc/long': 4.2.2 - dev: true /@webassemblyjs/utf8@1.11.6: resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==} - dev: true /@webassemblyjs/wasm-edit@1.11.6: resolution: {integrity: sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==} @@ -4101,7 +3890,6 @@ packages: '@webassemblyjs/wasm-opt': 1.11.6 '@webassemblyjs/wasm-parser': 1.11.6 '@webassemblyjs/wast-printer': 1.11.6 - dev: true /@webassemblyjs/wasm-gen@1.11.6: resolution: {integrity: sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==} @@ -4111,7 +3899,6 @@ packages: '@webassemblyjs/ieee754': 1.11.6 '@webassemblyjs/leb128': 1.11.6 '@webassemblyjs/utf8': 1.11.6 - dev: true /@webassemblyjs/wasm-opt@1.11.6: resolution: {integrity: sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==} @@ -4120,7 +3907,6 @@ packages: '@webassemblyjs/helper-buffer': 1.11.6 '@webassemblyjs/wasm-gen': 1.11.6 '@webassemblyjs/wasm-parser': 1.11.6 - dev: true /@webassemblyjs/wasm-parser@1.11.6: resolution: {integrity: sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==} @@ -4131,22 +3917,18 @@ packages: '@webassemblyjs/ieee754': 1.11.6 '@webassemblyjs/leb128': 1.11.6 '@webassemblyjs/utf8': 1.11.6 - dev: true /@webassemblyjs/wast-printer@1.11.6: resolution: {integrity: sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==} dependencies: '@webassemblyjs/ast': 1.11.6 '@xtuc/long': 4.2.2 - dev: true /@xtuc/ieee754@1.2.0: resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} - dev: true /@xtuc/long@4.2.2: resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} - dev: true /abbrev@1.1.1: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} @@ -4165,7 +3947,6 @@ packages: acorn: ^8 dependencies: acorn: 8.11.2 - dev: true /acorn-jsx@5.3.2(acorn@8.11.2): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -4184,7 +3965,6 @@ packages: resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==} engines: {node: '>=0.4.0'} hasBin: true - dev: true /actor@2.3.1: resolution: {integrity: sha512-ST/3wnvcP2tKDXnum7nLCLXm+/rsf8vPocXH2Fre6D8FQwNkGDd4JEitBlXj007VQJfiGYRQvXqwOBZVi+JtRg==} @@ -4212,7 +3992,6 @@ packages: ajv: ^6.9.1 dependencies: ajv: 6.12.6 - dev: true /ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} @@ -4221,7 +4000,6 @@ packages: fast-json-stable-stringify: 2.1.0 json-schema-traverse: 0.4.1 uri-js: 4.4.1 - dev: true /ansi-colors@4.1.3: resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} @@ -4248,7 +4026,6 @@ packages: engines: {node: '>=4'} dependencies: color-convert: 1.9.3 - dev: true /ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} @@ -4293,7 +4070,6 @@ packages: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} dependencies: sprintf-js: 1.0.3 - dev: true /argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} @@ -4458,7 +4234,6 @@ packages: picocolors: 1.0.0 postcss: 8.4.32 postcss-value-parser: 4.2.0 - dev: true /ava@6.1.0: resolution: {integrity: sha512-0fOQIWMHT9DYelzTYc3TI/4fmmmJ5LdvRWd6F43CppYfg84VrM5EO+hmlv2cPujMJAWuVesUWVloUu9PIwrgTA==} @@ -4545,7 +4320,6 @@ packages: proxy-from-env: 1.1.0 transitivePeerDependencies: - debug - dev: true /babel-plugin-polyfill-corejs2@0.4.9(@babel/core@7.24.0): resolution: {integrity: sha512-BXIWIaO3MewbXWdJdIGDWZurv5OGJlFNo7oy20DpB3kWDVJLcY2NRypRsRUbRe5KMqSNLuOGnWTFQQtY5MAsRw==} @@ -4558,7 +4332,6 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color - dev: true /babel-plugin-polyfill-corejs3@0.9.0(@babel/core@7.24.0): resolution: {integrity: sha512-7nZPG1uzK2Ymhy/NbaOWTg3uibM2BmGASS4vHS4szRZAIR8R6GwA/xAujpdrXU5iyklrimWnLWU+BLF9suPTqg==} @@ -4570,7 +4343,6 @@ packages: core-js-compat: 3.36.0 transitivePeerDependencies: - supports-color - dev: true /babel-plugin-polyfill-regenerator@0.5.5(@babel/core@7.24.0): resolution: {integrity: sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg==} @@ -4581,7 +4353,6 @@ packages: '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.24.0) transitivePeerDependencies: - supports-color - dev: true /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -4611,7 +4382,6 @@ packages: /big.js@5.2.2: resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} - dev: true /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} @@ -4658,7 +4428,6 @@ packages: dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 - dev: true /brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} @@ -4687,7 +4456,6 @@ packages: electron-to-chromium: 1.4.700 node-releases: 2.0.14 update-browserslist-db: 1.0.13(browserslist@4.23.0) - dev: true /buffer-alloc-unsafe@1.1.0: resolution: {integrity: sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==} @@ -4706,7 +4474,6 @@ packages: /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - dev: true /buffer@5.7.1: resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} @@ -4757,7 +4524,6 @@ packages: /caniuse-lite@1.0.30001597: resolution: {integrity: sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w==} - dev: true /caseless@0.12.0: resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} @@ -4781,7 +4547,6 @@ packages: ansi-styles: 3.2.1 escape-string-regexp: 1.0.5 supports-color: 5.5.0 - dev: true /chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} @@ -4829,7 +4594,6 @@ packages: /chrome-trace-event@1.0.3: resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} engines: {node: '>=6.0'} - dev: true /chunkd@2.0.1: resolution: {integrity: sha512-7d58XsFmOq0j6el67Ug9mHf9ELUXsQXYJBkyxhH/k+6Ke0qXRnv0kbemx+Twc6fRJ07C49lcbdgm9FL1Ei/6SQ==} @@ -4927,7 +4691,6 @@ packages: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: color-name: 1.1.3 - dev: true /color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} @@ -4937,7 +4700,6 @@ packages: /color-name@1.1.3: resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - dev: true /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} @@ -4984,7 +4746,6 @@ packages: /commander@9.2.0: resolution: {integrity: sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==} engines: {node: ^12.20.0 || >=14} - dev: true /common-path-prefix@3.0.0: resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==} @@ -5004,11 +4765,9 @@ packages: /composed-offset-position@0.0.4: resolution: {integrity: sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==} - dev: true /concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - dev: true /concordance@5.0.4: resolution: {integrity: sha512-OAcsnTEYu1ARJqWVGwf4zh4JDfHZEaSNlNccFmt8YjB2l/n19/PF2viLINHc57vO4FKIAFl2FWASIGZZWZ2Kxw==} @@ -5053,7 +4812,6 @@ packages: /convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - dev: true /convert-to-spaces@2.0.1: resolution: {integrity: sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==} @@ -5064,7 +4822,6 @@ packages: resolution: {integrity: sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw==} dependencies: browserslist: 4.23.0 - dev: true /core-util-is@1.0.2: resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} @@ -5093,7 +4850,6 @@ packages: /csstype@3.1.2: resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} - dev: true /csv-generate@3.4.3: resolution: {integrity: sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==} @@ -5179,24 +4935,20 @@ packages: engines: {node: '>=12'} dependencies: internmap: 2.0.3 - dev: true /d3-color@3.1.0: resolution: {integrity: sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==} engines: {node: '>=12'} - dev: true /d3-format@3.1.0: resolution: {integrity: sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==} engines: {node: '>=12'} - dev: true /d3-interpolate@3.0.1: resolution: {integrity: sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==} engines: {node: '>=12'} dependencies: d3-color: 3.1.0 - dev: true /d3-scale@4.0.2: resolution: {integrity: sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==} @@ -5207,21 +4959,18 @@ packages: d3-interpolate: 3.0.1 d3-time: 3.1.0 d3-time-format: 4.1.0 - dev: true /d3-time-format@4.1.0: resolution: {integrity: sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==} engines: {node: '>=12'} dependencies: d3-time: 3.1.0 - dev: true /d3-time@3.1.0: resolution: {integrity: sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==} engines: {node: '>=12'} dependencies: d3-array: 3.2.4 - dev: true /dashdash@1.14.1: resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==} @@ -5356,7 +5105,6 @@ packages: define-data-property: 1.1.1 has-property-descriptors: 1.0.1 object-keys: 1.1.1 - dev: true /delayed-stream@1.0.0: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} @@ -5417,7 +5165,6 @@ packages: /electron-to-chromium@1.4.700: resolution: {integrity: sha512-40dqKQ3F7C8fbBEmjSeJ+qEHCKzPyrP9SkeIBZ3wSCUH9nhWStrDz030XlDzlhNhlul1Z0fz7TpDFnsIzo4Jtg==} - dev: true /emittery@1.0.1: resolution: {integrity: sha512-2ID6FdrMD9KDLldGesP6317G78K7km/kMcwItRtVFva7I/cSEOIaLpewaUb+YLXVwdAp3Ctfxh/V5zIl1sj7dQ==} @@ -5438,7 +5185,6 @@ packages: /emojis-list@3.0.0: resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} engines: {node: '>= 4'} - dev: true /end-of-stream@1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} @@ -5457,12 +5203,10 @@ packages: - bufferutil - supports-color - utf-8-validate - dev: true /engine.io-parser@5.2.2: resolution: {integrity: sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==} engines: {node: '>=10.0.0'} - dev: true /enhanced-resolve@5.16.0: resolution: {integrity: sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==} @@ -5470,7 +5214,6 @@ packages: dependencies: graceful-fs: 4.2.11 tapable: 2.2.1 - dev: true /enquirer@2.4.1: resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} @@ -5555,7 +5298,6 @@ packages: /es-module-lexer@1.4.1: resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==} - dev: true /es-set-tostringtag@2.0.2: resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==} @@ -5669,12 +5411,10 @@ packages: '@esbuild/win32-arm64': 0.19.9 '@esbuild/win32-ia32': 0.19.9 '@esbuild/win32-x64': 0.19.9 - dev: true /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} - dev: true /escape-string-regexp@1.0.5: resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} @@ -5898,7 +5638,6 @@ packages: dependencies: esrecurse: 4.3.0 estraverse: 4.3.0 - dev: true /eslint-scope@7.2.2: resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} @@ -6000,7 +5739,6 @@ packages: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} engines: {node: '>=4'} hasBin: true - dev: true /esquery@1.5.0: resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} @@ -6014,17 +5752,14 @@ packages: engines: {node: '>=4.0'} dependencies: estraverse: 5.3.0 - dev: true /estraverse@4.3.0: resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} engines: {node: '>=4.0'} - dev: true /estraverse@5.3.0: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} - dev: true /estree-walker@2.0.2: resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} @@ -6033,7 +5768,6 @@ packages: /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} - dev: true /event-stream@3.3.4: resolution: {integrity: sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g==} @@ -6066,7 +5800,6 @@ packages: /events@3.3.0: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} engines: {node: '>=0.8.x'} - dev: true /execa@4.1.0: resolution: {integrity: sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==} @@ -6142,7 +5875,6 @@ packages: /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - dev: true /fast-diff@1.3.0: resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} @@ -6161,7 +5893,6 @@ packages: /fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - dev: true /fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} @@ -6180,7 +5911,6 @@ packages: /fflate@0.7.3: resolution: {integrity: sha512-0Zz1jOzJWERhyhsimS54VTqOteCNwRtIlh8isdL0AXLo0g7xNTfTL7oWrkmCnPhZGocKIkWHBistBrrpoNH3aw==} - dev: true /figlet@1.7.0: resolution: {integrity: sha512-gO8l3wvqo0V7wEFLXPbkX83b7MVjRrk1oRLfYlZXol8nEpb/ON9pcKLI4qpBv5YtOTfrINtqb7b40iYY2FTWFg==} @@ -6312,7 +6042,6 @@ packages: peerDependenciesMeta: debug: optional: true - dev: true /for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} @@ -6356,7 +6085,6 @@ packages: /fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} - dev: true /from@0.1.7: resolution: {integrity: sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==} @@ -6453,7 +6181,6 @@ packages: /gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} - dev: true /get-caller-file@2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} @@ -6519,7 +6246,6 @@ packages: /gl-matrix@3.4.3: resolution: {integrity: sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==} - dev: true /glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} @@ -6537,7 +6263,6 @@ packages: /glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - dev: true /glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} @@ -6548,7 +6273,6 @@ packages: minimatch: 3.1.2 once: 1.4.0 path-is-absolute: 1.0.1 - dev: true /glob@8.1.0: resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} @@ -6570,7 +6294,6 @@ packages: /globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - dev: true /globals@13.23.0: resolution: {integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==} @@ -6584,7 +6307,6 @@ packages: engines: {node: '>= 0.4'} dependencies: define-properties: 1.2.1 - dev: true /globby@11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} @@ -6645,7 +6367,6 @@ packages: /has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} engines: {node: '>=4'} - dev: true /has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} @@ -6799,7 +6520,6 @@ packages: - bufferutil - supports-color - utf-8-validate - dev: true /import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} @@ -6880,12 +6600,10 @@ packages: /internmap@2.0.3: resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} engines: {node: '>=12'} - dev: true /interpret@1.4.0: resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} engines: {node: '>= 0.10'} - dev: true /ipfs-car@1.0.0: resolution: {integrity: sha512-a13H5BbI+d3oicRYsVj8m15B6QEw9hV3qR+RxSni0Rxcv82m8EmdH0vUtrpdXVp1Gvc/vcnEXecQ+oRTqMcVSQ==} @@ -6995,7 +6713,6 @@ packages: resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} dependencies: hasown: 2.0.0 - dev: true /is-date-object@1.0.5: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} @@ -7278,10 +6995,9 @@ packages: wasm-feature-detect: 1.6.1 transitivePeerDependencies: - debug - dev: true - /itk-wasm@1.0.0-b.172: - resolution: {integrity: sha512-Y07MLumv+C+ZdvEp5rUeiCgQ6m3awVX80a3fCPIZjDt+FAVdP+KNyqy7/1zWSbJtiGY31j4w/QCFR6x+BghHWw==} + /itk-wasm@1.0.0-b.170: + resolution: {integrity: sha512-FoU9Ccr2EKhMIlYlZs6k+4f8TmnjxTfG9KLSZBJdRakFoAAI4lx6/C0cw9C9ht7cOChg1OYZJdpZvkZKUPUSQg==} hasBin: true dependencies: '@itk-wasm/dam': 1.1.1 @@ -7298,7 +7014,6 @@ packages: wasm-feature-detect: 1.6.1 transitivePeerDependencies: - debug - dev: true /jest-worker@27.5.1: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} @@ -7307,7 +7022,6 @@ packages: '@types/node': 20.11.16 merge-stream: 2.0.0 supports-color: 8.1.1 - dev: true /joi@17.11.0: resolution: {integrity: sha512-NgB+lZLNoqISVy1rZocE9PZI36bL/77ie924Ri43yEvi9GUUMPeyVIr8KdFTMUlby1p0PBYMk9spIxEUQYqrJQ==} @@ -7329,7 +7043,6 @@ packages: /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - dev: true /js-yaml@3.14.0: resolution: {integrity: sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==} @@ -7337,7 +7050,6 @@ packages: dependencies: argparse: 1.0.10 esprima: 4.0.1 - dev: true /js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} @@ -7361,13 +7073,11 @@ packages: /jsesc@0.5.0: resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} hasBin: true - dev: true /jsesc@2.5.2: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} hasBin: true - dev: true /json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} @@ -7379,11 +7089,9 @@ packages: /json-parse-even-better-errors@2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - dev: true /json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - dev: true /json-schema@0.4.0: resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} @@ -7402,13 +7110,11 @@ packages: hasBin: true dependencies: minimist: 1.2.8 - dev: true /json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} hasBin: true - dev: true /jsonfile@4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} @@ -7502,13 +7208,11 @@ packages: '@lit-labs/ssr-dom-shim': 1.1.2 '@lit/reactive-element': 2.0.2 lit-html: 3.1.0 - dev: true /lit-html@3.1.0: resolution: {integrity: sha512-FwAjq3iNsaO6SOZXEIpeROlJLUlrbyMkn4iuv4f4u1H40Jw8wkeR/OUXZUHUoiYabGk8Y4Y0F/rgq+R4MrOLmA==} dependencies: '@types/trusted-types': 2.0.7 - dev: true /lit@3.1.0: resolution: {integrity: sha512-rzo/hmUqX8zmOdamDAeydfjsGXbbdtAFqMhmocnh2j9aDYqbu0fjXygjCa0T99Od9VQ/2itwaGrjZz/ZELVl7w==} @@ -7516,7 +7220,6 @@ packages: '@lit/reactive-element': 2.0.2 lit-element: 4.0.2 lit-html: 3.1.0 - dev: true /load-json-file@5.3.0: resolution: {integrity: sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==} @@ -7547,7 +7250,6 @@ packages: /loader-runner@4.3.0: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} - dev: true /loader-utils@1.4.2: resolution: {integrity: sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==} @@ -7556,7 +7258,6 @@ packages: big.js: 5.2.2 emojis-list: 3.0.0 json5: 1.0.2 - dev: true /loader-utils@2.0.4: resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} @@ -7565,7 +7266,6 @@ packages: big.js: 5.2.2 emojis-list: 3.0.0 json5: 2.2.3 - dev: true /locate-path@3.0.0: resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} @@ -7598,7 +7298,6 @@ packages: /lodash.debounce@4.0.8: resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} - dev: true /lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} @@ -7653,7 +7352,6 @@ packages: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: yallist: 3.1.1 - dev: true /lru-cache@6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} @@ -7731,7 +7429,6 @@ packages: /merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - dev: true /merge2@1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} @@ -7780,7 +7477,6 @@ packages: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: brace-expansion: 1.1.11 - dev: true /minimatch@5.1.6: resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} @@ -7868,7 +7564,6 @@ packages: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - dev: true /natural-compare-lite@1.4.0: resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} @@ -7880,7 +7575,6 @@ packages: /neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - dev: true /node-emoji@2.1.3: resolution: {integrity: sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==} @@ -7911,7 +7605,6 @@ packages: /node-releases@2.0.14: resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} - dev: true /nofilter@3.1.0: resolution: {integrity: sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==} @@ -7943,7 +7636,6 @@ packages: /normalize-range@0.1.2: resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} engines: {node: '>=0.10.0'} - dev: true /npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} @@ -7971,7 +7663,6 @@ packages: /object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} - dev: true /object.assign@4.1.5: resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} @@ -8171,7 +7862,6 @@ packages: dependencies: eventemitter3: 5.0.1 p-timeout: 6.1.2 - dev: true /p-timeout@5.1.0: resolution: {integrity: sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==} @@ -8180,7 +7870,6 @@ packages: /p-timeout@6.1.2: resolution: {integrity: sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==} engines: {node: '>=14.16'} - dev: true /p-try@2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} @@ -8243,7 +7932,6 @@ packages: /path-is-absolute@1.0.1: resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} - dev: true /path-key@3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} @@ -8252,7 +7940,6 @@ packages: /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - dev: true /path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} @@ -8279,7 +7966,6 @@ packages: /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - dev: true /picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} @@ -8357,7 +8043,6 @@ packages: /postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - dev: true /postcss@8.4.32: resolution: {integrity: sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==} @@ -8366,7 +8051,6 @@ packages: nanoid: 3.3.7 picocolors: 1.0.0 source-map-js: 1.0.2 - dev: true /preferred-pm@3.1.2: resolution: {integrity: sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==} @@ -8492,11 +8176,9 @@ packages: /punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} - dev: true /qr-creator@1.0.0: resolution: {integrity: sha512-C0cqfbS1P5hfqN4NhsYsUXePlk9BO+a45bAQ3xLYjBL3bOIFzoVEjs79Fado9u9BPBD3buHi3+vY+C8tHh4qMQ==} - dev: true /qs@6.10.4: resolution: {integrity: sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==} @@ -8524,7 +8206,6 @@ packages: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} dependencies: safe-buffer: 5.2.1 - dev: true /react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} @@ -8590,7 +8271,6 @@ packages: engines: {node: '>= 0.10'} dependencies: resolve: 1.22.8 - dev: true /redent@3.0.0: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} @@ -8617,21 +8297,17 @@ packages: engines: {node: '>=4'} dependencies: regenerate: 1.4.2 - dev: true /regenerate@1.4.2: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} - dev: true /regenerator-runtime@0.14.0: resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} - dev: true /regenerator-transform@0.15.2: resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} dependencies: '@babel/runtime': 7.23.5 - dev: true /regexp.prototype.flags@1.5.1: resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} @@ -8657,14 +8333,12 @@ packages: regjsparser: 0.9.1 unicode-match-property-ecmascript: 2.0.0 unicode-match-property-value-ecmascript: 2.1.0 - dev: true /regjsparser@0.9.1: resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} hasBin: true dependencies: jsesc: 0.5.0 - dev: true /request-progress@3.0.0: resolution: {integrity: sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==} @@ -8708,7 +8382,6 @@ packages: is-core-module: 2.13.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - dev: true /resolve@2.0.0-next.5: resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} @@ -8831,7 +8504,6 @@ packages: '@types/json-schema': 7.0.15 ajv: 6.12.6 ajv-keywords: 3.5.2(ajv@6.12.6) - dev: true /secure-compare@3.0.1: resolution: {integrity: sha512-AckIIV90rPDcBcglUwXPF3kg0P0qmPsPXAj6BBEENQE1p5yA1xfmDJzfi1Tappj37Pv2mVbKpL3Z1T+Nn7k1Qw==} @@ -8839,7 +8511,6 @@ packages: /seedrandom@3.0.5: resolution: {integrity: sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==} - dev: true /seek-bzip@1.0.6: resolution: {integrity: sha512-e1QtP3YL5tWww8uKaOCQ18UxIT2laNBXHjV/S2WYCiK4udiv8lkG89KRIoCjUagnAmCBurjF4zEVX2ByBbnCjQ==} @@ -8855,7 +8526,6 @@ packages: /semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - dev: true /semver@7.5.4: resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} @@ -8875,7 +8545,6 @@ packages: resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} dependencies: randombytes: 2.1.0 - dev: true /set-blocking@2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} @@ -8903,7 +8572,6 @@ packages: resolution: {integrity: sha512-dt8F9K0x4rjmaFyHh7rNDfpt4LUiR64zhNIEwp2WbE99B3z4ALuvvmhftkElg93dUD6sTmv/aXa/z9SJiEddcA==} dependencies: loader-utils: 1.4.2 - dev: true /shebang-command@1.2.0: resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} @@ -8941,7 +8609,6 @@ packages: glob: 7.2.3 interpret: 1.4.0 rechoir: 0.6.2 - dev: true /shx@0.3.4: resolution: {integrity: sha512-N6A9MLVqjxZYcVn8hLmtneQWIJtp8IKzMP4eMnx+nqkvXoqinUPCbUFLp2UcWTEIUONhlk0ewxr/jaVGlc+J+g==} @@ -9035,7 +8702,6 @@ packages: - bufferutil - supports-color - utf-8-validate - dev: true /socket.io-parser@4.2.4: resolution: {integrity: sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==} @@ -9045,28 +8711,23 @@ packages: debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color - dev: true /source-map-js@1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} - dev: true /source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} dependencies: buffer-from: 1.1.2 source-map: 0.6.1 - dev: true /source-map@0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} - dev: true /spark-md5@3.0.2: resolution: {integrity: sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==} - dev: true /sparse-array@1.3.2: resolution: {integrity: sha512-ZT711fePGn3+kQyLuv1fpd3rNSkNF8vd5Kv2D+qnOANeyKs3fx6bUMGWRPvgTTcYV64QMqZKZwcuaQSP3AZ0tg==} @@ -9112,7 +8773,6 @@ packages: /sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} - dev: true /sshpk@1.18.0: resolution: {integrity: sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==} @@ -9190,7 +8850,6 @@ packages: dependencies: inherits: 2.0.4 readable-stream: 3.6.2 - dev: true /stream-combiner@0.0.4: resolution: {integrity: sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==} @@ -9320,7 +8979,6 @@ packages: engines: {node: '>=4'} dependencies: has-flag: 3.0.0 - dev: true /supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} @@ -9337,12 +8995,10 @@ packages: /supports-preserve-symlinks-flag@1.0.0: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} - dev: true /tapable@2.2.1: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} - dev: true /tar-stream@1.6.2: resolution: {integrity: sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==} @@ -9400,7 +9056,6 @@ packages: serialize-javascript: 6.0.2 terser: 5.29.1 webpack: 5.90.3(esbuild@0.19.9) - dev: true /terser@5.29.1: resolution: {integrity: sha512-lZQ/fyaIGxsbGxApKmoPTODIzELy3++mXhS5hOqaAWZjQtpq/hFHAc+rm29NND1rYRxRWKcjuARNwULNXa5RtQ==} @@ -9411,7 +9066,6 @@ packages: acorn: 8.11.2 commander: 2.20.3 source-map-support: 0.5.21 - dev: true /text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} @@ -9448,7 +9102,6 @@ packages: /to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} - dev: true /to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} @@ -9697,7 +9350,6 @@ packages: /unicode-canonical-property-names-ecmascript@2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} - dev: true /unicode-emoji-modifier-base@1.0.0: resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} @@ -9710,17 +9362,14 @@ packages: dependencies: unicode-canonical-property-names-ecmascript: 2.0.0 unicode-property-aliases-ecmascript: 2.1.0 - dev: true /unicode-match-property-value-ecmascript@2.1.0: resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} engines: {node: '>=4'} - dev: true /unicode-property-aliases-ecmascript@2.1.0: resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} engines: {node: '>=4'} - dev: true /unicorn-magic@0.1.0: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} @@ -9767,13 +9416,11 @@ packages: browserslist: 4.23.0 escalade: 3.1.1 picocolors: 1.0.0 - dev: true /uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: punycode: 2.3.1 - dev: true /url-join@4.0.1: resolution: {integrity: sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==} @@ -10024,7 +9671,6 @@ packages: dependencies: glob-to-regexp: 0.4.1 graceful-fs: 4.2.11 - dev: true /wcwidth@1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} @@ -10042,7 +9688,6 @@ packages: /webpack-sources@3.2.3: resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} engines: {node: '>=10.13.0'} - dev: true /webpack@5.90.3(esbuild@0.19.9): resolution: {integrity: sha512-h6uDYlWCctQRuXBs1oYpVe6sFcWedl0dpcVaTf/YF67J9bKvwJajFulMVSYKHrksMB3I/pIagRzDxwxkebuzKA==} @@ -10082,11 +9727,9 @@ packages: - '@swc/core' - esbuild - uglify-js - dev: true /webworker-promise@0.5.0: resolution: {integrity: sha512-14iR79jHAV7ozwvbfif+3wCaApT3I1g8Lo0rJZrwAu6wxZGx/08Y8KXz6as6ZLNUEEufeiEBBYrqyDBClXOsEw==} - dev: true /well-known-symbols@2.0.0: resolution: {integrity: sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q==} @@ -10205,7 +9848,6 @@ packages: loader-utils: 2.0.4 schema-utils: 3.3.0 webpack: 5.90.3(esbuild@0.19.9) - dev: true /wrap-ansi@6.2.0: resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} @@ -10246,13 +9888,11 @@ packages: optional: true utf-8-validate: optional: true - dev: true /wslink@1.12.4: resolution: {integrity: sha512-4AJtHZ0qtBa7zOp0e3R5OJxQ6HY9eo+jDPcjms6E2ChXgQ5D4hlMynFF8mEFXx54+PmLo8f2DMiM9bxN6QTAjg==} dependencies: json5: 2.2.3 - dev: true /xdg-basedir@4.0.0: resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==} @@ -10276,7 +9916,6 @@ packages: '@oozcitak/util': 8.3.8 '@types/node': 20.11.16 js-yaml: 3.14.0 - dev: true /xmlbuilder@11.0.1: resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==} @@ -10286,7 +9925,6 @@ packages: /xmlhttprequest-ssl@2.0.0: resolution: {integrity: sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==} engines: {node: '>=0.4.0'} - dev: true /xstate-lit@2.0.5(@lit/context@1.1.0)(lit@3.1.0)(xstate@5.5.2): resolution: {integrity: sha512-XThgLbeJiii3eQvmF+lnxas+6OZB3EbZQ6qBD3uHql5OdTEktDz52pGIFCMqqGNLIsaR5xRIteN1w9VR1XqWBw==} @@ -10298,11 +9936,9 @@ packages: '@lit/context': 1.1.0 lit: 3.1.0 xstate: 5.5.2 - dev: true /xstate@5.5.2: resolution: {integrity: sha512-RLf9wc5HDO0pvj2TQQ+lY6tDW8CU8Entfgmtzzo6NhkC8qOEBXSN6WUSvnUM7NHZgdih06+by1b4nbaHVu1c+g==} - dev: true /xstate@5.8.0: resolution: {integrity: sha512-YoJDJFRmmXcI6ZrL7H15Ew2Q5HjM/X3zcz1cqLT4OEeF/ktXDkWMGyIZOOMItM5ELR6sSqm1GY5el11M/JAb/A==} @@ -10327,7 +9963,6 @@ packages: /yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - dev: true /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} @@ -10393,4 +10028,3 @@ packages: /zod@3.22.4: resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} - dev: true From 3642a9ef5fdcdce40c67934d3df831255d3cf7c3 Mon Sep 17 00:00:00 2001 From: Paul Elliott Date: Sat, 30 Mar 2024 13:41:41 -0400 Subject: [PATCH 4/8] chore(read-image-dicom-file-series-controller): fix download output image --- .../compare-double-images-controller.ts | 8 +- .../demo-app/vector-magnitude-controller.ts | 5 +- .../core/typescript/demo-app/package.json | 5 +- .../core/typescript/demo-app/src/demo-app.js | 43 +-- .../demo-app/src/itk-image-details.js | 67 ++++ .../demo/input-parameters-demo-html.js | 6 +- .../demo/input-parameters-demo-typescript.js | 2 +- .../typescript/demo/output-demo-html.js | 3 +- .../demo/output-demo-run-typescript.js | 5 +- ...-presentation-state-to-image-controller.ts | 3 +- .../test/browser/demo-app/index.html | 4 +- ...read-image-dicom-file-series-controller.ts | 11 +- packages/downsample/typescript/package.json | 2 - .../downsample-bin-shrink-controller.ts | 5 +- .../browser/demo-app/downsample-controller.ts | 5 +- .../downsample-label-image-controller.ts | 5 +- .../test/browser/demo-app/index.html | 12 +- packages/image-io/typescript/.gitignore | 2 +- .../demo-app/bio-rad-read-image-controller.ts | 4 +- .../demo-app/bmp-read-image-controller.ts | 4 +- .../demo-app/fdf-read-image-controller.ts | 4 +- .../demo-app/gdcm-read-image-controller.ts | 4 +- .../demo-app/ge-adw-read-image-controller.ts | 4 +- .../demo-app/ge4-read-image-controller.ts | 4 +- .../demo-app/ge5-read-image-controller.ts | 4 +- .../demo-app/gipl-read-image-controller.ts | 4 +- .../demo-app/hdf5-read-image-controller.ts | 4 +- .../test/browser/demo-app/index.html | 48 +-- .../demo-app/jpeg-read-image-controller.ts | 4 +- .../demo-app/lsm-read-image-controller.ts | 4 +- .../demo-app/meta-read-image-controller.ts | 4 +- .../demo-app/mgh-read-image-controller.ts | 4 +- .../demo-app/minc-read-image-controller.ts | 4 +- .../demo-app/mrc-read-image-controller.ts | 4 +- .../demo-app/nifti-read-image-controller.ts | 4 +- .../demo-app/nrrd-read-image-controller.ts | 4 +- .../demo-app/png-read-image-controller.ts | 4 +- .../browser/demo-app/read-image-controller.ts | 3 +- .../demo-app/scanco-read-image-controller.ts | 4 +- .../demo-app/tiff-read-image-controller.ts | 4 +- .../demo-app/vtk-read-image-controller.ts | 4 +- .../demo-app/wasm-read-image-controller.ts | 4 +- .../wasm-zstd-read-image-controller.ts | 4 +- .../demo-app/byu-read-mesh-controller.ts | 2 +- .../free-surfer-ascii-read-mesh-controller.ts | 2 +- ...free-surfer-binary-read-mesh-controller.ts | 2 +- .../demo-app/obj-read-mesh-controller.ts | 2 +- .../demo-app/off-read-mesh-controller.ts | 2 +- .../demo-app/stl-read-mesh-controller.ts | 2 +- .../demo-app/swc-read-mesh-controller.ts | 2 +- .../vtk-poly-data-read-mesh-controller.ts | 2 +- .../demo-app/wasm-read-mesh-controller.ts | 2 +- pnpm-lock.yaml | 326 ++++++++++++++++-- 53 files changed, 486 insertions(+), 194 deletions(-) create mode 100644 packages/core/typescript/demo-app/src/itk-image-details.js diff --git a/packages/compare-images/typescript/test/browser/demo-app/compare-double-images-controller.ts b/packages/compare-images/typescript/test/browser/demo-app/compare-double-images-controller.ts index 93032840a..1d82f4772 100644 --- a/packages/compare-images/typescript/test/browser/demo-app/compare-double-images-controller.ts +++ b/packages/compare-images/typescript/test/browser/demo-app/compare-double-images-controller.ts @@ -47,7 +47,7 @@ class CompareDoubleImagesController { webWorker.terminate() model.inputs.set("testImage", image) const details = document.getElementById("compareDoubleImages-test-image-details") - loadImage(image, details) + details.setImage(image) details.disabled = false }) @@ -190,17 +190,15 @@ class CompareDoubleImagesController { differenceImageOutputDownload.variant = "success" differenceImageOutputDownload.disabled = false const differenceImageDetails = document.getElementById("compareDoubleImages-difference-image-details") - differenceImageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(differenceImage, globalThis.interfaceTypeJsonReplacer, 2))}
` differenceImageDetails.disabled = false - loadImage(differenceImage, differenceImageDetails) + differenceImageDetails.setImage(differenceImage) model.outputs.set("differenceUchar2dImage", differenceUchar2dImage) differenceUchar2dImageOutputDownload.variant = "success" differenceUchar2dImageOutputDownload.disabled = false const differenceUchar2dImageDetails = document.getElementById("compareDoubleImages-difference-uchar-2d-image-details") - differenceUchar2dImageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(differenceUchar2dImage, globalThis.interfaceTypeJsonReplacer, 2))}
` differenceUchar2dImageDetails.disabled = false - loadImage(differenceUchar2dImage, differenceUchar2dImageDetails) + differenceUchar2dImageDetails.setImage(differenceUchar2dImage) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/compare-images/typescript/test/browser/demo-app/vector-magnitude-controller.ts b/packages/compare-images/typescript/test/browser/demo-app/vector-magnitude-controller.ts index e67dc98bd..524674ba8 100644 --- a/packages/compare-images/typescript/test/browser/demo-app/vector-magnitude-controller.ts +++ b/packages/compare-images/typescript/test/browser/demo-app/vector-magnitude-controller.ts @@ -47,7 +47,7 @@ class VectorMagnitudeController { webWorker.terminate() model.inputs.set("vectorImage", image) const details = document.getElementById("vectorMagnitude-vector-image-details") - loadImage(image, details) + details.setImage(image) details.disabled = false }) @@ -123,9 +123,8 @@ class VectorMagnitudeController { magnitudeImageOutputDownload.variant = "success" magnitudeImageOutputDownload.disabled = false const magnitudeImageDetails = document.getElementById("vectorMagnitude-magnitude-image-details") - magnitudeImageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(magnitudeImage, globalThis.interfaceTypeJsonReplacer, 2))}
` magnitudeImageDetails.disabled = false - loadImage(magnitudeImage, magnitudeImageDetails) + magnitudeImageDetails.setImage(magnitudeImage) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/core/typescript/demo-app/package.json b/packages/core/typescript/demo-app/package.json index e609de289..e2b1b2573 100644 --- a/packages/core/typescript/demo-app/package.json +++ b/packages/core/typescript/demo-app/package.json @@ -16,10 +16,11 @@ "author": "", "license": "Apache-2.0", "dependencies": { - "itk-wasm": "1.0.0-b.170", "@itk-viewer/element": "^0.2.12", "@itk-viewer/io": "^0.1.8", - "@shoelace-style/shoelace": "^2.12.0" + "@shoelace-style/shoelace": "^2.12.0", + "itk-wasm": "1.0.0-b.170", + "lit": "^3.1.2" }, "repository": { "type": "git", diff --git a/packages/core/typescript/demo-app/src/demo-app.js b/packages/core/typescript/demo-app/src/demo-app.js index a8942a309..9c1751df3 100644 --- a/packages/core/typescript/demo-app/src/demo-app.js +++ b/packages/core/typescript/demo-app/src/demo-app.js @@ -1,6 +1,3 @@ -import { ItkWasmMultiscaleSpatialImage } from "@itk-viewer/io/ItkWasmMultiscaleSpatialImage.js"; -import "@itk-viewer/element/itk-viewer-2d.js"; - import "@shoelace-style/shoelace/dist/themes/light.css"; import "@shoelace-style/shoelace/dist/themes/dark.css"; import "@shoelace-style/shoelace/dist/components/button/button.js"; @@ -24,6 +21,8 @@ import "@shoelace-style/shoelace/dist/components/range/range.js"; import "@shoelace-style/shoelace/dist/components/card/card.js"; import { setBasePath } from "@shoelace-style/shoelace/dist/utilities/base-path"; +import "./itk-image-details.js"; + setBasePath("/"); if ( @@ -34,41 +33,3 @@ if ( document.documentElement.classList.add("sl-theme-dark"); } -function showImage(image, details) { - details.innerHTML = ""; - - const viewer = document.createElement("itk-viewer-2d"); - viewer.style.width = "100%"; - viewer.style.height = "26rem"; - const multiImage = new ItkWasmMultiscaleSpatialImage(image); - // need to wait a tick due to bad setup flow in @itk-viewer/element - setTimeout(() => { - const viewerActor = viewer.getActor(); - viewerActor.send({ type: "setImage", image: multiImage }); - }, 0); - - const imageInfo = document.createElement("pre"); - imageInfo.innerHTML = escapeHtml( - JSON.stringify(image, interfaceTypeJsonReplacer, 2), - ); - - details.appendChild(viewer); - details.appendChild(imageInfo); -} - -function loadImage(image, details) { - if (!details.summary.startsWith("️🔎")) { - details.summary = "️🔎 " + details.summary; - } - if (details.open) { - showImage(image, details); - } - if (details.showImageListener) { - details.removeEventListener("sl-show", details.showImageListener); - } - details.showImageListener = () => { - showImage(image, details); - }; - details.addEventListener("sl-show", details.showImageListener); -} -globalThis.loadImage = loadImage; diff --git a/packages/core/typescript/demo-app/src/itk-image-details.js b/packages/core/typescript/demo-app/src/itk-image-details.js new file mode 100644 index 000000000..4679aa987 --- /dev/null +++ b/packages/core/typescript/demo-app/src/itk-image-details.js @@ -0,0 +1,67 @@ +import { LitElement, html, nothing } from "lit"; +import { createRef, ref } from "lit/directives/ref.js"; +import { ItkWasmMultiscaleSpatialImage } from "@itk-viewer/io/ItkWasmMultiscaleSpatialImage.js"; +import "@itk-viewer/element/itk-viewer-2d.js"; + +export class ItkImageDetails extends LitElement { + static properties = { + disabled: { type: Boolean }, + summary: { type: String }, + image: { state: true }, + }; + + details = createRef(); + viewer = createRef(); + + constructor() { + super(); + this.disabled = false; + this.summary = ""; + this.image = undefined; + } + + loadImage() { + const multiImage = new ItkWasmMultiscaleSpatialImage(this.image); + // need to wait a tick due to bad actor setup flow in @itk-viewer/element + setTimeout(() => { + const viewerActor = this.viewer.value.getActor(); + viewerActor.send({ type: "setImage", image: multiImage }); + }, 0); + } + + setImage(image) { + this.image = image; + if (this.details.value.open) { + this.loadImage(); + } + } + + renderImage(image) { + return html` + +
${JSON.stringify(image, interfaceTypeJsonReplacer, 2)}
+ `; + } + + render() { + const disabled = this.image === undefined ? true : nothing; + const summary = + this.image === undefined ? this.summary : "️🔎 " + this.summary; + + return html` + + ${this.image ? this.renderImage(this.image) : nothing} + + `; + } +} + +customElements.define("itk-image-details", ItkImageDetails); diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-html.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-html.js index 03a9a7155..82a306764 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-html.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-html.js @@ -53,12 +53,16 @@ function inputParametersDemoHtml (functionName, prefix, indent, parameter, requi result += '

\n' break case 'INPUT_JSON': - case 'INPUT_IMAGE': case 'INPUT_MESH': result += `${prefix}${indent}\n` result += `${prefix}${indent}\n` result += '

\n' break + case 'INPUT_IMAGE': + result += `${prefix}${indent}\n` + result += `${prefix}${indent}\n` + result += '

\n' + break default: console.error(`Unexpected interface type: ${parameterType}`) process.exit(1) diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-typescript.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-typescript.js index 18176c351..5fd08f10c 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-typescript.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/input-parameters-demo-typescript.js @@ -117,7 +117,7 @@ function inputParametersDemoTypeScript(functionName, indent, parameter, required result += `${indent}${indent}webWorker.terminate()\n` result += `${indent}${indent}model.${modelProperty}.set("${parameterName}", image)\n` result += `${indent}${indent}const details = document.getElementById("${functionName}-${parameter.name}-details")\n` - result += `${indent}${indent}loadImage(image, details)\n` + result += `${indent}${indent}details.setImage(image)\n` } } else if (parameterType === 'INPUT_MESH') { if (parameter.itemsExpectedMax > 1) { diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-html.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-html.js index 1aa197dda..abeb3d3d1 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-html.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-html.js @@ -40,8 +40,7 @@ function outputDemoHtml (functionName, prefix, indent, parameter) { result += `

\n` break case 'OUTPUT_IMAGE': { - result += `${prefix}${indent}\n` - + result += `${prefix}${indent}\n` result += `${prefix}${indent}\n` const formats = ['bmp', 'dcm', 'gipl', 'hdf5', 'jpg', 'lsm', 'mnc', 'mnc.gz', 'mgh', 'mha', 'mrc', 'nii', 'nii.gz', 'png', 'nrrd', 'png', 'pic', 'tif', 'isq', 'fdf', 'vtk'] formats.forEach((format) => { diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-run-typescript.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-run-typescript.js index 2aa08863c..9aaf7d6e8 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-run-typescript.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/demo/output-demo-run-typescript.js @@ -48,10 +48,11 @@ function outputDemoRunTypeScript(functionName, prefix, indent, parameter) { result += `${prefix}${indent}${parameterName}OutputDownload.variant = "success"\n` result += `${prefix}${indent}${parameterName}OutputDownload.disabled = false\n` result += `${indent}${indent}const ${parameterName}Details = document.getElementById("${functionName}-${parameter.name}-details")\n` - result += `${indent}${indent}${parameterName}Details.innerHTML = \`
$\{globalThis.escapeHtml(JSON.stringify(${parameterName}, globalThis.interfaceTypeJsonReplacer, 2))}
\`\n` result += `${indent}${indent}${parameterName}Details.disabled = false\n` if(parameter.type === 'OUTPUT_IMAGE' && parameter.itemsExpectedMax === 1) { - result += `${indent}${indent}loadImage(${parameterName}, ${parameterName}Details)\n` + result += `${indent}${indent}${parameterName}Details.setImage(${parameterName})\n` + } else { + result += `${indent}${indent}${parameterName}Details.innerHTML = \`
$\{globalThis.escapeHtml(JSON.stringify(${parameterName}, globalThis.interfaceTypeJsonReplacer, 2))}
\`\n` } break default: diff --git a/packages/dicom/typescript/test/browser/demo-app/apply-presentation-state-to-image-controller.ts b/packages/dicom/typescript/test/browser/demo-app/apply-presentation-state-to-image-controller.ts index 150ed0dcb..a476a3698 100644 --- a/packages/dicom/typescript/test/browser/demo-app/apply-presentation-state-to-image-controller.ts +++ b/packages/dicom/typescript/test/browser/demo-app/apply-presentation-state-to-image-controller.ts @@ -180,9 +180,8 @@ class ApplyPresentationStateToImageController { outputImageOutputDownload.variant = "success" outputImageOutputDownload.disabled = false const outputImageDetails = document.getElementById("applyPresentationStateToImage-output-image-details") - outputImageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(outputImage, globalThis.interfaceTypeJsonReplacer, 2))}
` outputImageDetails.disabled = false - loadImage(outputImage, outputImageDetails) + outputImageDetails.setImage(outputImage) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/dicom/typescript/test/browser/demo-app/index.html b/packages/dicom/typescript/test/browser/demo-app/index.html index 4a12f745d..cf91ac25f 100644 --- a/packages/dicom/typescript/test/browser/demo-app/index.html +++ b/packages/dicom/typescript/test/browser/demo-app/index.html @@ -71,7 +71,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -367,7 +367,7 @@

👨‍💻 Live API Demo ✨

- + bmp dcm diff --git a/packages/dicom/typescript/test/browser/demo-app/read-image-dicom-file-series-controller.ts b/packages/dicom/typescript/test/browser/demo-app/read-image-dicom-file-series-controller.ts index b03c14dbd..aec76d3a3 100644 --- a/packages/dicom/typescript/test/browser/demo-app/read-image-dicom-file-series-controller.ts +++ b/packages/dicom/typescript/test/browser/demo-app/read-image-dicom-file-series-controller.ts @@ -64,13 +64,13 @@ class ReadImageDicomFileSeriesController { event.preventDefault() event.stopPropagation() if (model.outputs.has("outputImage")) { - const outputImageDownloadFormat = document.getElementById('output-image-output-format') + const outputImageDownloadFormat = document.getElementById('readImageDicomFileSeries-output-image-output-format') const downloadFormat = outputImageDownloadFormat.value || 'nrrd' const fileName = `outputImage.${downloadFormat}` - const { webWorker, arrayBuffer } = await writeImage(null, copyImage(model.outputs.get("outputImage")), fileName) + const {webWorker, serializedImage} = await writeImage(copyImage(model.outputs.get("outputImage")), fileName) webWorker.terminate() - globalThis.downloadFile(arrayBuffer, fileName) + globalThis.downloadFile(serializedImage.data, fileName) } }) @@ -119,9 +119,8 @@ class ReadImageDicomFileSeriesController { outputImageOutputDownload.variant = "success" outputImageOutputDownload.disabled = false const outputImageDetails = document.getElementById("readImageDicomFileSeries-output-image-details") - outputImageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(outputImage, globalThis.interfaceTypeJsonReplacer, 2))}
` outputImageDetails.disabled = false - const outputImageOutput = document.getElementById('readImageDicomFileSeries-output-image-details') + outputImageDetails.setImage(outputImage) model.outputs.set("sortedFilenames", sortedFilenames) sortedFilenamesOutputDownload.variant = "success" @@ -130,6 +129,8 @@ class ReadImageDicomFileSeriesController { sortedFilenamesDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(sortedFilenames, globalThis.interfaceTypeJsonReplacer, 2))}
` sortedFilenamesDetails.disabled = false const sortedFilenamesOutput = document.getElementById("readImageDicomFileSeries-sorted-filenames-details") + // loadImage(outputImage, outputImageDetails) + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/downsample/typescript/package.json b/packages/downsample/typescript/package.json index 6fc5c63c1..d3c10a27b 100644 --- a/packages/downsample/typescript/package.json +++ b/packages/downsample/typescript/package.json @@ -46,8 +46,6 @@ }, "devDependencies": { "@itk-wasm/downsample-build": "workspace:^", - "@itk-viewer/element": "^0.2.12", - "@itk-viewer/io": "^0.1.8", "@itk-wasm/compare-images": "workspace:^", "@itk-wasm/image-io": "workspace:^", "@itk-wasm/mesh-io": "workspace:^", diff --git a/packages/downsample/typescript/test/browser/demo-app/downsample-bin-shrink-controller.ts b/packages/downsample/typescript/test/browser/demo-app/downsample-bin-shrink-controller.ts index cb9bf0502..3e0e222a1 100644 --- a/packages/downsample/typescript/test/browser/demo-app/downsample-bin-shrink-controller.ts +++ b/packages/downsample/typescript/test/browser/demo-app/downsample-bin-shrink-controller.ts @@ -47,7 +47,7 @@ class DownsampleBinShrinkController { webWorker.terminate() model.inputs.set("input", image) const details = document.getElementById("downsampleBinShrink-input-details") - loadImage(image, details) + details.setImage(image) details.disabled = false }) @@ -133,9 +133,8 @@ class DownsampleBinShrinkController { downsampledOutputDownload.variant = "success" downsampledOutputDownload.disabled = false const downsampledDetails = document.getElementById("downsampleBinShrink-downsampled-details") - downsampledDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(downsampled, globalThis.interfaceTypeJsonReplacer, 2))}
` downsampledDetails.disabled = false - loadImage(downsampled, downsampledDetails) + downsampledDetails.setImage(downsampled) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/downsample/typescript/test/browser/demo-app/downsample-controller.ts b/packages/downsample/typescript/test/browser/demo-app/downsample-controller.ts index bed57e787..8177a928c 100644 --- a/packages/downsample/typescript/test/browser/demo-app/downsample-controller.ts +++ b/packages/downsample/typescript/test/browser/demo-app/downsample-controller.ts @@ -47,7 +47,7 @@ class DownsampleController { webWorker.terminate() model.inputs.set("input", image) const details = document.getElementById("downsample-input-details") - loadImage(image, details) + details.setImage(image) details.disabled = false }) @@ -133,9 +133,8 @@ class DownsampleController { downsampledOutputDownload.variant = "success" downsampledOutputDownload.disabled = false const downsampledDetails = document.getElementById("downsample-downsampled-details") - downsampledDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(downsampled, globalThis.interfaceTypeJsonReplacer, 2))}
` downsampledDetails.disabled = false - loadImage(downsampled, downsampledDetails) + downsampledDetails.setImage(downsampled) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/downsample/typescript/test/browser/demo-app/downsample-label-image-controller.ts b/packages/downsample/typescript/test/browser/demo-app/downsample-label-image-controller.ts index ac4079278..89c85cfde 100644 --- a/packages/downsample/typescript/test/browser/demo-app/downsample-label-image-controller.ts +++ b/packages/downsample/typescript/test/browser/demo-app/downsample-label-image-controller.ts @@ -47,7 +47,7 @@ class DownsampleLabelImageController { webWorker.terminate() model.inputs.set("input", image) const details = document.getElementById("downsampleLabelImage-input-details") - loadImage(image, details) + details.setImage(image) details.disabled = false }) @@ -133,9 +133,8 @@ class DownsampleLabelImageController { downsampledOutputDownload.variant = "success" downsampledOutputDownload.disabled = false const downsampledDetails = document.getElementById("downsampleLabelImage-downsampled-details") - downsampledDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(downsampled, globalThis.interfaceTypeJsonReplacer, 2))}
` downsampledDetails.disabled = false - loadImage(downsampled, downsampledDetails) + downsampledDetails.setImage(downsampled) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/downsample/typescript/test/browser/demo-app/index.html b/packages/downsample/typescript/test/browser/demo-app/index.html index 631ac6568..5bbbe82aa 100644 --- a/packages/downsample/typescript/test/browser/demo-app/index.html +++ b/packages/downsample/typescript/test/browser/demo-app/index.html @@ -45,7 +45,7 @@

👨‍💻 Live API Demo ✨

- +


@@ -59,7 +59,7 @@

👨‍💻 Live API Demo ✨

- + bmp dcm @@ -96,7 +96,7 @@

👨‍💻 Live API Demo ✨

- +


@@ -110,7 +110,7 @@

👨‍💻 Live API Demo ✨

- + bmp dcm @@ -170,7 +170,7 @@

👨‍💻 Live API Demo ✨

- +


@@ -184,7 +184,7 @@

👨‍💻 Live API Demo ✨

- + bmp dcm diff --git a/packages/image-io/typescript/.gitignore b/packages/image-io/typescript/.gitignore index 784615222..12a93d96f 100644 --- a/packages/image-io/typescript/.gitignore +++ b/packages/image-io/typescript/.gitignore @@ -1,3 +1,3 @@ test/browser/demo-app/public -demo-app/ +/demo-app/ vite.config.js diff --git a/packages/image-io/typescript/test/browser/demo-app/bio-rad-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/bio-rad-read-image-controller.ts index ae74749d3..008b742f3 100644 --- a/packages/image-io/typescript/test/browser/demo-app/bio-rad-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/bio-rad-read-image-controller.ts @@ -144,9 +144,9 @@ class BioRadReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("bioRadReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('bioRadReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/bmp-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/bmp-read-image-controller.ts index dc6b44e65..c4d4711c3 100644 --- a/packages/image-io/typescript/test/browser/demo-app/bmp-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/bmp-read-image-controller.ts @@ -145,9 +145,9 @@ class BmpReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("bmpReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('bmpReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/fdf-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/fdf-read-image-controller.ts index f75ae2bbb..7b12783e8 100644 --- a/packages/image-io/typescript/test/browser/demo-app/fdf-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/fdf-read-image-controller.ts @@ -146,9 +146,9 @@ class FdfReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("fdfReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('fdfReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/gdcm-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/gdcm-read-image-controller.ts index 7e12203ff..359d0b069 100644 --- a/packages/image-io/typescript/test/browser/demo-app/gdcm-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/gdcm-read-image-controller.ts @@ -146,9 +146,9 @@ class GdcmReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("gdcmReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('gdcmReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/ge-adw-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/ge-adw-read-image-controller.ts index 70dbeabe3..ab0276c65 100644 --- a/packages/image-io/typescript/test/browser/demo-app/ge-adw-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/ge-adw-read-image-controller.ts @@ -145,9 +145,9 @@ class GeAdwReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("geAdwReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('geAdwReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/ge4-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/ge4-read-image-controller.ts index 23ccbe2e5..45c25a28f 100644 --- a/packages/image-io/typescript/test/browser/demo-app/ge4-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/ge4-read-image-controller.ts @@ -146,9 +146,9 @@ class Ge4ReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("ge4ReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('ge4ReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/ge5-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/ge5-read-image-controller.ts index 49d9a2714..b4a1a122e 100644 --- a/packages/image-io/typescript/test/browser/demo-app/ge5-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/ge5-read-image-controller.ts @@ -146,9 +146,9 @@ class Ge5ReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("ge5ReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('ge5ReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/gipl-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/gipl-read-image-controller.ts index 807c309de..11f91b610 100644 --- a/packages/image-io/typescript/test/browser/demo-app/gipl-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/gipl-read-image-controller.ts @@ -146,9 +146,9 @@ class GiplReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("giplReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('giplReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/hdf5-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/hdf5-read-image-controller.ts index 92b2c129f..a9f30855f 100644 --- a/packages/image-io/typescript/test/browser/demo-app/hdf5-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/hdf5-read-image-controller.ts @@ -146,9 +146,9 @@ class Hdf5ReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("hdf5ReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('hdf5ReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/index.html b/packages/image-io/typescript/test/browser/demo-app/index.html index f9d261665..7a6d55713 100644 --- a/packages/image-io/typescript/test/browser/demo-app/index.html +++ b/packages/image-io/typescript/test/browser/demo-app/index.html @@ -102,7 +102,7 @@

👨‍💻 Live API Demo ✨

- + bmp dcm @@ -186,7 +186,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -270,7 +270,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -354,7 +354,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -438,7 +438,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -522,7 +522,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -606,7 +606,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -690,7 +690,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -774,7 +774,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -858,7 +858,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -942,7 +942,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1026,7 +1026,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1110,7 +1110,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1194,7 +1194,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1278,7 +1278,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1362,7 +1362,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1446,7 +1446,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1530,7 +1530,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1614,7 +1614,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1698,7 +1698,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1782,7 +1782,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1866,7 +1866,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1950,7 +1950,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -2034,7 +2034,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm diff --git a/packages/image-io/typescript/test/browser/demo-app/jpeg-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/jpeg-read-image-controller.ts index fb71ba3a0..2f3afd1cc 100644 --- a/packages/image-io/typescript/test/browser/demo-app/jpeg-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/jpeg-read-image-controller.ts @@ -146,9 +146,9 @@ class JpegReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("jpegReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('jpegReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/lsm-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/lsm-read-image-controller.ts index 50518937d..f392ac721 100644 --- a/packages/image-io/typescript/test/browser/demo-app/lsm-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/lsm-read-image-controller.ts @@ -146,9 +146,9 @@ class LsmReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("lsmReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('lsmReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/meta-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/meta-read-image-controller.ts index 67156f6fb..3a50435ef 100644 --- a/packages/image-io/typescript/test/browser/demo-app/meta-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/meta-read-image-controller.ts @@ -146,9 +146,9 @@ class MetaReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("metaReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('metaReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/mgh-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/mgh-read-image-controller.ts index b2b1f8113..92cf484dc 100644 --- a/packages/image-io/typescript/test/browser/demo-app/mgh-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/mgh-read-image-controller.ts @@ -146,9 +146,9 @@ class MghReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("mghReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('mghReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/minc-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/minc-read-image-controller.ts index 46b0489ca..c57d7bd27 100644 --- a/packages/image-io/typescript/test/browser/demo-app/minc-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/minc-read-image-controller.ts @@ -146,9 +146,9 @@ class MincReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("mincReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('mincReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/mrc-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/mrc-read-image-controller.ts index f6b68f048..3ca3a7a7f 100644 --- a/packages/image-io/typescript/test/browser/demo-app/mrc-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/mrc-read-image-controller.ts @@ -146,9 +146,9 @@ class MrcReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("mrcReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('mrcReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/nifti-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/nifti-read-image-controller.ts index 405cf1575..6d54e32ba 100644 --- a/packages/image-io/typescript/test/browser/demo-app/nifti-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/nifti-read-image-controller.ts @@ -146,9 +146,9 @@ class NiftiReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("niftiReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('niftiReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/nrrd-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/nrrd-read-image-controller.ts index 0821f46f2..9fc5abf17 100644 --- a/packages/image-io/typescript/test/browser/demo-app/nrrd-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/nrrd-read-image-controller.ts @@ -146,9 +146,9 @@ class NrrdReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("nrrdReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('nrrdReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/png-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/png-read-image-controller.ts index 4c1f2c928..1e1c2b241 100644 --- a/packages/image-io/typescript/test/browser/demo-app/png-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/png-read-image-controller.ts @@ -146,9 +146,9 @@ class PngReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("pngReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('pngReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/read-image-controller.ts index 293632052..b95e34ae1 100644 --- a/packages/image-io/typescript/test/browser/demo-app/read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/read-image-controller.ts @@ -127,9 +127,8 @@ class ReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("readImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` imageDetails.disabled = false - loadImage(image, imageDetails) + imageDetails.setImage(image) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/scanco-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/scanco-read-image-controller.ts index 4b292398c..d9fc05f28 100644 --- a/packages/image-io/typescript/test/browser/demo-app/scanco-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/scanco-read-image-controller.ts @@ -146,9 +146,9 @@ class ScancoReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("scancoReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('scancoReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/tiff-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/tiff-read-image-controller.ts index e19a8c6e1..7e0defc02 100644 --- a/packages/image-io/typescript/test/browser/demo-app/tiff-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/tiff-read-image-controller.ts @@ -146,9 +146,9 @@ class TiffReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("tiffReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('tiffReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/vtk-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/vtk-read-image-controller.ts index 56d0d0d5a..b597d0523 100644 --- a/packages/image-io/typescript/test/browser/demo-app/vtk-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/vtk-read-image-controller.ts @@ -146,9 +146,9 @@ class VtkReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("vtkReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('vtkReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/wasm-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/wasm-read-image-controller.ts index 3aa11b270..1f85fc3b8 100644 --- a/packages/image-io/typescript/test/browser/demo-app/wasm-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/wasm-read-image-controller.ts @@ -146,9 +146,9 @@ class WasmReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("wasmReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('wasmReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/image-io/typescript/test/browser/demo-app/wasm-zstd-read-image-controller.ts b/packages/image-io/typescript/test/browser/demo-app/wasm-zstd-read-image-controller.ts index 33943330b..516206d5a 100644 --- a/packages/image-io/typescript/test/browser/demo-app/wasm-zstd-read-image-controller.ts +++ b/packages/image-io/typescript/test/browser/demo-app/wasm-zstd-read-image-controller.ts @@ -146,9 +146,9 @@ class WasmZstdReadImageController { imageOutputDownload.variant = "success" imageOutputDownload.disabled = false const imageDetails = document.getElementById("wasmZstdReadImage-image-details") - imageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` + imageDetails.setImage(image) imageDetails.disabled = false - const imageOutput = document.getElementById('wasmZstdReadImage-image-details') + } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/byu-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/byu-read-mesh-controller.ts index 7863a95ee..f27211754 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/byu-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/byu-read-mesh-controller.ts @@ -144,8 +144,8 @@ class ByuReadMeshController { meshOutputDownload.variant = "success" meshOutputDownload.disabled = false const meshDetails = document.getElementById("byuReadMesh-mesh-details") - meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false + meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-ascii-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-ascii-read-mesh-controller.ts index 4617f9ed0..c63a410ad 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-ascii-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-ascii-read-mesh-controller.ts @@ -144,8 +144,8 @@ class FreeSurferAsciiReadMeshController { meshOutputDownload.variant = "success" meshOutputDownload.disabled = false const meshDetails = document.getElementById("freeSurferAsciiReadMesh-mesh-details") - meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false + meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-binary-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-binary-read-mesh-controller.ts index 29fe977af..5b544c825 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-binary-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/free-surfer-binary-read-mesh-controller.ts @@ -144,8 +144,8 @@ class FreeSurferBinaryReadMeshController { meshOutputDownload.variant = "success" meshOutputDownload.disabled = false const meshDetails = document.getElementById("freeSurferBinaryReadMesh-mesh-details") - meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false + meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/obj-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/obj-read-mesh-controller.ts index 2170954b5..0a826822c 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/obj-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/obj-read-mesh-controller.ts @@ -144,8 +144,8 @@ class ObjReadMeshController { meshOutputDownload.variant = "success" meshOutputDownload.disabled = false const meshDetails = document.getElementById("objReadMesh-mesh-details") - meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false + meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/off-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/off-read-mesh-controller.ts index 591c36291..5844d7a38 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/off-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/off-read-mesh-controller.ts @@ -144,8 +144,8 @@ class OffReadMeshController { meshOutputDownload.variant = "success" meshOutputDownload.disabled = false const meshDetails = document.getElementById("offReadMesh-mesh-details") - meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false + meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/stl-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/stl-read-mesh-controller.ts index 6c7982964..c07c42778 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/stl-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/stl-read-mesh-controller.ts @@ -144,8 +144,8 @@ class StlReadMeshController { meshOutputDownload.variant = "success" meshOutputDownload.disabled = false const meshDetails = document.getElementById("stlReadMesh-mesh-details") - meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false + meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/swc-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/swc-read-mesh-controller.ts index bb8c13e72..18821cabe 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/swc-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/swc-read-mesh-controller.ts @@ -144,8 +144,8 @@ class SwcReadMeshController { meshOutputDownload.variant = "success" meshOutputDownload.disabled = false const meshDetails = document.getElementById("swcReadMesh-mesh-details") - meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false + meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/vtk-poly-data-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/vtk-poly-data-read-mesh-controller.ts index 3df89b0c4..19053a3c9 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/vtk-poly-data-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/vtk-poly-data-read-mesh-controller.ts @@ -144,8 +144,8 @@ class VtkPolyDataReadMeshController { meshOutputDownload.variant = "success" meshOutputDownload.disabled = false const meshDetails = document.getElementById("vtkPolyDataReadMesh-mesh-details") - meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false + meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/mesh-io/typescript/test/browser/demo-app/wasm-read-mesh-controller.ts b/packages/mesh-io/typescript/test/browser/demo-app/wasm-read-mesh-controller.ts index feacc7f3b..ddd3e5f60 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/wasm-read-mesh-controller.ts +++ b/packages/mesh-io/typescript/test/browser/demo-app/wasm-read-mesh-controller.ts @@ -144,8 +144,8 @@ class WasmReadMeshController { meshOutputDownload.variant = "success" meshOutputDownload.disabled = false const meshDetails = document.getElementById("wasmReadMesh-mesh-details") - meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` meshDetails.disabled = false + meshDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(mesh, globalThis.interfaceTypeJsonReplacer, 2))}
` } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index afbc9aba1..43961e37c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -395,6 +395,9 @@ importers: itk-wasm: specifier: 1.0.0-b.170 version: 1.0.0-b.170 + lit: + specifier: ^3.1.2 + version: 3.1.2 packages/core/typescript/itk-wasm: dependencies: @@ -585,12 +588,6 @@ importers: specifier: workspace:^ version: link:../../core/typescript/itk-wasm devDependencies: - '@itk-viewer/element': - specifier: ^0.2.12 - version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) - '@itk-viewer/io': - specifier: ^0.1.8 - version: 0.1.8 '@itk-wasm/compare-images': specifier: workspace:^ version: link:../../compare-images/typescript @@ -831,6 +828,7 @@ packages: dependencies: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 + dev: false /@azure/abort-controller@1.1.0: resolution: {integrity: sha512-TrRLIoSQVzfAJX9H1JeFjzAoDGcoK1IYX1UImfceTZpsyYfWr09Ss1aHW1y5TrrR3iq6RZLBwJ3E24uwPhwahw==} @@ -951,6 +949,7 @@ packages: /@babel/compat-data@7.23.5: resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} engines: {node: '>=6.9.0'} + dev: false /@babel/core@7.24.0: resolution: {integrity: sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==} @@ -973,6 +972,7 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color + dev: false /@babel/generator@7.23.6: resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} @@ -982,18 +982,21 @@ packages: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 + dev: false /@babel/helper-annotate-as-pure@7.22.5: resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 + dev: false /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 + dev: false /@babel/helper-compilation-targets@7.23.6: resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} @@ -1004,6 +1007,7 @@ packages: browserslist: 4.23.0 lru-cache: 5.1.1 semver: 6.3.1 + dev: false /@babel/helper-create-class-features-plugin@7.24.0(@babel/core@7.24.0): resolution: {integrity: sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g==} @@ -1021,6 +1025,7 @@ packages: '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 semver: 6.3.1 + dev: false /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} @@ -1032,6 +1037,7 @@ packages: '@babel/helper-annotate-as-pure': 7.22.5 regexpu-core: 5.3.2 semver: 6.3.1 + dev: false /@babel/helper-define-polyfill-provider@0.5.0(@babel/core@7.24.0): resolution: {integrity: sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==} @@ -1046,6 +1052,7 @@ packages: resolve: 1.22.8 transitivePeerDependencies: - supports-color + dev: false /@babel/helper-define-polyfill-provider@0.6.0(@babel/core@7.24.0): resolution: {integrity: sha512-efwOM90nCG6YeT8o3PCyBVSxRfmILxCNL+TNI8CGQl7a62M0Wd9VkV+XHwIlkOz1r4b+lxu6gBjdWiOMdUCrCQ==} @@ -1060,10 +1067,12 @@ packages: resolve: 1.22.8 transitivePeerDependencies: - supports-color + dev: false /@babel/helper-environment-visitor@7.22.20: resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} engines: {node: '>=6.9.0'} + dev: false /@babel/helper-function-name@7.23.0: resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} @@ -1071,24 +1080,28 @@ packages: dependencies: '@babel/template': 7.24.0 '@babel/types': 7.24.0 + dev: false /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 + dev: false /@babel/helper-member-expression-to-functions@7.23.0: resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 + dev: false /@babel/helper-module-imports@7.22.15: resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 + dev: false /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} @@ -1102,16 +1115,19 @@ packages: '@babel/helper-simple-access': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 '@babel/helper-validator-identifier': 7.22.20 + dev: false /@babel/helper-optimise-call-expression@7.22.5: resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 + dev: false /@babel/helper-plugin-utils@7.24.0: resolution: {integrity: sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==} engines: {node: '>=6.9.0'} + dev: false /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.24.0): resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} @@ -1123,6 +1139,7 @@ packages: '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-wrap-function': 7.22.20 + dev: false /@babel/helper-replace-supers@7.22.20(@babel/core@7.24.0): resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} @@ -1134,28 +1151,33 @@ packages: '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-member-expression-to-functions': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 + dev: false /@babel/helper-simple-access@7.22.5: resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 + dev: false /@babel/helper-skip-transparent-expression-wrappers@7.22.5: resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 + dev: false /@babel/helper-split-export-declaration@7.22.6: resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 + dev: false /@babel/helper-string-parser@7.23.4: resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} engines: {node: '>=6.9.0'} + dev: false /@babel/helper-validator-identifier@7.22.20: resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} @@ -1164,6 +1186,7 @@ packages: /@babel/helper-validator-option@7.23.5: resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} engines: {node: '>=6.9.0'} + dev: false /@babel/helper-wrap-function@7.22.20: resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==} @@ -1172,6 +1195,7 @@ packages: '@babel/helper-function-name': 7.23.0 '@babel/template': 7.24.0 '@babel/types': 7.24.0 + dev: false /@babel/helpers@7.24.0: resolution: {integrity: sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==} @@ -1182,6 +1206,7 @@ packages: '@babel/types': 7.24.0 transitivePeerDependencies: - supports-color + dev: false /@babel/highlight@7.23.4: resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} @@ -1197,6 +1222,7 @@ packages: hasBin: true dependencies: '@babel/types': 7.24.0 + dev: false /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==} @@ -1206,6 +1232,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==} @@ -1217,6 +1244,7 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.24.0) + dev: false /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7(@babel/core@7.24.0): resolution: {integrity: sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw==} @@ -1227,6 +1255,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.0): resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} @@ -1235,6 +1264,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.0 + dev: false /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.0): resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} @@ -1243,6 +1273,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.0): resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} @@ -1251,6 +1282,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.0): resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} @@ -1260,6 +1292,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} @@ -1268,6 +1301,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} @@ -1276,6 +1310,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==} @@ -1285,6 +1320,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==} @@ -1294,6 +1330,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} @@ -1302,6 +1339,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} @@ -1310,6 +1348,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} @@ -1318,6 +1357,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} @@ -1326,6 +1366,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} @@ -1334,6 +1375,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} @@ -1342,6 +1384,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} @@ -1350,6 +1393,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} @@ -1358,6 +1402,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.0): resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} @@ -1367,6 +1412,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.0): resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} @@ -1376,6 +1422,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.0): resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} @@ -1386,6 +1433,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==} @@ -1395,6 +1443,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-async-generator-functions@7.23.9(@babel/core@7.24.0): resolution: {integrity: sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ==} @@ -1407,6 +1456,7 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==} @@ -1418,6 +1468,7 @@ packages: '@babel/helper-module-imports': 7.22.15 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==} @@ -1427,6 +1478,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==} @@ -1436,6 +1488,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==} @@ -1446,6 +1499,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==} @@ -1457,6 +1511,7 @@ packages: '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-classes@7.23.8(@babel/core@7.24.0): resolution: {integrity: sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg==} @@ -1473,6 +1528,7 @@ packages: '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) '@babel/helper-split-export-declaration': 7.22.6 globals: 11.12.0 + dev: false /@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==} @@ -1483,6 +1539,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/template': 7.24.0 + dev: false /@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==} @@ -1492,6 +1549,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==} @@ -1502,6 +1560,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==} @@ -1511,6 +1570,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==} @@ -1521,6 +1581,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==} @@ -1531,6 +1592,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==} @@ -1541,6 +1603,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-for-of@7.23.6(@babel/core@7.24.0): resolution: {integrity: sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw==} @@ -1551,6 +1614,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + dev: false /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==} @@ -1562,6 +1626,7 @@ packages: '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-function-name': 7.23.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==} @@ -1572,6 +1637,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==} @@ -1581,6 +1647,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==} @@ -1591,6 +1658,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==} @@ -1600,6 +1668,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==} @@ -1610,6 +1679,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==} @@ -1621,6 +1691,7 @@ packages: '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-simple-access': 7.22.5 + dev: false /@babel/plugin-transform-modules-systemjs@7.23.9(@babel/core@7.24.0): resolution: {integrity: sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw==} @@ -1633,6 +1704,7 @@ packages: '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-validator-identifier': 7.22.20 + dev: false /@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==} @@ -1643,6 +1715,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} @@ -1653,6 +1726,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-new-target@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==} @@ -1662,6 +1736,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==} @@ -1672,6 +1747,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==} @@ -1682,6 +1758,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-object-rest-spread@7.24.0(@babel/core@7.24.0): resolution: {integrity: sha512-y/yKMm7buHpFFXfxVFS4Vk1ToRJDilIa6fKRioB9Vjichv58TDGXTvqV0dN7plobAmTW5eSEGXDngE+Mm+uO+w==} @@ -1695,6 +1772,7 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.0) '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-object-super@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==} @@ -1705,6 +1783,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==} @@ -1715,6 +1794,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==} @@ -1726,6 +1806,7 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-parameters@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==} @@ -1735,6 +1816,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==} @@ -1745,6 +1827,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==} @@ -1757,6 +1840,7 @@ packages: '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.0) + dev: false /@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==} @@ -1766,6 +1850,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==} @@ -1776,6 +1861,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 regenerator-transform: 0.15.2 + dev: false /@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==} @@ -1785,6 +1871,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==} @@ -1794,6 +1881,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-spread@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==} @@ -1804,6 +1892,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + dev: false /@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==} @@ -1813,6 +1902,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==} @@ -1822,6 +1912,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==} @@ -1831,6 +1922,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==} @@ -1840,6 +1932,7 @@ packages: dependencies: '@babel/core': 7.24.0 '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==} @@ -1850,6 +1943,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==} @@ -1860,6 +1954,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==} @@ -1870,6 +1965,7 @@ packages: '@babel/core': 7.24.0 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) '@babel/helper-plugin-utils': 7.24.0 + dev: false /@babel/preset-env@7.24.0(@babel/core@7.24.0): resolution: {integrity: sha512-ZxPEzV9IgvGn73iK0E6VB9/95Nd7aMFpbE0l8KQFDG70cOV9IxRP7Y2FUPmlK0v6ImlLqYX50iuZ3ZTVhOF2lA==} @@ -1960,6 +2056,7 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color + dev: false /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.0): resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} @@ -1970,15 +2067,18 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/types': 7.24.0 esutils: 2.0.3 + dev: false /@babel/regjsgen@0.8.0: resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} + dev: false /@babel/runtime@7.22.11: resolution: {integrity: sha512-ee7jVNlWN09+KftVOu9n7S8gQzD/Z6hN/I8VBRXW4P1+Xe7kJGXMwu8vds4aGIMHZnNbdpSWCfZZtinytpcAvA==} engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.14.0 + dev: false /@babel/runtime@7.23.5: resolution: {integrity: sha512-NdUTHcPe4C99WxPub+K9l9tK5/lV4UXIoaHSYgzco9BCyjKAAwzdBI+wWtYqHt7LJdbo74ZjRPJgzVweq1sz0w==} @@ -1993,6 +2093,7 @@ packages: '@babel/code-frame': 7.23.5 '@babel/parser': 7.24.0 '@babel/types': 7.24.0 + dev: false /@babel/traverse@7.24.0: resolution: {integrity: sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==} @@ -2010,6 +2111,7 @@ packages: globals: 11.12.0 transitivePeerDependencies: - supports-color + dev: false /@babel/types@7.24.0: resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==} @@ -2018,6 +2120,7 @@ packages: '@babel/helper-string-parser': 7.23.4 '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 + dev: false /@changesets/apply-release-plan@7.0.0: resolution: {integrity: sha512-vfi69JR416qC9hWmFGSxj7N6wA5J222XNBmezSVATPWDVPIF7gkd4d8CpbEbXmRWbVrkoli3oerGS6dcL/BGsQ==} @@ -2285,6 +2388,7 @@ packages: cpu: [arm64] os: [android] requiresBuild: true + dev: true optional: true /@esbuild/android-arm@0.18.20: @@ -2311,6 +2415,7 @@ packages: cpu: [arm] os: [android] requiresBuild: true + dev: true optional: true /@esbuild/android-x64@0.18.20: @@ -2337,6 +2442,7 @@ packages: cpu: [x64] os: [android] requiresBuild: true + dev: true optional: true /@esbuild/darwin-arm64@0.18.20: @@ -2363,6 +2469,7 @@ packages: cpu: [arm64] os: [darwin] requiresBuild: true + dev: true optional: true /@esbuild/darwin-x64@0.18.20: @@ -2389,6 +2496,7 @@ packages: cpu: [x64] os: [darwin] requiresBuild: true + dev: true optional: true /@esbuild/freebsd-arm64@0.18.20: @@ -2415,6 +2523,7 @@ packages: cpu: [arm64] os: [freebsd] requiresBuild: true + dev: true optional: true /@esbuild/freebsd-x64@0.18.20: @@ -2441,6 +2550,7 @@ packages: cpu: [x64] os: [freebsd] requiresBuild: true + dev: true optional: true /@esbuild/linux-arm64@0.18.20: @@ -2467,6 +2577,7 @@ packages: cpu: [arm64] os: [linux] requiresBuild: true + dev: true optional: true /@esbuild/linux-arm@0.18.20: @@ -2493,6 +2604,7 @@ packages: cpu: [arm] os: [linux] requiresBuild: true + dev: true optional: true /@esbuild/linux-ia32@0.18.20: @@ -2519,6 +2631,7 @@ packages: cpu: [ia32] os: [linux] requiresBuild: true + dev: true optional: true /@esbuild/linux-loong64@0.18.20: @@ -2545,6 +2658,7 @@ packages: cpu: [loong64] os: [linux] requiresBuild: true + dev: true optional: true /@esbuild/linux-mips64el@0.18.20: @@ -2571,6 +2685,7 @@ packages: cpu: [mips64el] os: [linux] requiresBuild: true + dev: true optional: true /@esbuild/linux-ppc64@0.18.20: @@ -2597,6 +2712,7 @@ packages: cpu: [ppc64] os: [linux] requiresBuild: true + dev: true optional: true /@esbuild/linux-riscv64@0.18.20: @@ -2623,6 +2739,7 @@ packages: cpu: [riscv64] os: [linux] requiresBuild: true + dev: true optional: true /@esbuild/linux-s390x@0.18.20: @@ -2649,6 +2766,7 @@ packages: cpu: [s390x] os: [linux] requiresBuild: true + dev: true optional: true /@esbuild/linux-x64@0.18.20: @@ -2675,6 +2793,7 @@ packages: cpu: [x64] os: [linux] requiresBuild: true + dev: true optional: true /@esbuild/netbsd-x64@0.18.20: @@ -2701,6 +2820,7 @@ packages: cpu: [x64] os: [netbsd] requiresBuild: true + dev: true optional: true /@esbuild/openbsd-x64@0.18.20: @@ -2727,6 +2847,7 @@ packages: cpu: [x64] os: [openbsd] requiresBuild: true + dev: true optional: true /@esbuild/sunos-x64@0.18.20: @@ -2753,6 +2874,7 @@ packages: cpu: [x64] os: [sunos] requiresBuild: true + dev: true optional: true /@esbuild/win32-arm64@0.18.20: @@ -2779,6 +2901,7 @@ packages: cpu: [arm64] os: [win32] requiresBuild: true + dev: true optional: true /@esbuild/win32-ia32@0.18.20: @@ -2805,6 +2928,7 @@ packages: cpu: [ia32] os: [win32] requiresBuild: true + dev: true optional: true /@esbuild/win32-x64@0.18.20: @@ -2831,6 +2955,7 @@ packages: cpu: [x64] os: [win32] requiresBuild: true + dev: true optional: true /@eslint-community/eslint-utils@4.4.0(eslint@8.56.0): @@ -2964,6 +3089,7 @@ packages: resolution: {integrity: sha512-TpXNoKAOtmpVVULUbytEVLyGTjgtpAuitNLXRY5Avf6+Tcsiogj7Im+a7J9Jr2Vr6lGS4fp4B6Pd1hwKotW0vw==} dependencies: gl-matrix: 3.4.3 + dev: false /@itk-viewer/blosc-zarr@0.1.3: resolution: {integrity: sha512-O8REh/T8M99ADtE0Cr17FvhJtt++8MLP6giGcAaH35gbNqpMVJeg0gI2444HQplaJ4xicoeVrU5B0ja58+OfJA==} @@ -2972,6 +3098,7 @@ packages: itk-wasm: 1.0.0-b.160 transitivePeerDependencies: - debug + dev: false /@itk-viewer/element@0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): resolution: {integrity: sha512-PGkPVqN8Sr13pgmwNOUyv3qRe2ZMOaqZdhAc3b+5NEUPO2gaA9XhUEuPIAptof5+RE3vzeo6XXuzjl/I2E1jyA==} @@ -2990,9 +3117,9 @@ packages: '@lit/context': 1.1.0 gl-matrix: 3.4.3 itk-wasm: 1.0.0-b.160 - lit: 3.1.0 + lit: 3.1.2 xstate: 5.5.2 - xstate-lit: 2.0.5(@lit/context@1.1.0)(lit@3.1.0)(xstate@5.5.2) + xstate-lit: 2.0.5(@lit/context@1.1.0)(lit@3.1.2)(xstate@5.5.2) transitivePeerDependencies: - '@babel/preset-env' - autoprefixer @@ -3002,6 +3129,7 @@ packages: - utf-8-validate - webpack - wslink + dev: false /@itk-viewer/io@0.1.8: resolution: {integrity: sha512-soewY9nbLq0Z8HK2U8mdfzNZtmRPZbxcmzl7HWYdpmCu1cn5pp2y3cZsARjKTnuzsXrRr0DzfV29cBiJg21H8A==} @@ -3016,6 +3144,7 @@ packages: zod: 3.22.4 transitivePeerDependencies: - debug + dev: false /@itk-viewer/remote-viewport@0.2.11: resolution: {integrity: sha512-0JdBXWBUCCiTYGcAfpb1NDjpRbeMjomqvaYLeWn3qDSiX8UUc+8jSuOWBQ1yaGd/WVL74xaorOKMpC6zD8QcdA==} @@ -3032,6 +3161,7 @@ packages: - debug - supports-color - utf-8-validate + dev: false /@itk-viewer/utils@0.1.3: resolution: {integrity: sha512-2liw+6wvTRI/eDqPAwVmi+lPT6vj9YiAMt2qdEirc4b6Lg4WpYdsExgaYVgYM9hJpH71xo2DkIlAn7ns2pPF9A==} @@ -3039,6 +3169,7 @@ packages: itk-wasm: 1.0.0-b.160 transitivePeerDependencies: - debug + dev: false /@itk-viewer/viewer@0.2.8: resolution: {integrity: sha512-g0C/IiVxzupkU5YerZCkTSPeKbLVGA3dukZc6o/wKKO+R+0KfF8T+oWT9NqlPJENaDxG+P+lTuOEAc4Xi/ejSQ==} @@ -3049,6 +3180,7 @@ packages: xstate: 5.5.2 transitivePeerDependencies: - debug + dev: false /@itk-viewer/vtkjs@0.0.5(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): resolution: {integrity: sha512-1PPvzLgV5HrfxPDcTT8OQTH9V4nGGtC4kEOyEB3oHlKRttlprvC3ze/lXPN6F+m7ZVIx94TvaLsuARrwgccKcw==} @@ -3064,6 +3196,7 @@ packages: - debug - webpack - wslink + dev: false /@itk-wasm/dam@1.1.0: resolution: {integrity: sha512-f5uLh1cWixveehskXbHdEBUWbyv1n4bN/UVozK4apmreMP79l047f3FHiNStJQO/d/D+U4gT3KepXuQWGXD4BA==} @@ -3098,6 +3231,7 @@ packages: itk-wasm: 1.0.0-b.170 transitivePeerDependencies: - debug + dev: false /@itk-wasm/mesh-to-poly-data@1.0.0: resolution: {integrity: sha512-j1vJNaNpmZG3wjt7sU8/t/cxJvIto6dlCTdl/5oNGHWNz+81g3N/fWdwR6+wafr4OuHyut83LV+0J00sGYnX4Q==} @@ -3114,29 +3248,35 @@ packages: '@jridgewell/set-array': 1.2.1 '@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/trace-mapping': 0.3.25 + dev: false /@jridgewell/resolve-uri@3.1.2: resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} + dev: false /@jridgewell/set-array@1.2.1: resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} engines: {node: '>=6.0.0'} + dev: false /@jridgewell/source-map@0.3.5: resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} dependencies: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 + dev: false /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + dev: false /@jridgewell/trace-mapping@0.3.25: resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} dependencies: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 + dev: false /@kitware/vtk.js@29.8.0(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): resolution: {integrity: sha512-gFAXmQa2X1eD2chuTDEKRS6tgg4eQNFjsfa/15yARlir/+Fn+STLllt6dBkJ4y6jrBtMHW9hwpQCZaP82PA2UQ==} @@ -3167,14 +3307,20 @@ packages: xmlbuilder2: 3.0.2 transitivePeerDependencies: - webpack + dev: false /@lit-labs/ssr-dom-shim@1.1.2: resolution: {integrity: sha512-jnOD+/+dSrfTWYfSXBXlo5l5f0q1UuJo3tkbMDCYA2lKUYq79jaxqtGEvnRoh049nt1vdo1+45RinipU6FGY2g==} + dev: false + + /@lit-labs/ssr-dom-shim@1.2.0: + resolution: {integrity: sha512-yWJKmpGE6lUURKAaIltoPIE/wrbY3TEkqQt+X0m+7fQNnAv0keydnYvbiJFP1PnMhizmIWRWOG5KLhYyc/xl+g==} /@lit/context@1.1.0: resolution: {integrity: sha512-fCyv4dsH05wCNm3AKbB+PdYbXGJd/XT8OOwo4hVmD4COq5wOWJlQreGAMDvmHZ7osqxuu06Y4nmP6ooXpN7ErA==} dependencies: '@lit/reactive-element': 2.0.2 + dev: false /@lit/react@1.0.2(@types/react@18.2.42): resolution: {integrity: sha512-UJ5TQ46DPcJDIzyjbwbj6Iye0XcpCxL2yb03zcWq1BpWchpXS3Z0BPVhg7zDfZLF6JemPml8u/gt/+KwJ/23sg==} @@ -3187,6 +3333,12 @@ packages: resolution: {integrity: sha512-SVOwLAWUQg3Ji1egtOt1UiFe4zdDpnWHyc5qctSceJ5XIu0Uc76YmGpIjZgx9YJ0XtdW0Jm507sDvjOu+HnB8w==} dependencies: '@lit-labs/ssr-dom-shim': 1.1.2 + dev: false + + /@lit/reactive-element@2.0.4: + resolution: {integrity: sha512-GFn91inaUa2oHLak8awSIigYz0cU0Payr1rcFsrkf5OJ5eSPxElyZfKh0f2p9FsTiZWXQdWGJeXZICEfXXYSXQ==} + dependencies: + '@lit-labs/ssr-dom-shim': 1.2.0 /@ljharb/through@2.3.12: resolution: {integrity: sha512-ajo/heTlG3QgC8EGP6APIejksVAYt4ayz4tqoP3MolFELzcH1x1fzwEYRJTPO0IELutZ5HQ0c26/GqAYy79u3g==} @@ -3236,6 +3388,7 @@ packages: /@msgpack/msgpack@2.8.0: resolution: {integrity: sha512-h9u4u/jiIRKbq25PM+zymTyW6bhTzELvOoUd+AvYriWOAKpLGnIamaET3pnHYoI5iYphAHBI4ayx0MehR+VVPQ==} engines: {node: '>= 10'} + dev: false /@multiformats/blake2@1.0.13: resolution: {integrity: sha512-T1Kzya0wjj85CaVeRSpJ858EnSvW1pw94GSitxYf84VsNdv5XYbJ6QG8y26Ft1bVALzrUCmqkQrR53QHSyu6RA==} @@ -3290,12 +3443,14 @@ packages: '@oozcitak/infra': 1.0.8 '@oozcitak/url': 1.0.4 '@oozcitak/util': 8.3.8 + dev: false /@oozcitak/infra@1.0.8: resolution: {integrity: sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==} engines: {node: '>=6.0'} dependencies: '@oozcitak/util': 8.3.8 + dev: false /@oozcitak/url@1.0.4: resolution: {integrity: sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==} @@ -3303,10 +3458,12 @@ packages: dependencies: '@oozcitak/infra': 1.0.8 '@oozcitak/util': 8.3.8 + dev: false /@oozcitak/util@8.3.8: resolution: {integrity: sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==} engines: {node: '>=8.0'} + dev: false /@opentelemetry/api@1.7.0: resolution: {integrity: sha512-AdY5wvN0P2vXBi3b29hxZgSFvdhdxPB9+f0B6s//P9Q8nibRWeA3cHm8UmLpio9ABigkVHJ5NMPk+Mz8VCCyrw==} @@ -3480,7 +3637,7 @@ packages: '@shoelace-style/animations': 1.1.0 '@shoelace-style/localize': 3.1.2 composed-offset-position: 0.0.4 - lit: 3.1.0 + lit: 3.1.2 qr-creator: 1.0.0 transitivePeerDependencies: - '@types/react' @@ -3511,6 +3668,7 @@ packages: /@socket.io/component-emitter@3.1.0: resolution: {integrity: sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==} + dev: false /@thewtex/setup-micromamba@1.9.7: resolution: {integrity: sha512-aP+gLE3dWIidtjhvLwJPb4E/AxmCFMnJd7J3Vdsj9T0hjsPrgTreAnbLod8oetwN2ohrJ5LxKCmtGa0b+lDqbw==} @@ -3541,15 +3699,18 @@ packages: dependencies: '@types/eslint': 8.56.5 '@types/estree': 1.0.5 + dev: false /@types/eslint@8.56.5: resolution: {integrity: sha512-u5/YPJHo1tvkSF2CE0USEkxon82Z5DBy2xR+qfyYNszpX9qcs4sT6uq2kBbj4BXY1+DBGDPnrhMZV3pKWGNukw==} dependencies: '@types/estree': 1.0.5 '@types/json-schema': 7.0.15 + dev: false /@types/estree@1.0.5: resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + dev: false /@types/figlet@1.5.8: resolution: {integrity: sha512-G22AUvy4Tl95XLE7jmUM8s8mKcoz+Hr+Xm9W90gJsppJq9f9tHvOGkrpn4gRX0q/cLtBdNkWtWCKDg2UDZoZvQ==} @@ -3655,6 +3816,7 @@ packages: /@types/webxr@0.5.14: resolution: {integrity: sha512-UEMMm/Xn3DtEa+gpzUrOcDj+SJS1tk5YodjwOxcqStNhCfPcwgyC5Srg2ToVKyg2Fhq16Ffpb0UWUQHqoT9AMA==} + dev: false /@types/yauzl@2.10.3: resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} @@ -3838,15 +4000,19 @@ packages: dependencies: '@webassemblyjs/helper-numbers': 1.11.6 '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + dev: false /@webassemblyjs/floating-point-hex-parser@1.11.6: resolution: {integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==} + dev: false /@webassemblyjs/helper-api-error@1.11.6: resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==} + dev: false /@webassemblyjs/helper-buffer@1.11.6: resolution: {integrity: sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==} + dev: false /@webassemblyjs/helper-numbers@1.11.6: resolution: {integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==} @@ -3854,9 +4020,11 @@ packages: '@webassemblyjs/floating-point-hex-parser': 1.11.6 '@webassemblyjs/helper-api-error': 1.11.6 '@xtuc/long': 4.2.2 + dev: false /@webassemblyjs/helper-wasm-bytecode@1.11.6: resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==} + dev: false /@webassemblyjs/helper-wasm-section@1.11.6: resolution: {integrity: sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==} @@ -3865,19 +4033,23 @@ packages: '@webassemblyjs/helper-buffer': 1.11.6 '@webassemblyjs/helper-wasm-bytecode': 1.11.6 '@webassemblyjs/wasm-gen': 1.11.6 + dev: false /@webassemblyjs/ieee754@1.11.6: resolution: {integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==} dependencies: '@xtuc/ieee754': 1.2.0 + dev: false /@webassemblyjs/leb128@1.11.6: resolution: {integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==} dependencies: '@xtuc/long': 4.2.2 + dev: false /@webassemblyjs/utf8@1.11.6: resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==} + dev: false /@webassemblyjs/wasm-edit@1.11.6: resolution: {integrity: sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==} @@ -3890,6 +4062,7 @@ packages: '@webassemblyjs/wasm-opt': 1.11.6 '@webassemblyjs/wasm-parser': 1.11.6 '@webassemblyjs/wast-printer': 1.11.6 + dev: false /@webassemblyjs/wasm-gen@1.11.6: resolution: {integrity: sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==} @@ -3899,6 +4072,7 @@ packages: '@webassemblyjs/ieee754': 1.11.6 '@webassemblyjs/leb128': 1.11.6 '@webassemblyjs/utf8': 1.11.6 + dev: false /@webassemblyjs/wasm-opt@1.11.6: resolution: {integrity: sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==} @@ -3907,6 +4081,7 @@ packages: '@webassemblyjs/helper-buffer': 1.11.6 '@webassemblyjs/wasm-gen': 1.11.6 '@webassemblyjs/wasm-parser': 1.11.6 + dev: false /@webassemblyjs/wasm-parser@1.11.6: resolution: {integrity: sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==} @@ -3917,18 +4092,22 @@ packages: '@webassemblyjs/ieee754': 1.11.6 '@webassemblyjs/leb128': 1.11.6 '@webassemblyjs/utf8': 1.11.6 + dev: false /@webassemblyjs/wast-printer@1.11.6: resolution: {integrity: sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==} dependencies: '@webassemblyjs/ast': 1.11.6 '@xtuc/long': 4.2.2 + dev: false /@xtuc/ieee754@1.2.0: resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} + dev: false /@xtuc/long@4.2.2: resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} + dev: false /abbrev@1.1.1: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} @@ -3947,6 +4126,7 @@ packages: acorn: ^8 dependencies: acorn: 8.11.2 + dev: false /acorn-jsx@5.3.2(acorn@8.11.2): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -3992,6 +4172,7 @@ packages: ajv: ^6.9.1 dependencies: ajv: 6.12.6 + dev: false /ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} @@ -4234,6 +4415,7 @@ packages: picocolors: 1.0.0 postcss: 8.4.32 postcss-value-parser: 4.2.0 + dev: false /ava@6.1.0: resolution: {integrity: sha512-0fOQIWMHT9DYelzTYc3TI/4fmmmJ5LdvRWd6F43CppYfg84VrM5EO+hmlv2cPujMJAWuVesUWVloUu9PIwrgTA==} @@ -4332,6 +4514,7 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color + dev: false /babel-plugin-polyfill-corejs3@0.9.0(@babel/core@7.24.0): resolution: {integrity: sha512-7nZPG1uzK2Ymhy/NbaOWTg3uibM2BmGASS4vHS4szRZAIR8R6GwA/xAujpdrXU5iyklrimWnLWU+BLF9suPTqg==} @@ -4343,6 +4526,7 @@ packages: core-js-compat: 3.36.0 transitivePeerDependencies: - supports-color + dev: false /babel-plugin-polyfill-regenerator@0.5.5(@babel/core@7.24.0): resolution: {integrity: sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg==} @@ -4353,6 +4537,7 @@ packages: '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.24.0) transitivePeerDependencies: - supports-color + dev: false /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -4382,6 +4567,7 @@ packages: /big.js@5.2.2: resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} + dev: false /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} @@ -4456,6 +4642,7 @@ packages: electron-to-chromium: 1.4.700 node-releases: 2.0.14 update-browserslist-db: 1.0.13(browserslist@4.23.0) + dev: false /buffer-alloc-unsafe@1.1.0: resolution: {integrity: sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==} @@ -4474,6 +4661,7 @@ packages: /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + dev: false /buffer@5.7.1: resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} @@ -4524,6 +4712,7 @@ packages: /caniuse-lite@1.0.30001597: resolution: {integrity: sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w==} + dev: false /caseless@0.12.0: resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} @@ -4594,6 +4783,7 @@ packages: /chrome-trace-event@1.0.3: resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} engines: {node: '>=6.0'} + dev: false /chunkd@2.0.1: resolution: {integrity: sha512-7d58XsFmOq0j6el67Ug9mHf9ELUXsQXYJBkyxhH/k+6Ke0qXRnv0kbemx+Twc6fRJ07C49lcbdgm9FL1Ei/6SQ==} @@ -4746,6 +4936,7 @@ packages: /commander@9.2.0: resolution: {integrity: sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==} engines: {node: ^12.20.0 || >=14} + dev: false /common-path-prefix@3.0.0: resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==} @@ -4812,6 +5003,7 @@ packages: /convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + dev: false /convert-to-spaces@2.0.1: resolution: {integrity: sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==} @@ -4822,6 +5014,7 @@ packages: resolution: {integrity: sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw==} dependencies: browserslist: 4.23.0 + dev: false /core-util-is@1.0.2: resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} @@ -4935,20 +5128,24 @@ packages: engines: {node: '>=12'} dependencies: internmap: 2.0.3 + dev: false /d3-color@3.1.0: resolution: {integrity: sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==} engines: {node: '>=12'} + dev: false /d3-format@3.1.0: resolution: {integrity: sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==} engines: {node: '>=12'} + dev: false /d3-interpolate@3.0.1: resolution: {integrity: sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==} engines: {node: '>=12'} dependencies: d3-color: 3.1.0 + dev: false /d3-scale@4.0.2: resolution: {integrity: sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==} @@ -4959,18 +5156,21 @@ packages: d3-interpolate: 3.0.1 d3-time: 3.1.0 d3-time-format: 4.1.0 + dev: false /d3-time-format@4.1.0: resolution: {integrity: sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==} engines: {node: '>=12'} dependencies: d3-time: 3.1.0 + dev: false /d3-time@3.1.0: resolution: {integrity: sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==} engines: {node: '>=12'} dependencies: d3-array: 3.2.4 + dev: false /dashdash@1.14.1: resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==} @@ -5165,6 +5365,7 @@ packages: /electron-to-chromium@1.4.700: resolution: {integrity: sha512-40dqKQ3F7C8fbBEmjSeJ+qEHCKzPyrP9SkeIBZ3wSCUH9nhWStrDz030XlDzlhNhlul1Z0fz7TpDFnsIzo4Jtg==} + dev: false /emittery@1.0.1: resolution: {integrity: sha512-2ID6FdrMD9KDLldGesP6317G78K7km/kMcwItRtVFva7I/cSEOIaLpewaUb+YLXVwdAp3Ctfxh/V5zIl1sj7dQ==} @@ -5185,6 +5386,7 @@ packages: /emojis-list@3.0.0: resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} engines: {node: '>= 4'} + dev: false /end-of-stream@1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} @@ -5203,10 +5405,12 @@ packages: - bufferutil - supports-color - utf-8-validate + dev: false /engine.io-parser@5.2.2: resolution: {integrity: sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==} engines: {node: '>=10.0.0'} + dev: false /enhanced-resolve@5.16.0: resolution: {integrity: sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==} @@ -5214,6 +5418,7 @@ packages: dependencies: graceful-fs: 4.2.11 tapable: 2.2.1 + dev: false /enquirer@2.4.1: resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} @@ -5298,6 +5503,7 @@ packages: /es-module-lexer@1.4.1: resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==} + dev: false /es-set-tostringtag@2.0.2: resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==} @@ -5411,6 +5617,7 @@ packages: '@esbuild/win32-arm64': 0.19.9 '@esbuild/win32-ia32': 0.19.9 '@esbuild/win32-x64': 0.19.9 + dev: true /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} @@ -5911,6 +6118,7 @@ packages: /fflate@0.7.3: resolution: {integrity: sha512-0Zz1jOzJWERhyhsimS54VTqOteCNwRtIlh8isdL0AXLo0g7xNTfTL7oWrkmCnPhZGocKIkWHBistBrrpoNH3aw==} + dev: false /figlet@1.7.0: resolution: {integrity: sha512-gO8l3wvqo0V7wEFLXPbkX83b7MVjRrk1oRLfYlZXol8nEpb/ON9pcKLI4qpBv5YtOTfrINtqb7b40iYY2FTWFg==} @@ -6085,6 +6293,7 @@ packages: /fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} + dev: false /from@0.1.7: resolution: {integrity: sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==} @@ -6181,6 +6390,7 @@ packages: /gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} + dev: false /get-caller-file@2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} @@ -6246,6 +6456,7 @@ packages: /gl-matrix@3.4.3: resolution: {integrity: sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA==} + dev: false /glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} @@ -6263,6 +6474,7 @@ packages: /glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} + dev: false /glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} @@ -6294,6 +6506,7 @@ packages: /globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} + dev: false /globals@13.23.0: resolution: {integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==} @@ -6520,6 +6733,7 @@ packages: - bufferutil - supports-color - utf-8-validate + dev: false /import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} @@ -6600,6 +6814,7 @@ packages: /internmap@2.0.3: resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} engines: {node: '>=12'} + dev: false /interpret@1.4.0: resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} @@ -6995,6 +7210,7 @@ packages: wasm-feature-detect: 1.6.1 transitivePeerDependencies: - debug + dev: false /itk-wasm@1.0.0-b.170: resolution: {integrity: sha512-FoU9Ccr2EKhMIlYlZs6k+4f8TmnjxTfG9KLSZBJdRakFoAAI4lx6/C0cw9C9ht7cOChg1OYZJdpZvkZKUPUSQg==} @@ -7022,6 +7238,7 @@ packages: '@types/node': 20.11.16 merge-stream: 2.0.0 supports-color: 8.1.1 + dev: false /joi@17.11.0: resolution: {integrity: sha512-NgB+lZLNoqISVy1rZocE9PZI36bL/77ie924Ri43yEvi9GUUMPeyVIr8KdFTMUlby1p0PBYMk9spIxEUQYqrJQ==} @@ -7050,6 +7267,7 @@ packages: dependencies: argparse: 1.0.10 esprima: 4.0.1 + dev: false /js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} @@ -7073,11 +7291,13 @@ packages: /jsesc@0.5.0: resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} hasBin: true + dev: false /jsesc@2.5.2: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} hasBin: true + dev: false /json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} @@ -7115,6 +7335,7 @@ packages: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} hasBin: true + dev: false /jsonfile@4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} @@ -7202,24 +7423,24 @@ packages: wrap-ansi: 7.0.0 dev: true - /lit-element@4.0.2: - resolution: {integrity: sha512-/W6WQZUa5VEXwC7H9tbtDMdSs9aWil3Ou8hU6z2cOKWbsm/tXPAcsoaHVEtrDo0zcOIE5GF6QgU55tlGL2Nihg==} + /lit-element@4.0.4: + resolution: {integrity: sha512-98CvgulX6eCPs6TyAIQoJZBCQPo80rgXR+dVBs61cstJXqtI+USQZAbA4gFHh6L/mxBx9MrgPLHLsUgDUHAcCQ==} dependencies: - '@lit-labs/ssr-dom-shim': 1.1.2 - '@lit/reactive-element': 2.0.2 - lit-html: 3.1.0 + '@lit-labs/ssr-dom-shim': 1.2.0 + '@lit/reactive-element': 2.0.4 + lit-html: 3.1.2 - /lit-html@3.1.0: - resolution: {integrity: sha512-FwAjq3iNsaO6SOZXEIpeROlJLUlrbyMkn4iuv4f4u1H40Jw8wkeR/OUXZUHUoiYabGk8Y4Y0F/rgq+R4MrOLmA==} + /lit-html@3.1.2: + resolution: {integrity: sha512-3OBZSUrPnAHoKJ9AMjRL/m01YJxQMf+TMHanNtTHG68ubjnZxK0RFl102DPzsw4mWnHibfZIBJm3LWCZ/LmMvg==} dependencies: '@types/trusted-types': 2.0.7 - /lit@3.1.0: - resolution: {integrity: sha512-rzo/hmUqX8zmOdamDAeydfjsGXbbdtAFqMhmocnh2j9aDYqbu0fjXygjCa0T99Od9VQ/2itwaGrjZz/ZELVl7w==} + /lit@3.1.2: + resolution: {integrity: sha512-VZx5iAyMtX7CV4K8iTLdCkMaYZ7ipjJZ0JcSdJ0zIdGxxyurjIn7yuuSxNBD7QmjvcNJwr0JS4cAdAtsy7gZ6w==} dependencies: - '@lit/reactive-element': 2.0.2 - lit-element: 4.0.2 - lit-html: 3.1.0 + '@lit/reactive-element': 2.0.4 + lit-element: 4.0.4 + lit-html: 3.1.2 /load-json-file@5.3.0: resolution: {integrity: sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==} @@ -7250,6 +7471,7 @@ packages: /loader-runner@4.3.0: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} + dev: false /loader-utils@1.4.2: resolution: {integrity: sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==} @@ -7258,6 +7480,7 @@ packages: big.js: 5.2.2 emojis-list: 3.0.0 json5: 1.0.2 + dev: false /loader-utils@2.0.4: resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} @@ -7266,6 +7489,7 @@ packages: big.js: 5.2.2 emojis-list: 3.0.0 json5: 2.2.3 + dev: false /locate-path@3.0.0: resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} @@ -7298,6 +7522,7 @@ packages: /lodash.debounce@4.0.8: resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + dev: false /lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} @@ -7352,6 +7577,7 @@ packages: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: yallist: 3.1.1 + dev: false /lru-cache@6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} @@ -7575,6 +7801,7 @@ packages: /neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} + dev: false /node-emoji@2.1.3: resolution: {integrity: sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==} @@ -7605,6 +7832,7 @@ packages: /node-releases@2.0.14: resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} + dev: false /nofilter@3.1.0: resolution: {integrity: sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==} @@ -7636,6 +7864,7 @@ packages: /normalize-range@0.1.2: resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} engines: {node: '>=0.10.0'} + dev: false /npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} @@ -7862,6 +8091,7 @@ packages: dependencies: eventemitter3: 5.0.1 p-timeout: 6.1.2 + dev: false /p-timeout@5.1.0: resolution: {integrity: sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==} @@ -7870,6 +8100,7 @@ packages: /p-timeout@6.1.2: resolution: {integrity: sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==} engines: {node: '>=14.16'} + dev: false /p-try@2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} @@ -8043,6 +8274,7 @@ packages: /postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + dev: false /postcss@8.4.32: resolution: {integrity: sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==} @@ -8206,6 +8438,7 @@ packages: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} dependencies: safe-buffer: 5.2.1 + dev: false /react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} @@ -8297,9 +8530,11 @@ packages: engines: {node: '>=4'} dependencies: regenerate: 1.4.2 + dev: false /regenerate@1.4.2: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} + dev: false /regenerator-runtime@0.14.0: resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} @@ -8308,6 +8543,7 @@ packages: resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} dependencies: '@babel/runtime': 7.23.5 + dev: false /regexp.prototype.flags@1.5.1: resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} @@ -8333,12 +8569,14 @@ packages: regjsparser: 0.9.1 unicode-match-property-ecmascript: 2.0.0 unicode-match-property-value-ecmascript: 2.1.0 + dev: false /regjsparser@0.9.1: resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} hasBin: true dependencies: jsesc: 0.5.0 + dev: false /request-progress@3.0.0: resolution: {integrity: sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==} @@ -8504,6 +8742,7 @@ packages: '@types/json-schema': 7.0.15 ajv: 6.12.6 ajv-keywords: 3.5.2(ajv@6.12.6) + dev: false /secure-compare@3.0.1: resolution: {integrity: sha512-AckIIV90rPDcBcglUwXPF3kg0P0qmPsPXAj6BBEENQE1p5yA1xfmDJzfi1Tappj37Pv2mVbKpL3Z1T+Nn7k1Qw==} @@ -8511,6 +8750,7 @@ packages: /seedrandom@3.0.5: resolution: {integrity: sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==} + dev: false /seek-bzip@1.0.6: resolution: {integrity: sha512-e1QtP3YL5tWww8uKaOCQ18UxIT2laNBXHjV/S2WYCiK4udiv8lkG89KRIoCjUagnAmCBurjF4zEVX2ByBbnCjQ==} @@ -8545,6 +8785,7 @@ packages: resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} dependencies: randombytes: 2.1.0 + dev: false /set-blocking@2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} @@ -8572,6 +8813,7 @@ packages: resolution: {integrity: sha512-dt8F9K0x4rjmaFyHh7rNDfpt4LUiR64zhNIEwp2WbE99B3z4ALuvvmhftkElg93dUD6sTmv/aXa/z9SJiEddcA==} dependencies: loader-utils: 1.4.2 + dev: false /shebang-command@1.2.0: resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} @@ -8702,6 +8944,7 @@ packages: - bufferutil - supports-color - utf-8-validate + dev: false /socket.io-parser@4.2.4: resolution: {integrity: sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==} @@ -8711,6 +8954,7 @@ packages: debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color + dev: false /source-map-js@1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} @@ -8721,13 +8965,16 @@ packages: dependencies: buffer-from: 1.1.2 source-map: 0.6.1 + dev: false /source-map@0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} + dev: false /spark-md5@3.0.2: resolution: {integrity: sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==} + dev: false /sparse-array@1.3.2: resolution: {integrity: sha512-ZT711fePGn3+kQyLuv1fpd3rNSkNF8vd5Kv2D+qnOANeyKs3fx6bUMGWRPvgTTcYV64QMqZKZwcuaQSP3AZ0tg==} @@ -8850,6 +9097,7 @@ packages: dependencies: inherits: 2.0.4 readable-stream: 3.6.2 + dev: false /stream-combiner@0.0.4: resolution: {integrity: sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==} @@ -8999,6 +9247,7 @@ packages: /tapable@2.2.1: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} + dev: false /tar-stream@1.6.2: resolution: {integrity: sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==} @@ -9033,7 +9282,7 @@ packages: engines: {node: '>=8'} dev: true - /terser-webpack-plugin@5.3.10(esbuild@0.19.9)(webpack@5.90.3): + /terser-webpack-plugin@5.3.10(webpack@5.90.3): resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -9050,12 +9299,12 @@ packages: optional: true dependencies: '@jridgewell/trace-mapping': 0.3.25 - esbuild: 0.19.9 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.29.1 - webpack: 5.90.3(esbuild@0.19.9) + webpack: 5.90.3 + dev: false /terser@5.29.1: resolution: {integrity: sha512-lZQ/fyaIGxsbGxApKmoPTODIzELy3++mXhS5hOqaAWZjQtpq/hFHAc+rm29NND1rYRxRWKcjuARNwULNXa5RtQ==} @@ -9066,6 +9315,7 @@ packages: acorn: 8.11.2 commander: 2.20.3 source-map-support: 0.5.21 + dev: false /text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} @@ -9102,6 +9352,7 @@ packages: /to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} + dev: false /to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} @@ -9350,6 +9601,7 @@ packages: /unicode-canonical-property-names-ecmascript@2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} + dev: false /unicode-emoji-modifier-base@1.0.0: resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} @@ -9362,14 +9614,17 @@ packages: dependencies: unicode-canonical-property-names-ecmascript: 2.0.0 unicode-property-aliases-ecmascript: 2.1.0 + dev: false /unicode-match-property-value-ecmascript@2.1.0: resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} engines: {node: '>=4'} + dev: false /unicode-property-aliases-ecmascript@2.1.0: resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} engines: {node: '>=4'} + dev: false /unicorn-magic@0.1.0: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} @@ -9416,6 +9671,7 @@ packages: browserslist: 4.23.0 escalade: 3.1.1 picocolors: 1.0.0 + dev: false /uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} @@ -9671,6 +9927,7 @@ packages: dependencies: glob-to-regexp: 0.4.1 graceful-fs: 4.2.11 + dev: false /wcwidth@1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} @@ -9688,8 +9945,9 @@ packages: /webpack-sources@3.2.3: resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} engines: {node: '>=10.13.0'} + dev: false - /webpack@5.90.3(esbuild@0.19.9): + /webpack@5.90.3: resolution: {integrity: sha512-h6uDYlWCctQRuXBs1oYpVe6sFcWedl0dpcVaTf/YF67J9bKvwJajFulMVSYKHrksMB3I/pIagRzDxwxkebuzKA==} engines: {node: '>=10.13.0'} hasBin: true @@ -9720,16 +9978,18 @@ packages: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(esbuild@0.19.9)(webpack@5.90.3) + terser-webpack-plugin: 5.3.10(webpack@5.90.3) watchpack: 2.4.0 webpack-sources: 3.2.3 transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js + dev: false /webworker-promise@0.5.0: resolution: {integrity: sha512-14iR79jHAV7ozwvbfif+3wCaApT3I1g8Lo0rJZrwAu6wxZGx/08Y8KXz6as6ZLNUEEufeiEBBYrqyDBClXOsEw==} + dev: false /well-known-symbols@2.0.0: resolution: {integrity: sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q==} @@ -9847,7 +10107,8 @@ packages: dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.90.3(esbuild@0.19.9) + webpack: 5.90.3 + dev: false /wrap-ansi@6.2.0: resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} @@ -9888,11 +10149,13 @@ packages: optional: true utf-8-validate: optional: true + dev: false /wslink@1.12.4: resolution: {integrity: sha512-4AJtHZ0qtBa7zOp0e3R5OJxQ6HY9eo+jDPcjms6E2ChXgQ5D4hlMynFF8mEFXx54+PmLo8f2DMiM9bxN6QTAjg==} dependencies: json5: 2.2.3 + dev: false /xdg-basedir@4.0.0: resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==} @@ -9916,6 +10179,7 @@ packages: '@oozcitak/util': 8.3.8 '@types/node': 20.11.16 js-yaml: 3.14.0 + dev: false /xmlbuilder@11.0.1: resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==} @@ -9925,8 +10189,9 @@ packages: /xmlhttprequest-ssl@2.0.0: resolution: {integrity: sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==} engines: {node: '>=0.4.0'} + dev: false - /xstate-lit@2.0.5(@lit/context@1.1.0)(lit@3.1.0)(xstate@5.5.2): + /xstate-lit@2.0.5(@lit/context@1.1.0)(lit@3.1.2)(xstate@5.5.2): resolution: {integrity: sha512-XThgLbeJiii3eQvmF+lnxas+6OZB3EbZQ6qBD3uHql5OdTEktDz52pGIFCMqqGNLIsaR5xRIteN1w9VR1XqWBw==} peerDependencies: '@lit/context': ^1.1.0 @@ -9934,11 +10199,13 @@ packages: xstate: ^5.4.1 dependencies: '@lit/context': 1.1.0 - lit: 3.1.0 + lit: 3.1.2 xstate: 5.5.2 + dev: false /xstate@5.5.2: resolution: {integrity: sha512-RLf9wc5HDO0pvj2TQQ+lY6tDW8CU8Entfgmtzzo6NhkC8qOEBXSN6WUSvnUM7NHZgdih06+by1b4nbaHVu1c+g==} + dev: false /xstate@5.8.0: resolution: {integrity: sha512-YoJDJFRmmXcI6ZrL7H15Ew2Q5HjM/X3zcz1cqLT4OEeF/ktXDkWMGyIZOOMItM5ELR6sSqm1GY5el11M/JAb/A==} @@ -9963,6 +10230,7 @@ packages: /yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + dev: false /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} From 0ea5de894839e50f31a8f7204cec8def071e9d69 Mon Sep 17 00:00:00 2001 From: Paul Elliott Date: Tue, 2 Apr 2024 16:14:58 -0400 Subject: [PATCH 5/8] chore(demo-app): put utilities.js in demo-app package --- .../test/browser/demo-app/index.html | 2 - .../test/browser/demo-app/utilities.js | 95 ------------------- .../test/browser/demo-app/index.html | 2 - .../test/browser/demo-app/utilities.js | 95 ------------------- .../core/typescript/demo-app/package.json | 2 +- .../core/typescript/demo-app/src/demo-app.js | 1 + .../demo-app => demo-app/src}/utilities.js | 0 .../src/bindgen/python-web-demo/web-demo.js | 6 +- .../typescript/resources/demo-app/index.html | 2 - .../bindgen/typescript/write-support-files.js | 15 --- .../test/browser/demo-app/index.html | 2 - .../test/browser/demo-app/index.html | 2 - .../test/browser/demo-app/utilities.js | 95 ------------------- .../test/browser/demo-app/index.html | 2 - .../test/browser/demo-app/utilities.js | 95 ------------------- .../test/browser/demo-app/index.html | 2 - .../test/browser/demo-app/utilities.js | 95 ------------------- 17 files changed, 6 insertions(+), 507 deletions(-) delete mode 100644 packages/compare-images/typescript/test/browser/demo-app/utilities.js delete mode 100644 packages/compress-stringify/typescript/test/browser/demo-app/utilities.js rename packages/core/typescript/{itk-wasm/src/bindgen/typescript/resources/demo-app => demo-app/src}/utilities.js (100%) delete mode 100644 packages/downsample/typescript/test/browser/demo-app/utilities.js delete mode 100644 packages/image-io/typescript/test/browser/demo-app/utilities.js delete mode 100644 packages/mesh-io/typescript/test/browser/demo-app/utilities.js diff --git a/packages/compare-images/typescript/test/browser/demo-app/index.html b/packages/compare-images/typescript/test/browser/demo-app/index.html index e3969d7e3..07e9063c7 100644 --- a/packages/compare-images/typescript/test/browser/demo-app/index.html +++ b/packages/compare-images/typescript/test/browser/demo-app/index.html @@ -14,8 +14,6 @@ - - diff --git a/packages/compare-images/typescript/test/browser/demo-app/utilities.js b/packages/compare-images/typescript/test/browser/demo-app/utilities.js deleted file mode 100644 index 909a54302..000000000 --- a/packages/compare-images/typescript/test/browser/demo-app/utilities.js +++ /dev/null @@ -1,95 +0,0 @@ -// Generated file. To retain edits, remove this comment. - -import * as itk from 'itk-wasm' -globalThis.itk = itk - -function downloadFile(content, filename) { - const url = URL.createObjectURL(new Blob([content])) - const a = document.createElement('a') - a.href = url - a.download = filename || 'download' - document.body.appendChild(a) - function clickHandler(event) { - setTimeout(() => { - URL.revokeObjectURL(url) - a.removeEventListener('click', clickHandler) - }, 200) - }; - a.addEventListener('click', clickHandler, false) - a.click() - return a -} -globalThis.downloadFile = downloadFile - -function interfaceTypeJsonReplacer (key, value) { - if (!!value && value.byteLength !== undefined) { - return String(value.slice(0, 6)) + '...' - } - return value -} -globalThis.interfaceTypeJsonReplacer = interfaceTypeJsonReplacer - -function escapeHtml(html) { - const div = document.createElement('div'); - div.textContent = html; - const escaped = div.innerHTML; - div.remove() - return escaped -} -globalThis.escapeHtml = escapeHtml - -function notify(title, message, variant = 'primary', icon = 'info-circle', duration = 3000) { - const slAlert = Object.assign(document.createElement('sl-alert'), { - variant, - closable: true, - duration: duration, - innerHTML: ` - - ${escapeHtml(title)}
- ${escapeHtml(message)} - ` - }); - - document.body.append(slAlert); - setTimeout(() => slAlert.toast(), 300) -} -globalThis.notify = notify - -function disableInputs(inputId) { - document.querySelectorAll(`#${inputId} sl-button`).forEach(button => { - button.disabled = true - }) - document.querySelector(`#${inputId} sl-button[name="run"]`).loading = true - document.querySelectorAll(`#${inputId} sl-checkbox`).forEach(checkbox => { - checkbox.disabled = true - }) - document.querySelectorAll(`#${inputId} sl-input`).forEach(input => { - input.disabled = true - }) -} -globalThis.disableInputs = disableInputs - -function enableInputs(inputId) { - document.querySelectorAll(`#${inputId} sl-button`).forEach(button => { - button.disabled = false - }) - document.querySelector(`#${inputId} sl-button[name="run"]`).loading = false - document.querySelectorAll(`#${inputId} sl-checkbox`).forEach(checkbox => { - checkbox.disabled = false - }) - document.querySelectorAll(`#${inputId} sl-input`).forEach(input => { - input.disabled = false - }) -} -globalThis.enableInputs = enableInputs - -function applyInputParsedJson(inputElement, modelMap, parameterName) { - try { - const parsedJson = JSON.parse(inputElement.value) - modelMap.set(parameterName, parsedJson) - inputElement.setCustomValidity('') - } catch (error) { - inputElement.setCustomValidity(error.message) - } -} -globalThis.applyInputParsedJson = applyInputParsedJson diff --git a/packages/compress-stringify/typescript/test/browser/demo-app/index.html b/packages/compress-stringify/typescript/test/browser/demo-app/index.html index f9801b940..929223bfe 100644 --- a/packages/compress-stringify/typescript/test/browser/demo-app/index.html +++ b/packages/compress-stringify/typescript/test/browser/demo-app/index.html @@ -16,8 +16,6 @@ - - diff --git a/packages/compress-stringify/typescript/test/browser/demo-app/utilities.js b/packages/compress-stringify/typescript/test/browser/demo-app/utilities.js deleted file mode 100644 index 909a54302..000000000 --- a/packages/compress-stringify/typescript/test/browser/demo-app/utilities.js +++ /dev/null @@ -1,95 +0,0 @@ -// Generated file. To retain edits, remove this comment. - -import * as itk from 'itk-wasm' -globalThis.itk = itk - -function downloadFile(content, filename) { - const url = URL.createObjectURL(new Blob([content])) - const a = document.createElement('a') - a.href = url - a.download = filename || 'download' - document.body.appendChild(a) - function clickHandler(event) { - setTimeout(() => { - URL.revokeObjectURL(url) - a.removeEventListener('click', clickHandler) - }, 200) - }; - a.addEventListener('click', clickHandler, false) - a.click() - return a -} -globalThis.downloadFile = downloadFile - -function interfaceTypeJsonReplacer (key, value) { - if (!!value && value.byteLength !== undefined) { - return String(value.slice(0, 6)) + '...' - } - return value -} -globalThis.interfaceTypeJsonReplacer = interfaceTypeJsonReplacer - -function escapeHtml(html) { - const div = document.createElement('div'); - div.textContent = html; - const escaped = div.innerHTML; - div.remove() - return escaped -} -globalThis.escapeHtml = escapeHtml - -function notify(title, message, variant = 'primary', icon = 'info-circle', duration = 3000) { - const slAlert = Object.assign(document.createElement('sl-alert'), { - variant, - closable: true, - duration: duration, - innerHTML: ` - - ${escapeHtml(title)}
- ${escapeHtml(message)} - ` - }); - - document.body.append(slAlert); - setTimeout(() => slAlert.toast(), 300) -} -globalThis.notify = notify - -function disableInputs(inputId) { - document.querySelectorAll(`#${inputId} sl-button`).forEach(button => { - button.disabled = true - }) - document.querySelector(`#${inputId} sl-button[name="run"]`).loading = true - document.querySelectorAll(`#${inputId} sl-checkbox`).forEach(checkbox => { - checkbox.disabled = true - }) - document.querySelectorAll(`#${inputId} sl-input`).forEach(input => { - input.disabled = true - }) -} -globalThis.disableInputs = disableInputs - -function enableInputs(inputId) { - document.querySelectorAll(`#${inputId} sl-button`).forEach(button => { - button.disabled = false - }) - document.querySelector(`#${inputId} sl-button[name="run"]`).loading = false - document.querySelectorAll(`#${inputId} sl-checkbox`).forEach(checkbox => { - checkbox.disabled = false - }) - document.querySelectorAll(`#${inputId} sl-input`).forEach(input => { - input.disabled = false - }) -} -globalThis.enableInputs = enableInputs - -function applyInputParsedJson(inputElement, modelMap, parameterName) { - try { - const parsedJson = JSON.parse(inputElement.value) - modelMap.set(parameterName, parsedJson) - inputElement.setCustomValidity('') - } catch (error) { - inputElement.setCustomValidity(error.message) - } -} -globalThis.applyInputParsedJson = applyInputParsedJson diff --git a/packages/core/typescript/demo-app/package.json b/packages/core/typescript/demo-app/package.json index e2b1b2573..f8a338a6d 100644 --- a/packages/core/typescript/demo-app/package.json +++ b/packages/core/typescript/demo-app/package.json @@ -19,7 +19,7 @@ "@itk-viewer/element": "^0.2.12", "@itk-viewer/io": "^0.1.8", "@shoelace-style/shoelace": "^2.12.0", - "itk-wasm": "1.0.0-b.170", + "itk-wasm": "workspace:^", "lit": "^3.1.2" }, "repository": { diff --git a/packages/core/typescript/demo-app/src/demo-app.js b/packages/core/typescript/demo-app/src/demo-app.js index 9c1751df3..98d9077ee 100644 --- a/packages/core/typescript/demo-app/src/demo-app.js +++ b/packages/core/typescript/demo-app/src/demo-app.js @@ -22,6 +22,7 @@ import "@shoelace-style/shoelace/dist/components/card/card.js"; import { setBasePath } from "@shoelace-style/shoelace/dist/utilities/base-path"; import "./itk-image-details.js"; +import "./utilities.js" setBasePath("/"); diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/utilities.js b/packages/core/typescript/demo-app/src/utilities.js similarity index 100% rename from packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/utilities.js rename to packages/core/typescript/demo-app/src/utilities.js diff --git a/packages/core/typescript/itk-wasm/src/bindgen/python-web-demo/web-demo.js b/packages/core/typescript/itk-wasm/src/bindgen/python-web-demo/web-demo.js index bb0b5e2f8..7d851cb93 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/python-web-demo/web-demo.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/python-web-demo/web-demo.js @@ -22,9 +22,11 @@ function webDemo (outputDir, buildDir, emscriptenWasmBinaries, options) { if (!fs.existsSync(demoStylePath)) { fs.copyFileSync(typescriptBindgenResource(path.join('demo-app', 'style.css')), demoStylePath) } - + + const demoAppPackage = path.join(path.dirname(import.meta.url.substring(7)), '..', '..', '..', '..', 'demo-app') + const utilitiesHome = path.joing(demoAppPackage, 'src', 'utilities.js') const demoJsUtilities = path.join(outputDir, 'utilities.js') - writeIfOverrideNotPresent(demoJsUtilities, fs.readFileSync(typescriptBindgenResource(path.join('demo-app', 'utilities.js')), 'utf8')) + writeIfOverrideNotPresent(demoJsUtilities, fs.readFileSync(utilitiesHome), 'utf8') const logoPath = path.join(outputDir, 'logo.svg') diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/index.html b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/index.html index c3b3c68ad..edba3b366 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/index.html +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/resources/demo-app/index.html @@ -10,8 +10,6 @@ - - @bindgenGitHubCorner@
diff --git a/packages/core/typescript/itk-wasm/src/bindgen/typescript/write-support-files.js b/packages/core/typescript/itk-wasm/src/bindgen/typescript/write-support-files.js index 1603e70dc..3d5a6dcd3 100644 --- a/packages/core/typescript/itk-wasm/src/bindgen/typescript/write-support-files.js +++ b/packages/core/typescript/itk-wasm/src/bindgen/typescript/write-support-files.js @@ -182,21 +182,6 @@ function writeSupportFiles( ) } - const demoJsUtilities = path.join( - outputDir, - 'test', - 'browser', - 'demo-app', - 'utilities.js' - ) - writeIfOverrideNotPresent( - demoJsUtilities, - fs.readFileSync(bindgenResource(path.join('demo-app', 'utilities.js')), { - encoding: 'utf8', - flag: 'r' - }) - ) - const viteConfigPath = path.join(outputDir, 'vite.config.js') if (!fs.existsSync(viteConfigPath)) { fs.copyFileSync(bindgenResource('vite.config.js'), viteConfigPath) diff --git a/packages/dicom/typescript/test/browser/demo-app/index.html b/packages/dicom/typescript/test/browser/demo-app/index.html index cf91ac25f..4d2c1a97c 100644 --- a/packages/dicom/typescript/test/browser/demo-app/index.html +++ b/packages/dicom/typescript/test/browser/demo-app/index.html @@ -16,8 +16,6 @@ - - diff --git a/packages/downsample/typescript/test/browser/demo-app/index.html b/packages/downsample/typescript/test/browser/demo-app/index.html index 5bbbe82aa..b8e51b29c 100644 --- a/packages/downsample/typescript/test/browser/demo-app/index.html +++ b/packages/downsample/typescript/test/browser/demo-app/index.html @@ -16,8 +16,6 @@ - - diff --git a/packages/downsample/typescript/test/browser/demo-app/utilities.js b/packages/downsample/typescript/test/browser/demo-app/utilities.js deleted file mode 100644 index 909a54302..000000000 --- a/packages/downsample/typescript/test/browser/demo-app/utilities.js +++ /dev/null @@ -1,95 +0,0 @@ -// Generated file. To retain edits, remove this comment. - -import * as itk from 'itk-wasm' -globalThis.itk = itk - -function downloadFile(content, filename) { - const url = URL.createObjectURL(new Blob([content])) - const a = document.createElement('a') - a.href = url - a.download = filename || 'download' - document.body.appendChild(a) - function clickHandler(event) { - setTimeout(() => { - URL.revokeObjectURL(url) - a.removeEventListener('click', clickHandler) - }, 200) - }; - a.addEventListener('click', clickHandler, false) - a.click() - return a -} -globalThis.downloadFile = downloadFile - -function interfaceTypeJsonReplacer (key, value) { - if (!!value && value.byteLength !== undefined) { - return String(value.slice(0, 6)) + '...' - } - return value -} -globalThis.interfaceTypeJsonReplacer = interfaceTypeJsonReplacer - -function escapeHtml(html) { - const div = document.createElement('div'); - div.textContent = html; - const escaped = div.innerHTML; - div.remove() - return escaped -} -globalThis.escapeHtml = escapeHtml - -function notify(title, message, variant = 'primary', icon = 'info-circle', duration = 3000) { - const slAlert = Object.assign(document.createElement('sl-alert'), { - variant, - closable: true, - duration: duration, - innerHTML: ` - - ${escapeHtml(title)}
- ${escapeHtml(message)} - ` - }); - - document.body.append(slAlert); - setTimeout(() => slAlert.toast(), 300) -} -globalThis.notify = notify - -function disableInputs(inputId) { - document.querySelectorAll(`#${inputId} sl-button`).forEach(button => { - button.disabled = true - }) - document.querySelector(`#${inputId} sl-button[name="run"]`).loading = true - document.querySelectorAll(`#${inputId} sl-checkbox`).forEach(checkbox => { - checkbox.disabled = true - }) - document.querySelectorAll(`#${inputId} sl-input`).forEach(input => { - input.disabled = true - }) -} -globalThis.disableInputs = disableInputs - -function enableInputs(inputId) { - document.querySelectorAll(`#${inputId} sl-button`).forEach(button => { - button.disabled = false - }) - document.querySelector(`#${inputId} sl-button[name="run"]`).loading = false - document.querySelectorAll(`#${inputId} sl-checkbox`).forEach(checkbox => { - checkbox.disabled = false - }) - document.querySelectorAll(`#${inputId} sl-input`).forEach(input => { - input.disabled = false - }) -} -globalThis.enableInputs = enableInputs - -function applyInputParsedJson(inputElement, modelMap, parameterName) { - try { - const parsedJson = JSON.parse(inputElement.value) - modelMap.set(parameterName, parsedJson) - inputElement.setCustomValidity('') - } catch (error) { - inputElement.setCustomValidity(error.message) - } -} -globalThis.applyInputParsedJson = applyInputParsedJson diff --git a/packages/image-io/typescript/test/browser/demo-app/index.html b/packages/image-io/typescript/test/browser/demo-app/index.html index 7a6d55713..fea4f7619 100644 --- a/packages/image-io/typescript/test/browser/demo-app/index.html +++ b/packages/image-io/typescript/test/browser/demo-app/index.html @@ -14,8 +14,6 @@ - - diff --git a/packages/image-io/typescript/test/browser/demo-app/utilities.js b/packages/image-io/typescript/test/browser/demo-app/utilities.js deleted file mode 100644 index 909a54302..000000000 --- a/packages/image-io/typescript/test/browser/demo-app/utilities.js +++ /dev/null @@ -1,95 +0,0 @@ -// Generated file. To retain edits, remove this comment. - -import * as itk from 'itk-wasm' -globalThis.itk = itk - -function downloadFile(content, filename) { - const url = URL.createObjectURL(new Blob([content])) - const a = document.createElement('a') - a.href = url - a.download = filename || 'download' - document.body.appendChild(a) - function clickHandler(event) { - setTimeout(() => { - URL.revokeObjectURL(url) - a.removeEventListener('click', clickHandler) - }, 200) - }; - a.addEventListener('click', clickHandler, false) - a.click() - return a -} -globalThis.downloadFile = downloadFile - -function interfaceTypeJsonReplacer (key, value) { - if (!!value && value.byteLength !== undefined) { - return String(value.slice(0, 6)) + '...' - } - return value -} -globalThis.interfaceTypeJsonReplacer = interfaceTypeJsonReplacer - -function escapeHtml(html) { - const div = document.createElement('div'); - div.textContent = html; - const escaped = div.innerHTML; - div.remove() - return escaped -} -globalThis.escapeHtml = escapeHtml - -function notify(title, message, variant = 'primary', icon = 'info-circle', duration = 3000) { - const slAlert = Object.assign(document.createElement('sl-alert'), { - variant, - closable: true, - duration: duration, - innerHTML: ` - - ${escapeHtml(title)}
- ${escapeHtml(message)} - ` - }); - - document.body.append(slAlert); - setTimeout(() => slAlert.toast(), 300) -} -globalThis.notify = notify - -function disableInputs(inputId) { - document.querySelectorAll(`#${inputId} sl-button`).forEach(button => { - button.disabled = true - }) - document.querySelector(`#${inputId} sl-button[name="run"]`).loading = true - document.querySelectorAll(`#${inputId} sl-checkbox`).forEach(checkbox => { - checkbox.disabled = true - }) - document.querySelectorAll(`#${inputId} sl-input`).forEach(input => { - input.disabled = true - }) -} -globalThis.disableInputs = disableInputs - -function enableInputs(inputId) { - document.querySelectorAll(`#${inputId} sl-button`).forEach(button => { - button.disabled = false - }) - document.querySelector(`#${inputId} sl-button[name="run"]`).loading = false - document.querySelectorAll(`#${inputId} sl-checkbox`).forEach(checkbox => { - checkbox.disabled = false - }) - document.querySelectorAll(`#${inputId} sl-input`).forEach(input => { - input.disabled = false - }) -} -globalThis.enableInputs = enableInputs - -function applyInputParsedJson(inputElement, modelMap, parameterName) { - try { - const parsedJson = JSON.parse(inputElement.value) - modelMap.set(parameterName, parsedJson) - inputElement.setCustomValidity('') - } catch (error) { - inputElement.setCustomValidity(error.message) - } -} -globalThis.applyInputParsedJson = applyInputParsedJson diff --git a/packages/mesh-io/typescript/test/browser/demo-app/index.html b/packages/mesh-io/typescript/test/browser/demo-app/index.html index 820e8777b..86a809715 100644 --- a/packages/mesh-io/typescript/test/browser/demo-app/index.html +++ b/packages/mesh-io/typescript/test/browser/demo-app/index.html @@ -14,8 +14,6 @@ - - diff --git a/packages/mesh-io/typescript/test/browser/demo-app/utilities.js b/packages/mesh-io/typescript/test/browser/demo-app/utilities.js deleted file mode 100644 index 909a54302..000000000 --- a/packages/mesh-io/typescript/test/browser/demo-app/utilities.js +++ /dev/null @@ -1,95 +0,0 @@ -// Generated file. To retain edits, remove this comment. - -import * as itk from 'itk-wasm' -globalThis.itk = itk - -function downloadFile(content, filename) { - const url = URL.createObjectURL(new Blob([content])) - const a = document.createElement('a') - a.href = url - a.download = filename || 'download' - document.body.appendChild(a) - function clickHandler(event) { - setTimeout(() => { - URL.revokeObjectURL(url) - a.removeEventListener('click', clickHandler) - }, 200) - }; - a.addEventListener('click', clickHandler, false) - a.click() - return a -} -globalThis.downloadFile = downloadFile - -function interfaceTypeJsonReplacer (key, value) { - if (!!value && value.byteLength !== undefined) { - return String(value.slice(0, 6)) + '...' - } - return value -} -globalThis.interfaceTypeJsonReplacer = interfaceTypeJsonReplacer - -function escapeHtml(html) { - const div = document.createElement('div'); - div.textContent = html; - const escaped = div.innerHTML; - div.remove() - return escaped -} -globalThis.escapeHtml = escapeHtml - -function notify(title, message, variant = 'primary', icon = 'info-circle', duration = 3000) { - const slAlert = Object.assign(document.createElement('sl-alert'), { - variant, - closable: true, - duration: duration, - innerHTML: ` - - ${escapeHtml(title)}
- ${escapeHtml(message)} - ` - }); - - document.body.append(slAlert); - setTimeout(() => slAlert.toast(), 300) -} -globalThis.notify = notify - -function disableInputs(inputId) { - document.querySelectorAll(`#${inputId} sl-button`).forEach(button => { - button.disabled = true - }) - document.querySelector(`#${inputId} sl-button[name="run"]`).loading = true - document.querySelectorAll(`#${inputId} sl-checkbox`).forEach(checkbox => { - checkbox.disabled = true - }) - document.querySelectorAll(`#${inputId} sl-input`).forEach(input => { - input.disabled = true - }) -} -globalThis.disableInputs = disableInputs - -function enableInputs(inputId) { - document.querySelectorAll(`#${inputId} sl-button`).forEach(button => { - button.disabled = false - }) - document.querySelector(`#${inputId} sl-button[name="run"]`).loading = false - document.querySelectorAll(`#${inputId} sl-checkbox`).forEach(checkbox => { - checkbox.disabled = false - }) - document.querySelectorAll(`#${inputId} sl-input`).forEach(input => { - input.disabled = false - }) -} -globalThis.enableInputs = enableInputs - -function applyInputParsedJson(inputElement, modelMap, parameterName) { - try { - const parsedJson = JSON.parse(inputElement.value) - modelMap.set(parameterName, parsedJson) - inputElement.setCustomValidity('') - } catch (error) { - inputElement.setCustomValidity(error.message) - } -} -globalThis.applyInputParsedJson = applyInputParsedJson From 9f4171d4cff4e1d0b2314d8ce1535313cfc5569d Mon Sep 17 00:00:00 2001 From: Paul Elliott Date: Tue, 2 Apr 2024 17:24:38 -0400 Subject: [PATCH 6/8] chore(demo-app): fix 2d view orientation --- .../core/typescript/demo-app/package.json | 2 +- pnpm-lock.yaml | 46 ++++++++----------- 2 files changed, 19 insertions(+), 29 deletions(-) diff --git a/packages/core/typescript/demo-app/package.json b/packages/core/typescript/demo-app/package.json index f8a338a6d..e7e7c6241 100644 --- a/packages/core/typescript/demo-app/package.json +++ b/packages/core/typescript/demo-app/package.json @@ -16,7 +16,7 @@ "author": "", "license": "Apache-2.0", "dependencies": { - "@itk-viewer/element": "^0.2.12", + "@itk-viewer/element": "^0.2.13", "@itk-viewer/io": "^0.1.8", "@shoelace-style/shoelace": "^2.12.0", "itk-wasm": "workspace:^", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 43961e37c..c32fefe52 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -384,8 +384,8 @@ importers: packages/core/typescript/demo-app: dependencies: '@itk-viewer/element': - specifier: ^0.2.12 - version: 0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + specifier: ^0.2.13 + version: 0.2.13(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) '@itk-viewer/io': specifier: ^0.1.8 version: 0.1.8 @@ -393,8 +393,8 @@ importers: specifier: ^2.12.0 version: 2.12.0(@types/react@18.2.42) itk-wasm: - specifier: 1.0.0-b.170 - version: 1.0.0-b.170 + specifier: workspace:^ + version: link:../itk-wasm lit: specifier: ^3.1.2 version: 3.1.2 @@ -3100,8 +3100,8 @@ packages: - debug dev: false - /@itk-viewer/element@0.2.12(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): - resolution: {integrity: sha512-PGkPVqN8Sr13pgmwNOUyv3qRe2ZMOaqZdhAc3b+5NEUPO2gaA9XhUEuPIAptof5+RE3vzeo6XXuzjl/I2E1jyA==} + /@itk-viewer/element@0.2.13(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): + resolution: {integrity: sha512-NLNsjpFE3Vlg0B01uRA+9LZzBbOpLDu8DzMBz7l4cx9taNvN96LoxsgQT9/OLvvVaiOO2Gj5ykAPX27t0pOxaQ==} peerDependencies: '@material/web': ^1.3.0 peerDependenciesMeta: @@ -3110,10 +3110,10 @@ packages: dependencies: '@itk-viewer/arcball': 0.0.1 '@itk-viewer/io': 0.1.8 - '@itk-viewer/remote-viewport': 0.2.11 + '@itk-viewer/remote-viewport': 0.2.12 '@itk-viewer/utils': 0.1.3 - '@itk-viewer/viewer': 0.2.8 - '@itk-viewer/vtkjs': 0.0.5(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) + '@itk-viewer/viewer': 0.2.9 + '@itk-viewer/vtkjs': 0.0.6(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) '@lit/context': 1.1.0 gl-matrix: 3.4.3 itk-wasm: 1.0.0-b.160 @@ -3146,12 +3146,12 @@ packages: - debug dev: false - /@itk-viewer/remote-viewport@0.2.11: - resolution: {integrity: sha512-0JdBXWBUCCiTYGcAfpb1NDjpRbeMjomqvaYLeWn3qDSiX8UUc+8jSuOWBQ1yaGd/WVL74xaorOKMpC6zD8QcdA==} + /@itk-viewer/remote-viewport@0.2.12: + resolution: {integrity: sha512-UzpkCcDkZHzF17C6RQ7AQpxYLtFkY5JWlyigTarken+lvmm1TLevs87Ehsc2SJGmgPeyDJdspWnXdRznjqvqxw==} dependencies: '@itk-viewer/io': 0.1.8 '@itk-viewer/utils': 0.1.3 - '@itk-viewer/viewer': 0.2.8 + '@itk-viewer/viewer': 0.2.9 '@itk-wasm/htj2k': 2.1.0 gl-matrix: 3.4.3 imjoy-rpc: 0.5.48 @@ -3171,8 +3171,8 @@ packages: - debug dev: false - /@itk-viewer/viewer@0.2.8: - resolution: {integrity: sha512-g0C/IiVxzupkU5YerZCkTSPeKbLVGA3dukZc6o/wKKO+R+0KfF8T+oWT9NqlPJENaDxG+P+lTuOEAc4Xi/ejSQ==} + /@itk-viewer/viewer@0.2.9: + resolution: {integrity: sha512-x/7N4adrnI2oYI8IHGJM+9FyL1ryhN6tik7elHVKQBYkaM1Xp4a0rALb+0ZHyvC5igf3vUIk8O7XTxWuKfMrdg==} dependencies: '@itk-viewer/io': 0.1.8 '@itk-viewer/utils': 0.1.3 @@ -3182,11 +3182,11 @@ packages: - debug dev: false - /@itk-viewer/vtkjs@0.0.5(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): - resolution: {integrity: sha512-1PPvzLgV5HrfxPDcTT8OQTH9V4nGGtC4kEOyEB3oHlKRttlprvC3ze/lXPN6F+m7ZVIx94TvaLsuARrwgccKcw==} + /@itk-viewer/vtkjs@0.0.6(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4): + resolution: {integrity: sha512-pwFtxPCLCfBhYaGbwzqKC8p3LIt8F+VkOpbhU28AA0DAKBUKrDk3MRj3B4X4x1OkT+AWZXnzqmxa1CreFzCILw==} dependencies: '@itk-viewer/io': 0.1.8 - '@itk-viewer/viewer': 0.2.8 + '@itk-viewer/viewer': 0.2.9 '@kitware/vtk.js': 29.8.0(@babel/preset-env@7.24.0)(autoprefixer@10.4.18)(webpack@5.90.3)(wslink@1.12.4) gl-matrix: 3.4.3 xstate: 5.5.2 @@ -3309,17 +3309,13 @@ packages: - webpack dev: false - /@lit-labs/ssr-dom-shim@1.1.2: - resolution: {integrity: sha512-jnOD+/+dSrfTWYfSXBXlo5l5f0q1UuJo3tkbMDCYA2lKUYq79jaxqtGEvnRoh049nt1vdo1+45RinipU6FGY2g==} - dev: false - /@lit-labs/ssr-dom-shim@1.2.0: resolution: {integrity: sha512-yWJKmpGE6lUURKAaIltoPIE/wrbY3TEkqQt+X0m+7fQNnAv0keydnYvbiJFP1PnMhizmIWRWOG5KLhYyc/xl+g==} /@lit/context@1.1.0: resolution: {integrity: sha512-fCyv4dsH05wCNm3AKbB+PdYbXGJd/XT8OOwo4hVmD4COq5wOWJlQreGAMDvmHZ7osqxuu06Y4nmP6ooXpN7ErA==} dependencies: - '@lit/reactive-element': 2.0.2 + '@lit/reactive-element': 2.0.4 dev: false /@lit/react@1.0.2(@types/react@18.2.42): @@ -3329,12 +3325,6 @@ packages: dependencies: '@types/react': 18.2.42 - /@lit/reactive-element@2.0.2: - resolution: {integrity: sha512-SVOwLAWUQg3Ji1egtOt1UiFe4zdDpnWHyc5qctSceJ5XIu0Uc76YmGpIjZgx9YJ0XtdW0Jm507sDvjOu+HnB8w==} - dependencies: - '@lit-labs/ssr-dom-shim': 1.1.2 - dev: false - /@lit/reactive-element@2.0.4: resolution: {integrity: sha512-GFn91inaUa2oHLak8awSIigYz0cU0Payr1rcFsrkf5OJ5eSPxElyZfKh0f2p9FsTiZWXQdWGJeXZICEfXXYSXQ==} dependencies: From 05ffb8f0db526f0c14c1afb2cc7ddeca0cc5aa78 Mon Sep 17 00:00:00 2001 From: Paul Elliott Date: Thu, 4 Apr 2024 15:38:28 -0400 Subject: [PATCH 7/8] chore(compare-images): update demo app to use itk-image-details --- .../browser/demo-app/compare-images-controller.ts | 11 +++-------- .../typescript/test/browser/demo-app/index.html | 6 +++--- packages/core/typescript/demo-app/package.json | 4 ++-- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/packages/compare-images/typescript/test/browser/demo-app/compare-images-controller.ts b/packages/compare-images/typescript/test/browser/demo-app/compare-images-controller.ts index 6f7571e81..77c231664 100644 --- a/packages/compare-images/typescript/test/browser/demo-app/compare-images-controller.ts +++ b/packages/compare-images/typescript/test/browser/demo-app/compare-images-controller.ts @@ -49,8 +49,7 @@ class CompareImagesController { webWorker.terminate() model.inputs.set("testImage", image) const details = document.getElementById("compareImages-test-image-details") - details.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(image, globalThis.interfaceTypeJsonReplacer, 2))}
` - details.disabled = false + details.setImage(image) }) // ---------------------------------------------- @@ -168,17 +167,13 @@ class CompareImagesController { differenceImageOutputDownload.variant = "success" differenceImageOutputDownload.disabled = false const differenceImageDetails = document.getElementById("compareImages-difference-image-details") - differenceImageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(differenceImage, globalThis.interfaceTypeJsonReplacer, 2))}
` - differenceImageDetails.disabled = false - const differenceImageOutput = document.getElementById('compareImages-difference-image-details') + differenceImageDetails.setImage(differenceImage) model.outputs.set("differenceUchar2dImage", differenceUchar2dImage) differenceUchar2dImageOutputDownload.variant = "success" differenceUchar2dImageOutputDownload.disabled = false const differenceUchar2dImageDetails = document.getElementById("compareImages-difference-uchar-2d-image-details") - differenceUchar2dImageDetails.innerHTML = `
${globalThis.escapeHtml(JSON.stringify(differenceUchar2dImage, globalThis.interfaceTypeJsonReplacer, 2))}
` - differenceUchar2dImageDetails.disabled = false - const differenceUchar2dImageOutput = document.getElementById('compareImages-difference-uchar-2d-image-details') + differenceUchar2dImageDetails.setImage(differenceUchar2dImage) } catch (error) { globalThis.notify("Error while running pipeline", error.toString(), "danger", "exclamation-octagon") throw error diff --git a/packages/compare-images/typescript/test/browser/demo-app/index.html b/packages/compare-images/typescript/test/browser/demo-app/index.html index 07e9063c7..c4d046200 100644 --- a/packages/compare-images/typescript/test/browser/demo-app/index.html +++ b/packages/compare-images/typescript/test/browser/demo-app/index.html @@ -36,7 +36,7 @@

👨‍💻 Live API Demo ✨

Compare images with a tolerance for regression testing.

- +

@@ -61,7 +61,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -87,7 +87,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm diff --git a/packages/core/typescript/demo-app/package.json b/packages/core/typescript/demo-app/package.json index e7e7c6241..80ebfa915 100644 --- a/packages/core/typescript/demo-app/package.json +++ b/packages/core/typescript/demo-app/package.json @@ -1,8 +1,8 @@ { "name": "@itk-wasm/demo-app", - "version": "0.0.0", + "version": "0.1.0", "packageManager": "pnpm@8.11.0", - "description": "Try pipelines in a browser", + "description": "Try itk-wasm pipelines in a browser", "type": "module", "exports": { "./*": "./src/*" From 67596fd78d047bf6cf2a6cc2d2227b0b10fcdd1a Mon Sep 17 00:00:00 2001 From: Paul Elliott Date: Wed, 10 Apr 2024 15:25:24 -0400 Subject: [PATCH 8/8] chore(demo-app): fix e2e tests Reflect disable attribute in itk-image-details so cypress waits until enabled to click. Ask cypress to query the shadow dom. --- examples/hello-world/cypress.config.js | 1 + examples/umd/cypress.config.js | 1 + examples/vite/cypress.config.js | 1 + examples/webpack/cypress.config.js | 1 + .../typescript/cypress.config.ts | 1 + .../cypress/e2e/compare-images.cy.ts | 12 ++--- .../test/browser/demo-app/index.html | 6 +-- .../typescript/cypress.config.ts | 1 + .../demo-app/src/itk-image-details.js | 7 +-- .../typescript/itk-wasm/cypress.config.ts | 1 + packages/dicom/typescript/cypress.config.ts | 1 + .../downsample/typescript/cypress.config.ts | 1 + .../cypress/e2e/downsample-bin-shrink.cy.ts | 4 +- .../typescript/cypress/e2e/downsample.cy.ts | 4 +- .../test/browser/demo-app/index.html | 12 ++--- .../image-io/typescript/cypress.config.ts | 1 + .../typescript/cypress/e2e/bio-rad.cy.ts | 4 +- .../image-io/typescript/cypress/e2e/bmp.cy.ts | 4 +- .../image-io/typescript/cypress/e2e/fdf.cy.ts | 2 +- .../typescript/cypress/e2e/hdf5.cy.ts | 2 +- .../typescript/cypress/e2e/jpeg.cy.ts | 2 +- .../image-io/typescript/cypress/e2e/lsm.cy.ts | 2 +- .../typescript/cypress/e2e/meta-image.cy.ts | 4 +- .../image-io/typescript/cypress/e2e/mgh.cy.ts | 2 +- .../typescript/cypress/e2e/minc.cy.ts | 2 +- .../image-io/typescript/cypress/e2e/mrc.cy.ts | 2 +- .../typescript/cypress/e2e/nifti.cy.ts | 4 +- .../typescript/cypress/e2e/nrrd.cy.ts | 4 +- .../image-io/typescript/cypress/e2e/png.cy.ts | 4 +- .../typescript/cypress/e2e/read-image.cy.ts | 2 +- .../typescript/cypress/e2e/tiff.cy.ts | 4 +- .../image-io/typescript/cypress/e2e/vtk.cy.ts | 4 +- .../typescript/cypress/e2e/wasm.cy.ts | 4 +- .../typescript/cypress/e2e/write-image.cy.ts | 2 +- .../test/browser/demo-app/index.html | 48 +++++++++---------- 35 files changed, 84 insertions(+), 73 deletions(-) diff --git a/examples/hello-world/cypress.config.js b/examples/hello-world/cypress.config.js index fc8d4a197..376f2276c 100644 --- a/examples/hello-world/cypress.config.js +++ b/examples/hello-world/cypress.config.js @@ -6,6 +6,7 @@ export default defineConfig({ setupNodeEvents(on, config) { // implement node event listeners here }, + includeShadowDom: true, // to query into itk-image-detail baseUrl: 'http://localhost:8083', specPattern: 'cypress/e2e/**/*.{js,jsx,ts,tsx}', }, diff --git a/examples/umd/cypress.config.js b/examples/umd/cypress.config.js index d631b1a0a..c1d53b7a5 100644 --- a/examples/umd/cypress.config.js +++ b/examples/umd/cypress.config.js @@ -8,5 +8,6 @@ module.exports = defineConfig({ setupNodeEvents(on, config) { // implement node event listeners here }, + includeShadowDom: true, // to query into itk-image-detail }, }) diff --git a/examples/vite/cypress.config.js b/examples/vite/cypress.config.js index d631b1a0a..c1d53b7a5 100644 --- a/examples/vite/cypress.config.js +++ b/examples/vite/cypress.config.js @@ -8,5 +8,6 @@ module.exports = defineConfig({ setupNodeEvents(on, config) { // implement node event listeners here }, + includeShadowDom: true, // to query into itk-image-detail }, }) diff --git a/examples/webpack/cypress.config.js b/examples/webpack/cypress.config.js index d631b1a0a..c1d53b7a5 100644 --- a/examples/webpack/cypress.config.js +++ b/examples/webpack/cypress.config.js @@ -8,5 +8,6 @@ module.exports = defineConfig({ setupNodeEvents(on, config) { // implement node event listeners here }, + includeShadowDom: true, // to query into itk-image-detail }, }) diff --git a/packages/compare-images/typescript/cypress.config.ts b/packages/compare-images/typescript/cypress.config.ts index 6eb0db43a..87d896199 100644 --- a/packages/compare-images/typescript/cypress.config.ts +++ b/packages/compare-images/typescript/cypress.config.ts @@ -6,5 +6,6 @@ export default defineConfig({ setupNodeEvents(on, config) { // implement node event listeners here }, + includeShadowDom: true, // to query into itk-image-details }, }); diff --git a/packages/compare-images/typescript/cypress/e2e/compare-images.cy.ts b/packages/compare-images/typescript/cypress/e2e/compare-images.cy.ts index ec3b9da4a..1eabe1e00 100644 --- a/packages/compare-images/typescript/cypress/e2e/compare-images.cy.ts +++ b/packages/compare-images/typescript/cypress/e2e/compare-images.cy.ts @@ -24,11 +24,11 @@ describe('compareImages', () => { const testFile = { contents: new Uint8Array(this['cake_easy.iwi.cbor']), fileName: 'cake_easy.iwi.cbor' } cy.get('#compareImagesInputs input[name="test-image-file"]').selectFile([testFile,], { force: true }) - cy.get('#compareImages-test-image-details').should('contain', 'imageType') + cy.get('#compareImages-test-image-details').contains('imageType') const baselineFile = { contents: new Uint8Array(this['cake_hard.iwi.cbor']), fileName: 'cake_hard.iwi.cbor' } cy.get('#compareImagesInputs input[name="baseline-images-file"]').selectFile([baselineFile,], { force: true }) - cy.get('#compareImages-baseline-images-details').should('contain', 'imageType') + cy.get('#compareImages-baseline-images-details').contains('imageType') cy.get('#compareImagesInputs sl-button[name="run"]').click() @@ -40,11 +40,11 @@ describe('compareImages', () => { const testFile = { contents: new Uint8Array(this['cake_easy.png']), fileName: 'cake_easy.png' } cy.get('#compareImagesInputs input[name="test-image-file"]').selectFile([testFile,], { force: true }) - cy.get('#compareImages-test-image-details').should('contain', 'imageType') + cy.get('#compareImages-test-image-details').contains('imageType') const baselineFile = { contents: new Uint8Array(this['cake_hard.png']), fileName: 'cake_hard.png' } cy.get('#compareImagesInputs input[name="baseline-images-file"]').selectFile([baselineFile,], { force: true }) - cy.get('#compareImages-baseline-images-details').should('contain', 'imageType') + cy.get('#compareImages-baseline-images-details').contains('imageType') cy.get('#compareImagesInputs sl-button[name="run"]').click() @@ -56,11 +56,11 @@ describe('compareImages', () => { const testFile = { contents: new Uint8Array(this['apple.jpg']), fileName: 'apple.jpg' } cy.get('#compareImagesInputs input[name="test-image-file"]').selectFile([testFile,], { force: true }) - cy.get('#compareImages-test-image-details').should('contain', 'imageType') + cy.get('#compareImages-test-image-details').contains('imageType') const baselineFile = { contents: new Uint8Array(this['orange.jpg']), fileName: 'orange.jpg' } cy.get('#compareImagesInputs input[name="baseline-images-file"]').selectFile([baselineFile,], { force: true }) - cy.get('#compareImages-baseline-images-details').should('contain', 'imageType') + cy.get('#compareImages-baseline-images-details').contains('imageType') cy.get('#compareImagesInputs sl-button[name="run"]').click() diff --git a/packages/compare-images/typescript/test/browser/demo-app/index.html b/packages/compare-images/typescript/test/browser/demo-app/index.html index c4d046200..c1e331c92 100644 --- a/packages/compare-images/typescript/test/browser/demo-app/index.html +++ b/packages/compare-images/typescript/test/browser/demo-app/index.html @@ -36,7 +36,7 @@

👨‍💻 Live API Demo ✨

Compare images with a tolerance for regression testing.

- +

@@ -61,7 +61,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -87,7 +87,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm diff --git a/packages/compress-stringify/typescript/cypress.config.ts b/packages/compress-stringify/typescript/cypress.config.ts index c0d7712df..a3097cd76 100644 --- a/packages/compress-stringify/typescript/cypress.config.ts +++ b/packages/compress-stringify/typescript/cypress.config.ts @@ -6,5 +6,6 @@ export default defineConfig({ setupNodeEvents(on, config) { // implement node event listeners here }, + includeShadowDom: true, // to query into itk-image-detail }, }); diff --git a/packages/core/typescript/demo-app/src/itk-image-details.js b/packages/core/typescript/demo-app/src/itk-image-details.js index 4679aa987..7c9f74d32 100644 --- a/packages/core/typescript/demo-app/src/itk-image-details.js +++ b/packages/core/typescript/demo-app/src/itk-image-details.js @@ -5,7 +5,7 @@ import "@itk-viewer/element/itk-viewer-2d.js"; export class ItkImageDetails extends LitElement { static properties = { - disabled: { type: Boolean }, + disabled: { type: Boolean, reflect: true}, summary: { type: String }, image: { state: true }, }; @@ -15,7 +15,7 @@ export class ItkImageDetails extends LitElement { constructor() { super(); - this.disabled = false; + this.disabled = true; this.summary = ""; this.image = undefined; } @@ -31,6 +31,7 @@ export class ItkImageDetails extends LitElement { setImage(image) { this.image = image; + this.disabled = !image; if (this.details.value.open) { this.loadImage(); } @@ -47,7 +48,7 @@ export class ItkImageDetails extends LitElement { } render() { - const disabled = this.image === undefined ? true : nothing; + const disabled = this.disabled ? true : nothing; const summary = this.image === undefined ? this.summary : "️🔎 " + this.summary; diff --git a/packages/core/typescript/itk-wasm/cypress.config.ts b/packages/core/typescript/itk-wasm/cypress.config.ts index 0ccb22cee..0391b1710 100644 --- a/packages/core/typescript/itk-wasm/cypress.config.ts +++ b/packages/core/typescript/itk-wasm/cypress.config.ts @@ -8,5 +8,6 @@ export default defineConfig({ setupNodeEvents(on, config) { // implement node event listeners here }, + includeShadowDom: true, // to query into itk-image-detail }, }); diff --git a/packages/dicom/typescript/cypress.config.ts b/packages/dicom/typescript/cypress.config.ts index bb9c2e315..8f7b0a7d2 100644 --- a/packages/dicom/typescript/cypress.config.ts +++ b/packages/dicom/typescript/cypress.config.ts @@ -6,5 +6,6 @@ export default defineConfig({ setupNodeEvents(on, config) { // implement node event listeners here }, + includeShadowDom: true, // to query into itk-image-details }, }); diff --git a/packages/downsample/typescript/cypress.config.ts b/packages/downsample/typescript/cypress.config.ts index 6ddaef889..0262a38ed 100644 --- a/packages/downsample/typescript/cypress.config.ts +++ b/packages/downsample/typescript/cypress.config.ts @@ -6,5 +6,6 @@ export default defineConfig({ setupNodeEvents(on, config) { // implement node event listeners here }, + includeShadowDom: true, // to query into itk-image-detail }, }); diff --git a/packages/downsample/typescript/cypress/e2e/downsample-bin-shrink.cy.ts b/packages/downsample/typescript/cypress/e2e/downsample-bin-shrink.cy.ts index 2ee298c44..d044c0b03 100644 --- a/packages/downsample/typescript/cypress/e2e/downsample-bin-shrink.cy.ts +++ b/packages/downsample/typescript/cypress/e2e/downsample-bin-shrink.cy.ts @@ -19,11 +19,11 @@ describe('downsampleBinShrink', () => { const testFile = { contents: new Uint8Array(this['cthead1.png']), fileName: 'cthead1.png' } cy.get('#downsampleBinShrinkInputs input[name="input-file"]').selectFile([testFile,], { force: true }) - cy.get('#downsampleBinShrink-input-details').should('contain', 'imageType') + cy.get('#downsampleBinShrink-input-details').contains('imageType') cy.get('#downsampleBinShrinkInputs sl-input[name="shrink-factors"]').find('input', { includeShadowDom: true }).clear().type('[2, 2]', { force: true }) cy.get('#downsampleBinShrinkInputs sl-button[name="run"]').click() - cy.get('#downsampleBinShrink-downsampled-details').should('contain', 'imageType') + cy.get('#downsampleBinShrink-downsampled-details').contains('imageType') }) }) diff --git a/packages/downsample/typescript/cypress/e2e/downsample.cy.ts b/packages/downsample/typescript/cypress/e2e/downsample.cy.ts index d7038bd8f..c0ae66b74 100644 --- a/packages/downsample/typescript/cypress/e2e/downsample.cy.ts +++ b/packages/downsample/typescript/cypress/e2e/downsample.cy.ts @@ -19,11 +19,11 @@ describe('downsample', () => { const testFile = { contents: new Uint8Array(this['cthead1.png']), fileName: 'cthead1.png' } cy.get('#downsampleInputs input[name="input-file"]').selectFile([testFile,], { force: true }) - cy.get('#downsample-input-details').should('contain', 'imageType') + cy.get('#downsample-input-details').contains('imageType') cy.get('#downsampleInputs sl-input[name="shrink-factors"]').find('input', { includeShadowDom: true }).clear().type('[2, 2]', { force: true }) cy.get('#downsampleInputs sl-button[name="run"]').click() - cy.get('#downsample-downsampled-details').should('contain', 'imageType') + cy.get('#downsample-downsampled-details').contains('imageType') }) }) diff --git a/packages/downsample/typescript/test/browser/demo-app/index.html b/packages/downsample/typescript/test/browser/demo-app/index.html index b8e51b29c..93feda73e 100644 --- a/packages/downsample/typescript/test/browser/demo-app/index.html +++ b/packages/downsample/typescript/test/browser/demo-app/index.html @@ -43,7 +43,7 @@

👨‍💻 Live API Demo ✨

- +


@@ -57,7 +57,7 @@

👨‍💻 Live API Demo ✨

- + bmp dcm @@ -94,7 +94,7 @@

👨‍💻 Live API Demo ✨

- +


@@ -108,7 +108,7 @@

👨‍💻 Live API Demo ✨

- + bmp dcm @@ -168,7 +168,7 @@

👨‍💻 Live API Demo ✨

- +


@@ -182,7 +182,7 @@

👨‍💻 Live API Demo ✨

- + bmp dcm diff --git a/packages/image-io/typescript/cypress.config.ts b/packages/image-io/typescript/cypress.config.ts index 1d4054ee4..0ed2da7ff 100644 --- a/packages/image-io/typescript/cypress.config.ts +++ b/packages/image-io/typescript/cypress.config.ts @@ -5,5 +5,6 @@ export default defineConfig({ defaultCommandTimeout: 40000, setupNodeEvents(on, config) { }, + includeShadowDom: true, // to query into itk-image-details }, }); diff --git a/packages/image-io/typescript/cypress/e2e/bio-rad.cy.ts b/packages/image-io/typescript/cypress/e2e/bio-rad.cy.ts index 1dfc078f8..a507a36db 100644 --- a/packages/image-io/typescript/cypress/e2e/bio-rad.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/bio-rad.cy.ts @@ -25,7 +25,7 @@ describe('bio-rad', () => { cy.get('#bioRadReadImageInputs sl-button[name="run"]').click() cy.get('#bioRadReadImage-could-read-details').should('contain', 'true') - cy.get('#bioRadReadImage-image-details').should('contain', 'imageType') + cy.get('#bioRadReadImage-image-details').contains('imageType') }) it('Writes a BioRad image', function () { @@ -33,7 +33,7 @@ describe('bio-rad', () => { const testFile = { contents: new Uint8Array(this['biorad.iwi.cbor']), fileName: 'biorad.iwi.cbor' } cy.get('#bioRadWriteImageInputs input[name="image-file"]').selectFile([testFile,], { force: true }) - cy.get('#bioRadWriteImage-image-details').should('contain', 'imageType') + cy.get('#bioRadWriteImage-image-details').contains('imageType') cy.get('#bioRadWriteImageInputs sl-input[name="serialized-image"]').find('input', { includeShadowDom: true }).type('biorad.pic', { force: true }) cy.get('#bioRadWriteImageInputs sl-button[name="run"]').click() diff --git a/packages/image-io/typescript/cypress/e2e/bmp.cy.ts b/packages/image-io/typescript/cypress/e2e/bmp.cy.ts index c6a43b48d..ccd8e6f7c 100644 --- a/packages/image-io/typescript/cypress/e2e/bmp.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/bmp.cy.ts @@ -25,7 +25,7 @@ describe('bmp', () => { cy.get('#bmpReadImageInputs sl-button[name="run"]').click() cy.get('#bmpReadImage-could-read-details').should('contain', 'true') - cy.get('#bmpReadImage-image-details').should('contain', 'imageType') + cy.get('#bmpReadImage-image-details').contains('imageType') }) it('Writes a BioRad image', function () { @@ -33,7 +33,7 @@ describe('bmp', () => { const testFile = { contents: new Uint8Array(this['image_color.iwi.cbor']), fileName: 'image_color.iwi.cbor' } cy.get('#bmpWriteImageInputs input[name="image-file"]').selectFile([testFile,], { force: true }) - cy.get('#bmpWriteImage-image-details').should('contain', 'imageType') + cy.get('#bmpWriteImage-image-details').contains('imageType') cy.get('#bmpWriteImageInputs sl-input[name="serialized-image"]').find('input', { includeShadowDom: true }).type('image_color.bmp', { force: true }) cy.get('#bmpWriteImageInputs sl-button[name="run"]').click() diff --git a/packages/image-io/typescript/cypress/e2e/fdf.cy.ts b/packages/image-io/typescript/cypress/e2e/fdf.cy.ts index f400eb425..8186803a6 100644 --- a/packages/image-io/typescript/cypress/e2e/fdf.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/fdf.cy.ts @@ -24,6 +24,6 @@ describe('fdf', () => { cy.get('#fdfReadImageInputs sl-button[name="run"]').click() cy.get('#fdfReadImage-could-read-details').should('contain', 'true') - cy.get('#fdfReadImage-image-details').should('contain', 'imageType') + cy.get('#fdfReadImage-image-details').contains('imageType') }) }) diff --git a/packages/image-io/typescript/cypress/e2e/hdf5.cy.ts b/packages/image-io/typescript/cypress/e2e/hdf5.cy.ts index eccd77c5d..b12aab149 100644 --- a/packages/image-io/typescript/cypress/e2e/hdf5.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/hdf5.cy.ts @@ -24,6 +24,6 @@ describe('hdf5', () => { cy.get('#hdf5ReadImageInputs sl-button[name="run"]').click() cy.get('#hdf5ReadImage-could-read-details').should('contain', 'true') - cy.get('#hdf5ReadImage-image-details').should('contain', 'imageType') + cy.get('#hdf5ReadImage-image-details').contains('imageType') }) }) diff --git a/packages/image-io/typescript/cypress/e2e/jpeg.cy.ts b/packages/image-io/typescript/cypress/e2e/jpeg.cy.ts index d5c56ec08..af785c5a9 100644 --- a/packages/image-io/typescript/cypress/e2e/jpeg.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/jpeg.cy.ts @@ -24,6 +24,6 @@ describe('jpeg', () => { cy.get('#jpegReadImageInputs sl-button[name="run"]').click() cy.get('#jpegReadImage-could-read-details').should('contain', 'true') - cy.get('#jpegReadImage-image-details').should('contain', 'imageType') + cy.get('#jpegReadImage-image-details').contains('imageType') }) }) diff --git a/packages/image-io/typescript/cypress/e2e/lsm.cy.ts b/packages/image-io/typescript/cypress/e2e/lsm.cy.ts index 0208840b9..00be65c4d 100644 --- a/packages/image-io/typescript/cypress/e2e/lsm.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/lsm.cy.ts @@ -24,6 +24,6 @@ describe('lsm', () => { cy.get('#lsmReadImageInputs sl-button[name="run"]').click() cy.get('#lsmReadImage-could-read-details').should('contain', 'true') - cy.get('#lsmReadImage-image-details').should('contain', 'imageType') + cy.get('#lsmReadImage-image-details').contains('imageType') }) }) diff --git a/packages/image-io/typescript/cypress/e2e/meta-image.cy.ts b/packages/image-io/typescript/cypress/e2e/meta-image.cy.ts index 02be8a458..86ebe065c 100644 --- a/packages/image-io/typescript/cypress/e2e/meta-image.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/meta-image.cy.ts @@ -25,7 +25,7 @@ describe('meta-image', () => { cy.get('#metaReadImageInputs sl-button[name="run"]').click() cy.get('#metaReadImage-could-read-details').should('contain', 'true') - cy.get('#metaReadImage-image-details').should('contain', 'imageType') + cy.get('#metaReadImage-image-details').contains('imageType') }) it('Writes a MetaImage image', function () { @@ -33,7 +33,7 @@ describe('meta-image', () => { const testFile = { contents: new Uint8Array(this['brainweb165a10f17.iwi.cbor']), fileName: 'brainweb165a10f17.iwi.cbor' } cy.get('#metaWriteImageInputs input[name="image-file"]').selectFile([testFile,], { force: true }) - cy.get('#metaWriteImage-image-details').should('contain', 'imageType') + cy.get('#metaWriteImage-image-details').contains('imageType') cy.get('#metaWriteImageInputs sl-input[name="serialized-image"]').find('input', { includeShadowDom: true }).type('brainweb165a10f17.mha', { force: true }) cy.get('#metaWriteImageInputs sl-button[name="run"]').click() diff --git a/packages/image-io/typescript/cypress/e2e/mgh.cy.ts b/packages/image-io/typescript/cypress/e2e/mgh.cy.ts index 5251f0fa3..2f80537ff 100644 --- a/packages/image-io/typescript/cypress/e2e/mgh.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/mgh.cy.ts @@ -24,6 +24,6 @@ describe('mgh', () => { cy.get('#mghReadImageInputs sl-button[name="run"]').click() cy.get('#mghReadImage-could-read-details').should('contain', 'true') - cy.get('#mghReadImage-image-details').should('contain', 'imageType') + cy.get('#mghReadImage-image-details').contains('imageType') }) }) diff --git a/packages/image-io/typescript/cypress/e2e/minc.cy.ts b/packages/image-io/typescript/cypress/e2e/minc.cy.ts index b28e19701..5ee53f795 100644 --- a/packages/image-io/typescript/cypress/e2e/minc.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/minc.cy.ts @@ -24,6 +24,6 @@ describe('minc', () => { cy.get('#mincReadImageInputs sl-button[name="run"]').click() cy.get('#mincReadImage-could-read-details').should('contain', 'true') - cy.get('#mincReadImage-image-details').should('contain', 'imageType') + cy.get('#mincReadImage-image-details').contains('imageType') }) }) diff --git a/packages/image-io/typescript/cypress/e2e/mrc.cy.ts b/packages/image-io/typescript/cypress/e2e/mrc.cy.ts index e27106a48..00859b6d6 100644 --- a/packages/image-io/typescript/cypress/e2e/mrc.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/mrc.cy.ts @@ -24,6 +24,6 @@ describe('mrc', () => { cy.get('#mrcReadImageInputs sl-button[name="run"]').click() cy.get('#mrcReadImage-could-read-details').should('contain', 'true') - cy.get('#mrcReadImage-image-details').should('contain', 'imageType') + cy.get('#mrcReadImage-image-details').contains('imageType') }) }) diff --git a/packages/image-io/typescript/cypress/e2e/nifti.cy.ts b/packages/image-io/typescript/cypress/e2e/nifti.cy.ts index 5cc0f834a..46927af06 100644 --- a/packages/image-io/typescript/cypress/e2e/nifti.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/nifti.cy.ts @@ -25,7 +25,7 @@ describe('nifti', () => { cy.get('#niftiReadImageInputs sl-button[name="run"]').click() cy.get('#niftiReadImage-could-read-details').should('contain', 'true') - cy.get('#niftiReadImage-image-details').should('contain', 'imageType') + cy.get('#niftiReadImage-image-details').contains('imageType') }) it('Writes a Nifti image', function () { @@ -33,7 +33,7 @@ describe('nifti', () => { const testFile = { contents: new Uint8Array(this['r16slice.iwi.cbor']), fileName: 'image_color.iwi.cbor' } cy.get('#niftiWriteImageInputs input[name="image-file"]').selectFile([testFile,], { force: true }) - cy.get('#niftiWriteImage-image-details').should('contain', 'imageType') + cy.get('#niftiWriteImage-image-details').contains('imageType') cy.get('#niftiWriteImageInputs sl-input[name="serialized-image"]').find('input', { includeShadowDom: true }).type('r16slice.nii.gz', { force: true }) cy.get('#niftiWriteImageInputs sl-button[name="run"]').click() diff --git a/packages/image-io/typescript/cypress/e2e/nrrd.cy.ts b/packages/image-io/typescript/cypress/e2e/nrrd.cy.ts index fd3863db4..811cd1355 100644 --- a/packages/image-io/typescript/cypress/e2e/nrrd.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/nrrd.cy.ts @@ -25,7 +25,7 @@ describe('nrrd', () => { cy.get('#nrrdReadImageInputs sl-button[name="run"]').click() cy.get('#nrrdReadImage-could-read-details').should('contain', 'true') - cy.get('#nrrdReadImage-image-details').should('contain', 'imageType') + cy.get('#nrrdReadImage-image-details').contains('imageType') }) it('Writes a BioRad image', function () { @@ -33,7 +33,7 @@ describe('nrrd', () => { const testFile = { contents: new Uint8Array(this['vol-raw-little.iwi.cbor']), fileName: 'vol-raw-little.iwi.cbor' } cy.get('#nrrdWriteImageInputs input[name="image-file"]').selectFile([testFile,], { force: true }) - cy.get('#nrrdWriteImage-image-details').should('contain', 'imageType') + cy.get('#nrrdWriteImage-image-details').contains('imageType') cy.get('#nrrdWriteImageInputs sl-input[name="serialized-image"]').find('input', { includeShadowDom: true }).type('vol-raw-little.nrrd', { force: true }) cy.get('#nrrdWriteImageInputs sl-button[name="run"]').click() diff --git a/packages/image-io/typescript/cypress/e2e/png.cy.ts b/packages/image-io/typescript/cypress/e2e/png.cy.ts index 5bbec1fad..2cb0fa5a6 100644 --- a/packages/image-io/typescript/cypress/e2e/png.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/png.cy.ts @@ -25,7 +25,7 @@ describe('png', () => { cy.get('#pngReadImageInputs sl-button[name="run"]').click() cy.get('#pngReadImage-could-read-details').should('contain', 'true') - cy.get('#pngReadImage-image-details').should('contain', 'imageType') + cy.get('#pngReadImage-image-details').contains('imageType') }) it('Writes a PNG image', function () { @@ -33,7 +33,7 @@ describe('png', () => { const testFile = { contents: new Uint8Array(this['cthead1.iwi.cbor']), fileName: 'cthead1.iwi.cbor' } cy.get('#pngWriteImageInputs input[name="image-file"]').selectFile([testFile,], { force: true }) - cy.get('#pngWriteImage-image-details').should('contain', 'imageType') + cy.get('#pngWriteImage-image-details').contains('imageType') cy.get('#pngWriteImageInputs sl-input[name="serialized-image"]').find('input', { includeShadowDom: true }).type('cthead1.png', { force: true }) cy.get('#pngWriteImageInputs sl-button[name="run"]').click() diff --git a/packages/image-io/typescript/cypress/e2e/read-image.cy.ts b/packages/image-io/typescript/cypress/e2e/read-image.cy.ts index 67ecfbf49..c3060f1fb 100644 --- a/packages/image-io/typescript/cypress/e2e/read-image.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/read-image.cy.ts @@ -49,7 +49,7 @@ describe('read-image', () => { cy.get('#readImageInputs sl-button[name="run"]').click() - cy.get('#readImage-image-details').should('contain', 'imageType') + cy.get('#readImage-image-details').contains('imageType') }) it('Reads an image BinaryFile', function () { diff --git a/packages/image-io/typescript/cypress/e2e/tiff.cy.ts b/packages/image-io/typescript/cypress/e2e/tiff.cy.ts index 444fde7cb..cbf352188 100644 --- a/packages/image-io/typescript/cypress/e2e/tiff.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/tiff.cy.ts @@ -25,7 +25,7 @@ describe('tiff', () => { cy.get('#tiffReadImageInputs sl-button[name="run"]').click() cy.get('#tiffReadImage-could-read-details').should('contain', 'true') - cy.get('#tiffReadImage-image-details').should('contain', 'imageType') + cy.get('#tiffReadImage-image-details').contains('imageType') }) it('Writes a TIFF image', function () { @@ -33,7 +33,7 @@ describe('tiff', () => { const testFile = { contents: new Uint8Array(this['ShortTestImage.iwi.cbor']), fileName: 'ShortTestImage.iwi.cbor' } cy.get('#tiffWriteImageInputs input[name="image-file"]').selectFile([testFile,], { force: true }) - cy.get('#tiffWriteImage-image-details').should('contain', 'imageType') + cy.get('#tiffWriteImage-image-details').contains('imageType') cy.get('#tiffWriteImageInputs sl-input[name="serialized-image"]').find('input', { includeShadowDom: true }).type('ShortTestImage.tiff', { force: true }) cy.get('#tiffWriteImageInputs sl-button[name="run"]').click() diff --git a/packages/image-io/typescript/cypress/e2e/vtk.cy.ts b/packages/image-io/typescript/cypress/e2e/vtk.cy.ts index c0b822ab0..84bd59702 100644 --- a/packages/image-io/typescript/cypress/e2e/vtk.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/vtk.cy.ts @@ -25,7 +25,7 @@ describe('vtk', () => { cy.get('#vtkReadImageInputs sl-button[name="run"]').click() cy.get('#vtkReadImage-could-read-details').should('contain', 'true') - cy.get('#vtkReadImage-image-details').should('contain', 'imageType') + cy.get('#vtkReadImage-image-details').contains('imageType') }) it('Writes a VTK image', function () { @@ -33,7 +33,7 @@ describe('vtk', () => { const testFile = { contents: new Uint8Array(this['ironProt.iwi.cbor']), fileName: 'image_color.iwi.cbor' } cy.get('#vtkWriteImageInputs input[name="image-file"]').selectFile([testFile,], { force: true }) - cy.get('#vtkWriteImage-image-details').should('contain', 'imageType') + cy.get('#vtkWriteImage-image-details').contains('imageType') cy.get('#vtkWriteImageInputs sl-input[name="serialized-image"]').find('input', { includeShadowDom: true }).type('ironProt.vtk', { force: true }) cy.get('#vtkWriteImageInputs sl-button[name="run"]').click() diff --git a/packages/image-io/typescript/cypress/e2e/wasm.cy.ts b/packages/image-io/typescript/cypress/e2e/wasm.cy.ts index 17b51a281..b1da75efa 100644 --- a/packages/image-io/typescript/cypress/e2e/wasm.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/wasm.cy.ts @@ -24,7 +24,7 @@ describe('wasm', () => { cy.get('#wasmReadImageInputs sl-button[name="run"]').click() cy.get('#wasmReadImage-could-read-details').should('contain', 'true') - cy.get('#wasmReadImage-image-details').should('contain', 'imageType') + cy.get('#wasmReadImage-image-details').contains('imageType') }) it('Writes an ITK Wasm image', function () { @@ -32,7 +32,7 @@ describe('wasm', () => { const testFile = { contents: new Uint8Array(this['cthead1.iwi.cbor']), fileName: 'cthead1.iwi.cbor' } cy.get('#wasmWriteImageInputs input[name="image-file"]').selectFile([testFile,], { force: true }) - cy.get('#wasmWriteImage-image-details').should('contain', 'imageType') + cy.get('#wasmWriteImage-image-details').contains('imageType') cy.get('#wasmWriteImageInputs sl-input[name="serialized-image"]').find('input', { includeShadowDom: true }).type('cthead1-new.iwi.cbor', { force: true }) cy.get('#wasmWriteImageInputs sl-button[name="run"]').click() diff --git a/packages/image-io/typescript/cypress/e2e/write-image.cy.ts b/packages/image-io/typescript/cypress/e2e/write-image.cy.ts index 06d14b39c..690e6f474 100644 --- a/packages/image-io/typescript/cypress/e2e/write-image.cy.ts +++ b/packages/image-io/typescript/cypress/e2e/write-image.cy.ts @@ -45,7 +45,7 @@ describe('write-image', () => { const testFile = { contents: new Uint8Array(this['cthead1.iwi.cbor']), fileName: 'cthead1.iwi.cbor' } cy.get('#writeImageInputs input[name="image-file"]').selectFile([testFile,], { force: true }) - cy.get('#writeImage-image-details').should('contain', 'imageType') + cy.get('#writeImage-image-details').contains('imageType') cy.get('#writeImageInputs sl-input[name="serialized-image"]').find('input', { includeShadowDom: true }).type('cthead1.png', { force: true }) cy.get('#writeImageInputs sl-button[name="run"]').click() diff --git a/packages/image-io/typescript/test/browser/demo-app/index.html b/packages/image-io/typescript/test/browser/demo-app/index.html index fea4f7619..14e1bace7 100644 --- a/packages/image-io/typescript/test/browser/demo-app/index.html +++ b/packages/image-io/typescript/test/browser/demo-app/index.html @@ -100,7 +100,7 @@

👨‍💻 Live API Demo ✨

- + bmp dcm @@ -184,7 +184,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -268,7 +268,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -352,7 +352,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -436,7 +436,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -520,7 +520,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -604,7 +604,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -688,7 +688,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -772,7 +772,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -856,7 +856,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -940,7 +940,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1024,7 +1024,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1108,7 +1108,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1192,7 +1192,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1276,7 +1276,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1360,7 +1360,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1444,7 +1444,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1528,7 +1528,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1612,7 +1612,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1696,7 +1696,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1780,7 +1780,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1864,7 +1864,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -1948,7 +1948,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm @@ -2032,7 +2032,7 @@

👨‍💻 Live API Demo ✨

Download

- + bmp dcm