453
return launch;
454
}
456
>
const { section, target, folder } = definition.variableReplacement;
457
>
const inputStorage = this._getInputStorageInConfigTarget(target);
458
>
const [previouslyStored, withRemoteFilled] = await Promise.all([
459
>
inputStorage.getMap(),
460
>
delegate.substituteVariables(definition, launch),
461
>
]);
462
>
463
>
// pre-fill the variables we already resolved to avoid extra prompting
464
>
const expr = ConfigurationResolverExpression.parse(withRemoteFilled);
465
>
for (const replacement of expr.unresolved()) {
466
if (previouslyStored.hasOwnProperty(replacement.id)) {
467
expr.resolve(replacement, previouslyStored[replacement.id]);
468
}
469
}
471
>
// Check if there are still unresolved variables that would require interaction
472
>
if (errorOnUserInteraction) {
473
const unresolved = Array.from(expr.unresolved());
474
if (unresolved.length > 0) {