@plasmicpkgs/plasmic-contentful 0.0.169 → 0.0.171
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/index.d.mts +9 -8
- package/dist/index.d.ts +9 -8
- package/dist/index.js +19 -4
- package/dist/index.mjs +19 -4
- package/package.json +4 -4
package/dist/index.d.mts
CHANGED
|
@@ -11,6 +11,14 @@ interface ContentfulCredentialsProviderProps {
|
|
|
11
11
|
}
|
|
12
12
|
declare const ContentfulCredentialsProviderMeta: GlobalContextMeta<ContentfulCredentialsProviderProps>;
|
|
13
13
|
declare function ContentfulCredentialsProvider({ accessToken, space, environment, children, }: React.PropsWithChildren<ContentfulCredentialsProviderProps>): React.JSX.Element;
|
|
14
|
+
interface ContentfulControlContextData {
|
|
15
|
+
types?: {
|
|
16
|
+
name: string;
|
|
17
|
+
id: string;
|
|
18
|
+
}[];
|
|
19
|
+
fields?: string[];
|
|
20
|
+
queryOptions?: [];
|
|
21
|
+
}
|
|
14
22
|
interface ContentfulFetcherProps {
|
|
15
23
|
contentType: string;
|
|
16
24
|
children?: ReactNode;
|
|
@@ -24,14 +32,7 @@ interface ContentfulFetcherProps {
|
|
|
24
32
|
filterValue?: string | number;
|
|
25
33
|
noAutoRepeat?: boolean;
|
|
26
34
|
noLayout?: boolean;
|
|
27
|
-
setControlContextData?: (data:
|
|
28
|
-
types?: {
|
|
29
|
-
name: string;
|
|
30
|
-
id: string;
|
|
31
|
-
}[];
|
|
32
|
-
fields?: string[];
|
|
33
|
-
queryOptions?: [];
|
|
34
|
-
}) => void;
|
|
35
|
+
setControlContextData?: (data: ContentfulControlContextData) => void;
|
|
35
36
|
}
|
|
36
37
|
declare const ContentfulFetcherMeta: ComponentMeta<ContentfulFetcherProps>;
|
|
37
38
|
declare function ContentfulFetcher({ filterField, filterValue, searchParameter, noAutoRepeat, contentType, children, className, order, reverseOrder, limit, include, noLayout, setControlContextData, }: ContentfulFetcherProps): React.JSX.Element;
|
package/dist/index.d.ts
CHANGED
|
@@ -11,6 +11,14 @@ interface ContentfulCredentialsProviderProps {
|
|
|
11
11
|
}
|
|
12
12
|
declare const ContentfulCredentialsProviderMeta: GlobalContextMeta<ContentfulCredentialsProviderProps>;
|
|
13
13
|
declare function ContentfulCredentialsProvider({ accessToken, space, environment, children, }: React.PropsWithChildren<ContentfulCredentialsProviderProps>): React.JSX.Element;
|
|
14
|
+
interface ContentfulControlContextData {
|
|
15
|
+
types?: {
|
|
16
|
+
name: string;
|
|
17
|
+
id: string;
|
|
18
|
+
}[];
|
|
19
|
+
fields?: string[];
|
|
20
|
+
queryOptions?: [];
|
|
21
|
+
}
|
|
14
22
|
interface ContentfulFetcherProps {
|
|
15
23
|
contentType: string;
|
|
16
24
|
children?: ReactNode;
|
|
@@ -24,14 +32,7 @@ interface ContentfulFetcherProps {
|
|
|
24
32
|
filterValue?: string | number;
|
|
25
33
|
noAutoRepeat?: boolean;
|
|
26
34
|
noLayout?: boolean;
|
|
27
|
-
setControlContextData?: (data:
|
|
28
|
-
types?: {
|
|
29
|
-
name: string;
|
|
30
|
-
id: string;
|
|
31
|
-
}[];
|
|
32
|
-
fields?: string[];
|
|
33
|
-
queryOptions?: [];
|
|
34
|
-
}) => void;
|
|
35
|
+
setControlContextData?: (data: ContentfulControlContextData) => void;
|
|
35
36
|
}
|
|
36
37
|
declare const ContentfulFetcherMeta: ComponentMeta<ContentfulFetcherProps>;
|
|
37
38
|
declare function ContentfulFetcher({ filterField, filterValue, searchParameter, noAutoRepeat, contentType, children, className, order, reverseOrder, limit, include, noLayout, setControlContextData, }: ContentfulFetcherProps): React.JSX.Element;
|
package/dist/index.js
CHANGED
|
@@ -386,6 +386,7 @@ function ContentfulFetcher({
|
|
|
386
386
|
entryMap[entry.sys.id] = entry;
|
|
387
387
|
});
|
|
388
388
|
}
|
|
389
|
+
const processedFields = /* @__PURE__ */ new Set();
|
|
389
390
|
const denormalizeField = (fieldValue) => {
|
|
390
391
|
var _a2, _b2;
|
|
391
392
|
if (Array.isArray(fieldValue)) {
|
|
@@ -410,10 +411,16 @@ function ContentfulFetcher({
|
|
|
410
411
|
} else if (data.includes.Entry && "sys" in fieldValue && fieldValue.sys.linkType === "Entry") {
|
|
411
412
|
const fieldId = fieldValue.sys.id;
|
|
412
413
|
if (entryMap[fieldId]) {
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
414
|
+
if (processedFields.has(fieldId)) {
|
|
415
|
+
console.warn(
|
|
416
|
+
`Circular reference detected for Entry ID: ${fieldId}.`
|
|
417
|
+
);
|
|
418
|
+
} else {
|
|
419
|
+
fieldValue = {
|
|
420
|
+
...fieldValue,
|
|
421
|
+
fields: denormalizeItem(entryMap[fieldId]).fields
|
|
422
|
+
};
|
|
423
|
+
}
|
|
417
424
|
} else {
|
|
418
425
|
console.log(`Entry not found for ID: ${fieldId}`);
|
|
419
426
|
}
|
|
@@ -430,10 +437,18 @@ function ContentfulFetcher({
|
|
|
430
437
|
return fieldValue;
|
|
431
438
|
};
|
|
432
439
|
const denormalizeItem = (item) => {
|
|
440
|
+
var _a2;
|
|
441
|
+
const itemId = (_a2 = item.sys) == null ? void 0 : _a2.id;
|
|
442
|
+
if (itemId) {
|
|
443
|
+
processedFields.add(itemId);
|
|
444
|
+
}
|
|
433
445
|
const updatedFields = {};
|
|
434
446
|
for (const fieldName in item.fields) {
|
|
435
447
|
updatedFields[fieldName] = denormalizeField(item.fields[fieldName]);
|
|
436
448
|
}
|
|
449
|
+
if (itemId) {
|
|
450
|
+
processedFields.delete(itemId);
|
|
451
|
+
}
|
|
437
452
|
return {
|
|
438
453
|
...item,
|
|
439
454
|
fields: updatedFields != null ? updatedFields : void 0
|
package/dist/index.mjs
CHANGED
|
@@ -349,6 +349,7 @@ function ContentfulFetcher({
|
|
|
349
349
|
entryMap[entry.sys.id] = entry;
|
|
350
350
|
});
|
|
351
351
|
}
|
|
352
|
+
const processedFields = /* @__PURE__ */ new Set();
|
|
352
353
|
const denormalizeField = (fieldValue) => {
|
|
353
354
|
var _a2, _b2;
|
|
354
355
|
if (Array.isArray(fieldValue)) {
|
|
@@ -373,10 +374,16 @@ function ContentfulFetcher({
|
|
|
373
374
|
} else if (data.includes.Entry && "sys" in fieldValue && fieldValue.sys.linkType === "Entry") {
|
|
374
375
|
const fieldId = fieldValue.sys.id;
|
|
375
376
|
if (entryMap[fieldId]) {
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
377
|
+
if (processedFields.has(fieldId)) {
|
|
378
|
+
console.warn(
|
|
379
|
+
`Circular reference detected for Entry ID: ${fieldId}.`
|
|
380
|
+
);
|
|
381
|
+
} else {
|
|
382
|
+
fieldValue = {
|
|
383
|
+
...fieldValue,
|
|
384
|
+
fields: denormalizeItem(entryMap[fieldId]).fields
|
|
385
|
+
};
|
|
386
|
+
}
|
|
380
387
|
} else {
|
|
381
388
|
console.log(`Entry not found for ID: ${fieldId}`);
|
|
382
389
|
}
|
|
@@ -393,10 +400,18 @@ function ContentfulFetcher({
|
|
|
393
400
|
return fieldValue;
|
|
394
401
|
};
|
|
395
402
|
const denormalizeItem = (item) => {
|
|
403
|
+
var _a2;
|
|
404
|
+
const itemId = (_a2 = item.sys) == null ? void 0 : _a2.id;
|
|
405
|
+
if (itemId) {
|
|
406
|
+
processedFields.add(itemId);
|
|
407
|
+
}
|
|
396
408
|
const updatedFields = {};
|
|
397
409
|
for (const fieldName in item.fields) {
|
|
398
410
|
updatedFields[fieldName] = denormalizeField(item.fields[fieldName]);
|
|
399
411
|
}
|
|
412
|
+
if (itemId) {
|
|
413
|
+
processedFields.delete(itemId);
|
|
414
|
+
}
|
|
400
415
|
return {
|
|
401
416
|
...item,
|
|
402
417
|
fields: updatedFields != null ? updatedFields : void 0
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plasmicpkgs/plasmic-contentful",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.171",
|
|
4
4
|
"description": "Plasmic Contentful components.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"typings": "dist/index.d.ts",
|
|
@@ -32,8 +32,8 @@
|
|
|
32
32
|
}
|
|
33
33
|
],
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@plasmicapp/host": "1.0.
|
|
36
|
-
"@plasmicapp/query": "0.1.
|
|
35
|
+
"@plasmicapp/host": "1.0.227",
|
|
36
|
+
"@plasmicapp/query": "0.1.81",
|
|
37
37
|
"@types/dlv": "^1.1.2",
|
|
38
38
|
"@types/react": "^18.0.27",
|
|
39
39
|
"@types/react-dom": "^18.0.10",
|
|
@@ -50,5 +50,5 @@
|
|
|
50
50
|
"change-case": "^4.1.2",
|
|
51
51
|
"dlv": "^1.1.3"
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "ae56da24d04738bd064d262fb78205d5162e4ab2"
|
|
54
54
|
}
|