@leadcms/sdk 3.4.0 → 3.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 (145) hide show
  1. package/dist/cli/bin/login.js +1 -1
  2. package/dist/cli/bin/login.js.map +1 -1
  3. package/dist/cli/bin/pull-all.js +4 -2
  4. package/dist/cli/bin/pull-all.js.map +1 -1
  5. package/dist/cli/bin/pull-comments.js +3 -1
  6. package/dist/cli/bin/pull-comments.js.map +1 -1
  7. package/dist/cli/bin/pull-content.js +4 -2
  8. package/dist/cli/bin/pull-content.js.map +1 -1
  9. package/dist/cli/bin/pull-email-templates.js +3 -1
  10. package/dist/cli/bin/pull-email-templates.js.map +1 -1
  11. package/dist/cli/bin/pull-media.js +3 -1
  12. package/dist/cli/bin/pull-media.js.map +1 -1
  13. package/dist/cli/bin/pull-settings.js +2 -0
  14. package/dist/cli/bin/pull-settings.js.map +1 -1
  15. package/dist/cli/bin/push-all.js +4 -1
  16. package/dist/cli/bin/push-all.js.map +1 -1
  17. package/dist/cli/bin/push-comments.js +2 -0
  18. package/dist/cli/bin/push-comments.js.map +1 -1
  19. package/dist/cli/bin/push-content.js +5 -3
  20. package/dist/cli/bin/push-content.js.map +1 -1
  21. package/dist/cli/bin/push-email-templates.js +3 -1
  22. package/dist/cli/bin/push-email-templates.js.map +1 -1
  23. package/dist/cli/bin/push-media.js +2 -0
  24. package/dist/cli/bin/push-media.js.map +1 -1
  25. package/dist/cli/bin/push-settings.js +2 -0
  26. package/dist/cli/bin/push-settings.js.map +1 -1
  27. package/dist/cli/bin/push.js +5 -3
  28. package/dist/cli/bin/push.js.map +1 -1
  29. package/dist/cli/bin/remote-flag.d.ts +17 -0
  30. package/dist/cli/bin/remote-flag.d.ts.map +1 -0
  31. package/dist/cli/bin/remote-flag.js +50 -0
  32. package/dist/cli/bin/remote-flag.js.map +1 -0
  33. package/dist/cli/bin/remote.d.ts +14 -0
  34. package/dist/cli/bin/remote.d.ts.map +1 -0
  35. package/dist/cli/bin/remote.js +291 -0
  36. package/dist/cli/bin/remote.js.map +1 -0
  37. package/dist/cli/bin/status-all.js +4 -2
  38. package/dist/cli/bin/status-all.js.map +1 -1
  39. package/dist/cli/bin/status-comments.js +2 -0
  40. package/dist/cli/bin/status-comments.js.map +1 -1
  41. package/dist/cli/bin/status-content.js +4 -2
  42. package/dist/cli/bin/status-content.js.map +1 -1
  43. package/dist/cli/bin/status-email-templates.js +3 -1
  44. package/dist/cli/bin/status-email-templates.js.map +1 -1
  45. package/dist/cli/bin/status-media.js +2 -0
  46. package/dist/cli/bin/status-media.js.map +1 -1
  47. package/dist/cli/bin/status-settings.js +2 -0
  48. package/dist/cli/bin/status-settings.js.map +1 -1
  49. package/dist/cli/bin/status.js +5 -2
  50. package/dist/cli/bin/status.js.map +1 -1
  51. package/dist/cli/bin/watch.js +6 -3
  52. package/dist/cli/bin/watch.js.map +1 -1
  53. package/dist/cli/index.js +47 -10
  54. package/dist/cli/index.js.map +1 -1
  55. package/dist/index.js +0 -1
  56. package/dist/index.js.map +1 -1
  57. package/dist/lib/auth.d.ts +1 -1
  58. package/dist/lib/auth.d.ts.map +1 -1
  59. package/dist/lib/auth.js +5 -5
  60. package/dist/lib/auth.js.map +1 -1
  61. package/dist/lib/config.d.ts +6 -1
  62. package/dist/lib/config.d.ts.map +1 -1
  63. package/dist/lib/config.js +37 -4
  64. package/dist/lib/config.js.map +1 -1
  65. package/dist/lib/content-transformation.d.ts +5 -0
  66. package/dist/lib/content-transformation.d.ts.map +1 -1
  67. package/dist/lib/content-transformation.js +49 -2
  68. package/dist/lib/content-transformation.js.map +1 -1
  69. package/dist/lib/data-service.d.ts +6 -0
  70. package/dist/lib/data-service.d.ts.map +1 -1
  71. package/dist/lib/data-service.js +11 -0
  72. package/dist/lib/data-service.js.map +1 -1
  73. package/dist/lib/remote-context.d.ts +98 -0
  74. package/dist/lib/remote-context.d.ts.map +1 -0
  75. package/dist/lib/remote-context.js +297 -0
  76. package/dist/lib/remote-context.js.map +1 -0
  77. package/dist/scripts/init-leadcms.d.ts.map +1 -1
  78. package/dist/scripts/init-leadcms.js +127 -15
  79. package/dist/scripts/init-leadcms.js.map +1 -1
  80. package/dist/scripts/leadcms-helpers.d.ts +16 -5
  81. package/dist/scripts/leadcms-helpers.d.ts.map +1 -1
  82. package/dist/scripts/leadcms-helpers.js +31 -8
  83. package/dist/scripts/leadcms-helpers.js.map +1 -1
  84. package/dist/scripts/login-leadcms.d.ts +4 -1
  85. package/dist/scripts/login-leadcms.d.ts.map +1 -1
  86. package/dist/scripts/login-leadcms.js +45 -6
  87. package/dist/scripts/login-leadcms.js.map +1 -1
  88. package/dist/scripts/pull-all.d.ts +14 -6
  89. package/dist/scripts/pull-all.d.ts.map +1 -1
  90. package/dist/scripts/pull-all.js +86 -33
  91. package/dist/scripts/pull-all.js.map +1 -1
  92. package/dist/scripts/pull-comments.d.ts +3 -0
  93. package/dist/scripts/pull-comments.d.ts.map +1 -1
  94. package/dist/scripts/pull-comments.js +4 -4
  95. package/dist/scripts/pull-comments.js.map +1 -1
  96. package/dist/scripts/pull-content.d.ts +3 -0
  97. package/dist/scripts/pull-content.d.ts.map +1 -1
  98. package/dist/scripts/pull-content.js +7 -6
  99. package/dist/scripts/pull-content.js.map +1 -1
  100. package/dist/scripts/pull-email-templates.d.ts +3 -0
  101. package/dist/scripts/pull-email-templates.d.ts.map +1 -1
  102. package/dist/scripts/pull-email-templates.js +4 -4
  103. package/dist/scripts/pull-email-templates.js.map +1 -1
  104. package/dist/scripts/{fetch-leadcms-comments.d.ts → pull-leadcms-comments.d.ts} +7 -6
  105. package/dist/scripts/pull-leadcms-comments.d.ts.map +1 -0
  106. package/dist/scripts/{fetch-leadcms-comments.js → pull-leadcms-comments.js} +56 -28
  107. package/dist/scripts/pull-leadcms-comments.js.map +1 -0
  108. package/dist/scripts/{fetch-leadcms-content.d.ts → pull-leadcms-content.d.ts} +13 -19
  109. package/dist/scripts/pull-leadcms-content.d.ts.map +1 -0
  110. package/dist/scripts/{fetch-leadcms-content.js → pull-leadcms-content.js} +121 -250
  111. package/dist/scripts/pull-leadcms-content.js.map +1 -0
  112. package/dist/scripts/{fetch-leadcms-email-templates.d.ts → pull-leadcms-email-templates.d.ts} +5 -4
  113. package/dist/scripts/pull-leadcms-email-templates.d.ts.map +1 -0
  114. package/dist/scripts/{fetch-leadcms-email-templates.js → pull-leadcms-email-templates.js} +89 -11
  115. package/dist/scripts/pull-leadcms-email-templates.js.map +1 -0
  116. package/dist/scripts/pull-leadcms-media.d.ts +32 -0
  117. package/dist/scripts/pull-leadcms-media.d.ts.map +1 -0
  118. package/dist/scripts/pull-leadcms-media.js +229 -0
  119. package/dist/scripts/pull-leadcms-media.js.map +1 -0
  120. package/dist/scripts/pull-media.d.ts +4 -1
  121. package/dist/scripts/pull-media.d.ts.map +1 -1
  122. package/dist/scripts/pull-media.js +4 -4
  123. package/dist/scripts/pull-media.js.map +1 -1
  124. package/dist/scripts/push-comments.js +3 -3
  125. package/dist/scripts/push-comments.js.map +1 -1
  126. package/dist/scripts/push-email-templates.d.ts +6 -1
  127. package/dist/scripts/push-email-templates.d.ts.map +1 -1
  128. package/dist/scripts/push-email-templates.js +96 -21
  129. package/dist/scripts/push-email-templates.js.map +1 -1
  130. package/dist/scripts/push-leadcms-content.d.ts +9 -3
  131. package/dist/scripts/push-leadcms-content.d.ts.map +1 -1
  132. package/dist/scripts/push-leadcms-content.js +110 -36
  133. package/dist/scripts/push-leadcms-content.js.map +1 -1
  134. package/dist/scripts/sse-watcher.d.ts +9 -8
  135. package/dist/scripts/sse-watcher.d.ts.map +1 -1
  136. package/dist/scripts/sse-watcher.js +59 -52
  137. package/dist/scripts/sse-watcher.js.map +1 -1
  138. package/leadcms.config.json.sample +12 -1
  139. package/package.json +2 -3
  140. package/dist/scripts/fetch-leadcms-comments.d.ts.map +0 -1
  141. package/dist/scripts/fetch-leadcms-comments.js.map +0 -1
  142. package/dist/scripts/fetch-leadcms-content.d.ts.map +0 -1
  143. package/dist/scripts/fetch-leadcms-content.js.map +0 -1
  144. package/dist/scripts/fetch-leadcms-email-templates.d.ts.map +0 -1
  145. package/dist/scripts/fetch-leadcms-email-templates.js.map +0 -1
