pim-import 4.52.0 → 4.54.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.
package/dist/utils.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addMarkingIpRatingLabels = exports.getCertificationFilters = exports.truncateString = exports.getAllTranslations = exports.replaceAll = exports.addProductFieldValueCodesByPimDetails = exports.keysToLowerCase = exports.capitalizeFirstLetter = exports.getLocalISOTime = exports.doChunk = exports.sanitizeValue = exports.getUnwantedValues = exports.getPimTranslations = exports.getLocale = exports.pimLocaleMap = exports.stringToSlug = exports.secondBetweenTwoDate = exports.basename = exports.getBaseURL = exports.sleep = exports.mergeObjects = void 0;
3
+ exports.getCertificationFilters = exports.truncateString = exports.getAllTranslations = exports.replaceAll = exports.addProductFieldValueCodesByPimDetails = exports.keysToLowerCase = exports.capitalizeFirstLetter = exports.getLocalISOTime = exports.doChunk = exports.sanitizeValue = exports.getUnwantedValues = exports.getPimTranslations = exports.getLocale = exports.pimLocaleMap = exports.stringToSlug = exports.secondBetweenTwoDate = exports.basename = exports.getBaseURL = exports.sleep = exports.mergeObjects = void 0;
4
4
  const logs_1 = require("./libs/logs");
5
5
  const contentful_1 = require("./libs/contentful");
6
6
  const mergeObjects = (objA, objB) => {
@@ -321,62 +321,4 @@ const getCertificationFilters = (productFields) => {
321
321
  return certificationFilters;
322
322
  };
323
323
  exports.getCertificationFilters = getCertificationFilters;
324
- const addMarkingIpRatingLabels = (productFields, singleValue = true) => {
325
- const labelMap = new Map([
326
- ["EXTIP1", "20"],
327
- ["EXTIP10", "66"],
328
- ["EXTIP11", "66/67"],
329
- ["EXTIP12", "68"],
330
- ["EXTIP13", "40"],
331
- ["EXTIP14", "64"],
332
- ["EXTIP15", "53"],
333
- ["EXTIP16", "66/68"],
334
- ["EXTIP2", "23"],
335
- ["EXTIP3", "43"],
336
- ["EXTIP4", "44"],
337
- ["EXTIP5", "54"],
338
- ["EXTIP6", "65"],
339
- ["EXTIP7", "67"],
340
- ["EXTIP9", "55"],
341
- ["IP1", "20"],
342
- ["IP10", "66"],
343
- ["IP11", "67"],
344
- ["IP12", "66/67"],
345
- ["IP13", "68"],
346
- ["IP15", "53"],
347
- ["IP16", "66/68"],
348
- ["IP2", "23"],
349
- ["IP3", "40"],
350
- ["IP4", "43"],
351
- ["IP5", "44"],
352
- ["IP6", "54"],
353
- ["IP7", "55"],
354
- ["IP8", "64"],
355
- ["IP9", "65"],
356
- ]);
357
- if (singleValue) {
358
- const ipRatingCode = productFields?.marking?.ipRating?.code;
359
- if (ipRatingCode) {
360
- productFields.marking.ipRatingLabel = labelMap.has(ipRatingCode)
361
- ? {
362
- ...productFields.marking.ipRating,
363
- code: labelMap.get(ipRatingCode),
364
- }
365
- : productFields.marking.ipRating;
366
- }
367
- }
368
- else {
369
- const ipRatingCodes = productFields?.marking?.ipRating;
370
- if (ipRatingCodes?.length) {
371
- const ipRatingLabels = ipRatingCodes.map((ipRatingCode) => {
372
- return labelMap.has(ipRatingCode)
373
- ? labelMap.get(ipRatingCode)
374
- : ipRatingCode;
375
- });
376
- productFields.marking.ipRatingLabel = [...new Set(ipRatingLabels)];
377
- }
378
- }
379
- return productFields;
380
- };
381
- exports.addMarkingIpRatingLabels = addMarkingIpRatingLabels;
382
324
  //# sourceMappingURL=utils.js.map
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pim-import",
3
- "version": "4.52.0",
3
+ "version": "4.54.0",
4
4
  "description": "",
5
5
  "main": "./dist/index.js",
6
6
  "types": "types/index.d.ts",
@@ -10,6 +10,7 @@ export type AvailableIndicesKey =
10
10
  | "subModels"
11
11
  | "models"
12
12
  | "downloads"
13
+ | "inspirations"
13
14
  | "projects"
14
15
  | "stories"
15
16
  | "pressReviews"
@@ -170,6 +171,15 @@ export const getIndicesSettings = () => {
170
171
  ],
171
172
  },
