@salesforce/b2c-tooling-sdk 2.4.0 → 2.5.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/data/schemas/dw.schema.json +14 -0
- package/data/tooling/index.json +5 -5
- package/dist/esm/cli/base-command.js +4 -3
- package/dist/esm/cli/base-command.js.map +1 -1
- package/dist/esm/cli/cartridge-command.js +2 -1
- package/dist/esm/cli/cartridge-command.js.map +1 -1
- package/dist/esm/cli/config.js +3 -1
- package/dist/esm/cli/config.js.map +1 -1
- package/dist/esm/cli/hooks.d.ts +13 -0
- package/dist/esm/cli/hooks.js +11 -0
- package/dist/esm/cli/hooks.js.map +1 -1
- package/dist/esm/cli/instance-command.js +2 -1
- package/dist/esm/cli/instance-command.js.map +1 -1
- package/dist/esm/clients/scapi-backend-utils.d.ts +15 -0
- package/dist/esm/clients/scapi-backend-utils.js +28 -1
- package/dist/esm/clients/scapi-backend-utils.js.map +1 -1
- package/dist/esm/clients/scapi-fallback-backend.js +2 -2
- package/dist/esm/clients/scapi-fallback-backend.js.map +1 -1
- package/dist/esm/clients/scapi-schemas.generated.d.ts +2 -2
- package/dist/esm/compat/dispatcher.js +2 -2
- package/dist/esm/compat/dispatcher.js.map +1 -1
- package/dist/esm/config/config-origins.d.ts +19 -0
- package/dist/esm/config/config-origins.js +11 -0
- package/dist/esm/config/config-origins.js.map +1 -0
- package/dist/esm/config/config-write.d.ts +86 -0
- package/dist/esm/config/config-write.js +296 -0
- package/dist/esm/config/config-write.js.map +1 -0
- package/dist/esm/config/dw-json-schema.js +4 -0
- package/dist/esm/config/dw-json-schema.js.map +1 -1
- package/dist/esm/config/dw-json.d.ts +2 -0
- package/dist/esm/config/dw-json.js +10 -6
- package/dist/esm/config/dw-json.js.map +1 -1
- package/dist/esm/config/index.d.ts +8 -3
- package/dist/esm/config/index.js +5 -2
- package/dist/esm/config/index.js.map +1 -1
- package/dist/esm/config/instance-manager.d.ts +64 -28
- package/dist/esm/config/instance-manager.js +145 -63
- package/dist/esm/config/instance-manager.js.map +1 -1
- package/dist/esm/config/mapping.js +6 -0
- package/dist/esm/config/mapping.js.map +1 -1
- package/dist/esm/config/resolver.d.ts +22 -0
- package/dist/esm/config/resolver.js +54 -29
- package/dist/esm/config/resolver.js.map +1 -1
- package/dist/esm/config/sources/dw-json-source.d.ts +9 -1
- package/dist/esm/config/sources/dw-json-source.js +34 -20
- package/dist/esm/config/sources/dw-json-source.js.map +1 -1
- package/dist/esm/config/sources/env-source.d.ts +30 -3
- package/dist/esm/config/sources/env-source.js +126 -1
- package/dist/esm/config/sources/env-source.js.map +1 -1
- package/dist/esm/config/types.d.ts +46 -0
- package/dist/esm/operations/jobs/run-system-job.js +2 -2
- package/dist/esm/operations/jobs/run-system-job.js.map +1 -1
- package/dist/esm/plugins/discovery.js +2 -1
- package/dist/esm/plugins/discovery.js.map +1 -1
- package/dist/esm/scapi/index.d.ts +5 -2
- package/dist/esm/scapi/index.js +3 -2
- package/dist/esm/scapi/index.js.map +1 -1
- package/dist/esm/scapi/live.d.ts +12 -1
- package/dist/esm/scapi/live.js +30 -2
- package/dist/esm/scapi/live.js.map +1 -1
- package/dist/esm/scapi/local.d.ts +17 -0
- package/dist/esm/scapi/local.js +68 -16
- package/dist/esm/scapi/local.js.map +1 -1
- package/dist/esm/scapi/request.d.ts +2 -2
- package/dist/esm/scapi/request.js +2 -1
- package/dist/esm/scapi/request.js.map +1 -1
- package/dist/esm/scapi/runtime.d.ts +5 -0
- package/dist/esm/scapi/runtime.js.map +1 -1
- package/dist/esm/scapi/schema-source.d.ts +90 -0
- package/dist/esm/scapi/schema-source.js +146 -0
- package/dist/esm/scapi/schema-source.js.map +1 -0
- package/dist/esm/scapi/worker-source.js +30 -6
- package/dist/esm/scapi/worker-source.js.map +1 -1
- package/dist/esm/test-utils/config-isolation.js +9 -2
- package/dist/esm/test-utils/config-isolation.js.map +1 -1
- package/node_modules/@salesforce/b2c-api-schemas/manifest.json +83 -42
- package/node_modules/@salesforce/b2c-api-schemas/package.json +1 -1
- package/node_modules/@salesforce/b2c-api-schemas/scapi/cdn/zones/v1.json +6798 -238
- package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/orders/v1.json +2296 -205
- package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-baskets/v1.json +5571 -666
- package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-baskets/v2.json +6062 -371
- package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-orders/v1.json +3426 -360
- package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-payments/v1.json +351 -99
- package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/cors/v1.json +172 -12
- package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/preferences/v1.json +1497 -111
- package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/shopper-configurations/v1.json +202 -36
- package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/timeouts/v1.json +79 -10
- package/node_modules/@salesforce/b2c-api-schemas/scapi/custom-object/custom-objects/v1.json +785 -49
- package/node_modules/@salesforce/b2c-api-schemas/scapi/custom-object/shopper-custom-objects/v1.json +191 -40
- package/node_modules/@salesforce/b2c-api-schemas/scapi/customer/customers/v1.json +1483 -107
- package/node_modules/@salesforce/b2c-api-schemas/scapi/customer/shopper-customers/v1.json +4854 -787
- package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/custom-apis/v1.json +119 -15
- package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/object-definitions/v1.json +1699 -80
- package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/scapi-schemas/v1.json +252 -18
- package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/scripts/v1.json +329 -23
- package/node_modules/@salesforce/b2c-api-schemas/scapi/experience/experiences/v1.json +4208 -234
- package/node_modules/@salesforce/b2c-api-schemas/scapi/experience/shopper-experience/v1.json +1591 -247
- package/node_modules/@salesforce/b2c-api-schemas/scapi/intelligence/analytics/v1.json +396 -8
- package/node_modules/@salesforce/b2c-api-schemas/scapi/inventory/availability/v1.json +1242 -69
- package/node_modules/@salesforce/b2c-api-schemas/scapi/inventory/impex/v1.json +2354 -248
- package/node_modules/@salesforce/b2c-api-schemas/scapi/inventory/reservation/v1.json +1550 -45
- package/node_modules/@salesforce/b2c-api-schemas/scapi/inventory/segmentation/v1.json +6615 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/merchant/roles/v1.json +1520 -59
- package/node_modules/@salesforce/b2c-api-schemas/scapi/merchant/users/v1.json +397 -17
- package/node_modules/@salesforce/b2c-api-schemas/scapi/observability/metrics/v1.json +1241 -27
- package/node_modules/@salesforce/b2c-api-schemas/scapi/operation/jobs/v1.json +1069 -68
- package/node_modules/@salesforce/b2c-api-schemas/scapi/operation/replications/v1.json +410 -23
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/assignments/v1.json +502 -102
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/campaigns/v1.json +1112 -94
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/coupons/v1.json +820 -93
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/gift-certificates/v1.json +845 -92
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/promotions/v1.json +2716 -674
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/shopper-gift-certificates/v1.json +130 -47
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/shopper-promotions/v1.json +233 -63
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/source-code-groups/v1.json +630 -70
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/catalogs/v1.json +2886 -348
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/inventory-lists/v1.json +520 -19
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/price-books/v1.json +3115 -293
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/products/v1.json +3313 -138
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/shopper-availability/v1.json +266 -52
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/shopper-delivery-estimates/v1.json +256 -48
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/shopper-products/v1.json +1744 -306
- package/node_modules/@salesforce/b2c-api-schemas/scapi/search/shopper-search/v1.json +1661 -120
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/auth/v1.json +2174 -118
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/auth-admin/v1.json +1373 -24
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/consents/v1.json +531 -20
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/shopper-agents/v1.json +154 -6
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/shopper-consents/v1.json +596 -79
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/shopper-context/v1.json +456 -42
- package/node_modules/@salesforce/b2c-api-schemas/scapi/site/seo/v1.json +101 -23
- package/node_modules/@salesforce/b2c-api-schemas/scapi/site/shopper-seo/v1.json +184 -41
- package/node_modules/@salesforce/b2c-api-schemas/scapi/site/sites/v1.json +995 -47
- package/node_modules/@salesforce/b2c-api-schemas/scapi/store/shopper-stores/v1.json +370 -67
- package/node_modules/@salesforce/b2c-api-schemas/scapi/store/store-redirect-mappings/v1.json +319 -11
- package/node_modules/@salesforce/b2c-api-schemas/scapi/store/stores/v1.json +1109 -64
- package/node_modules/@salesforce/b2c-api-schemas/scapi/storefront/deployments/v1.json +1442 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/storefront/environments/v1.json +4293 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/storefront/storefronts/v1.json +1371 -0
- package/package.json +2 -2
- package/specs/scapi-schemas-v1.yaml +4 -1
|
@@ -4,6 +4,7 @@ import { mergeConfigsWithProtection, getPopulatedFields, createInstanceFromConfi
|
|
|
4
4
|
import { DwJsonSource, MobifySource, PackageJsonSource } from './sources/index.js';
|
|
5
5
|
import { ResolvedConfigImpl } from './resolved-config.js';
|
|
6
6
|
import { globalConfigSourceRegistry } from './config-source-registry.js';
|
|
7
|
+
import { getConfigOrigins, recordConfigOrigins } from './config-origins.js';
|
|
7
8
|
/**
|
|
8
9
|
* Credential groups that must come from the same source.
|
|
9
10
|
*
|
|
@@ -11,7 +12,7 @@ import { globalConfigSourceRegistry } from './config-source-registry.js';
|
|
|
11
12
|
* higher-priority source, all fields in that group from lower-priority
|
|
12
13
|
* sources are skipped. This prevents mixing credentials that don't belong together.
|
|
13
14
|
*/
|
|
14
|
-
const CREDENTIAL_GROUPS = [
|
|
15
|
+
export const CREDENTIAL_GROUPS = [
|
|
15
16
|
['clientId', 'clientSecret'],
|
|
16
17
|
['username', 'password'],
|
|
17
18
|
['slasClientId', 'slasClientSecret'],
|
|
@@ -131,6 +132,7 @@ export class ConfigResolver {
|
|
|
131
132
|
*/
|
|
132
133
|
async resolve(overrides = {}, options = {}) {
|
|
133
134
|
const sourceInfos = [];
|
|
135
|
+
const origins = [];
|
|
134
136
|
const sourceWarnings = [];
|
|
135
137
|
const baseConfig = {};
|
|
136
138
|
const hostnameProtection = options.hostnameProtection !== false;
|
|
@@ -155,8 +157,9 @@ export class ConfigResolver {
|
|
|
155
157
|
// Earlier sources have higher priority - later sources only fill in missing values
|
|
156
158
|
for (const source of this.sources) {
|
|
157
159
|
let result;
|
|
160
|
+
const loadOptions = { ...enrichedOptions };
|
|
158
161
|
try {
|
|
159
|
-
result = await source.load(
|
|
162
|
+
result = await source.load(loadOptions);
|
|
160
163
|
}
|
|
161
164
|
catch (error) {
|
|
162
165
|
// Source threw an error (e.g., malformed config file) - create warning and continue
|
|
@@ -243,14 +246,16 @@ export class ConfigResolver {
|
|
|
243
246
|
if (fieldKey === 'hostname')
|
|
244
247
|
hostnameSourceName = source.name;
|
|
245
248
|
}
|
|
246
|
-
|
|
249
|
+
const info = {
|
|
247
250
|
name: source.name,
|
|
248
251
|
scope,
|
|
249
252
|
location,
|
|
250
253
|
fields,
|
|
251
254
|
fieldsIgnored: fieldsIgnored.length > 0 ? fieldsIgnored : undefined,
|
|
252
255
|
instanceCatalog,
|
|
253
|
-
}
|
|
256
|
+
};
|
|
257
|
+
sourceInfos.push(info);
|
|
258
|
+
origins.push({ source, info, options: loadOptions });
|
|
254
259
|
const logger = getLogger();
|
|
255
260
|
logger.trace({
|
|
256
261
|
source: source.name,
|
|
@@ -289,6 +294,12 @@ export class ConfigResolver {
|
|
|
289
294
|
if (config.tenantId) {
|
|
290
295
|
config.tenantId = normalizeTenantId(config.tenantId);
|
|
291
296
|
}
|
|
297
|
+
// Derived values record the source of the field they came from, so writes
|
|
298
|
+
// (`setup set`) and diagnostics can follow them back to it.
|
|
299
|
+
const derivedFrom = (field) => {
|
|
300
|
+
const supplier = sourceInfos.find((info) => info.fields.includes(field) && !info.fieldsIgnored?.includes(field));
|
|
301
|
+
return supplier ? { field, source: supplier.name, location: supplier.location } : { field };
|
|
302
|
+
};
|
|
292
303
|
// Sandbox tenant IDs determine the hostname, so a configuration with only a
|
|
293
304
|
// tenant (for example a Storefront Next organization ID) still reaches the
|
|
294
305
|
// instance. Other tenants are ambiguous and never derive a hostname.
|
|
@@ -300,6 +311,7 @@ export class ConfigResolver {
|
|
|
300
311
|
name: 'SandboxTenantId',
|
|
301
312
|
location: `derived from tenant ID ${config.tenantId}`,
|
|
302
313
|
fields: ['hostname'],
|
|
314
|
+
derivedFrom: derivedFrom('tenantId'),
|
|
303
315
|
});
|
|
304
316
|
}
|
|
305
317
|
}
|
|
@@ -314,6 +326,7 @@ export class ConfigResolver {
|
|
|
314
326
|
name: 'SandboxHostname',
|
|
315
327
|
location: `derived from hostname ${config.hostname}`,
|
|
316
328
|
fields: ['tenantId'],
|
|
329
|
+
derivedFrom: derivedFrom('hostname'),
|
|
317
330
|
});
|
|
318
331
|
}
|
|
319
332
|
else if (config.tenantId.toLowerCase() !== sandboxTenantId) {
|
|
@@ -326,7 +339,9 @@ export class ConfigResolver {
|
|
|
326
339
|
}
|
|
327
340
|
// Combine source warnings with merge warnings
|
|
328
341
|
const warnings = [...sourceWarnings, ...mergeWarnings];
|
|
329
|
-
|
|
342
|
+
const resolution = { config, warnings, sources: sourceInfos };
|
|
343
|
+
recordConfigOrigins(resolution, origins);
|
|
344
|
+
return resolution;
|
|
330
345
|
}
|
|
331
346
|
/**
|
|
332
347
|
* Creates a B2CInstance from resolved configuration.
|
|
@@ -409,6 +424,35 @@ export class ConfigResolver {
|
|
|
409
424
|
export function createConfigResolver() {
|
|
410
425
|
return new ConfigResolver();
|
|
411
426
|
}
|
|
427
|
+
/**
|
|
428
|
+
* Build the sources {@link resolveConfig} reads, in priority order.
|
|
429
|
+
*
|
|
430
|
+
* Includes the defaults (dw.json, ~/.mobify, package.json) unless
|
|
431
|
+
* `replaceDefaultSources` is set, `sourcesBefore`/`sourcesAfter`, and every
|
|
432
|
+
* source in {@link globalConfigSourceRegistry} (for example, sources that
|
|
433
|
+
* plugins register through the `b2c:config-sources` hook). Use it to work with
|
|
434
|
+
* the same sources outside resolution, as `b2c setup instance` does through
|
|
435
|
+
* `InstanceManager`.
|
|
436
|
+
*
|
|
437
|
+
* @param options - Source options
|
|
438
|
+
* @returns Sources sorted by priority (lower number first)
|
|
439
|
+
*/
|
|
440
|
+
export function createConfigSources(options = {}) {
|
|
441
|
+
// Globally registered sources (from plugins via B2CPluginManager or direct SDK registration).
|
|
442
|
+
// Always included regardless of replaceDefaultSources — global sources are explicitly registered
|
|
443
|
+
// by plugins and should always participate, matching the middleware registry behavior.
|
|
444
|
+
const globalSources = globalConfigSourceRegistry.getSources();
|
|
445
|
+
const defaultSources = options.replaceDefaultSources
|
|
446
|
+
? []
|
|
447
|
+
: [new DwJsonSource(), new MobifySource(), new PackageJsonSource()];
|
|
448
|
+
const sources = [
|
|
449
|
+
...(options.sourcesBefore ?? []),
|
|
450
|
+
...defaultSources,
|
|
451
|
+
...(options.sourcesAfter ?? []),
|
|
452
|
+
...globalSources,
|
|
453
|
+
];
|
|
454
|
+
return sources.sort((a, b) => (a.priority ?? 0) - (b.priority ?? 0));
|
|
455
|
+
}
|
|
412
456
|
/**
|
|
413
457
|
* Resolves configuration from multiple sources and returns a rich config object.
|
|
414
458
|
*
|
|
@@ -449,29 +493,10 @@ export function createConfigResolver() {
|
|
|
449
493
|
* @returns Resolved configuration with factory methods
|
|
450
494
|
*/
|
|
451
495
|
export async function resolveConfig(overrides = {}, options = {}) {
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
// 1. sourcesBefore (high priority - override defaults)
|
|
458
|
-
// 2. default sources (dw.json, ~/.mobify, package.json)
|
|
459
|
-
// 3. sourcesAfter (low priority - fill gaps)
|
|
460
|
-
// 4. global registry sources (sorted by their own priority)
|
|
461
|
-
let sources;
|
|
462
|
-
if (options.replaceDefaultSources) {
|
|
463
|
-
// Replace mode: only use provided sources (no default dw.json/~/.mobify/package.json)
|
|
464
|
-
sources = [...(options.sourcesBefore ?? []), ...(options.sourcesAfter ?? []), ...globalSources];
|
|
465
|
-
}
|
|
466
|
-
else {
|
|
467
|
-
// Normal mode: before + defaults + after + global
|
|
468
|
-
const defaultSources = [new DwJsonSource(), new MobifySource(), new PackageJsonSource()];
|
|
469
|
-
// Combine all sources
|
|
470
|
-
sources = [...(options.sourcesBefore ?? []), ...defaultSources, ...(options.sourcesAfter ?? []), ...globalSources];
|
|
471
|
-
}
|
|
472
|
-
// ConfigResolver constructor will sort by priority
|
|
473
|
-
const resolver = new ConfigResolver(sources);
|
|
474
|
-
const { config, warnings, sources: sourceInfos } = await resolver.resolve(overrides, options);
|
|
475
|
-
return new ResolvedConfigImpl(config, warnings, sourceInfos);
|
|
496
|
+
const resolver = new ConfigResolver(createConfigSources(options));
|
|
497
|
+
const resolution = await resolver.resolve(overrides, options);
|
|
498
|
+
const resolved = new ResolvedConfigImpl(resolution.config, resolution.warnings, resolution.sources);
|
|
499
|
+
recordConfigOrigins(resolved, getConfigOrigins(resolution));
|
|
500
|
+
return resolved;
|
|
476
501
|
}
|
|
477
502
|
//# sourceMappingURL=resolver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/config/resolver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/config/resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ConfigSource, ConfigLoadResult, ResolveConfigOptions, InstanceInfo, CreateInstanceOptions } from '../types.js';
|
|
1
|
+
import type { ConfigSource, ConfigLoadResult, ResolveConfigOptions, InstanceInfo, CreateInstanceOptions, ConfigUpdateResult, NormalizedConfig } from '../types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Configuration source that loads from dw.json files.
|
|
4
4
|
*
|
|
@@ -18,6 +18,14 @@ export declare class DwJsonSource implements ConfigSource {
|
|
|
18
18
|
* @returns The loaded configuration and file location, or undefined if dw.json is not found
|
|
19
19
|
*/
|
|
20
20
|
load(options: ResolveConfigOptions): Promise<ConfigLoadResult | undefined>;
|
|
21
|
+
/**
|
|
22
|
+
* Update fields of the entry {@link load} selects for the same options.
|
|
23
|
+
*
|
|
24
|
+
* @throws Error if no entry is selected or a field has no dw.json key
|
|
25
|
+
*/
|
|
26
|
+
updateConfig(patch: Partial<NormalizedConfig>, options: ResolveConfigOptions): Promise<ConfigUpdateResult>;
|
|
27
|
+
/** Select the named, active, or root entry across the catalog files, in order. */
|
|
28
|
+
private selectEntry;
|
|
21
29
|
/**
|
|
22
30
|
* List all instances from dw.json.
|
|
23
31
|
*/
|
|
@@ -10,8 +10,9 @@
|
|
|
10
10
|
*/
|
|
11
11
|
import { existsSync } from 'node:fs';
|
|
12
12
|
import path from 'node:path';
|
|
13
|
-
import { loadDwJson, loadFullDwJson, addInstance, removeInstance, saveDwJson, setActiveInstance } from '../dw-json.js';
|
|
14
|
-
import {
|
|
13
|
+
import { loadDwJson, loadFullDwJson, addInstance, removeInstance, saveDwJson, setActiveInstance, updateInstanceConfig, } from '../dw-json.js';
|
|
14
|
+
import { listConfigKeys } from '../config-write.js';
|
|
15
|
+
import { getPopulatedFields, kebabToCamelCase, mapDwJsonToNormalizedConfig, mapNormalizedConfigToDwJson, } from '../mapping.js';
|
|
15
16
|
import { getLogger } from '../../logging/logger.js';
|
|
16
17
|
/**
|
|
17
18
|
* Select the explicit, project-local, or global-default dw.json path.
|
|
@@ -152,24 +153,7 @@ export class DwJsonSource {
|
|
|
152
153
|
throw new Error(`Config file not found: ${path.resolve(options.configPath)}`);
|
|
153
154
|
}
|
|
154
155
|
const configPaths = selectConfigPaths(options);
|
|
155
|
-
|
|
156
|
-
if (options.instance) {
|
|
157
|
-
for (const configPath of configPaths) {
|
|
158
|
-
result = await loadDwJson({ instance: options.instance, path: configPath });
|
|
159
|
-
if (result)
|
|
160
|
-
break;
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
else {
|
|
164
|
-
for (const configPath of configPaths) {
|
|
165
|
-
result = await loadActiveConfig(configPath);
|
|
166
|
-
if (!result) {
|
|
167
|
-
result = await loadDefaultConfig(configPath);
|
|
168
|
-
}
|
|
169
|
-
if (result)
|
|
170
|
-
break;
|
|
171
|
-
}
|
|
172
|
-
}
|
|
156
|
+
const result = await this.selectEntry(configPaths, options);
|
|
173
157
|
const instanceCatalog = createInstanceCatalog(configPaths, result?.path, options);
|
|
174
158
|
if (!result) {
|
|
175
159
|
if (instanceCatalog.length > 0) {
|
|
@@ -184,6 +168,36 @@ export class DwJsonSource {
|
|
|
184
168
|
logger.trace({ location: result.path, scope, fields }, '[DwJsonSource] Loaded config');
|
|
185
169
|
return { config, location: result.path, scope, instanceCatalog };
|
|
186
170
|
}
|
|
171
|
+
/**
|
|
172
|
+
* Update fields of the entry {@link load} selects for the same options.
|
|
173
|
+
*
|
|
174
|
+
* @throws Error if no entry is selected or a field has no dw.json key
|
|
175
|
+
*/
|
|
176
|
+
async updateConfig(patch, options) {
|
|
177
|
+
const selected = await this.selectEntry(selectConfigPaths(options), options);
|
|
178
|
+
if (!selected)
|
|
179
|
+
throw new Error('No dw.json entry is selected to update.');
|
|
180
|
+
const dwPatch = {};
|
|
181
|
+
for (const [field, value] of Object.entries(patch)) {
|
|
182
|
+
const key = listConfigKeys().find((entry) => entry.field === field);
|
|
183
|
+
if (!key)
|
|
184
|
+
throw new Error(`${field} can't be stored in dw.json.`);
|
|
185
|
+
dwPatch[kebabToCamelCase(key.key)] = value;
|
|
186
|
+
}
|
|
187
|
+
const result = await updateInstanceConfig(dwPatch, { path: selected.path, instance: selected.config.name });
|
|
188
|
+
return { location: result.path, instance: result.name };
|
|
189
|
+
}
|
|
190
|
+
/** Select the named, active, or root entry across the catalog files, in order. */
|
|
191
|
+
async selectEntry(configPaths, options) {
|
|
192
|
+
for (const configPath of configPaths) {
|
|
193
|
+
const result = options.instance
|
|
194
|
+
? await loadDwJson({ instance: options.instance, path: configPath })
|
|
195
|
+
: ((await loadActiveConfig(configPath)) ?? (await loadDefaultConfig(configPath)));
|
|
196
|
+
if (result)
|
|
197
|
+
return result;
|
|
198
|
+
}
|
|
199
|
+
return undefined;
|
|
200
|
+
}
|
|
187
201
|
/**
|
|
188
202
|
* List all instances from dw.json.
|
|
189
203
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dw-json-source.js","sourceRoot":"","sources":["../../../../src/config/sources/dw-json-source.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;;;;GAIG;AACH,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AACnC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,
|
|
1
|
+
{"version":3,"file":"dw-json-source.js","sourceRoot":"","sources":["../../../../src/config/sources/dw-json-source.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;;;;GAIG;AACH,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AACnC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EACL,UAAU,EACV,cAAc,EACd,WAAW,EACX,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,2BAA2B,EAC3B,2BAA2B,GAC5B,MAAM,eAAe,CAAC;AAWvB,OAAO,EAAC,SAAS,EAAC,MAAM,yBAAyB,CAAC;AAElD;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,OAA6B;IACrD,IAAI,OAAO,CAAC,UAAU,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAC9F,IAAI,OAAO,CAAC,UAAU;QAAE,OAAO,OAAO,CAAC,UAAU,CAAC;IAElD,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC;IACtH,IAAI,UAAU,CAAC,iBAAiB,CAAC;QAAE,OAAO,iBAAiB,CAAC;IAE5D,OAAO,OAAO,CAAC,iBAAiB,CAAC;AACnC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,OAA6B;IACtD,IAAI,OAAO,CAAC,UAAU,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IACzC,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACtD,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAC5F,CAAC;IAEF,IAAI,UAAU,CAAC,WAAW,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1G,IAAI,iBAAiB,IAAI,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC7F,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,gGAAgG;AAChG,SAAS,kBAAkB,CAAC,UAAkB,EAAE,OAA6B;IAC3E,IAAI,CAAC,OAAO,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC;IAE7C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAC9B,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAClH,CAAC;IACF,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC9C,OAAO,YAAY,KAAK,WAAW,IAAI,YAAY,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAClG,CAAC;AAED,8DAA8D;AAC9D,SAAS,qBAAqB,CAC5B,WAAqB,EACrB,YAAgC,EAChC,OAA6B;IAE7B,MAAM,sBAAsB,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACrF,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACtC,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,kBAAkB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QACrE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,sBAAsB;KAC9D,CAAC,CAAC,CAAC;AACN,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,UAAkB,EAAE,UAAkB;IACzE,IAAI,MAAkD,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,cAAc,CAAC,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,SAAS,EAAE,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,OAAO,EAAC,EAAE,+DAA+D,CAAC,CAAC;QACpG,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAEvB,MAAM,SAAS,GAAmB,EAAE,CAAC;IACrC,MAAM,EAAC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAC,GAAG,MAAM,CAAC;IAC1C,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,SAAS,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,UAAU;SACrB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACxC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,SAAS,CAAC,IAAI,CAAC;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,UAAU;gBAClB,QAAQ,EAAE,UAAU;aACrB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,UAAkB;IAChD,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC,CAAC;IACtD,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAE5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC;IACzE,IAAI,MAAM,EAAE,IAAI;QAAE,OAAO,UAAU,CAAC,EAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAC,CAAC,CAAC;IAC/E,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QAChC,OAAO,UAAU,CAAC,EAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAC,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,mFAAmF;AACnF,KAAK,UAAU,iBAAiB,CAAC,UAAkB;IACjD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK;QAAE,OAAO,SAAS,CAAC;IAErD,MAAM,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1D,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACpE,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,YAAY;IACd,IAAI,GAAG,cAAc,CAAC;IACtB,QAAQ,GAAG,CAAC,CAAC;IAEtB;;;;;;;;;OASG;IACH,KAAK,CAAC,IAAI,CAAC,OAA6B;QACtC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAE3B,yFAAyF;QACzF,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAChF,CAAC;QAED,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAE5D,MAAM,eAAe,GAAG,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAClF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,CAAC,KAAK,CAAC,EAAC,eAAe,EAAC,EAAE,+DAA+D,CAAC,CAAC;gBACjG,OAAO,EAAC,MAAM,EAAE,EAAE,EAAE,eAAe,EAAC,CAAC;YACvC,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QAE9E,MAAM,CAAC,KAAK,CAAC,EAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAC,EAAE,8BAA8B,CAAC,CAAC;QAErF,OAAO,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,EAAC,CAAC;IACjE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,KAAgC,EAAE,OAA6B;QAChF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;QAC7E,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAE1E,MAAM,OAAO,GAA4B,EAAE,CAAC;QAC5C,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACnD,MAAM,GAAG,GAAG,cAAc,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;YACpE,IAAI,CAAC,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,8BAA8B,CAAC,CAAC;YAClE,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;QAC7C,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,OAAO,EAAE,EAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAC,CAAC,CAAC;QAC1G,OAAO,EAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAC,CAAC;IACxD,CAAC;IAED,kFAAkF;IAC1E,KAAK,CAAC,WAAW,CACvB,WAAqB,EACrB,OAA6B;QAE7B,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ;gBAC7B,CAAC,CAAC,MAAM,UAAU,CAAC,EAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAC,CAAC;gBAClE,CAAC,CAAC,CAAC,CAAC,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACpF,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAC;QAC5B,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,OAA8B;QAChD,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;QACjG,MAAM,SAAS,GAAmB,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,KAAK,MAAM,QAAQ,IAAI,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;gBAC1E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9B,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACzB,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,OAAqD;QACxE,MAAM,YAAY,GAAG,2BAA2B,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/E,MAAM,WAAW,CAAC,YAAY,EAAE;YAC9B,IAAI,EAAE,gBAAgB,CAAC,OAAO,CAAC;YAC/B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB;YACtE,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,SAAS;YAAE,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,IAAY,EAAE,OAA8B;QAC/D,IAAI,CAAC,OAAO;YAAE,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC;QAE1C,KAAK,MAAM,UAAU,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;YACpD,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACrE,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACzD,OAAO,cAAc,CAAC,IAAI,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,aAAa,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,IAAY,EAAE,OAA8B;QAClE,IAAI,CAAC,OAAO;YAAE,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,UAA8B,CAAC;QACnC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACrE,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACzD,UAAU,GAAG,UAAU,CAAC;gBACxB,MAAM;YACR,CAAC;QACH,CAAC;QACD,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,aAAa,CAAC,CAAC;QAEjE,MAAM,iBAAiB,CAAC,IAAI,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC,CAAC;QAClD,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,UAAU,KAAK,UAAU;gBAAE,SAAS;YACxC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM;gBAAE,SAAS;YAEtB,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;gBAClC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;gBAC7B,OAAO,GAAG,IAAI,CAAC;YACjB,CAAC;YACD,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;gBACnD,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;oBAC7B,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC;oBACxB,OAAO,GAAG,IAAI,CAAC;gBACjB,CAAC;YACH,CAAC;YACD,IAAI,OAAO;gBAAE,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ConfigSource, ConfigLoadResult, NormalizedConfig, ResolveConfigOptions } from '../types.js';
|
|
1
|
+
import type { ConfigSource, ConfigLoadResult, ConfigUpdateResult, NormalizedConfig, ResolveConfigOptions } from '../types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Storefront Next variables accepted as fallbacks for equivalent toolkit settings.
|
|
4
4
|
*
|
|
@@ -49,6 +49,25 @@ export declare class EnvSource implements ConfigSource {
|
|
|
49
49
|
constructor(env?: Record<string, string | undefined>, options?: EnvSourceOptions);
|
|
50
50
|
load(_options: ResolveConfigOptions): ConfigLoadResult | undefined;
|
|
51
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* The project `.env` file, as a writable configuration source.
|
|
54
|
+
*
|
|
55
|
+
* Reads like {@link EnvSource}. Writes edit the file in place: the
|
|
56
|
+
* highest-precedence variable already present for a field is replaced,
|
|
57
|
+
* otherwise the field's canonical (highest-precedence) variable is appended. Removing a field
|
|
58
|
+
* deletes every variable that maps to it.
|
|
59
|
+
*
|
|
60
|
+
* @internal
|
|
61
|
+
*/
|
|
62
|
+
export declare class DotenvFileSource extends EnvSource {
|
|
63
|
+
private readonly filePath;
|
|
64
|
+
/**
|
|
65
|
+
* @param filePath - The .env file
|
|
66
|
+
* @param env - Values applied from the file (defaults to the file's contents)
|
|
67
|
+
*/
|
|
68
|
+
constructor(filePath: string, env?: Record<string, string | undefined>);
|
|
69
|
+
updateConfig(patch: Partial<NormalizedConfig>, _options: ResolveConfigOptions): ConfigUpdateResult;
|
|
70
|
+
}
|
|
52
71
|
/**
|
|
53
72
|
* Configuration source for Storefront Next environment variables
|
|
54
73
|
* (`PUBLIC__app__commerce__api__*`, `COMMERCE_API_SLAS_SECRET`, `PUBLIC__app__defaultSiteId`).
|
|
@@ -64,12 +83,20 @@ export declare class EnvSource implements ConfigSource {
|
|
|
64
83
|
export declare class StorefrontNextEnvSource implements ConfigSource {
|
|
65
84
|
readonly name: string;
|
|
66
85
|
readonly priority = 1;
|
|
86
|
+
/**
|
|
87
|
+
* Present when every value came from one .env file: writes there use toolkit
|
|
88
|
+
* (`SFCC_*`) variables. Settings the Storefront Next variables hold are
|
|
89
|
+
* refused, since those belong to the storefront app.
|
|
90
|
+
*/
|
|
91
|
+
readonly updateConfig?: (patch: Partial<NormalizedConfig>, options: ResolveConfigOptions) => ConfigUpdateResult;
|
|
67
92
|
private readonly env;
|
|
68
93
|
private readonly location;
|
|
69
94
|
/**
|
|
70
95
|
* @param env - Environment object to read from. Defaults to `process.env`.
|
|
71
|
-
* @param options - Diagnostic name and location
|
|
96
|
+
* @param options - Diagnostic name and location; `envFile` makes the source writable
|
|
72
97
|
*/
|
|
73
|
-
constructor(env?: Record<string, string | undefined>, options?: EnvSourceOptions
|
|
98
|
+
constructor(env?: Record<string, string | undefined>, options?: EnvSourceOptions & {
|
|
99
|
+
envFile?: string;
|
|
100
|
+
});
|
|
74
101
|
load(_options: ResolveConfigOptions): ConfigLoadResult | undefined;
|
|
75
102
|
}
|
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Environment variable configuration source.
|
|
8
|
+
*
|
|
9
|
+
* Maps CLI configuration environment variables to NormalizedConfig fields.
|
|
10
|
+
* Not included in default sources — opt-in only via `sourcesBefore`.
|
|
11
|
+
*
|
|
12
|
+
* @internal This module is internal to the SDK. Use ConfigResolver instead.
|
|
13
|
+
*/
|
|
14
|
+
import { readFileSync, writeFileSync } from 'node:fs';
|
|
15
|
+
import { parseEnv } from 'node:util';
|
|
1
16
|
import { CLIENT_AUTH_METHODS } from '../../auth/client-credentials.js';
|
|
2
17
|
import { getPopulatedFields } from '../mapping.js';
|
|
3
18
|
import { getLogger } from '../../logging/logger.js';
|
|
@@ -45,6 +60,7 @@ const ENV_VAR_MAP = {
|
|
|
45
60
|
SFCC_LIBRARIES: 'libraries',
|
|
46
61
|
SFCC_ASSET_QUERY: 'assetQuery',
|
|
47
62
|
SFCC_DOCS_CATEGORIES: 'docsCategories',
|
|
63
|
+
SFCC_SCAPI_SCHEMAS: 'scapiSchemas',
|
|
48
64
|
SFCC_AUTH_METHODS: 'authMethods',
|
|
49
65
|
SFCC_ACCOUNT_MANAGER_HOST: 'accountManagerHost',
|
|
50
66
|
SFCC_CLIENT_AUTH_METHOD: 'clientAuthMethod',
|
|
@@ -76,6 +92,7 @@ const ARRAY_FIELDS = new Set([
|
|
|
76
92
|
'importSetExclude',
|
|
77
93
|
'catalogs',
|
|
78
94
|
'docsCategories',
|
|
95
|
+
'scapiSchemas',
|
|
79
96
|
'libraries',
|
|
80
97
|
'assetQuery',
|
|
81
98
|
]);
|
|
@@ -171,6 +188,96 @@ export class EnvSource {
|
|
|
171
188
|
return { config, location: this.location };
|
|
172
189
|
}
|
|
173
190
|
}
|
|
191
|
+
const ENV_LINE = /^(\s*(?:export\s+)?)([A-Za-z_][A-Za-z0-9_]*)\s*=(.*)$/;
|
|
192
|
+
/** Format a config value in the comma-separated form {@link EnvSource} reads. */
|
|
193
|
+
function formatEnvValue(field, value) {
|
|
194
|
+
let text;
|
|
195
|
+
if (typeof value === 'string') {
|
|
196
|
+
text = value;
|
|
197
|
+
}
|
|
198
|
+
else if (typeof value === 'boolean' || typeof value === 'number') {
|
|
199
|
+
text = String(value);
|
|
200
|
+
}
|
|
201
|
+
else if (Array.isArray(value) && value.every((item) => typeof item === 'string' && !item.includes(','))) {
|
|
202
|
+
text = value.join(',');
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
throw new Error(`${field} can't be represented as an environment variable; set it in dw.json instead.`);
|
|
206
|
+
}
|
|
207
|
+
if (/^[^\s#'"`\\]*$/.test(text))
|
|
208
|
+
return text;
|
|
209
|
+
if (!text.includes("'") && !text.includes('\n'))
|
|
210
|
+
return `'${text}'`;
|
|
211
|
+
throw new Error(`${field} contains characters that can't be written safely to a .env file.`);
|
|
212
|
+
}
|
|
213
|
+
/** Line indices of assignments to `names`, refusing multi-line values that can't be edited safely. */
|
|
214
|
+
function findAssignments(lines, names) {
|
|
215
|
+
const found = [];
|
|
216
|
+
for (const [index, line] of lines.entries()) {
|
|
217
|
+
const match = ENV_LINE.exec(line);
|
|
218
|
+
if (!match || !names.includes(match[2]))
|
|
219
|
+
continue;
|
|
220
|
+
const value = match[3].trim();
|
|
221
|
+
const quote = value[0];
|
|
222
|
+
if ((quote === '"' || quote === "'" || quote === '`') && value.indexOf(quote, 1) === -1) {
|
|
223
|
+
throw new Error(`${match[2]} spans multiple lines in the .env file; edit it by hand.`);
|
|
224
|
+
}
|
|
225
|
+
found.push({ index, name: match[2], prefix: match[1] });
|
|
226
|
+
}
|
|
227
|
+
return found;
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* The project `.env` file, as a writable configuration source.
|
|
231
|
+
*
|
|
232
|
+
* Reads like {@link EnvSource}. Writes edit the file in place: the
|
|
233
|
+
* highest-precedence variable already present for a field is replaced,
|
|
234
|
+
* otherwise the field's canonical (highest-precedence) variable is appended. Removing a field
|
|
235
|
+
* deletes every variable that maps to it.
|
|
236
|
+
*
|
|
237
|
+
* @internal
|
|
238
|
+
*/
|
|
239
|
+
export class DotenvFileSource extends EnvSource {
|
|
240
|
+
filePath;
|
|
241
|
+
/**
|
|
242
|
+
* @param filePath - The .env file
|
|
243
|
+
* @param env - Values applied from the file (defaults to the file's contents)
|
|
244
|
+
*/
|
|
245
|
+
constructor(filePath, env) {
|
|
246
|
+
super(env ?? parseEnv(readFileSync(filePath, 'utf8')), { name: 'DotenvFile', location: filePath });
|
|
247
|
+
this.filePath = filePath;
|
|
248
|
+
}
|
|
249
|
+
updateConfig(patch, _options) {
|
|
250
|
+
let lines = readFileSync(this.filePath, 'utf8').split('\n');
|
|
251
|
+
for (const [field, value] of Object.entries(patch)) {
|
|
252
|
+
// ENV_VAR_MAP lists aliases from lowest to highest precedence.
|
|
253
|
+
const names = Object.entries(ENV_VAR_MAP)
|
|
254
|
+
.filter(([, mapped]) => mapped === field)
|
|
255
|
+
.map(([name]) => name);
|
|
256
|
+
if (names.length === 0)
|
|
257
|
+
throw new Error(`${field} has no environment variable form; set it in dw.json instead.`);
|
|
258
|
+
const assignments = findAssignments(lines, names);
|
|
259
|
+
if (value === undefined) {
|
|
260
|
+
const removed = new Set(assignments.map((assignment) => assignment.index));
|
|
261
|
+
lines = lines.filter((_line, index) => !removed.has(index));
|
|
262
|
+
continue;
|
|
263
|
+
}
|
|
264
|
+
const text = formatEnvValue(field, value);
|
|
265
|
+
const current = assignments.sort((a, b) => names.indexOf(b.name) - names.indexOf(a.name))[0];
|
|
266
|
+
if (current) {
|
|
267
|
+
lines[current.index] = `${current.prefix}${current.name}=${text}`;
|
|
268
|
+
}
|
|
269
|
+
else {
|
|
270
|
+
const name = names.at(-1);
|
|
271
|
+
if (lines.at(-1) === '')
|
|
272
|
+
lines.splice(-1, 0, `${name}=${text}`);
|
|
273
|
+
else
|
|
274
|
+
lines.push(`${name}=${text}`, '');
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
writeFileSync(this.filePath, lines.join('\n'), 'utf8');
|
|
278
|
+
return { location: this.filePath };
|
|
279
|
+
}
|
|
280
|
+
}
|
|
174
281
|
/**
|
|
175
282
|
* Configuration source for Storefront Next environment variables
|
|
176
283
|
* (`PUBLIC__app__commerce__api__*`, `COMMERCE_API_SLAS_SECRET`, `PUBLIC__app__defaultSiteId`).
|
|
@@ -186,16 +293,34 @@ export class EnvSource {
|
|
|
186
293
|
export class StorefrontNextEnvSource {
|
|
187
294
|
name;
|
|
188
295
|
priority = 1;
|
|
296
|
+
/**
|
|
297
|
+
* Present when every value came from one .env file: writes there use toolkit
|
|
298
|
+
* (`SFCC_*`) variables. Settings the Storefront Next variables hold are
|
|
299
|
+
* refused, since those belong to the storefront app.
|
|
300
|
+
*/
|
|
301
|
+
updateConfig;
|
|
189
302
|
env;
|
|
190
303
|
location;
|
|
191
304
|
/**
|
|
192
305
|
* @param env - Environment object to read from. Defaults to `process.env`.
|
|
193
|
-
* @param options - Diagnostic name and location
|
|
306
|
+
* @param options - Diagnostic name and location; `envFile` makes the source writable
|
|
194
307
|
*/
|
|
195
308
|
constructor(env, options = {}) {
|
|
196
309
|
this.env = env ?? process.env;
|
|
197
310
|
this.name = options.name ?? 'StorefrontNextEnvSource';
|
|
198
311
|
this.location = options.location ?? 'environment variables';
|
|
312
|
+
const { envFile } = options;
|
|
313
|
+
if (envFile) {
|
|
314
|
+
this.updateConfig = (patch, updateOptions) => {
|
|
315
|
+
for (const field of Object.keys(patch)) {
|
|
316
|
+
const variable = Object.keys(STOREFRONT_NEXT_ENV_VAR_MAP).find((name) => STOREFRONT_NEXT_ENV_VAR_MAP[name] === field);
|
|
317
|
+
if (variable) {
|
|
318
|
+
throw new Error(`${field} is a Storefront Next setting (${variable} in ${envFile}) that the storefront app also reads. Change it there.`);
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
return new DotenvFileSource(envFile).updateConfig(patch, updateOptions);
|
|
322
|
+
};
|
|
323
|
+
}
|
|
199
324
|
}
|
|
200
325
|
load(_options) {
|
|
201
326
|
const config = readEnvironmentConfig(this.env, STOREFRONT_NEXT_ENV_VAR_MAP, this.name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-source.js","sourceRoot":"","sources":["../../../../src/config/sources/env-source.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"env-source.js","sourceRoot":"","sources":["../../../../src/config/sources/env-source.ts"],"names":[],"mappings":"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"}
|