@leadcms/sdk 3.3.12 → 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 (165) hide show
  1. package/README.md +2 -1
  2. package/dist/cli/bin/content-status-args.d.ts +7 -0
  3. package/dist/cli/bin/content-status-args.d.ts.map +1 -0
  4. package/dist/cli/bin/content-status-args.js +27 -0
  5. package/dist/cli/bin/content-status-args.js.map +1 -0
  6. package/dist/cli/bin/login.js +1 -1
  7. package/dist/cli/bin/login.js.map +1 -1
  8. package/dist/cli/bin/pull-all.js +4 -2
  9. package/dist/cli/bin/pull-all.js.map +1 -1
  10. package/dist/cli/bin/pull-comments.js +3 -1
  11. package/dist/cli/bin/pull-comments.js.map +1 -1
  12. package/dist/cli/bin/pull-content.js +6 -2
  13. package/dist/cli/bin/pull-content.js.map +1 -1
  14. package/dist/cli/bin/pull-email-templates.js +3 -1
  15. package/dist/cli/bin/pull-email-templates.js.map +1 -1
  16. package/dist/cli/bin/pull-media.js +3 -1
  17. package/dist/cli/bin/pull-media.js.map +1 -1
  18. package/dist/cli/bin/pull-settings.js +2 -0
  19. package/dist/cli/bin/pull-settings.js.map +1 -1
  20. package/dist/cli/bin/push-all.js +12 -1
  21. package/dist/cli/bin/push-all.js.map +1 -1
  22. package/dist/cli/bin/push-comments.d.ts +6 -0
  23. package/dist/cli/bin/push-comments.d.ts.map +1 -0
  24. package/dist/cli/bin/push-comments.js +35 -0
  25. package/dist/cli/bin/push-comments.js.map +1 -0
  26. package/dist/cli/bin/push-content.js +7 -4
  27. package/dist/cli/bin/push-content.js.map +1 -1
  28. package/dist/cli/bin/push-email-templates.js +3 -1
  29. package/dist/cli/bin/push-email-templates.js.map +1 -1
  30. package/dist/cli/bin/push-media.js +2 -0
  31. package/dist/cli/bin/push-media.js.map +1 -1
  32. package/dist/cli/bin/push-settings.js +2 -0
  33. package/dist/cli/bin/push-settings.js.map +1 -1
  34. package/dist/cli/bin/push.js +5 -3
  35. package/dist/cli/bin/push.js.map +1 -1
  36. package/dist/cli/bin/remote-flag.d.ts +17 -0
  37. package/dist/cli/bin/remote-flag.d.ts.map +1 -0
  38. package/dist/cli/bin/remote-flag.js +50 -0
  39. package/dist/cli/bin/remote-flag.js.map +1 -0
  40. package/dist/cli/bin/remote.d.ts +14 -0
  41. package/dist/cli/bin/remote.d.ts.map +1 -0
  42. package/dist/cli/bin/remote.js +291 -0
  43. package/dist/cli/bin/remote.js.map +1 -0
  44. package/dist/cli/bin/status-all.js +67 -4
  45. package/dist/cli/bin/status-all.js.map +1 -1
  46. package/dist/cli/bin/status-comments.d.ts +6 -0
  47. package/dist/cli/bin/status-comments.d.ts.map +1 -0
  48. package/dist/cli/bin/status-comments.js +30 -0
  49. package/dist/cli/bin/status-comments.js.map +1 -0
  50. package/dist/cli/bin/status-content.js +6 -2
  51. package/dist/cli/bin/status-content.js.map +1 -1
  52. package/dist/cli/bin/status-email-templates.js +3 -1
  53. package/dist/cli/bin/status-email-templates.js.map +1 -1
  54. package/dist/cli/bin/status-media.js +2 -0
  55. package/dist/cli/bin/status-media.js.map +1 -1
  56. package/dist/cli/bin/status-settings.js +2 -0
  57. package/dist/cli/bin/status-settings.js.map +1 -1
  58. package/dist/cli/bin/status.js +5 -2
  59. package/dist/cli/bin/status.js.map +1 -1
  60. package/dist/cli/bin/watch.js +6 -3
  61. package/dist/cli/bin/watch.js.map +1 -1
  62. package/dist/cli/index.js +65 -10
  63. package/dist/cli/index.js.map +1 -1
  64. package/dist/index.js +0 -1
  65. package/dist/index.js.map +1 -1
  66. package/dist/lib/auth.d.ts +1 -1
  67. package/dist/lib/auth.d.ts.map +1 -1
  68. package/dist/lib/auth.js +5 -5
  69. package/dist/lib/auth.js.map +1 -1
  70. package/dist/lib/cms.d.ts +7 -7
  71. package/dist/lib/cms.d.ts.map +1 -1
  72. package/dist/lib/cms.js +41 -7
  73. package/dist/lib/cms.js.map +1 -1
  74. package/dist/lib/comment-types.d.ts +4 -0
  75. package/dist/lib/comment-types.d.ts.map +1 -1
  76. package/dist/lib/config.d.ts +6 -1
  77. package/dist/lib/config.d.ts.map +1 -1
  78. package/dist/lib/config.js +37 -8
  79. package/dist/lib/config.js.map +1 -1
  80. package/dist/lib/content-merge.d.ts.map +1 -1
  81. package/dist/lib/content-merge.js +102 -19
  82. package/dist/lib/content-merge.js.map +1 -1
  83. package/dist/lib/content-transformation.d.ts +5 -0
  84. package/dist/lib/content-transformation.d.ts.map +1 -1
  85. package/dist/lib/content-transformation.js +49 -2
  86. package/dist/lib/content-transformation.js.map +1 -1
  87. package/dist/lib/data-service.d.ts +47 -1
  88. package/dist/lib/data-service.d.ts.map +1 -1
  89. package/dist/lib/data-service.js +143 -0
  90. package/dist/lib/data-service.js.map +1 -1
  91. package/dist/lib/remote-context.d.ts +98 -0
  92. package/dist/lib/remote-context.d.ts.map +1 -0
  93. package/dist/lib/remote-context.js +297 -0
  94. package/dist/lib/remote-context.js.map +1 -0
  95. package/dist/scripts/init-leadcms.d.ts.map +1 -1
  96. package/dist/scripts/init-leadcms.js +127 -15
  97. package/dist/scripts/init-leadcms.js.map +1 -1
  98. package/dist/scripts/leadcms-helpers.d.ts +16 -5
  99. package/dist/scripts/leadcms-helpers.d.ts.map +1 -1
  100. package/dist/scripts/leadcms-helpers.js +31 -8
  101. package/dist/scripts/leadcms-helpers.js.map +1 -1
  102. package/dist/scripts/login-leadcms.d.ts +4 -1
  103. package/dist/scripts/login-leadcms.d.ts.map +1 -1
  104. package/dist/scripts/login-leadcms.js +45 -6
  105. package/dist/scripts/login-leadcms.js.map +1 -1
  106. package/dist/scripts/pull-all.d.ts +14 -6
  107. package/dist/scripts/pull-all.d.ts.map +1 -1
  108. package/dist/scripts/pull-all.js +86 -33
  109. package/dist/scripts/pull-all.js.map +1 -1
  110. package/dist/scripts/pull-comments.d.ts +3 -0
  111. package/dist/scripts/pull-comments.d.ts.map +1 -1
  112. package/dist/scripts/pull-comments.js +4 -4
  113. package/dist/scripts/pull-comments.js.map +1 -1
  114. package/dist/scripts/pull-content.d.ts +14 -0
  115. package/dist/scripts/pull-content.d.ts.map +1 -1
  116. package/dist/scripts/pull-content.js +85 -8
  117. package/dist/scripts/pull-content.js.map +1 -1
  118. package/dist/scripts/pull-email-templates.d.ts +3 -0
  119. package/dist/scripts/pull-email-templates.d.ts.map +1 -1
  120. package/dist/scripts/pull-email-templates.js +4 -4
  121. package/dist/scripts/pull-email-templates.js.map +1 -1
  122. package/dist/scripts/{fetch-leadcms-comments.d.ts → pull-leadcms-comments.d.ts} +10 -4
  123. package/dist/scripts/pull-leadcms-comments.d.ts.map +1 -0
  124. package/dist/scripts/{fetch-leadcms-comments.js → pull-leadcms-comments.js} +62 -32
  125. package/dist/scripts/pull-leadcms-comments.js.map +1 -0
  126. package/dist/scripts/{fetch-leadcms-content.d.ts → pull-leadcms-content.d.ts} +13 -19
  127. package/dist/scripts/pull-leadcms-content.d.ts.map +1 -0
  128. package/dist/scripts/{fetch-leadcms-content.js → pull-leadcms-content.js} +121 -250
  129. package/dist/scripts/pull-leadcms-content.js.map +1 -0
  130. package/dist/scripts/{fetch-leadcms-email-templates.d.ts → pull-leadcms-email-templates.d.ts} +5 -4
  131. package/dist/scripts/pull-leadcms-email-templates.d.ts.map +1 -0
  132. package/dist/scripts/{fetch-leadcms-email-templates.js → pull-leadcms-email-templates.js} +89 -11
  133. package/dist/scripts/pull-leadcms-email-templates.js.map +1 -0
  134. package/dist/scripts/pull-leadcms-media.d.ts +32 -0
  135. package/dist/scripts/pull-leadcms-media.d.ts.map +1 -0
  136. package/dist/scripts/pull-leadcms-media.js +229 -0
  137. package/dist/scripts/pull-leadcms-media.js.map +1 -0
  138. package/dist/scripts/pull-media.d.ts +4 -1
  139. package/dist/scripts/pull-media.d.ts.map +1 -1
  140. package/dist/scripts/pull-media.js +4 -4
  141. package/dist/scripts/pull-media.js.map +1 -1
  142. package/dist/scripts/push-comments.d.ts +48 -0
  143. package/dist/scripts/push-comments.d.ts.map +1 -0
  144. package/dist/scripts/push-comments.js +433 -0
  145. package/dist/scripts/push-comments.js.map +1 -0
  146. package/dist/scripts/push-email-templates.d.ts +6 -1
  147. package/dist/scripts/push-email-templates.d.ts.map +1 -1
  148. package/dist/scripts/push-email-templates.js +96 -21
  149. package/dist/scripts/push-email-templates.js.map +1 -1
  150. package/dist/scripts/push-leadcms-content.d.ts +24 -8
  151. package/dist/scripts/push-leadcms-content.d.ts.map +1 -1
  152. package/dist/scripts/push-leadcms-content.js +192 -56
  153. package/dist/scripts/push-leadcms-content.js.map +1 -1
  154. package/dist/scripts/sse-watcher.d.ts +9 -8
  155. package/dist/scripts/sse-watcher.d.ts.map +1 -1
  156. package/dist/scripts/sse-watcher.js +59 -52
  157. package/dist/scripts/sse-watcher.js.map +1 -1
  158. package/leadcms.config.json.sample +12 -1
  159. package/package.json +2 -3
  160. package/dist/scripts/fetch-leadcms-comments.d.ts.map +0 -1
  161. package/dist/scripts/fetch-leadcms-comments.js.map +0 -1
  162. package/dist/scripts/fetch-leadcms-content.d.ts.map +0 -1
  163. package/dist/scripts/fetch-leadcms-content.js.map +0 -1
  164. package/dist/scripts/fetch-leadcms-email-templates.d.ts.map +0 -1
  165. package/dist/scripts/fetch-leadcms-email-templates.js.map +0 -1
