@salesforce/b2c-tooling-sdk 1.21.3 → 1.23.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.
Files changed (123) hide show
  1. package/data/guides/enrichment.json +294 -0
  2. package/data/guides/index.json +434 -27
  3. package/data/help/index.json +6 -1
  4. package/data/job-steps/index.json +1 -1
  5. package/data/job-steps/job-steps.json +1 -1
  6. package/data/script-api/index.json +49 -5
  7. package/data/tooling/index.json +432 -9
  8. package/data/xsd/commercefeaturestate.xsd +1 -0
  9. package/data/xsd/index.json +2 -1
  10. package/data/xsd/redirecturl.xsd +2 -0
  11. package/dist/esm/auth/index.d.ts +6 -3
  12. package/dist/esm/auth/index.js +4 -2
  13. package/dist/esm/auth/index.js.map +1 -1
  14. package/dist/esm/auth/oauth-implicit.d.ts +19 -0
  15. package/dist/esm/auth/oauth-implicit.js +103 -10
  16. package/dist/esm/auth/oauth-implicit.js.map +1 -1
  17. package/dist/esm/auth/oauth-pkce-fallback.d.ts +68 -0
  18. package/dist/esm/auth/oauth-pkce-fallback.js +128 -0
  19. package/dist/esm/auth/oauth-pkce-fallback.js.map +1 -0
  20. package/dist/esm/auth/oauth-pkce.d.ts +94 -0
  21. package/dist/esm/auth/oauth-pkce.js +579 -0
  22. package/dist/esm/auth/oauth-pkce.js.map +1 -0
  23. package/dist/esm/auth/resolve.d.ts +4 -3
  24. package/dist/esm/auth/resolve.js +17 -2
  25. package/dist/esm/auth/resolve.js.map +1 -1
  26. package/dist/esm/auth/session-store.d.ts +99 -0
  27. package/dist/esm/auth/session-store.js +242 -0
  28. package/dist/esm/auth/session-store.js.map +1 -0
  29. package/dist/esm/auth/stateful-oauth-strategy.d.ts +20 -24
  30. package/dist/esm/auth/stateful-oauth-strategy.js +16 -114
  31. package/dist/esm/auth/stateful-oauth-strategy.js.map +1 -1
  32. package/dist/esm/auth/types.d.ts +20 -4
  33. package/dist/esm/auth/types.js +1 -1
  34. package/dist/esm/auth/types.js.map +1 -1
  35. package/dist/esm/cli/am-command.d.ts +2 -2
  36. package/dist/esm/cli/am-command.js +13 -4
  37. package/dist/esm/cli/am-command.js.map +1 -1
  38. package/dist/esm/cli/base-command.js +3 -3
  39. package/dist/esm/cli/base-command.js.map +1 -1
  40. package/dist/esm/cli/config.js +3 -1
  41. package/dist/esm/cli/config.js.map +1 -1
  42. package/dist/esm/cli/lifecycle.d.ts +1 -1
  43. package/dist/esm/cli/lifecycle.js.map +1 -1
  44. package/dist/esm/cli/oauth-command.d.ts +12 -11
  45. package/dist/esm/cli/oauth-command.js +73 -41
  46. package/dist/esm/cli/oauth-command.js.map +1 -1
  47. package/dist/esm/cli/ods-command.d.ts +1 -1
  48. package/dist/esm/cli/ods-command.js +5 -3
  49. package/dist/esm/cli/ods-command.js.map +1 -1
  50. package/dist/esm/clients/ods.generated.d.ts +16 -0
  51. package/dist/esm/config/dw-json.d.ts +10 -0
  52. package/dist/esm/config/dw-json.js.map +1 -1
  53. package/dist/esm/config/index.d.ts +1 -0
  54. package/dist/esm/config/index.js +2 -0
  55. package/dist/esm/config/index.js.map +1 -1
  56. package/dist/esm/config/mapping.d.ts +13 -0
  57. package/dist/esm/config/mapping.js +66 -3
  58. package/dist/esm/config/mapping.js.map +1 -1
  59. package/dist/esm/config/redaction.d.ts +39 -0
  60. package/dist/esm/config/redaction.js +51 -0
  61. package/dist/esm/config/redaction.js.map +1 -0
  62. package/dist/esm/config/resolver.js +1 -0
  63. package/dist/esm/config/resolver.js.map +1 -1
  64. package/dist/esm/config/sources/env-source.d.ts +1 -1
  65. package/dist/esm/config/sources/env-source.js +14 -7
  66. package/dist/esm/config/sources/env-source.js.map +1 -1
  67. package/dist/esm/config/sources/package-json-source.js +3 -1
  68. package/dist/esm/config/sources/package-json-source.js.map +1 -1
  69. package/dist/esm/config/types.d.ts +14 -4
  70. package/dist/esm/defaults.d.ts +23 -4
  71. package/dist/esm/defaults.js +36 -4
  72. package/dist/esm/defaults.js.map +1 -1
  73. package/dist/esm/docs/content-cache.d.ts +1 -1
  74. package/dist/esm/docs/content-cache.js +1 -1
  75. package/dist/esm/docs/index.d.ts +1 -1
  76. package/dist/esm/docs/index.js.map +1 -1
  77. package/dist/esm/docs/types.d.ts +29 -0
  78. package/dist/esm/index.d.ts +6 -4
  79. package/dist/esm/index.js +3 -3
  80. package/dist/esm/index.js.map +1 -1
  81. package/dist/esm/instance/index.js +3 -3
  82. package/dist/esm/instance/index.js.map +1 -1
  83. package/dist/esm/operations/cap/index.d.ts +2 -2
  84. package/dist/esm/operations/cap/index.js +1 -1
  85. package/dist/esm/operations/cap/index.js.map +1 -1
  86. package/dist/esm/operations/cap/install.d.ts +17 -0
  87. package/dist/esm/operations/cap/install.js +29 -0
  88. package/dist/esm/operations/cap/install.js.map +1 -1
  89. package/dist/esm/operations/cap/package.js +36 -0
  90. package/dist/esm/operations/cap/package.js.map +1 -1
  91. package/dist/esm/operations/cap/validate.d.ts +9 -0
  92. package/dist/esm/operations/cap/validate.js +29 -0
  93. package/dist/esm/operations/cap/validate.js.map +1 -1
  94. package/dist/esm/operations/content/export.js +7 -3
  95. package/dist/esm/operations/content/export.js.map +1 -1
  96. package/dist/esm/operations/content/library.d.ts +26 -0
  97. package/dist/esm/operations/content/library.js +83 -2
  98. package/dist/esm/operations/content/library.js.map +1 -1
  99. package/dist/esm/operations/content/types.d.ts +10 -1
  100. package/dist/esm/operations/jobs/import-set.d.ts +170 -0
  101. package/dist/esm/operations/jobs/import-set.js +538 -0
  102. package/dist/esm/operations/jobs/import-set.js.map +1 -0
  103. package/dist/esm/operations/jobs/index.d.ts +3 -0
  104. package/dist/esm/operations/jobs/index.js +3 -0
  105. package/dist/esm/operations/jobs/index.js.map +1 -1
  106. package/dist/esm/operations/jobs/run.js +0 -11
  107. package/dist/esm/operations/jobs/run.js.map +1 -1
  108. package/dist/esm/operations/jobs/site-archive.js +13 -75
  109. package/dist/esm/operations/jobs/site-archive.js.map +1 -1
  110. package/dist/esm/operations/ods/index.d.ts +4 -0
  111. package/dist/esm/operations/ods/index.js +2 -0
  112. package/dist/esm/operations/ods/index.js.map +1 -1
  113. package/dist/esm/operations/ods/sandbox-settings.d.ts +51 -0
  114. package/dist/esm/operations/ods/sandbox-settings.js +63 -0
  115. package/dist/esm/operations/ods/sandbox-settings.js.map +1 -0
  116. package/dist/esm/operations/ods/wait-for-clones.d.ts +97 -0
  117. package/dist/esm/operations/ods/wait-for-clones.js +145 -0
  118. package/dist/esm/operations/ods/wait-for-clones.js.map +1 -0
  119. package/package.json +2 -1
  120. package/specs/ods-api-v1.json +43 -0
  121. package/dist/esm/auth/stateful-store.d.ts +0 -49
  122. package/dist/esm/auth/stateful-store.js +0 -166
  123. package/dist/esm/auth/stateful-store.js.map +0 -1