@@ -1,9 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
3
  * Orchestrator for pulling all content from LeadCMS
4
- * Checks entity support before fetching content, media, and comments
4
+ * Checks entity support before pulling content, media, and comments
5
5
  */
6
6
  import "dotenv/config";
7
+ import type { RemoteContext } from "../lib/remote-context.js";
7
8
  interface PullAllOptions {
8
9
  targetId?: string;
9
10
  targetSlug?: string;
@@ -11,26 +12,32 @@ interface PullAllOptions {
11
12
  reset?: boolean;
12
13
  /** When true, skip three-way merge and always overwrite local files with remote content. */
13
14
  force?: boolean;
15
+ /** Remote context for multi-remote support. */
16
+ remoteContext?: RemoteContext;
14
17
  }
15
18
  /**
16
19
  * Reset content directory and its sync tokens.
17
20
  * Deletes content files, the sync token inside contentDir, and any legacy sync tokens.
21
+ * When remoteCtx is provided, also clears per-remote sync tokens.
18
22
  */
19
- declare function resetContentState(): Promise<void>;
23
+ declare function resetContentState(remoteCtx?: RemoteContext): Promise<void>;
20
24
  /**
21
25
  * Reset media directory and its sync tokens.
22
26
  * Deletes media files, the sync token inside mediaDir, and any legacy sync tokens.
27
+ * When remoteCtx is provided, also clears per-remote media sync token.
23
28
  */
24
- declare function resetMediaState(): Promise<void>;
29
+ declare function resetMediaState(remoteCtx?: RemoteContext): Promise<void>;
25
30
  /**
26
31
  * Reset comments directory and its sync tokens.
27
32
  * Deletes comment files, the sync token inside commentsDir, and any legacy sync tokens.
33
+ * When remoteCtx is provided, also clears per-remote comments sync token.
28
34
  */
29
- declare function resetCommentsState(): Promise<void>;
35
+ declare function resetCommentsState(remoteCtx?: RemoteContext): Promise<void>;
30
36
  /**
31
37
  * Reset email templates directory and its sync tokens.
38
+ * When remoteCtx is provided, also clears per-remote email-templates sync token.
32
39
  */
33
- declare function resetEmailTemplatesState(): Promise<void>;
40
+ declare function resetEmailTemplatesState(remoteCtx?: RemoteContext): Promise<void>;
34
41
  /**
35
42
  * Reset settings directory.
36
43
  */
@@ -38,8 +45,9 @@ declare function resetSettingsState(): Promise<void>;
38
45
  /**
39
46
  * Delete all local content, media, comments, and sync tokens.
40
47
  * Used by --reset to do a clean pull from scratch.
48
+ * When remoteCtx is provided, also clears per-remote state (sync tokens and metadata).
41
49
  */
42
- declare function resetLocalState(): Promise<void>;
50
+ declare function resetLocalState(remoteCtx?: RemoteContext): Promise<void>;
43
51
  /**
44
52
  * Main orchestrator function
45
53
  */
@@ -1 +1 @@
1
- {"version":3,"file":"pull-all.d.ts","sourceRoot":"","sources":["../../src/scripts/pull-all.ts"],"names":[],"mappings":";AACA;;;GAGG;AAEH,OAAO,eAAe,CAAC;AASvB,UAAU,cAAc;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qHAAqH;IACrH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4FAA4F;IAC5F,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AA8CD;;;GAGG;AACH,iBAAe,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAchD;AAED;;;GAGG;AACH,iBAAe,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAe9C;AAED;;;GAGG;AACH,iBAAe,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAcjD;AAED;;GAEG;AACH,iBAAe,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAQvD;AAED;;GAEG;AACH,iBAAe,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAQjD;AAED;;;GAGG;AACH,iBAAe,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAU9C;AAED;;GAEG;AACH,iBAAe,IAAI,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoE/D;AAGD,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,CAAC;AAG3B,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"pull-all.d.ts","sourceRoot":"","sources":["../../src/scripts/pull-all.ts"],"names":[],"mappings":";AACA;;;GAGG;AAEH,OAAO,eAAe,CAAC;AASvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,UAAU,cAAc;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qHAAqH;IACrH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4FAA4F;IAC5F,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,+CAA+C;IAC/C,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AA+CD;;;;GAIG;AACH,iBAAe,iBAAiB,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBzE;AAED;;;;GAIG;AACH,iBAAe,eAAe,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBvE;AAED;;;;GAIG;AACH,iBAAe,kBAAkB,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAsB1E;AAED;;;GAGG;AACH,iBAAe,wBAAwB,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBhF;AAED;;GAEG;AACH,iBAAe,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAQjD;AAED;;;;GAIG;AACH,iBAAe,eAAe,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBvE;AAED;;GAEG;AACH,iBAAe,IAAI,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2E/D;AAGD,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,CAAC;AAG3B,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
3
  * Orchestrator for pulling all content from LeadCMS
4
- * Checks entity support before fetching content, media, and comments
4
+ * Checks entity support before pulling content, media, and comments
5
5
  */
6
6
  import "dotenv/config";
7
7
  import fs from "fs/promises";
@@ -11,13 +11,15 @@ import { leadCMSUrl, leadCMSApiKey } from "./leadcms-helpers.js";
11
11
  import { setCMSConfig, isContentSupported, isMediaSupported, isCommentsSupported, isEmailTemplatesSupported, isSettingsSupported } from "../lib/cms-config-types.js";
12
12
  import { getConfig } from "../lib/config.js";
13
13
  import { logger } from "../lib/logger.js";
14
+ import { syncTokenPath, metadataMapPath } from "../lib/remote-context.js";
14
15
  /**
15
16
  * Fetch CMS config to determine which entities are supported
16
17
  */
17
- async function fetchAndCacheCMSConfig() {
18
+ async function fetchAndCacheCMSConfig(baseUrl) {
18
19
  try {
20
+ const effectiveUrl = baseUrl || leadCMSUrl;
19
21
  logger.info(`🔍 Checking CMS configuration...`);
20
- const configUrl = new URL('/api/config', leadCMSUrl).toString();
22
+ const configUrl = new URL('/api/config', effectiveUrl).toString();
21
23
  const response = await axios.get(configUrl, { timeout: 10000 });
22
24
  if (response.data) {
23
25
  setCMSConfig(response.data);
@@ -48,8 +50,9 @@ async function fetchAndCacheCMSConfig() {
48
50
  /**
49
51
  * Reset content directory and its sync tokens.
50
52
  * Deletes content files, the sync token inside contentDir, and any legacy sync tokens.
53
+ * When remoteCtx is provided, also clears per-remote sync tokens.
51
54
  */
52
- async function resetContentState() {
55
+ async function resetContentState(remoteCtx) {
53
56
  const config = getConfig();
54
57
  const contentDir = path.resolve(config.contentDir);
55
58
  try {
@@ -63,12 +66,21 @@ async function resetContentState() {
63
66
  logger.verbose(` ✓ Removed legacy content sync token`);
64
67
  }
65
68
  catch { /* not found — ok */ }
69
+ // Clear per-remote content sync token when remote context is provided
70
+ if (remoteCtx) {
71
+ try {
72
+ await fs.unlink(syncTokenPath(remoteCtx, 'content'));
73
+ logger.verbose(` ✓ Removed per-remote content sync token (${remoteCtx.name})`);
74
+ }
75
+ catch { /* not found — ok */ }
76
+ }
66
77
  }
67
78
  /**
68
79
  * Reset media directory and its sync tokens.
69
80
  * Deletes media files, the sync token inside mediaDir, and any legacy sync tokens.
81
+ * When remoteCtx is provided, also clears per-remote media sync token.
70
82
  */
71
- async function resetMediaState() {
83
+ async function resetMediaState(remoteCtx) {
72
84
  const config = getConfig();
73
85
  const mediaDir = path.resolve(config.mediaDir);
74
86
  const contentDir = path.resolve(config.contentDir);
@@ -83,12 +95,21 @@ async function resetMediaState() {
83
95
  logger.verbose(` ✓ Removed legacy media sync token`);
84
96
  }
85
97
  catch { /* not found — ok */ }
98
+ // Clear per-remote media sync token
99
+ if (remoteCtx) {
100
+ try {
101
+ await fs.unlink(syncTokenPath(remoteCtx, 'media'));
102
+ logger.verbose(` ✓ Removed per-remote media sync token (${remoteCtx.name})`);
103
+ }
104
+ catch { /* not found — ok */ }
105
+ }
86
106
  }
87
107
  /**
88
108
  * Reset comments directory and its sync tokens.
89
109
  * Deletes comment files, the sync token inside commentsDir, and any legacy sync tokens.
110
+ * When remoteCtx is provided, also clears per-remote comments sync token.
90
111
  */
91
- async function resetCommentsState() {
112
+ async function resetCommentsState(remoteCtx) {
92
113
  const config = getConfig();
93
114
  const commentsDir = path.resolve(config.commentsDir);
94
115
  try {
@@ -102,11 +123,20 @@ async function resetCommentsState() {
102
123
  logger.verbose(` ✓ Removed legacy comment sync token`);
103
124
  }
104
125
  catch { /* not found — ok */ }
126
+ // Clear per-remote comments sync token
127
+ if (remoteCtx) {
128
+ try {
129
+ await fs.unlink(syncTokenPath(remoteCtx, 'comments'));
130
+ logger.verbose(` ✓ Removed per-remote comments sync token (${remoteCtx.name})`);
131
+ }
132
+ catch { /* not found — ok */ }
133
+ }
105
134
  }
106
135
  /**
107
136
  * Reset email templates directory and its sync tokens.
137
+ * When remoteCtx is provided, also clears per-remote email-templates sync token.
108
138
  */
109
- async function resetEmailTemplatesState() {
139
+ async function resetEmailTemplatesState(remoteCtx) {
110
140
  const config = getConfig();
111
141
  const emailTemplatesDir = path.resolve(config.emailTemplatesDir);
112
142
  try {
@@ -114,6 +144,14 @@ async function resetEmailTemplatesState() {
114
144
  logger.verbose(` ✓ Cleared email templates directory: ${emailTemplatesDir}`);
115
145
  }
116
146
  catch { /* directory may not exist */ }
147
+ // Clear per-remote email-templates sync token
148
+ if (remoteCtx) {
149
+ try {
150
+ await fs.unlink(syncTokenPath(remoteCtx, 'email-templates'));
151
+ logger.verbose(` ✓ Removed per-remote email-templates sync token (${remoteCtx.name})`);
152
+ }
153
+ catch { /* not found — ok */ }
154
+ }
117
155
  }
118
156
  /**
119
157
  * Reset settings directory.
@@ -130,45 +168,55 @@ async function resetSettingsState() {
130
168
  /**
131
169
  * Delete all local content, media, comments, and sync tokens.
132
170
  * Used by --reset to do a clean pull from scratch.
171
+ * When remoteCtx is provided, also clears per-remote state (sync tokens and metadata).
133
172
  */
134
- async function resetLocalState() {
173
+ async function resetLocalState(remoteCtx) {
135
174
  console.log(`🗑️ Resetting local state...`);
136
- await resetContentState();
137
- await resetMediaState();
138
- await resetCommentsState();
139
- await resetEmailTemplatesState();
175
+ await resetContentState(remoteCtx);
176
+ await resetMediaState(remoteCtx);
177
+ await resetCommentsState(remoteCtx);
178
+ await resetEmailTemplatesState(remoteCtx);
140
179
  await resetSettingsState();
180
+ // Clear per-remote metadata
181
+ if (remoteCtx) {
182
+ try {
183
+ await fs.unlink(metadataMapPath(remoteCtx));
184
+ logger.verbose(` ✓ Removed per-remote metadata (${remoteCtx.name})`);
185
+ }
186
+ catch { /* not found — ok */ }
187
+ }
141
188
  console.log(` ✅ Local state reset complete\n`);
142
189
  }
143
190
  /**
144
191
  * Main orchestrator function
145
192
  */
146
193
  async function main(options = {}) {
147
- const { targetId, targetSlug, reset, force } = options;
194
+ const { targetId, targetSlug, reset, force, remoteContext: remoteCtx } = options;
195
+ const effectiveUrl = remoteCtx?.url || leadCMSUrl;
148
196
  // If pulling specific content by ID or slug, use pull-content logic directly
149
197
  if (targetId || targetSlug) {
150
- console.log(`\n🚀 LeadCMS Pull - Fetching specific content\n`);
198
+ console.log(`\n🚀 LeadCMS Pull - Pulling specific content\n`);
151
199
  const { pullContent } = await import('./pull-content.js');
152
- await pullContent({ targetId, targetSlug });
200
+ await pullContent({ targetId, targetSlug, remoteContext: remoteCtx });
153
201
  return;
154
202
  }
155
203
  // Handle --reset flag: clear everything before pulling
156
204
  if (reset) {
157
205
  console.log(`\n🔄 LeadCMS Pull --reset - Fresh pull from scratch\n`);
158
- await resetLocalState();
206
+ await resetLocalState(remoteCtx);
159
207
  }
160
208
  else {
161
- console.log(`\n🚀 LeadCMS Pull - Fetching all content\n`);
209
+ console.log(`\n🚀 LeadCMS Pull - Pulling all content\n`);
162
210
  }
163
211
  // Check which entities are supported
164
- const { content, media, comments, emailTemplates, settings } = await fetchAndCacheCMSConfig();
212
+ const { content, media, comments, emailTemplates, settings } = await fetchAndCacheCMSConfig(effectiveUrl);
165
213
  if (!content && !media && !comments && !emailTemplates && !settings) {
166
214
  console.log(`⏭️ No supported entities found - nothing to sync`);
167
215
  return;
168
216
  }
169
217
  // Pull settings first — other content may depend on settings
170
218
  if (settings) {
171
- console.log(`\n⚙️ Fetching settings...`);
219
+ console.log(`\n⚙️ Pulling settings...`);
172
220
  try {
173
221
  const { pullSettings } = await import('./pull-settings.js');
174
222
  await pullSettings({ reset: false });
@@ -178,26 +226,31 @@ async function main(options = {}) {
178
226
  // Continue with other content - settings failure should not block the pull
179
227
  }
180
228
  }
181
- // Import and run fetch functions for supported entities
182
- const fetchPromises = [];
183
- if (content || media) {
184
- console.log(`📄 Fetching content and media...`);
185
- const { fetchLeadCMSContent } = await import('./fetch-leadcms-content.js');
186
- fetchPromises.push(fetchLeadCMSContent({ forceOverwrite: force }));
229
+ // Import and run pull functions for supported entities
230
+ const pullPromises = [];
231
+ if (content) {
232
+ console.log(`📄 Pulling content...`);
233
+ const { pullLeadCMSContent } = await import('./pull-leadcms-content.js');
234
+ pullPromises.push(pullLeadCMSContent({ forceOverwrite: force, remoteContext: remoteCtx }));
235
+ }
236
+ if (media) {
237
+ console.log(`🖼️ Pulling media...`);
238
+ const { pullLeadCMSMedia } = await import('./pull-leadcms-media.js');
239
+ pullPromises.push(pullLeadCMSMedia({ remoteContext: remoteCtx }));
187
240
  }
188
241
  if (comments) {
189
- console.log(`💬 Fetching comments...`);
190
- const { fetchLeadCMSComments } = await import('./fetch-leadcms-comments.js');
191
- fetchPromises.push(fetchLeadCMSComments());
242
+ console.log(`💬 Pulling comments...`);
243
+ const { pullLeadCMSComments } = await import('./pull-leadcms-comments.js');
244
+ pullPromises.push(pullLeadCMSComments(remoteCtx));
192
245
  }
193
246
  if (emailTemplates) {
194
- console.log(`📧 Fetching email templates...`);
195
- const { fetchLeadCMSEmailTemplates } = await import('./fetch-leadcms-email-templates.js');
196
- fetchPromises.push(fetchLeadCMSEmailTemplates());
247
+ console.log(`📧 Pulling email templates...`);
248
+ const { pullLeadCMSEmailTemplates } = await import('./pull-leadcms-email-templates.js');
249
+ pullPromises.push(pullLeadCMSEmailTemplates(remoteCtx));
197
250
  }
198
- // Wait for all fetches to complete
251
+ // Wait for all pulls to complete
199
252
  try {
200
- await Promise.all(fetchPromises);
253
+ await Promise.all(pullPromises);
201
254
  console.log(`\n✨ Pull completed successfully!\n`);
202
255
  }
203
256
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"pull-all.js","sourceRoot":"","sources":["../../src/scripts/pull-all.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pull-all.js","sourceRoot":"","sources":["../../src/scripts/pull-all.ts"],"names":[],"mappings":"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"}
@@ -3,9 +3,12 @@
3
3
  * Pull only comments from LeadCMS (no content, no media)
4
4
  */
5
5
  import "dotenv/config";
6
+ import type { RemoteContext } from "../lib/remote-context.js";
6
7
  interface PullCommentsOptions {
7
8
  /** When true, delete all local comment files and sync tokens before pulling, effectively doing a fresh pull. */
8
9
  reset?: boolean;
10
+ /** Optional remote context for multi-remote sync token isolation. */
11
+ remoteContext?: RemoteContext;
9
12
  }
10
13
  /**
11
14
  * Main function
@@ -1 +1 @@
1
- {"version":3,"file":"pull-comments.d.ts","sourceRoot":"","sources":["../../src/scripts/pull-comments.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,eAAe,CAAC;AAQvB,UAAU,mBAAmB;IAC3B,gHAAgH;IAChH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,iBAAe,IAAI,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoCpE;AAKD,OAAO,EAAE,IAAI,IAAI,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"pull-comments.d.ts","sourceRoot":"","sources":["../../src/scripts/pull-comments.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,eAAe,CAAC;AAOvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,UAAU,mBAAmB;IAC3B,gHAAgH;IAChH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,qEAAqE;IACrE,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED;;GAEG;AACH,iBAAe,IAAI,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoCpE;AAKD,OAAO,EAAE,IAAI,IAAI,YAAY,EAAE,CAAC"}
@@ -6,19 +6,19 @@ import "dotenv/config";
6
6
  import axios from "axios";
7
7
  import { leadCMSUrl } from "./leadcms-helpers.js";
8
8
  import { setCMSConfig, isCommentsSupported } from "../lib/cms-config-types.js";
9
- import { fetchLeadCMSComments } from "./fetch-leadcms-comments.js";
9
+ import { pullLeadCMSComments } from "./pull-leadcms-comments.js";
10
10
  import { resetCommentsState } from "./pull-all.js";
11
11
  import { logger } from "../lib/logger.js";
12
12
  /**
13
13
  * Main function
14
14
  */
15
15
  async function main(options = {}) {
16
- const { reset } = options;
16
+ const { reset, remoteContext } = options;
17
17
  console.log(`\n💬 LeadCMS Pull Comments\n`);
18
18
  // Handle --reset flag: clear comments before pulling
19
19
  if (reset) {
20
20
  console.log(`🔄 Resetting comments state...\n`);
21
- await resetCommentsState();
21
+ await resetCommentsState(remoteContext);
22
22
  }
23
23
  // Check if comments are supported
24
24
  try {
@@ -39,7 +39,7 @@ async function main(options = {}) {
39
39
  console.warn(`⚠️ Assuming comments are supported (backward compatibility)\n`);
40
40
  }
41
41
  // Fetch comments
42
- await fetchLeadCMSComments();
42
+ await pullLeadCMSComments(remoteContext);
43
43
  console.log(`\n✨ Comments pull completed!\n`);
44
44
  }
45
45
  // Note: CLI execution moved to src/cli/bin/pull-comments.ts
@@ -1 +1 @@
1
- {"version":3,"file":"pull-comments.js","sourceRoot":"","sources":["../../src/scripts/pull-comments.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,eAAe,CAAC;AACvB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAO1C;;GAEG;AACH,KAAK,UAAU,IAAI,CAAC,UAA+B,EAAE;IACnD,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAE1B,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAE5C,qDAAqD;IACrD,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAChD,MAAM,kBAAkB,EAAE,CAAC;IAC7B,CAAC;IAED,kCAAkC;IAClC,IAAI,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC;QACnD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAEhE,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClB,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAE5B,IAAI,CAAC,mBAAmB,EAAE,EAAE,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;gBAC1E,OAAO;YACT,CAAC;YAED,MAAM,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,mCAAmC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IACjF,CAAC;IAED,iBAAiB;IACjB,MAAM,oBAAoB,EAAE,CAAC;IAE7B,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;AAChD,CAAC;AAED,4DAA4D;AAC5D,+DAA+D;AAE/D,OAAO,EAAE,IAAI,IAAI,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"pull-comments.js","sourceRoot":"","sources":["../../src/scripts/pull-comments.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,eAAe,CAAC;AACvB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAU1C;;GAEG;AACH,KAAK,UAAU,IAAI,CAAC,UAA+B,EAAE;IACnD,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAEzC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAE5C,qDAAqD;IACrD,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAChD,MAAM,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC1C,CAAC;IAED,kCAAkC;IAClC,IAAI,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC;QACnD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAEhE,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClB,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAE5B,IAAI,CAAC,mBAAmB,EAAE,EAAE,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;gBAC1E,OAAO;YACT,CAAC;YAED,MAAM,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,mCAAmC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IACjF,CAAC;IAED,iBAAiB;IACjB,MAAM,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAEzC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;AAChD,CAAC;AAED,4DAA4D;AAC5D,+DAA+D;AAE/D,OAAO,EAAE,IAAI,IAAI,YAAY,EAAE,CAAC"}
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import "dotenv/config";
6
6
  import { type ContentOperations, type MatchOperation } from "./push-leadcms-content.js";
7
+ import type { RemoteContext } from "../lib/remote-context.js";
7
8
  interface PullContentOptions {
8
9
  targetId?: string;
9
10
  targetSlug?: string;
@@ -12,6 +13,8 @@ interface PullContentOptions {
12
13
  reset?: boolean;
13
14
  /** When true, skip three-way merge and always overwrite local files with remote content. */
14
15
  force?: boolean;
16
+ /** Remote context for multi-remote support. */
17
+ remoteContext?: RemoteContext;
15
18
  }
16
19
  interface PullTargetItem {
17
20
  id: number;
@@ -1 +1 @@
1
- {"version":3,"file":"pull-content.d.ts","sourceRoot":"","sources":["../../src/scripts/pull-content.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,eAAe,CAAC;AAUvB,OAAO,EAAiD,KAAK,iBAAiB,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEvI,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,gHAAgH;IAChH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4FAA4F;IAC5F,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,UAAU,cAAc;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,gBAAgB;IACxB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED,wBAAgB,4BAA4B,CAAC,UAAU,EAAE,iBAAiB,GAAG,gBAAgB,CAiC5F;AAoDD;;GAEG;AACH,iBAAe,IAAI,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4FnE;AAKD,OAAO,EAAE,IAAI,IAAI,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"pull-content.d.ts","sourceRoot":"","sources":["../../src/scripts/pull-content.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,eAAe,CAAC;AAUvB,OAAO,EAAiD,KAAK,iBAAiB,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACvI,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,gHAAgH;IAChH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4FAA4F;IAC5F,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,+CAA+C;IAC/C,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,UAAU,cAAc;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,gBAAgB;IACxB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED,wBAAgB,4BAA4B,CAAC,UAAU,EAAE,iBAAiB,GAAG,gBAAgB,CAiC5F;AAoDD;;GAEG;AACH,iBAAe,IAAI,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6FnE;AAKD,OAAO,EAAE,IAAI,IAAI,WAAW,EAAE,CAAC"}
@@ -6,7 +6,7 @@ import "dotenv/config";
6
6
  import axios from "axios";
7
7
  import { leadCMSUrl } from "./leadcms-helpers.js";
8
8
  import { setCMSConfig, isContentSupported } from "../lib/cms-config-types.js";
9
- import { fetchLeadCMSContent } from "./fetch-leadcms-content.js";
9
+ import { pullLeadCMSContent } from "./pull-leadcms-content.js";
10
10
  import { leadCMSDataService } from "../lib/data-service.js";
11
11
  import { saveContentFile } from "../lib/content-transformation.js";
12
12
  import { CONTENT_DIR, fetchContentTypes } from "./leadcms-helpers.js";
@@ -86,12 +86,13 @@ async function pullFilteredContent(targetId, targetSlug, statusFilter) {
86
86
  * Main function
87
87
  */
88
88
  async function main(options = {}) {
89
- const { targetId, targetSlug, statusFilter, reset, force } = options;
89
+ const { targetId, targetSlug, statusFilter, reset, force, remoteContext: remoteCtx } = options;
90
+ const effectiveUrl = remoteCtx?.url || leadCMSUrl;
90
91
  console.log(`\n📄 LeadCMS Pull Content\n`);
91
92
  // Handle --reset flag: clear content before pulling
92
93
  if (reset) {
93
94
  console.log(`🔄 Resetting content state...\n`);
94
- await resetContentState();
95
+ await resetContentState(remoteCtx);
95
96
  }
96
97
  // If pulling targeted or filtered content
97
98
  if (targetId || targetSlug || (statusFilter && statusFilter.length > 0)) {
@@ -145,7 +146,7 @@ async function main(options = {}) {
145
146
  // Check if content is supported
146
147
  try {
147
148
  logger.verbose(`🔍 Checking CMS configuration...`);
148
- const configUrl = new URL('/api/config', leadCMSUrl).toString();
149
+ const configUrl = new URL('/api/config', effectiveUrl).toString();
149
150
  const response = await axios.get(configUrl, { timeout: 10000 });
150
151
  if (response.data) {
151
152
  setCMSConfig(response.data);
@@ -160,8 +161,8 @@ async function main(options = {}) {
160
161
  console.warn(`⚠️ Could not fetch CMS config: ${error.message}`);
161
162
  console.warn(`⚠️ Assuming content is supported (backward compatibility)\n`);
162
163
  }
163
- // Fetch content and media
164
- await fetchLeadCMSContent({ forceOverwrite: force });
164
+ // Fetch content only (no media)
165
+ await pullLeadCMSContent({ forceOverwrite: force, remoteContext: remoteCtx });
165
166
  console.log(`\n✨ Content pull completed!\n`);
166
167
  }
167
168
  // Note: CLI execution moved to src/cli/bin/pull-content.ts
@@ -1 +1 @@
1
- {"version":3,"file":"pull-content.js","sourceRoot":"","sources":["../../src/scripts/pull-content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pull-content.js","sourceRoot":"","sources":["../../src/scripts/pull-content.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,13 @@
3
3
  * Pull email templates from LeadCMS
4
4
  */
5
5
  import "dotenv/config";
6
+ import type { RemoteContext } from "../lib/remote-context.js";
6
7
  interface PullEmailTemplatesOptions {
7
8
  targetId?: string;
8
9
  /** When true, delete all local email template files and sync token before pulling. */
9
10
  reset?: boolean;
11
+ /** Optional remote context for multi-remote sync token isolation. */
12
+ remoteContext?: RemoteContext;
10
13
  }
11
14
  declare function main(options?: PullEmailTemplatesOptions): Promise<void>;
12
15
  export { main as pullEmailTemplates };
@@ -1 +1 @@
1
- {"version":3,"file":"pull-email-templates.d.ts","sourceRoot":"","sources":["../../src/scripts/pull-email-templates.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,eAAe,CAAC;AAQvB,UAAU,yBAAyB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,iBAAe,IAAI,CAAC,OAAO,GAAE,yBAA8B,GAAG,OAAO,CAAC,IAAI,CAAC,CA4E1E;AAED,OAAO,EAAE,IAAI,IAAI,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"pull-email-templates.d.ts","sourceRoot":"","sources":["../../src/scripts/pull-email-templates.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,eAAe,CAAC;AAOvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,UAAU,yBAAyB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,qEAAqE;IACrE,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,iBAAe,IAAI,CAAC,OAAO,GAAE,yBAA8B,GAAG,OAAO,CAAC,IAAI,CAAC,CA4E1E;AAED,OAAO,EAAE,IAAI,IAAI,kBAAkB,EAAE,CAAC"}
@@ -6,15 +6,15 @@ import "dotenv/config";
6
6
  import axios from "axios";
7
7
  import { leadCMSUrl, leadCMSApiKey, EMAIL_TEMPLATES_DIR } from "./leadcms-helpers.js";
8
8
  import { setCMSConfig, isEmailTemplatesSupported } from "../lib/cms-config-types.js";
9
- import { fetchLeadCMSEmailTemplates, buildEmailTemplateIdIndex, deleteEmailTemplateFilesById, saveEmailTemplateFile } from "./fetch-leadcms-email-templates.js";
9
+ import { pullLeadCMSEmailTemplates, buildEmailTemplateIdIndex, deleteEmailTemplateFilesById, saveEmailTemplateFile } from "./pull-leadcms-email-templates.js";
10
10
  import { resetEmailTemplatesState } from "./pull-all.js";
11
11
  import { logger } from "../lib/logger.js";
12
12
  async function main(options = {}) {
13
- const { targetId, reset } = options;
13
+ const { targetId, reset, remoteContext } = options;
14
14
  console.log(`\n📧 LeadCMS Pull Email Templates\n`);
15
15
  if (reset) {
16
16
  console.log(`🔄 Resetting email templates state...\n`);
17
- await resetEmailTemplatesState();
17
+ await resetEmailTemplatesState(remoteContext);
18
18
  }
19
19
  if (targetId) {
20
20
  const id = parseInt(targetId, 10);
@@ -72,7 +72,7 @@ async function main(options = {}) {
72
72
  console.warn(`⚠️ Could not fetch CMS config: ${error.message}`);
73
73
  console.warn(`⚠️ Assuming email templates are supported (backward compatibility)\n`);
74
74
  }
75
- await fetchLeadCMSEmailTemplates();
75
+ await pullLeadCMSEmailTemplates(remoteContext);
76
76
  console.log(`\n✨ Email templates pull completed!\n`);
77
77
  }
78
78
  export { main as pullEmailTemplates };
@@ -1 +1 @@
1
- {"version":3,"file":"pull-email-templates.js","sourceRoot":"","sources":["../../src/scripts/pull-email-templates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pull-email-templates.js","sourceRoot":"","sources":["../../src/scripts/pull-email-templates.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import "dotenv/config";
2
2
  import type { Comment, CommentSyncResult, StoredComment } from "../lib/comment-types.js";
3
+ import { type RemoteContext } from "../lib/remote-context.js";
3
4
  /**
4
- * Fetch comments from LeadCMS sync endpoint
5
+ * Pull comments from LeadCMS sync endpoint
5
6
  * Handles pagination automatically
6
7
  */
7
- declare function fetchCommentSync(syncToken?: string): Promise<CommentSyncResult>;
8
+ declare function pullCommentSync(syncToken?: string): Promise<CommentSyncResult>;
8
9
  /**
9
10
  * Convert Comment to StoredComment by removing nested objects
10
11
  */
@@ -29,8 +30,8 @@ declare function groupCommentsByEntityAndLanguage(comments: Comment[]): Map<stri
29
30
  /**
30
31
  * Main function to sync comments from LeadCMS
31
32
  */
32
- export declare function main(): Promise<void>;
33
- export { main as fetchLeadCMSComments };
34
- export { fetchCommentSync, loadCommentsForEntity, saveCommentsForEntity, groupCommentsByEntityAndLanguage, toStoredComment, deleteComment, };
33
+ export declare function main(remoteCtx?: RemoteContext): Promise<void>;
34
+ export { main as pullLeadCMSComments };
35
+ export { pullCommentSync, loadCommentsForEntity, saveCommentsForEntity, groupCommentsByEntityAndLanguage, toStoredComment, deleteComment, };
35
36
  export type { CommentSyncResult };
36
- //# sourceMappingURL=fetch-leadcms-comments.d.ts.map
37
+ //# sourceMappingURL=pull-leadcms-comments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pull-leadcms-comments.d.ts","sourceRoot":"","sources":["../../src/scripts/pull-leadcms-comments.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAQvB,OAAO,KAAK,EACV,OAAO,EAEP,iBAAiB,EACjB,aAAa,EACd,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AA4E7E;;;GAGG;AACH,iBAAe,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAoF7E;AAED;;GAEG;AACH,iBAAS,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,CAGxD;AAqBD;;GAEG;AACH,iBAAe,qBAAqB,CAClC,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,aAAa,EAAE,CAAC,CAS1B;AAED;;GAEG;AACH,iBAAe,qBAAqB,CAClC,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,aAAa,EAAE,GACxB,OAAO,CAAC,IAAI,CAAC,CAwBf;AAED;;;GAGG;AACH,iBAAe,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyC7D;AAgCD;;GAEG;AACH,iBAAS,gCAAgC,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAYrF;AA0BD;;GAEG;AACH,wBAAsB,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAiGnE;AAGD,OAAO,EAAE,IAAI,IAAI,mBAAmB,EAAE,CAAC;AAMvC,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,gCAAgC,EAChC,eAAe,EACf,aAAa,GACd,CAAC;AAGF,YAAY,EAAE,iBAAiB,EAAE,CAAC"}