@leadcms/sdk 3.3.4 → 3.3.7

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 (128) hide show
  1. package/README.md +3 -0
  2. package/dist/cli/bin/pull-all.js +9 -2
  3. package/dist/cli/bin/pull-all.js.map +1 -1
  4. package/dist/cli/bin/pull-comments.js +9 -2
  5. package/dist/cli/bin/pull-comments.js.map +1 -1
  6. package/dist/cli/bin/pull-content.js +9 -2
  7. package/dist/cli/bin/pull-content.js.map +1 -1
  8. package/dist/cli/bin/pull-email-templates.d.ts +6 -0
  9. package/dist/cli/bin/pull-email-templates.d.ts.map +1 -0
  10. package/dist/cli/bin/pull-email-templates.js +24 -0
  11. package/dist/cli/bin/pull-email-templates.js.map +1 -0
  12. package/dist/cli/bin/pull-media.js +9 -2
  13. package/dist/cli/bin/pull-media.js.map +1 -1
  14. package/dist/cli/bin/push-all.js +17 -4
  15. package/dist/cli/bin/push-all.js.map +1 -1
  16. package/dist/cli/bin/push-content.js +9 -2
  17. package/dist/cli/bin/push-content.js.map +1 -1
  18. package/dist/cli/bin/push-email-templates.d.ts +6 -0
  19. package/dist/cli/bin/push-email-templates.d.ts.map +1 -0
  20. package/dist/cli/bin/push-email-templates.js +21 -0
  21. package/dist/cli/bin/push-email-templates.js.map +1 -0
  22. package/dist/cli/bin/push-media.js +9 -2
  23. package/dist/cli/bin/push-media.js.map +1 -1
  24. package/dist/cli/bin/push.js +2 -0
  25. package/dist/cli/bin/push.js.map +1 -1
  26. package/dist/cli/bin/status-all.d.ts +1 -1
  27. package/dist/cli/bin/status-all.js +255 -31
  28. package/dist/cli/bin/status-all.js.map +1 -1
  29. package/dist/cli/bin/status-content.js +9 -2
  30. package/dist/cli/bin/status-content.js.map +1 -1
  31. package/dist/cli/bin/status-email-templates.d.ts +6 -0
  32. package/dist/cli/bin/status-email-templates.d.ts.map +1 -0
  33. package/dist/cli/bin/status-email-templates.js +29 -0
  34. package/dist/cli/bin/status-email-templates.js.map +1 -0
  35. package/dist/cli/bin/status-media.js +9 -2
  36. package/dist/cli/bin/status-media.js.map +1 -1
  37. package/dist/cli/bin/status.js +2 -0
  38. package/dist/cli/bin/status.js.map +1 -1
  39. package/dist/cli/bin/watch.js +2 -0
  40. package/dist/cli/bin/watch.js.map +1 -1
  41. package/dist/cli/index.js +27 -2
  42. package/dist/cli/index.js.map +1 -1
  43. package/dist/lib/cms-config-types.d.ts +4 -0
  44. package/dist/lib/cms-config-types.d.ts.map +1 -1
  45. package/dist/lib/cms-config-types.js +6 -0
  46. package/dist/lib/cms-config-types.js.map +1 -1
  47. package/dist/lib/cms.d.ts.map +1 -1
  48. package/dist/lib/cms.js +1 -0
  49. package/dist/lib/cms.js.map +1 -1
  50. package/dist/lib/config.d.ts +2 -0
  51. package/dist/lib/config.d.ts.map +1 -1
  52. package/dist/lib/config.js +5 -0
  53. package/dist/lib/config.js.map +1 -1
  54. package/dist/lib/content-merge.d.ts +2 -2
  55. package/dist/lib/content-merge.d.ts.map +1 -1
  56. package/dist/lib/content-merge.js +39 -35
  57. package/dist/lib/content-merge.js.map +1 -1
  58. package/dist/lib/content-transformation.d.ts +1 -1
  59. package/dist/lib/content-transformation.d.ts.map +1 -1
  60. package/dist/lib/content-transformation.js +8 -2
  61. package/dist/lib/content-transformation.js.map +1 -1
  62. package/dist/lib/data-service.d.ts +56 -0
  63. package/dist/lib/data-service.d.ts.map +1 -1
  64. package/dist/lib/data-service.js +246 -36
  65. package/dist/lib/data-service.js.map +1 -1
  66. package/dist/lib/email-template-transformation.d.ts +36 -0
  67. package/dist/lib/email-template-transformation.d.ts.map +1 -0
  68. package/dist/lib/email-template-transformation.js +88 -0
  69. package/dist/lib/email-template-transformation.js.map +1 -0
  70. package/dist/lib/logger.d.ts +63 -0
  71. package/dist/lib/logger.d.ts.map +1 -0
  72. package/dist/lib/logger.js +87 -0
  73. package/dist/lib/logger.js.map +1 -0
  74. package/dist/lib/spinner.d.ts +25 -0
  75. package/dist/lib/spinner.d.ts.map +1 -0
  76. package/dist/lib/spinner.js +80 -0
  77. package/dist/lib/spinner.js.map +1 -0
  78. package/dist/scripts/fetch-leadcms-comments.d.ts.map +1 -1
  79. package/dist/scripts/fetch-leadcms-comments.js +22 -21
  80. package/dist/scripts/fetch-leadcms-comments.js.map +1 -1
  81. package/dist/scripts/fetch-leadcms-content.d.ts.map +1 -1
  82. package/dist/scripts/fetch-leadcms-content.js +46 -45
  83. package/dist/scripts/fetch-leadcms-content.js.map +1 -1
  84. package/dist/scripts/fetch-leadcms-email-templates.d.ts +15 -0
  85. package/dist/scripts/fetch-leadcms-email-templates.d.ts.map +1 -0
  86. package/dist/scripts/fetch-leadcms-email-templates.js +272 -0
  87. package/dist/scripts/fetch-leadcms-email-templates.js.map +1 -0
  88. package/dist/scripts/init-leadcms.d.ts.map +1 -1
  89. package/dist/scripts/init-leadcms.js +22 -3
  90. package/dist/scripts/init-leadcms.js.map +1 -1
  91. package/dist/scripts/leadcms-helpers.d.ts +1 -0
  92. package/dist/scripts/leadcms-helpers.d.ts.map +1 -1
  93. package/dist/scripts/leadcms-helpers.js +7 -5
  94. package/dist/scripts/leadcms-helpers.js.map +1 -1
  95. package/dist/scripts/pull-all.d.ts +5 -1
  96. package/dist/scripts/pull-all.d.ts.map +1 -1
  97. package/dist/scripts/pull-all.js +38 -17
  98. package/dist/scripts/pull-all.js.map +1 -1
  99. package/dist/scripts/pull-comments.d.ts.map +1 -1
  100. package/dist/scripts/pull-comments.js +3 -2
  101. package/dist/scripts/pull-comments.js.map +1 -1
  102. package/dist/scripts/pull-content.d.ts.map +1 -1
  103. package/dist/scripts/pull-content.js +3 -2
  104. package/dist/scripts/pull-content.js.map +1 -1
  105. package/dist/scripts/pull-email-templates.d.ts +13 -0
  106. package/dist/scripts/pull-email-templates.d.ts.map +1 -0
  107. package/dist/scripts/pull-email-templates.js +79 -0
  108. package/dist/scripts/pull-email-templates.js.map +1 -0
  109. package/dist/scripts/pull-media.d.ts.map +1 -1
  110. package/dist/scripts/pull-media.js +3 -2
  111. package/dist/scripts/pull-media.js.map +1 -1
  112. package/dist/scripts/push-email-templates.d.ts +50 -0
  113. package/dist/scripts/push-email-templates.d.ts.map +1 -0
  114. package/dist/scripts/push-email-templates.js +687 -0
  115. package/dist/scripts/push-email-templates.js.map +1 -0
  116. package/dist/scripts/push-leadcms-content.d.ts +45 -1
  117. package/dist/scripts/push-leadcms-content.d.ts.map +1 -1
  118. package/dist/scripts/push-leadcms-content.js +112 -28
  119. package/dist/scripts/push-leadcms-content.js.map +1 -1
  120. package/dist/scripts/push-media.d.ts +2 -0
  121. package/dist/scripts/push-media.d.ts.map +1 -1
  122. package/dist/scripts/push-media.js +8 -5
  123. package/dist/scripts/push-media.js.map +1 -1
  124. package/dist/scripts/sse-watcher.d.ts.map +1 -1
  125. package/dist/scripts/sse-watcher.js +72 -71
  126. package/dist/scripts/sse-watcher.js.map +1 -1
  127. package/leadcms.config.json.sample +2 -0
  128. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"push-email-templates.js","sourceRoot":"","sources":["../../src/scripts/push-email-templates.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,10 @@ declare function parseContentFile(filePath: string, locale: string, baseContentD
52
52
  * Get all unique content types from local content
53
53
  */
54
54
  declare function getLocalContentTypes(localContent: LocalContentItem[]): Set<string>;
55
+ /**
56
+ * Fetch all remote content using sync API without token (full fetch)
57
+ */
58
+ declare function fetchRemoteContent(): Promise<RemoteContentItem[]>;
55
59
  /**
56
60
  * Compare local and remote content by transforming remote to local format
57
61
  * Returns true if there are meaningful differences in content
@@ -63,6 +67,30 @@ declare function hasActualContentChanges(local: LocalContentItem, remote: Remote
63
67
  */
64
68
  declare function matchContent(localContent: LocalContentItem[], remoteContent: RemoteContentItem[], typeMap?: Record<string, string>, allowDelete?: boolean): Promise<ContentOperations>;
65
69
  declare function countPushChanges(operations: ContentOperations, includeConflicts?: boolean): number;
70
+ /**
71
+ * Auto-detected defaults for content type creation based on local content files
72
+ */
73
+ interface ContentTypeDefaults {
74
+ format: 'MDX' | 'JSON';
75
+ supportsCoverImage: boolean;
76
+ supportsComments: boolean;
77
+ }
78
+ /**
79
+ * Analyze local content files to auto-detect content type parameters.
80
+ *
81
+ * - format: JSON if all files are .json, MDX if all are .mdx, MDX if mixed
82
+ * - supportsCoverImage: true if any file has a non-empty coverImageUrl
83
+ * - supportsComments: false for JSON format; for MDX, true if any file has allowComments: true
84
+ */
85
+ declare function analyzeContentTypeFromFiles(localContent: LocalContentItem[], typeName: string): ContentTypeDefaults;
86
+ /**
87
+ * Check if a user response is affirmative (case-insensitive)
88
+ */
89
+ declare function isYes(input: string): boolean;
90
+ /**
91
+ * Normalize format input to 'MDX' or 'JSON' (case-insensitive)
92
+ */
93
+ declare function normalizeFormat(input: string, fallback?: 'MDX' | 'JSON'): 'MDX' | 'JSON';
66
94
  /**
67
95
  * Filter content operations to only include specific content by ID or slug
68
96
  */
@@ -88,7 +116,23 @@ export { parseContentFile };
88
116
  export { isLocaleDirectory };
89
117
  export { getLocalContentTypes };
90
118
  export { filterContentOperations };
119
+ export { analyzeContentTypeFromFiles };
120
+ export { isYes };
121
+ export { normalizeFormat };
122
+ export { fetchRemoteContent };
91
123
  export { formatContentForAPI } from '../lib/content-api-formatting.js';
92
124
  export { transformRemoteForComparison } from "../lib/content-transformation.js";
93
- export type { LocalContentItem, RemoteContentItem, ContentOperations, PushOptions };
125
+ export interface ContentStatusResult {
126
+ operations: ContentOperations;
127
+ totalLocal: number;
128
+ totalRemote: number;
129
+ }
130
+ /**
131
+ * Get content status data without printing anything.
132
+ * Used by the unified status-all renderer.
133
+ */
134
+ export declare function getContentStatusData(options?: {
135
+ showDelete?: boolean;
136
+ }): Promise<ContentStatusResult>;
137
+ export type { LocalContentItem, RemoteContentItem, ContentOperations, MatchOperation, PushOptions };
94
138
  //# sourceMappingURL=push-leadcms-content.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"push-leadcms-content.d.ts","sourceRoot":"","sources":["../../src/scripts/push-leadcms-content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"push-leadcms-content.d.ts","sourceRoot":"","sources":["../../src/scripts/push-leadcms-content.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ import { leadCMSDataService } from "../lib/data-service.js";
9
9
  import { transformRemoteToLocalFormat, transformRemoteForComparison, hasContentDifferences } from "../lib/content-transformation.js";
10
10
  import { formatContentForAPI } from '../lib/content-api-formatting.js';
11
11
  import { colorConsole, statusColors, diffColors } from '../lib/console-colors.js';
12
+ import { logger } from '../lib/logger.js';
12
13
  // Create readline interface for user prompts
13
14
  const rl = readline.createInterface({
14
15
  input: process.stdin,
@@ -43,7 +44,7 @@ async function isLocaleDirectory(dirPath, parentDir) {
43
44
  * Read and parse all local content files
44
45
  */
45
46
  async function readLocalContent() {
46
- console.log(`[LOCAL] Reading content from: ${CONTENT_DIR}`);
47
+ logger.verbose(`[LOCAL] Reading content from: ${CONTENT_DIR}`);
47
48
  const localContent = [];
48
49
  async function walkDirectory(dir, locale = defaultLanguage, baseContentDir = CONTENT_DIR) {
49
50
  try {
@@ -69,17 +70,17 @@ async function readLocalContent() {
69
70
  }
70
71
  }
71
72
  catch (error) {
72
- console.warn(`[LOCAL] Failed to parse ${fullPath}:`, error.message);
73
+ logger.verbose(`[LOCAL] Failed to parse ${fullPath}: ${error.message}`);
73
74
  }
74
75
  }
75
76
  }
76
77
  }
77
78
  catch (error) {
78
- console.warn(`[LOCAL] Failed to read directory ${dir}:`, error.message);
79
+ logger.verbose(`[LOCAL] Failed to read directory ${dir}: ${error.message}`);
79
80
  }
80
81
  }
81
82
  await walkDirectory(CONTENT_DIR);
82
- console.log(`[LOCAL] Found ${localContent.length} local content files`);
83
+ logger.verbose(`[LOCAL] Found ${localContent.length} local content files`);
83
84
  return localContent;
84
85
  }
85
86
  /**
@@ -120,7 +121,7 @@ async function parseContentFile(filePath, locale, baseContentDir = CONTENT_DIR)
120
121
  }
121
122
  // Warn if type is missing
122
123
  if (!metadata.type) {
123
- console.warn(`[LOCAL] Warning: Content file "${relativePath}" is missing a "type" property. It will be displayed as "unknown".`);
124
+ logger.verbose(`[LOCAL] Warning: Content file "${relativePath}" is missing a "type" property. It will be displayed as "unknown".`);
124
125
  }
125
126
  return {
126
127
  filePath,
@@ -151,10 +152,10 @@ async function fetchRemoteContent() {
151
152
  const allItems = await leadCMSDataService.getAllContent();
152
153
  // Ensure we have an array
153
154
  if (!Array.isArray(allItems)) {
154
- console.warn(`[${leadCMSDataService.isMockMode() ? 'MOCK' : 'REMOTE'}] Retrieved invalid data (not an array):`, typeof allItems);
155
+ logger.verbose(`[${leadCMSDataService.isMockMode() ? 'MOCK' : 'REMOTE'}] Retrieved invalid data (not an array): ${typeof allItems}`);
155
156
  return [];
156
157
  }
157
- console.log(`[${leadCMSDataService.isMockMode() ? 'MOCK' : 'REMOTE'}] Retrieved ${allItems.length} content items`);
158
+ logger.verbose(`[${leadCMSDataService.isMockMode() ? 'MOCK' : 'REMOTE'}] Retrieved ${allItems.length} content items`);
158
159
  return allItems.map(item => ({ ...item, isLocal: false }));
159
160
  }
160
161
  /**
@@ -174,7 +175,7 @@ async function hasActualContentChanges(local, remote, typeMap) {
174
175
  return hasFileContentChanges;
175
176
  }
176
177
  catch (error) {
177
- console.warn(`[COMPARE] Failed to compare content for ${local.slug}:`, error.message);
178
+ logger.verbose(`[COMPARE] Failed to compare content for ${local.slug}: ${error.message}`);
178
179
  // Fallback to true to err on the side of showing changes
179
180
  return true;
180
181
  }
@@ -323,10 +324,36 @@ function countPushChanges(operations, includeConflicts = false) {
323
324
  operations.typeChange.length +
324
325
  (includeConflicts ? operations.conflict.length : 0);
325
326
  }
327
+ /**
328
+ * Analyze local content files to auto-detect content type parameters.
329
+ *
330
+ * - format: JSON if all files are .json, MDX if all are .mdx, MDX if mixed
331
+ * - supportsCoverImage: true if any file has a non-empty coverImageUrl
332
+ * - supportsComments: false for JSON format; for MDX, true if any file has allowComments: true
333
+ */
334
+ function analyzeContentTypeFromFiles(localContent, typeName) {
335
+ const filesOfType = localContent.filter(c => c.type === typeName);
336
+ // Determine format from file extensions
337
+ const hasJson = filesOfType.some(c => c.filePath.endsWith('.json'));
338
+ const hasMdx = filesOfType.some(c => c.filePath.endsWith('.mdx'));
339
+ const format = (hasJson && !hasMdx) ? 'JSON' : 'MDX';
340
+ // Check if any file has a non-empty coverImageUrl
341
+ const supportsCoverImage = filesOfType.some(c => {
342
+ const url = c.metadata?.coverImageUrl;
343
+ return typeof url === 'string' && url.trim().length > 0;
344
+ });
345
+ // For JSON format, default to no comments
346
+ // For MDX format, check if any file has allowComments set to true
347
+ let supportsComments = false;
348
+ if (format === 'MDX') {
349
+ supportsComments = filesOfType.some(c => c.metadata?.allowComments === true);
350
+ }
351
+ return { format, supportsCoverImage, supportsComments };
352
+ }
326
353
  /**
327
354
  * Validate that all required content types exist remotely
328
355
  */
329
- async function validateContentTypes(localTypes, remoteTypeMap, dryRun = false) {
356
+ async function validateContentTypes(localTypes, remoteTypeMap, localContent, dryRun = false) {
330
357
  const missingTypes = [];
331
358
  for (const type of localTypes) {
332
359
  if (!remoteTypeMap[type]) {
@@ -339,6 +366,7 @@ async function validateContentTypes(localTypes, remoteTypeMap, dryRun = false) {
339
366
  if (dryRun) {
340
367
  colorConsole.info('\n🧪 In dry run mode - showing what content type creation would look like:');
341
368
  for (const type of missingTypes) {
369
+ const defaults = analyzeContentTypeFromFiles(localContent, type);
342
370
  colorConsole.progress(`\nšŸ“‹ CREATE CONTENT TYPE (Dry Run):`);
343
371
  colorConsole.log(`\n${colorConsole.cyan('POST')} ${colorConsole.highlight('/api/content-types')}`);
344
372
  colorConsole.log(`${colorConsole.gray('Content-Type:')} application/json`);
@@ -346,19 +374,19 @@ async function validateContentTypes(localTypes, remoteTypeMap, dryRun = false) {
346
374
  const sampleContentTypeData = {
347
375
  uid: type,
348
376
  name: type.charAt(0).toUpperCase() + type.slice(1),
349
- format: 'MDX',
350
- supportsCoverImage: false,
351
- supportsComments: false
377
+ format: defaults.format,
378
+ supportsCoverImage: defaults.supportsCoverImage,
379
+ supportsComments: defaults.supportsComments
352
380
  };
353
381
  colorConsole.log(JSON.stringify(sampleContentTypeData, null, 2));
354
382
  colorConsole.success(`āœ… Would create content type: ${colorConsole.highlight(type)}`);
355
383
  }
356
384
  return; // Skip interactive creation in dry run mode
357
385
  }
358
- const createChoice = await question('\nWould you like me to create these content types automatically? (y/N): ');
359
- if (createChoice.toLowerCase() === 'y' || createChoice.toLowerCase() === 'yes') {
386
+ const createChoice = await question('\nWould you like me to create these content types automatically? (y/n) [y]: ');
387
+ if (createChoice.trim() === '' || isYes(createChoice)) {
360
388
  for (const type of missingTypes) {
361
- await createContentTypeInteractive(type, dryRun);
389
+ await createContentTypeInteractive(type, localContent, dryRun);
362
390
  }
363
391
  }
364
392
  else {
@@ -367,20 +395,48 @@ async function validateContentTypes(localTypes, remoteTypeMap, dryRun = false) {
367
395
  }
368
396
  }
369
397
  }
398
+ /**
399
+ * Check if a user response is affirmative (case-insensitive)
400
+ */
401
+ function isYes(input) {
402
+ const trimmed = input.trim().toLowerCase();
403
+ return trimmed === 'y' || trimmed === 'yes';
404
+ }
405
+ /**
406
+ * Normalize format input to 'MDX' or 'JSON' (case-insensitive)
407
+ */
408
+ function normalizeFormat(input, fallback = 'MDX') {
409
+ const trimmed = input.trim().toUpperCase();
410
+ if (trimmed === 'JSON')
411
+ return 'JSON';
412
+ if (trimmed === 'MDX')
413
+ return 'MDX';
414
+ if (trimmed === '')
415
+ return fallback;
416
+ return fallback;
417
+ }
370
418
  /**
371
419
  * Create a content type in remote LeadCMS
372
420
  */
373
- async function createContentTypeInteractive(typeName, dryRun = false) {
421
+ async function createContentTypeInteractive(typeName, localContent, dryRun = false) {
422
+ const defaults = analyzeContentTypeFromFiles(localContent, typeName);
374
423
  colorConsole.progress(`\nšŸ“ Creating content type: ${colorConsole.highlight(typeName)}`);
375
- const format = await question(`What format should '${colorConsole.highlight(typeName)}' use? (MDX/JSON) [MDX]: `) || 'MDX';
376
- const supportsCoverImage = await question(`Should '${colorConsole.highlight(typeName)}' support cover images? (y/N): `);
377
- const supportsComments = await question(`Should '${colorConsole.highlight(typeName)}' support comments? (y/N): `);
424
+ colorConsole.info(` Auto-detected defaults: format=${defaults.format}, coverImage=${defaults.supportsCoverImage ? 'yes' : 'no'}, comments=${defaults.supportsComments ? 'yes' : 'no'}`);
425
+ const formatDefault = defaults.format;
426
+ const coverDefaultLabel = defaults.supportsCoverImage ? 'y' : 'n';
427
+ const commentsDefaultLabel = defaults.supportsComments ? 'y' : 'n';
428
+ const formatInput = await question(`What format should '${colorConsole.highlight(typeName)}' use? (MDX/JSON) [${formatDefault}]: `);
429
+ const format = normalizeFormat(formatInput, formatDefault);
430
+ const coverInput = await question(`Should '${colorConsole.highlight(typeName)}' support cover images? (y/n) [${coverDefaultLabel}]: `);
431
+ const supportsCoverImage = coverInput.trim() === '' ? defaults.supportsCoverImage : isYes(coverInput);
432
+ const commentsInput = await question(`Should '${colorConsole.highlight(typeName)}' support comments? (y/n) [${commentsDefaultLabel}]: `);
433
+ const supportsComments = commentsInput.trim() === '' ? defaults.supportsComments : isYes(commentsInput);
378
434
  const contentTypeData = {
379
435
  uid: typeName,
380
436
  name: typeName.charAt(0).toUpperCase() + typeName.slice(1),
381
- format: format.toUpperCase(),
382
- supportsCoverImage: supportsCoverImage.toLowerCase() === 'y',
383
- supportsComments: supportsComments.toLowerCase() === 'y'
437
+ format,
438
+ supportsCoverImage,
439
+ supportsComments
384
440
  };
385
441
  if (dryRun) {
386
442
  colorConsole.progress(`\nšŸ“‹ CREATE CONTENT TYPE (Dry Run):`);
@@ -506,7 +562,7 @@ async function displayDetailedDiff(operation, operationType, typeMap) {
506
562
  }
507
563
  }
508
564
  catch (error) {
509
- console.warn(`[DIFF] Failed to generate detailed diff for ${local.slug}:`, error.message);
565
+ logger.verbose(`[DIFF] Failed to generate detailed diff for ${local.slug}: ${error.message}`);
510
566
  console.log(' Unable to show content comparison');
511
567
  }
512
568
  console.log('');
@@ -754,7 +810,7 @@ async function pushMain(options = {}) {
754
810
  const isSingleFileMode = !!(targetId || targetSlug);
755
811
  const actionDescription = statusOnly ? 'status check' : 'push';
756
812
  const targetDescription = targetId ? `ID ${targetId}` : targetSlug ? `slug "${targetSlug}"` : 'all content';
757
- console.log(`[PUSH] Starting ${actionDescription} for ${targetDescription}...`);
813
+ logger.verbose(`[PUSH] Starting ${actionDescription} for ${targetDescription}...`);
758
814
  // Check for API key if not in status-only mode
759
815
  if (!statusOnly && !dryRun) {
760
816
  const config = await import('../lib/config.js').then(m => m.getConfig());
@@ -793,13 +849,13 @@ async function pushMain(options = {}) {
793
849
  console.log(`āŒ No local content found with ${targetId ? `ID ${targetId}` : `slug "${targetSlug}"`}`);
794
850
  return;
795
851
  }
796
- console.log(`[LOCAL] Found ${filteredLocalContent.length} matching local file(s)`);
852
+ logger.verbose(`[LOCAL] Found ${filteredLocalContent.length} matching local file(s)`);
797
853
  }
798
854
  else {
799
855
  // Get local content types and validate them
800
856
  const localTypes = getLocalContentTypes(localContent);
801
- console.log(`[LOCAL] Found content types: ${Array.from(localTypes).join(', ')}`);
802
- await validateContentTypes(localTypes, remoteTypeMap, dryRun);
857
+ logger.verbose(`[LOCAL] Found content types: ${Array.from(localTypes).join(', ')}`);
858
+ await validateContentTypes(localTypes, remoteTypeMap, localContent, dryRun);
803
859
  }
804
860
  // Fetch remote content for comparison
805
861
  const remoteContent = await fetchRemoteContent();
@@ -1035,7 +1091,7 @@ async function executeIndividualOperations(operations, options = {}) {
1035
1091
  console.log(`\nšŸ“Š Results: ${successful} successful, ${failed} failed`);
1036
1092
  // If any updates were successful, automatically pull latest changes to sync local store
1037
1093
  if (successful > 0) {
1038
- console.log(`\nšŸ”„ Syncing latest changes from LeadCMS to local store...`);
1094
+ logger.info(`\nšŸ”„ Syncing latest changes from LeadCMS to local store...`);
1039
1095
  try {
1040
1096
  const { fetchLeadCMSContent } = await import('./fetch-leadcms-content.js');
1041
1097
  await fetchLeadCMSContent();
@@ -1098,8 +1154,36 @@ export { parseContentFile };
1098
1154
  export { isLocaleDirectory };
1099
1155
  export { getLocalContentTypes };
1100
1156
  export { filterContentOperations };
1157
+ export { analyzeContentTypeFromFiles };
1158
+ export { isYes };
1159
+ export { normalizeFormat };
1160
+ export { fetchRemoteContent };
1101
1161
  // Re-export formatContentForAPI from utility module for testing
1102
1162
  export { formatContentForAPI } from '../lib/content-api-formatting.js';
1103
1163
  // Re-export the new comparison function for consistency
1104
1164
  export { transformRemoteForComparison } from "../lib/content-transformation.js";
1165
+ /**
1166
+ * Get content status data without printing anything.
1167
+ * Used by the unified status-all renderer.
1168
+ */
1169
+ export async function getContentStatusData(options = {}) {
1170
+ const localContent = await readLocalContent();
1171
+ if (localContent.length === 0) {
1172
+ return {
1173
+ operations: { create: [], update: [], rename: [], typeChange: [], conflict: [], delete: [] },
1174
+ totalLocal: 0,
1175
+ totalRemote: 0,
1176
+ };
1177
+ }
1178
+ const remoteTypes = await leadCMSDataService.getContentTypes();
1179
+ const remoteTypeMap = {};
1180
+ remoteTypes.forEach(type => { remoteTypeMap[type.uid] = type.format; });
1181
+ const remoteContent = await fetchRemoteContent();
1182
+ const operations = await matchContent(localContent, remoteContent, remoteTypeMap, options.showDelete || false);
1183
+ return {
1184
+ operations,
1185
+ totalLocal: localContent.length,
1186
+ totalRemote: remoteContent.length,
1187
+ };
1188
+ }
1105
1189
  //# sourceMappingURL=push-leadcms-content.js.map