sf-plugin-cms 0.5.0 → 0.6.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 (49) hide show
  1. package/README.md +47 -12
  2. package/lib/commands/cms/export/workspace.d.ts +2 -0
  3. package/lib/commands/cms/export/workspace.js +58 -5
  4. package/lib/commands/cms/export/workspace.js.map +1 -1
  5. package/lib/commands/cms/import/workspace.d.ts +1 -1
  6. package/lib/commands/cms/import/workspace.js +2 -2
  7. package/lib/commands/cms/import/workspace.js.map +1 -1
  8. package/lib/contracts/workspace-export.d.ts +18 -0
  9. package/lib/contracts/workspace-export.js +53 -0
  10. package/lib/contracts/workspace-export.js.map +1 -1
  11. package/lib/contracts/workspace-import.d.ts +1 -0
  12. package/lib/contracts/workspace-import.js +13 -1
  13. package/lib/contracts/workspace-import.js.map +1 -1
  14. package/lib/services/cms-prerequisite-lookup.d.ts +16 -0
  15. package/lib/services/cms-prerequisite-lookup.js +89 -0
  16. package/lib/services/cms-prerequisite-lookup.js.map +1 -0
  17. package/lib/services/content-key.d.ts +9 -0
  18. package/lib/services/content-key.js +15 -0
  19. package/lib/services/content-key.js.map +1 -0
  20. package/lib/services/email-fragment.js +5 -1
  21. package/lib/services/email-fragment.js.map +1 -1
  22. package/lib/services/export-workspace.d.ts +2 -0
  23. package/lib/services/export-workspace.js +104 -47
  24. package/lib/services/export-workspace.js.map +1 -1
  25. package/lib/services/image-import.js +3 -7
  26. package/lib/services/image-import.js.map +1 -1
  27. package/lib/services/import-identities.js +5 -1
  28. package/lib/services/import-identities.js.map +1 -1
  29. package/lib/services/import-workspace.d.ts +48 -1
  30. package/lib/services/import-workspace.js +142 -19
  31. package/lib/services/import-workspace.js.map +1 -1
  32. package/lib/services/landing-page-pair-export.d.ts +31 -0
  33. package/lib/services/landing-page-pair-export.js +122 -0
  34. package/lib/services/landing-page-pair-export.js.map +1 -0
  35. package/lib/services/landing-page-template.d.ts +12 -2
  36. package/lib/services/landing-page-template.js +25 -74
  37. package/lib/services/landing-page-template.js.map +1 -1
  38. package/lib/services/landing-page.d.ts +45 -1
  39. package/lib/services/landing-page.js +241 -3
  40. package/lib/services/landing-page.js.map +1 -1
  41. package/lib/services/variant-identity.d.ts +14 -0
  42. package/lib/services/variant-identity.js +24 -0
  43. package/lib/services/variant-identity.js.map +1 -1
  44. package/lib/services/web-fragment.d.ts +12 -6
  45. package/lib/services/web-fragment.js +60 -19
  46. package/lib/services/web-fragment.js.map +1 -1
  47. package/messages/cms.export.workspace.md +20 -0
  48. package/messages/cms.import.workspace.md +6 -2
  49. package/package.json +1 -1
@@ -1,9 +1,16 @@
1
- import { assertLandingPageTemplateItem, planLandingPageTemplateCopies, validateLandingPageTemplatePrerequisites, } from './landing-page-template.js';
1
+ import { createHash } from 'node:crypto';
2
+ import { isDeepStrictEqual } from 'node:util';
3
+ import { lookupExactCmsVariants } from './cms-prerequisite-lookup.js';
4
+ import { requiredContentIdentifier, requiredVariantIdentifier } from './variant-identity.js';
5
+ import { assertLandingPageTemplateItem, planLandingPageTemplateCopiesForType, validateLandingPageTemplatePrerequisites, } from './landing-page-template.js';
2
6
  const LANDING_PAGE_TYPE = 'sfdc_cms__landingPage';
3
7
  const TEMPLATE_TYPE = 'sfdc_cms__landingPageTemplate';
4
8
  function record(value) {
5
9
  return value !== null && typeof value === 'object' && !Array.isArray(value);
6
10
  }
