@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.
@@ -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
- if (!name.startsWith('DAYTONA_')) {
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
- if (exports.RUNTIME !== Runtime.NODE || typeof require === 'undefined')
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
@@ -1 +1 @@
1
- {"version":3,"file":"Runtime.js","sourceRoot":"","sources":["../../../../../sdk-typescript/src/utils/Runtime.ts"],"names":[],"mappings":"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"}
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
- apiUrl = apiUrl || reader.get('DAYTONA_API_URL') || reader.get('DAYTONA_SERVER_URL');
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.get('DAYTONA_SERVER_URL') && !reader.get('DAYTONA_API_URL')) {
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) => {
@@ -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":"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"}
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 = dockerfileContent.split('\n');
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
- const parts = line.trim().substring(4).trim();
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
- // Parse the JSON-like array format
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
- // Handle regular format with possible flags
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
- else {
568
- break;
582
+ if (decoded.length < 2) {
583
+ return null;
569
584
  }
570
- }
571
- // After skipping flags, we need at least one source and one destination
572
- if (splitParts.length - sourcesStartIdx < 2) {
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: splitParts.slice(sourcesStartIdx, -1),
577
- dest: splitParts[splitParts.length - 1],
597
+ sources: elements.slice(0, -1),
598
+ dest: elements[elements.length - 1],
578
599
  };
579
600
  }
580
601
  }