@stackbit/cms-contentstack 0.1.1-staging.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 (72) hide show
  1. package/README.md +1 -0
  2. package/dist/.tsbuildinfo +1 -0
  3. package/dist/contentstack-api-client.d.ts +63 -0
  4. package/dist/contentstack-api-client.d.ts.map +1 -0
  5. package/dist/contentstack-api-client.js +295 -0
  6. package/dist/contentstack-api-client.js.map +1 -0
  7. package/dist/contentstack-content-poller.d.ts +46 -0
  8. package/dist/contentstack-content-poller.d.ts.map +1 -0
  9. package/dist/contentstack-content-poller.js +111 -0
  10. package/dist/contentstack-content-poller.js.map +1 -0
  11. package/dist/contentstack-content-source.d.ts +138 -0
  12. package/dist/contentstack-content-source.d.ts.map +1 -0
  13. package/dist/contentstack-content-source.js +544 -0
  14. package/dist/contentstack-content-source.js.map +1 -0
  15. package/dist/contentstack-conversion-utils.d.ts +41 -0
  16. package/dist/contentstack-conversion-utils.d.ts.map +1 -0
  17. package/dist/contentstack-conversion-utils.js +504 -0
  18. package/dist/contentstack-conversion-utils.js.map +1 -0
  19. package/dist/contentstack-entries-converter.d.ts +39 -0
  20. package/dist/contentstack-entries-converter.d.ts.map +1 -0
  21. package/dist/contentstack-entries-converter.js +333 -0
  22. package/dist/contentstack-entries-converter.js.map +1 -0
  23. package/dist/contentstack-operation-converter.d.ts +42 -0
  24. package/dist/contentstack-operation-converter.d.ts.map +1 -0
  25. package/dist/contentstack-operation-converter.js +535 -0
  26. package/dist/contentstack-operation-converter.js.map +1 -0
  27. package/dist/contentstack-schema-converter.d.ts +26 -0
  28. package/dist/contentstack-schema-converter.d.ts.map +1 -0
  29. package/dist/contentstack-schema-converter.js +379 -0
  30. package/dist/contentstack-schema-converter.js.map +1 -0
  31. package/dist/contentstack-types.d.ts +429 -0
  32. package/dist/contentstack-types.d.ts.map +1 -0
  33. package/dist/contentstack-types.js +3 -0
  34. package/dist/contentstack-types.js.map +1 -0
  35. package/dist/contentstack-utils.d.ts +31 -0
  36. package/dist/contentstack-utils.d.ts.map +1 -0
  37. package/dist/contentstack-utils.js +144 -0
  38. package/dist/contentstack-utils.js.map +1 -0
  39. package/dist/entries-converter.d.ts +10 -0
  40. package/dist/entries-converter.d.ts.map +1 -0
  41. package/dist/entries-converter.js +245 -0
  42. package/dist/entries-converter.js.map +1 -0
  43. package/dist/file-download.d.ts +2 -0
  44. package/dist/file-download.d.ts.map +1 -0
  45. package/dist/file-download.js +33 -0
  46. package/dist/file-download.js.map +1 -0
  47. package/dist/index.d.ts +4 -0
  48. package/dist/index.d.ts.map +1 -0
  49. package/dist/index.js +14 -0
  50. package/dist/index.js.map +1 -0
  51. package/dist/schema-converter.d.ts +3 -0
  52. package/dist/schema-converter.d.ts.map +1 -0
  53. package/dist/schema-converter.js +169 -0
  54. package/dist/schema-converter.js.map +1 -0
  55. package/dist/transformation-utils.d.ts +41 -0
  56. package/dist/transformation-utils.d.ts.map +1 -0
  57. package/dist/transformation-utils.js +730 -0
  58. package/dist/transformation-utils.js.map +1 -0
  59. package/dist/types.d.ts +120 -0
  60. package/dist/types.d.ts.map +1 -0
  61. package/dist/types.js +3 -0
  62. package/dist/types.js.map +1 -0
  63. package/package.json +44 -0
  64. package/src/contentstack-api-client.ts +330 -0
  65. package/src/contentstack-content-poller.ts +157 -0
  66. package/src/contentstack-content-source.ts +687 -0
  67. package/src/contentstack-entries-converter.ts +438 -0
  68. package/src/contentstack-operation-converter.ts +703 -0
  69. package/src/contentstack-schema-converter.ts +486 -0
  70. package/src/contentstack-types.ts +527 -0
  71. package/src/contentstack-utils.ts +174 -0
  72. package/src/index.ts +3 -0