@@ -1,4 +1,5 @@
1
1
  import { type UserIdentity } from "../lib/data-service.js";
2
+ import type { RemoteContext } from "../lib/remote-context.js";
2
3
  interface ContentItem {
3
4
  id?: number;
4
5
  slug: string;
@@ -9,14 +10,14 @@ interface ContentItem {
9
10
  body?: string;
10
11
  [key: string]: any;
11
12
  }
12
- export declare const leadCMSUrl: string;
13
- export declare const leadCMSApiKey: string | undefined;
13
+ export declare let leadCMSUrl: string;
14
+ export declare let leadCMSApiKey: string | undefined;
14
15
  export declare const defaultLanguage: string;
15
16
  export declare const CONTENT_DIR: string;
16
17
  export declare const MEDIA_DIR: string;
17
18
  export declare const EMAIL_TEMPLATES_DIR: string;
18
19
  export declare const SETTINGS_DIR: string;
19
- export declare function fetchContentTypes(): Promise<Record<string, string>>;
20
+ export declare function fetchContentTypes(baseUrl?: string): Promise<Record<string, string>>;
20
21
  export declare function extractMediaUrlsFromContent(content: ContentItem): string[];
21
22
  export declare function downloadMediaFileDirect(mediaUrl: string, destPath: string, leadCMSUrl: string, leadCMSApiKey?: string): Promise<boolean>;
22
23
  export type { ContentItem };
@@ -29,15 +30,25 @@ export type { ContentItem };
29
30
  *
30
31
  * Call this at the start of every CLI command so the user always sees *who*
31
32
  * is making the requests.
33
+ *
34
+ * @param overrideApiKey Optional API key override (e.g., from RemoteContext).
35
+ * When provided, this is used instead of the module-level key.
32
36
  */
33
- export declare function resolveIdentity(): Promise<UserIdentity | null>;
37
+ export declare function resolveIdentity(overrideApiKey?: string): Promise<UserIdentity | null>;
34
38
  /**
35
39
  * Require an authenticated user. Calls resolveIdentity() and exits if
36
40
  * the user is anonymous (no API key).
37
41
  *
38
42
  * Use this for write operations (push) that cannot run anonymously.
43
+ *
44
+ * @param overrideApiKey Optional API key override (e.g., from RemoteContext).
45
+ */
46
+ export declare function requireAuthenticatedUser(overrideApiKey?: string): Promise<UserIdentity>;
47
+ /**
48
+ * Set up the data service for a specific RemoteContext and resolve identity.
49
+ * Use at the start of CLI commands when --remote is specified.
39
50
  */
40
- export declare function requireAuthenticatedUser(): Promise<UserIdentity>;
51
+ export declare function configureDataServiceForRemote(ctx: RemoteContext): void;
41
52
  /**
42
53
  * @deprecated Use requireAuthenticatedUser() instead – it also verifies the
43
54
  * token is valid by calling /api/users/me before proceeding.
@@ -1 +1 @@
1
- {"version":3,"file":"leadcms-helpers.d.ts","sourceRoot":"","sources":["../../src/scripts/leadcms-helpers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAQ/E,UAAU,WAAW;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAMD,eAAO,MAAM,UAAU,QAAa,CAAC;AACrC,eAAO,MAAM,aAAa,oBAAgB,CAAC;AAC3C,eAAO,MAAM,eAAe,QAAyB,CAAC;AACtD,eAAO,MAAM,WAAW,QAAkC,CAAC;AAC3D,eAAO,MAAM,SAAS,QAAgC,CAAC;AACvD,eAAO,MAAM,mBAAmB,QAAyC,CAAC;AAC1E,eAAO,MAAM,YAAY,QAA0D,CAAC;AAIpF,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAuBzE;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,EAAE,CAoB1E;AAGD,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,OAAO,CAAC,CA+BlB;AAGD,YAAY,EAAE,WAAW,EAAE,CAAC;AAE5B;;;;;;;;;GASG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAwBpE;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,YAAY,CAAC,CAYtE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAQ1C"}
1
+ {"version":3,"file":"leadcms-helpers.d.ts","sourceRoot":"","sources":["../../src/scripts/leadcms-helpers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAQ9D,UAAU,WAAW;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAQD,eAAO,IAAI,UAAU,QAAa,CAAC;AACnC,eAAO,IAAI,aAAa,oBAAgB,CAAC;AACzC,eAAO,MAAM,eAAe,QAAyB,CAAC;AACtD,eAAO,MAAM,WAAW,QAAkC,CAAC;AAC3D,eAAO,MAAM,SAAS,QAAgC,CAAC;AACvD,eAAO,MAAM,mBAAmB,QAAyC,CAAC;AAC1E,eAAO,MAAM,YAAY,QAA0D,CAAC;AAIpF,wBAAsB,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAwBzF;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,EAAE,CAoB1E;AAGD,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,OAAO,CAAC,CA+BlB;AAGD,YAAY,EAAE,WAAW,EAAE,CAAC;AAE5B;;;;;;;;;;;;GAYG;AACH,wBAAsB,eAAe,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAyB3F;AAED;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAY7F;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAUtE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAQ1C"}
@@ -7,8 +7,10 @@ import { leadCMSDataService } from "../lib/data-service.js";
7
7
  // Use the main configuration system instead of duplicating logic
8
8
  const config = getConfig();
9
9
  // Use configuration with environment variable fallbacks
10
- export const leadCMSUrl = config.url;
11
- export const leadCMSApiKey = config.apiKey;
10
+ // These are `let` so that configureDataServiceForRemote() can update them
11
+ // at runtime for multi-remote setups (ESM live bindings propagate to importers).
12
+ export let leadCMSUrl = config.url;
13
+ export let leadCMSApiKey = config.apiKey;
12
14
  export const defaultLanguage = config.defaultLanguage;
13
15
  export const CONTENT_DIR = path.resolve(config.contentDir);
14
16
  export const MEDIA_DIR = path.resolve(config.mediaDir);
@@ -16,10 +18,11 @@ export const EMAIL_TEMPLATES_DIR = path.resolve(config.emailTemplatesDir);
16
18
  export const SETTINGS_DIR = path.resolve(config.settingsDir || ".leadcms/settings");
17
19
  // Fetch content types dynamically from LeadCMS API to build typeMap
18
20
  // Content types are automatically detected and don't need to be configured
19
- export async function fetchContentTypes() {
21
+ export async function fetchContentTypes(baseUrl) {
22
+ const effectiveUrl = baseUrl || leadCMSUrl;
20
23
  logger.verbose(`[LeadCMS] Fetching content types from API...`);
21
24
  logger.verbose(`[LeadCMS] Fetching public content types (no authentication)`);
22
- const url = new URL("/api/content-types", leadCMSUrl);
25
+ const url = new URL("/api/content-types", effectiveUrl);
23
26
  url.searchParams.set("filter[limit]", "100");
24
27
  try {
25
28
  // SECURITY: Never send API key for read operations
@@ -93,9 +96,13 @@ export async function downloadMediaFileDirect(mediaUrl, destPath, leadCMSUrl, le
93
96
  *
94
97
  * Call this at the start of every CLI command so the user always sees *who*
95
98
  * is making the requests.
99
+ *
100
+ * @param overrideApiKey Optional API key override (e.g., from RemoteContext).
101
+ * When provided, this is used instead of the module-level key.
96
102
  */
97
- export async function resolveIdentity() {
98
- if (!leadCMSApiKey) {
103
+ export async function resolveIdentity(overrideApiKey) {
104
+ const effectiveApiKey = overrideApiKey ?? leadCMSApiKey;
105
+ if (!effectiveApiKey) {
99
106
  console.log('👤 Running in anonymous mode');
100
107
  return null;
101
108
  }
@@ -123,9 +130,11 @@ export async function resolveIdentity() {
123
130
  * the user is anonymous (no API key).
124
131
  *
125
132
  * Use this for write operations (push) that cannot run anonymously.
133
+ *
134
+ * @param overrideApiKey Optional API key override (e.g., from RemoteContext).
126
135
  */
127
- export async function requireAuthenticatedUser() {
128
- const identity = await resolveIdentity();
136
+ export async function requireAuthenticatedUser(overrideApiKey) {
137
+ const identity = await resolveIdentity(overrideApiKey);
129
138
  if (!identity) {
130
139
  console.error('\n❌ This operation requires authentication.');
131
140
  console.error('\n💡 To authenticate:');
@@ -135,6 +144,20 @@ export async function requireAuthenticatedUser() {
135
144
  }
136
145
  return identity;
137
146
  }
147
+ /**
148
+ * Set up the data service for a specific RemoteContext and resolve identity.
149
+ * Use at the start of CLI commands when --remote is specified.
150
+ */
151
+ export function configureDataServiceForRemote(ctx) {
152
+ leadCMSDataService.configureForRemote(ctx.url, ctx.apiKey);
153
+ // Also update module-level vars so scripts that import leadCMSUrl / leadCMSApiKey
154
+ // directly (pull-settings, fetch-comments, fetch-email-templates, push-settings)
155
+ // pick up the correct values via ESM live bindings.
156
+ leadCMSUrl = ctx.url;
157
+ if (ctx.apiKey !== undefined) {
158
+ leadCMSApiKey = ctx.apiKey;
159
+ }
160
+ }
138
161
  /**
139
162
  * @deprecated Use requireAuthenticatedUser() instead – it also verifies the
140
163
  * token is valid by calling /api/users/me before proceeding.
@@ -1 +1 @@
1
- {"version":3,"file":"leadcms-helpers.js","sourceRoot":"","sources":["../../src/scripts/leadcms-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"leadcms-helpers.js","sourceRoot":"","sources":["../../src/scripts/leadcms-helpers.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,12 @@
1
1
  /**
2
2
  * LeadCMS Login - Interactive token-based authentication
3
3
  */
4
+ declare function parseRemoteArg(args: string[]): string | undefined;
5
+ declare function remoteApiKeyEnvName(remoteName: string): string;
4
6
  /**
5
7
  * Interactive login flow
6
8
  */
7
- declare function main(): Promise<void>;
9
+ declare function main(args?: string[]): Promise<void>;
8
10
  export { main as loginLeadCMS };
11
+ export { parseRemoteArg, remoteApiKeyEnvName };
9
12
  //# sourceMappingURL=login-leadcms.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"login-leadcms.d.ts","sourceRoot":"","sources":["../../src/scripts/login-leadcms.ts"],"names":[],"mappings":"AAAA;;GAEG;AA4BH;;GAEG;AACH,iBAAe,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAoDnC;AAKD,OAAO,EAAE,IAAI,IAAI,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"login-leadcms.d.ts","sourceRoot":"","sources":["../../src/scripts/login-leadcms.ts"],"names":[],"mappings":"AAAA;;GAEG;AA6BH,iBAAS,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAY1D;AAED,iBAAS,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;GAEG;AACH,iBAAe,IAAI,CAAC,IAAI,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA0EtD;AAKD,OAAO,EAAE,IAAI,IAAI,YAAY,EAAE,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,CAAC"}
@@ -4,6 +4,7 @@
4
4
  import { config as dotenvConfig } from 'dotenv';
5
5
  import { getConfig } from '../lib/config.js';
6
6
  import { authenticate, saveTokenToEnv } from '../lib/auth.js';
7
+ import { resolveRemote } from '../lib/remote-context.js';
7
8
  import axios from 'axios';
8
9
  import * as readline from 'readline';
9
10
  // Load environment variables from .env file
@@ -23,18 +24,45 @@ function prompt(question) {
23
24
  });
24
25
  });
25
26
  }
27
+ function parseRemoteArg(args) {
28
+ const idx = args.findIndex(arg => arg === '--remote' || arg === '-r');
29
+ if (idx === -1) {
30
+ return undefined;
31
+ }
32
+ const name = args[idx + 1];
33
+ if (!name || name.startsWith('-')) {
34
+ throw new Error('--remote requires a remote name (e.g. --remote production)');
35
+ }
36
+ return name;
37
+ }
38
+ function remoteApiKeyEnvName(remoteName) {
39
+ return `LEADCMS_REMOTE_${remoteName.toUpperCase().replace(/-/g, '_')}_API_KEY`;
40
+ }
26
41
  /**
27
42
  * Interactive login flow
28
43
  */
29
- async function main() {
44
+ async function main(args = []) {
30
45
  let leadCMSUrl;
31
- // Try to get URL from config file first
46
+ let selectedRemoteName;
47
+ let shouldAlsoSaveGenericKey = false;
48
+ const requestedRemote = parseRemoteArg(args);
32
49
  try {
33
50
  const config = getConfig();
34
- leadCMSUrl = config.url;
51
+ if (config.remotes && Object.keys(config.remotes).length > 0) {
52
+ const remoteCtx = resolveRemote(requestedRemote);
53
+ leadCMSUrl = remoteCtx.url;
54
+ selectedRemoteName = remoteCtx.name;
55
+ shouldAlsoSaveGenericKey = remoteCtx.isDefault;
56
+ }
57
+ else {
58
+ leadCMSUrl = config.url || process.env.LEADCMS_URL;
59
+ }
35
60
  }
36
61
  catch (error) {
37
- // Config file not found or invalid, try environment variable
62
+ // Config file not found/invalid; fallback to env for URL only when no explicit remote is requested.
63
+ if (requestedRemote) {
64
+ throw error;
65
+ }
38
66
  leadCMSUrl = process.env.LEADCMS_URL;
39
67
  }
40
68
  if (!leadCMSUrl) {
@@ -48,8 +76,18 @@ async function main() {
48
76
  // Use shared authentication function
49
77
  const { token, user } = await authenticate(leadCMSUrl, prompt);
50
78
  // Save to .env
51
- saveTokenToEnv(token);
52
- console.log('✅ Token verified and saved to .env file!');
79
+ if (selectedRemoteName) {
80
+ const remoteEnvKey = remoteApiKeyEnvName(selectedRemoteName);
81
+ saveTokenToEnv(token, remoteEnvKey);
82
+ if (shouldAlsoSaveGenericKey) {
83
+ saveTokenToEnv(token, 'LEADCMS_API_KEY');
84
+ }
85
+ console.log(`✅ Token verified and saved to .env file (${remoteEnvKey})!`);
86
+ }
87
+ else {
88
+ saveTokenToEnv(token);
89
+ console.log('✅ Token verified and saved to .env file!');
90
+ }
53
91
  console.log(`\n👤 Successfully logged in as: ${user.displayName || user.userName}`);
54
92
  console.log(` Email: ${user.email}`);
55
93
  console.log('\n✅ You can now use commands like:');
@@ -81,4 +119,5 @@ async function main() {
81
119
  // Note: CLI execution moved to src/cli/bin/login.ts
82
120
  // This file now only exports the function for programmatic use
83
121
  export { main as loginLeadCMS };
122
+ export { parseRemoteArg, remoteApiKeyEnvName };
84
123
  //# sourceMappingURL=login-leadcms.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"login-leadcms.js","sourceRoot":"","sources":["../../src/scripts/login-leadcms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"login-leadcms.js","sourceRoot":"","sources":["../../src/scripts/login-leadcms.ts"],"names":[],"mappings":"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"}
@@ -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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"}