@@ -15,6 +15,8 @@ export class LibraryNode {
15
15
  id;
16
16
  type;
17
17
  typeId;
18
+ /** Localized display name (x-default), when present. Content blocks (fragments) always have one. */
19
+ displayName;
18
20
  data;
19
21
  parent;
20
22
  children;
@@ -25,6 +27,7 @@ export class LibraryNode {
25
27
  this.id = values.id;
26
28
  this.type = values.type;
27
29
  this.typeId = values.typeId;
30
+ this.displayName = values.displayName ?? null;
28
31
  this.data = values.data;
29
32
  this.parent = values.parent;
30
33
  this.children = values.children;
@@ -36,12 +39,40 @@ export class LibraryNode {
36
39
  id: this.id,
37
40
  type: this.type,
38
41
  typeId: this.typeId,
42
+ displayName: this.displayName,
39
43
  data: this.data,
40
44
  children: this.children,
41
45
  hidden: this.hidden,
42
46
  };
43
47
  }
44
48
  }
49
+ /**
50
+ * Classify a content element's `<type>` value into a {@link LibraryNodeType}.
51
+ *
52
+ * - `page.*` → `PAGE`
53
+ * - `fragment.*` → `FRAGMENT` (a Page Designer "content block": a shared/reusable singleton)
54
+ * - any other typed value → `COMPONENT`
55
+ * - no type → `CONTENT` (a content asset)
56
+ */
57
+ function classifyContentType(contentType) {
58
+ if (!contentType) {
59
+ return 'CONTENT';
60
+ }
61
+ if (contentType.startsWith('page.')) {
62
+ return 'PAGE';
63
+ }
64
+ if (contentType.startsWith('fragment.')) {
65
+ return 'FRAGMENT';
66
+ }
67
+ return 'COMPONENT';
68
+ }
69
+ /**
70
+ * Extract the x-default `<display-name>` text from a content XML element, if present.
71
+ */
72
+ function extractDisplayName(content) {
73
+ const displayNames = content['display-name'];
74
+ return displayNames?.[0]?.['_'] ?? null;
75
+ }
45
76
  /**
46
77
  * Recursively processes a content XML element into a LibraryNode tree.
47
78
  *
@@ -53,10 +84,12 @@ function processContent(content, allContent, assetQuery) {
53
84
  const contentId = attrs['content-id'];
54
85
  const contentType = content['type']?.[0] ?? null;
55
86
  const dataElements = content['data'];
87
+ const displayName = extractDisplayName(content);
56
88
  const node = new LibraryNode({
57
89
  id: contentId,
58
- type: contentType ? (contentType.startsWith('page.') ? 'PAGE' : 'COMPONENT') : 'CONTENT',
90
+ type: classifyContentType(contentType),
59
91
  typeId: contentType,
92
+ displayName,
60
93
  data: null,
61
94
  children: [],
62
95
  xml: content,
@@ -138,6 +171,8 @@ export class Library {
138
171
  tree;
139
172
  /** @internal Raw xml2js parsed object */