@@ -0,0 +1,429 @@
1
+ import type { Stack as ContentStackStack } from '@contentstack/management/types/stack';
2
+ import type { User as ContentStackUser } from '@contentstack/management/types/user';
3
+ import type { ContentType as ContentStackContentType } from '@contentstack/management/types/stack/contentType';
4
+ import type { GlobalField as ContentStackGlobalField } from '@contentstack/management/types/stack/globalField';
5
+ import type { Environment as ContentStackEnvironment } from '@contentstack/management/types/stack/environment';
6
+ import type { Entry as ContentStackEntry } from '@contentstack/management/types/stack/contentType/entry';
7
+ import type { Asset as ContentStackAsset } from '@contentstack/management/types/stack/asset';
8
+ import type { Webhook as ContentStackWebhook, WebhookDestination as ContentStackWebhookDestination } from '@contentstack/management/types/stack/webhook';
9
+ export declare type Stack = ContentStackStack & {
10
+ uid: string;
11
+ name: string;
12
+ api_key: string;
13
+ org_uid: string;
14
+ master_locale: string;
15
+ created_at: string;
16
+ updated_at: string;
17
+ };
18
+ export declare type User = ContentStackUser & {
19
+ uid: string;
20
+ created_at?: string;
21
+ updated_at?: string;
22
+ email?: string;
23
+ username?: string;
24
+ first_name?: string;
25
+ last_name?: string;
26
+ active?: boolean;
27
+ };
28
+ export declare type GlobalField = ContentStackGlobalField & {
29
+ uid: string;
30
+ title: string;
31
+ description?: string;
32
+ created_at?: string;
33
+ updated_at?: string;
34
+ urlPath?: string;
35
+ _version?: number;
36
+ _branch?: string;
37
+ inbuilt_class?: boolean;
38
+ last_activity?: unknown;
39
+ maintain_revisions?: boolean;
40
+ schema: ContentStackField[];
41
+ };
42
+ export declare type ContentType = ContentStackContentType & {
43
+ uid: string;
44
+ title: string;
45
+ description?: string;
46
+ created_at?: string;
47
+ updated_at?: string;
48
+ _version?: number;
49
+ _branch?: string;
50
+ inbuilt_class?: boolean;
51
+ last_activity?: unknown;
52
+ maintain_revisions?: boolean;
53
+ DEFAULT_ACL?: unknown;
54
+ SYS_ACL?: unknown;
55
+ options?: {
56
+ is_page: boolean;
57
+ singleton: boolean;
58
+ sub_title: any[];
59
+ title: string;
60
+ url_pattern?: string;
61
+ url_prefix?: string;
62
+ };
63
+ abilities?: {
64
+ get_one_object: boolean;
65
+ get_all_objects: boolean;
66
+ create_object: boolean;
67
+ update_object: boolean;
68
+ delete_object: boolean;
69
+ delete_all_objects: boolean;
70
+ };
71
+ schema: ContentStackField[];
72
+ };
73
+ export declare type ContentStackField = ContenteStackFieldText | ContentStackFieldBoolean | ContentStackFieldJson | ContentStackFieldFile | ContentStackFieldDate | ContentStackFieldNumber | ContentStackFieldLink | ContentStackFieldGroup | ContentStackFieldGlobalField | ContentStackFieldReference | ContentStackFieldBlocks;
74
+ export declare type ContentStackFieldCommon = {
75
+ uid: string;
76
+ display_name: string;
77
+ mandatory: boolean;
78
+ multiple: boolean;
79
+ non_localizable: boolean;
80
+ unique: boolean;
81
+ field_metadata: {
82
+ description?: string;
83
+ placeholder?: string;
84
+ instruction?: string;
85
+ default_value?: any;
86
+ };
87
+ };
88
+ export declare type ContenteStackFieldText = ContentStackFieldCommon & ContentStackFieldEnumCommon<string> & {
89
+ data_type: 'text';
90
+ format?: string;
91
+ reference_to: string[];
92
+ field_metadata?: {
93
+ _default?: boolean;
94
+ multiline?: boolean;
95
+ markdown?: boolean;
96
+ allow_rich_text?: boolean;
97
+ rich_text_type?: 'basic' | 'advanced' | 'custom';
98
+ options?: string[];
99
+ ref_multiple_content_types?: boolean;
100
+ embed_entry?: boolean;
101
+ default_key?: string;
102
+ };
103
+ };
104
+ export declare type ContentStackFieldEnumCommon<ValueType> = {
105
+ display_type?: 'dropdown' | 'checkbox' | 'radio';
106
+ enum?: ContentStackEnumOptions<ValueType>;
107
+ };
108
+ export declare type ContentStackEnumOptions<ValueType> = ContentStackEnumOptionsSimple<ValueType> | ContentStackEnumOptionsAdvanced<ValueType>;
109
+ export declare type ContentStackEnumOptionsSimple<ValueType> = {
110
+ advanced: false;
111
+ choices: {
112
+ value: ValueType;
113
+ }[];
114
+ };
115
+ export declare type ContentStackEnumOptionsAdvanced<ValueType> = {
116
+ advanced: true;
117
+ choices: {
118
+ key: string;
119
+ value: ValueType;
120
+ }[];
121
+ };
122
+ export declare type ContentStackFieldBoolean = ContentStackFieldCommon & {
123
+ data_type: 'boolean';
124
+ };
125
+ export declare type ContentStackFieldJson = ContentStackFieldCommon & {
126
+ data_type: 'json';
127
+ format?: string;
128
+ reference_to?: string[];
129
+ field_metadata: {
130
+ allow_json_rte?: boolean;
131
+ embed_entry?: boolean;
132
+ multiline?: boolean;
133
+ rich_text_type?: 'basic' | 'advanced' | 'custom';
134
+ options?: string[];
135
+ ref_multiple_content_types?: boolean;
136
+ };
137
+ };
138
+ export declare type ContentStackFieldFile = ContentStackFieldCommon & {
139
+ data_type: 'file';
140
+ field_metadata: {
141
+ rich_text_type?: 'standard';
142
+ image?: boolean;
143
+ };
144
+ min?: number;
145
+ max?: number;
146
+ dimension?: {
147
+ width: ImageDimensions;
148
+ height: ImageDimensions;
149
+ };
150
+ };
151
+ export declare type ImageDimensions = {
152
+ min?: number | null;
153
+ max?: number | null;
154
+ };
155
+ export declare type ContentStackFieldDate = ContentStackFieldCommon & {
156
+ data_type: 'isodate';
157
+ startDate?: string | null;
158
+ endDate?: string | null;
159
+ field_metadata: {
160
+ hide_time?: boolean;
161
+ date_range?: boolean;
162
+ default_value?: {
163
+ custom: boolean;
164
+ date?: string;
165
+ time?: string;
166
+ };
167
+ };
168
+ };
169
+ export declare type ContentStackFieldNumber = ContentStackFieldCommon & ContentStackFieldEnumCommon<number> & {
170
+ data_type: 'number';
171
+ min?: number | null;
172
+ max?: number | null;
173
+ };
174
+ export declare type ContentStackFieldLink = ContentStackFieldCommon & {
175
+ data_type: 'link';
176
+ field_metadata: {
177
+ default_value?: {
178
+ title?: string;
179
+ url?: string;
180
+ };
181
+ };
182
+ };
183
+ export declare type ContentStackFieldGroup = ContentStackFieldCommon & {
184
+ data_type: 'group';
185
+ schema: ContentStackField[];
186
+ };
187
+ export declare type ContentStackFieldGlobalField = ContentStackFieldCommon & {
188
+ data_type: 'global_field';
189
+ reference_to: string;
190
+ };
191
+ export declare type ContentStackFieldReference = ContentStackFieldCommon & {
192
+ data_type: 'reference';
193
+ reference_to?: string[];
194
+ field_metadata: {
195
+ ref_multiple: boolean;
196
+ ref_multiple_content_types: boolean;
197
+ };
198
+ };
199
+ export declare type ContentStackFieldBlocks = Omit<ContentStackFieldCommon, 'multiple'> & {
200
+ data_type: 'blocks';
201
+ multiple: true;
202
+ blocks: (ContentStackFieldBlockItemSimple | ContentStackFieldBlockItemGlobalField)[];
203
+ };
204
+ export declare type ContentStackFieldBlockItemGlobalField = {
205
+ uid: string;
206
+ title: string;
207
+ reference_to: string;
208
+ };
209
+ export declare type ContentStackFieldBlockItemSimple = {
210
+ uid: string;
211
+ title: string;
212
+ schema: ContentStackField[];
213
+ };
214
+ export declare type Entry = ContentStackEntry & {
215
+ uid: string;
216
+ content_type_uid: string;
217
+ title: string;
218
+ url?: string;
219
+ created_at: string;
220
+ updated_at: string;
221
+ created_by: string;
222
+ updated_by: string;
223
+ locale?: string;
224
+ tags?: string[];
225
+ publish_details?: PublishDetails[];
226
+ ACL?: unknown;
227
+ _branch?: string;
228
+ _version?: number;
229
+ _in_progress?: boolean;
230
+ };
231
+ export declare type PublishDetails = {
232
+ environment: string;
233
+ time: string;
234
+ user: string;
235
+ version: number;
236
+ /**
237
+ * The locale of the published document.
238
+ * Note, the locale may be different from entry's own locale.
239
+ */
240
+ locale: string;
241
+ /**
242
+ * The 'entry_locale' specified the original entry locale under which the
243
+ * entry was published, it may be different from the 'locale'.
244
+ *
245
+ * For example, if an entry with locale "A" has been published to locale "B",
246
+ * for which it isn't localized. Then the 'locale' will be locale "B", while
247
+ * the entry's own locale will remain "A" (because it is not localized),
248
+ * even when entries are fetched with locale=B filter.
249
+ * But, once the entry will be localized to locale "B", the 'entry_locale'
250
+ * will be set to locale "A", and the 'locale' will be set to locale "B"
251
+ * matching the entry's own locale.
252
+ */
253
+ entry_locale?: string;
254
+ };
255
+ export declare type Asset = ContentStackAsset & {
256
+ uid: string;
257
+ title?: string;
258
+ description?: string;
259
+ created_at: string;
260
+ updated_at: string;
261
+ created_by: string;
262
+ updated_by: string;
263
+ content_type?: string;
264
+ file_size?: string;
265
+ tags?: string[];
266
+ filename?: string;
267
+ url?: string;
268
+ ACL?: unknown;
269
+ is_dir?: boolean;
270
+ parent_uid?: unknown;
271
+ _version?: number;
272
+ _branch?: string;
273
+ publish_details?: PublishDetails[];
274
+ };
275
+ export declare type ContentStackLocale = {
276
+ uid: string;
277
+ code: string;
278
+ name: string;
279
+ fallback_locale?: string | null;
280
+ created_by?: string;
281
+ updated_by?: string;
282
+ created_at?: string;
283
+ updated_at?: string;
284
+ ACL?: unknown;
285
+ _version?: number;
286
+ _branch?: string;
287
+ };
288
+ export declare type Environment = ContentStackEnvironment & {
289
+ uid: string;
290
+ name: string;
291
+ urls?: any[];
292
+ ACL?: unknown;
293
+ created_at?: string;
294
+ updated_at?: string;
295
+ created_by?: string;
296
+ updated_by?: string;
297
+ _version?: number;
298
+ };
299
+ export declare type Webhook = ContentStackWebhook & {
300
+ uid: string;
301
+ name: string;
302
+ destinations: WebhookDestination[];
303
+ channels?: string[];
304
+ branches: string[];
305
+ retry_policy: string;
306
+ disabled: boolean;
307
+ concise_payload: boolean;
308
+ notifiers: unknown[];
309
+ applikation_id?: string;
310
+ app_user_object_uid: string;
311
+ org_uid?: string;
312
+ created_at?: string;
313
+ updated_at?: string;
314
+ updated_by?: string;
315
+ created_by?: string;
316
+ };
317
+ export declare type WebhookDestination = ContentStackWebhookDestination & {
318
+ target_url: string;
319
+ http_basic_auth?: string;
320
+ http_basic_password?: string;
321
+ custom_header?: {
322
+ header_name?: string;
323
+ value?: string;
324
+ }[];
325
+ };
326
+ export declare type WebhookPayload = WebhookPayloadEntry | WebhookPayloadAsset | WebhookPayloadContentType | WebhookPayloadGlobalField;
327
+ export declare type WebhookPayloadBasicEvent = 'create' | 'update' | 'delete';
328
+ export declare type WebhookPayloadCommonProps = {
329
+ api_key?: string;
330
+ triggered_at?: string;
331
+ };
332
+ export declare type WebhookPayloadEntry = WebhookPayloadCommonProps & {
333
+ module: 'entry';
334
+ data: {
335
+ content_type: {
336
+ uid: string;
337
+ };
338
+ branch: WebhookPayloadBranch;
339
+ };
340
+ } & ({
341
+ event: WebhookPayloadBasicEvent;
342
+ data: {
343
+ entry: Omit<Entry, 'content_type_uid' | 'publish_details' | '_branch'>;
344
+ };
345
+ } | {
346
+ event: 'publish';
347
+ data: {
348
+ action: 'publish';
349
+ status: string;
350
+ locale: string;
351
+ environment: Environment;
352
+ entry: Omit<Entry, 'content_type_uid' | 'publish_details' | '_branch'> & {
353
+ publish_details?: Omit<PublishDetails, 'version'>;
354
+ };
355
+ };
356
+ } | {
357
+ event: 'unpublish';
358
+ data: {
359
+ action: 'unpublish';
360
+ status: string;
361
+ locale: string;
362
+ environment: Environment;
363
+ entry: Omit<Entry, 'content_type_uid' | '_branch' | 'publish_details'>;
364
+ };
365
+ });
366
+ export declare type WebhookPayloadAsset = WebhookPayloadCommonProps & {
367
+ module: 'asset';
368
+ data: {
369
+ branch: WebhookPayloadBranch;
370
+ };
371
+ } & ({
372
+ event: WebhookPayloadBasicEvent;
373
+ data: {
374
+ asset: Omit<Asset, '_branch' | 'publish_details'>;
375
+ };
376
+ } | {
377
+ event: 'publish';
378
+ data: {
379
+ action: 'publish';
380
+ status: string;
381
+ locale: string;
382
+ environment: Environment;
383
+ asset: Omit<Asset, '_branch' | 'publish_details'> & {
384
+ publish_details?: Omit<PublishDetails, 'version'>;
385
+ };
386
+ };
387
+ } | {
388
+ event: 'unpublish';
389
+ data: {
390
+ action: 'unpublish';
391
+ status: string;
392
+ locale: string;
393
+ environment: Environment;
394
+ asset: Omit<Asset, '_branch' | 'publish_details'>;
395
+ };
396
+ });
397
+ export declare type WebhookPayloadContentType = WebhookPayloadCommonProps & {
398
+ module: 'content_type';
399
+ event: WebhookPayloadBasicEvent;
400
+ data: {
401
+ uid: string;
402
+ title: string;
403
+ description: string;
404
+ created_at: string;
405
+ updated_at: string;
406
+ schema: unknown;
407
+ options: unknown;
408
+ branch: WebhookPayloadBranch;
409
+ };
410
+ };
411
+ export declare type WebhookPayloadGlobalField = WebhookPayloadCommonProps & {
412
+ module: 'global_field';
413
+ event: WebhookPayloadBasicEvent;
414
+ data: {
415
+ uid: string;
416
+ title: string;
417
+ description: string;
418
+ created_at: string;
419
+ updated_at: string;
420
+ schema: unknown;
421
+ branch: WebhookPayloadBranch;
422
+ };
423
+ };
424
+ export declare type WebhookPayloadBranch = {
425
+ uid: string;
426
+ source: string;
427
+ alias: [];
428
+ };
429
+ //# sourceMappingURL=contentstack-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contentstack-types.d.ts","sourceRoot":"","sources":["../src/contentstack-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=contentstack-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contentstack-types.js","sourceRoot":"","sources":["../src/contentstack-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ import type { Logger } from '@stackbit/types';
2
+ import type { Asset, Entry, Environment, User } from './contentstack-types';
3
+ import type { ContentStackClient } from './contentstack-api-client';
4
+ export declare function getContentstackDashboardUrl({ apiKey, branch }: {
5
+ apiKey: string;
6
+ branch?: string;
7
+ }): string;
8
+ export declare function getEntryUrl({ apiKey, entry }: {
9
+ apiKey: string;
10
+ entry: Entry;
11
+ }): string;
12
+ export declare function getAssetUrl({ apiKey, asset }: {
13
+ apiKey: string;
14
+ asset: Asset;
15
+ }): string;
16
+ export declare function userMissingInMap(usersById: Record<string, User>, entity: Entry | Asset): boolean;
17
+ export declare function resolvePublishEnvironment({ environments, publishEnvironmentName, logger }: {
18
+ environments: Environment[];
19
+ publishEnvironmentName?: string;
20
+ logger: Logger;
21
+ }): Environment;
22
+ export declare function createWebhookIfNeeded({ webhookUrl, publishEnvironmentName, branch, isLocalDev, contentStackClient, logger }: {
23
+ webhookUrl?: string;
24
+ publishEnvironmentName: string;
25
+ branch?: string;
26
+ isLocalDev: boolean;
27
+ contentStackClient: ContentStackClient;
28
+ logger: Logger;
29
+ }): Promise<import("./contentstack-types").Webhook | undefined>;
30
+ export declare function downloadFile(fileUrl: string, outputLocationPath: string): Promise<unknown>;
31
+ //# sourceMappingURL=contentstack-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contentstack-utils.d.ts","sourceRoot":"","sources":["../src/contentstack-utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,wBAAgB,2BAA2B,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,UAGlG;AAED,wBAAgB,WAAW,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,UAG9E;AAED,wBAAgB,WAAW,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,UAG9E;AAOD,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,GAAG,KAAK,WAEtF;AAED,wBAAgB,yBAAyB,CAAC,EACtC,YAAY,EACZ,sBAAsB,EACtB,MAAM,EACT,EAAE;IACC,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;CAClB,GAAG,WAAW,CAoBd;AAED,wBAAsB,qBAAqB,CAAC,EACxC,UAAU,EACV,sBAAsB,EACtB,MAAM,EACN,UAAU,EACV,kBAAkB,EAClB,MAAM,EACT,EAAE;IACC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC;CAClB,+DAyEA;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,oBAwB7E"}
@@ -0,0 +1,144 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.downloadFile = exports.createWebhookIfNeeded = exports.resolvePublishEnvironment = exports.userMissingInMap = exports.getAssetUrl = exports.getEntryUrl = exports.getContentstackDashboardUrl = void 0;
7
+ const fs_1 = require("fs");
8
+ const axios_1 = __importDefault(require("axios"));
9
+ function getContentstackDashboardUrl({ apiKey, branch }) {
10
+ branch = branch ? `?branch=${branch}` : '';
11
+ return getUrl(apiKey, `/dashboard${branch}`);
12
+ }
13
+ exports.getContentstackDashboardUrl = getContentstackDashboardUrl;
14
+ function getEntryUrl({ apiKey, entry }) {
15
+ const branch = entry._branch ? `?branch=${entry._branch}` : '';
16
+ return getUrl(apiKey, `/content-type/${entry.content_type_uid}/${entry.locale}/entry/${entry.uid}/edit${branch}`);
17
+ }
18
+ exports.getEntryUrl = getEntryUrl;
19
+ function getAssetUrl({ apiKey, asset }) {
20
+ const branch = asset._branch ? `?branch=${asset._branch}` : '';
21
+ return getUrl(apiKey, `/assets/${asset.uid}${branch}`);
22
+ }
23
+ exports.getAssetUrl = getAssetUrl;
24
+ function getUrl(apiKey, path) {
25
+ const baseUrl = 'https://app.contentstack.com/#!/stack/';
26
+ return `${baseUrl}${apiKey}${path}`;
27
+ }
28
+ function userMissingInMap(usersById, entity) {
29
+ return !usersById[entity.created_by] || !usersById[entity.updated_by];
30
+ }
31
+ exports.userMissingInMap = userMissingInMap;
32
+ function resolvePublishEnvironment({ environments, publishEnvironmentName, logger }) {
33
+ if (publishEnvironmentName) {
34
+ const resolvedEnv = environments.find((env) => env.name === publishEnvironmentName);
35
+ if (resolvedEnv) {
36
+ return resolvedEnv;
37
+ }
38
+ logger.warn(`The 'publishEnvironmentName' '${publishEnvironmentName}' provided to ContentStackSource constructor ` +
39
+ `does not match any environment name: [${environments.map((env) => env.name).join(', ')}]`);
40
+ }
41
+ if (environments.length === 1) {
42
+ const resolvedEnv = environments[0];
43
+ logger.info(`The Contentstack stack has a single '${resolvedEnv.name}' environment, using it for publishing content`);
44
+ return resolvedEnv;
45
+ }
46
+ throw new Error(`Stack has multiple environments: [${environments.map((env) => env.name).join(', ')}], ` +
47
+ `please specify one of them using the 'publishEnvironmentName' property in the ContentStackSource constructor options`);
48
+ }
49
+ exports.resolvePublishEnvironment = resolvePublishEnvironment;
50
+ async function createWebhookIfNeeded({ webhookUrl, publishEnvironmentName, branch, isLocalDev, contentStackClient, logger }) {
51
+ var _a, _b;
52
+ if (!webhookUrl) {
53
+ return;
54
+ }
55
+ logger.debug(`webhook URL: ${webhookUrl}`);
56
+ const webhooks = await contentStackClient.getWebhooks();
57
+ if (isLocalDev) {
58
+ const localDevWebhookName = 'Stackbit local-dev webhook';
59
+ const localDevWebhook = webhooks.find((webhook) => webhook.name === localDevWebhookName);
60
+ if (localDevWebhook) {
61
+ const hasTargetUrlToWebhookUrl = localDevWebhook.destinations.find((destination) => destination.target_url === webhookUrl);
62
+ const hasBranch = !branch || localDevWebhook.branches.includes(branch);
63
+ if (!localDevWebhook.disabled && hasBranch && hasTargetUrlToWebhookUrl) {
64
+ logger.debug(`found enabled webhook '${localDevWebhookName}' for [${localDevWebhook.branches.join(', ')}] branch(es) and target_url '${webhookUrl}'`);
65
+ return localDevWebhook;
66
+ }
67
+ logger.debug(`found ${localDevWebhook.disabled ? 'disabled' : 'enabled'} webhook '${localDevWebhookName}' ` +
68
+ `for [${localDevWebhook.branches.join(', ')}] branch(es) ` +
69
+ `and target_url '${(_a = localDevWebhook.destinations[0]) === null || _a === void 0 ? void 0 : _a.target_url}', resetting webhook`);
70
+ const webhook = await contentStackClient.updateWebhook({
71
+ webhookId: localDevWebhook.uid,
72
+ webhookUrl,
73
+ branch
74
+ });
75
+ logger.debug(`webhook ${webhook.name} updated`);
76
+ }
77
+ else {
78
+ logger.debug(`no webhook named '${localDevWebhookName}' was found, creating a webhook for branch '${branch}' and target_url '${webhookUrl}'`);
79
+ const webhook = await contentStackClient.createWebhook({
80
+ webhookName: localDevWebhookName,
81
+ webhookUrl,
82
+ publishEnvironmentName,
83
+ branch
84
+ });
85
+ logger.debug(`webhook ${webhook.name} created`);
86
+ }
87
+ }
88
+ else {
89
+ const matchedWebhook = webhooks.find((webhook) => {
90
+ return webhook.destinations.find((destination) => destination.target_url === webhookUrl);
91
+ });
92
+ if (matchedWebhook) {
93
+ const hasBranch = !branch || matchedWebhook.branches.includes(branch);
94
+ if (!matchedWebhook.disabled && hasBranch) {
95
+ logger.debug(`found enabled webhook '${matchedWebhook.name}' for [${matchedWebhook.branches.join(', ')}] branch(es) and target_url '${webhookUrl}'`);
96
+ return matchedWebhook;
97
+ }
98
+ logger.debug(`found ${matchedWebhook.disabled ? 'disabled' : 'enabled'} webhook '${matchedWebhook.name}' ` +
99
+ `for [${matchedWebhook.branches.join(', ')}] branch(es) ` +
100
+ `and target_url '${(_b = matchedWebhook.destinations[0]) === null || _b === void 0 ? void 0 : _b.target_url}', resetting webhook`);
101
+ const webhook = await contentStackClient.updateWebhook({
102
+ webhookId: matchedWebhook.uid,
103
+ webhookUrl,
104
+ branch
105
+ });
106
+ logger.debug(`webhook ${webhook.name} updated`);
107
+ }
108
+ else {
109
+ logger.debug(`no webhook matching the provided webhookUrl was found, creating a webhook for branch '${branch}' and target_url '${webhookUrl}'`);
110
+ const webhook = await contentStackClient.createWebhook({
111
+ webhookName: 'Stackbit webhook',
112
+ webhookUrl,
113
+ publishEnvironmentName,
114
+ branch
115
+ });
116
+ logger.debug(`webhook ${webhook.name} created`);
117
+ }
118
+ }
119
+ }
120
+ exports.createWebhookIfNeeded = createWebhookIfNeeded;
121
+ async function downloadFile(fileUrl, outputLocationPath) {
122
+ const writer = (0, fs_1.createWriteStream)(outputLocationPath);
123
+ const response = await (0, axios_1.default)({
124
+ method: 'get',
125
+ url: fileUrl,
126
+ responseType: 'stream'
127
+ });
128
+ response.data.pipe(writer);
129
+ return new Promise((resolve, reject) => {
130
+ let error = null;
131
+ writer.on('error', (err) => {
132
+ error = err;
133
+ writer.close();
134
+ reject(err);
135
+ });
136
+ writer.on('close', () => {
137
+ if (!error) {
138
+ resolve(true);
139
+ }
140
+ });
141
+ });
142
+ }
143
+ exports.downloadFile = downloadFile;
144
+ //# sourceMappingURL=contentstack-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contentstack-utils.js","sourceRoot":"","sources":["../src/contentstack-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { Asset, Model, Document } from '@stackbit/types';
2
+ import { Entry } from '@contentstack/management/types/stack/contentType/entry';
3
+ import { ExtendedAsset } from './types';
4
+ export declare function transformDocument(document: Entry, model: Model, models: Record<string, Model>, options: {
5
+ apiKey: string;
6
+ }): Document;
7
+ export declare function transformAsset<T>(asset: ExtendedAsset, options: {
8
+ apiKey: string;
9
+ }): Asset<T>;
10
+ //# sourceMappingURL=entries-converter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entries-converter.d.ts","sourceRoot":"","sources":["../src/entries-converter.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,EACL,KAAK,EAEL,QAAQ,EAKX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,EAAE,MAAM,wDAAwD,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAQxC,wBAAgB,iBAAiB,CAC7B,QAAQ,EAAE,KAAK,EACf,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAC7B,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAC5B,QAAQ,CAyBV;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CA2B7F"}