sf-plugin-cms 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/README.md +241 -20
  2. package/lib/commands/cms/export/workspace.d.ts +5 -1
  3. package/lib/commands/cms/export/workspace.js +60 -2
  4. package/lib/commands/cms/export/workspace.js.map +1 -1
  5. package/lib/commands/cms/import/workspace.d.ts +12 -4
  6. package/lib/commands/cms/import/workspace.js +167 -20
  7. package/lib/commands/cms/import/workspace.js.map +1 -1
  8. package/lib/commands/cms/info.js +21 -2
  9. package/lib/commands/cms/info.js.map +1 -1
  10. package/lib/contracts/info.d.ts +7 -4
  11. package/lib/contracts/info.js +17 -8
  12. package/lib/contracts/info.js.map +1 -1
  13. package/lib/contracts/shared.d.ts +2 -1
  14. package/lib/contracts/shared.js +11 -3
  15. package/lib/contracts/shared.js.map +1 -1
  16. package/lib/contracts/workspace-export.d.ts +23 -3
  17. package/lib/contracts/workspace-export.js +118 -5
  18. package/lib/contracts/workspace-export.js.map +1 -1
  19. package/lib/contracts/workspace-import.d.ts +64 -0
  20. package/lib/contracts/workspace-import.js +119 -0
  21. package/lib/contracts/workspace-import.js.map +1 -1
  22. package/lib/index.d.ts +3 -1
  23. package/lib/index.js +2 -0
  24. package/lib/index.js.map +1 -1
  25. package/lib/services/email-fragment.d.ts +15 -0
  26. package/lib/services/email-fragment.js +199 -0
  27. package/lib/services/email-fragment.js.map +1 -0
  28. package/lib/services/export-workspace.d.ts +13 -1
  29. package/lib/services/export-workspace.js +183 -7
  30. package/lib/services/export-workspace.js.map +1 -1
  31. package/lib/services/image-import.d.ts +91 -0
  32. package/lib/services/image-import.js +579 -0
  33. package/lib/services/image-import.js.map +1 -0
  34. package/lib/services/import-workspace.d.ts +16 -3
  35. package/lib/services/import-workspace.js +142 -14
  36. package/lib/services/import-workspace.js.map +1 -1
  37. package/lib/services/landing-page-template.d.ts +52 -0
  38. package/lib/services/landing-page-template.js +421 -0
  39. package/lib/services/landing-page-template.js.map +1 -0
  40. package/lib/services/landing-page.d.ts +43 -0
  41. package/lib/services/landing-page.js +117 -0
  42. package/lib/services/landing-page.js.map +1 -0
  43. package/lib/services/web-fragment.d.ts +41 -0
  44. package/lib/services/web-fragment.js +245 -0
  45. package/lib/services/web-fragment.js.map +1 -0
  46. package/lib/transport/experimental-media.d.ts +30 -0
  47. package/lib/transport/experimental-media.js +224 -0
  48. package/lib/transport/experimental-media.js.map +1 -0
  49. package/lib/transport/json-request.d.ts +9 -1
  50. package/lib/transport/json-request.js +30 -3
  51. package/lib/transport/json-request.js.map +1 -1
  52. package/lib/transport/multipart-image-create.d.ts +28 -0
  53. package/lib/transport/multipart-image-create.js +189 -0
  54. package/lib/transport/multipart-image-create.js.map +1 -0
  55. package/messages/cms.import.workspace.md +6 -0
  56. package/package.json +1 -1
@@ -2,14 +2,33 @@ import { type CmsDiagnostics, type CmsProvenance, type OpaqueCmsReference } from
2
2
  export declare const WORKSPACE_EXPORT_SET_CONTRACT: "sf-cms-workspace-export-set";
3
3
  export declare const WORKSPACE_EXPORT_MANIFEST_CONTRACT: "sf-cms-workspace-export";
4
4
  export declare const EXTERNAL_REFERENCE_CORRELATIONS_CONTRACT: "sf-cms-external-reference-correlations@1";
