@salesforce/b2c-tooling-sdk 0.5.5 → 0.7.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/dist/cjs/clients/ods.generated.d.ts +314 -2
- package/dist/cjs/config/dw-json.d.ts +8 -0
- package/dist/cjs/config/dw-json.js.map +1 -1
- package/dist/cjs/config/index.d.ts +1 -0
- package/dist/cjs/config/index.js +1 -0
- package/dist/cjs/config/index.js.map +1 -1
- package/dist/cjs/config/mapping.js +17 -0
- package/dist/cjs/config/mapping.js.map +1 -1
- package/dist/cjs/config/resolver.js +1 -0
- package/dist/cjs/config/resolver.js.map +1 -1
- package/dist/cjs/config/sources/env-source.d.ts +32 -0
- package/dist/cjs/config/sources/env-source.js +88 -0
- package/dist/cjs/config/sources/env-source.js.map +1 -0
- package/dist/cjs/config/sources/index.d.ts +1 -0
- package/dist/cjs/config/sources/index.js +1 -0
- package/dist/cjs/config/sources/index.js.map +1 -1
- package/dist/cjs/config/sources/package-json-source.js +1 -0
- package/dist/cjs/config/sources/package-json-source.js.map +1 -1
- package/dist/cjs/config/types.d.ts +8 -0
- package/dist/cjs/plugins/loader.js +0 -1
- package/dist/cjs/plugins/loader.js.map +1 -1
- package/dist/cjs/scaffold/index.d.ts +3 -1
- package/dist/cjs/scaffold/index.js +1 -1
- package/dist/cjs/scaffold/index.js.map +1 -1
- package/dist/cjs/scaffold/parameter-resolver.js +1 -17
- package/dist/cjs/scaffold/parameter-resolver.js.map +1 -1
- package/dist/cjs/scaffold/registry.d.ts +16 -1
- package/dist/cjs/scaffold/registry.js +9 -3
- package/dist/cjs/scaffold/registry.js.map +1 -1
- package/dist/cjs/scaffold/sources.d.ts +29 -1
- package/dist/cjs/scaffold/sources.js +53 -0
- package/dist/cjs/scaffold/sources.js.map +1 -1
- package/dist/cjs/skills/github.js +5 -2
- package/dist/cjs/skills/github.js.map +1 -1
- package/dist/cjs/slas/index.d.ts +12 -0
- package/dist/cjs/slas/index.js +8 -0
- package/dist/cjs/slas/index.js.map +1 -0
- package/dist/cjs/slas/pkce.d.ts +13 -0
- package/dist/cjs/slas/pkce.js +35 -0
- package/dist/cjs/slas/pkce.js.map +1 -0
- package/dist/cjs/slas/token.d.ts +24 -0
- package/dist/cjs/slas/token.js +217 -0
- package/dist/cjs/slas/token.js.map +1 -0
- package/dist/cjs/slas/types.d.ts +43 -0
- package/dist/cjs/slas/types.js +7 -0
- package/dist/cjs/slas/types.js.map +1 -0
- package/dist/esm/clients/ods.generated.d.ts +314 -2
- package/dist/esm/config/dw-json.d.ts +8 -0
- package/dist/esm/config/dw-json.js.map +1 -1
- package/dist/esm/config/index.d.ts +1 -0
- package/dist/esm/config/index.js +1 -0
- package/dist/esm/config/index.js.map +1 -1
- package/dist/esm/config/mapping.js +17 -0
- package/dist/esm/config/mapping.js.map +1 -1
- package/dist/esm/config/resolver.js +1 -0
- package/dist/esm/config/resolver.js.map +1 -1
- package/dist/esm/config/sources/env-source.d.ts +32 -0
- package/dist/esm/config/sources/env-source.js +88 -0
- package/dist/esm/config/sources/env-source.js.map +1 -0
- package/dist/esm/config/sources/index.d.ts +1 -0
- package/dist/esm/config/sources/index.js +1 -0
- package/dist/esm/config/sources/index.js.map +1 -1
- package/dist/esm/config/sources/package-json-source.js +1 -0
- package/dist/esm/config/sources/package-json-source.js.map +1 -1
- package/dist/esm/config/types.d.ts +8 -0
- package/dist/esm/plugins/loader.js +0 -1
- package/dist/esm/plugins/loader.js.map +1 -1
- package/dist/esm/scaffold/index.d.ts +3 -1
- package/dist/esm/scaffold/index.js +1 -1
- package/dist/esm/scaffold/index.js.map +1 -1
- package/dist/esm/scaffold/parameter-resolver.js +1 -17
- package/dist/esm/scaffold/parameter-resolver.js.map +1 -1
- package/dist/esm/scaffold/registry.d.ts +16 -1
- package/dist/esm/scaffold/registry.js +9 -3
- package/dist/esm/scaffold/registry.js.map +1 -1
- package/dist/esm/scaffold/sources.d.ts +29 -1
- package/dist/esm/scaffold/sources.js +53 -0
- package/dist/esm/scaffold/sources.js.map +1 -1
- package/dist/esm/skills/github.js +5 -2
- package/dist/esm/skills/github.js.map +1 -1
- package/dist/esm/slas/index.d.ts +12 -0
- package/dist/esm/slas/index.js +8 -0
- package/dist/esm/slas/index.js.map +1 -0
- package/dist/esm/slas/pkce.d.ts +13 -0
- package/dist/esm/slas/pkce.js +35 -0
- package/dist/esm/slas/pkce.js.map +1 -0
- package/dist/esm/slas/token.d.ts +24 -0
- package/dist/esm/slas/token.js +217 -0
- package/dist/esm/slas/token.js.map +1 -0
- package/dist/esm/slas/types.d.ts +43 -0
- package/dist/esm/slas/types.js +7 -0
- package/dist/esm/slas/types.js.map +1 -0
- package/package.json +12 -1
- package/specs/ods-api-v1.json +476 -0
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { getPopulatedFields } from '../mapping.js';
|
|
2
|
+
import { getLogger } from '../../logging/logger.js';
|
|
3
|
+
/**
|
|
4
|
+
* Mapping of SFCC_* environment variable names to NormalizedConfig field names.
|
|
5
|
+
*/
|
|
6
|
+
const ENV_VAR_MAP = {
|
|
7
|
+
SFCC_SERVER: 'hostname',
|
|
8
|
+
SFCC_WEBDAV_SERVER: 'webdavHostname',
|
|
9
|
+
SFCC_CODE_VERSION: 'codeVersion',
|
|
10
|
+
SFCC_USERNAME: 'username',
|
|
11
|
+
SFCC_PASSWORD: 'password',
|
|
12
|
+
SFCC_CERTIFICATE: 'certificate',
|
|
13
|
+
SFCC_CERTIFICATE_PASSPHRASE: 'certificatePassphrase',
|
|
14
|
+
SFCC_SELFSIGNED: 'selfSigned',
|
|
15
|
+
SFCC_CLIENT_ID: 'clientId',
|
|
16
|
+
SFCC_CLIENT_SECRET: 'clientSecret',
|
|
17
|
+
SFCC_OAUTH_SCOPES: 'scopes',
|
|
18
|
+
SFCC_SHORTCODE: 'shortCode',
|
|
19
|
+
SFCC_TENANT_ID: 'tenantId',
|
|
20
|
+
SFCC_AUTH_METHODS: 'authMethods',
|
|
21
|
+
SFCC_ACCOUNT_MANAGER_HOST: 'accountManagerHost',
|
|
22
|
+
SFCC_SANDBOX_API_HOST: 'sandboxApiHost',
|
|
23
|
+
};
|
|
24
|
+
/** Fields that should be parsed as comma-separated arrays. */
|
|
25
|
+
const ARRAY_FIELDS = new Set(['scopes', 'authMethods']);
|
|
26
|
+
/** Fields that should be parsed as booleans. */
|
|
27
|
+
const BOOLEAN_FIELDS = new Set(['selfSigned']);
|
|
28
|
+
/**
|
|
29
|
+
* Configuration source that reads SFCC_* environment variables.
|
|
30
|
+
*
|
|
31
|
+
* Priority -10 (higher than dw.json at 0), matching CLI behavior where
|
|
32
|
+
* env vars override file-based config.
|
|
33
|
+
*
|
|
34
|
+
* Not added to default sources — opt-in only. The CLI handles env vars
|
|
35
|
+
* via oclif flag `env:` mappings; this source is for consumers like
|
|
36
|
+
* the VS Code extension that call `resolveConfig()` directly.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```typescript
|
|
40
|
+
* import { resolveConfig, EnvSource } from '@salesforce/b2c-tooling-sdk/config';
|
|
41
|
+
*
|
|
42
|
+
* const config = resolveConfig({}, {
|
|
43
|
+
* sourcesBefore: [new EnvSource()],
|
|
44
|
+
* });
|
|
45
|
+
* ```
|
|
46
|
+
*
|
|
47
|
+
* @internal
|
|
48
|
+
*/
|
|
49
|
+
export class EnvSource {
|
|
50
|
+
name = 'EnvSource';
|
|
51
|
+
priority = -10;
|
|
52
|
+
env;
|
|
53
|
+
/**
|
|
54
|
+
* @param env - Environment object to read from. Defaults to `process.env`.
|
|
55
|
+
*/
|
|
56
|
+
constructor(env) {
|
|
57
|
+
this.env = env ?? process.env;
|
|
58
|
+
}
|
|
59
|
+
load(_options) {
|
|
60
|
+
const logger = getLogger();
|
|
61
|
+
const config = {};
|
|
62
|
+
for (const [envVar, configField] of Object.entries(ENV_VAR_MAP)) {
|
|
63
|
+
const value = this.env[envVar];
|
|
64
|
+
if (value === undefined || value === '')
|
|
65
|
+
continue;
|
|
66
|
+
if (BOOLEAN_FIELDS.has(configField)) {
|
|
67
|
+
config[configField] = value === 'true' || value === '1';
|
|
68
|
+
}
|
|
69
|
+
else if (ARRAY_FIELDS.has(configField)) {
|
|
70
|
+
config[configField] = value
|
|
71
|
+
.split(',')
|
|
72
|
+
.map((s) => s.trim())
|
|
73
|
+
.filter(Boolean);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
config[configField] = value;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
const fields = getPopulatedFields(config);
|
|
80
|
+
if (fields.length === 0) {
|
|
81
|
+
logger.trace('[EnvSource] No SFCC_* environment variables found');
|
|
82
|
+
return undefined;
|
|
83
|
+
}
|
|
84
|
+
logger.trace({ fields }, '[EnvSource] Loaded config from environment variables');
|
|
85
|
+
return { config, location: 'environment variables' };
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=env-source.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-source.js","sourceRoot":"","sources":["../../../../src/config/sources/env-source.ts"],"names":[],"mappings":"AAcA,OAAO,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAC,SAAS,EAAC,MAAM,yBAAyB,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,GAA2C;IAC1D,WAAW,EAAE,UAAU;IACvB,kBAAkB,EAAE,gBAAgB;IACpC,iBAAiB,EAAE,aAAa;IAChC,aAAa,EAAE,UAAU;IACzB,aAAa,EAAE,UAAU;IACzB,gBAAgB,EAAE,aAAa;IAC/B,2BAA2B,EAAE,uBAAuB;IACpD,eAAe,EAAE,YAAY;IAC7B,cAAc,EAAE,UAAU;IAC1B,kBAAkB,EAAE,cAAc;IAClC,iBAAiB,EAAE,QAAQ;IAC3B,cAAc,EAAE,WAAW;IAC3B,cAAc,EAAE,UAAU;IAC1B,iBAAiB,EAAE,aAAa;IAChC,yBAAyB,EAAE,oBAAoB;IAC/C,qBAAqB,EAAE,gBAAgB;CACxC,CAAC;AAEF,8DAA8D;AAC9D,MAAM,YAAY,GAAG,IAAI,GAAG,CAAyB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;AAEhF,gDAAgD;AAChD,MAAM,cAAc,GAAG,IAAI,GAAG,CAAyB,CAAC,YAAY,CAAC,CAAC,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAO,SAAS;IACX,IAAI,GAAG,WAAW,CAAC;IACnB,QAAQ,GAAG,CAAC,EAAE,CAAC;IAEP,GAAG,CAAqC;IAEzD;;OAEG;IACH,YAAY,GAAwC;QAClD,IAAI,CAAC,GAAG,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IAChC,CAAC;IAED,IAAI,CAAC,QAA8B;QACjC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAqB,EAAE,CAAC;QAEpC,KAAK,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAChE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;gBAAE,SAAS;YAElD,IAAI,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACnC,MAAkC,CAAC,WAAW,CAAC,GAAG,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,GAAG,CAAC;YACvF,CAAC;iBAAM,IAAI,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACxC,MAAkC,CAAC,WAAW,CAAC,GAAG,KAAK;qBACrD,KAAK,CAAC,GAAG,CAAC;qBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;qBACpB,MAAM,CAAC,OAAO,CAA4B,CAAC;YAChD,CAAC;iBAAM,CAAC;gBACL,MAAkC,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;YAC3D,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;YAClE,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,EAAC,MAAM,EAAC,EAAE,sDAAsD,CAAC,CAAC;QAE/E,OAAO,EAAC,MAAM,EAAE,QAAQ,EAAE,uBAAuB,EAAC,CAAC;IACrD,CAAC;CACF"}
|
|
@@ -4,5 +4,6 @@
|
|
|
4
4
|
* @internal This module is internal to the SDK. Use ConfigResolver instead.
|
|
5
5
|
*/
|
|
6
6
|
export { DwJsonSource } from './dw-json-source.js';
|
|
7
|
+
export { EnvSource } from './env-source.js';
|
|
7
8
|
export { MobifySource } from './mobify-source.js';
|
|
8
9
|
export { PackageJsonSource } from './package-json-source.js';
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
* @internal This module is internal to the SDK. Use ConfigResolver instead.
|
|
10
10
|
*/
|
|
11
11
|
export { DwJsonSource } from './dw-json-source.js';
|
|
12
|
+
export { EnvSource } from './env-source.js';
|
|
12
13
|
export { MobifySource } from './mobify-source.js';
|
|
13
14
|
export { PackageJsonSource } from './package-json-source.js';
|
|
14
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/config/sources/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;;;;GAIG;AACH,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/config/sources/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;;;;GAIG;AACH,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-json-source.js","sourceRoot":"","sources":["../../../../src/config/sources/package-json-source.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAC,kBAAkB,EAAE,mBAAmB,EAAC,MAAM,eAAe,CAAC;AACtE,OAAO,EAAC,SAAS,EAAC,MAAM,yBAAyB,CAAC;AAElD;;;GAGG;AACH,MAAM,cAAc,GAA+B;IACjD,WAAW;IACX,UAAU;IACV,gBAAgB;IAChB,YAAY;IACZ,WAAW;IACX,oBAAoB;IACpB,gBAAgB;
|
|
1
|
+
{"version":3,"file":"package-json-source.js","sourceRoot":"","sources":["../../../../src/config/sources/package-json-source.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,12 +36,20 @@ export interface NormalizedConfig {
|
|
|
36
36
|
authMethods?: AuthMethod[];
|
|
37
37
|
/** Account Manager hostname for OAuth (default: account.demandware.com) */
|
|
38
38
|
accountManagerHost?: string;
|
|
39
|
+
/** SLAS client ID for shopper authentication */
|
|
40
|
+
slasClientId?: string;
|
|
41
|
+
/** SLAS client secret for private shopper clients */
|
|
42
|
+
slasClientSecret?: string;
|
|
43
|
+
/** B2C Commerce site/channel ID */
|
|
44
|
+
siteId?: string;
|
|
39
45
|
/** SCAPI short code */
|
|
40
46
|
shortCode?: string;
|
|
41
47
|
/** Tenant/Organization ID for SCAPI */
|
|
42
48
|
tenantId?: string;
|
|
43
49
|
/** ODS API hostname */
|
|
44
50
|
sandboxApiHost?: string;
|
|
51
|
+
/** Default ODS realm for sandbox operations */
|
|
52
|
+
realm?: string;
|
|
45
53
|
/** MRT project slug */
|
|
46
54
|
mrtProject?: string;
|
|
47
55
|
/** MRT environment name (e.g., staging, production) */
|
|
@@ -25,7 +25,6 @@ export function createHookContext(options = {}) {
|
|
|
25
25
|
* esbuild transforms `import()` to `require()` in CJS output, which cannot
|
|
26
26
|
* load ESM plugins. Using `new Function` preserves the native dynamic import.
|
|
27
27
|
*/
|
|
28
|
-
// eslint-disable-next-line @typescript-eslint/no-implied-eval
|
|
29
28
|
const dynamicImport = new Function('specifier', 'return import(specifier)');
|
|
30
29
|
/**
|
|
31
30
|
* Dynamically imports a hook file and invokes its default export.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/plugins/loader.ts"],"names":[],"mappings":"AA4BA;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAA8B,EAAE;IAChE,MAAM,EAAC,MAAM,EAAC,GAAG,OAAO,CAAC;IAEzB,OAAO;QACL,KAAK,CAAC,GAAG,IAAe;YACtB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,GAAG,CAAC,GAAG,IAAe;YACpB,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,CAAC,GAAG,IAAe;YACrB,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,CAAC;QACD,KAAK,CAAC,GAAG,IAAe;YACtB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;KAC7B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/plugins/loader.ts"],"names":[],"mappings":"AA4BA;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAA8B,EAAE;IAChE,MAAM,EAAC,MAAM,EAAC,GAAG,OAAO,CAAC;IAEzB,OAAO;QACL,KAAK,CAAC,GAAG,IAAe;YACtB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,GAAG,CAAC,GAAG,IAAe;YACpB,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,CAAC,GAAG,IAAe;YACrB,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,CAAC;QACD,KAAK,CAAC,GAAG,IAAe;YACtB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;KAC7B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AAEH,MAAM,aAAa,GAAG,IAAI,QAAQ,CAAC,WAAW,EAAE,0BAA0B,CAErC,CAAC;AAEtC;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,YAAoB,EACpB,OAAoB,EACpB,WAAoC,EACpC,MAAe;IAEf,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAA6C,CAAC;QAEhF,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;YACjC,MAAM,EAAE,IAAI,CAAC,aAAa,YAAY,6BAA6B,CAAC,CAAC;YACrE,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,MAAM,EAAE,IAAI,CAAC,yBAAyB,YAAY,KAAK,OAAO,EAAE,CAAC,CAAC;QAClE,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
|
@@ -59,8 +59,10 @@
|
|
|
59
59
|
*/
|
|
60
60
|
export type { ScaffoldManifest, ScaffoldParameter, ScaffoldChoice, ScaffoldParameterType, ScaffoldCategory, DynamicParameterSource, FileMapping, FileModification, OverwriteBehavior, Scaffold, ScaffoldSource, ScaffoldDiscoveryOptions, ScaffoldProvider, ScaffoldProviderPriority, ScaffoldTransformer, ScaffoldContext, ScaffoldGenerateOptions, ScaffoldGenerateResult, GeneratedFile, ParameterValidationError, ParameterValidationResult, TemplateHelpers, SourceResult, } from './types.js';
|
|
61
61
|
export { SCAFFOLDS_DATA_DIR } from './types.js';
|
|
62
|
-
export { HOOK_POINTS, resolveLocalSource, resolveRemoteSource, isRemoteSource, validateAgainstSource, } from './sources.js';
|
|
62
|
+
export { HOOK_POINTS, resolveLocalSource, resolveRemoteSource, isRemoteSource, validateAgainstSource, cartridgePathForDestination, detectSourceFromPath, } from './sources.js';
|
|
63
|
+
export type { SourceDetectionResult } from './sources.js';
|
|
63
64
|
export { ScaffoldRegistry, createScaffoldRegistry } from './registry.js';
|
|
65
|
+
export type { ScaffoldRegistryOptions } from './registry.js';
|
|
64
66
|
export { ScaffoldEngine, createTemplateContext, createTemplateHelpers, renderTemplate, renderPathTemplate, kebabCase, camelCase, pascalCase, snakeCase, } from './engine.js';
|
|
65
67
|
export type { TemplateContext } from './engine.js';
|
|
66
68
|
export { generateFromScaffold, previewScaffold, resolveOutputDirectory } from './executor.js';
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
export { SCAFFOLDS_DATA_DIR } from './types.js';
|
|
7
7
|
// Source resolution
|
|
8
|
-
export { HOOK_POINTS, resolveLocalSource, resolveRemoteSource, isRemoteSource, validateAgainstSource, } from './sources.js';
|
|
8
|
+
export { HOOK_POINTS, resolveLocalSource, resolveRemoteSource, isRemoteSource, validateAgainstSource, cartridgePathForDestination, detectSourceFromPath, } from './sources.js';
|
|
9
9
|
// Registry
|
|
10
10
|
export { ScaffoldRegistry, createScaffoldRegistry } from './registry.js';
|
|
11
11
|
// Engine
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/scaffold/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAyFH,OAAO,EAAC,kBAAkB,EAAC,MAAM,YAAY,CAAC;AAE9C,oBAAoB;AACpB,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/scaffold/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAyFH,OAAO,EAAC,kBAAkB,EAAC,MAAM,YAAY,CAAC;AAE9C,oBAAoB;AACpB,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,cAAc,CAAC;AAGtB,WAAW;AACX,OAAO,EAAC,gBAAgB,EAAE,sBAAsB,EAAC,MAAM,eAAe,CAAC;AAGvE,SAAS;AACT,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,kBAAkB,EAClB,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,GACV,MAAM,aAAa,CAAC;AAGrB,WAAW;AACX,OAAO,EAAC,oBAAoB,EAAE,eAAe,EAAE,sBAAsB,EAAC,MAAM,eAAe,CAAC;AAG5F,aAAa;AACb,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAEzB,kBAAkB;AAClB,OAAO,EAAC,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAC,MAAM,YAAY,CAAC;AAG/F,uBAAuB;AACvB,OAAO,EAAC,yBAAyB,EAAE,qBAAqB,EAAE,mBAAmB,EAAC,MAAM,yBAAyB,CAAC;AAQ9G,aAAa;AACb,OAAO,EAAC,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,yBAAyB,EAAC,MAAM,iBAAiB,CAAC"}
|
|
@@ -3,24 +3,8 @@
|
|
|
3
3
|
* SPDX-License-Identifier: Apache-2
|
|
4
4
|
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
5
|
*/
|
|
6
|
-
import path from 'node:path';
|
|
7
6
|
import { evaluateCondition } from './validators.js';
|
|
8
|
-
import { resolveLocalSource, resolveRemoteSource, isRemoteSource, validateAgainstSource } from './sources.js';
|
|
9
|
-
/**
|
|
10
|
-
* Path to use for scaffold destination so files are generated under outputDir (e.g. working directory).
|
|
11
|
-
* Returns a path relative to projectRoot when the cartridge is under projectRoot, so the executor
|
|
12
|
-
* joins with outputDir instead of ignoring it. Otherwise returns the absolute path.
|
|
13
|
-
*/
|
|
14
|
-
function cartridgePathForDestination(absolutePath, projectRoot) {
|
|
15
|
-
const normalizedRoot = path.resolve(projectRoot);
|
|
16
|
-
const normalizedPath = path.resolve(absolutePath);
|
|
17
|
-
const relative = path.relative(normalizedRoot, normalizedPath);
|
|
18
|
-
// Use relative path only when cartridge is under projectRoot (no leading '..')
|
|
19
|
-
if (relative && !relative.startsWith('..') && !path.isAbsolute(relative)) {
|
|
20
|
-
return relative;
|
|
21
|
-
}
|
|
22
|
-
return absolutePath;
|
|
23
|
-
}
|
|
7
|
+
import { resolveLocalSource, resolveRemoteSource, isRemoteSource, validateAgainstSource, cartridgePathForDestination, } from './sources.js';
|
|
24
8
|
/**
|
|
25
9
|
* Resolve scaffold parameters by:
|
|
26
10
|
* 1. Validating provided variables against sources
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parameter-resolver.js","sourceRoot":"","sources":["../../../src/scaffold/parameter-resolver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"parameter-resolver.js","sourceRoot":"","sources":["../../../src/scaffold/parameter-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
import type { Scaffold, ScaffoldDiscoveryOptions, ScaffoldProvider, ScaffoldTransformer } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Options for creating a scaffold registry
|
|
4
|
+
*/
|
|
5
|
+
export interface ScaffoldRegistryOptions {
|
|
6
|
+
/**
|
|
7
|
+
* Override the built-in scaffolds directory. Useful for bundled environments
|
|
8
|
+
* (e.g. VS Code extensions) where the SDK's data files are copied to a
|
|
9
|
+
* different location. Defaults to the SDK's own `data/scaffolds/` directory.
|
|
10
|
+
*/
|
|
11
|
+
builtInScaffoldsDir?: string;
|
|
12
|
+
}
|
|
2
13
|
/**
|
|
3
14
|
* Scaffold registry for discovering and managing scaffolds
|
|
4
15
|
*/
|
|
@@ -6,6 +17,8 @@ export declare class ScaffoldRegistry {
|
|
|
6
17
|
private providers;
|
|
7
18
|
private transformers;
|
|
8
19
|
private scaffoldCache;
|
|
20
|
+
private readonly builtInScaffoldsDir;
|
|
21
|
+
constructor(options?: ScaffoldRegistryOptions);
|
|
9
22
|
/**
|
|
10
23
|
* Add scaffold providers
|
|
11
24
|
*/
|
|
@@ -41,5 +54,7 @@ export declare class ScaffoldRegistry {
|
|
|
41
54
|
}
|
|
42
55
|
/**
|
|
43
56
|
* Create a new scaffold registry instance
|
|
57
|
+
*
|
|
58
|
+
* @param options - Registry options (e.g. override built-in scaffolds directory)
|
|
44
59
|
*/
|
|
45
|
-
export declare function createScaffoldRegistry(): ScaffoldRegistry;
|
|
60
|
+
export declare function createScaffoldRegistry(options?: ScaffoldRegistryOptions): ScaffoldRegistry;
|
|
@@ -110,6 +110,10 @@ export class ScaffoldRegistry {
|
|
|
110
110
|
providers = [];
|
|
111
111
|
transformers = [];
|
|
112
112
|
scaffoldCache = new Map();
|
|
113
|
+
builtInScaffoldsDir;
|
|
114
|
+
constructor(options) {
|
|
115
|
+
this.builtInScaffoldsDir = options?.builtInScaffoldsDir ?? SCAFFOLDS_DATA_DIR;
|
|
116
|
+
}
|
|
113
117
|
/**
|
|
114
118
|
* Add scaffold providers
|
|
115
119
|
*/
|
|
@@ -149,7 +153,7 @@ export class ScaffoldRegistry {
|
|
|
149
153
|
allScaffolds.push(...providerScaffolds);
|
|
150
154
|
}
|
|
151
155
|
// 2. Built-in scaffolds (lowest priority for built-ins)
|
|
152
|
-
const builtInScaffolds = await discoverScaffoldsFromDir(
|
|
156
|
+
const builtInScaffolds = await discoverScaffoldsFromDir(this.builtInScaffoldsDir, 'built-in');
|
|
153
157
|
allScaffolds.push(...builtInScaffolds);
|
|
154
158
|
// 3. User scaffolds (~/.b2c/scaffolds/)
|
|
155
159
|
const userScaffoldsDir = path.join(os.homedir(), '.b2c', 'scaffolds');
|
|
@@ -212,8 +216,10 @@ export class ScaffoldRegistry {
|
|
|
212
216
|
}
|
|
213
217
|
/**
|
|
214
218
|
* Create a new scaffold registry instance
|
|
219
|
+
*
|
|
220
|
+
* @param options - Registry options (e.g. override built-in scaffolds directory)
|
|
215
221
|
*/
|
|
216
|
-
export function createScaffoldRegistry() {
|
|
217
|
-
return new ScaffoldRegistry();
|
|
222
|
+
export function createScaffoldRegistry(options) {
|
|
223
|
+
return new ScaffoldRegistry(options);
|
|
218
224
|
}
|
|
219
225
|
//# sourceMappingURL=registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/scaffold/registry.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/scaffold/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { B2CInstance } from '../instance/index.js';
|
|
2
|
-
import type { ScaffoldChoice, DynamicParameterSource, SourceResult } from './types.js';
|
|
2
|
+
import type { ScaffoldChoice, ScaffoldParameter, DynamicParameterSource, SourceResult } from './types.js';
|
|
3
3
|
/**
|
|
4
4
|
* Common B2C Commerce hook extension points.
|
|
5
5
|
*/
|
|
@@ -43,3 +43,31 @@ export declare function validateAgainstSource(source: DynamicParameterSource, va
|
|
|
43
43
|
valid: boolean;
|
|
44
44
|
availableChoices?: string[];
|
|
45
45
|
};
|
|
46
|
+
/**
|
|
47
|
+
* Path to use for scaffold destination so files are generated under outputDir (e.g. working directory).
|
|
48
|
+
* Returns a path relative to projectRoot when the cartridge is under projectRoot, so the executor
|
|
49
|
+
* joins with outputDir instead of ignoring it. Otherwise returns the absolute path.
|
|
50
|
+
*/
|
|
51
|
+
export declare function cartridgePathForDestination(absolutePath: string, projectRoot: string): string;
|
|
52
|
+
/**
|
|
53
|
+
* Result of detecting a source parameter value from a filesystem path.
|
|
54
|
+
*/
|
|
55
|
+
export interface SourceDetectionResult {
|
|
56
|
+
/** The resolved parameter value (e.g., cartridge name) */
|
|
57
|
+
value: string;
|
|
58
|
+
/** Companion variables to set (e.g., { cartridgeNamePath: "cartridges/app_custom" }) */
|
|
59
|
+
companionVariables: Record<string, string>;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Detect a parameter's source value from a filesystem context path.
|
|
63
|
+
*
|
|
64
|
+
* For `cartridges` source: walks up from `contextPath` looking for a `.project` file
|
|
65
|
+
* (cartridge marker), stopping at projectRoot. On match returns the cartridge name and
|
|
66
|
+
* companion path variable.
|
|
67
|
+
*
|
|
68
|
+
* @param param - The scaffold parameter with a `source` field
|
|
69
|
+
* @param contextPath - Filesystem path providing context (e.g., right-clicked folder)
|
|
70
|
+
* @param projectRoot - Project root directory
|
|
71
|
+
* @returns Detection result, or undefined if the source could not be detected
|
|
72
|
+
*/
|
|
73
|
+
export declare function detectSourceFromPath(param: ScaffoldParameter, contextPath: string, projectRoot: string): SourceDetectionResult | undefined;
|
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
* SPDX-License-Identifier: Apache-2
|
|
4
4
|
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
5
|
*/
|
|
6
|
+
import fs from 'node:fs';
|
|
7
|
+
import path from 'node:path';
|
|
6
8
|
import { findCartridges } from '../operations/code/cartridges.js';
|
|
7
9
|
/**
|
|
8
10
|
* Common B2C Commerce hook extension points.
|
|
@@ -110,4 +112,55 @@ export function validateAgainstSource(source, value, projectRoot) {
|
|
|
110
112
|
// For hook-points and other sources, no validation (allow any value)
|
|
111
113
|
return { valid: true };
|
|
112
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* Path to use for scaffold destination so files are generated under outputDir (e.g. working directory).
|
|
117
|
+
* Returns a path relative to projectRoot when the cartridge is under projectRoot, so the executor
|
|
118
|
+
* joins with outputDir instead of ignoring it. Otherwise returns the absolute path.
|
|
119
|
+
*/
|
|
120
|
+
export function cartridgePathForDestination(absolutePath, projectRoot) {
|
|
121
|
+
const normalizedRoot = path.resolve(projectRoot);
|
|
122
|
+
const normalizedPath = path.resolve(absolutePath);
|
|
123
|
+
const relative = path.relative(normalizedRoot, normalizedPath);
|
|
124
|
+
// Use relative path only when cartridge is under projectRoot (no leading '..')
|
|
125
|
+
if (relative && !relative.startsWith('..') && !path.isAbsolute(relative)) {
|
|
126
|
+
return relative;
|
|
127
|
+
}
|
|
128
|
+
return absolutePath;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Detect a parameter's source value from a filesystem context path.
|
|
132
|
+
*
|
|
133
|
+
* For `cartridges` source: walks up from `contextPath` looking for a `.project` file
|
|
134
|
+
* (cartridge marker), stopping at projectRoot. On match returns the cartridge name and
|
|
135
|
+
* companion path variable.
|
|
136
|
+
*
|
|
137
|
+
* @param param - The scaffold parameter with a `source` field
|
|
138
|
+
* @param contextPath - Filesystem path providing context (e.g., right-clicked folder)
|
|
139
|
+
* @param projectRoot - Project root directory
|
|
140
|
+
* @returns Detection result, or undefined if the source could not be detected
|
|
141
|
+
*/
|
|
142
|
+
export function detectSourceFromPath(param, contextPath, projectRoot) {
|
|
143
|
+
if (param.source !== 'cartridges') {
|
|
144
|
+
return undefined;
|
|
145
|
+
}
|
|
146
|
+
const normalizedRoot = path.resolve(projectRoot);
|
|
147
|
+
let current = path.resolve(contextPath);
|
|
148
|
+
// Walk up from contextPath, checking for .project at each level
|
|
149
|
+
while (current.length >= normalizedRoot.length) {
|
|
150
|
+
const projectFile = path.join(current, '.project');
|
|
151
|
+
if (fs.existsSync(projectFile)) {
|
|
152
|
+
const cartridgeName = path.basename(current);
|
|
153
|
+
const destPath = cartridgePathForDestination(current, projectRoot);
|
|
154
|
+
return {
|
|
155
|
+
value: cartridgeName,
|
|
156
|
+
companionVariables: { [`${param.name}Path`]: destPath },
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
const parent = path.dirname(current);
|
|
160
|
+
if (parent === current)
|
|
161
|
+
break; // filesystem root
|
|
162
|
+
current = parent;
|
|
163
|
+
}
|
|
164
|
+
return undefined;
|
|
165
|
+
}
|
|
113
166
|
//# sourceMappingURL=sources.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sources.js","sourceRoot":"","sources":["../../../src/scaffold/sources.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sources.js","sourceRoot":"","sources":["../../../src/scaffold/sources.ts"],"names":[],"mappings":"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"}
|
|
@@ -181,8 +181,11 @@ export async function downloadSkillsArtifact(skillSet, options = {}) {
|
|
|
181
181
|
}
|
|
182
182
|
// Extract actual version from the final URL (after redirects)
|
|
183
183
|
const actualVersion = extractVersionFromUrl(response.url) || version;
|
|
184
|
-
// Check cache for the resolved version (for 'latest' which we now know)
|
|
185
|
-
if
|
|
184
|
+
// Check cache for the resolved version (for 'latest' which we now know the real tag)
|
|
185
|
+
// Only use cache if we actually resolved a real version — if actualVersion is still
|
|
186
|
+
// 'latest' (e.g., redirect URL didn't contain the tag), we must re-extract since
|
|
187
|
+
// we can't tell if the cached 'latest' is stale.
|
|
188
|
+
if (version === 'latest' && actualVersion !== 'latest' && !forceDownload) {
|
|
186
189
|
const cached = getCachedArtifact(actualVersion, skillSet);
|
|
187
190
|
if (cached && fs.existsSync(cached.path)) {
|
|
188
191
|
logger.debug({ version: actualVersion, skillSet, path: cached.path }, 'Using cached skills (resolved latest)');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github.js","sourceRoot":"","sources":["../../../src/skills/github.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"github.js","sourceRoot":"","sources":["../../../src/skills/github.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SLAS Shopper Login token retrieval.
|
|
3
|
+
*
|
|
4
|
+
* Provides functions to obtain shopper access tokens from the SLAS
|
|
5
|
+
* Shopper Login service, supporting public (PKCE) and private
|
|
6
|
+
* (client_credentials) client flows for both guest and registered customers.
|
|
7
|
+
*
|
|
8
|
+
* @module slas
|
|
9
|
+
*/
|
|
10
|
+
export type { SlasTokenConfig, SlasTokenResponse, SlasRegisteredLoginConfig } from './types.js';
|
|
11
|
+
export { generateCodeChallenge, generateCodeVerifier } from './pkce.js';
|
|
12
|
+
export { getGuestToken, getRegisteredToken } from './token.js';
|
|
@@ -0,0 +1,8 @@
|
|
|
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
|
+
export { generateCodeChallenge, generateCodeVerifier } from './pkce.js';
|
|
7
|
+
export { getGuestToken, getRegisteredToken } from './token.js';
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/slas/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH,OAAO,EAAC,qBAAqB,EAAE,oBAAoB,EAAC,MAAM,WAAW,CAAC;AACtE,OAAO,EAAC,aAAa,EAAE,kBAAkB,EAAC,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates a cryptographically random PKCE code verifier.
|
|
3
|
+
*
|
|
4
|
+
* @returns A 128-character base64url-encoded random string
|
|
5
|
+
*/
|
|
6
|
+
export declare function generateCodeVerifier(): string;
|
|
7
|
+
/**
|
|
8
|
+
* Generates a PKCE code challenge from a code verifier using S256.
|
|
9
|
+
*
|
|
10
|
+
* @param verifier - The code verifier to hash
|
|
11
|
+
* @returns The base64url-encoded SHA-256 hash of the verifier
|
|
12
|
+
*/
|
|
13
|
+
export declare function generateCodeChallenge(verifier: string): string;
|
|
@@ -0,0 +1,35 @@
|
|
|
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
|
+
* PKCE (Proof Key for Code Exchange) helpers for SLAS authentication.
|
|
8
|
+
*
|
|
9
|
+
* @module slas/pkce
|
|
10
|
+
*/
|
|
11
|
+
import { randomBytes, createHash } from 'node:crypto';
|
|
12
|
+
/**
|
|
13
|
+
* Encodes a buffer as a base64url string (RFC 7636).
|
|
14
|
+
*/
|
|
15
|
+
function base64url(buffer) {
|
|
16
|
+
return buffer.toString('base64url');
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Generates a cryptographically random PKCE code verifier.
|
|
20
|
+
*
|
|
21
|
+
* @returns A 128-character base64url-encoded random string
|
|
22
|
+
*/
|
|
23
|
+
export function generateCodeVerifier() {
|
|
24
|
+
return base64url(randomBytes(96));
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Generates a PKCE code challenge from a code verifier using S256.
|
|
28
|
+
*
|
|
29
|
+
* @param verifier - The code verifier to hash
|
|
30
|
+
* @returns The base64url-encoded SHA-256 hash of the verifier
|
|
31
|
+
*/
|
|
32
|
+
export function generateCodeChallenge(verifier) {
|
|
33
|
+
return base64url(createHash('sha256').update(verifier).digest());
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=pkce.js.map
|