@daytonaio/sdk 0.210.0 → 0.214.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/Daytona.js +27 -2
- package/cjs/Daytona.js.map +1 -1
- package/cjs/Image.d.ts +7 -0
- package/cjs/Image.js +54 -33
- package/cjs/Image.js.map +1 -1
- package/cjs/utils/Import.js +1 -1
- package/cjs/utils/RetryAdapter.d.ts +13 -0
- package/cjs/utils/RetryAdapter.js +137 -0
- package/cjs/utils/RetryAdapter.js.map +1 -0
- package/cjs/utils/Runtime.d.ts +45 -0
- package/cjs/utils/Runtime.js +264 -8
- package/cjs/utils/Runtime.js.map +1 -1
- package/esm/Daytona.js +28 -3
- package/esm/Daytona.js.map +1 -1
- package/esm/Image.d.ts +7 -0
- package/esm/Image.js +54 -33
- package/esm/Image.js.map +1 -1
- package/esm/utils/Import.js +2 -2
- package/esm/utils/RetryAdapter.d.ts +13 -0
- package/esm/utils/RetryAdapter.js +133 -0
- package/esm/utils/RetryAdapter.js.map +1 -0
- package/esm/utils/Runtime.d.ts +45 -0
- package/esm/utils/Runtime.js +271 -8
- package/esm/utils/Runtime.js.map +1 -1
- package/package.json +13 -14
package/cjs/utils/Runtime.js
CHANGED
|
@@ -7,6 +7,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
exports.DaytonaEnvReader = exports.RUNTIME = exports.Runtime = void 0;
|
|
8
8
|
exports.getEnvVar = getEnvVar;
|
|
9
9
|
exports.isServerlessRuntime = isServerlessRuntime;
|
|
10
|
+
exports.warnIfDotenvApiUrlIgnored = warnIfDotenvApiUrlIgnored;
|
|
11
|
+
exports.endpointNamedInProcessEnv = endpointNamedInProcessEnv;
|
|
12
|
+
exports.dotenvSearchDirs = dotenvSearchDirs;
|
|
13
|
+
exports.findDotenvFileDefiningEndpoint = findDotenvFileDefiningEndpoint;
|
|
10
14
|
var Runtime;
|
|
11
15
|
(function (Runtime) {
|
|
12
16
|
Runtime["NODE"] = "node";
|
|
@@ -36,6 +40,29 @@ function getEnvVar(name) {
|
|
|
36
40
|
}
|
|
37
41
|
return undefined;
|
|
38
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Loads a CommonJS module, or returns undefined when one cannot be loaded.
|
|
45
|
+
*
|
|
46
|
+
* Reaching `require` through a real call is deliberate. `require` is not defined in an ES
|
|
47
|
+
* module, so post-build.js rewrites the call below onto a `createRequire` shim in the
|
|
48
|
+
* published ESM build; a `typeof require` test inlined at a call site is not a call, is
|
|
49
|
+
* not rewritten, and so reports "no require" in ESM even though one is reachable. Every
|
|
50
|
+
* caller must therefore go through a real call rather than test for the binding.
|
|
51
|
+
*
|
|
52
|
+
* A bundler can also leave `require` defined while a given specifier is unresolvable, so
|
|
53
|
+
* the failure is swallowed either way: these callers must degrade, never throw.
|
|
54
|
+
*
|
|
55
|
+
* Left untyped on purpose - a `typeof import(...)` annotation here pulls the node typings
|
|
56
|
+
* in differently and reorders unrelated unions in the generated docs.
|
|
57
|
+
*/
|
|
58
|
+
function tryRequire(id) {
|
|
59
|
+
try {
|
|
60
|
+
return require(id);
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
return undefined;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
39
66
|
class DaytonaEnvReader {
|
|
40
67
|
envLocalVars;
|
|
41
68
|
envVars;
|
|
@@ -44,26 +71,50 @@ class DaytonaEnvReader {
|
|
|
44
71
|
this.envVars = DaytonaEnvReader.parseFileVars('.env');
|
|
45
72
|
}
|
|
46
73
|
get(name) {
|
|
47
|
-
|
|
48
|
-
throw new Error(`DaytonaEnvReader: variable name must start with 'DAYTONA_', got '${name}'`);
|
|
49
|
-
}
|
|
74
|
+
DaytonaEnvReader.checkName(name);
|
|
50
75
|
// 1. Runtime env
|
|
51
76
|
const runtimeVal = getEnvVar(name);
|
|
52
77
|
if (runtimeVal !== undefined)
|
|
53
78
|
return runtimeVal;
|
|
54
|
-
// 2. .env.local
|
|
79
|
+
// 2. .env.local, 3. .env
|
|
80
|
+
return this.getFromFile(name);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Reads `name` from the process environment only, never from .env / .env.local.
|
|
84
|
+
*
|
|
85
|
+
* The dotenv files are read from the current working directory, which is not
|
|
86
|
+
* necessarily authored by whoever runs the process. Anything that determines the host a
|
|
87
|
+
* credential is sent to must be resolved through this method, so that a file in the
|
|
88
|
+
* working directory cannot redirect the SDK.
|
|
89
|
+
*/
|
|
90
|
+
getFromProcessEnv(name) {
|
|
91
|
+
DaytonaEnvReader.checkName(name);
|
|
92
|
+
return getEnvVar(name);
|
|
93
|
+
}
|
|
94
|
+
/** Reads `name` from .env.local / .env only, ignoring the process environment. */
|
|
95
|
+
getFromFile(name) {
|
|
96
|
+
DaytonaEnvReader.checkName(name);
|
|
55
97
|
if (name in this.envLocalVars)
|
|
56
98
|
return this.envLocalVars[name];
|
|
57
|
-
// 3. .env
|
|
58
99
|
return this.envVars[name];
|
|
59
100
|
}
|
|
101
|
+
static checkName(name) {
|
|
102
|
+
if (!name.startsWith('DAYTONA_')) {
|
|
103
|
+
throw new Error(`DaytonaEnvReader: variable name must start with 'DAYTONA_', got '${name}'`);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
60
106
|
static parseFileVars(path) {
|
|
61
|
-
|
|
107
|
+
// Bun is detected before Node above, so a Node-only gate would leave the reader unable to
|
|
108
|
+
// read files on the one runtime that pre-loads them. Bun implements the CommonJS
|
|
109
|
+
// module loader, so the require below resolves there.
|
|
110
|
+
if (exports.RUNTIME !== Runtime.NODE && exports.RUNTIME !== Runtime.BUN)
|
|
111
|
+
return {};
|
|
112
|
+
const fs = tryRequire('fs');
|
|
113
|
+
const dotenv = tryRequire('dotenv');
|
|
114
|
+
if (!fs || !dotenv)
|
|
62
115
|
return {};
|
|
63
|
-
const fs = require('fs');
|
|
64
116
|
if (!fs.existsSync(path))
|
|
65
117
|
return {};
|
|
66
|
-
const dotenv = require('dotenv');
|
|
67
118
|
const parsed = dotenv.parse(fs.readFileSync(path));
|
|
68
119
|
return Object.fromEntries(Object.entries(parsed).filter(([k]) => k.startsWith('DAYTONA_')));
|
|
69
120
|
}
|
|
@@ -92,4 +143,209 @@ function isServerlessRuntime() {
|
|
|
92
143
|
// Netlify Functions
|
|
93
144
|
env.SITE_NAME !== undefined);
|
|
94
145
|
}
|
|
146
|
+
/**
|
|
147
|
+
* Warns when a dotenv file asked for an API endpoint that was not used.
|
|
148
|
+
*
|
|
149
|
+
* Staying silent when the file value matches the endpoint in use keeps the documented
|
|
150
|
+
* `.env` layout quiet, while a file that would have changed the destination is reported.
|
|
151
|
+
*/
|
|
152
|
+
function warnIfDotenvApiUrlIgnored(reader, apiUrl) {
|
|
153
|
+
for (const name of ['DAYTONA_API_URL', 'DAYTONA_SERVER_URL']) {
|
|
154
|
+
const fileValue = reader.getFromFile(name);
|
|
155
|
+
if (fileValue && fileValue !== apiUrl) {
|
|
156
|
+
// One report per construction: a file that sets both endpoint variables to the same
|
|
157
|
+
// redirected value does not need saying twice.
|
|
158
|
+
console.warn(`\`${name}\` set in a .env or .env.local file was ignored: the Daytona API endpoint is` +
|
|
159
|
+
` never read from dotenv files, because the working directory is not always authored by` +
|
|
160
|
+
` you. Using \`${apiUrl}\` instead. To change the endpoint, pass \`apiUrl\` to the Daytona` +
|
|
161
|
+
` constructor or set \`${name}\` in the environment of the process.`);
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
/** The variables that decide which host the API key is sent to. */
|
|
167
|
+
const ENDPOINT_VARS = ['DAYTONA_API_URL', 'DAYTONA_SERVER_URL'];
|
|
168
|
+
/**
|
|
169
|
+
* One assignment as the dotenv loader accepts it: an optional `export`, a key, either `=`
|
|
170
|
+
* or `:` followed by whitespace, and a value that may be quoted — and a quoted value may
|
|
171
|
+
* span newlines.
|
|
172
|
+
*
|
|
173
|
+
* The grammar deliberately mirrors the loader's, so this check cannot disagree with the
|
|
174
|
+
* thing that populated the environment. Matching lines in isolation would both report a
|
|
175
|
+
* key sitting inside a multiline quoted value, and miss the `KEY: value` form.
|
|
176
|
+
*
|
|
177
|
+
* Returned from a function rather than held in a module constant: evaluating a regex
|
|
178
|
+
* literal yields a fresh object, so the `g` flag's `lastIndex` cannot leak between files.
|
|
179
|
+
*/
|
|
180
|
+
function dotenvAssignments() {
|
|
181
|
+
return /^[ \t]*(?:export[ \t]+)?([\w.-]+)(?:[ \t]*=[ \t]*|:[ \t]+)(?:'[^']*'|"(?:\\[\s\S]|[^"\\])*"|`(?:\\[\s\S]|[^`\\])*`|[^#\r\n]*)?[ \t]*(?:#[^\r\n]*)?\r?$/gm;
|
|
182
|
+
}
|
|
183
|
+
function definesEndpointVar(text) {
|
|
184
|
+
// Editors on Windows write a byte-order mark and the loaders tolerate it, but `^` would
|
|
185
|
+
// not match an assignment sitting on the first line behind one.
|
|
186
|
+
const source = text.replace(/^\uFEFF/, '');
|
|
187
|
+
const pattern = dotenvAssignments();
|
|
188
|
+
for (let match = pattern.exec(source); match; match = pattern.exec(source)) {
|
|
189
|
+
if (ENDPOINT_VARS.includes(match[1]))
|
|
190
|
+
return true;
|
|
191
|
+
}
|
|
192
|
+
return false;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* The union of the dotenv file names that Bun and Next.js load on their own. `.env` and
|
|
196
|
+
* `.env.local` are the SDK's own precedence chain; the rest are here only so that a file
|
|
197
|
+
* defining the endpoint cannot go unnoticed.
|
|
198
|
+
*/
|
|
199
|
+
const PRELOADABLE_DOTENV_FILES = [
|
|
200
|
+
'.env',
|
|
201
|
+
'.env.local',
|
|
202
|
+
'.env.development',
|
|
203
|
+
'.env.development.local',
|
|
204
|
+
'.env.production',
|
|
205
|
+
'.env.production.local',
|
|
206
|
+
'.env.test',
|
|
207
|
+
'.env.test.local',
|
|
208
|
+
];
|
|
209
|
+
/**
|
|
210
|
+
* Whether either endpoint variable is present in the process environment.
|
|
211
|
+
*
|
|
212
|
+
* Enumerating loaders (Bun, `--env-file`, Next.js, Deno, Nuxt/Nitro, `@next/env`, …) can
|
|
213
|
+
* never be complete. The endpoint can only come from the constructor or `process.env`, so
|
|
214
|
+
* the precise condition is: a working-directory file names the variable **and** that variable
|
|
215
|
+
* is present in the process environment. This is both broader (covers every loader) and
|
|
216
|
+
* narrower (does not fire when a file exists but nothing loaded it).
|
|
217
|
+
*/
|
|
218
|
+
function endpointNamedInProcessEnv() {
|
|
219
|
+
return ENDPOINT_VARS.some((name) => getEnvVar(name) !== undefined);
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* The working directory as it was when this module first loaded.
|
|
223
|
+
*
|
|
224
|
+
* A runtime resolves its dotenv files when the process starts, so a relative `--env-file`
|
|
225
|
+
* path - and the conventional names - belong to that directory. An application is free to
|
|
226
|
+
* call `process.chdir()` afterwards, which would otherwise move the search away from the
|
|
227
|
+
* file that actually supplied the environment.
|
|
228
|
+
*
|
|
229
|
+
* Imports normally run before application logic, so this is the startup directory in
|
|
230
|
+
* practice. It is not guaranteed: an application that changes directory and only then
|
|
231
|
+
* imports this SDK - a dynamic import, for instance - leaves no way to recover the
|
|
232
|
+
* directory the runtime actually read from, since no runtime exposes its startup working
|
|
233
|
+
* directory. In that case a relative dotenv file goes unseen and a pre-loaded endpoint is
|
|
234
|
+
* trusted. Refusing every pre-loaded endpoint instead would reject the platform-supplied
|
|
235
|
+
* environment variables that Next.js deployments legitimately rely on, so the narrower
|
|
236
|
+
* exposure is preferred here and stated rather than assumed away.
|
|
237
|
+
*/
|
|
238
|
+
const STARTUP_CWD = typeof process !== 'undefined' && typeof process.cwd === 'function' ? safeCwd() : undefined;
|
|
239
|
+
function safeCwd() {
|
|
240
|
+
try {
|
|
241
|
+
return process.cwd();
|
|
242
|
+
}
|
|
243
|
+
catch {
|
|
244
|
+
return undefined;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* The dotenv paths a runtime or preloader was told to read, in the order they were given.
|
|
249
|
+
*
|
|
250
|
+
* A runtime told to load a specific file does not restrict itself to the conventional names,
|
|
251
|
+
* so those paths have to be examined too. Relative paths are left as given: the runtime
|
|
252
|
+
* resolved them against the working directory and so does `fs`.
|
|
253
|
+
*/
|
|
254
|
+
function explicitDotenvPaths() {
|
|
255
|
+
if (typeof process === 'undefined')
|
|
256
|
+
return [];
|
|
257
|
+
const execArgv = Array.isArray(process.execArgv) ? process.execArgv : [];
|
|
258
|
+
const paths = [];
|
|
259
|
+
for (let i = 0; i < execArgv.length; i++) {
|
|
260
|
+
const arg = execArgv[i];
|
|
261
|
+
if (!arg.startsWith('--env-file'))
|
|
262
|
+
continue;
|
|
263
|
+
const separator = arg.indexOf('=');
|
|
264
|
+
if (separator !== -1) {
|
|
265
|
+
const value = arg.slice(separator + 1);
|
|
266
|
+
if (value)
|
|
267
|
+
paths.push(value);
|
|
268
|
+
}
|
|
269
|
+
else if (execArgv[i + 1] && !execArgv[i + 1].startsWith('-')) {
|
|
270
|
+
paths.push(execArgv[++i]);
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
// The dotenv preloader takes its path from DOTENV_CONFIG_PATH or from a
|
|
274
|
+
// `dotenv_config_path=` command-line argument. Its default, `.env`, is already covered by
|
|
275
|
+
// PRELOADABLE_DOTENV_FILES; a configured path is not.
|
|
276
|
+
const configPath = process.env?.DOTENV_CONFIG_PATH;
|
|
277
|
+
if (configPath)
|
|
278
|
+
paths.push(configPath);
|
|
279
|
+
const argv = Array.isArray(process.argv) ? process.argv : [];
|
|
280
|
+
for (const arg of argv) {
|
|
281
|
+
if (!arg.startsWith('dotenv_config_path='))
|
|
282
|
+
continue;
|
|
283
|
+
const value = arg.slice('dotenv_config_path='.length);
|
|
284
|
+
if (value)
|
|
285
|
+
paths.push(value);
|
|
286
|
+
}
|
|
287
|
+
return paths;
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* The directories a pre-loading runtime could have read a dotenv file from: the current one,
|
|
291
|
+
* and the startup one when the application has since changed directory.
|
|
292
|
+
*/
|
|
293
|
+
function dotenvSearchDirs() {
|
|
294
|
+
const dirs = [];
|
|
295
|
+
const current = safeCwd();
|
|
296
|
+
if (current)
|
|
297
|
+
dirs.push(current);
|
|
298
|
+
if (STARTUP_CWD && STARTUP_CWD !== current)
|
|
299
|
+
dirs.push(STARTUP_CWD);
|
|
300
|
+
return dirs;
|
|
301
|
+
}
|
|
302
|
+
/**
|
|
303
|
+
* The first dotenv file that defines an endpoint variable, if any.
|
|
304
|
+
*
|
|
305
|
+
* The file is scanned as raw text rather than parsed with the `dotenv` package: only the
|
|
306
|
+
* variable's *presence* matters (never its value), and reading the name directly means the
|
|
307
|
+
* check still works where the `dotenv` package is not installed — which is the case when a
|
|
308
|
+
* runtime loads the file itself. A value comparison cannot establish where an environment
|
|
309
|
+
* value came from: runtimes expand `$VAR` references while a parser returns the raw text,
|
|
310
|
+
* so equal-looking values prove nothing and unequal ones rule nothing out.
|
|
311
|
+
*/
|
|
312
|
+
function findDotenvFileDefiningEndpoint(searchDirs = dotenvSearchDirs()) {
|
|
313
|
+
if (exports.RUNTIME !== Runtime.NODE && exports.RUNTIME !== Runtime.BUN)
|
|
314
|
+
return undefined;
|
|
315
|
+
// Constructing a client must not fail because the check could not run, so a scan that
|
|
316
|
+
// throws is treated as nothing found: the endpoint then resolves as it did before this
|
|
317
|
+
// check existed.
|
|
318
|
+
try {
|
|
319
|
+
return scanForDotenvEndpoint(searchDirs);
|
|
320
|
+
}
|
|
321
|
+
catch {
|
|
322
|
+
return undefined;
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
function scanForDotenvEndpoint(searchDirs) {
|
|
326
|
+
const fs = tryRequire('fs');
|
|
327
|
+
const nodePath = tryRequire('path');
|
|
328
|
+
if (!fs || !nodePath)
|
|
329
|
+
return undefined;
|
|
330
|
+
const names = [...explicitDotenvPaths(), ...PRELOADABLE_DOTENV_FILES];
|
|
331
|
+
const candidates = [];
|
|
332
|
+
for (const name of names) {
|
|
333
|
+
for (const dir of searchDirs)
|
|
334
|
+
candidates.push(nodePath.resolve(dir, name));
|
|
335
|
+
}
|
|
336
|
+
for (const file of [...new Set(candidates)]) {
|
|
337
|
+
if (!fs.existsSync(file))
|
|
338
|
+
continue;
|
|
339
|
+
let text;
|
|
340
|
+
try {
|
|
341
|
+
text = fs.readFileSync(file, 'utf8');
|
|
342
|
+
}
|
|
343
|
+
catch {
|
|
344
|
+
continue;
|
|
345
|
+
}
|
|
346
|
+
if (definesEndpointVar(text))
|
|
347
|
+
return file;
|
|
348
|
+
}
|
|
349
|
+
return undefined;
|
|
350
|
+
}
|
|
95
351
|
//# sourceMappingURL=Runtime.js.map
|
package/cjs/utils/Runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Runtime.js","sourceRoot":"","sources":["../../../../../sdk-typescript/src/utils/Runtime.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAmDH,8BASC;
|
|
1
|
+
{"version":3,"file":"Runtime.js","sourceRoot":"","sources":["../../../../../sdk-typescript/src/utils/Runtime.ts"],"names":[],"mappings":"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"}
|
package/esm/Daytona.js
CHANGED
|
@@ -15,9 +15,10 @@ import { WarmPoolService } from './WarmPool.js';
|
|
|
15
15
|
import { getPackageInfo, dynamicRequire } from './utils/Import.js';
|
|
16
16
|
import { EventDispatcher } from './utils/EventDispatcher.js';
|
|
17
17
|
import { EventSubscriptionManager } from './utils/EventSubscriptionManager.js';
|
|
18
|
+
import { withConnectionRetry } from './utils/RetryAdapter.js';
|
|
18
19
|
const packageJson = getPackageInfo();
|
|
19
20
|
import { processStreamingResponse } from './utils/Stream.js';
|
|
20
|
-
import { DaytonaEnvReader, RUNTIME, Runtime } from './utils/Runtime.js';
|
|
21
|
+
import { DaytonaEnvReader, endpointNamedInProcessEnv, findDotenvFileDefiningEndpoint, RUNTIME, Runtime, warnIfDotenvApiUrlIgnored, } from './utils/Runtime.js';
|
|
21
22
|
import { WithInstrumentation } from './utils/otel.decorator.js';
|
|
22
23
|
import { context, trace, propagation, SpanStatusCode } from '@opentelemetry/api';
|
|
23
24
|
export const CODE_TOOLBOX_LANGUAGE_LABEL = 'code-toolbox-language';
|
|
@@ -132,6 +133,7 @@ let Daytona = (() => {
|
|
|
132
133
|
*/
|
|
133
134
|
constructor(config) {
|
|
134
135
|
let apiUrl;
|
|
136
|
+
const endpointGivenByCaller = Boolean(config?.apiUrl || config?.serverUrl);
|
|
135
137
|
if (config) {
|
|
136
138
|
this.apiKey = !config?.apiKey && config?.jwtToken ? undefined : config?.apiKey;
|
|
137
139
|
this.jwtToken = config?.jwtToken;
|
|
@@ -158,14 +160,36 @@ let Daytona = (() => {
|
|
|
158
160
|
this.apiKey = this.apiKey || (this.jwtToken ? undefined : reader.get('DAYTONA_API_KEY'));
|
|
159
161
|
this.jwtToken = this.jwtToken || reader.get('DAYTONA_JWT_TOKEN');
|
|
160
162
|
this.organizationId = this.organizationId || reader.get('DAYTONA_ORGANIZATION_ID');
|
|
161
|
-
|
|
163
|
+
// Resolved from the process environment only, never from .env / .env.local:
|
|
164
|
+
// the endpoint decides where the credential above is sent.
|
|
165
|
+
apiUrl = apiUrl || reader.getFromProcessEnv('DAYTONA_API_URL') || reader.getFromProcessEnv('DAYTONA_SERVER_URL');
|
|
162
166
|
this.target = this.target || reader.get('DAYTONA_TARGET');
|
|
163
|
-
if (reader.
|
|
167
|
+
if (reader.getFromProcessEnv('DAYTONA_SERVER_URL') && !reader.getFromProcessEnv('DAYTONA_API_URL')) {
|
|
164
168
|
console.warn('[Deprecation Warning] Environment variable `DAYTONA_SERVER_URL` is deprecated and will be removed in future versions. Use `DAYTONA_API_URL` instead.');
|
|
165
169
|
}
|
|
166
170
|
}
|
|
167
171
|
}
|
|
172
|
+
// When no explicit endpoint was given and the process environment names one, a
|
|
173
|
+
// working-directory dotenv file that also names it makes the source ambiguous: the
|
|
174
|
+
// variable could have come from the file or from the shell. Refuse to guess.
|
|
175
|
+
if (!endpointGivenByCaller && endpointNamedInProcessEnv()) {
|
|
176
|
+
const dotenvFile = findDotenvFileDefiningEndpoint();
|
|
177
|
+
if (dotenvFile) {
|
|
178
|
+
throw new DaytonaInvalidArgumentError(`The Daytona API endpoint is ambiguous: \`${dotenvFile}\` in the working directory sets` +
|
|
179
|
+
` DAYTONA_API_URL or DAYTONA_SERVER_URL, and that variable is present in the process` +
|
|
180
|
+
` environment, so the endpoint cannot be attributed to you. Pass \`apiUrl\` to the Daytona` +
|
|
181
|
+
` constructor to say which endpoint you mean, or remove the variable from \`${dotenvFile}\`.`);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
168
184
|
this.apiUrl = apiUrl || 'https://app.daytona.io/api';
|
|
185
|
+
// A dotenv file that tried to redirect the endpoint is always reported, however the
|
|
186
|
+
// client was configured: it tells the caller the working directory is hostile, which
|
|
187
|
+
// matters even when their explicit configuration already made them immune. envReader()
|
|
188
|
+
// is memoized and called again below, so this adds no extra parse.
|
|
189
|
+
const readerForReport = envReader();
|
|
190
|
+
if (readerForReport) {
|
|
191
|
+
warnIfDotenvApiUrlIgnored(readerForReport, this.apiUrl);
|
|
192
|
+
}
|
|
169
193
|
if (!this.apiKey && !this.jwtToken) {
|
|
170
194
|
throw new DaytonaAuthenticationError('Authentication credentials not found. Set DAYTONA_API_KEY, or both DAYTONA_JWT_TOKEN and DAYTONA_ORGANIZATION_ID.' +
|
|
171
195
|
' These can also be provided via DaytonaConfig.');
|
|
@@ -570,6 +594,7 @@ let Daytona = (() => {
|
|
|
570
594
|
// fetch adapter would otherwise apply, so set a mode workerd accepts.
|
|
571
595
|
// Ignored by the Node http adapter. API responses are not cacheable anyway.
|
|
572
596
|
fetchOptions: { cache: 'no-store' },
|
|
597
|
+
adapter: withConnectionRetry(axios.getAdapter(axios.defaults.adapter)),
|
|
573
598
|
});
|
|
574
599
|
// Request interceptor: Inject trace context into headers
|
|
575
600
|
axiosInstance.interceptors.request.use((requestConfig) => {
|
package/esm/Daytona.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Daytona.js","sourceRoot":"","sources":["../../../../sdk-typescript/src/Daytona.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Daytona.js","sourceRoot":"","sources":["../../../../sdk-typescript/src/Daytona.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EACL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,UAAU,EAGV,YAAY,EACZ,SAAS,EACT,UAAU,EACV,YAAY,EACZ,SAAS,GACV,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,YAAY,EACZ,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAA;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE1D,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,8BAA8B,EAC9B,OAAO,EACP,OAAO,EACP,yBAAyB,GAC1B,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAGhF,MAAM,CAAC,MAAM,2BAA2B,GAAG,uBAAuB,CAAA;AAElE,MAAM,0BAA0B,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAmFtD;;;;GAIG;AACH,MAAM,CAAN,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,iCAAiB,CAAA;IACjB,yCAAyB,CAAA;IACzB,yCAAyB,CAAA;AAC3B,CAAC,EAJW,YAAY,KAAZ,YAAY,QAIvB;AAkHD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;IACU,OAAO;;;;;;;;iBAAP,OAAO;;;kCAqTjB,mBAAmB,EAAE;+BAmOrB,mBAAmB,EAAE;iCAsJrB,mBAAmB,EAAE;gCAerB,mBAAmB,EAAE;gCAmBrB,mBAAmB,EAAE;kCAyBrB,mBAAmB,EAAE;YAnbtB,qKAAa,MAAM,6DAsNlB;YAaD,4JAAa,GAAG,6DAaf;YAyID,kKAAa,KAAK,6DAEjB;YAaD,+JAAa,IAAI,6DAEhB;YAiBD,+JAAa,IAAI,6DAEhB;YAuBD,qKAAa,MAAM,6DAElB;;;QA3uBgB,YAAY,GADlB,mDAAO,CAC0B;QAC3B,UAAU,CAAY;QACtB,gBAAgB,CAAkB;QAClC,SAAS,CAAW;QAC7B,sBAAsB,CAA8B;QAE5D;;;;WAIG;QACc,kBAAkB,GAAG,GAAgC,EAAE;YACtE,IAAI,CAAC,sBAAsB,KAAK,IAAI,CAAC,SAAS;iBAC3C,yBAAyB,EAAE;iBAC3B,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC;iBACjD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBACxB,IAAI,CAAC,sBAAsB,GAAG,SAAS,CAAA;gBACvC,MAAM,KAAK,CAAA;YACb,CAAC,CAAC,CAAA;YACJ,OAAO,IAAI,CAAC,sBAAsB,CAAA;QACpC,CAAC,CAAA;QACgB,MAAM,CAAS;QACf,MAAM,CAAS;QACf,QAAQ,CAAS;QACjB,cAAc,CAAS;QACvB,MAAM,CAAQ;QACd,gBAAgB,CAAS;QAClC,OAAO,CAAU;QACjB,eAAe,CAAkB;QACjC,wBAAwB,CAA0B;QAC1C,MAAM,CAAe;QACrB,QAAQ,CAAiB;QACzB,MAAM,CAAe;QACrB,QAAQ,CAAiB;QAEzC;;;;;;WAMG;QACH,YAAY,MAAsB;YAChC,IAAI,MAA0B,CAAA;YAC9B,MAAM,qBAAqB,GAAG,OAAO,CAAC,MAAM,EAAE,MAAM,IAAI,MAAM,EAAE,SAAS,CAAC,CAAA;YAC1E,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,IAAI,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAA;gBAC9E,IAAI,CAAC,QAAQ,GAAG,MAAM,EAAE,QAAQ,CAAA;gBAChC,IAAI,CAAC,cAAc,GAAG,MAAM,EAAE,cAAc,CAAA;gBAC5C,MAAM,GAAG,MAAM,EAAE,MAAM,IAAI,MAAM,EAAE,SAAS,CAAA;gBAC5C,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAA;gBAC5B,IACE,MAAM,EAAE,gBAAgB,KAAK,SAAS;oBACtC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,MAAM,CAAC,gBAAgB,GAAG,CAAC,CAAC,EAC1E,CAAC;oBACD,MAAM,IAAI,2BAA2B,CAAC,uEAAuE,CAAC,CAAA;gBAChH,CAAC;gBACD,IAAI,CAAC,gBAAgB,GAAG,MAAM,EAAE,gBAAgB,CAAA;YAClD,CAAC;YAED,IAAI,UAA+C,CAAA;YACnD,MAAM,SAAS,GAAG,GAA4B,EAAE;gBAC9C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,UAAU,GAAG,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;gBAC1E,CAAC;gBACD,OAAO,UAAU,CAAA;YACnB,CAAC,CAAA;YAED,IACE,CAAC,MAAM;gBACP,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,cAAc,IAAI,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,EAC7G,CAAC;gBACD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;gBAC1B,IAAI,MAAM,EAAE,CAAC;oBACX,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAA;oBACxF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;oBAChE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAA;oBAClF,4EAA4E;oBAC5E,2DAA2D;oBAC3D,MAAM,GAAG,MAAM,IAAI,MAAM,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,MAAM,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAA;oBAChH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;oBAEzD,IAAI,MAAM,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC;wBACnG,OAAO,CAAC,IAAI,CACV,sJAAsJ,CACvJ,CAAA;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,+EAA+E;YAC/E,mFAAmF;YACnF,6EAA6E;YAC7E,IAAI,CAAC,qBAAqB,IAAI,yBAAyB,EAAE,EAAE,CAAC;gBAC1D,MAAM,UAAU,GAAG,8BAA8B,EAAE,CAAA;gBACnD,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,IAAI,2BAA2B,CACnC,4CAA4C,UAAU,kCAAkC;wBACtF,qFAAqF;wBACrF,2FAA2F;wBAC3F,8EAA8E,UAAU,KAAK,CAChG,CAAA;gBACH,CAAC;YACH,CAAC;YAED,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,4BAA4B,CAAA;YAEpD,oFAAoF;YACpF,qFAAqF;YACrF,uFAAuF;YACvF,mEAAmE;YACnE,MAAM,eAAe,GAAG,SAAS,EAAE,CAAA;YACnC,IAAI,eAAe,EAAE,CAAC;gBACpB,yBAAyB,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACzD,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnC,MAAM,IAAI,0BAA0B,CAClC,mHAAmH;oBACjH,gDAAgD,CACnD,CAAA;YACH,CAAC;YAED,MAAM,SAAS,GAA2B,EAAE,CAAA;YAC5C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;oBACzB,MAAM,IAAI,0BAA0B,CAClC,iFAAiF;wBAC/E,6CAA6C,CAChD,CAAA;gBACH,CAAC;gBACD,SAAS,CAAC,2BAA2B,CAAC,GAAG,IAAI,CAAC,cAAc,CAAA;YAC9D,CAAC;YAED,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,KAAK,gBAAgB,CAAA;YAC7D,MAAM,QAAQ,GAAG,eAAe,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,gBAAgB,CAAA;YAE7E,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC;gBACtC,QAAQ,EAAE,IAAI,CAAC,MAAM;gBACrB,WAAW,EAAE;oBACX,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;wBACvD,kBAAkB,EAAE,QAAQ;wBAC5B,uBAAuB,EAAE,WAAW,CAAC,OAAO;wBAC5C,YAAY,EAAE,GAAG,QAAQ,IAAI,WAAW,CAAC,OAAO,EAAE;wBAClD,GAAG,SAAS;qBACb;iBACF;aACF,CAAC,CAAA;YAEF,MAAM,aAAa,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAExE,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,CAAC,CAAA;YAClE,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,CAAC,CAAA;YAC9E,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,CAAC,CAAA;YAChE,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,UAAU,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC,CAAA;YACjF,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,SAAS,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC,CAAA;YAChF,IAAI,CAAC,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,YAAY,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC,CAAA;YACvF,IAAI,CAAC,QAAQ,GAAG,IAAI,eAAe,CACjC,aAAa,EACb,IAAI,YAAY,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,CAAC,EAClD,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,MAAM,CACZ,CAAA;YACD,IAAI,CAAC,YAAY,GAAG,aAAa,CAAA;YAEjC,MAAM,oBAAoB,GACxB,MAAM,EAAE,oBAAoB,IAAI,SAAS,EAAE,EAAE,GAAG,CAAC,gCAAgC,CAAC,KAAK,MAAM,CAAA;YAE/F,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CACxC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAC5B,IAAI,CAAC,cAAc,EACnB,QAAQ,EACR,WAAW,CAAC,OAAO,CACpB,CAAA;gBACD,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,CAAA;YACxC,CAAC;YACD,IAAI,CAAC,wBAAwB,GAAG,IAAI,wBAAwB,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,CAAA;YAE1F,MAAM,GAAG,GAAG,SAAS,EAAE,CAAA;YACvB,MAAM,WAAW,GACf,MAAM,EAAE,WAAW;gBACnB,MAAM,EAAE,aAAa,EAAE,WAAW;gBAClC,GAAG,EAAE,GAAG,CAAC,sBAAsB,CAAC,KAAK,MAAM;gBAC3C,GAAG,EAAE,GAAG,CAAC,mCAAmC,CAAC,KAAK,MAAM,CAAA;YAE1D,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAM;YACR,CAAC;YAED,MAAM,SAAS,GAAG,kDAAkD,CAAA;YACpE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,YAAY,EAAE,GAAG,cAAc,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAA;YACjG,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAA;YACxE,MAAM,EAAE,mBAAmB,EAAE,GAAG,cAAc,CAAC,qCAAqC,EAAE,SAAS,CAAC,CAAA;YAChG,MAAM,EAAE,kBAAkB,EAAE,GAAG,cAAc,CAAC,+BAA+B,EAAE,SAAS,CAAC,CAAA;YACzF,MAAM,EAAE,iBAAiB,EAAE,GAAG,cAAc,CAAC,yCAAyC,EAAE,SAAS,CAAC,CAAA;YAClG,MAAM,EAAE,oBAAoB,EAAE,GAAG,cAAc,CAAC,mCAAmC,EAAE,SAAS,CAAC,CAAA;YAC/F,MAAM,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,GAAG,cAAc,CAAC,qCAAqC,EAAE,SAAS,CAAC,CAAA;YACpH,MAAM,EAAE,sBAAsB,EAAE,GAAG,cAAc,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAA;YAExF,IAAI,CAAC,SAAS,CAAC,IAAI,iBAAiB,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,CAAA;YAE1D,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC;gBACzB,QAAQ,EAAE,sBAAsB,CAAC;oBAC/B,CAAC,oBAAoB,CAAC,EAAE,WAAW,CAAC,OAAO;oBAC3C,CAAC,iBAAiB,CAAC,EAAE,wBAAwB;iBAC9C,CAAC;gBACF,gBAAgB,EAAE;oBAChB,IAAI,mBAAmB,CAAC;wBACtB,6BAA6B,EAAE,KAAK;qBACrC,CAAC;iBACH;gBACD,cAAc,EAAE;oBACd,IAAI,kBAAkB,CACpB,IAAI,iBAAiB,CAAC;wBACpB,WAAW,EAAE,oBAAoB,CAAC,IAAI;qBACvC,CAAC,CACH;iBACF;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;YAEpB,0CAA0C;YAC1C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;gBAC/B,MAAM,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAA;YAChC,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;YACzB,IAAI,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAAA;YACxC,IAAI,CAAC,eAAe,EAAE,UAAU,EAAE,CAAA;YAElC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,OAAM;YACR,CAAC;YAED,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAA;QAC/B,CAAC;QAqEM,KAAK,CAAC,MAAM,CACjB,MAAuE,EACvE,UAAgF,EAAE,OAAO,EAAE,EAAE,EAAE;YAE/F,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAE5B,OAAO,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAA;YAC7E,IAAI,OAAO,CAAC,OAAO,IAAI,SAAS,IAAI,OAAO,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;gBAC5D,OAAO,CAAC,OAAO,GAAG,EAAE,CAAA;YACtB,CAAC;YAED,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,MAAM,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;YACjC,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAA;YAC5B,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAA;YAClC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAa,CAAA;gBAC9D,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC9C,MAAM,IAAI,2BAA2B,CACnC,WAAW,2BAA2B,KAAK,MAAM,CAAC,QAAQ,0BAA0B,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAChH,CAAA;gBACH,CAAC;gBACD,MAAM,CAAC,2BAA2B,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAA;YACvD,CAAC;YAED,IAAI,OAAO,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,2BAA2B,CAAC,uCAAuC,CAAC,CAAA;YAChF,CAAC;YAED,IACE,MAAM,CAAC,gBAAgB,KAAK,SAAS;gBACrC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,MAAM,CAAC,gBAAgB,GAAG,CAAC,CAAC,EAC3E,CAAC;gBACD,MAAM,IAAI,2BAA2B,CAAC,iDAAiD,CAAC,CAAA;YAC1F,CAAC;YAED,IACE,MAAM,CAAC,iBAAiB,KAAK,SAAS;gBACtC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAC,EAC7E,CAAC;gBACD,MAAM,IAAI,2BAA2B,CAAC,kDAAkD,CAAC,CAAA;YAC3F,CAAC;YAED,IAAI,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;gBACxD,MAAM,IAAI,2BAA2B,CACnC,4GAA4G,CAC7G,CAAA;YACH,CAAC;YAED,IAAI,MAAM,CAAC,iBAAiB,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,kBAAkB,KAAK,CAAC,CAAC,EAAE,CAAC;gBACtF,MAAM,IAAI,2BAA2B,CACnC,gFAAgF,CACjF,CAAA;YACH,CAAC;YAED,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACrB,IAAI,MAAM,CAAC,kBAAkB,KAAK,SAAS,IAAI,MAAM,CAAC,kBAAkB,KAAK,CAAC,EAAE,CAAC;oBAC/E,OAAO,CAAC,IAAI,CACV,sIAAsI,CACvI,CAAA;gBACH,CAAC;gBACD,MAAM,CAAC,kBAAkB,GAAG,CAAC,CAAA;YAC/B,CAAC;YAED,IACE,MAAM,CAAC,mBAAmB,KAAK,SAAS;gBACxC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,MAAM,CAAC,mBAAmB,GAAG,CAAC,CAAC,EACjF,CAAC;gBACD,MAAM,IAAI,2BAA2B,CAAC,oDAAoD,CAAC,CAAA;YAC7F,CAAC;YAED,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE,CAAC;gBACvG,MAAM,IAAI,2BAA2B,CAAC,2CAA2C,CAAC,CAAA;YACpF,CAAC;YAED,IAAI,CAAC;gBACH,IAAI,SAA0B,CAAA;gBAC9B,IAAI,QAA4B,CAAA;gBAChC,IAAI,SAAgC,CAAA;gBAEpC,IAAI,UAAU,IAAI,MAAM,EAAE,CAAC;oBACzB,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;gBAC5B,CAAC;gBAED,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;oBACtB,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACrC,SAAS,GAAG;4BACV,iBAAiB,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU;yBACvD,CAAA;oBACH,CAAC;yBAAM,IAAI,MAAM,CAAC,KAAK,YAAY,KAAK,EAAE,CAAC;wBACzC,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;wBACpG,SAAS,GAAG;4BACV,aAAa;4BACb,iBAAiB,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;yBAC3C,CAAA;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,WAAW,IAAI,MAAM,EAAE,CAAC;oBAC1B,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;gBAC9B,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAClD;oBACE,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,QAAQ,EAAE,QAAQ;oBAClB,SAAS;oBACT,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,GAAG,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;oBACzB,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,GAAG,EAAE,SAAS,EAAE,GAAG;oBACnB,GAAG,EAAE,SAAS,EAAE,GAAG;oBACnB,OAAO,EACL,SAAS,EAAE,OAAO,KAAK,SAAS;wBAC9B,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC;4BAChC,CAAC,CAAC,SAAS,CAAC,OAAO;4BACnB,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC;oBAC3B,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,MAAM,EAAE,SAAS,EAAE,MAAM;oBACzB,IAAI,EAAE,SAAS,EAAE,IAAI;oBACrB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;oBACzC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;oBAC3C,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;oBAC/C,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;oBAC7C,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,eAAe,EAAE,MAAM,CAAC,eAAe;oBACvC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;oBACzC,eAAe,EAAE,MAAM,CAAC,eAAe;oBACvC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;oBACzC,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;oBACjD,aAAa,EAAE,MAAM,CAAC,aAAa;oBACnC,OAAO,EAAE,MAAM,CAAC,OAAO;wBACrB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;wBAC1F,CAAC,CAAC,SAAS;iBACd,EACD,SAAS,EACT;oBACE,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,IAAI;iBAChC,CACF,CAAA;gBAED,IAAI,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAA;gBAEnC,IAAI,eAAe,CAAC,KAAK,KAAK,YAAY,CAAC,aAAa,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;oBACzF,MAAM,cAAc,GAAmB;wBACrC,YAAY,CAAC,OAAO;wBACpB,YAAY,CAAC,QAAQ;wBACrB,YAAY,CAAC,KAAK;wBAClB,YAAY,CAAC,YAAY;qBAC1B,CAAA;oBAED,OAAO,eAAe,CAAC,KAAK,KAAK,YAAY,CAAC,aAAa,EAAE,CAAC;wBAC5D,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;4BACpB,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAA;4BAC/C,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;gCAC9B,MAAM,IAAI,mBAAmB,CAC3B,gDAAgD,OAAO,CAAC,OAAO,uDAAuD,CACvH,CAAA;4BACH,CAAC;wBACH,CAAC;wBACD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;wBACzD,eAAe,GAAG,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;oBAC/E,CAAC;oBAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,eAAe,CAAC,EAAE,CAAC,CAAA;oBAE1E,MAAM,wBAAwB,CAC5B,GAAG,EAAE,CACH,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,cAAc,EAAE;wBACxC,MAAM,EAAE,KAAK;wBACb,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO;qBAC/C,CAAC,EACJ,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,EAC1D,KAAK,IAAI,EAAE;wBACT,eAAe,GAAG,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;wBAC7E,OAAO,eAAe,CAAC,KAAK,KAAK,SAAS,IAAI,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;oBAC9F,CAAC,CACF,CAAA;gBACH,CAAC;gBAED,MAAM,OAAO,GAAG,IAAI,OAAO,CACzB,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,EACjD,IAAI,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EACrD,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAClD,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,wBAAwB,EAC7B,IAAI,CAAC,gBAAgB,CACtB,CAAA;gBAED,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAChC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;oBAC1C,MAAM,OAAO,CAAC,gBAAgB,CAC5B,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,GAAG,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAC1F,CAAA;gBACH,CAAC;gBAED,OAAO,OAAO,CAAA;YAChB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,mBAAmB,EAAE,CAAC;oBACzC,MAAM,MAAM,GAAG,6CAA6C,OAAO,CAAC,OAAO,gCAAgC,CAAA;oBAC3G,MAAM,IAAI,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;gBAClG,CAAC;gBAED,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC;QAED;;;;;;;;;WASG;QAEI,KAAK,CAAC,GAAG,CAAC,eAAuB;YACtC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;YAClE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAEvE,OAAO,IAAI,OAAO,CAChB,eAAe,EACf,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,EAClC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAClD,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,wBAAwB,EAC7B,IAAI,CAAC,gBAAgB,CACtB,CAAA;QACH,CAAC;QAED;;;;;;;;;;WAUG;QACI,IAAI,CAAC,KAA0B;YACpC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAA;YACrF,MAAM,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAA;YAClD,MAAM,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACnE,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YAElC,KAAK,SAAS,CAAC,CAAC,SAAS;gBACvB,IAAI,MAAM,GAAuB,SAAS,CAAA;gBAC1C,IAAI,SAAS,GAAG,IAAI,CAAA;gBAEpB,OAAO,IAAI,EAAE,CAAC;oBACZ,gFAAgF;oBAChF,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;wBAC1B,MAAK;oBACP,CAAC;oBAED,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAC3B,wBAAwB,EACxB;wBACE,UAAU,EAAE;4BACV,SAAS,EAAE,SAAS;4BACpB,MAAM,EAAE,MAAM;yBACf;qBACF,EACD,OAAO,CAAC,MAAM,EAAE,CACjB,CAAA;oBAED,IAAI,QAAQ,CAAA;oBACZ,IAAI,CAAC;wBACH,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,CACxE,UAAU,CAAC,aAAa,CACtB,SAAS,EACT,MAAM,EACN,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,EAAE,EACT,KAAK,EAAE,IAAI,EACX,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,EACxD,SAAS,EACT,SAAS,EACT,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,OAAO,EACd,SAAS,EACT,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,QAAQ,EACf,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,iBAAiB,EACxB,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,IAAI,EACX,KAAK,EAAE,KAAK,CACb,CACF,CAAA;wBACD,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC,CAAA;oBAC7C,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,IAAI,CAAC,SAAS,CAAC;4BACb,IAAI,EAAE,cAAc,CAAC,KAAK;4BAC1B,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;yBAChE,CAAC,CAAA;wBACF,IAAI,CAAC,eAAe,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;wBAC/E,MAAM,KAAK,CAAA;oBACb,CAAC;4BAAS,CAAC;wBACT,IAAI,CAAC,GAAG,EAAE,CAAA;oBACZ,CAAC;oBAED,SAAS,GAAG,KAAK,CAAA;oBAEjB,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;wBAC1C,+DAA+D;wBAC/D,MAAM,eAAe,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAA;wBAC5D,MAAM,IAAI,OAAO,CACf,eAAe,EACf,eAAe,CAAC,YAAY,CAAC,EAC7B,OAAO,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAC7C,UAAU,EACV,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,CACjB,CAAA;oBACH,CAAC;oBAED,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,IAAI,SAAS,CAAA;oBAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,MAAK;oBACP,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,SAAS,EAAE,CAAA;QACpB,CAAC;QAEO,KAAK,CAAC,qBAAqB,CAA4C,UAAa;YAC1F,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;gBAC/B,OAAO,UAAU,CAAA;YACnB,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;YACxE,OAAO;gBACL,GAAG,UAAU;gBACb,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG;aACnC,CAAA;QACH,CAAC;QAED;;;;;;;;;;;WAWG;QAEI,KAAK,CAAC,KAAK,CAAC,OAAgB,EAAE,OAAgB;YACnD,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC9B,CAAC;QAED;;;;;;;;;WASG;QAEI,KAAK,CAAC,IAAI,CAAC,OAAgB;YAChC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAA;QACtB,CAAC;QAED;;;;;;;;;;;;;WAaG;QAEI,KAAK,CAAC,IAAI,CAAC,OAAgB,EAAE,MAA0B,EAAE,OAAO,GAAG,EAAE;YAC1E,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC5C,CAAC;QAED;;;WAGG;QACI,KAAK,CAAC,kBAAkB,CAAC,OAAgB,EAAE,MAA0B,EAAE,OAAO,GAAG,EAAE;YACxF,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QAC5C,CAAC;QAED;;;;;;;;;;;WAWG;QAEI,KAAK,CAAC,MAAM,CAAC,OAAgB,EAAE,OAAO,GAAG,EAAE,EAAE,IAAI,GAAG,KAAK;YAC9D,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QACrC,CAAC;QAED;;WAEG;QACI,MAAM,CAAC,mBAAmB,CAAC,gBAAyB;YACzD,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC;gBACjC,OAAO,EAAE,gBAAgB,IAAI,0BAA0B;gBACvD,yEAAyE;gBACzE,sEAAsE;gBACtE,4EAA4E;gBAC5E,YAAY,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;gBACnC,OAAO,EAAE,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;aACvE,CAAC,CAAA;YAEF,yDAAyD;YACzD,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CACpC,CAAC,aAAyC,EAAE,EAAE;gBAC5C,oEAAoE;gBACpE,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;gBAEvC,6EAA6E;gBAC7E,wDAAwD;gBACxD,WAAW,CAAC,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC,OAAO,CAAC,CAGxD;gBAAC,aAAqB,CAAC,QAAQ,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAA;gBAE5D,OAAO,aAAa,CAAA;YACtB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC9B,CAAC,CACF,CAAA;YAED,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CACrC,CAAC,QAAQ,EAAE,EAAE;gBACX,OAAO,QAAQ,CAAA;YACjB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;oBAChC,MAAM,uBAAuB,CAAC,KAAK,CAAC,CAAA;gBACtC,CAAC;gBAED,MAAM,IAAI,YAAY,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YAChF,CAAC,CACF,CAAA;YAED,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CACrC,CAAC,QAAQ,EAAE,EAAE;gBACX,MAAM,SAAS,GAAI,QAAQ,CAAC,MAAc,CAAC,QAAQ,EAAE,SAAS,CAAA;gBAC9D,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;oBAEvC,wCAAwC;oBACxC,MAAM,UAAU,GAAG,KAAK,CAAC,aAAa,EAAE,CAAA;oBACxC,2DAA2D;oBAC3D,IAAI,UAAU,IAAI,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC;wBAC3C,oCAAoC;wBACpC,UAAU,CAAC,aAAa,CAAC;4BACvB,2BAA2B,EAAE,QAAQ,CAAC,MAAM;4BAC5C,2BAA2B,EAAE,QAAQ;4BACrC,oEAAoE;yBACrE,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;gBAED,OAAO,QAAQ,CAAA;YACjB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,MAAM,SAAS,GAAI,KAAK,CAAC,MAAc,EAAE,QAAQ,EAAE,SAAS,CAAA;gBAC5D,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;oBAEvC,0CAA0C;oBAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,aAAa,EAAE,CAAA;oBACxC,2DAA2D;oBAC3D,IAAI,UAAU,IAAI,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC;wBAC3C,UAAU,CAAC,SAAS,CAAC;4BACnB,IAAI,EAAE,cAAc,CAAC,KAAK;4BAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;yBACvB,CAAC,CAAA;wBAEF,UAAU,CAAC,aAAa,CAAC;4BACvB,2BAA2B,EAAE,QAAQ;4BACrC,YAAY,EAAE,KAAK,CAAC,IAAI;4BACxB,eAAe,EAAE,KAAK,CAAC,OAAO;yBAC/B,CAAC,CAAA;wBAEF,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACnB,UAAU,CAAC,YAAY,CAAC,2BAA2B,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;wBAC7E,CAAC;wBAED,mCAAmC;wBACnC,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;oBACnC,CAAC;gBACH,CAAC;gBAED,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC9B,CAAC,CACF,CAAA;YAED,OAAO,aAAa,CAAA;QACtB,CAAC;;;SAn1BU,OAAO"}
|
package/esm/Image.d.ts
CHANGED
|
@@ -245,6 +245,13 @@ export declare class Image {
|
|
|
245
245
|
* @returns {string} The processed Python version.
|
|
246
246
|
*/
|
|
247
247
|
private static processPythonVersion;
|
|
248
|
+
/**
|
|
249
|
+
* Joins backslash-continued physical lines into logical Dockerfile instruction lines.
|
|
250
|
+
*
|
|
251
|
+
* @param {string} dockerfileContent - The content of the Dockerfile.
|
|
252
|
+
* @returns {string[]} The logical instruction lines.
|
|
253
|
+
*/
|
|
254
|
+
private static dockerfileLogicalLines;
|
|
248
255
|
/**
|
|
249
256
|
* Extracts source files from COPY commands in a Dockerfile.
|
|
250
257
|
*
|
package/esm/Image.js
CHANGED
|
@@ -479,6 +479,36 @@ export class Image {
|
|
|
479
479
|
const micro = seriesMap[pythonVersion];
|
|
480
480
|
return `${pythonVersion}.${micro}`;
|
|
481
481
|
}
|
|
482
|
+
/**
|
|
483
|
+
* Joins backslash-continued physical lines into logical Dockerfile instruction lines.
|
|
484
|
+
*
|
|
485
|
+
* @param {string} dockerfileContent - The content of the Dockerfile.
|
|
486
|
+
* @returns {string[]} The logical instruction lines.
|
|
487
|
+
*/
|
|
488
|
+
static dockerfileLogicalLines(dockerfileContent) {
|
|
489
|
+
const logicalLines = [];
|
|
490
|
+
let current = null;
|
|
491
|
+
for (const physicalLine of dockerfileContent.split(/\r?\n/)) {
|
|
492
|
+
const isComment = physicalLine.trimStart().startsWith('#');
|
|
493
|
+
if (current !== null && (!physicalLine.trim() || isComment)) {
|
|
494
|
+
// Docker drops empty and comment lines that appear inside a continued instruction
|
|
495
|
+
continue;
|
|
496
|
+
}
|
|
497
|
+
const stripped = physicalLine.trimEnd();
|
|
498
|
+
// A trailing backslash on a comment line is literal; comments never continue onto the next line
|
|
499
|
+
const continued = !isComment && stripped.endsWith('\\');
|
|
500
|
+
const segment = continued ? stripped.slice(0, -1) : physicalLine;
|
|
501
|
+
current = current === null ? segment : current + segment;
|
|
502
|
+
if (!continued) {
|
|
503
|
+
logicalLines.push(current);
|
|
504
|
+
current = null;
|
|
505
|
+
}
|
|
506
|
+
}
|
|
507
|
+
if (current !== null) {
|
|
508
|
+
logicalLines.push(current);
|
|
509
|
+
}
|
|
510
|
+
return logicalLines;
|
|
511
|
+
}
|
|
482
512
|
/**
|
|
483
513
|
* Extracts source files from COPY commands in a Dockerfile.
|
|
484
514
|
*
|
|
@@ -488,7 +518,7 @@ export class Image {
|
|
|
488
518
|
*/
|
|
489
519
|
static extractCopySources(dockerfileContent, pathPrefix = '') {
|
|
490
520
|
const sources = [];
|
|
491
|
-
const lines =
|
|
521
|
+
const lines = Image.dockerfileLogicalLines(dockerfileContent);
|
|
492
522
|
for (const line of lines) {
|
|
493
523
|
// Skip empty lines and comments
|
|
494
524
|
if (!line.trim() || line.trim().startsWith('#')) {
|
|
@@ -531,50 +561,41 @@ export class Image {
|
|
|
531
561
|
*/
|
|
532
562
|
static parseCopyCommand(line) {
|
|
533
563
|
// Remove initial "COPY" and strip whitespace
|
|
534
|
-
|
|
564
|
+
let parts = line.trim().substring(4).trim();
|
|
565
|
+
// Skip leading flags. Value-taking flags use the --flag=value form (--chown=..., --chmod=...)
|
|
566
|
+
// and boolean flags stand alone (--link), so a flag never consumes the token that follows it.
|
|
567
|
+
while (parts.startsWith('--')) {
|
|
568
|
+
parts = parts.replace(/^\S+\s*/, '');
|
|
569
|
+
}
|
|
535
570
|
// Handle JSON array format: COPY ["src1", "src2", "dest"]
|
|
536
571
|
if (parts.startsWith('[')) {
|
|
572
|
+
let decoded;
|
|
537
573
|
try {
|
|
538
|
-
|
|
539
|
-
const elements = parseShellQuote(parts.replace('[', '').replace(']', '')).filter((x) => typeof x === 'string');
|
|
540
|
-
if (elements.length < 2) {
|
|
541
|
-
return null;
|
|
542
|
-
}
|
|
543
|
-
return {
|
|
544
|
-
sources: elements.slice(0, -1),
|
|
545
|
-
dest: elements[elements.length - 1],
|
|
546
|
-
};
|
|
574
|
+
decoded = JSON.parse(parts);
|
|
547
575
|
}
|
|
548
576
|
catch {
|
|
549
577
|
return null;
|
|
550
578
|
}
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
const splitParts = parseShellQuote(parts).filter((x) => typeof x === 'string');
|
|
554
|
-
// Extract flags like --chown, --chmod, --from
|
|
555
|
-
let sourcesStartIdx = 0;
|
|
556
|
-
for (let i = 0; i < splitParts.length; i++) {
|
|
557
|
-
const part = splitParts[i];
|
|
558
|
-
if (part.startsWith('--')) {
|
|
559
|
-
// Skip the flag and its value if it has one
|
|
560
|
-
if (!part.includes('=') && i + 1 < splitParts.length && !splitParts[i + 1].startsWith('--')) {
|
|
561
|
-
sourcesStartIdx = i + 2;
|
|
562
|
-
}
|
|
563
|
-
else {
|
|
564
|
-
sourcesStartIdx = i + 1;
|
|
565
|
-
}
|
|
579
|
+
if (!Array.isArray(decoded) || !decoded.every((element) => typeof element === 'string')) {
|
|
580
|
+
return null;
|
|
566
581
|
}
|
|
567
|
-
|
|
568
|
-
|
|
582
|
+
if (decoded.length < 2) {
|
|
583
|
+
return null;
|
|
569
584
|
}
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
585
|
+
return {
|
|
586
|
+
sources: decoded.slice(0, -1),
|
|
587
|
+
dest: decoded[decoded.length - 1],
|
|
588
|
+
};
|
|
589
|
+
}
|
|
590
|
+
// Handle the whitespace-separated format
|
|
591
|
+
const elements = parseShellQuote(parts).filter((x) => typeof x === 'string');
|
|
592
|
+
// We need at least one source and one destination
|
|
593
|
+
if (elements.length < 2) {
|
|
573
594
|
return null;
|
|
574
595
|
}
|
|
575
596
|
return {
|
|
576
|
-
sources:
|
|
577
|
-
dest:
|
|
597
|
+
sources: elements.slice(0, -1),
|
|
598
|
+
dest: elements[elements.length - 1],
|
|
578
599
|
};
|
|
579
600
|
}
|
|
580
601
|
}
|