ibelem commited on
Commit
aa66544
·
verified ·
1 Parent(s): e9c7b9b

Upload 11 files

Browse files
README.md ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: WebNN Real-time Depth Estimation
3
+ emoji: 🧫
4
+ colorFrom: yellow
5
+ colorTo: blue
6
+ sdk: static
7
+ pinned: false
8
+ ---
assets/index-15ZN9feD.js ADDED
The diff for this file is too large to render. See raw diff
 
assets/index-CrhkE7SZ.css ADDED
@@ -0,0 +1 @@
 
 
1
+ *{box-sizing:border-box;padding:0;margin:0;font-family:sans-serif}html,body{height:100%}body{padding:16px 32px}body,#container{display:flex;flex-direction:column;justify-content:center;align-items:center}#controls{display:flex;padding:1rem;gap:1rem}#controls>div{text-align:center}h1,h3{text-align:center}h3{margin-top:.5rem}#container{display:flex;flex-direction:row;position:relative;max-width:100%;max-height:100%;border:2px dashed #d1d5db;border-radius:.75rem;overflow:hidden;margin-top:1rem;background-size:100% 100%;background-position:center;background-repeat:no-repeat}#video,#output-canvas{width:504px;height:504px}canvas{width:100%;height:100%}#status{min-height:16px;margin:8px 0}#size-container{display:none}a{color:#275efe;text-decoration:none}a:hover{text-decoration:underline}#versions{margin-top:.5rem;font-size:.8rem;color:#0000004d}
assets/ort-wasm-simd-threaded.jsep-B0T3yYHD.wasm ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c46655e8a94afc45338d4cb2b840475f88e5012d524509916e505079c00bfa39
3
+ size 21596019
index.html ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <title>Transformers.js | Real-time depth estimation</title>
7
+ <script type="module" crossorigin src="/assets/index-15ZN9feD.js"></script>
8
+ <link rel="stylesheet" crossorigin href="/assets/index-CrhkE7SZ.css">
9
+ </head>
10
+
11
+ <body>
12
+ <h1>
13
+ Real-time depth estimation w/
14
+ <a
15
+ href="https://huggingface.co/onnx-community/depth-anything-v2-small"
16
+ target="_blank"
17
+ >Depth Anything V2</a
18
+ >
19
+ </h1>
20
+ <h3>
21
+ Runs locally in your browser, powered by
22
+ <a href="https://github.com/huggingface/transformers.js" target="_blank"
23
+ >🤗 Transformers.js</a
24
+ > x <label id="device"></label>
25
+ </h3>
26
+ <div id="container">
27
+ <video id="video" autoplay muted playsinline></video>
28
+ <canvas id="output-canvas"></canvas>
29
+ </div>
30
+ <div id="controls">
31
+ <div
32
+ title="Read frames from your webcam and process them at a lower size (lower = faster)"
33
+ >
34
+ <label>Stream scale</label>
35
+ (<label id="scale-value">0.4</label>)
36
+ <br />
37
+ <input
38
+ id="scale"
39
+ type="range"
40
+ min="0.1"
41
+ max="1"
42
+ step="0.1"
43
+ value="0.4"
44
+ disabled
45
+ />
46
+ </div>
47
+ <div id="size-container" title="The width of the image (lower = faster)">
48
+ <label>Image size</label>
49
+ (<label id="size-value">504</label>px)
50
+ <br />
51
+ <input
52
+ id="size"
53
+ type="range"
54
+ min="140"
55
+ max="840"
56
+ step="14"
57
+ value="504"
58
+ disabled
59
+ />
60
+ </div>
61
+ </div>
62
+ <label id="status">Loading model...</label>
63
+ <div>
64
+ <a href="?device=webnn-gpu">WebNN GPU</a> · <a href="?device=webnn-npu">WebNN NPU</a>
65
+ </div>
66
+ <div id="versions">
67
+ @huggingface/transformers: 3.7.3 · onnxruntime-web: 1.22.0-dev.20250409-89f8206ba4
68
+ </div>
69
+ </body>
70
+ </html>
src/index.html ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <title>Transformers.js | Real-time depth estimation</title>
7
+ <link rel="stylesheet" href="/style.css" />
8
+ </head>
9
+
10
+ <body>
11
+ <h1>
12
+ Real-time depth estimation w/
13
+ <a
14
+ href="https://huggingface.co/onnx-community/depth-anything-v2-small"
15
+ target="_blank"
16
+ >Depth Anything V2</a
17
+ >
18
+ </h1>
19
+ <h3>
20
+ Runs locally in your browser, powered by
21
+ <a href="https://github.com/huggingface/transformers.js" target="_blank"
22
+ >🤗 Transformers.js</a
23
+ > x <label id="device"></label>
24
+ </h3>
25
+ <div id="container">
26
+ <video id="video" autoplay muted playsinline></video>
27
+ <canvas id="output-canvas"></canvas>
28
+ </div>
29
+ <div id="controls">
30
+ <div
31
+ title="Read frames from your webcam and process them at a lower size (lower = faster)"
32
+ >
33
+ <label>Stream scale</label>
34
+ (<label id="scale-value">0.4</label>)
35
+ <br />
36
+ <input
37
+ id="scale"
38
+ type="range"
39
+ min="0.1"
40
+ max="1"
41
+ step="0.1"
42
+ value="0.4"
43
+ disabled
44
+ />
45
+ </div>
46
+ <div id="size-container" title="The width of the image (lower = faster)">
47
+ <label>Image size</label>
48
+ (<label id="size-value">504</label>px)
49
+ <br />
50
+ <input
51
+ id="size"
52
+ type="range"
53
+ min="140"
54
+ max="840"
55
+ step="14"
56
+ value="504"
57
+ disabled
58
+ />
59
+ </div>
60
+ </div>
61
+ <label id="status">Loading model...</label>
62
+ <div>
63
+ <a href="?device=webnn-gpu">WebNN GPU</a> · <a href="?device=webnn-npu">WebNN NPU</a>
64
+ </div>
65
+ <div id="versions">
66
+ @huggingface/transformers: 3.7.3 · onnxruntime-web: 1.22.0-dev.20250409-89f8206ba4
67
+ </div>
68
+ <script type="module" src="/main.js"></script>
69
+ </body>
70
+ </html>
src/main.js ADDED
@@ -0,0 +1,201 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import {
2
+ AutoModel,
3
+ AutoImageProcessor,
4
+ RawImage,
5
+ } from "@huggingface/transformers";
6
+
7
+ // Reference the elements that we will need
8
+ const deviceLabel = document.getElementById("device");
9
+ const status = document.getElementById("status");
10
+ const canvas = document.createElement("canvas");
11
+ const outputCanvas = document.getElementById("output-canvas");
12
+ const video = document.getElementById("video");
13
+ const sizeSlider = document.getElementById("size");
14
+ const sizeLabel = document.getElementById("size-value");
15
+ const scaleSlider = document.getElementById("scale");
16
+ const scaleLabel = document.getElementById("scale-value");
17
+
18
+ function setStreamSize(width, height) {
19
+ video.width = outputCanvas.width = canvas.width = Math.round(width);
20
+ video.height = outputCanvas.height = canvas.height = Math.round(height);
21
+ }
22
+
23
+ status.textContent = "Loading model...";
24
+
25
+ function getDeviceConfig(deviceParam, dtypeParam) {
26
+ const defaultDevice = 'webnn-gpu';
27
+ const defaultDtype = 'fp16';
28
+ const webnnDevices = ['webnn-gpu', 'webnn-cpu', 'webnn-npu'];
29
+ const supportedDtypes = ['fp16', 'fp32', 'int8'];
30
+
31
+ const device = (deviceParam || defaultDevice).toLowerCase();
32
+ const dtype = (dtypeParam && supportedDtypes.includes(dtypeParam.toLowerCase()))
33
+ ? dtypeParam.toLowerCase()
34
+ : (webnnDevices.includes(device) ? defaultDtype : 'fp32');
35
+
36
+ const FREE_DIMENSION_HEIGHT = 504;
37
+ const FREE_DIMENSION_WIDTH = 504;
38
+
39
+ const sessionOptions = webnnDevices.includes(device)
40
+ ? {
41
+ freeDimensionOverrides: {
42
+ batch_size: 1,
43
+ height: FREE_DIMENSION_HEIGHT,
44
+ width: FREE_DIMENSION_WIDTH,
45
+ },
46
+ logSeverityLevel: 0
47
+ }
48
+ : {
49
+ logSeverityLevel: 0
50
+ };
51
+
52
+ return { device, dtype, sessionOptions };
53
+ }
54
+
55
+ const urlParams = new URLSearchParams(window.location.search);
56
+ let { device, dtype, sessionOptions } = getDeviceConfig(urlParams.get('device'), urlParams.get('dtype'));
57
+
58
+ let deviceValue = 'WebNN GPU';
59
+ switch (device) {
60
+ case 'webgpu':
61
+ deviceValue = 'WebGPU';
62
+ break;
63
+ case 'webnn-gpu':
64
+ deviceValue = 'WebNN GPU';
65
+ break;
66
+ case 'webnn-cpu':
67
+ deviceValue = 'WebNN CPU';
68
+ break;
69
+ case 'webnn-npu':
70
+ deviceValue = 'WebNN NPU';
71
+ break;
72
+ default:
73
+ deviceValue = 'WebNN GPU';
74
+ }
75
+
76
+ deviceLabel.textContent = deviceValue;
77
+ if (!['webgpu', 'webnn-gpu', 'webnn-cpu', 'webnn-npu'].includes(device)) {
78
+ status.textContent = `Unsupported device ${device}. Falling back to WebNN GPU.`;
79
+ device = 'webnn-gpu';
80
+ }
81
+
82
+ // Load model and processor
83
+ const model_id = "onnx-community/depth-anything-v2-small";
84
+
85
+ let model;
86
+ try {
87
+ model = await AutoModel.from_pretrained(model_id, {
88
+ device: device,
89
+ dtype: dtype,
90
+ session_options: sessionOptions
91
+ });
92
+ } catch (err) {
93
+ status.textContent = err.message;
94
+ alert(err.message);
95
+ throw err;
96
+ }
97
+
98
+ const processor = await AutoImageProcessor.from_pretrained(model_id);
99
+
100
+ // Set up controls
101
+ let size = 504;
102
+ processor.size = { width: size, height: size };
103
+ sizeSlider.addEventListener("input", () => {
104
+ size = Number(sizeSlider.value);
105
+ processor.size = { width: size, height: size };
106
+ sizeLabel.textContent = size;
107
+ });
108
+ sizeSlider.disabled = false;
109
+
110
+ let scale = 0.4;
111
+ scaleSlider.addEventListener("input", () => {
112
+ scale = Number(scaleSlider.value);
113
+ setStreamSize(video.videoWidth * scale, video.videoHeight * scale);
114
+ scaleLabel.textContent = scale;
115
+ });
116
+ scaleSlider.disabled = false;
117
+
118
+ status.textContent = "Ready";
119
+
120
+ let isProcessing = false;
121
+ let previousTime;
122
+ const context = canvas.getContext("2d", { willReadFrequently: true });
123
+ const outputContext = outputCanvas.getContext("2d", {
124
+ willReadFrequently: true,
125
+ });
126
+ function updateCanvas() {
127
+ const { width, height } = canvas;
128
+
129
+ if (!isProcessing) {
130
+ isProcessing = true;
131
+ (async function () {
132
+ // Read the current frame from the video
133
+ context.drawImage(video, 0, 0, width, height);
134
+ const currentFrame = context.getImageData(0, 0, width, height);
135
+ const image = new RawImage(currentFrame.data, width, height, 4);
136
+
137
+ // Pre-process image
138
+ const inputs = await processor(image);
139
+
140
+ // Predict depth map
141
+ const { predicted_depth } = await model(inputs);
142
+ const data = predicted_depth.data;
143
+ const [bs, oh, ow] = predicted_depth.dims;
144
+
145
+ // Normalize the depth map
146
+ let min = Infinity;
147
+ let max = -Infinity;
148
+ outputCanvas.width = ow;
149
+ outputCanvas.height = oh;
150
+ for (let i = 0; i < data.length; ++i) {
151
+ const v = data[i];
152
+ if (v < min) min = v;
153
+ if (v > max) max = v;
154
+ }
155
+ const range = max - min;
156
+
157
+ const imageData = new Uint8ClampedArray(4 * data.length);
158
+ for (let i = 0; i < data.length; ++i) {
159
+ const offset = 4 * i;
160
+ imageData[offset] = 255; // Set base color to red
161
+
162
+ // Set alpha to normalized depth value
163
+ imageData[offset + 3] = 255 * (1 - (data[i] - min) / range);
164
+ }
165
+ const outPixelData = new ImageData(imageData, ow, oh);
166
+ outputContext.putImageData(outPixelData, 0, 0);
167
+
168
+ if (previousTime !== undefined) {
169
+ const fps = 1000 / (performance.now() - previousTime);
170
+ status.textContent = `FPS: ${fps.toFixed(2)}`;
171
+ }
172
+ previousTime = performance.now();
173
+
174
+ isProcessing = false;
175
+ })();
176
+ }
177
+
178
+ window.requestAnimationFrame(updateCanvas);
179
+ }
180
+
181
+ // Start the video stream
182
+ navigator.mediaDevices
183
+ .getUserMedia(
184
+ { video: { width: 720, height: 720 } }, // Ask for square video
185
+ )
186
+ .then((stream) => {
187
+ // Set up the video and canvas elements.
188
+ video.srcObject = stream;
189
+ video.play();
190
+
191
+ const videoTrack = stream.getVideoTracks()[0];
192
+ const { width, height } = videoTrack.getSettings();
193
+
194
+ setStreamSize(width * scale, height * scale);
195
+
196
+ // Start the animation loop
197
+ setTimeout(updateCanvas, 50);
198
+ })
199
+ .catch((error) => {
200
+ alert(error);
201
+ });
src/package-lock.json ADDED
@@ -0,0 +1,2012 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "depth-estimation-video",
3
+ "version": "0.0.0",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "": {
8
+ "name": "depth-estimation-video",
9
+ "version": "0.0.0",
10
+ "dependencies": {
11
+ "@huggingface/transformers": "3.7.3",
12
+ "onnxruntime-node": "^1.21.0"
13
+ },
14
+ "devDependencies": {
15
+ "vite": "^7.1.6"
16
+ }
17
+ },
18
+ "node_modules/@emnapi/runtime": {
19
+ "version": "1.4.3",
20
+ "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.4.3.tgz",
21
+ "integrity": "sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==",
22
+ "license": "MIT",
23
+ "optional": true,
24
+ "dependencies": {
25
+ "tslib": "^2.4.0"
26
+ }
27
+ },
28
+ "node_modules/@esbuild/aix-ppc64": {
29
+ "version": "0.25.0",
30
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.0.tgz",
31
+ "integrity": "sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==",
32
+ "cpu": [
33
+ "ppc64"
34
+ ],
35
+ "dev": true,
36
+ "optional": true,
37
+ "os": [
38
+ "aix"
39
+ ],
40
+ "engines": {
41
+ "node": ">=18"
42
+ }
43
+ },
44
+ "node_modules/@esbuild/android-arm": {
45
+ "version": "0.25.0",
46
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.0.tgz",
47
+ "integrity": "sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g==",
48
+ "cpu": [
49
+ "arm"
50
+ ],
51
+ "dev": true,
52
+ "optional": true,
53
+ "os": [
54
+ "android"
55
+ ],
56
+ "engines": {
57
+ "node": ">=18"
58
+ }
59
+ },
60
+ "node_modules/@esbuild/android-arm64": {
61
+ "version": "0.25.0",
62
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.0.tgz",
63
+ "integrity": "sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g==",
64
+ "cpu": [
65
+ "arm64"
66
+ ],
67
+ "dev": true,
68
+ "optional": true,
69
+ "os": [
70
+ "android"
71
+ ],
72
+ "engines": {
73
+ "node": ">=18"
74
+ }
75
+ },
76
+ "node_modules/@esbuild/android-x64": {
77
+ "version": "0.25.0",
78
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.0.tgz",
79
+ "integrity": "sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg==",
80
+ "cpu": [
81
+ "x64"
82
+ ],
83
+ "dev": true,
84
+ "optional": true,
85
+ "os": [
86
+ "android"
87
+ ],
88
+ "engines": {
89
+ "node": ">=18"
90
+ }
91
+ },
92
+ "node_modules/@esbuild/darwin-arm64": {
93
+ "version": "0.25.0",
94
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.0.tgz",
95
+ "integrity": "sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw==",
96
+ "cpu": [
97
+ "arm64"
98
+ ],
99
+ "dev": true,
100
+ "optional": true,
101
+ "os": [
102
+ "darwin"
103
+ ],
104
+ "engines": {
105
+ "node": ">=18"
106
+ }
107
+ },
108
+ "node_modules/@esbuild/darwin-x64": {
109
+ "version": "0.25.0",
110
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.0.tgz",
111
+ "integrity": "sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg==",
112
+ "cpu": [
113
+ "x64"
114
+ ],
115
+ "dev": true,
116
+ "optional": true,
117
+ "os": [
118
+ "darwin"
119
+ ],
120
+ "engines": {
121
+ "node": ">=18"
122
+ }
123
+ },
124
+ "node_modules/@esbuild/freebsd-arm64": {
125
+ "version": "0.25.0",
126
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.0.tgz",
127
+ "integrity": "sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w==",
128
+ "cpu": [
129
+ "arm64"
130
+ ],
131
+ "dev": true,
132
+ "optional": true,
133
+ "os": [
134
+ "freebsd"
135
+ ],
136
+ "engines": {
137
+ "node": ">=18"
138
+ }
139
+ },
140
+ "node_modules/@esbuild/freebsd-x64": {
141
+ "version": "0.25.0",
142
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.0.tgz",
143
+ "integrity": "sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A==",
144
+ "cpu": [
145
+ "x64"
146
+ ],
147
+ "dev": true,
148
+ "optional": true,
149
+ "os": [
150
+ "freebsd"
151
+ ],
152
+ "engines": {
153
+ "node": ">=18"
154
+ }
155
+ },
156
+ "node_modules/@esbuild/linux-arm": {
157
+ "version": "0.25.0",
158
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.0.tgz",
159
+ "integrity": "sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg==",
160
+ "cpu": [
161
+ "arm"
162
+ ],
163
+ "dev": true,
164
+ "optional": true,
165
+ "os": [
166
+ "linux"
167
+ ],
168
+ "engines": {
169
+ "node": ">=18"
170
+ }
171
+ },
172
+ "node_modules/@esbuild/linux-arm64": {
173
+ "version": "0.25.0",
174
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.0.tgz",
175
+ "integrity": "sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg==",
176
+ "cpu": [
177
+ "arm64"
178
+ ],
179
+ "dev": true,
180
+ "optional": true,
181
+ "os": [
182
+ "linux"
183
+ ],
184
+ "engines": {
185
+ "node": ">=18"
186
+ }
187
+ },
188
+ "node_modules/@esbuild/linux-ia32": {
189
+ "version": "0.25.0",
190
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.0.tgz",
191
+ "integrity": "sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg==",
192
+ "cpu": [
193
+ "ia32"
194
+ ],
195
+ "dev": true,
196
+ "optional": true,
197
+ "os": [
198
+ "linux"
199
+ ],
200
+ "engines": {
201
+ "node": ">=18"
202
+ }
203
+ },
204
+ "node_modules/@esbuild/linux-loong64": {
205
+ "version": "0.25.0",
206
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.0.tgz",
207
+ "integrity": "sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw==",
208
+ "cpu": [
209
+ "loong64"
210
+ ],
211
+ "dev": true,
212
+ "optional": true,
213
+ "os": [
214
+ "linux"
215
+ ],
216
+ "engines": {
217
+ "node": ">=18"
218
+ }
219
+ },
220
+ "node_modules/@esbuild/linux-mips64el": {
221
+ "version": "0.25.0",
222
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.0.tgz",
223
+ "integrity": "sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ==",
224
+ "cpu": [
225
+ "mips64el"
226
+ ],
227
+ "dev": true,
228
+ "optional": true,
229
+ "os": [
230
+ "linux"
231
+ ],
232
+ "engines": {
233
+ "node": ">=18"
234
+ }
235
+ },
236
+ "node_modules/@esbuild/linux-ppc64": {
237
+ "version": "0.25.0",
238
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.0.tgz",
239
+ "integrity": "sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw==",
240
+ "cpu": [
241
+ "ppc64"
242
+ ],
243
+ "dev": true,
244
+ "optional": true,
245
+ "os": [
246
+ "linux"
247
+ ],
248
+ "engines": {
249
+ "node": ">=18"
250
+ }
251
+ },
252
+ "node_modules/@esbuild/linux-riscv64": {
253
+ "version": "0.25.0",
254
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.0.tgz",
255
+ "integrity": "sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA==",
256
+ "cpu": [
257
+ "riscv64"
258
+ ],
259
+ "dev": true,
260
+ "optional": true,
261
+ "os": [
262
+ "linux"
263
+ ],
264
+ "engines": {
265
+ "node": ">=18"
266
+ }
267
+ },
268
+ "node_modules/@esbuild/linux-s390x": {
269
+ "version": "0.25.0",
270
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.0.tgz",
271
+ "integrity": "sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA==",
272
+ "cpu": [
273
+ "s390x"
274
+ ],
275
+ "dev": true,
276
+ "optional": true,
277
+ "os": [
278
+ "linux"
279
+ ],
280
+ "engines": {
281
+ "node": ">=18"
282
+ }
283
+ },
284
+ "node_modules/@esbuild/linux-x64": {
285
+ "version": "0.25.0",
286
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.0.tgz",
287
+ "integrity": "sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw==",
288
+ "cpu": [
289
+ "x64"
290
+ ],
291
+ "dev": true,
292
+ "optional": true,
293
+ "os": [
294
+ "linux"
295
+ ],
296
+ "engines": {
297
+ "node": ">=18"
298
+ }
299
+ },
300
+ "node_modules/@esbuild/netbsd-arm64": {
301
+ "version": "0.25.0",
302
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.0.tgz",
303
+ "integrity": "sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==",
304
+ "cpu": [
305
+ "arm64"
306
+ ],
307
+ "dev": true,
308
+ "optional": true,
309
+ "os": [
310
+ "netbsd"
311
+ ],
312
+ "engines": {
313
+ "node": ">=18"
314
+ }
315
+ },
316
+ "node_modules/@esbuild/netbsd-x64": {
317
+ "version": "0.25.0",
318
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.0.tgz",
319
+ "integrity": "sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA==",
320
+ "cpu": [
321
+ "x64"
322
+ ],
323
+ "dev": true,
324
+ "optional": true,
325
+ "os": [
326
+ "netbsd"
327
+ ],
328
+ "engines": {
329
+ "node": ">=18"
330
+ }
331
+ },
332
+ "node_modules/@esbuild/openbsd-arm64": {
333
+ "version": "0.25.0",
334
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.0.tgz",
335
+ "integrity": "sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==",
336
+ "cpu": [
337
+ "arm64"
338
+ ],
339
+ "dev": true,
340
+ "optional": true,
341
+ "os": [
342
+ "openbsd"
343
+ ],
344
+ "engines": {
345
+ "node": ">=18"
346
+ }
347
+ },
348
+ "node_modules/@esbuild/openbsd-x64": {
349
+ "version": "0.25.0",
350
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.0.tgz",
351
+ "integrity": "sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg==",
352
+ "cpu": [
353
+ "x64"
354
+ ],
355
+ "dev": true,
356
+ "optional": true,
357
+ "os": [
358
+ "openbsd"
359
+ ],
360
+ "engines": {
361
+ "node": ">=18"
362
+ }
363
+ },
364
+ "node_modules/@esbuild/sunos-x64": {
365
+ "version": "0.25.0",
366
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.0.tgz",
367
+ "integrity": "sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg==",
368
+ "cpu": [
369
+ "x64"
370
+ ],
371
+ "dev": true,
372
+ "optional": true,
373
+ "os": [
374
+ "sunos"
375
+ ],
376
+ "engines": {
377
+ "node": ">=18"
378
+ }
379
+ },
380
+ "node_modules/@esbuild/win32-arm64": {
381
+ "version": "0.25.0",
382
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.0.tgz",
383
+ "integrity": "sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw==",
384
+ "cpu": [
385
+ "arm64"
386
+ ],
387
+ "dev": true,
388
+ "optional": true,
389
+ "os": [
390
+ "win32"
391
+ ],
392
+ "engines": {
393
+ "node": ">=18"
394
+ }
395
+ },
396
+ "node_modules/@esbuild/win32-ia32": {
397
+ "version": "0.25.0",
398
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.0.tgz",
399
+ "integrity": "sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA==",
400
+ "cpu": [
401
+ "ia32"
402
+ ],
403
+ "dev": true,
404
+ "optional": true,
405
+ "os": [
406
+ "win32"
407
+ ],
408
+ "engines": {
409
+ "node": ">=18"
410
+ }
411
+ },
412
+ "node_modules/@esbuild/win32-x64": {
413
+ "version": "0.25.0",
414
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.0.tgz",
415
+ "integrity": "sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ==",
416
+ "cpu": [
417
+ "x64"
418
+ ],
419
+ "dev": true,
420
+ "optional": true,
421
+ "os": [
422
+ "win32"
423
+ ],
424
+ "engines": {
425
+ "node": ">=18"
426
+ }
427
+ },
428
+ "node_modules/@huggingface/jinja": {
429
+ "version": "0.5.1",
430
+ "resolved": "https://registry.npmjs.org/@huggingface/jinja/-/jinja-0.5.1.tgz",
431
+ "integrity": "sha512-yUZLld4lrM9iFxHCwFQ7D1HW2MWMwSbeB7WzWqFYDWK+rEb+WldkLdAJxUPOmgICMHZLzZGVcVjFh3w/YGubng==",
432
+ "license": "MIT",
433
+ "engines": {
434
+ "node": ">=18"
435
+ }
436
+ },
437
+ "node_modules/@huggingface/transformers": {
438
+ "version": "3.7.3",
439
+ "resolved": "https://registry.npmjs.org/@huggingface/transformers/-/transformers-3.7.3.tgz",
440
+ "integrity": "sha512-on3Y4Pn9oK/OqNKygojnAn6RePtOVlIZbMFwnP6Q8q9p6UiYPp5IDR08KWN0FSic5fBbrZvF+vVH67vNXBqZvA==",
441
+ "license": "Apache-2.0",
442
+ "dependencies": {
443
+ "@huggingface/jinja": "^0.5.1",
444
+ "onnxruntime-node": "1.21.0",
445
+ "onnxruntime-web": "1.22.0-dev.20250409-89f8206ba4",
446
+ "sharp": "^0.34.1"
447
+ }
448
+ },
449
+ "node_modules/@img/sharp-darwin-arm64": {
450
+ "version": "0.34.1",
451
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.1.tgz",
452
+ "integrity": "sha512-pn44xgBtgpEbZsu+lWf2KNb6OAf70X68k+yk69Ic2Xz11zHR/w24/U49XT7AeRwJ0Px+mhALhU5LPci1Aymk7A==",
453
+ "cpu": [
454
+ "arm64"
455
+ ],
456
+ "license": "Apache-2.0",
457
+ "optional": true,
458
+ "os": [
459
+ "darwin"
460
+ ],
461
+ "engines": {
462
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
463
+ },
464
+ "funding": {
465
+ "url": "https://opencollective.com/libvips"
466
+ },
467
+ "optionalDependencies": {
468
+ "@img/sharp-libvips-darwin-arm64": "1.1.0"
469
+ }
470
+ },
471
+ "node_modules/@img/sharp-darwin-x64": {
472
+ "version": "0.34.1",
473
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.1.tgz",
474
+ "integrity": "sha512-VfuYgG2r8BpYiOUN+BfYeFo69nP/MIwAtSJ7/Zpxc5QF3KS22z8Pvg3FkrSFJBPNQ7mmcUcYQFBmEQp7eu1F8Q==",
475
+ "cpu": [
476
+ "x64"
477
+ ],
478
+ "license": "Apache-2.0",
479
+ "optional": true,
480
+ "os": [
481
+ "darwin"
482
+ ],
483
+ "engines": {
484
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
485
+ },
486
+ "funding": {
487
+ "url": "https://opencollective.com/libvips"
488
+ },
489
+ "optionalDependencies": {
490
+ "@img/sharp-libvips-darwin-x64": "1.1.0"
491
+ }
492
+ },
493
+ "node_modules/@img/sharp-libvips-darwin-arm64": {
494
+ "version": "1.1.0",
495
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.1.0.tgz",
496
+ "integrity": "sha512-HZ/JUmPwrJSoM4DIQPv/BfNh9yrOA8tlBbqbLz4JZ5uew2+o22Ik+tHQJcih7QJuSa0zo5coHTfD5J8inqj9DA==",
497
+ "cpu": [
498
+ "arm64"
499
+ ],
500
+ "license": "LGPL-3.0-or-later",
501
+ "optional": true,
502
+ "os": [
503
+ "darwin"
504
+ ],
505
+ "funding": {
506
+ "url": "https://opencollective.com/libvips"
507
+ }
508
+ },
509
+ "node_modules/@img/sharp-libvips-darwin-x64": {
510
+ "version": "1.1.0",
511
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.1.0.tgz",
512
+ "integrity": "sha512-Xzc2ToEmHN+hfvsl9wja0RlnXEgpKNmftriQp6XzY/RaSfwD9th+MSh0WQKzUreLKKINb3afirxW7A0fz2YWuQ==",
513
+ "cpu": [
514
+ "x64"
515
+ ],
516
+ "license": "LGPL-3.0-or-later",
517
+ "optional": true,
518
+ "os": [
519
+ "darwin"
520
+ ],
521
+ "funding": {
522
+ "url": "https://opencollective.com/libvips"
523
+ }
524
+ },
525
+ "node_modules/@img/sharp-libvips-linux-arm": {
526
+ "version": "1.1.0",
527
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.1.0.tgz",
528
+ "integrity": "sha512-s8BAd0lwUIvYCJyRdFqvsj+BJIpDBSxs6ivrOPm/R7piTs5UIwY5OjXrP2bqXC9/moGsyRa37eYWYCOGVXxVrA==",
529
+ "cpu": [
530
+ "arm"
531
+ ],
532
+ "license": "LGPL-3.0-or-later",
533
+ "optional": true,
534
+ "os": [
535
+ "linux"
536
+ ],
537
+ "funding": {
538
+ "url": "https://opencollective.com/libvips"
539
+ }
540
+ },
541
+ "node_modules/@img/sharp-libvips-linux-arm64": {
542
+ "version": "1.1.0",
543
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.1.0.tgz",
544
+ "integrity": "sha512-IVfGJa7gjChDET1dK9SekxFFdflarnUB8PwW8aGwEoF3oAsSDuNUTYS+SKDOyOJxQyDC1aPFMuRYLoDInyV9Ew==",
545
+ "cpu": [
546
+ "arm64"
547
+ ],
548
+ "license": "LGPL-3.0-or-later",
549
+ "optional": true,
550
+ "os": [
551
+ "linux"
552
+ ],
553
+ "funding": {
554
+ "url": "https://opencollective.com/libvips"
555
+ }
556
+ },
557
+ "node_modules/@img/sharp-libvips-linux-ppc64": {
558
+ "version": "1.1.0",
559
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.1.0.tgz",
560
+ "integrity": "sha512-tiXxFZFbhnkWE2LA8oQj7KYR+bWBkiV2nilRldT7bqoEZ4HiDOcePr9wVDAZPi/Id5fT1oY9iGnDq20cwUz8lQ==",
561
+ "cpu": [
562
+ "ppc64"
563
+ ],
564
+ "license": "LGPL-3.0-or-later",
565
+ "optional": true,
566
+ "os": [
567
+ "linux"
568
+ ],
569
+ "funding": {
570
+ "url": "https://opencollective.com/libvips"
571
+ }
572
+ },
573
+ "node_modules/@img/sharp-libvips-linux-s390x": {
574
+ "version": "1.1.0",
575
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.1.0.tgz",
576
+ "integrity": "sha512-xukSwvhguw7COyzvmjydRb3x/09+21HykyapcZchiCUkTThEQEOMtBj9UhkaBRLuBrgLFzQ2wbxdeCCJW/jgJA==",
577
+ "cpu": [
578
+ "s390x"
579
+ ],
580
+ "license": "LGPL-3.0-or-later",
581
+ "optional": true,
582
+ "os": [
583
+ "linux"
584
+ ],
585
+ "funding": {
586
+ "url": "https://opencollective.com/libvips"
587
+ }
588
+ },
589
+ "node_modules/@img/sharp-libvips-linux-x64": {
590
+ "version": "1.1.0",
591
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.1.0.tgz",
592
+ "integrity": "sha512-yRj2+reB8iMg9W5sULM3S74jVS7zqSzHG3Ol/twnAAkAhnGQnpjj6e4ayUz7V+FpKypwgs82xbRdYtchTTUB+Q==",
593
+ "cpu": [
594
+ "x64"
595
+ ],
596
+ "license": "LGPL-3.0-or-later",
597
+ "optional": true,
598
+ "os": [
599
+ "linux"
600
+ ],
601
+ "funding": {
602
+ "url": "https://opencollective.com/libvips"
603
+ }
604
+ },
605
+ "node_modules/@img/sharp-libvips-linuxmusl-arm64": {
606
+ "version": "1.1.0",
607
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.1.0.tgz",
608
+ "integrity": "sha512-jYZdG+whg0MDK+q2COKbYidaqW/WTz0cc1E+tMAusiDygrM4ypmSCjOJPmFTvHHJ8j/6cAGyeDWZOsK06tP33w==",
609
+ "cpu": [
610
+ "arm64"
611
+ ],
612
+ "license": "LGPL-3.0-or-later",
613
+ "optional": true,
614
+ "os": [
615
+ "linux"
616
+ ],
617
+ "funding": {
618
+ "url": "https://opencollective.com/libvips"
619
+ }
620
+ },
621
+ "node_modules/@img/sharp-libvips-linuxmusl-x64": {
622
+ "version": "1.1.0",
623
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.1.0.tgz",
624
+ "integrity": "sha512-wK7SBdwrAiycjXdkPnGCPLjYb9lD4l6Ze2gSdAGVZrEL05AOUJESWU2lhlC+Ffn5/G+VKuSm6zzbQSzFX/P65A==",
625
+ "cpu": [
626
+ "x64"
627
+ ],
628
+ "license": "LGPL-3.0-or-later",
629
+ "optional": true,
630
+ "os": [
631
+ "linux"
632
+ ],
633
+ "funding": {
634
+ "url": "https://opencollective.com/libvips"
635
+ }
636
+ },
637
+ "node_modules/@img/sharp-linux-arm": {
638
+ "version": "0.34.1",
639
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.1.tgz",
640
+ "integrity": "sha512-anKiszvACti2sGy9CirTlNyk7BjjZPiML1jt2ZkTdcvpLU1YH6CXwRAZCA2UmRXnhiIftXQ7+Oh62Ji25W72jA==",
641
+ "cpu": [
642
+ "arm"
643
+ ],
644
+ "license": "Apache-2.0",
645
+ "optional": true,
646
+ "os": [
647
+ "linux"
648
+ ],
649
+ "engines": {
650
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
651
+ },
652
+ "funding": {
653
+ "url": "https://opencollective.com/libvips"
654
+ },
655
+ "optionalDependencies": {
656
+ "@img/sharp-libvips-linux-arm": "1.1.0"
657
+ }
658
+ },
659
+ "node_modules/@img/sharp-linux-arm64": {
660
+ "version": "0.34.1",
661
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.1.tgz",
662
+ "integrity": "sha512-kX2c+vbvaXC6vly1RDf/IWNXxrlxLNpBVWkdpRq5Ka7OOKj6nr66etKy2IENf6FtOgklkg9ZdGpEu9kwdlcwOQ==",
663
+ "cpu": [
664
+ "arm64"
665
+ ],
666
+ "license": "Apache-2.0",
667
+ "optional": true,
668
+ "os": [
669
+ "linux"
670
+ ],
671
+ "engines": {
672
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
673
+ },
674
+ "funding": {
675
+ "url": "https://opencollective.com/libvips"
676
+ },
677
+ "optionalDependencies": {
678
+ "@img/sharp-libvips-linux-arm64": "1.1.0"
679
+ }
680
+ },
681
+ "node_modules/@img/sharp-linux-s390x": {
682
+ "version": "0.34.1",
683
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.1.tgz",
684
+ "integrity": "sha512-7s0KX2tI9mZI2buRipKIw2X1ufdTeaRgwmRabt5bi9chYfhur+/C1OXg3TKg/eag1W+6CCWLVmSauV1owmRPxA==",
685
+ "cpu": [
686
+ "s390x"
687
+ ],
688
+ "license": "Apache-2.0",
689
+ "optional": true,
690
+ "os": [
691
+ "linux"
692
+ ],
693
+ "engines": {
694
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
695
+ },
696
+ "funding": {
697
+ "url": "https://opencollective.com/libvips"
698
+ },
699
+ "optionalDependencies": {
700
+ "@img/sharp-libvips-linux-s390x": "1.1.0"
701
+ }
702
+ },
703
+ "node_modules/@img/sharp-linux-x64": {
704
+ "version": "0.34.1",
705
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.1.tgz",
706
+ "integrity": "sha512-wExv7SH9nmoBW3Wr2gvQopX1k8q2g5V5Iag8Zk6AVENsjwd+3adjwxtp3Dcu2QhOXr8W9NusBU6XcQUohBZ5MA==",
707
+ "cpu": [
708
+ "x64"
709
+ ],
710
+ "license": "Apache-2.0",
711
+ "optional": true,
712
+ "os": [
713
+ "linux"
714
+ ],
715
+ "engines": {
716
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
717
+ },
718
+ "funding": {
719
+ "url": "https://opencollective.com/libvips"
720
+ },
721
+ "optionalDependencies": {
722
+ "@img/sharp-libvips-linux-x64": "1.1.0"
723
+ }
724
+ },
725
+ "node_modules/@img/sharp-linuxmusl-arm64": {
726
+ "version": "0.34.1",
727
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.1.tgz",
728
+ "integrity": "sha512-DfvyxzHxw4WGdPiTF0SOHnm11Xv4aQexvqhRDAoD00MzHekAj9a/jADXeXYCDFH/DzYruwHbXU7uz+H+nWmSOQ==",
729
+ "cpu": [
730
+ "arm64"
731
+ ],
732
+ "license": "Apache-2.0",
733
+ "optional": true,
734
+ "os": [
735
+ "linux"
736
+ ],
737
+ "engines": {
738
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
739
+ },
740
+ "funding": {
741
+ "url": "https://opencollective.com/libvips"
742
+ },
743
+ "optionalDependencies": {
744
+ "@img/sharp-libvips-linuxmusl-arm64": "1.1.0"
745
+ }
746
+ },
747
+ "node_modules/@img/sharp-linuxmusl-x64": {
748
+ "version": "0.34.1",
749
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.1.tgz",
750
+ "integrity": "sha512-pax/kTR407vNb9qaSIiWVnQplPcGU8LRIJpDT5o8PdAx5aAA7AS3X9PS8Isw1/WfqgQorPotjrZL3Pqh6C5EBg==",
751
+ "cpu": [
752
+ "x64"
753
+ ],
754
+ "license": "Apache-2.0",
755
+ "optional": true,
756
+ "os": [
757
+ "linux"
758
+ ],
759
+ "engines": {
760
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
761
+ },
762
+ "funding": {
763
+ "url": "https://opencollective.com/libvips"
764
+ },
765
+ "optionalDependencies": {
766
+ "@img/sharp-libvips-linuxmusl-x64": "1.1.0"
767
+ }
768
+ },
769
+ "node_modules/@img/sharp-wasm32": {
770
+ "version": "0.34.1",
771
+ "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.1.tgz",
772
+ "integrity": "sha512-YDybQnYrLQfEpzGOQe7OKcyLUCML4YOXl428gOOzBgN6Gw0rv8dpsJ7PqTHxBnXnwXr8S1mYFSLSa727tpz0xg==",
773
+ "cpu": [
774
+ "wasm32"
775
+ ],
776
+ "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT",
777
+ "optional": true,
778
+ "dependencies": {
779
+ "@emnapi/runtime": "^1.4.0"
780
+ },
781
+ "engines": {
782
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
783
+ },
784
+ "funding": {
785
+ "url": "https://opencollective.com/libvips"
786
+ }
787
+ },
788
+ "node_modules/@img/sharp-win32-ia32": {
789
+ "version": "0.34.1",
790
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.1.tgz",
791
+ "integrity": "sha512-WKf/NAZITnonBf3U1LfdjoMgNO5JYRSlhovhRhMxXVdvWYveM4kM3L8m35onYIdh75cOMCo1BexgVQcCDzyoWw==",
792
+ "cpu": [
793
+ "ia32"
794
+ ],
795
+ "license": "Apache-2.0 AND LGPL-3.0-or-later",
796
+ "optional": true,
797
+ "os": [
798
+ "win32"
799
+ ],
800
+ "engines": {
801
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
802
+ },
803
+ "funding": {
804
+ "url": "https://opencollective.com/libvips"
805
+ }
806
+ },
807
+ "node_modules/@img/sharp-win32-x64": {
808
+ "version": "0.34.1",
809
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.1.tgz",
810
+ "integrity": "sha512-hw1iIAHpNE8q3uMIRCgGOeDoz9KtFNarFLQclLxr/LK1VBkj8nby18RjFvr6aP7USRYAjTZW6yisnBWMX571Tw==",
811
+ "cpu": [
812
+ "x64"
813
+ ],
814
+ "license": "Apache-2.0 AND LGPL-3.0-or-later",
815
+ "optional": true,
816
+ "os": [
817
+ "win32"
818
+ ],
819
+ "engines": {
820
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
821
+ },
822
+ "funding": {
823
+ "url": "https://opencollective.com/libvips"
824
+ }
825
+ },
826
+ "node_modules/@isaacs/fs-minipass": {
827
+ "version": "4.0.1",
828
+ "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz",
829
+ "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==",
830
+ "license": "ISC",
831
+ "dependencies": {
832
+ "minipass": "^7.0.4"
833
+ },
834
+ "engines": {
835
+ "node": ">=18.0.0"
836
+ }
837
+ },
838
+ "node_modules/@protobufjs/aspromise": {
839
+ "version": "1.1.2",
840
+ "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
841
+ "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==",
842
+ "license": "BSD-3-Clause"
843
+ },
844
+ "node_modules/@protobufjs/base64": {
845
+ "version": "1.1.2",
846
+ "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
847
+ "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==",
848
+ "license": "BSD-3-Clause"
849
+ },
850
+ "node_modules/@protobufjs/codegen": {
851
+ "version": "2.0.4",
852
+ "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz",
853
+ "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==",
854
+ "license": "BSD-3-Clause"
855
+ },
856
+ "node_modules/@protobufjs/eventemitter": {
857
+ "version": "1.1.0",
858
+ "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz",
859
+ "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==",
860
+ "license": "BSD-3-Clause"
861
+ },
862
+ "node_modules/@protobufjs/fetch": {
863
+ "version": "1.1.0",
864
+ "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz",
865
+ "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==",
866
+ "license": "BSD-3-Clause",
867
+ "dependencies": {
868
+ "@protobufjs/aspromise": "^1.1.1",
869
+ "@protobufjs/inquire": "^1.1.0"
870
+ }
871
+ },
872
+ "node_modules/@protobufjs/float": {
873
+ "version": "1.0.2",
874
+ "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
875
+ "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==",
876
+ "license": "BSD-3-Clause"
877
+ },
878
+ "node_modules/@protobufjs/inquire": {
879
+ "version": "1.1.0",
880
+ "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz",
881
+ "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==",
882
+ "license": "BSD-3-Clause"
883
+ },
884
+ "node_modules/@protobufjs/path": {
885
+ "version": "1.1.2",
886
+ "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
887
+ "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==",
888
+ "license": "BSD-3-Clause"
889
+ },
890
+ "node_modules/@protobufjs/pool": {
891
+ "version": "1.1.0",
892
+ "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
893
+ "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==",
894
+ "license": "BSD-3-Clause"
895
+ },
896
+ "node_modules/@protobufjs/utf8": {
897
+ "version": "1.1.0",
898
+ "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
899
+ "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==",
900
+ "license": "BSD-3-Clause"
901
+ },
902
+ "node_modules/@rollup/rollup-android-arm-eabi": {
903
+ "version": "4.50.2",
904
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.50.2.tgz",
905
+ "integrity": "sha512-uLN8NAiFVIRKX9ZQha8wy6UUs06UNSZ32xj6giK/rmMXAgKahwExvK6SsmgU5/brh4w/nSgj8e0k3c1HBQpa0A==",
906
+ "cpu": [
907
+ "arm"
908
+ ],
909
+ "dev": true,
910
+ "license": "MIT",
911
+ "optional": true,
912
+ "os": [
913
+ "android"
914
+ ]
915
+ },
916
+ "node_modules/@rollup/rollup-android-arm64": {
917
+ "version": "4.50.2",
918
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.50.2.tgz",
919
+ "integrity": "sha512-oEouqQk2/zxxj22PNcGSskya+3kV0ZKH+nQxuCCOGJ4oTXBdNTbv+f/E3c74cNLeMO1S5wVWacSws10TTSB77g==",
920
+ "cpu": [
921
+ "arm64"
922
+ ],
923
+ "dev": true,
924
+ "license": "MIT",
925
+ "optional": true,
926
+ "os": [
927
+ "android"
928
+ ]
929
+ },
930
+ "node_modules/@rollup/rollup-darwin-arm64": {
931
+ "version": "4.50.2",
932
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.50.2.tgz",
933
+ "integrity": "sha512-OZuTVTpj3CDSIxmPgGH8en/XtirV5nfljHZ3wrNwvgkT5DQLhIKAeuFSiwtbMto6oVexV0k1F1zqURPKf5rI1Q==",
934
+ "cpu": [
935
+ "arm64"
936
+ ],
937
+ "dev": true,
938
+ "license": "MIT",
939
+ "optional": true,
940
+ "os": [
941
+ "darwin"
942
+ ]
943
+ },
944
+ "node_modules/@rollup/rollup-darwin-x64": {
945
+ "version": "4.50.2",
946
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.50.2.tgz",
947
+ "integrity": "sha512-Wa/Wn8RFkIkr1vy1k1PB//VYhLnlnn5eaJkfTQKivirOvzu5uVd2It01ukeQstMursuz7S1bU+8WW+1UPXpa8A==",
948
+ "cpu": [
949
+ "x64"
950
+ ],
951
+ "dev": true,
952
+ "license": "MIT",
953
+ "optional": true,
954
+ "os": [
955
+ "darwin"
956
+ ]
957
+ },
958
+ "node_modules/@rollup/rollup-freebsd-arm64": {
959
+ "version": "4.50.2",
960
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.50.2.tgz",
961
+ "integrity": "sha512-QkzxvH3kYN9J1w7D1A+yIMdI1pPekD+pWx7G5rXgnIlQ1TVYVC6hLl7SOV9pi5q9uIDF9AuIGkuzcbF7+fAhow==",
962
+ "cpu": [
963
+ "arm64"
964
+ ],
965
+ "dev": true,
966
+ "license": "MIT",
967
+ "optional": true,
968
+ "os": [
969
+ "freebsd"
970
+ ]
971
+ },
972
+ "node_modules/@rollup/rollup-freebsd-x64": {
973
+ "version": "4.50.2",
974
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.50.2.tgz",
975
+ "integrity": "sha512-dkYXB0c2XAS3a3jmyDkX4Jk0m7gWLFzq1C3qUnJJ38AyxIF5G/dyS4N9B30nvFseCfgtCEdbYFhk0ChoCGxPog==",
976
+ "cpu": [
977
+ "x64"
978
+ ],
979
+ "dev": true,
980
+ "license": "MIT",
981
+ "optional": true,
982
+ "os": [
983
+ "freebsd"
984
+ ]
985
+ },
986
+ "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
987
+ "version": "4.50.2",
988
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.50.2.tgz",
989
+ "integrity": "sha512-9VlPY/BN3AgbukfVHAB8zNFWB/lKEuvzRo1NKev0Po8sYFKx0i+AQlCYftgEjcL43F2h9Ui1ZSdVBc4En/sP2w==",
990
+ "cpu": [
991
+ "arm"
992
+ ],
993
+ "dev": true,
994
+ "license": "MIT",
995
+ "optional": true,
996
+ "os": [
997
+ "linux"
998
+ ]
999
+ },
1000
+ "node_modules/@rollup/rollup-linux-arm-musleabihf": {
1001
+ "version": "4.50.2",
1002
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.50.2.tgz",
1003
+ "integrity": "sha512-+GdKWOvsifaYNlIVf07QYan1J5F141+vGm5/Y8b9uCZnG/nxoGqgCmR24mv0koIWWuqvFYnbURRqw1lv7IBINw==",
1004
+ "cpu": [
1005
+ "arm"
1006
+ ],
1007
+ "dev": true,
1008
+ "license": "MIT",
1009
+ "optional": true,
1010
+ "os": [
1011
+ "linux"
1012
+ ]
1013
+ },
1014
+ "node_modules/@rollup/rollup-linux-arm64-gnu": {
1015
+ "version": "4.50.2",
1016
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.50.2.tgz",
1017
+ "integrity": "sha512-df0Eou14ojtUdLQdPFnymEQteENwSJAdLf5KCDrmZNsy1c3YaCNaJvYsEUHnrg+/DLBH612/R0xd3dD03uz2dg==",
1018
+ "cpu": [
1019
+ "arm64"
1020
+ ],
1021
+ "dev": true,
1022
+ "license": "MIT",
1023
+ "optional": true,
1024
+ "os": [
1025
+ "linux"
1026
+ ]
1027
+ },
1028
+ "node_modules/@rollup/rollup-linux-arm64-musl": {
1029
+ "version": "4.50.2",
1030
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.50.2.tgz",
1031
+ "integrity": "sha512-iPeouV0UIDtz8j1YFR4OJ/zf7evjauqv7jQ/EFs0ClIyL+by++hiaDAfFipjOgyz6y6xbDvJuiU4HwpVMpRFDQ==",
1032
+ "cpu": [
1033
+ "arm64"
1034
+ ],
1035
+ "dev": true,
1036
+ "license": "MIT",
1037
+ "optional": true,
1038
+ "os": [
1039
+ "linux"
1040
+ ]
1041
+ },
1042
+ "node_modules/@rollup/rollup-linux-loong64-gnu": {
1043
+ "version": "4.50.2",
1044
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.50.2.tgz",
1045
+ "integrity": "sha512-OL6KaNvBopLlj5fTa5D5bau4W82f+1TyTZRr2BdnfsrnQnmdxh4okMxR2DcDkJuh4KeoQZVuvHvzuD/lyLn2Kw==",
1046
+ "cpu": [
1047
+ "loong64"
1048
+ ],
1049
+ "dev": true,
1050
+ "license": "MIT",
1051
+ "optional": true,
1052
+ "os": [
1053
+ "linux"
1054
+ ]
1055
+ },
1056
+ "node_modules/@rollup/rollup-linux-ppc64-gnu": {
1057
+ "version": "4.50.2",
1058
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.50.2.tgz",
1059
+ "integrity": "sha512-I21VJl1w6z/K5OTRl6aS9DDsqezEZ/yKpbqlvfHbW0CEF5IL8ATBMuUx6/mp683rKTK8thjs/0BaNrZLXetLag==",
1060
+ "cpu": [
1061
+ "ppc64"
1062
+ ],
1063
+ "dev": true,
1064
+ "license": "MIT",
1065
+ "optional": true,
1066
+ "os": [
1067
+ "linux"
1068
+ ]
1069
+ },
1070
+ "node_modules/@rollup/rollup-linux-riscv64-gnu": {
1071
+ "version": "4.50.2",
1072
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.50.2.tgz",
1073
+ "integrity": "sha512-Hq6aQJT/qFFHrYMjS20nV+9SKrXL2lvFBENZoKfoTH2kKDOJqff5OSJr4x72ZaG/uUn+XmBnGhfr4lwMRrmqCQ==",
1074
+ "cpu": [
1075
+ "riscv64"
1076
+ ],
1077
+ "dev": true,
1078
+ "license": "MIT",
1079
+ "optional": true,
1080
+ "os": [
1081
+ "linux"
1082
+ ]
1083
+ },
1084
+ "node_modules/@rollup/rollup-linux-riscv64-musl": {
1085
+ "version": "4.50.2",
1086
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.50.2.tgz",
1087
+ "integrity": "sha512-82rBSEXRv5qtKyr0xZ/YMF531oj2AIpLZkeNYxmKNN6I2sVE9PGegN99tYDLK2fYHJITL1P2Lgb4ZXnv0PjQvw==",
1088
+ "cpu": [
1089
+ "riscv64"
1090
+ ],
1091
+ "dev": true,
1092
+ "license": "MIT",
1093
+ "optional": true,
1094
+ "os": [
1095
+ "linux"
1096
+ ]
1097
+ },
1098
+ "node_modules/@rollup/rollup-linux-s390x-gnu": {
1099
+ "version": "4.50.2",
1100
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.50.2.tgz",
1101
+ "integrity": "sha512-4Q3S3Hy7pC6uaRo9gtXUTJ+EKo9AKs3BXKc2jYypEcMQ49gDPFU2P1ariX9SEtBzE5egIX6fSUmbmGazwBVF9w==",
1102
+ "cpu": [
1103
+ "s390x"
1104
+ ],
1105
+ "dev": true,
1106
+ "license": "MIT",
1107
+ "optional": true,
1108
+ "os": [
1109
+ "linux"
1110
+ ]
1111
+ },
1112
+ "node_modules/@rollup/rollup-linux-x64-gnu": {
1113
+ "version": "4.50.2",
1114
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.50.2.tgz",
1115
+ "integrity": "sha512-9Jie/At6qk70dNIcopcL4p+1UirusEtznpNtcq/u/C5cC4HBX7qSGsYIcG6bdxj15EYWhHiu02YvmdPzylIZlA==",
1116
+ "cpu": [
1117
+ "x64"
1118
+ ],
1119
+ "dev": true,
1120
+ "license": "MIT",
1121
+ "optional": true,
1122
+ "os": [
1123
+ "linux"
1124
+ ]
1125
+ },
1126
+ "node_modules/@rollup/rollup-linux-x64-musl": {
1127
+ "version": "4.50.2",
1128
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.50.2.tgz",
1129
+ "integrity": "sha512-HPNJwxPL3EmhzeAnsWQCM3DcoqOz3/IC6de9rWfGR8ZCuEHETi9km66bH/wG3YH0V3nyzyFEGUZeL5PKyy4xvw==",
1130
+ "cpu": [
1131
+ "x64"
1132
+ ],
1133
+ "dev": true,
1134
+ "license": "MIT",
1135
+ "optional": true,
1136
+ "os": [
1137
+ "linux"
1138
+ ]
1139
+ },
1140
+ "node_modules/@rollup/rollup-openharmony-arm64": {
1141
+ "version": "4.50.2",
1142
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.50.2.tgz",
1143
+ "integrity": "sha512-nMKvq6FRHSzYfKLHZ+cChowlEkR2lj/V0jYj9JnGUVPL2/mIeFGmVM2mLaFeNa5Jev7W7TovXqXIG2d39y1KYA==",
1144
+ "cpu": [
1145
+ "arm64"
1146
+ ],
1147
+ "dev": true,
1148
+ "license": "MIT",
1149
+ "optional": true,
1150
+ "os": [
1151
+ "openharmony"
1152
+ ]
1153
+ },
1154
+ "node_modules/@rollup/rollup-win32-arm64-msvc": {
1155
+ "version": "4.50.2",
1156
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.50.2.tgz",
1157
+ "integrity": "sha512-eFUvvnTYEKeTyHEijQKz81bLrUQOXKZqECeiWH6tb8eXXbZk+CXSG2aFrig2BQ/pjiVRj36zysjgILkqarS2YA==",
1158
+ "cpu": [
1159
+ "arm64"
1160
+ ],
1161
+ "dev": true,
1162
+ "license": "MIT",
1163
+ "optional": true,
1164
+ "os": [
1165
+ "win32"
1166
+ ]
1167
+ },
1168
+ "node_modules/@rollup/rollup-win32-ia32-msvc": {
1169
+ "version": "4.50.2",
1170
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.50.2.tgz",
1171
+ "integrity": "sha512-cBaWmXqyfRhH8zmUxK3d3sAhEWLrtMjWBRwdMMHJIXSjvjLKvv49adxiEz+FJ8AP90apSDDBx2Tyd/WylV6ikA==",
1172
+ "cpu": [
1173
+ "ia32"
1174
+ ],
1175
+ "dev": true,
1176
+ "license": "MIT",
1177
+ "optional": true,
1178
+ "os": [
1179
+ "win32"
1180
+ ]
1181
+ },
1182
+ "node_modules/@rollup/rollup-win32-x64-msvc": {
1183
+ "version": "4.50.2",
1184
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.50.2.tgz",
1185
+ "integrity": "sha512-APwKy6YUhvZaEoHyM+9xqmTpviEI+9eL7LoCH+aLcvWYHJ663qG5zx7WzWZY+a9qkg5JtzcMyJ9z0WtQBMDmgA==",
1186
+ "cpu": [
1187
+ "x64"
1188
+ ],
1189
+ "dev": true,
1190
+ "license": "MIT",
1191
+ "optional": true,
1192
+ "os": [
1193
+ "win32"
1194
+ ]
1195
+ },
1196
+ "node_modules/@types/estree": {
1197
+ "version": "1.0.8",
1198
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz",
1199
+ "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==",
1200
+ "dev": true,
1201
+ "license": "MIT"
1202
+ },
1203
+ "node_modules/@types/node": {
1204
+ "version": "24.5.2",
1205
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-24.5.2.tgz",
1206
+ "integrity": "sha512-FYxk1I7wPv3K2XBaoyH2cTnocQEu8AOZ60hPbsyukMPLv5/5qr7V1i8PLHdl6Zf87I+xZXFvPCXYjiTFq+YSDQ==",
1207
+ "license": "MIT",
1208
+ "dependencies": {
1209
+ "undici-types": "~7.12.0"
1210
+ }
1211
+ },
1212
+ "node_modules/boolean": {
1213
+ "version": "3.2.0",
1214
+ "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz",
1215
+ "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==",
1216
+ "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.",
1217
+ "license": "MIT"
1218
+ },
1219
+ "node_modules/chownr": {
1220
+ "version": "3.0.0",
1221
+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz",
1222
+ "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==",
1223
+ "license": "BlueOak-1.0.0",
1224
+ "engines": {
1225
+ "node": ">=18"
1226
+ }
1227
+ },
1228
+ "node_modules/color": {
1229
+ "version": "4.2.3",
1230
+ "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz",
1231
+ "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==",
1232
+ "license": "MIT",
1233
+ "dependencies": {
1234
+ "color-convert": "^2.0.1",
1235
+ "color-string": "^1.9.0"
1236
+ },
1237
+ "engines": {
1238
+ "node": ">=12.5.0"
1239
+ }
1240
+ },
1241
+ "node_modules/color-convert": {
1242
+ "version": "2.0.1",
1243
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
1244
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
1245
+ "license": "MIT",
1246
+ "dependencies": {
1247
+ "color-name": "~1.1.4"
1248
+ },
1249
+ "engines": {
1250
+ "node": ">=7.0.0"
1251
+ }
1252
+ },
1253
+ "node_modules/color-name": {
1254
+ "version": "1.1.4",
1255
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1256
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
1257
+ "license": "MIT"
1258
+ },
1259
+ "node_modules/color-string": {
1260
+ "version": "1.9.1",
1261
+ "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz",
1262
+ "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==",
1263
+ "license": "MIT",
1264
+ "dependencies": {
1265
+ "color-name": "^1.0.0",
1266
+ "simple-swizzle": "^0.2.2"
1267
+ }
1268
+ },
1269
+ "node_modules/define-data-property": {
1270
+ "version": "1.1.4",
1271
+ "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
1272
+ "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
1273
+ "license": "MIT",
1274
+ "dependencies": {
1275
+ "es-define-property": "^1.0.0",
1276
+ "es-errors": "^1.3.0",
1277
+ "gopd": "^1.0.1"
1278
+ },
1279
+ "engines": {
1280
+ "node": ">= 0.4"
1281
+ },
1282
+ "funding": {
1283
+ "url": "https://github.com/sponsors/ljharb"
1284
+ }
1285
+ },
1286
+ "node_modules/define-properties": {
1287
+ "version": "1.2.1",
1288
+ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
1289
+ "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
1290
+ "license": "MIT",
1291
+ "dependencies": {
1292
+ "define-data-property": "^1.0.1",
1293
+ "has-property-descriptors": "^1.0.0",
1294
+ "object-keys": "^1.1.1"
1295
+ },
1296
+ "engines": {
1297
+ "node": ">= 0.4"
1298
+ },
1299
+ "funding": {
1300
+ "url": "https://github.com/sponsors/ljharb"
1301
+ }
1302
+ },
1303
+ "node_modules/detect-libc": {
1304
+ "version": "2.0.3",
1305
+ "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz",
1306
+ "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==",
1307
+ "license": "Apache-2.0",
1308
+ "engines": {
1309
+ "node": ">=8"
1310
+ }
1311
+ },
1312
+ "node_modules/detect-node": {
1313
+ "version": "2.1.0",
1314
+ "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz",
1315
+ "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==",
1316
+ "license": "MIT"
1317
+ },
1318
+ "node_modules/es-define-property": {
1319
+ "version": "1.0.1",
1320
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
1321
+ "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
1322
+ "license": "MIT",
1323
+ "engines": {
1324
+ "node": ">= 0.4"
1325
+ }
1326
+ },
1327
+ "node_modules/es-errors": {
1328
+ "version": "1.3.0",
1329
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
1330
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
1331
+ "license": "MIT",
1332
+ "engines": {
1333
+ "node": ">= 0.4"
1334
+ }
1335
+ },
1336
+ "node_modules/es6-error": {
1337
+ "version": "4.1.1",
1338
+ "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz",
1339
+ "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==",
1340
+ "license": "MIT"
1341
+ },
1342
+ "node_modules/esbuild": {
1343
+ "version": "0.25.0",
1344
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.0.tgz",
1345
+ "integrity": "sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==",
1346
+ "dev": true,
1347
+ "hasInstallScript": true,
1348
+ "bin": {
1349
+ "esbuild": "bin/esbuild"
1350
+ },
1351
+ "engines": {
1352
+ "node": ">=18"
1353
+ },
1354
+ "optionalDependencies": {
1355
+ "@esbuild/aix-ppc64": "0.25.0",
1356
+ "@esbuild/android-arm": "0.25.0",
1357
+ "@esbuild/android-arm64": "0.25.0",
1358
+ "@esbuild/android-x64": "0.25.0",
1359
+ "@esbuild/darwin-arm64": "0.25.0",
1360
+ "@esbuild/darwin-x64": "0.25.0",
1361
+ "@esbuild/freebsd-arm64": "0.25.0",
1362
+ "@esbuild/freebsd-x64": "0.25.0",
1363
+ "@esbuild/linux-arm": "0.25.0",
1364
+ "@esbuild/linux-arm64": "0.25.0",
1365
+ "@esbuild/linux-ia32": "0.25.0",
1366
+ "@esbuild/linux-loong64": "0.25.0",
1367
+ "@esbuild/linux-mips64el": "0.25.0",
1368
+ "@esbuild/linux-ppc64": "0.25.0",
1369
+ "@esbuild/linux-riscv64": "0.25.0",
1370
+ "@esbuild/linux-s390x": "0.25.0",
1371
+ "@esbuild/linux-x64": "0.25.0",
1372
+ "@esbuild/netbsd-arm64": "0.25.0",
1373
+ "@esbuild/netbsd-x64": "0.25.0",
1374
+ "@esbuild/openbsd-arm64": "0.25.0",
1375
+ "@esbuild/openbsd-x64": "0.25.0",
1376
+ "@esbuild/sunos-x64": "0.25.0",
1377
+ "@esbuild/win32-arm64": "0.25.0",
1378
+ "@esbuild/win32-ia32": "0.25.0",
1379
+ "@esbuild/win32-x64": "0.25.0"
1380
+ }
1381
+ },
1382
+ "node_modules/escape-string-regexp": {
1383
+ "version": "4.0.0",
1384
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
1385
+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
1386
+ "license": "MIT",
1387
+ "engines": {
1388
+ "node": ">=10"
1389
+ },
1390
+ "funding": {
1391
+ "url": "https://github.com/sponsors/sindresorhus"
1392
+ }
1393
+ },
1394
+ "node_modules/fdir": {
1395
+ "version": "6.5.0",
1396
+ "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz",
1397
+ "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==",
1398
+ "dev": true,
1399
+ "license": "MIT",
1400
+ "engines": {
1401
+ "node": ">=12.0.0"
1402
+ },
1403
+ "peerDependencies": {
1404
+ "picomatch": "^3 || ^4"
1405
+ },
1406
+ "peerDependenciesMeta": {
1407
+ "picomatch": {
1408
+ "optional": true
1409
+ }
1410
+ }
1411
+ },
1412
+ "node_modules/flatbuffers": {
1413
+ "version": "25.2.10",
1414
+ "resolved": "https://registry.npmjs.org/flatbuffers/-/flatbuffers-25.2.10.tgz",
1415
+ "integrity": "sha512-7JlN9ZvLDG1McO3kbX0k4v+SUAg48L1rIwEvN6ZQl/eCtgJz9UylTMzE9wrmYrcorgxm3CX/3T/w5VAub99UUw==",
1416
+ "license": "Apache-2.0"
1417
+ },
1418
+ "node_modules/fsevents": {
1419
+ "version": "2.3.3",
1420
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
1421
+ "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
1422
+ "dev": true,
1423
+ "hasInstallScript": true,
1424
+ "license": "MIT",
1425
+ "optional": true,
1426
+ "os": [
1427
+ "darwin"
1428
+ ],
1429
+ "engines": {
1430
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
1431
+ }
1432
+ },
1433
+ "node_modules/global-agent": {
1434
+ "version": "3.0.0",
1435
+ "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz",
1436
+ "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==",
1437
+ "license": "BSD-3-Clause",
1438
+ "dependencies": {
1439
+ "boolean": "^3.0.1",
1440
+ "es6-error": "^4.1.1",
1441
+ "matcher": "^3.0.0",
1442
+ "roarr": "^2.15.3",
1443
+ "semver": "^7.3.2",
1444
+ "serialize-error": "^7.0.1"
1445
+ },
1446
+ "engines": {
1447
+ "node": ">=10.0"
1448
+ }
1449
+ },
1450
+ "node_modules/globalthis": {
1451
+ "version": "1.0.4",
1452
+ "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz",
1453
+ "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==",
1454
+ "license": "MIT",
1455
+ "dependencies": {
1456
+ "define-properties": "^1.2.1",
1457
+ "gopd": "^1.0.1"
1458
+ },
1459
+ "engines": {
1460
+ "node": ">= 0.4"
1461
+ },
1462
+ "funding": {
1463
+ "url": "https://github.com/sponsors/ljharb"
1464
+ }
1465
+ },
1466
+ "node_modules/gopd": {
1467
+ "version": "1.2.0",
1468
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
1469
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
1470
+ "license": "MIT",
1471
+ "engines": {
1472
+ "node": ">= 0.4"
1473
+ },
1474
+ "funding": {
1475
+ "url": "https://github.com/sponsors/ljharb"
1476
+ }
1477
+ },
1478
+ "node_modules/guid-typescript": {
1479
+ "version": "1.0.9",
1480
+ "resolved": "https://registry.npmjs.org/guid-typescript/-/guid-typescript-1.0.9.tgz",
1481
+ "integrity": "sha512-Y8T4vYhEfwJOTbouREvG+3XDsjr8E3kIr7uf+JZ0BYloFsttiHU0WfvANVsR7TxNUJa/WpCnw/Ino/p+DeBhBQ==",
1482
+ "license": "ISC"
1483
+ },
1484
+ "node_modules/has-property-descriptors": {
1485
+ "version": "1.0.2",
1486
+ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
1487
+ "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
1488
+ "license": "MIT",
1489
+ "dependencies": {
1490
+ "es-define-property": "^1.0.0"
1491
+ },
1492
+ "funding": {
1493
+ "url": "https://github.com/sponsors/ljharb"
1494
+ }
1495
+ },
1496
+ "node_modules/is-arrayish": {
1497
+ "version": "0.3.2",
1498
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz",
1499
+ "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==",
1500
+ "license": "MIT"
1501
+ },
1502
+ "node_modules/json-stringify-safe": {
1503
+ "version": "5.0.1",
1504
+ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
1505
+ "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==",
1506
+ "license": "ISC"
1507
+ },
1508
+ "node_modules/long": {
1509
+ "version": "5.3.1",
1510
+ "resolved": "https://registry.npmjs.org/long/-/long-5.3.1.tgz",
1511
+ "integrity": "sha512-ka87Jz3gcx/I7Hal94xaN2tZEOPoUOEVftkQqZx2EeQRN7LGdfLlI3FvZ+7WDplm+vK2Urx9ULrvSowtdCieng==",
1512
+ "license": "Apache-2.0"
1513
+ },
1514
+ "node_modules/matcher": {
1515
+ "version": "3.0.0",
1516
+ "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz",
1517
+ "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==",
1518
+ "license": "MIT",
1519
+ "dependencies": {
1520
+ "escape-string-regexp": "^4.0.0"
1521
+ },
1522
+ "engines": {
1523
+ "node": ">=10"
1524
+ }
1525
+ },
1526
+ "node_modules/minipass": {
1527
+ "version": "7.1.2",
1528
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
1529
+ "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
1530
+ "license": "ISC",
1531
+ "engines": {
1532
+ "node": ">=16 || 14 >=14.17"
1533
+ }
1534
+ },
1535
+ "node_modules/minizlib": {
1536
+ "version": "3.0.2",
1537
+ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.2.tgz",
1538
+ "integrity": "sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA==",
1539
+ "license": "MIT",
1540
+ "dependencies": {
1541
+ "minipass": "^7.1.2"
1542
+ },
1543
+ "engines": {
1544
+ "node": ">= 18"
1545
+ }
1546
+ },
1547
+ "node_modules/mkdirp": {
1548
+ "version": "3.0.1",
1549
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz",
1550
+ "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==",
1551
+ "license": "MIT",
1552
+ "bin": {
1553
+ "mkdirp": "dist/cjs/src/bin.js"
1554
+ },
1555
+ "engines": {
1556
+ "node": ">=10"
1557
+ },
1558
+ "funding": {
1559
+ "url": "https://github.com/sponsors/isaacs"
1560
+ }
1561
+ },
1562
+ "node_modules/nanoid": {
1563
+ "version": "3.3.11",
1564
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
1565
+ "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
1566
+ "dev": true,
1567
+ "funding": [
1568
+ {
1569
+ "type": "github",
1570
+ "url": "https://github.com/sponsors/ai"
1571
+ }
1572
+ ],
1573
+ "license": "MIT",
1574
+ "bin": {
1575
+ "nanoid": "bin/nanoid.cjs"
1576
+ },
1577
+ "engines": {
1578
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
1579
+ }
1580
+ },
1581
+ "node_modules/object-keys": {
1582
+ "version": "1.1.1",
1583
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
1584
+ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
1585
+ "license": "MIT",
1586
+ "engines": {
1587
+ "node": ">= 0.4"
1588
+ }
1589
+ },
1590
+ "node_modules/onnxruntime-common": {
1591
+ "version": "1.21.0",
1592
+ "resolved": "https://registry.npmjs.org/onnxruntime-common/-/onnxruntime-common-1.21.0.tgz",
1593
+ "integrity": "sha512-Q632iLLrtCAVOTO65dh2+mNbQir/QNTVBG3h/QdZBpns7mZ0RYbLRBgGABPbpU9351AgYy7SJf1WaeVwMrBFPQ==",
1594
+ "license": "MIT"
1595
+ },
1596
+ "node_modules/onnxruntime-node": {
1597
+ "version": "1.21.0",
1598
+ "resolved": "https://registry.npmjs.org/onnxruntime-node/-/onnxruntime-node-1.21.0.tgz",
1599
+ "integrity": "sha512-NeaCX6WW2L8cRCSqy3bInlo5ojjQqu2fD3D+9W5qb5irwxhEyWKXeH2vZ8W9r6VxaMPUan+4/7NDwZMtouZxEw==",
1600
+ "hasInstallScript": true,
1601
+ "license": "MIT",
1602
+ "os": [
1603
+ "win32",
1604
+ "darwin",
1605
+ "linux"
1606
+ ],
1607
+ "dependencies": {
1608
+ "global-agent": "^3.0.0",
1609
+ "onnxruntime-common": "1.21.0",
1610
+ "tar": "^7.0.1"
1611
+ }
1612
+ },
1613
+ "node_modules/onnxruntime-web": {
1614
+ "version": "1.22.0-dev.20250409-89f8206ba4",
1615
+ "resolved": "https://registry.npmjs.org/onnxruntime-web/-/onnxruntime-web-1.22.0-dev.20250409-89f8206ba4.tgz",
1616
+ "integrity": "sha512-0uS76OPgH0hWCPrFKlL8kYVV7ckM7t/36HfbgoFw6Nd0CZVVbQC4PkrR8mBX8LtNUFZO25IQBqV2Hx2ho3FlbQ==",
1617
+ "license": "MIT",
1618
+ "dependencies": {
1619
+ "flatbuffers": "^25.1.24",
1620
+ "guid-typescript": "^1.0.9",
1621
+ "long": "^5.2.3",
1622
+ "onnxruntime-common": "1.22.0-dev.20250409-89f8206ba4",
1623
+ "platform": "^1.3.6",
1624
+ "protobufjs": "^7.2.4"
1625
+ }
1626
+ },
1627
+ "node_modules/onnxruntime-web/node_modules/onnxruntime-common": {
1628
+ "version": "1.22.0-dev.20250409-89f8206ba4",
1629
+ "resolved": "https://registry.npmjs.org/onnxruntime-common/-/onnxruntime-common-1.22.0-dev.20250409-89f8206ba4.tgz",
1630
+ "integrity": "sha512-vDJMkfCfb0b1A836rgHj+ORuZf4B4+cc2bASQtpeoJLueuFc5DuYwjIZUBrSvx/fO5IrLjLz+oTrB3pcGlhovQ==",
1631
+ "license": "MIT"
1632
+ },
1633
+ "node_modules/picocolors": {
1634
+ "version": "1.1.1",
1635
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
1636
+ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
1637
+ "dev": true,
1638
+ "license": "ISC"
1639
+ },
1640
+ "node_modules/picomatch": {
1641
+ "version": "4.0.3",
1642
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz",
1643
+ "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==",
1644
+ "dev": true,
1645
+ "license": "MIT",
1646
+ "engines": {
1647
+ "node": ">=12"
1648
+ },
1649
+ "funding": {
1650
+ "url": "https://github.com/sponsors/jonschlinkert"
1651
+ }
1652
+ },
1653
+ "node_modules/platform": {
1654
+ "version": "1.3.6",
1655
+ "resolved": "https://registry.npmjs.org/platform/-/platform-1.3.6.tgz",
1656
+ "integrity": "sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg==",
1657
+ "license": "MIT"
1658
+ },
1659
+ "node_modules/postcss": {
1660
+ "version": "8.5.6",
1661
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz",
1662
+ "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==",
1663
+ "dev": true,
1664
+ "funding": [
1665
+ {
1666
+ "type": "opencollective",
1667
+ "url": "https://opencollective.com/postcss/"
1668
+ },
1669
+ {
1670
+ "type": "tidelift",
1671
+ "url": "https://tidelift.com/funding/github/npm/postcss"
1672
+ },
1673
+ {
1674
+ "type": "github",
1675
+ "url": "https://github.com/sponsors/ai"
1676
+ }
1677
+ ],
1678
+ "license": "MIT",
1679
+ "dependencies": {
1680
+ "nanoid": "^3.3.11",
1681
+ "picocolors": "^1.1.1",
1682
+ "source-map-js": "^1.2.1"
1683
+ },
1684
+ "engines": {
1685
+ "node": "^10 || ^12 || >=14"
1686
+ }
1687
+ },
1688
+ "node_modules/protobufjs": {
1689
+ "version": "7.5.0",
1690
+ "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.0.tgz",
1691
+ "integrity": "sha512-Z2E/kOY1QjoMlCytmexzYfDm/w5fKAiRwpSzGtdnXW1zC88Z2yXazHHrOtwCzn+7wSxyE8PYM4rvVcMphF9sOA==",
1692
+ "hasInstallScript": true,
1693
+ "license": "BSD-3-Clause",
1694
+ "dependencies": {
1695
+ "@protobufjs/aspromise": "^1.1.2",
1696
+ "@protobufjs/base64": "^1.1.2",
1697
+ "@protobufjs/codegen": "^2.0.4",
1698
+ "@protobufjs/eventemitter": "^1.1.0",
1699
+ "@protobufjs/fetch": "^1.1.0",
1700
+ "@protobufjs/float": "^1.0.2",
1701
+ "@protobufjs/inquire": "^1.1.0",
1702
+ "@protobufjs/path": "^1.1.2",
1703
+ "@protobufjs/pool": "^1.1.0",
1704
+ "@protobufjs/utf8": "^1.1.0",
1705
+ "@types/node": ">=13.7.0",
1706
+ "long": "^5.0.0"
1707
+ },
1708
+ "engines": {
1709
+ "node": ">=12.0.0"
1710
+ }
1711
+ },
1712
+ "node_modules/roarr": {
1713
+ "version": "2.15.4",
1714
+ "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz",
1715
+ "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==",
1716
+ "license": "BSD-3-Clause",
1717
+ "dependencies": {
1718
+ "boolean": "^3.0.1",
1719
+ "detect-node": "^2.0.4",
1720
+ "globalthis": "^1.0.1",
1721
+ "json-stringify-safe": "^5.0.1",
1722
+ "semver-compare": "^1.0.0",
1723
+ "sprintf-js": "^1.1.2"
1724
+ },
1725
+ "engines": {
1726
+ "node": ">=8.0"
1727
+ }
1728
+ },
1729
+ "node_modules/rollup": {
1730
+ "version": "4.50.2",
1731
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.50.2.tgz",
1732
+ "integrity": "sha512-BgLRGy7tNS9H66aIMASq1qSYbAAJV6Z6WR4QYTvj5FgF15rZ/ympT1uixHXwzbZUBDbkvqUI1KR0fH1FhMaQ9w==",
1733
+ "dev": true,
1734
+ "license": "MIT",
1735
+ "dependencies": {
1736
+ "@types/estree": "1.0.8"
1737
+ },
1738
+ "bin": {
1739
+ "rollup": "dist/bin/rollup"
1740
+ },
1741
+ "engines": {
1742
+ "node": ">=18.0.0",
1743
+ "npm": ">=8.0.0"
1744
+ },
1745
+ "optionalDependencies": {
1746
+ "@rollup/rollup-android-arm-eabi": "4.50.2",
1747
+ "@rollup/rollup-android-arm64": "4.50.2",
1748
+ "@rollup/rollup-darwin-arm64": "4.50.2",
1749
+ "@rollup/rollup-darwin-x64": "4.50.2",
1750
+ "@rollup/rollup-freebsd-arm64": "4.50.2",
1751
+ "@rollup/rollup-freebsd-x64": "4.50.2",
1752
+ "@rollup/rollup-linux-arm-gnueabihf": "4.50.2",
1753
+ "@rollup/rollup-linux-arm-musleabihf": "4.50.2",
1754
+ "@rollup/rollup-linux-arm64-gnu": "4.50.2",
1755
+ "@rollup/rollup-linux-arm64-musl": "4.50.2",
1756
+ "@rollup/rollup-linux-loong64-gnu": "4.50.2",
1757
+ "@rollup/rollup-linux-ppc64-gnu": "4.50.2",
1758
+ "@rollup/rollup-linux-riscv64-gnu": "4.50.2",
1759
+ "@rollup/rollup-linux-riscv64-musl": "4.50.2",
1760
+ "@rollup/rollup-linux-s390x-gnu": "4.50.2",
1761
+ "@rollup/rollup-linux-x64-gnu": "4.50.2",
1762
+ "@rollup/rollup-linux-x64-musl": "4.50.2",
1763
+ "@rollup/rollup-openharmony-arm64": "4.50.2",
1764
+ "@rollup/rollup-win32-arm64-msvc": "4.50.2",
1765
+ "@rollup/rollup-win32-ia32-msvc": "4.50.2",
1766
+ "@rollup/rollup-win32-x64-msvc": "4.50.2",
1767
+ "fsevents": "~2.3.2"
1768
+ }
1769
+ },
1770
+ "node_modules/semver": {
1771
+ "version": "7.7.1",
1772
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
1773
+ "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
1774
+ "license": "ISC",
1775
+ "bin": {
1776
+ "semver": "bin/semver.js"
1777
+ },
1778
+ "engines": {
1779
+ "node": ">=10"
1780
+ }
1781
+ },
1782
+ "node_modules/semver-compare": {
1783
+ "version": "1.0.0",
1784
+ "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz",
1785
+ "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==",
1786
+ "license": "MIT"
1787
+ },
1788
+ "node_modules/serialize-error": {
1789
+ "version": "7.0.1",
1790
+ "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz",
1791
+ "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==",
1792
+ "license": "MIT",
1793
+ "dependencies": {
1794
+ "type-fest": "^0.13.1"
1795
+ },
1796
+ "engines": {
1797
+ "node": ">=10"
1798
+ },
1799
+ "funding": {
1800
+ "url": "https://github.com/sponsors/sindresorhus"
1801
+ }
1802
+ },
1803
+ "node_modules/sharp": {
1804
+ "version": "0.34.1",
1805
+ "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.1.tgz",
1806
+ "integrity": "sha512-1j0w61+eVxu7DawFJtnfYcvSv6qPFvfTaqzTQ2BLknVhHTwGS8sc63ZBF4rzkWMBVKybo4S5OBtDdZahh2A1xg==",
1807
+ "hasInstallScript": true,
1808
+ "license": "Apache-2.0",
1809
+ "dependencies": {
1810
+ "color": "^4.2.3",
1811
+ "detect-libc": "^2.0.3",
1812
+ "semver": "^7.7.1"
1813
+ },
1814
+ "engines": {
1815
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
1816
+ },
1817
+ "funding": {
1818
+ "url": "https://opencollective.com/libvips"
1819
+ },
1820
+ "optionalDependencies": {
1821
+ "@img/sharp-darwin-arm64": "0.34.1",
1822
+ "@img/sharp-darwin-x64": "0.34.1",
1823
+ "@img/sharp-libvips-darwin-arm64": "1.1.0",
1824
+ "@img/sharp-libvips-darwin-x64": "1.1.0",
1825
+ "@img/sharp-libvips-linux-arm": "1.1.0",
1826
+ "@img/sharp-libvips-linux-arm64": "1.1.0",
1827
+ "@img/sharp-libvips-linux-ppc64": "1.1.0",
1828
+ "@img/sharp-libvips-linux-s390x": "1.1.0",
1829
+ "@img/sharp-libvips-linux-x64": "1.1.0",
1830
+ "@img/sharp-libvips-linuxmusl-arm64": "1.1.0",
1831
+ "@img/sharp-libvips-linuxmusl-x64": "1.1.0",
1832
+ "@img/sharp-linux-arm": "0.34.1",
1833
+ "@img/sharp-linux-arm64": "0.34.1",
1834
+ "@img/sharp-linux-s390x": "0.34.1",
1835
+ "@img/sharp-linux-x64": "0.34.1",
1836
+ "@img/sharp-linuxmusl-arm64": "0.34.1",
1837
+ "@img/sharp-linuxmusl-x64": "0.34.1",
1838
+ "@img/sharp-wasm32": "0.34.1",
1839
+ "@img/sharp-win32-ia32": "0.34.1",
1840
+ "@img/sharp-win32-x64": "0.34.1"
1841
+ }
1842
+ },
1843
+ "node_modules/simple-swizzle": {
1844
+ "version": "0.2.2",
1845
+ "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
1846
+ "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==",
1847
+ "license": "MIT",
1848
+ "dependencies": {
1849
+ "is-arrayish": "^0.3.1"
1850
+ }
1851
+ },
1852
+ "node_modules/source-map-js": {
1853
+ "version": "1.2.1",
1854
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
1855
+ "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
1856
+ "dev": true,
1857
+ "license": "BSD-3-Clause",
1858
+ "engines": {
1859
+ "node": ">=0.10.0"
1860
+ }
1861
+ },
1862
+ "node_modules/sprintf-js": {
1863
+ "version": "1.1.3",
1864
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz",
1865
+ "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==",
1866
+ "license": "BSD-3-Clause"
1867
+ },
1868
+ "node_modules/tar": {
1869
+ "version": "7.4.3",
1870
+ "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz",
1871
+ "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==",
1872
+ "license": "ISC",
1873
+ "dependencies": {
1874
+ "@isaacs/fs-minipass": "^4.0.0",
1875
+ "chownr": "^3.0.0",
1876
+ "minipass": "^7.1.2",
1877
+ "minizlib": "^3.0.1",
1878
+ "mkdirp": "^3.0.1",
1879
+ "yallist": "^5.0.0"
1880
+ },
1881
+ "engines": {
1882
+ "node": ">=18"
1883
+ }
1884
+ },
1885
+ "node_modules/tinyglobby": {
1886
+ "version": "0.2.15",
1887
+ "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz",
1888
+ "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==",
1889
+ "dev": true,
1890
+ "license": "MIT",
1891
+ "dependencies": {
1892
+ "fdir": "^6.5.0",
1893
+ "picomatch": "^4.0.3"
1894
+ },
1895
+ "engines": {
1896
+ "node": ">=12.0.0"
1897
+ },
1898
+ "funding": {
1899
+ "url": "https://github.com/sponsors/SuperchupuDev"
1900
+ }
1901
+ },
1902
+ "node_modules/tslib": {
1903
+ "version": "2.8.1",
1904
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
1905
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
1906
+ "license": "0BSD",
1907
+ "optional": true
1908
+ },
1909
+ "node_modules/type-fest": {
1910
+ "version": "0.13.1",
1911
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz",
1912
+ "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==",
1913
+ "license": "(MIT OR CC0-1.0)",
1914
+ "engines": {
1915
+ "node": ">=10"
1916
+ },
1917
+ "funding": {
1918
+ "url": "https://github.com/sponsors/sindresorhus"
1919
+ }
1920
+ },
1921
+ "node_modules/undici-types": {
1922
+ "version": "7.12.0",
1923
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.12.0.tgz",
1924
+ "integrity": "sha512-goOacqME2GYyOZZfb5Lgtu+1IDmAlAEu5xnD3+xTzS10hT0vzpf0SPjkXwAw9Jm+4n/mQGDP3LO8CPbYROeBfQ==",
1925
+ "license": "MIT"
1926
+ },
1927
+ "node_modules/vite": {
1928
+ "version": "7.1.6",
1929
+ "resolved": "https://registry.npmjs.org/vite/-/vite-7.1.6.tgz",
1930
+ "integrity": "sha512-SRYIB8t/isTwNn8vMB3MR6E+EQZM/WG1aKmmIUCfDXfVvKfc20ZpamngWHKzAmmu9ppsgxsg4b2I7c90JZudIQ==",
1931
+ "dev": true,
1932
+ "license": "MIT",
1933
+ "dependencies": {
1934
+ "esbuild": "^0.25.0",
1935
+ "fdir": "^6.5.0",
1936
+ "picomatch": "^4.0.3",
1937
+ "postcss": "^8.5.6",
1938
+ "rollup": "^4.43.0",
1939
+ "tinyglobby": "^0.2.15"
1940
+ },
1941
+ "bin": {
1942
+ "vite": "bin/vite.js"
1943
+ },
1944
+ "engines": {
1945
+ "node": "^20.19.0 || >=22.12.0"
1946
+ },
1947
+ "funding": {
1948
+ "url": "https://github.com/vitejs/vite?sponsor=1"
1949
+ },
1950
+ "optionalDependencies": {
1951
+ "fsevents": "~2.3.3"
1952
+ },
1953
+ "peerDependencies": {
1954
+ "@types/node": "^20.19.0 || >=22.12.0",
1955
+ "jiti": ">=1.21.0",
1956
+ "less": "^4.0.0",
1957
+ "lightningcss": "^1.21.0",
1958
+ "sass": "^1.70.0",
1959
+ "sass-embedded": "^1.70.0",
1960
+ "stylus": ">=0.54.8",
1961
+ "sugarss": "^5.0.0",
1962
+ "terser": "^5.16.0",
1963
+ "tsx": "^4.8.1",
1964
+ "yaml": "^2.4.2"
1965
+ },
1966
+ "peerDependenciesMeta": {
1967
+ "@types/node": {
1968
+ "optional": true
1969
+ },
1970
+ "jiti": {
1971
+ "optional": true
1972
+ },
1973
+ "less": {
1974
+ "optional": true
1975
+ },
1976
+ "lightningcss": {
1977
+ "optional": true
1978
+ },
1979
+ "sass": {
1980
+ "optional": true
1981
+ },
1982
+ "sass-embedded": {
1983
+ "optional": true
1984
+ },
1985
+ "stylus": {
1986
+ "optional": true
1987
+ },
1988
+ "sugarss": {
1989
+ "optional": true
1990
+ },
1991
+ "terser": {
1992
+ "optional": true
1993
+ },
1994
+ "tsx": {
1995
+ "optional": true
1996
+ },
1997
+ "yaml": {
1998
+ "optional": true
1999
+ }
2000
+ }
2001
+ },
2002
+ "node_modules/yallist": {
2003
+ "version": "5.0.0",
2004
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz",
2005
+ "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==",
2006
+ "license": "BlueOak-1.0.0",
2007
+ "engines": {
2008
+ "node": ">=18"
2009
+ }
2010
+ }
2011
+ }
2012
+ }
src/package.json ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "depth-estimation-video",
3
+ "private": true,
4
+ "version": "0.0.0",
5
+ "type": "module",
6
+ "scripts": {
7
+ "dev": "vite",
8
+ "build": "vite build",
9
+ "preview": "vite preview"
10
+ },
11
+ "devDependencies": {
12
+ "vite": "^7.1.6"
13
+ },
14
+ "dependencies": {
15
+ "@huggingface/transformers": "3.7.3",
16
+ "onnxruntime-node": "^1.21.0"
17
+ }
18
+ }
src/style.css ADDED
@@ -0,0 +1,91 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ * {
2
+ box-sizing: border-box;
3
+ padding: 0;
4
+ margin: 0;
5
+ font-family: sans-serif;
6
+ }
7
+
8
+ html,
9
+ body {
10
+ height: 100%;
11
+ }
12
+
13
+ body {
14
+ padding: 16px 32px;
15
+ }
16
+
17
+ body,
18
+ #container {
19
+ display: flex;
20
+ flex-direction: column;
21
+ justify-content: center;
22
+ align-items: center;
23
+ }
24
+
25
+ #controls {
26
+ display: flex;
27
+ padding: 1rem;
28
+ gap: 1rem;
29
+ }
30
+
31
+ #controls > div {
32
+ text-align: center;
33
+ }
34
+
35
+ h1,
36
+ h3 {
37
+ text-align: center;
38
+ }
39
+
40
+ h3 {
41
+ margin-top: 0.5rem;
42
+ }
43
+
44
+ #container {
45
+ display: flex;
46
+ flex-direction: row;
47
+ position: relative;
48
+ max-width: 100%;
49
+ max-height: 100%;
50
+ border: 2px dashed #d1d5db;
51
+ border-radius: 0.75rem;
52
+ overflow: hidden;
53
+ margin-top: 1rem;
54
+ background-size: 100% 100%;
55
+ background-position: center;
56
+ background-repeat: no-repeat;
57
+ }
58
+ #video,
59
+ #output-canvas {
60
+ width: 504px;
61
+ height: 504px;
62
+ }
63
+
64
+ canvas {
65
+ width: 100%;
66
+ height: 100%;
67
+ }
68
+
69
+ #status {
70
+ min-height: 16px;
71
+ margin: 8px 0;
72
+ }
73
+
74
+ #size-container {
75
+ display: none;
76
+ }
77
+
78
+ a {
79
+ color: rgba(39, 94, 254, 1);
80
+ text-decoration: none;
81
+ }
82
+
83
+ a:hover {
84
+ text-decoration: underline;
85
+ }
86
+
87
+ #versions {
88
+ margin-top: 0.5rem;
89
+ font-size: 0.8rem;
90
+ color: rgba(0, 0, 0, 0.3);
91
+ }
src/vite.config.js ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ import { defineConfig } from "vite";
2
+ export default defineConfig({
3
+ build: {
4
+ target: "esnext",
5
+ outDir: '../',
6
+ },
7
+ });