140
173
  xml;
174
+ /** @internal Index of every content element by content-id (built during parse, reused by getContentBlocks) */
175
+ contentById = {};
141
176
  /** @internal */
142
177
  constructor(guard) {
143
178
  if (guard !== CONSTRUCTOR_GUARD) {
@@ -169,12 +204,13 @@ export class Library {
169
204
  hidden: false,
170
205
  xml: null,
171
206
  });
172
- // Index all content by ID
207
+ // Index all content by ID (retained on the instance for getContentBlocks)
173
208
  const contentById = {};
174
209
  for (const c of contentArray) {
175
210
  const cAttrs = c['$'];
176
211
  contentById[cAttrs['content-id']] = c;
177
212
  }
213
+ library.contentById = contentById;
178
214
  // Process pages and root-level content (no type = content asset)
179
215
  for (const c of contentArray) {
180
216
  const cType = c['type']?.[0];
@@ -207,6 +243,46 @@ export class Library {
207
243
  delete libraryElement['folder'];
208
244
  return library;
209
245
  }
246
+ /**
247
+ * Returns the library's content blocks (fragments) as a deduplicated catalog.
248
+ *
249
+ * A content block is a `<content>` element typed `fragment.*`. Unlike pages or
250
+ * content assets, fragments are not root-level tree children — they surface
251
+ * wherever a page/component/other-fragment links them. This method scans the
252
+ * full content set (not just the linked tree) so that **unlinked** blocks are
253
+ * included too, and returns one source-of-truth {@link LibraryNode} per block,
254
+ * with its child subtree attached (Layout fragments keep their region children).
255
+ *
256
+ * @returns One LibraryNode per content block, deduplicated by content-id.
257
+ *
258
+ * @example
259
+ * ```typescript
260
+ * const library = await Library.parse(xml);
261
+ * for (const block of library.getContentBlocks()) {
262
+ * console.log(block.displayName ?? block.id, block.typeId);
263
+ * }
264
+ * ```
265
+ */
266
+ getContentBlocks() {
267
+ const libraryElement = this.xml['library'];
268
+ const contentArray = libraryElement?.['content'] ?? [];
269
+ const blocks = [];
270
+ const seen = new Set();
271
+ for (const c of contentArray) {
272
+ const cType = c['type']?.[0];
273
+ if (!cType || !cType.startsWith('fragment.')) {
274
+ continue;
275
+ }
276
+ const cId = c['$']['content-id'];
277
+ if (seen.has(cId)) {
278
+ continue;
279
+ }
280
+ seen.add(cId);
281
+ const node = processContent(c, this.contentById, this.assetQuery);
282
+ blocks.push(node);
283
+ }
284
+ return blocks;
285
+ }
210
286
  /**
211
287
  * Depth-first traversal of the library tree.
212
288
  *
@@ -350,6 +426,11 @@ export class Library {
350
426
  case 'COMPONENT': {
351
427
  return node.typeId ? `${c('cyan', node.typeId)} ${c('dim', `(${node.id})`)}` : node.id;
352
428
  }
429
+ case 'FRAGMENT': {
430
+ const name = c('magenta', node.displayName ?? node.id);
431
+ const annotation = node.typeId ? `(CONTENT BLOCK: ${node.typeId})` : '(CONTENT BLOCK)';
432
+ return `${name} ${c('dim', annotation)}`;
433
+ }
353
434
  case 'CONTENT': {
354
435
  return `${c('bold', node.id)} ${c('dim', '(CONTENT ASSET)')}`;
355
436
  }
@@ -1 +1 @@
1
- {"version":3,"file":"library.js","sourceRoot":"","sources":["../../../../src/operations/content/library.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"library.js","sourceRoot":"","sources":["../../../../src/operations/content/library.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,13 @@
1
1
  import type { WaitForJobOptions } from '../jobs/run.js';
2
2
  /**
3
3
  * Node types in a content library tree.
4
+ *
5
+ * `FRAGMENT` represents a Page Designer "content block" — a `<content>` element
6
+ * whose type is `fragment.*`. Unlike a `COMPONENT` (at most one incoming link),
7
+ * a fragment is a shared/reusable singleton that can be linked from multiple
8
+ * pages or other content; every placement references the same underlying object.
4
9
  */
5
- export type LibraryNodeType = 'LIBRARY' | 'PAGE' | 'CONTENT' | 'COMPONENT' | 'STATIC';
10
+ export type LibraryNodeType = 'LIBRARY' | 'PAGE' | 'CONTENT' | 'COMPONENT' | 'FRAGMENT' | 'STATIC';
6
11
  /**
7
12
  * Options for parsing a library XML string into a Library tree.
8
13
  */
@@ -66,6 +71,8 @@ export interface LibraryNodeData {
66
71
  id: string;
67
72
  type: LibraryNodeType;
68
73
  typeId: string | null;
74
+ /** Localized display name (x-default), when present. Content blocks (fragments) always have one. */
75
+ displayName: string | null;
69
76
  data: Record<string, unknown> | null;
70
77
  parent: LibraryNodeData | null;
71
78
  children: LibraryNodeData[];
@@ -141,4 +148,6 @@ export interface ContentExportResult {
141
148
  contentCount: number;
142
149
  /** Number of components in the filtered export. */
143
150
  componentCount: number;
151
+ /** Number of content blocks (fragments) in the filtered export. */
152
+ fragmentCount: number;
144
153
  }
@@ -0,0 +1,170 @@
1
+ import type { B2CInstance } from '../../instance/index.js';
2
+ import { type SiteArchiveImportOptions, type SiteArchiveImportResult } from './site-archive.js';
3
+ import type { WaitForJobOptions } from './run.js';
4
+ /** A local archive in an import set. */
5
+ export interface ImportSetItem {
6
+ /** Stable item ID, derived from the source and immediate child name. */
7
+ id: string;
8
+ /** Absolute local path to the directory or zip archive. */
9
+ target: string;
10
+ /** Source kind. */
11
+ kind: 'directory' | 'zip';
12
+ /**
13
+ * Contents of a `README.md` or `README` file found at the top of a directory
14
+ * item, trimmed of surrounding whitespace. Used to surface manual follow-up
15
+ * steps after the item is imported. Undefined when no README is present or
16
+ * for zip items.
17
+ */
18
+ note?: string;
19
+ }
20
+ /** Options for discovering import-set items. */
21
+ export interface DiscoverImportSetOptions {
22
+ /** Include items from `metadata/` directories in discovered cartridges. Defaults to true. */
23
+ includeCartridgeMetadata?: boolean;
24
+ /** Root directory used to discover cartridges. Defaults to the current working directory. */
25
+ cartridgeRoot?: string;
26
+ /** Directory paths to exclude recursively, resolved relative to `cartridgeRoot`. */
27
+ excludeDirectories?: string[];
28
+ }
29
+ /** Durable directory receipt created after an import completes successfully. */
30
+ export interface ImportSetReceipt {
31
+ version: 1;
32
+ setId: string;
33
+ itemId: string;
34
+ /** WebDAV directory whose existence records the applied item name. */
35
+ receiptPath: string;
36
+ }
37
+ /** Result for one item in an import set. */
38
+ export interface ImportSetItemResult extends ImportSetItem {
39
+ status: 'pending' | 'skipped' | 'imported';
40
+ receipt?: ImportSetReceipt;
41
+ importResult?: SiteArchiveImportResult;
42
+ }
43
+ /** Result of planning or applying an import set. */
44
+ export interface ImportSetResult {
45
+ setId: string;
46
+ directory: string;
47
+ dryRun: boolean;
48
+ runId: string;
49
+ items: ImportSetItemResult[];
50
+ imported: number;
51
+ skipped: number;
52
+ pending: number;
53
+ }
54
+ /** Structured lifecycle events delivered while planning and applying an import set. */
55
+ export type ImportSetEvent = {
56
+ type: 'plan';
57
+ setId: string;
58
+ total: number;
59
+ pending: number;
60
+ skipped: number;
61
+ dryRun: boolean;
62
+ } | {
63
+ type: 'lock-acquired';
64
+ setId: string;
65
+ runId: string;
66
+ } | {
67
+ type: 'lock-wait';
68
+ setId: string;
69
+ owner?: ImportSetLockOwner;
70
+ ageSeconds?: number;
71
+ } | {
72
+ type: 'lock-takeover';
73
+ setId: string;
74
+ owner?: ImportSetLockOwner;
75
+ ageSeconds?: number;
76
+ forced: boolean;
77
+ } | {
78
+ type: 'item-skipped';
79
+ item: ImportSetItem;
80
+ receipt: ImportSetReceipt;
81
+ index: number;
82
+ total: number;
83
+ } | {
84
+ type: 'item-importing';
85
+ item: ImportSetItem;
86
+ index: number;
87
+ total: number;
88
+ } | {
89
+ type: 'item-imported';
90
+ item: ImportSetItem;
91
+ receipt: ImportSetReceipt;
92
+ index: number;
93
+ total: number;
94
+ } | {
95
+ type: 'receipt-invalid';
96
+ item: ImportSetItem;
97
+ receiptPath: string;
98
+ };
99
+ /** Owner information stored inside the WebDAV lock directory. */
100
+ export interface ImportSetLockOwner {
101
+ version: 1;
102
+ setId: string;
103
+ runId: string;
104
+ createdAt: string;
105
+ heartbeatAt: string;
106
+ owner?: string;
107
+ }
108
+ /** Options for {@link siteArchiveImportSet}. */
109
+ export interface SiteArchiveImportSetOptions {
110
+ /** Stable receipt and lock namespace. Defaults to `migrations`. */
111
+ setId?: string;
112
+ /** Plan imports without creating state, locking, importing, or writing receipts. */
113
+ dryRun?: boolean;
114
+ /** Keep uploaded archives in Impex/src/instance after each import. */
115
+ keepArchive?: boolean;
116
+ /** Include items from `metadata/` directories in discovered cartridges. Defaults to true. */
117
+ includeCartridgeMetadata?: boolean;
118
+ /** Root directory used to discover cartridges. Defaults to the current working directory. */
119
+ cartridgeRoot?: string;
120
+ /** Directory paths to exclude recursively, resolved relative to `cartridgeRoot`. */
121
+ excludeDirectories?: string[];
122
+ /** WebDAV state root. Defaults to Impex/b2c-cli/import-sets. */
123
+ stateRoot?: string;
124
+ /** Age after which a lock heartbeat is considered stale. Defaults to 1800 seconds. */
125
+ staleLockSeconds?: number;
126
+ /** Poll interval while another runner owns the set lock. Defaults to 3 seconds. */
127
+ lockPollIntervalSeconds?: number;
128
+ /** Lock heartbeat interval. Defaults to 30 seconds. */
129
+ heartbeatIntervalSeconds?: number;
130
+ /** Immediately remove an existing lock before attempting to acquire it. */
131
+ breakLock?: boolean;
132
+ /** Optional owner label stored in lock metadata. */
133
+ owner?: string;
134
+ /** Wait options forwarded to each site archive import. */
135
+ waitOptions?: WaitForJobOptions;
136
+ /** Receives planning, locking, and item progress events. The operation itself does not log or write output. */
137
+ onEvent?: (event: ImportSetEvent) => void;
138
+ /**
139
+ * Archive importer override. Defaults to {@link siteArchiveImport}.
140
+ * Useful when embedding the operation with a custom import policy.
141
+ */
142
+ importArchive?: (instance: B2CInstance, target: string, options: SiteArchiveImportOptions) => Promise<SiteArchiveImportResult>;
143
+ /** Sleep implementation used while polling for a lock. */
144
+ sleep?: (milliseconds: number) => Promise<void>;
145
+ }
146
+ /** Thrown when WebDAV lock or receipt state cannot be safely read or written. */
147
+ export declare class ImportSetStateError extends Error {
148
+ constructor(message: string);
149
+ }
150
+ /**
151
+ * Discovers import items from cartridge `metadata/` directories followed by
152
+ * the explicit import-set directory. A cartridge metadata directory that
153
+ * resembles a site archive is one item; otherwise its immediate child
154
+ * directories and zip archives are items. Cartridge sources are ordered by
155
+ * cartridge name, and child items within each source are sorted by name.
156
+ */
157
+ export declare function discoverImportSet(directory: string, options?: DiscoverImportSetOptions): Promise<ImportSetItem[]>;
158
+ /**
159
+ * Applies an ordered set of site archives exactly until a verified receipt
160
+ * directory is created for each item name. A missing or invalid receipt always
161
+ * leaves the item pending, even if a previous process may have completed the
162
+ * platform import.
163
+ *
164
+ * The operation uses an exclusive WebDAV directory (`MKCOL`) as a best-effort
165
+ * set-wide lock. B2C Commerce does not provide conditional WebDAV deletes, so
166
+ * stale lock takeover is intentionally observable through progress events.
167
+ * The operation never logs or writes output; callers can consume structured
168
+ * progress through {@link SiteArchiveImportSetOptions.onEvent}.
169
+ */
170
+ export declare function siteArchiveImportSet(instance: B2CInstance, directory: string, options?: SiteArchiveImportSetOptions): Promise<ImportSetResult>;