5
+ export declare class UnsupportedWorkspacePackageVersionError extends TypeError {
6
+ readonly code: "UNSUPPORTED_PACKAGE_VERSION";
7
+ constructor(message: string);
8
+ }
5
9
  export type WorkspaceExportManifestItem = {
6
10
  path: string;
7
11
  sha256: string;
8
12
  kind: string;
9
13
  referenceId?: string;
10
14
  };
15
+ export type WorkspaceExportMedia = {
16
+ variantId: string;
17
+ contentKey: string;
18
+ path: string;
19
+ sha256: string;
20
+ md5: string;
21
+ bytes: number;
22
+ mimeType: string;
23
+ fileName: string;
24
+ sourceStatus: string;
25
+ sourceModifiedAt: string;
26
+ sourceVersion: string;
27
+ sourceUrl: string;
28
+ transport: 'experimental-undocumented-authoring-media';
29
+ };
11
30
  export type WorkspaceExportManifest = {
12
- schemaVersion: 1;
31
+ schemaVersion: 1 | 2;
13
32
  mode: 'experimental-best-effort';
14
33
  workspaceId: string;
15
34
  search: {
@@ -29,12 +48,13 @@ export type WorkspaceExportManifest = {
29
48
  rejectedVariantIds: string[];
30
49
  failedVariantIds: string[];
31
50
  warnings: Array<{
32
- code: 'COUNT_MISMATCH' | 'DETAIL_FAILED' | 'DUPLICATE_VARIANTS' | 'OWNERSHIP_MISMATCH' | 'PREMATURE_EMPTY_PAGE' | 'REFERENCE_UNRESOLVED' | 'REFERENCE_UNSUPPORTED' | 'UNSUPPORTED_WILDCARD';
51
+ code: 'COUNT_MISMATCH' | 'DETAIL_FAILED' | 'DUPLICATE_VARIANTS' | 'OWNERSHIP_MISMATCH' | 'PREMATURE_EMPTY_PAGE' | 'MEDIA_EXPORT_FAILED' | 'REFERENCE_UNRESOLVED' | 'REFERENCE_UNSUPPORTED' | 'UNSUPPORTED_WILDCARD';
33
52
  message: string;
34
53
  variantIds?: string[];
35
54
  }>;
36
55
  contract: typeof WORKSPACE_EXPORT_MANIFEST_CONTRACT;
37
- contractVersion: '1.0.0';
56
+ contractVersion: '1.0.0' | '2.0.0';
57
+ media?: WorkspaceExportMedia[];
38
58
  provenance: {
39
59
  producer: 'sf-plugin-cms';
40
60
  sourceOrgId: string;
@@ -2,6 +2,13 @@ import { assertDiagnostics, assertExactKeys, assertIdentifier, assertNonemptyStr
2
2
  export const WORKSPACE_EXPORT_SET_CONTRACT = 'sf-cms-workspace-export-set';
3
3
  export const WORKSPACE_EXPORT_MANIFEST_CONTRACT = 'sf-cms-workspace-export';
4
4
  export const EXTERNAL_REFERENCE_CORRELATIONS_CONTRACT = 'sf-cms-external-reference-correlations@1';
5
+ export class UnsupportedWorkspacePackageVersionError extends TypeError {
6
+ code = 'UNSUPPORTED_PACKAGE_VERSION';
7
+ constructor(message) {
8
+ super(message);
9
+ this.name = 'UnsupportedWorkspacePackageVersionError';
10
+ }
11
+ }
5
12
  export function assertWorkspaceExportManifest(value) {
6
13
  assertExactKeys(value, [
7
14
  'schemaVersion',
@@ -18,14 +25,18 @@ export function assertWorkspaceExportManifest(value) {
18
25
  'warnings',
19
26
  'contract',
20
27
  'contractVersion',
28
+ ...(typeof value === 'object' && value !== null && 'media' in value ? ['media'] : []),
21
29
  'provenance',
22
30
  'completeness',
23
31
  'dependencies',
24
32
  'externalReferences',
25
33
  'items',
26
34
  ], 'manifest');
27
- if (value.schemaVersion !== 1 || value.mode !== 'experimental-best-effort') {
28
- throw new TypeError('manifest schemaVersion/mode is unsupported');
35
+ if (value.schemaVersion !== 1 && value.schemaVersion !== 2) {
36
+ throw new UnsupportedWorkspacePackageVersionError('manifest schemaVersion is unsupported');
37
+ }
38
+ if (value.mode !== 'experimental-best-effort') {
39
+ throw new TypeError('manifest mode is unsupported');
29
40
  }
30
41
  assertIdentifier(value.workspaceId, 'manifest.workspaceId');
31
42
  assertExactKeys(value.search, ['contentSpaceOrFolderIds', 'languages', 'pageSize', 'queryTerm'], 'manifest.search');
@@ -43,9 +54,14 @@ export function assertWorkspaceExportManifest(value) {
43
54
  assertCount(value[key], `manifest.${key}`);
44
55
  }
45
56
  assertLegacyManifestArrays(value);
46
- if (value.contract !== WORKSPACE_EXPORT_MANIFEST_CONTRACT || value.contractVersion !== '1.0.0') {
47
- throw new TypeError('manifest contract/version is unsupported');
57
+ if (value.contract !== WORKSPACE_EXPORT_MANIFEST_CONTRACT) {
58
+ throw new TypeError('manifest contract is unsupported');
48
59
  }
60
+ if ((value.schemaVersion === 1 && value.contractVersion !== '1.0.0') ||
61
+ (value.schemaVersion === 2 && value.contractVersion !== '2.0.0')) {
62
+ throw new UnsupportedWorkspacePackageVersionError('manifest contract version is unsupported');
63
+ }
64
+ assertManifestMedia(value);
49
65
  assertExactKeys(value.provenance, ['producer', 'sourceOrgId', 'sourceWorkspaceId', 'pluginVersion', 'generatedAt'], 'manifest.provenance');
50
66
  if (value.provenance.producer !== 'sf-plugin-cms')
51
67
  throw new TypeError('manifest producer is invalid');
@@ -106,10 +122,105 @@ export function assertWorkspaceExportManifest(value) {
106
122
  throw new TypeError(`manifest item has no reference descriptor: ${item.referenceId}`);
107
123
  }
108
124
  }
125
+ if (value.schemaVersion === 2)
126
+ assertManifestMediaIntegrity(value);
109
127
  if (value.completeness === 'complete' && hasAuthoritativeIncompleteness(value)) {
110
128
  throw new TypeError('manifest.completeness contradicts authoritative incompleteness evidence');
111
129
  }
112
130
  }
131
+ function normalizedManifestPath(value) {
132
+ return value.startsWith('./') ? value.slice(2) : value;
133
+ }
134
+ function assertManifestMediaIntegrity(manifest) {
135
+ const entries = new Map();
136
+ for (const entry of manifest.entries) {
137
+ entries.set(entry.variantId, (entries.get(entry.variantId) ?? 0) + 1);
138
+ }
139
+ const descriptors = new Map();
140
+ for (const descriptor of manifest.media ?? []) {
141
+ if (entries.get(descriptor.variantId) !== 1) {
142
+ throw new TypeError('manifest media variantId must occur exactly once in entries');
143
+ }
144
+ descriptors.set(normalizedManifestPath(descriptor.path), descriptor);
145
+ }
146
+ const mediaItems = new Map();
147
+ const normalizedItemPaths = new Set();
148
+ for (const item of manifest.items) {
149
+ const normalized = normalizedManifestPath(item.path);
150
+ if (normalizedItemPaths.has(normalized)) {
151
+ throw new TypeError(`duplicate normalized manifest item path: ${normalized}`);
152
+ }
153
+ normalizedItemPaths.add(normalized);
154
+ if (item.kind === 'cms.media')
155
+ mediaItems.set(normalized, item);
156
+ }
157
+ if (descriptors.size !== (manifest.media ?? []).length || mediaItems.size !== descriptors.size) {
158
+ throw new TypeError('manifest media descriptors and cms.media items must be bijective');
159
+ }
160
+ for (const [mediaPath, descriptor] of descriptors) {
161
+ const item = mediaItems.get(mediaPath);
162
+ if (item === undefined || item.sha256 !== descriptor.sha256) {
163
+ throw new TypeError('manifest media descriptor and item integrity must match exactly');
164
+ }
165
+ }
166
+ }
167
+ function assertManifestMedia(value) {
168
+ if (value.schemaVersion === 1) {
169
+ if ('media' in value)
170
+ throw new TypeError('manifest v1 must not contain media descriptors');
171
+ return;
172
+ }
173
+ if (!Array.isArray(value.media))
174
+ throw new TypeError('manifest v2 media descriptors are required');
175
+ const paths = new Set();
176
+ const variantIds = new Set();
177
+ for (const [index, media] of value.media.entries()) {
178
+ const label = `manifest.media[${index}]`;
179
+ assertExactKeys(media, [
180
+ 'variantId',
181
+ 'contentKey',
182
+ 'path',
183
+ 'sha256',
184
+ 'md5',
185
+ 'bytes',
186
+ 'mimeType',
187
+ 'fileName',
188
+ 'sourceStatus',
189
+ 'sourceModifiedAt',
190
+ 'sourceVersion',
191
+ 'sourceUrl',
192
+ 'transport',
193
+ ], label);
194
+ assertIdentifier(media.variantId, `${label}.variantId`);
195
+ assertIdentifier(media.contentKey, `${label}.contentKey`);
196
+ assertRelativePosixPath(media.path, `${label}.path`);
197
+ if (!media.path.startsWith('media/'))
198
+ throw new TypeError(`${label}.path must use media/`);
199
+ if (paths.has(media.path) || variantIds.has(media.variantId)) {
200
+ throw new TypeError('manifest media paths and variant IDs must be unique');
201
+ }
202
+ paths.add(media.path);
203
+ variantIds.add(media.variantId);
204
+ assertSha256(media.sha256, `${label}.sha256`);
205
+ if (typeof media.md5 !== 'string' || !/^[a-f\d]{32}$/u.test(media.md5)) {
206
+ throw new TypeError(`${label}.md5 must be a lowercase MD5`);
207
+ }
208
+ assertCount(media.bytes, `${label}.bytes`);
209
+ for (const key of [
210
+ 'mimeType',
211
+ 'fileName',
212
+ 'sourceStatus',
213
+ 'sourceModifiedAt',
214
+ 'sourceVersion',
215
+ 'sourceUrl',
216
+ ]) {
217
+ assertNonemptyString(media[key], `${label}.${key}`);
218
+ }
219
+ if (media.transport !== 'experimental-undocumented-authoring-media') {
220
+ throw new TypeError(`${label}.transport is unsupported`);
221
+ }
222
+ }
223
+ }
113
224
  function hasAuthoritativeIncompleteness(manifest) {
114
225
  const warnings = manifest.warnings;
115
226
  const externalReferences = manifest.externalReferences;
@@ -118,7 +229,9 @@ function hasAuthoritativeIncompleteness(manifest) {
118
229
  manifest.expectedCount !== manifest.foundCount ||
119
230
  manifest.foundCount !== manifest.exportedCount ||
120
231
  manifest.exportedCount !== manifest.entries.length ||
121
- manifest.exportedCount !== manifest.items.length ||
232
+ manifest.exportedCount !==
233
+ manifest.items.filter(({ kind }) => kind === 'cms.content')
234
+ .length ||
122
235
  warnings.some(({ code }) => code !== 'UNSUPPORTED_WILDCARD') ||
123
236
  externalReferences.some(({ resolution }) => resolution === 'unresolved' || resolution === 'unsupported'));
124
237
  }
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-export.js","sourceRoot":"","sources":["../../src/contracts/workspace-export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-export.js","sourceRoot":"","sources":["../../src/contracts/workspace-export.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,68 @@
1
1
  export declare const WORKSPACE_IMPORT_CONTRACT: "sf-cms-workspace-import";
2
+ export declare const WORKSPACE_IMPORT_CONTRACT_V2: "sf-cms-workspace-import@2";
2
3
  export declare const WORKSPACE_IMPORT_OPERATIONS: readonly ["created", "matched", "updated", "unchanged"];
4
+ export declare const IMAGE_IMPORT_IDENTITY_FIELDS: readonly ["contentKey", "apiName", "title", "urlName"];
5
+ export declare const IMAGE_IMPORT_STRATEGIES: readonly ["preserve", "fresh", "generated"];
6
+ export type ComponentStableIdentity = {
7
+ family: 'cms';
8
+ type: string;
9
+ apiName: string;
10
+ title?: string;
11
+ workspaceId?: string;
12
+ language?: string;
13
+ serverId?: string;
14
+ version?: string;
15
+ };
16
+ export type ComponentResolutionEvidence = {
17
+ method: 'explicit-map' | 'api-name' | 'title-fallback';
18
+ target: ComponentStableIdentity;
19
+ };
20
+ export type ImageImportIdentityField = (typeof IMAGE_IMPORT_IDENTITY_FIELDS)[number];
21
+ export type ImageImportStrategy = (typeof IMAGE_IMPORT_STRATEGIES)[number];
22
+ export type ImageImportFieldPlan = {
23
+ strategy: ImageImportStrategy;
24
+ source?: string;
25
+ submitted?: string;
26
+ returned?: string;
27
+ };
28
+ export type WorkspaceImageImportAssetResult = {
29
+ source: ComponentStableIdentity;
30
+ resolution?: ComponentResolutionEvidence;
31
+ mutation?: {
32
+ requestSha256: string;
33
+ contentId: string;
34
+ variantId: string;
35
+ };
36
+ identities: Record<ImageImportIdentityField, ImageImportFieldPlan>;
37
+ binary: {
38
+ path: string;
39
+ sha256: string;
40
+ md5: string;
41
+ bytes: number;
42
+ mimeType: string;
43
+ };
44
+ metadataReadback: 'not-attempted' | 'passed' | 'failed';
45
+ byteProof: 'passed' | 'unavailable' | 'failed';
46
+ operationStatus: 'planned' | 'succeeded' | 'failed';
47
+ reportStatus: 'not-created' | 'recorded' | 'failed';
48
+ };
49
+ export type WorkspaceImageImportResultV2 = {
50
+ sourcePackage: {
51
+ manifestSha256: string;
52
+ workspaceId: string;
53
+ manifestVersion: 2;
54
+ };
55
+ target: {
56
+ orgId: string;
57
+ workspaceId: string;
58
+ };
59
+ status: 'planned' | 'completed' | 'failed';
60
+ assets: WorkspaceImageImportAssetResult[];
61
+ };
62
+ export declare class InvalidImageImportMapError extends TypeError {
63
+ readonly code: "INVALID_IMAGE_IMPORT_MAP";
64
+ constructor(message: string);
65
+ }
3
66
  export declare const WORKSPACE_IMPORT_MAPPING_STATUSES: readonly ["resolved", "unresolved", "ambiguous", "failed"];
4
67
  export declare const WORKSPACE_IMPORT_REFERENCE_STATUSES: readonly ["resolved", "unresolved", "ambiguous", "failed", "unsupported"];
5
68
  export type WorkspaceImportMapping = {
@@ -43,4 +106,5 @@ export type WorkspaceImportResult = {
43
106
  mappings: WorkspaceImportMapping[];
44
107
  references: WorkspaceImportReference[];
45
108
  };
109
+ export declare function assertWorkspaceImageImportResultV2(value: unknown): asserts value is WorkspaceImageImportResultV2;
46
110
  export declare function assertWorkspaceImportResult(value: unknown): asserts value is WorkspaceImportResult;
@@ -1,6 +1,16 @@
1
1
  import { assertExactKeys, assertIdentifier, assertNonemptyString, assertReferenceId, assertSha256, } from './shared.js';
2
2
  export const WORKSPACE_IMPORT_CONTRACT = 'sf-cms-workspace-import';
3
+ export const WORKSPACE_IMPORT_CONTRACT_V2 = 'sf-cms-workspace-import@2';
3
4
  export const WORKSPACE_IMPORT_OPERATIONS = ['created', 'matched', 'updated', 'unchanged'];
5
+ export const IMAGE_IMPORT_IDENTITY_FIELDS = ['contentKey', 'apiName', 'title', 'urlName'];
6
+ export const IMAGE_IMPORT_STRATEGIES = ['preserve', 'fresh', 'generated'];
7
+ export class InvalidImageImportMapError extends TypeError {
8
+ code = 'INVALID_IMAGE_IMPORT_MAP';
9
+ constructor(message) {
10
+ super(message);
11
+ this.name = 'InvalidImageImportMapError';
12
+ }
13
+ }
4
14
  export const WORKSPACE_IMPORT_MAPPING_STATUSES = [
5
15
  'resolved',
6
16
  'unresolved',
@@ -11,6 +21,115 @@ export const WORKSPACE_IMPORT_REFERENCE_STATUSES = [
11
21
  ...WORKSPACE_IMPORT_MAPPING_STATUSES,
12
22
  'unsupported',
13
23
  ];
24
+ function assertComponentIdentity(value, label) {
25
+ const identity = value;
26
+ assertExactKeys(value, [
27
+ 'family',
28
+ 'type',
29
+ 'apiName',
30
+ ...(identity.title === undefined ? [] : ['title']),
31
+ ...(identity.workspaceId === undefined ? [] : ['workspaceId']),
32
+ ...(identity.language === undefined ? [] : ['language']),
33
+ ...(identity.serverId === undefined ? [] : ['serverId']),
34
+ ...(identity.version === undefined ? [] : ['version']),
35
+ ], label);
36
+ if (identity.family !== 'cms')
37
+ throw new TypeError(`${label}.family is unsupported`);
38
+ assertIdentifier(identity.type, `${label}.type`);
39
+ assertNonemptyString(identity.apiName, `${label}.apiName`);
40
+ for (const key of ['title', 'workspaceId', 'language']) {
41
+ if (identity[key] !== undefined)
42
+ assertNonemptyString(identity[key], `${label}.${key}`);
43
+ }
44
+ if (identity.serverId !== undefined)
45
+ assertIdentifier(identity.serverId, `${label}.serverId`);
46
+ if (identity.version !== undefined)
47
+ assertNonemptyString(identity.version, `${label}.version`);
48
+ }
49
+ export function assertWorkspaceImageImportResultV2(value) {
50
+ assertExactKeys(value, ['sourcePackage', 'target', 'status', 'assets'], 'result');
51
+ assertExactKeys(value.sourcePackage, ['manifestSha256', 'workspaceId', 'manifestVersion'], 'result.sourcePackage');
52
+ assertSha256(value.sourcePackage.manifestSha256, 'result.sourcePackage.manifestSha256');
53
+ assertIdentifier(value.sourcePackage.workspaceId, 'result.sourcePackage.workspaceId');
54
+ if (value.sourcePackage.manifestVersion !== 2)
55
+ throw new TypeError('result.sourcePackage.manifestVersion must be 2');
56
+ assertExactKeys(value.target, ['orgId', 'workspaceId'], 'result.target');
57
+ assertIdentifier(value.target.orgId, 'result.target.orgId');
58
+ assertIdentifier(value.target.workspaceId, 'result.target.workspaceId');
59
+ if (!['planned', 'completed', 'failed'].includes(value.status))
60
+ throw new TypeError('result.status is invalid');
61
+ if (!Array.isArray(value.assets) || value.assets.length === 0)
62
+ throw new TypeError('result.assets must be a nonempty array');
63
+ let previous = '';
64
+ const sources = new Set();
65
+ for (const [index, asset] of value.assets.entries()) {
66
+ const label = `result.assets[${index}]`;
67
+ assertExactKeys(asset, [
68
+ 'source',
69
+ ...(asset.resolution === undefined ? [] : ['resolution']),
70
+ ...(asset.mutation === undefined ? [] : ['mutation']),
71
+ 'identities',
72
+ 'binary',
73
+ 'metadataReadback',
74
+ 'byteProof',
75
+ 'operationStatus',
76
+ 'reportStatus',
77
+ ], label);
78
+ assertComponentIdentity(asset.source, `${label}.source`);
79
+ if (asset.resolution !== undefined) {
80
+ assertExactKeys(asset.resolution, ['method', 'target'], `${label}.resolution`);
81
+ if (!['explicit-map', 'api-name', 'title-fallback'].includes(asset.resolution.method)) {
82
+ throw new TypeError(`${label}.resolution.method is invalid`);
83
+ }
84
+ assertComponentIdentity(asset.resolution.target, `${label}.resolution.target`);
85
+ }
86
+ if (asset.mutation !== undefined) {
87
+ assertExactKeys(asset.mutation, ['requestSha256', 'contentId', 'variantId'], `${label}.mutation`);
88
+ assertSha256(asset.mutation.requestSha256, `${label}.mutation.requestSha256`);
89
+ assertIdentifier(asset.mutation.contentId, `${label}.mutation.contentId`);
90
+ assertIdentifier(asset.mutation.variantId, `${label}.mutation.variantId`);
91
+ }
92
+ const sourceKey = `${asset.source.family}\0${asset.source.type}\0${asset.source.apiName}`;
93
+ if (sourceKey.localeCompare(previous) < 0)
94
+ throw new TypeError('result.assets must be sorted by typed source identity');
95
+ if (sources.has(sourceKey))
96
+ throw new TypeError('duplicate result asset source');
97
+ previous = sourceKey;
98
+ sources.add(sourceKey);
99
+ assertExactKeys(asset.identities, IMAGE_IMPORT_IDENTITY_FIELDS, `${label}.identities`);
100
+ for (const field of IMAGE_IMPORT_IDENTITY_FIELDS) {
101
+ const plan = asset.identities[field];
102
+ const planLabel = `${label}.identities.${field}`;
103
+ assertExactKeys(plan, [
104
+ 'strategy',
105
+ ...(plan.source === undefined ? [] : ['source']),
106
+ ...(plan.submitted === undefined ? [] : ['submitted']),
107
+ ...(plan.returned === undefined ? [] : ['returned']),
108
+ ], planLabel);
109
+ if (!IMAGE_IMPORT_STRATEGIES.includes(plan.strategy))
110
+ throw new TypeError(`${planLabel}.strategy is invalid`);
111
+ for (const key of ['source', 'submitted', 'returned']) {
112
+ if (plan[key] !== undefined)
113
+ assertNonemptyString(plan[key], `${planLabel}.${key}`);
114
+ }
115
+ }
116
+ assertExactKeys(asset.binary, ['path', 'sha256', 'md5', 'bytes', 'mimeType'], `${label}.binary`);
117
+ assertNonemptyString(asset.binary.path, `${label}.binary.path`);
118
+ assertSha256(asset.binary.sha256, `${label}.binary.sha256`);
119
+ if (typeof asset.binary.md5 !== 'string' || !/^[a-f\d]{32}$/u.test(asset.binary.md5))
120
+ throw new TypeError(`${label}.binary.md5 is invalid`);
121
+ assertCount(asset.binary.bytes, `${label}.binary.bytes`);
122
+ assertNonemptyString(asset.binary.mimeType, `${label}.binary.mimeType`);
123
+ if (!['not-attempted', 'passed', 'failed'].includes(asset.metadataReadback))
124
+ throw new TypeError(`${label}.metadataReadback is invalid`);
125
+ if (!['passed', 'unavailable', 'failed'].includes(asset.byteProof))
126
+ throw new TypeError(`${label}.byteProof is invalid`);
127
+ if (!['planned', 'succeeded', 'failed'].includes(asset.operationStatus))
128
+ throw new TypeError(`${label}.operationStatus is invalid`);
129
+ if (!['not-created', 'recorded', 'failed'].includes(asset.reportStatus))
130
+ throw new TypeError(`${label}.reportStatus is invalid`);
131
+ }
132
+ }
14
133
  export function assertWorkspaceImportResult(value) {
15
134
  assertExactKeys(value, ['sourcePackage', 'target', 'integrity', 'mappings', 'references'], 'result');
16
135
  assertExactKeys(value.sourcePackage, ['manifestSha256', 'workspaceId'], 'result.sourcePackage');
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-import.js","sourceRoot":"","sources":["../../src/contracts/workspace-import.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-import.js","sourceRoot":"","sources":["../../src/contracts/workspace-import.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -5,4 +5,6 @@ export { default as GetWorkspace } from './commands/cms/get/workspace.js';
5
5
  export { default as Info } from './commands/cms/info.js';
6
6
  export { default as ListChannel } from './commands/cms/list/channel.js';
7
7
  export { default as ListWorkspace } from './commands/cms/list/workspace.js';
8
- export { executeWorkspaceImport, loadWorkspaceExport, planWorkspaceImport, type CreatedParentRecord, type DestinationWorkspace, type ExecuteWorkspaceImportOptions, type LoadedWorkspaceExport, type WorkspaceImportGroupPlan, type WorkspaceImportItem, type WorkspaceImportPlan, type WorkspaceImportExecutionResult, type WorkspaceImportRunReport, } from './services/import-workspace.js';
8
+ export { executeWorkspaceImport, loadWorkspaceExport, planWorkspaceImport, type CreatedParentRecord, type DestinationWorkspace, type ExecuteWorkspaceImportOptions, type LoadedWorkspaceExport, type WorkspaceImportGroupPlan, type WorkspaceImportItem, type WorkspaceImportPlan, type WorkspaceImportExecutionResult, type WorkspaceImportRunReport, type WorkspaceExportLoadProfile, } from './services/import-workspace.js';
9
+ export { applyImageImports, planImageImports, preflightImageImports, type ImageImportApplyOptions, type ImageImportApplyResult, type ImageImportMapField, type ImageImportMapRow, type ImageImportOperation, type ImageImportPreflightOptions, type ImageImportPreflightResult, type ImageImportReportPersistence, type ImageImportRunReport, type PlannedImageImport, } from './services/image-import.js';
10
+ export { assertWorkspaceImageImportResultV2, InvalidImageImportMapError, type WorkspaceImageImportAssetResult, type WorkspaceImageImportResultV2, } from './contracts/workspace-import.js';
package/lib/index.js CHANGED
@@ -6,4 +6,6 @@ export { default as Info } from './commands/cms/info.js';
6
6
  export { default as ListChannel } from './commands/cms/list/channel.js';
7
7
  export { default as ListWorkspace } from './commands/cms/list/workspace.js';
8
8
  export { executeWorkspaceImport, loadWorkspaceExport, planWorkspaceImport, } from './services/import-workspace.js';
9
+ export { applyImageImports, planImageImports, preflightImageImports, } from './services/image-import.js';
10
+ export { assertWorkspaceImageImportResultV2, InvalidImageImportMapError, } from './contracts/workspace-import.js';
9
11
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,GAUpB,MAAM,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,GAWpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,GAWtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,kCAAkC,EAClC,0BAA0B,GAG3B,MAAM,iCAAiC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { LoadedWorkspaceExport, WorkspaceImportItem } from './import-workspace.js';
2
+ import type { PlannedImportIdentities } from './import-identities.js';
3
+ /**
4
+ * Validate the first evidenced, create-only email-fragment body shape.
5
+ * @param {WorkspaceImportItem} item - Integrity-verified import item to validate.
6
+ * @returns {void}
7
+ */
8
+ export declare function assertEmailFragmentItem(item: WorkspaceImportItem): void;
9
+ /**
10
+ * Plan detached fresh identities for one default-language email-fragment variant per parent.
11
+ * @param {LoadedWorkspaceExport} source - Integrity-verified original workspace export.
12
+ * @param {unknown} input - Explicit selected source and fresh target identities.
13
+ * @returns {PlannedImportIdentities} Detached bounded fragment proposal.
14
+ */
15
+ export declare function planEmailFragmentCopies(source: LoadedWorkspaceExport, input: unknown): PlannedImportIdentities;