11
+ function sha256(value) {
12
+ return createHash('sha256').update(JSON.stringify(value)).digest('hex');
13
+ }
7
14
  function exactKeys(value, required, optional, label) {
8
15
  const keys = Object.keys(value);
9
16
  if (required.some((key) => !keys.includes(key)) ||
@@ -43,6 +50,104 @@ export function assertLandingPageItem(item) {
43
50
  inspect(item.contentBody);
44
51
  return assertLandingPageTemplateItem({ ...item, contentType: TEMPLATE_TYPE });
45
52
  }
53
+ function pairForPage(source, item, sourceApiName) {
54
+ const pairs = source.manifest.landingPageTemplatePairs ?? [];
55
+ const matches = pairs.filter(({ page }) => page.apiName === sourceApiName &&
56
+ page.apiName === item.apiName &&
57
+ page.contentKey === item.contentKey &&
58
+ page.variantId === item.id);
59
+ if (matches.length !== 1) {
60
+ throw new TypeError(`Landing-page source must bind exactly one manifest template pair: ${sourceApiName}`);
61
+ }
62
+ const relationships = source.manifest.externalReferences.filter((reference) => reference.kind === 'cms.relationship' &&
63
+ reference.source.sourceId === item.id &&
64
+ reference.resolution === 'unsupported');
65
+ if (relationships.length === 0) {
66
+ throw new TypeError(`Landing-page source must retain its bound unsupported relationship: ${sourceApiName}`);
67
+ }
68
+ return { pair: matches[0], relationshipReferenceId: relationships[0].referenceId };
69
+ }
70
+ function parseTemplateDependency(value, pair, label) {
71
+ if (!record(value))
72
+ throw new TypeError(`${label} must be an object`);
73
+ exactKeys(value, ['source'], ['targetContentKey', 'targetApiName', 'targetTitle'], label);
74
+ if (!record(value.source))
75
+ throw new TypeError(`${label}.source must be an object`);
76
+ exactKeys(value.source, ['requestedTitle', 'apiName', 'contentKey'], [], `${label}.source`);
77
+ for (const key of ['requestedTitle', 'apiName', 'contentKey']) {
78
+ if (typeof value.source[key] !== 'string' || value.source[key].length === 0) {
79
+ throw new TypeError(`${label}.source.${key} must be a nonempty string`);
80
+ }
81
+ }
82
+ if (value.source.requestedTitle !== pair.template.requestedTitle ||
83
+ value.source.apiName !== pair.template.apiName ||
84
+ value.source.contentKey !== pair.template.contentKey) {
85
+ throw new TypeError(`${label}.source disagrees with manifest landingPageTemplatePairs`);
86
+ }
87
+ const contentKey = value.targetContentKey;
88
+ const apiName = value.targetApiName;
89
+ const title = value.targetTitle;
90
+ if ((contentKey === undefined) === (apiName === undefined)) {
91
+ throw new TypeError(`${label} must select target by exactly one of content key or API name`);
92
+ }
93
+ if (contentKey !== undefined) {
94
+ if (typeof contentKey !== 'string' || contentKey.length === 0)
95
+ throw new TypeError(`${label}.targetContentKey must be a nonempty string`);
96
+ if (title !== undefined)
97
+ throw new TypeError(`${label}.targetTitle is not allowed with targetContentKey`);
98
+ }
99
+ if (apiName !== undefined &&
100
+ (typeof apiName !== 'string' || !/^[A-Za-z][A-Za-z\d_]*$/u.test(apiName))) {
101
+ throw new TypeError(`${label}.targetApiName must be an exact developer/API name`);
102
+ }
103
+ if (title !== undefined && (typeof title !== 'string' || title.trim().length === 0)) {
104
+ throw new TypeError(`${label}.targetTitle must be a nonempty string`);
105
+ }
106
+ return {
107
+ source: pair.template,
108
+ ...(contentKey === undefined ? {} : { targetContentKey: contentKey }),
109
+ ...(apiName === undefined ? {} : { targetApiName: apiName }),
110
+ ...(title === undefined ? {} : { targetTitle: title }),
111
+ resolution: 'pending',
112
+ validationStatus: 'pending',
113
+ };
114
+ }
115
+ function compatibilityBody(item) {
116
+ const normalize = (value) => {
117
+ if (Array.isArray(value))
118
+ return value.map((child) => normalize(child));
119
+ if (!record(value))
120
+ return value;
121
+ const next = Object.fromEntries(Object.entries(value).map(([key, child]) => [key, normalize(child)]));
122
+ if (next.type === 'imageReference' &&
123
+ record(next.ref) &&
124
+ typeof next.ref.contentKey === 'string') {
125
+ next.ref = { ...next.ref, contentKey: '<image-content-key>' };
126
+ }
127
+ if (typeof next.url === 'string' && next.url.startsWith('/cms/media/')) {
128
+ next.url = '/cms/media/<image-content-key>';
129
+ }
130
+ if (next.definition === 'sfdc_cms__dataGraphDataProvider' && record(next.attributes)) {
131
+ next.attributes = {
132
+ ...next.attributes,
133
+ dataGraphApiName: '<data-graph-api-name>',
134
+ dataspace: '<data-space>',
135
+ };
136
+ }
137
+ return next;
138
+ };
139
+ const body = normalize(item.contentBody);
140
+ delete body['sfdc_cms:title'];
141
+ delete body['sfdc_cms:urlName'];
142
+ return body;
143
+ }
144
+ function assertSourcePairCompatibility(pageItem, templateItem) {
145
+ assertLandingPageItem(pageItem);
146
+ assertLandingPageTemplateItem(templateItem);
147
+ if (!isDeepStrictEqual(compatibilityBody(pageItem), compatibilityBody(templateItem))) {
148
+ throw new TypeError('Landing page and bound source template differ outside title/urlName');
149
+ }
150
+ }
46
151
  function rows(value) {
47
152
  if (!Array.isArray(value) || value.length === 0 || value.some((row) => !record(row))) {
48
153
  throw new TypeError('Landing-page mappings must be a nonempty array of objects');
@@ -57,7 +162,7 @@ function rows(value) {
57
162
  */
58
163
  export function planLandingPageCopies(source, input) {
59
164
  const transformedRows = rows(input).map((row, index) => {
60
- exactKeys(row, ['source', 'target', 'imageDependencies', 'dataGraphs'], [], `Landing-page mapping ${index}`);
165
+ exactKeys(row, ['source', 'target', 'templateDependency', 'imageDependencies', 'dataGraphs'], [], `Landing-page mapping ${index}`);
61
166
  if (!record(row.source)) {
62
167
  throw new TypeError(`Landing-page mapping ${index}.source must be an object`);
63
168
  }
@@ -65,6 +170,28 @@ export function planLandingPageCopies(source, input) {
65
170
  if (row.source.family !== 'cms' || row.source.type !== 'landingPage') {
66
171
  throw new TypeError(`Landing-page mapping ${index}.source must select cms/landingPage`);
67
172
  }
173
+ const sourceApiName = row.source.apiName;
174
+ if (typeof sourceApiName !== 'string') {
175
+ throw new TypeError(`Landing-page mapping ${index}.source.apiName must be a string`);
176
+ }
177
+ const sourceMatches = source.items.filter((item) => item.contentType === LANDING_PAGE_TYPE && item.apiName === sourceApiName);
178
+ if (sourceMatches.length !== 1) {
179
+ throw new TypeError(`Typed source API name must match exactly one landing page: ${sourceApiName}`);
180
+ }
181
+ const { pair, relationshipReferenceId } = pairForPage(source, sourceMatches[0], sourceApiName);
182
+ const sourceTemplateMatches = source.items.filter((item) => item.contentType === TEMPLATE_TYPE &&
183
+ item.id === pair.template.variantId &&
184
+ item.apiName === pair.template.apiName &&
185
+ item.contentKey === pair.template.contentKey &&
186
+ item.title === pair.template.requestedTitle);
187
+ if (sourceTemplateMatches.length !== 1) {
188
+ throw new TypeError('Bound source landing-page template identity is absent or inconsistent');
189
+ }
190
+ assertSourcePairCompatibility(sourceMatches[0], sourceTemplateMatches[0]);
191
+ const normalizedPageBody = compatibilityBody(sourceMatches[0]);
192
+ const normalizedTemplateBody = compatibilityBody(sourceTemplateMatches[0]);
193
+ const relationship = source.manifest.externalReferences.find(({ referenceId }) => referenceId === relationshipReferenceId);
194
+ const templateDependency = parseTemplateDependency(row.templateDependency, pair, `Landing-page mapping ${index}.templateDependency`);
68
195
  if (!Array.isArray(row.imageDependencies)) {
69
196
  throw new TypeError(`Landing-page mapping ${index}.imageDependencies must be an array`);
70
197
  }
@@ -80,13 +207,45 @@ export function planLandingPageCopies(source, input) {
80
207
  target: row.target,
81
208
  cmsDependencies,
82
209
  dataGraphs: row.dataGraphs,
210
+ templateDependency,
211
+ compatibility: {
212
+ pageVariantId: sourceMatches[0].id,
213
+ sourceTemplateVariantId: sourceTemplateMatches[0].id,
214
+ relationshipReferenceId,
215
+ relationshipDescriptorSha256: sha256(relationship),
216
+ normalizationVersion: 'landing-page-template-compatibility-v1',
217
+ normalizedPageBodySha256: sha256(normalizedPageBody),
218
+ normalizedTemplateBodySha256: sha256(normalizedTemplateBody),
219
+ status: 'passed',
220
+ },
83
221
  };
84
222
  });
85
223
  const transformedSource = {
86
224
  ...source,
87
225
  items: source.items.map((item) => item.contentType === LANDING_PAGE_TYPE ? { ...item, contentType: TEMPLATE_TYPE } : item),
88
226
  };
89
- const planned = planLandingPageTemplateCopies(transformedSource, transformedRows);
227
+ const targetContentKeys = new Set();
228
+ const targetApiNames = new Set();
229
+ for (const { templateDependency } of transformedRows) {
230
+ if (templateDependency.targetContentKey !== undefined) {
231
+ if (targetContentKeys.has(templateDependency.targetContentKey)) {
232
+ throw new TypeError('Duplicate landing-page target template content key');
233
+ }
234
+ targetContentKeys.add(templateDependency.targetContentKey);
235
+ }
236
+ else if (templateDependency.targetApiName !== undefined) {
237
+ if (targetApiNames.has(templateDependency.targetApiName)) {
238
+ throw new TypeError('Duplicate landing-page target template API name');
239
+ }
240
+ targetApiNames.add(templateDependency.targetApiName);
241
+ }
242
+ }
243
+ const planned = planLandingPageTemplateCopiesForType(transformedSource, transformedRows.map((row) => ({
244
+ source: row.source,
245
+ target: row.target,
246
+ cmsDependencies: row.cmsDependencies,
247
+ dataGraphs: row.dataGraphs,
248
+ })), LANDING_PAGE_TYPE, 'Landing-page mapping');
90
249
  const items = planned.items.map((item) => ({ ...item, contentType: LANDING_PAGE_TYPE }));
91
250
  for (const item of items)
92
251
  assertLandingPageItem(item);
@@ -94,8 +253,87 @@ export function planLandingPageCopies(source, input) {
94
253
  ...planned,
95
254
  items,
96
255
  cmsPrerequisites: planned.cmsPrerequisites,
256
+ compatibility: transformedRows.map(({ compatibility }) => compatibility),
257
+ templateDependencies: transformedRows.map(({ templateDependency }) => templateDependency),
97
258
  };
98
259
  }
260
+ function resolvedTemplateIdentity(value) {
261
+ const contentType = record(value.contentType)
262
+ ? value.contentType.fullyQualifiedName
263
+ : value.contentType;
264
+ if (contentType !== TEMPLATE_TYPE ||
265
+ !record(value.contentSpace) ||
266
+ typeof value.contentSpace.id !== 'string' ||
267
+ !record(value.status) ||
268
+ value.status.status !== 'Draft' ||
269
+ value.isPublished !== false ||
270
+ typeof value.apiName !== 'string' ||
271
+ typeof value.contentKey !== 'string' ||
272
+ typeof value.title !== 'string' ||
273
+ !record(value.contentBody)) {
274
+ throw new TypeError('Landing-page target template has incoherent type, identity, or lifecycle');
275
+ }
276
+ const variantId = requiredVariantIdentifier(value, 'Landing-page target template');
277
+ const contentId = requiredContentIdentifier(value, 'Landing-page target template parent');
278
+ if (contentId === variantId) {
279
+ throw new TypeError('Landing-page target template content/variant IDs are incoherent');
280
+ }
281
+ return {
282
+ apiName: value.apiName,
283
+ contentKey: value.contentKey,
284
+ contentId,
285
+ variantId,
286
+ title: value.title,
287
+ contentType: TEMPLATE_TYPE,
288
+ workspaceId: value.contentSpace.id,
289
+ status: 'Draft',
290
+ isPublished: false,
291
+ bodySha256: sha256(value.contentBody),
292
+ };
293
+ }
294
+ /**
295
+ * Resolve exact destination landing-page templates without mutating page bodies.
296
+ * @param {RequestConnection} connection - Destination org connection.
297
+ * @param {string} workspaceId - Exact destination workspace ID.
298
+ * @param {PlannedLandingPageCopies} proposal - Landing-page dependency plan.
299
+ * @param {JsonRequestOptions} options - Optional request metadata and signal.
300
+ * @returns {Promise<void>} Resolves after every target template is proven.
301
+ */
302
+ export async function resolveLandingPageTemplateDependencies(connection, workspaceId, proposal, options = {}) {
303
+ for (const dependency of proposal.templateDependencies) {
304
+ try {
305
+ let matches;
306
+ if (dependency.targetContentKey === undefined) {
307
+ matches = await lookupExactCmsVariants(connection, workspaceId, TEMPLATE_TYPE, dependency.targetApiName, (detail) => detail.apiName === dependency.targetApiName, options);
308
+ if (matches.length === 0 && dependency.targetTitle !== undefined) {
309
+ matches = await lookupExactCmsVariants(connection, workspaceId, TEMPLATE_TYPE, dependency.targetTitle, (detail) => detail.title === dependency.targetTitle, options);
310
+ dependency.resolution = 'title-fallback';
311
+ }
312
+ else {
313
+ dependency.resolution = 'api-name';
314
+ }
315
+ }
316
+ else {
317
+ matches = await lookupExactCmsVariants(connection, workspaceId, TEMPLATE_TYPE, dependency.targetContentKey, (detail) => detail.contentKey === dependency.targetContentKey, options);
318
+ dependency.resolution = 'content-key';
319
+ }
320
+ if (matches.length !== 1) {
321
+ throw new TypeError('Landing-page target template selector must resolve exactly once');
322
+ }
323
+ const target = resolvedTemplateIdentity(matches[0]);
324
+ const targetSpace = matches[0].contentSpace;
325
+ if (!record(targetSpace) || targetSpace.id !== workspaceId) {
326
+ throw new TypeError('Landing-page target template belongs to another workspace');
327
+ }
328
+ dependency.target = target;
329
+ dependency.validationStatus = 'passed';
330
+ }
331
+ catch (error) {
332
+ dependency.validationStatus = 'failed';
333
+ throw error;
334
+ }
335
+ }
336
+ }
99
337
  /**
100
338
  * Resolve exact typed images, validate Data Graph identities, and rewrite evidenced references.
101
339
  * @param {RequestConnection} connection - Destination org connection.
@@ -1 +1 @@
1
- {"version":3,"file":"landing-page.js","sourceRoot":"","sources":["../../src/services/landing-page.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"landing-page.js","sourceRoot":"","sources":["../../src/services/landing-page.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,20 @@ type VariantIdentity = {
2
2
  contentId?: string;
3
3
  variantId?: string;
4
4
  };
5
+ /**
6
+ * Reads a required Managed Content variant ID from current or legacy response fields.
7
+ * @param {Record<string, unknown>} record - Managed Content variant response.
8
+ * @param {string} [label] - Human-readable error label.
9
+ * @returns {string} Exact variant identifier.
10
+ */
11
+ export declare function requiredVariantIdentifier(record: Record<string, unknown>, label?: string): string;
12
+ /**
13
+ * Reads a required Managed Content parent ID from current or legacy response fields.
14
+ * @param {Record<string, unknown>} record - Managed Content variant response.
15
+ * @param {string} [label] - Human-readable error label.
16
+ * @returns {string} Exact parent content identifier.
17
+ */
18
+ export declare function requiredContentIdentifier(record: Record<string, unknown>, label?: string): string;
5
19
  /**
6
20
  * Reads documented variant response IDs and this package's legacy fixture fields.
7
21
  * Never treats a variant ID as the parent content ID.
@@ -13,6 +13,30 @@ function retainedIdentifier(record, current, legacy) {
13
13
  }
14
14
  return (record[current] ?? record[legacy]);
15
15
  }
16
+ /**
17
+ * Reads a required Managed Content variant ID from current or legacy response fields.
18
+ * @param {Record<string, unknown>} record - Managed Content variant response.
19
+ * @param {string} [label] - Human-readable error label.
20
+ * @returns {string} Exact variant identifier.
21
+ */
22
+ export function requiredVariantIdentifier(record, label = 'Variant') {
23
+ const variantId = retainedIdentifier(record, 'managedContentVariantId', 'id');
24
+ if (variantId === undefined)
25
+ throw new TypeError(`${label} identity is missing`);
26
+ return variantId;
27
+ }
28
+ /**
29
+ * Reads a required Managed Content parent ID from current or legacy response fields.
30
+ * @param {Record<string, unknown>} record - Managed Content variant response.
31
+ * @param {string} [label] - Human-readable error label.
32
+ * @returns {string} Exact parent content identifier.
33
+ */
34
+ export function requiredContentIdentifier(record, label = 'Content') {
35
+ const contentId = retainedIdentifier(record, 'managedContentId', 'contentId');
36
+ if (contentId === undefined)
37
+ throw new TypeError(`${label} identity is missing`);
38
+ return contentId;
39
+ }
16
40
  /**
17
41
  * Reads documented variant response IDs and this package's legacy fixture fields.
18
42
  * Never treats a variant ID as the parent content ID.
@@ -1 +1 @@
1
- {"version":3,"file":"variant-identity.js","sourceRoot":"","sources":["../../src/services/variant-identity.ts"],"names":[],"mappings":"AAEA,SAAS,kBAAkB,CACzB,MAA+B,EAC/B,OAAe,EACf,MAAc;IAEd,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IACE,KAAK,KAAK,SAAS;YACnB,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EACzE,CAAC;YACD,MAAM,IAAI,SAAS,CAAC,WAAW,GAAG,gCAAgC,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IACD,IACE,MAAM,CAAC,OAAO,CAAC,KAAK,SAAS;QAC7B,MAAM,CAAC,MAAM,CAAC,KAAK,SAAS;QAC5B,MAAM,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,EAClC,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,2BAA2B,OAAO,IAAI,MAAM,WAAW,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAuB,CAAC;AACnE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,MAA+B,EAC/B,iBAAyB;IAEzB,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,IAAI,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;IAC9E,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;QAC/D,MAAM,IAAI,SAAS,CAAC,uDAAuD,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;QAC/D,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"variant-identity.js","sourceRoot":"","sources":["../../src/services/variant-identity.ts"],"names":[],"mappings":"AAEA,SAAS,kBAAkB,CACzB,MAA+B,EAC/B,OAAe,EACf,MAAc;IAEd,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IACE,KAAK,KAAK,SAAS;YACnB,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EACzE,CAAC;YACD,MAAM,IAAI,SAAS,CAAC,WAAW,GAAG,gCAAgC,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IACD,IACE,MAAM,CAAC,OAAO,CAAC,KAAK,SAAS;QAC7B,MAAM,CAAC,MAAM,CAAC,KAAK,SAAS;QAC5B,MAAM,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,EAClC,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,2BAA2B,OAAO,IAAI,MAAM,WAAW,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAuB,CAAC;AACnE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CACvC,MAA+B,EAC/B,KAAK,GAAG,SAAS;IAEjB,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,IAAI,CAAC,CAAC;IAC9E,IAAI,SAAS,KAAK,SAAS;QAAE,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,sBAAsB,CAAC,CAAC;IACjF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CACvC,MAA+B,EAC/B,KAAK,GAAG,SAAS;IAEjB,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;IAC9E,IAAI,SAAS,KAAK,SAAS;QAAE,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,sBAAsB,CAAC,CAAC;IACjF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,MAA+B,EAC/B,iBAAyB;IAEzB,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,IAAI,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;IAC9E,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;QAC/D,MAAM,IAAI,SAAS,CAAC,uDAAuD,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;QAC/D,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAClC,CAAC"}
@@ -1,8 +1,13 @@
1
1
  import type { Connection } from '@salesforce/core';
2
2
  import type { LoadedWorkspaceExport, WorkspaceImportItem } from './import-workspace.js';
3
3
  import type { PlannedImportIdentities } from './import-identities.js';
4
- type QueryConnection = {
5
- readonly query?: Connection['query'];
4
+ type RequestConnection = Pick<Connection, 'request'> & Partial<Pick<Connection, 'version'>>;
5
+ export type DataGraphValidationEvidence = {
6
+ readonly url: string;
7
+ readonly name?: string;
8
+ readonly dataspaceName?: string;
9
+ readonly status?: string;
10
+ readonly failure?: string;
6
11
  };
7
12
  export type WebFragmentDataGraphPrerequisite = {
8
13
  readonly sourceDeveloperName: string;
@@ -11,6 +16,7 @@ export type WebFragmentDataGraphPrerequisite = {
11
16
  readonly targetDataSpace: string;
12
17
  readonly resolution: 'preserved' | 'explicit-map';
13
18
  validationStatus?: 'pending' | 'passed' | 'failed';
19
+ validationEvidence?: DataGraphValidationEvidence;
14
20
  };
15
21
  export type PlannedWebFragmentCopies = PlannedImportIdentities & {
16
22
  readonly dataGraphs: readonly WebFragmentDataGraphPrerequisite[];
@@ -32,10 +38,10 @@ export declare function assertWebFragmentItem(item: WorkspaceImportItem): readon
32
38
  */
33
39
  export declare function planWebFragmentCopies(source: LoadedWorkspaceExport, input: unknown): PlannedWebFragmentCopies;
34
40
  /**
35
- * Prove each exact target Data Graph developer-name/data-space pair exists uniquely.
36
- * @param {QueryConnection} connection - Destination org query transport.
41
+ * Prove each exact target Data Graph developer-name/data-space pair is ready for use.
42
+ * @param {RequestConnection} connection - Destination org request transport and selected version.
37
43
  * @param {readonly WebFragmentDataGraphPrerequisite[]} prerequisites - Exact target prerequisites.
38
- * @returns {Promise<void>} Fulfilled only when every prerequisite resolves exactly once.
44
+ * @returns {Promise<void>} Fulfilled only when every named response qualifies exactly.
39
45
  */
40
- export declare function validateDataGraphPrerequisites(connection: QueryConnection, prerequisites: readonly WebFragmentDataGraphPrerequisite[]): Promise<void>;
46
+ export declare function validateDataGraphPrerequisites(connection: RequestConnection, prerequisites: readonly WebFragmentDataGraphPrerequisite[]): Promise<void>;
41
47
  export {};
@@ -1,4 +1,5 @@
1
1
  import { isDeepStrictEqual } from 'node:util';
2
+ import { assertCanonicalContentKey } from './content-key.js';
2
3
  const WEB_FRAGMENT_TYPE = 'sfdc_cms__webFragment';
3
4
  const DATA_GRAPH_PROVIDER = 'sfdc_cms__dataGraphDataProvider';
4
5
  const BODY_KEYS = [
@@ -147,7 +148,8 @@ export function planWebFragmentCopies(source, input) {
147
148
  if (!record(row.target))
148
149
  throw new TypeError(`Web fragment mapping ${index}.target must be an object`);
149
150
  exactKeys(row.target, ['contentKey', 'apiName'], `Web fragment mapping ${index}.target`);
150
- identifier(row.target.contentKey, `Web fragment mapping ${index}.target.contentKey`);
151
+ nonempty(row.target.contentKey, `Web fragment mapping ${index}.target.contentKey`);
152
+ assertCanonicalContentKey(row.target.contentKey, `Web fragment mapping ${index}.target.contentKey`);
151
153
  identifier(row.target.apiName, `Web fragment mapping ${index}.target.apiName`);
152
154
  const contentKey = row.target.contentKey;
153
155
  const apiName = row.target.apiName;
@@ -217,29 +219,68 @@ export function planWebFragmentCopies(source, input) {
217
219
  dataGraphs: dataGraphs.toSorted((left, right) => `${left.targetDeveloperName}\0${left.targetDataSpace}`.localeCompare(`${right.targetDeveloperName}\0${right.targetDataSpace}`)),
218
220
  };
219
221
  }
220
- function soqlString(value) {
221
- return `'${value.replaceAll('\\', '\\\\').replaceAll("'", String.raw `\'`)}'`;
222
- }
223
222
  /**
224
- * Prove each exact target Data Graph developer-name/data-space pair exists uniquely.
225
- * @param {QueryConnection} connection - Destination org query transport.
223
+ * Prove each exact target Data Graph developer-name/data-space pair is ready for use.
224
+ * @param {RequestConnection} connection - Destination org request transport and selected version.
226
225
  * @param {readonly WebFragmentDataGraphPrerequisite[]} prerequisites - Exact target prerequisites.
227
- * @returns {Promise<void>} Fulfilled only when every prerequisite resolves exactly once.
226
+ * @returns {Promise<void>} Fulfilled only when every named response qualifies exactly.
228
227
  */
229
228
  export async function validateDataGraphPrerequisites(connection, prerequisites) {
230
- if (connection.query === undefined) {
231
- throw new TypeError('Destination Data Graph prerequisites cannot be queried');
232
- }
233
- const unique = new Map(prerequisites.map((value) => [`${value.targetDeveloperName}\0${value.targetDataSpace}`, value]));
234
- for (const prerequisite of unique.values()) {
235
- const result = await connection.query(`SELECT DeveloperName, DataSpaceDevName FROM DataGraph WHERE DeveloperName = ${soqlString(prerequisite.targetDeveloperName)} AND DataSpaceDevName = ${soqlString(prerequisite.targetDataSpace)}`);
236
- const matches = result.records.filter((record) => record.DeveloperName === prerequisite.targetDeveloperName &&
237
- record.DataSpaceDevName === prerequisite.targetDataSpace);
238
- if (result.totalSize !== 1 || result.records.length !== 1 || matches.length !== 1) {
239
- prerequisite.validationStatus = 'failed';
240
- throw new TypeError(`Data Graph prerequisite must resolve exactly once: ${prerequisite.targetDeveloperName}/${prerequisite.targetDataSpace}`);
229
+ if (typeof connection.version !== 'string' || connection.version.trim().length === 0) {
230
+ throw new TypeError('Destination connection must provide its selected API version');
231
+ }
232
+ const groups = new Map();
233
+ for (const prerequisite of prerequisites) {
234
+ const key = `${prerequisite.targetDeveloperName}\0${prerequisite.targetDataSpace}`;
235
+ const group = groups.get(key) ?? [];
236
+ group.push(prerequisite);
237
+ groups.set(key, group);
238
+ }
239
+ for (const group of groups.values()) {
240
+ const prerequisite = group[0];
241
+ const url = `/services/data/v${connection.version}/ssot/data-graphs/${encodeURIComponent(prerequisite.targetDeveloperName)}`;
242
+ let response;
243
+ try {
244
+ response = await connection.request({ method: 'GET', url });
245
+ }
246
+ catch (error) {
247
+ const evidence = {
248
+ url,
249
+ failure: error instanceof Error ? error.message : String(error),
250
+ };
251
+ for (const occurrence of group) {
252
+ occurrence.validationStatus = 'failed';
253
+ occurrence.validationEvidence = evidence;
254
+ }
255
+ throw new TypeError(`Data Graph prerequisite request failed: ${prerequisite.targetDeveloperName}/${prerequisite.targetDataSpace}`, { cause: error });
256
+ }
257
+ const evidence = {
258
+ url,
259
+ ...(record(response) && typeof response.name === 'string' ? { name: response.name } : {}),
260
+ ...(record(response) && typeof response.dataspaceName === 'string'
261
+ ? { dataspaceName: response.dataspaceName }
262
+ : {}),
263
+ ...(record(response) && typeof response.status === 'string'
264
+ ? { status: response.status }
265
+ : {}),
266
+ };
267
+ const qualifies = record(response) &&
268
+ typeof response.name === 'string' &&
269
+ response.name.length > 0 &&
270
+ response.name === prerequisite.targetDeveloperName &&
271
+ typeof response.dataspaceName === 'string' &&
272
+ response.dataspaceName.length > 0 &&
273
+ response.dataspaceName === prerequisite.targetDataSpace &&
274
+ typeof response.status === 'string' &&
275
+ response.status.trim().length > 0 &&
276
+ ['ready', 'active'].includes(response.status.trim().toLowerCase());
277
+ for (const occurrence of group) {
278
+ occurrence.validationStatus = qualifies ? 'passed' : 'failed';
279
+ occurrence.validationEvidence = evidence;
280
+ }
281
+ if (!qualifies) {
282
+ throw new TypeError(`Data Graph prerequisite response did not qualify: ${prerequisite.targetDeveloperName}/${prerequisite.targetDataSpace}`);
241
283
  }
242
- prerequisite.validationStatus = 'passed';
243
284
  }
244
285
  }
245
286
  //# sourceMappingURL=web-fragment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"web-fragment.js","sourceRoot":"","sources":["../../src/services/web-fragment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web-fragment.js","sourceRoot":"","sources":["../../src/services/web-fragment.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAG9C,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAE7D,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AAClD,MAAM,mBAAmB,GAAG,iCAAiC,CAAC;AAC9D,MAAM,SAAS,GAAG;IAChB,2BAA2B;IAC3B,uBAAuB;IACvB,yBAAyB;IACzB,uBAAuB;IACvB,gBAAgB;IAChB,gBAAgB;IAChB,mBAAmB;CACX,CAAC;AACX,MAAM,gBAAgB,GAAG,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AA2B3F,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,SAAS,CAAC,KAAiB,EAAE,QAA2B,EAAE,KAAa;IAC9E,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,yBAAyB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc,EAAE,KAAa;IAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,4BAA4B,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAc,EAAE,KAAa;IAC/C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACvB,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,sCAAsC,CAAC,CAAC;IACtE,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,KAAc,EAAE,KAAa;IAC9C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACvB,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,6CAA6C,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;IACzF,IAAI,KAAK,CAAC,UAAU,KAAK,2BAA2B,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC/E,MAAM,IAAI,SAAS,CAAC,wDAAwD,CAAC,CAAC;IAChF,CAAC;IACD,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,4BAA4B,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;QAChC,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc,EAAE,KAAa;IAC7C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,oBAAoB,CAAC,CAAC;IACtE,SAAS,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,mBAAmB,CAAC,EAAE,KAAK,CAAC,CAAC;IAC3E,IAAI,KAAK,CAAC,UAAU,KAAK,mBAAmB,IAAI,KAAK,CAAC,iBAAiB,KAAK,YAAY,EAAE,CAAC;QACzF,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,oDAAoD,CAAC,CAAC;IACpF,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,+BAA+B,CAAC,CAAC;IAC5F,SAAS,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,kBAAkB,EAAE,WAAW,CAAC,EAAE,GAAG,KAAK,aAAa,CAAC,CAAC;IACtF,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,gBAAgB,EAAE,GAAG,KAAK,8BAA8B,CAAC,CAAC;IACtF,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,GAAG,KAAK,uBAAuB,CAAC,CAAC;IACvE,OAAO;QACL,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC,gBAAgB;QAChD,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,SAAS;KACtC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAyB;IAEzB,IAAI,IAAI,CAAC,WAAW,KAAK,iBAAiB,EAAE,CAAC;QAC3C,MAAM,IAAI,SAAS,CAAC,oDAAoD,iBAAiB,EAAE,CAAC,CAAC;IAC/F,CAAC;IACD,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAC;IACjD,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IAC3C,SAAS,CAAC,IAAI,CAAC,WAAyB,EAAE,SAAS,EAAE,0BAA0B,CAAC,CAAC;IACjF,IAAI,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;QACtD,MAAM,IAAI,SAAS,CAAC,wDAAwD,CAAC,CAAC;IAChF,CAAC;IACD,IACE,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,EAAE;QAC5D,kBAAkB,EAAE,WAAW;KAChC,CAAC,EACF,CAAC;QACD,MAAM,IAAI,SAAS,CACjB,6EAA6E,CAC9E,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,2BAA2B,CAAC,EAAE,gBAAgB,CAAC,EAAE,CAAC;QACxF,MAAM,IAAI,SAAS,CAAC,gEAAgE,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,SAAS,CAAC,qDAAqD,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAC;IACzE,CAAC;IACD,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC;IAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,SAAS,CAAC,oEAAoE,CAAC,CAAC;IAC5F,CAAC;IACD,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACnD,QAAQ,CAAC,KAAK,EAAE,uBAAuB,KAAK,EAAE,CAAC,CAChD,CAAC;IACF,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,aAAa,KAAK,KAAK,EAAE,CAAC,CACzF,CAAC;IACF,IAAI,UAAU,CAAC,IAAI,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC;QAC7C,MAAM,IAAI,SAAS,CAAC,kDAAkD,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,SAAS,CAAC,2DAA2D,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,KAAqB,CAAC;AAC/B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAA6B,EAC7B,KAAc;IAEd,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ;QAAE,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAC;IAC/F,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACxE,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CACnF,CAAC;IACF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,KAAK,GAA0B,EAAE,CAAC;IACxC,MAAM,UAAU,GAAuC,EAAE,CAAC;IAE1D,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QACxD,SAAS,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,wBAAwB,KAAK,EAAE,CAAC,CAAC;QACpF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACrB,MAAM,IAAI,SAAS,CAAC,wBAAwB,KAAK,2BAA2B,CAAC,CAAC;QAChF,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,wBAAwB,KAAK,SAAS,CAAC,CAAC;QAC7F,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACrE,MAAM,IAAI,SAAS,CAAC,wBAAwB,KAAK,qCAAqC,CAAC,CAAC;QAC1F,CAAC;QACD,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,wBAAwB,KAAK,iBAAiB,CAAC,CAAC;QAC/E,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;QACzC,IAAI,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC;YAC7B,MAAM,IAAI,SAAS,CAAC,qCAAqC,aAAa,EAAE,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CACjC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,KAAK,iBAAiB,IAAI,IAAI,CAAC,OAAO,KAAK,aAAa,CACnF,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,SAAS,CACjB,8DAA8D,aAAa,EAAE,CAC9E,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,mBAAmB,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAExD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACrB,MAAM,IAAI,SAAS,CAAC,wBAAwB,KAAK,2BAA2B,CAAC,CAAC;QAChF,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,EAAE,wBAAwB,KAAK,SAAS,CAAC,CAAC;QACzF,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,wBAAwB,KAAK,oBAAoB,CAAC,CAAC;QACnF,yBAAyB,CACvB,GAAG,CAAC,MAAM,CAAC,UAAU,EACrB,wBAAwB,KAAK,oBAAoB,CAClD,CAAC;QACF,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,wBAAwB,KAAK,iBAAiB,CAAC,CAAC;QAC/E,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;QACzC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;QACnC,IAAI,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7D,MAAM,IAAI,SAAS,CAAC,2DAA2D,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,SAAS,CAAC,wDAAwD,CAAC,CAAC;QAChF,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,KAAK,mBAAmB,CAAC,MAAM,EAAE,CAAC;YAC3F,MAAM,IAAI,SAAS,CAAC,sEAAsE,CAAC,CAAC;QAC9F,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4C,CAAC;QACnE,KAAK,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACd,MAAM,IAAI,SAAS,CACjB,wBAAwB,KAAK,eAAe,UAAU,qBAAqB,CAC5E,CAAC;YACJ,SAAS,CACP,GAAG,EACH,CAAC,qBAAqB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,iBAAiB,CAAC,EACpF,wBAAwB,KAAK,eAAe,UAAU,GAAG,CAC1D,CAAC;YACF,UAAU,CAAC,GAAG,CAAC,mBAAmB,EAAE,qBAAqB,CAAC,CAAC;YAC3D,SAAS,CAAC,GAAG,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;YAClD,UAAU,CAAC,GAAG,CAAC,mBAAmB,EAAE,qBAAqB,CAAC,CAAC;YAC3D,SAAS,CAAC,GAAG,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;YAClD,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,mBAAmB,KAAK,GAAG,CAAC,eAAe,EAAE,CAAC;YACjE,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,qCAAqC,CAAC,CAAC;YAChF,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE;gBACd,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;gBAC5C,eAAe,EAAE,GAAG,CAAC,eAAe;gBACpC,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;gBAC5C,eAAe,EAAE,GAAG,CAAC,eAAe;gBACpC,UAAU,EACR,GAAG,CAAC,mBAAmB,KAAK,GAAG,CAAC,mBAAmB;oBACnD,GAAG,CAAC,eAAe,KAAK,GAAG,CAAC,eAAe;oBACzC,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,cAAc;gBACpB,gBAAgB,EAAE,SAAS;aAC5B,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,YAAY,IAAI,mBAAmB,EAAE,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,aAAa,KAAK,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC;gBAC5E,MAAM,IAAI,SAAS,CACjB,wCAAwC,YAAY,CAAC,aAAa,IAAI,YAAY,CAAC,SAAS,EAAE,CAC/F,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,SAAS,GAAI,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAe,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACzF,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC;YACxD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,aAAa,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAE,CAAC;YAC/E,OAAO;gBACL,GAAI,KAAoB;gBACxB,UAAU,EAAE;oBACV,gBAAgB,EAAE,MAAM,CAAC,mBAAmB;oBAC5C,SAAS,EAAE,MAAM,CAAC,eAAe;iBAClC;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC3B,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzB,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC;YACT,GAAG,IAAI;YACP,OAAO;YACP,UAAU;YACV,WAAW,EAAE,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,yBAAyB,EAAE,SAAS,EAAE;SAC3E,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,OAAQ,CAAC,CAAC;QACnF,iBAAiB,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,QAAQ,EAAE;QAC7C,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAC9C,GAAG,IAAI,CAAC,mBAAmB,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC,aAAa,CAClE,GAAG,KAAK,CAAC,mBAAmB,KAAK,KAAK,CAAC,eAAe,EAAE,CACzD,CACF;KACF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,UAA6B,EAC7B,aAA0D;IAE1D,IAAI,OAAO,UAAU,CAAC,OAAO,KAAK,QAAQ,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,SAAS,CAAC,8DAA8D,CAAC,CAAC;IACtF,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,EAA8C,CAAC;IACrE,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,GAAG,YAAY,CAAC,mBAAmB,KAAK,YAAY,CAAC,eAAe,EAAE,CAAC;QACnF,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzB,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QACpC,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,mBAAmB,UAAU,CAAC,OAAO,qBAAqB,kBAAkB,CAAC,YAAY,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC7H,IAAI,QAAiB,CAAC;QACtB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,QAAQ,GAAgC;gBAC5C,GAAG;gBACH,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAChE,CAAC;YACF,KAAK,MAAM,UAAU,IAAI,KAAK,EAAE,CAAC;gBAC/B,UAAU,CAAC,gBAAgB,GAAG,QAAQ,CAAC;gBACvC,UAAU,CAAC,kBAAkB,GAAG,QAAQ,CAAC;YAC3C,CAAC;YACD,MAAM,IAAI,SAAS,CACjB,2CAA2C,YAAY,CAAC,mBAAmB,IAAI,YAAY,CAAC,eAAe,EAAE,EAC7G,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAgC;YAC5C,GAAG;YACH,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzF,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,OAAO,QAAQ,CAAC,aAAa,KAAK,QAAQ;gBAChE,CAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE;gBAC3C,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ;gBACzD,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE;gBAC7B,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;QACF,MAAM,SAAS,GACb,MAAM,CAAC,QAAQ,CAAC;YAChB,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ;YACjC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YACxB,QAAQ,CAAC,IAAI,KAAK,YAAY,CAAC,mBAAmB;YAClD,OAAO,QAAQ,CAAC,aAAa,KAAK,QAAQ;YAC1C,QAAQ,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;YACjC,QAAQ,CAAC,aAAa,KAAK,YAAY,CAAC,eAAe;YACvD,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ;YACnC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YACjC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QACrE,KAAK,MAAM,UAAU,IAAI,KAAK,EAAE,CAAC;YAC/B,UAAU,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC9D,UAAU,CAAC,kBAAkB,GAAG,QAAQ,CAAC;QAC3C,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,SAAS,CACjB,qDAAqD,YAAY,CAAC,mBAAmB,IAAI,YAAY,CAAC,eAAe,EAAE,CACxH,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -56,6 +56,26 @@ Exact case-insensitive CMS workspace name.
56
56
 
57
57
  Bulk-only workspace type filter: Marketing or Content (case-insensitive).
58
58
 
59
+ # flags.email-fragment-map.summary
60
+
61
+ JSON file containing a nonempty array of exact `sfdc_cms__emailFragment` API names. Every name must resolve exactly once.
62
+
63
+ # flags.web-fragment-map.summary
64
+
65
+ JSON file containing a nonempty array of exact `sfdc_cms__webFragment` API names. Every name must resolve exactly once.
66
+
67
+ # flags.landing-page-template-map.summary
68
+
69
+ JSON file containing a nonempty array of exact `sfdc_cms__landingPageTemplate` API names. Every name must resolve exactly once.
70
+
71
+ # flags.landing-page-map.summary
72
+
73
+ JSON file containing a nonempty array of exact `sfdc_cms__landingPage` API names. Every name must resolve exactly once.
74
+
75
+ # flags.landing-page-pair-map.summary
76
+
77
+ JSON file containing one or more explicit page/template pairs. Each page is selected by exact `sfdc_cms__landingPage` API name. Each source template is resolved by exact human title/label with strict zero/one/many behavior; an optional independently known API name can corroborate the resolved canonical template identity but is never derived from the opaque page relationship value. The package records the requested title plus the resolved template API name, content key, and variant ID.
78
+
59
79
  # flags.editable-dir.summary
60
80
 
61
81
  New single-workspace companion directory for eligible native email/template HTML. Requires explicit --output-dir; paths must be new and disjoint.