172
173
  },
174
+ inspirations: {
175
+ name: `${process.env.FPI_ALGOLIA_INDEX_INSPIRATION_NAME}${suffix}`,
176
+ settings: {
177
+ attributesForFaceting: [],
178
+ searchableAttributes: ["name"],
179
+ ranking: [],
180
+ replicas: [],
181
+ },
182
+ },
173
183
  projects: {
174
184
  name: `${process.env.FPI_ALGOLIA_INDEX_PROJECT_NAME}${suffix}`,
175
185
  settings: {
@@ -0,0 +1,287 @@
1
+ import { log } from "../libs/logs";
2
+ import {
3
+ getClient,
4
+ getEnvironmentDefaultLocaleCode,
5
+ getEntryByID,
6
+ getTopicPage,
7
+ } from "../libs/contentful-cda";
8
+ import { getIndex, AvailableIndicesKey, removeIndexObject } from "./config";
9
+ import {
10
+ getAllTranslations,
11
+ getLocalISOTime,
12
+ secondBetweenTwoDate,
13
+ } from "../utils";
14
+ import type { Entry } from "contentful-management/dist/typings/entities/entry";
15
+ import {
16
+ CfLocalizedEntryField,
17
+ AlgoliaPaginateRecords,
18
+ WrapperImageFields,
19
+ } from "../types";
20
+ import { getWrapperImgixFields } from "../libs/imgix";
21
+ import removeMd from "remove-markdown";
22
+
23
+ const indexKey: AvailableIndicesKey = "inspirations";
24
+
25
+ export type AlgoliaInspirationRecord = {
26
+ objectID: string;
27
+ name?: CfLocalizedEntryField;
28
+ description?: CfLocalizedEntryField;
29
+ excerpt?: CfLocalizedEntryField;
30
+ slugs?: {};
31
+ thumbnailImgix?: WrapperImageFields | {};
32
+ visualizationDate?: string;
33
+ lastSyncDate?: string;
34
+ hideInRegions?: string[];
35
+ type?: string;
36
+ };
37
+
38
+ const isObjectToDelete = (
39
+ object: any,
40
+ defaultEnvironmentLocaleCode: string
41
+ ) => {
42
+ return !object?.slugs?.[defaultEnvironmentLocaleCode];
43
+ };
44
+
45
+ const getObject = async (
46
+ topic: Entry,
47
+ contentTypeId: string
48
+ ): Promise<AlgoliaInspirationRecord> => {
49
+ const defaultEnvironmentLocaleCode = await getEnvironmentDefaultLocaleCode();
50
+ log(`Sync the ${topic.sys.id} ${contentTypeId}...`);
51
+ let topicWithFields: Entry = topic;
52
+
53
+ if (!topicWithFields?.fields) {
54
+ log(`Get the ${topic.sys.id} ${contentTypeId} details...`);
55
+ topicWithFields = await getEntryByID(topic.sys.id, contentTypeId);
56
+ }
57
+
58
+ if (!topicWithFields) {
59
+ log(`The ${contentTypeId} ${topic.sys.id} not found`, "WARN");
60
+
61
+ const recordFail: AlgoliaInspirationRecord = {
62
+ objectID: topic?.sys?.id,
63
+ };
64
+
65
+ return recordFail; // return objectID to delete the record if it exists
66
+ }
67
+
68
+ const isProject = topicWithFields.sys.contentType.sys.id === "topicProject";
69
+
70
+ log(`Get page details...`);
71
+ const page = await getTopicPage(
72
+ topic.sys.id,
73
+ "fields.slug,fields.protected,fields.hideInRegions"
74
+ );
75
+
76
+ if (!page) {
77
+ log(`The ${contentTypeId} page ${topic.sys.id} not found`, "WARN");
78
+
79
+ const recordFail: AlgoliaInspirationRecord = {
80
+ objectID: topic?.sys?.id,
81
+ };
82
+
83
+ return recordFail; // return objectID to delete the record if it exists
84
+ }
85
+
86
+ const slugs = await getAllTranslations(page?.fields.slug || {});
87
+
88
+ const thumbnailField = isProject ? "thumbnailImgix" : "previewImagesImgix";
89
+ log(`Get ${thumbnailField} details...`);
90
+ let thumbnailImgix = {};
91
+ let thumbnailImgixWrapperImgixID = "";
92
+ if (
93
+ Array.isArray(
94
+ topicWithFields?.fields?.[thumbnailField]?.[defaultEnvironmentLocaleCode]
95
+ )
96
+ ) {
97
+ thumbnailImgixWrapperImgixID =
98
+ topicWithFields?.fields?.[thumbnailField]?.[
99
+ defaultEnvironmentLocaleCode
100
+ ]?.[0]?.sys?.id;
101
+ } else {
102
+ thumbnailImgixWrapperImgixID =
103
+ topicWithFields?.fields?.[thumbnailField]?.[defaultEnvironmentLocaleCode]
104
+ ?.sys?.id;
105
+ }
106
+ if (thumbnailImgixWrapperImgixID) {
107
+ thumbnailImgix = await getWrapperImgixFields(thumbnailImgixWrapperImgixID);
108
+ } else {
109
+ log(`No thumbnail imgix found`, "WARN");
110
+ }
111
+
112
+ log(`Get hideInRegions details...`);
113
+ const hideInRegions =
114
+ page.fields.hideInRegions?.[defaultEnvironmentLocaleCode].map(
115
+ (item: Entry) => item.sys.id
116
+ ) || [];
117
+
118
+ const clearExcerpt = {};
119
+ for (const locale in topicWithFields?.fields?.excerpt) {
120
+ if (topicWithFields?.fields?.excerpt?.[locale]) {
121
+ (clearExcerpt as any)[locale] = removeMd(
122
+ topicWithFields?.fields?.excerpt?.[locale]
123
+ );
124
+ }
125
+ }
126
+
127
+ // Single record
128
+ const emptyLocalizedField: CfLocalizedEntryField = {
129
+ [defaultEnvironmentLocaleCode]: "",
130
+ };
131
+ const record: AlgoliaInspirationRecord = {
132
+ objectID: topicWithFields.sys.id,
133
+ name: await getAllTranslations(
134
+ topicWithFields?.fields?.title || emptyLocalizedField
135
+ ),
136
+ excerpt: await getAllTranslations(
137
+ topicWithFields?.fields?.excerpt ? clearExcerpt : emptyLocalizedField
138
+ ),
139
+ description: await getAllTranslations(
140
+ topicWithFields?.fields?.description || emptyLocalizedField
141
+ ),
142
+ slugs,
143
+ thumbnailImgix,
144
+ visualizationDate:
145
+ topicWithFields?.fields?.visualizationDate?.[
146
+ defaultEnvironmentLocaleCode
147
+ ] || "",
148
+ hideInRegions,
149
+ lastSyncDate: getLocalISOTime(),
150
+ type: isProject ? "project" : "story",
151
+ };
152
+
153
+ return record;
154
+ };
155
+
156
+ export const reindexInspiration = async (topicId: string) => {
157
+ const defaultEnvironmentLocaleCode = await getEnvironmentDefaultLocaleCode();
158
+ const timeStart = new Date();
159
+
160
+ log(`reindexInspiration - entryId: ${topicId} `);
161
+
162
+ let topic = await getEntryByID(topicId, "topicProject");
163
+ topic = !topic ? await getEntryByID(topicId, "topicStory") : topic;
164
+
165
+ const index = getIndex(indexKey);
166
+ let record = null;
167
+ if (!topic) {
168
+ log(`No topic found with id ${topicId}. Delete object if exists`, "WARN");
169
+ record = await index.deleteObject(topicId);
170
+ return { ...record };
171
+ }
172
+
173
+ const object = await getObject(topic, topic.sys.contentType.sys.id);
174
+
175
+ // Save record to Algolia
176
+ if (!isObjectToDelete(object, defaultEnvironmentLocaleCode)) {
177
+ log(`Save object`);
178
+ record = await index.saveObject(object);
179
+ } else {
180
+ log(`Delete object`);
181
+ record = await index.deleteObject(object.objectID);
182
+ }
183
+ const timeEnd = new Date();
184
+ const seconds = secondBetweenTwoDate(timeStart, timeEnd);
185
+ log(`Execution time: ${seconds} seconds`);
186
+
187
+ return { ...record, ...object };
188
+ };
189
+
190
+ /**
191
+ * Get Objects
192
+ *
193
+ * @param offset
194
+ * @param limit
195
+ * @param filterKey
196
+ * @param filterValue
197
+ * @returns
198
+ */
199
+ const getObjects = async (
200
+ offset: number,
201
+ limit: number,
202
+ filterKey?: string,
203
+ filterValue?: string
204
+ ): Promise<AlgoliaPaginateRecords> => {
205
+ const client = await getClient();
206
+
207
+ const opts: any = {
208
+ content_type: "topicProject",
209
+ limit,
210
+ skip: offset,
211
+ // select: "",
212
+ };
213
+ if (filterKey && filterValue) {
214
+ opts[filterKey] = filterValue;
215
+ }
216
+ const { items: projectItems, total: projectTotal } =
217
+ await client.withAllLocales.getEntries(opts);
218
+ opts.content_type = "topicStory";
219
+ const { items: storyItems, total: stotyTotal } =
220
+ await client.withAllLocales.getEntries(opts);
221
+ const items = [...projectItems, ...storyItems];
222
+ const total = projectTotal + stotyTotal;
223
+
224
+ const objects: AlgoliaInspirationRecord[] = [];
225
+ let count: number = Number(offset);
226
+ for (const topic of items) {
227
+ log(`${++count} of ${total}`, "INFO");
228
+ const timeStart = new Date();
229
+ const record = await getObject(topic, topic.sys.contentType.sys.id);
230
+ const timeEnd = new Date();
231
+ const seconds = secondBetweenTwoDate(timeStart, timeEnd);
232
+ log(`Execution time: ${seconds} seconds`);
233
+ objects.push(record);
234
+ }
235
+
236
+ return {
237
+ objects,
238
+ offset: Number(offset) + Number(limit),
239
+ limit: Number(limit),
240
+ completed: count >= total, // if is true the import is completed
241
+ total,
242
+ };
243
+ };
244
+
245
+ export const reindexInspirations = async (
246
+ offset: number = 0,
247
+ limit: number = 50,
248
+ filterKey: string = "",
249
+ filterValue: string = ""
250
+ ) => {
251
+ const defaultEnvironmentLocaleCode = await getEnvironmentDefaultLocaleCode();
252
+ const timeStart = new Date();
253
+ log(
254
+ `reindexInspirations - filterKey: ${filterKey} filterValue: ${filterValue} offset: ${offset} limit: ${limit} `
255
+ );
256
+
257
+ const records = await getObjects(offset, limit, filterKey, filterValue);
258
+ const objectsToSave = records.objects.filter(
259
+ (object) => !isObjectToDelete(object, defaultEnvironmentLocaleCode)
260
+ );
261
+ const objectIdsToDelete = records.objects
262
+ .filter((object) => isObjectToDelete(object, defaultEnvironmentLocaleCode))
263
+ .map((object) => object.objectID);
264
+
265
+ // Save records to Algolia
266
+ const index = getIndex(indexKey);
267
+ log(`Save ${objectsToSave.length} objects to ${index.indexName} index`);
268
+ const savedObjectIDs = await index.saveObjects(objectsToSave);
269
+ log(
270
+ `Delete ${objectIdsToDelete.length} objects from ${index.indexName} index`
271
+ );
272
+ const deletedObjectIDs = await index.deleteObjects(objectIdsToDelete);
273
+
274
+ const timeEnd = new Date();
275
+ const seconds = secondBetweenTwoDate(timeStart, timeEnd);
276
+ log(`Execution time: ${seconds} seconds`);
277
+
278
+ return {
279
+ ...records,
280
+ savedObjectIDs: savedObjectIDs.objectIDs,
281
+ deletedObjectIDs: deletedObjectIDs.objectIDs,
282
+ };
283
+ };
284
+
285
+ export const removeInspirationObject = async (objectId: string) => {
286
+ return removeIndexObject(objectId, indexKey);
287
+ };
@@ -25,7 +25,6 @@ import {
25
25
  keysToLowerCase,
26
26
  getAllTranslations,
27
27
  addProductFieldValueCodesByPimDetails,
28
- addMarkingIpRatingLabels,
29
28
  getCertificationFilters,
30
29
  } from "../utils";
31
30
  import { getWrapperImgixFields } from "../libs/imgix";
@@ -394,7 +393,6 @@ const getObject = async (
394
393
  "ipRating",
395
394
  "marking"
396
395
  );
397
- productFields = addMarkingIpRatingLabels(productFields, false);
398
396
 
399
397
  // log(`Get certificationFilters details...`);
400
398
  productFields.certificationFilters = getCertificationFilters(pimDetails);
@@ -22,7 +22,6 @@ import {
22
22
  secondBetweenTwoDate,
23
23
  getAllTranslations,
24
24
  addProductFieldValueCodesByPimDetails,
25
- addMarkingIpRatingLabels,
26
25
  getCertificationFilters,
27
26
  } from "../utils";
28
27
  import { getWrapperImgixFields } from "../libs/imgix";
@@ -400,8 +399,6 @@ const getObject = async (
400
399
  defaultEnvironmentLocaleCode
401
400
  ] || "";
402
401
 
403
- productFields = addMarkingIpRatingLabels(productFields);
404
-
405
402
  if (!productFields?.photometric) {
406
403
  productFields.photometric = {
407
404
  realNetFlow: undefined,
@@ -17,7 +17,6 @@ import {
17
17
  sanitizeValue,
18
18
  secondBetweenTwoDate,
19
19
  addProductFieldValueCodesByPimDetails,
20
- addMarkingIpRatingLabels,
21
20
  getCertificationFilters,
22
21
  capitalizeFirstLetter,
23
22
  getAllTranslations,
@@ -357,7 +356,6 @@ const getProductFields = async (topicSubFamily: Entry): Promise<any> => {
357
356
  "ipRating",
358
357
  "marking"
359
358
  );
360
- productFields = addMarkingIpRatingLabels(productFields, false);
361
359
 
362
360
  // MARKINGS
363
361
  productFields = addProductFieldValueCodesByPimDetails(
package/src/browser.ts CHANGED
@@ -87,6 +87,11 @@ export {
87
87
  reindexDownloads,
88
88
  removeDownloadObject,
89
89
  } from "./algolia/downloads";
90
+ export {
91
+ reindexInspiration,
92
+ reindexInspirations,
93
+ removeInspirationObject,
94
+ } from "./algolia/inspirations";
90
95
  export {
91
96
  reindexProject,
92
97
  reindexProjects,
package/src/index.ts CHANGED
@@ -95,6 +95,11 @@ export {
95
95
  reindexDownloads,
96
96
  removeDownloadObject,
97
97
  } from "./algolia/downloads";
98
+ export {
99
+ reindexInspiration,
100
+ reindexInspirations,
101
+ removeInspirationObject,
102
+ } from "./algolia/inspirations";
98
103
  export {
99
104
  reindexProject,
100
105
  reindexProjects,
@@ -139,13 +139,6 @@
139
139
  "dictionary": "DFMarking",
140
140
  "type": "object"
141
141
  },
142
- {
143
- "key": "ipRating",
144
- "parent": "marking",
145
- "icon": false,
146
- "dictionary": "certifications",
147
- "type": "object"
148
- },
149
142
  {
150
143
  "key": "ik",
151
144
  "parent": "marking",
@@ -696,7 +689,7 @@
696
689
  "key": "ipRating",
697
690
  "parent": "marking",
698
691
  "icon": true,
699
- "dictionary": "DIPCategory",
692
+ "dictionary": "DIpRating",
700
693
  "type": "object"
701
694
  },
702
695
  {
package/src/utils.ts CHANGED
@@ -551,64 +551,3 @@ export const getCertificationFilters = (productFields: any) => {
551
551
 
552
552
  return certificationFilters;
553
553
  };
554
-
555
- export const addMarkingIpRatingLabels = (
556
- productFields: any,
557
- singleValue: boolean = true
558
- ) => {
559
- const labelMap = new Map([
560
- ["EXTIP1", "20"],
561
- ["EXTIP10", "66"],
562
- ["EXTIP11", "66/67"],
563
- ["EXTIP12", "68"],
564
- ["EXTIP13", "40"],
565
- ["EXTIP14", "64"],
566
- ["EXTIP15", "53"],
567
- ["EXTIP16", "66/68"],
568
- ["EXTIP2", "23"],
569
- ["EXTIP3", "43"],
570
- ["EXTIP4", "44"],
571
- ["EXTIP5", "54"],
572
- ["EXTIP6", "65"],
573
- ["EXTIP7", "67"],
574
- ["EXTIP9", "55"],
575
- ["IP1", "20"],
576
- ["IP10", "66"],
577
- ["IP11", "67"],
578
- ["IP12", "66/67"],
579
- ["IP13", "68"],
580
- ["IP15", "53"],
581
- ["IP16", "66/68"],
582
- ["IP2", "23"],
583
- ["IP3", "40"],
584
- ["IP4", "43"],
585
- ["IP5", "44"],
586
- ["IP6", "54"],
587
- ["IP7", "55"],
588
- ["IP8", "64"],
589
- ["IP9", "65"],
590
- ]);
591
-
592
- if (singleValue) {
593
- const ipRatingCode = productFields?.marking?.ipRating?.code;
594
- if (ipRatingCode) {
595
- productFields.marking.ipRatingLabel = labelMap.has(ipRatingCode)
596
- ? {
597
- ...productFields.marking.ipRating,
598
- code: labelMap.get(ipRatingCode),
599
- }
600
- : productFields.marking.ipRating;
601
- }
602
- } else {
603
- const ipRatingCodes = productFields?.marking?.ipRating;
604
- if (ipRatingCodes?.length) {
605
- const ipRatingLabels = ipRatingCodes.map((ipRatingCode: any) => {
606
- return labelMap.has(ipRatingCode)
607
- ? labelMap.get(ipRatingCode)
608
- : ipRatingCode;
609
- });
610
- productFields.marking.ipRatingLabel = [...new Set(ipRatingLabels)];
611
- }
612
- }
613
- return productFields;
614
- };
@@ -1,4 +1,4 @@
1
- export type AvailableIndicesKey = "products" | "families" | "subFamilies" | "subModels" | "models" | "downloads" | "projects" | "stories" | "pressReviews" | "pressRelease" | "news";
1
+ export type AvailableIndicesKey = "products" | "families" | "subFamilies" | "subModels" | "models" | "downloads" | "inspirations" | "projects" | "stories" | "pressReviews" | "pressRelease" | "news";
2
2
  export declare const getClient: () => import("algoliasearch").SearchClient;
3
3
  export declare const getIndicesSettings: () => {
4
4
  products: {
@@ -44,6 +44,15 @@ export declare const getIndicesSettings: () => {
44
44
  replicas: string[];
45
45
  };
46
46
  };
47
+ inspirations: {
48
+ name: string;
49
+ settings: {
50
+ attributesForFaceting: never[];
51
+ searchableAttributes: string[];
52
+ ranking: never[];
53
+ replicas: never[];
54
+ };
55
+ };
47
56
  projects: {
48
57
  name: string;
49
58
  settings: {
@@ -0,0 +1,39 @@
1
+ import { CfLocalizedEntryField, WrapperImageFields } from "../types";
2
+ export type AlgoliaInspirationRecord = {
3
+ objectID: string;
4
+ name?: CfLocalizedEntryField;
5
+ description?: CfLocalizedEntryField;
6
+ excerpt?: CfLocalizedEntryField;
7
+ slugs?: {};
8
+ thumbnailImgix?: WrapperImageFields | {};
9
+ visualizationDate?: string;
10
+ lastSyncDate?: string;
11
+ hideInRegions?: string[];
12
+ type?: string;
13
+ };
14
+ export declare const reindexInspiration: (topicId: string) => Promise<{
15
+ taskID: number;
16
+ } | {
17
+ objectID: string;
18
+ name?: Partial<Record<import("../types").ContentfulLocale, string | null>> | undefined;
19
+ description?: Partial<Record<import("../types").ContentfulLocale, string | null>> | undefined;
20
+ excerpt?: Partial<Record<import("../types").ContentfulLocale, string | null>> | undefined;
21
+ slugs?: {} | undefined;
22
+ thumbnailImgix?: {} | WrapperImageFields | undefined;
23
+ visualizationDate?: string | undefined;
24
+ lastSyncDate?: string | undefined;
25
+ hideInRegions?: string[] | undefined;
26
+ type?: string | undefined;
27
+ taskID: number;
28
+ }>;
29
+ export declare const reindexInspirations: (offset?: number, limit?: number, filterKey?: string, filterValue?: string) => Promise<{
30
+ savedObjectIDs: string[];
31
+ deletedObjectIDs: string[];
32
+ objects: Readonly<Record<string, any>>[];
33
+ offset: number;
34
+ limit: number;
35
+ completed: boolean;
36
+ s3FilePath?: string | undefined;
37
+ total?: number | undefined;
38
+ }>;
39
+ export declare const removeInspirationObject: (objectId: string) => Promise<void>;