@rakun-kit/core 1.5.5 → 1.5.6
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/README.md +3 -2
- package/dist/cjs/api/utils/populates/populateLinks.js +77 -13
- package/dist/cjs/api/utils/populates/populateLinks.js.map +1 -1
- package/dist/cjs/api/utils/populates/populateRelations.js +3 -2
- package/dist/cjs/api/utils/populates/populateRelations.js.map +1 -1
- package/dist/cjs/lib/fields/Link.js +7 -7
- package/dist/cjs/lib/fields/Link.js.map +1 -1
- package/dist/docs/index.md +4 -3
- package/dist/esm/api/utils/populates/populateLinks.d.ts.map +1 -1
- package/dist/esm/api/utils/populates/populateLinks.js +77 -13
- package/dist/esm/api/utils/populates/populateLinks.js.map +1 -1
- package/dist/esm/api/utils/populates/populateRelations.d.ts.map +1 -1
- package/dist/esm/api/utils/populates/populateRelations.js +3 -2
- package/dist/esm/api/utils/populates/populateRelations.js.map +1 -1
- package/dist/esm/lib/fields/Link.d.ts +8 -2
- package/dist/esm/lib/fields/Link.d.ts.map +1 -1
- package/dist/esm/lib/fields/Link.js +7 -7
- package/dist/esm/lib/fields/Link.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -684,8 +684,9 @@ Notable fields:
|
|
|
684
684
|
- `LinkField`: the manager stores a direct `{ href, title }` value or an
|
|
685
685
|
internal `{ routeId, contentTypeId, title }` reference. Titled links resolve
|
|
686
686
|
to `{ href, title }` in web output, with internal `href` values localized by
|
|
687
|
-
route.
|
|
688
|
-
accepted
|
|
687
|
+
route. Web output always uses that object shape. Legacy direct URL strings
|
|
688
|
+
and untitled internal references remain accepted as input and persisted data;
|
|
689
|
+
they are normalized to an empty `title` on output.
|
|
689
690
|
- `BreadcrumsField`: `f.breadcrums()` is a computed, API-only field for page
|
|
690
691
|
modules. In web and preview output it returns the localized route hierarchy as
|
|
691
692
|
`{ label, href }[]`, ordered from the highest ancestor to the current page. It
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.populateLinks = void 0;
|
|
4
4
|
const internal_content_types_1 = require("../../../internal-content-types");
|
|
5
|
+
const Registry_1 = require("../../../lib/Registry");
|
|
5
6
|
const hasKeys_1 = require("../../../lib/utils/hasKeys");
|
|
6
7
|
const orm_1 = require("../../../orm");
|
|
7
8
|
const getLanguages_1 = require("../getLanguages");
|
|
@@ -9,10 +10,9 @@ const populateLinks = async (data) => {
|
|
|
9
10
|
const db = await (0, orm_1.getMongoService)();
|
|
10
11
|
const languages = await (0, getLanguages_1.getLanguages)();
|
|
11
12
|
const defaultLanguageCode = languages.find((l) => l.default)?.code || "";
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
return Promise.all(value.map(populateValue));
|
|
13
|
+
const populateLinkValue = async (value) => {
|
|
14
|
+
if (typeof value === "string") {
|
|
15
|
+
return { href: value, title: "" };
|
|
16
16
|
}
|
|
17
17
|
if (value &&
|
|
18
18
|
typeof value === "object" &&
|
|
@@ -37,7 +37,12 @@ const populateLinks = async (data) => {
|
|
|
37
37
|
options: { limit: "all" },
|
|
38
38
|
})).items;
|
|
39
39
|
if (items.length === 0) {
|
|
40
|
-
return
|
|
40
|
+
return {
|
|
41
|
+
href: "",
|
|
42
|
+
title: "title" in value && typeof value.title === "string"
|
|
43
|
+
? value.title
|
|
44
|
+
: "",
|
|
45
|
+
};
|
|
41
46
|
}
|
|
42
47
|
const populated = Object.fromEntries(items
|
|
43
48
|
.map((item) => {
|
|
@@ -45,19 +50,78 @@ const populateLinks = async (data) => {
|
|
|
45
50
|
return [lang ? lang.code : defaultLanguageCode, item.path];
|
|
46
51
|
})
|
|
47
52
|
.concat([["_tag", "Translatable"]]));
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
53
|
+
return {
|
|
54
|
+
href: populated,
|
|
55
|
+
title: "title" in value && typeof value.title === "string"
|
|
56
|
+
? value.title
|
|
57
|
+
: "",
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
if ((0, hasKeys_1.hasKeys)(value) && typeof value.href === "string") {
|
|
61
|
+
return {
|
|
62
|
+
href: value.href,
|
|
63
|
+
title: typeof value.title === "string" ? value.title : "",
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
return value;
|
|
67
|
+
};
|
|
68
|
+
const populateObject = async (value) => {
|
|
69
|
+
const contentType = typeof value._type === "string"
|
|
70
|
+
? (0, Registry_1.getContentTypeByName)(value._type)
|
|
71
|
+
: undefined;
|
|
72
|
+
return Object.fromEntries(await Promise.all(Object.entries(value).map(async ([key, item]) => [
|
|
73
|
+
key,
|
|
74
|
+
await populateValue(item, contentType?.fields[key]),
|
|
75
|
+
])));
|
|
76
|
+
};
|
|
77
|
+
const populateValue = async (value, field) => {
|
|
78
|
+
if ((0, hasKeys_1.hasKeys)(value) && value._tag === "Translatable") {
|
|
79
|
+
return Object.fromEntries(await Promise.all(Object.entries(value).map(async ([key, item]) => [
|
|
80
|
+
key,
|
|
81
|
+
key === "_tag" ? item : await populateValue(item, field),
|
|
82
|
+
])));
|
|
83
|
+
}
|
|
84
|
+
if (field?.meta.ui === "SimpleList" &&
|
|
85
|
+
"field" in field &&
|
|
86
|
+
Array.isArray(value)) {
|
|
87
|
+
return Promise.all(value.map((item) => populateValue(item, field.field)));
|
|
88
|
+
}
|
|
89
|
+
if (field &&
|
|
90
|
+
(field.meta.ui === "List" || field.meta.ui === "Iterator") &&
|
|
91
|
+
"fields" in field &&
|
|
92
|
+
Array.isArray(field.fields) &&
|
|
93
|
+
Array.isArray(value)) {
|
|
94
|
+
const fields = field.fields;
|
|
95
|
+
return Promise.all(value.map(async (item) => {
|
|
96
|
+
if (!(0, hasKeys_1.hasKeys)(item) || typeof item.name !== "string") {
|
|
97
|
+
return populateValue(item);
|
|
98
|
+
}
|
|
99
|
+
const entry = fields.find((candidate) => candidate.name === item.name);
|
|
100
|
+
return {
|
|
101
|
+
...item,
|
|
102
|
+
value: await populateValue(item.value, entry?.field),
|
|
103
|
+
};
|
|
104
|
+
}));
|
|
105
|
+
}
|
|
106
|
+
if (field?.meta.type === "Link") {
|
|
107
|
+
return populateLinkValue(value);
|
|
108
|
+
}
|
|
109
|
+
// Preserve support for route references found in untyped nested objects.
|
|
110
|
+
if (value &&
|
|
111
|
+
typeof value === "object" &&
|
|
112
|
+
"routeId" in value &&
|
|
113
|
+
"contentTypeId" in value) {
|
|
114
|
+
return populateLinkValue(value);
|
|
115
|
+
}
|
|
116
|
+
if (Array.isArray(value)) {
|
|
117
|
+
return Promise.all(value.map((item) => populateValue(item)));
|
|
52
118
|
}
|
|
53
119
|
if ((0, hasKeys_1.hasKeys)(value)) {
|
|
54
|
-
|
|
55
|
-
return Object.fromEntries(await Promise.all(entries.map(async ([k, v]) => [k, await populateValue(v)])));
|
|
120
|
+
return populateObject(value);
|
|
56
121
|
}
|
|
57
122
|
return value;
|
|
58
123
|
};
|
|
59
|
-
const
|
|
60
|
-
const result = Object.fromEntries(await Promise.all(entries.map(async ([k, v]) => [k, await populateValue(v)])));
|
|
124
|
+
const result = await populateObject(data);
|
|
61
125
|
return result;
|
|
62
126
|
};
|
|
63
127
|
exports.populateLinks = populateLinks;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateLinks.js","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateLinks.ts"],"names":[],"mappings":";;;AAAA,4EAA2D;AAG3D,wDAAqD;AACrD,sCAA+C;AAC/C,kDAA+C;AAExC,MAAM,aAAa,GAAG,KAAK,EAChC,IAAiB,EACM,EAAE;IACzB,MAAM,EAAE,GAAG,MAAM,IAAA,qBAAe,GAAE,CAAC;IAEnC,MAAM,SAAS,GAAG,MAAM,IAAA,2BAAY,GAAE,CAAC;IACvC,MAAM,mBAAmB,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;IAEzE,MAAM,
|
|
1
|
+
{"version":3,"file":"populateLinks.js","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateLinks.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ const hasKeys_1 = require("../../../lib/utils/hasKeys");
|
|
|
7
7
|
const media_1 = require("../../../media");
|
|
8
8
|
const orm_1 = require("../../../orm");
|
|
9
9
|
const mongodbPeer_1 = require("../../../orm/mongodbPeer");
|
|
10
|
+
const populateLinks_1 = require("./populateLinks");
|
|
10
11
|
const toMediaSizeRecords = (value) => {
|
|
11
12
|
if (!Array.isArray(value))
|
|
12
13
|
return [];
|
|
@@ -186,14 +187,14 @@ async function populateRelations(data, options = {}) {
|
|
|
186
187
|
// Keep original value if the target no longer exists.
|
|
187
188
|
if (!populated)
|
|
188
189
|
return Promise.resolve(value);
|
|
189
|
-
return populateRelations(
|
|
190
|
+
return (0, populateLinks_1.populateLinks)(populated).then((linksPopulated) => populateRelations(linksPopulated, options));
|
|
190
191
|
});
|
|
191
192
|
}
|
|
192
193
|
// Inline "new" relation payloads as fully populated objects.
|
|
193
194
|
if (value.type === "new" && "data" in value) {
|
|
194
195
|
const data = value.data;
|
|
195
196
|
return {
|
|
196
|
-
...(await populateRelations(data, options)),
|
|
197
|
+
...(await populateRelations(await (0, populateLinks_1.populateLinks)(data), options)),
|
|
197
198
|
_id: new ObjectId().toString(),
|
|
198
199
|
};
|
|
199
200
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateRelations.js","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateRelations.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"populateRelations.js","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateRelations.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,13 +21,13 @@ const linkInputSchema = zod_1.default.union([
|
|
|
21
21
|
internalLinkInputSchema,
|
|
22
22
|
directLinkInputSchema,
|
|
23
23
|
]);
|
|
24
|
-
const
|
|
25
|
-
zod_1.default.string(),
|
|
26
|
-
zod_1.default.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
24
|
+
const resolvedLinkSchema = zod_1.default.object({
|
|
25
|
+
href: zod_1.default.string(),
|
|
26
|
+
title: zod_1.default.string(),
|
|
27
|
+
});
|
|
28
|
+
const linkOutputSchema = zod_1.default
|
|
29
|
+
.union([zod_1.default.string(), resolvedLinkSchema])
|
|
30
|
+
.transform((value) => typeof value === "string" ? { href: value, title: "" } : value);
|
|
31
31
|
function linkField() {
|
|
32
32
|
return makeLinkField(Field_1.defaultFieldState);
|
|
33
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../../../../src/lib/fields/Link.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../../../../src/lib/fields/Link.ts"],"names":[],"mappings":";;;;;AAkEA,8BAEC;AApED,8CAAoB;AAEpB,mCAUiB;AACjB,oCAAiC;AAEjC,MAAM,uBAAuB,GAAG,aAAC,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,OAAE;IACX,aAAa,EAAE,OAAE;IACjB,KAAK,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,aAAC,CAAC,MAAM,CAAC;IACrC,IAAI,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,EAAE,aAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,aAAC,CAAC,KAAK,CAAC;IAC9B,aAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjB,uBAAuB;IACvB,qBAAqB;CACtB,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,aAAC,CAAC,MAAM,CAAC;IAClC,IAAI,EAAE,aAAC,CAAC,MAAM,EAAE;IAChB,KAAK,EAAE,aAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,aAAC;KACvB,KAAK,CAAC,CAAC,aAAC,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC;KACvC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CACnB,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAC/D,CAAC;AAyBJ,SAAgB,SAAS;IACvB,OAAO,aAAa,CAAC,yBAAiB,CAAC,CAAC;AAC1C,CAAC;AAID,SAAS,aAAa,CAA2B,KAAY;IAC3D,MAAM,KAAK,GAAyB,IAAA,mBAAW,EAAC;QAC9C,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE;QAClC,KAAK;QACL,OAAO,EAAE;YACP,KAAK,EAAE,GAAG,EAAE,CAAC,eAAe;YAC5B,EAAE,EAAE,GAAG,EAAE,CAAC,eAAe;YACzB,MAAM,EAAE,GAAG,EAAE,CAAC,gBAAgB;SAC/B;KACF,CAAC,CAAC;IAEH,OAAO,IAAA,0BAAkB,EAAC;QACxB,KAAK;QACL,OAAO,EAAE,CAA+B,SAAoB,EAAE,EAAE,CAC9D,aAAa,CAAC,SAAS,CAGtB;KACJ,CAAC,CAAC;AACL,CAAC"}
|
package/dist/docs/index.md
CHANGED
|
@@ -118,9 +118,10 @@ back to `Date`. `Time` stores an ISO time string.
|
|
|
118
118
|
The `f.link()` manager editor stores a direct `{ href, title }` value or an
|
|
119
119
|
internal `{ routeId, contentTypeId, title }` reference. Web output for these
|
|
120
120
|
values is `{ href, title }`, with internal `href` values localized by route.
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
121
|
+
`DataFront` always exposes that object shape. Legacy URL strings and untitled
|
|
122
|
+
internal references remain accepted for writes and persisted data, then receive
|
|
123
|
+
an empty `title` when normalized for web output. Dynamic data exposes link
|
|
124
|
+
properties as `<field>.href` and `<field>.title`.
|
|
124
125
|
|
|
125
126
|
`f.breadcrums()` declares a computed, API-only field intended for modules such
|
|
126
127
|
as heroes. When the module is rendered in a routable page, the field returns
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateLinks.d.ts","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateLinks.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"populateLinks.d.ts","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateLinks.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAGnD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAKzD,eAAO,MAAM,aAAa,GAAU,CAAC,SAAS,WAAW,EACvD,MAAM,QAAQ,CAAC,CAAC,CAAC,KAChB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAmLtB,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { RouteMap } from "../../../internal-content-types/index.js";
|
|
2
|
+
import { getContentTypeByName } from "../../../lib/Registry.js";
|
|
2
3
|
import { hasKeys } from "../../../lib/utils/hasKeys.js";
|
|
3
4
|
import { getMongoService } from "../../../orm/index.js";
|
|
4
5
|
import { getLanguages } from "../getLanguages.js";
|
|
@@ -6,10 +7,9 @@ export const populateLinks = async (data) => {
|
|
|
6
7
|
const db = await getMongoService();
|
|
7
8
|
const languages = await getLanguages();
|
|
8
9
|
const defaultLanguageCode = languages.find((l) => l.default)?.code || "";
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
return Promise.all(value.map(populateValue));
|
|
10
|
+
const populateLinkValue = async (value) => {
|
|
11
|
+
if (typeof value === "string") {
|
|
12
|
+
return { href: value, title: "" };
|
|
13
13
|
}
|
|
14
14
|
if (value &&
|
|
15
15
|
typeof value === "object" &&
|
|
@@ -34,7 +34,12 @@ export const populateLinks = async (data) => {
|
|
|
34
34
|
options: { limit: "all" },
|
|
35
35
|
})).items;
|
|
36
36
|
if (items.length === 0) {
|
|
37
|
-
return
|
|
37
|
+
return {
|
|
38
|
+
href: "",
|
|
39
|
+
title: "title" in value && typeof value.title === "string"
|
|
40
|
+
? value.title
|
|
41
|
+
: "",
|
|
42
|
+
};
|
|
38
43
|
}
|
|
39
44
|
const populated = Object.fromEntries(items
|
|
40
45
|
.map((item) => {
|
|
@@ -42,19 +47,78 @@ export const populateLinks = async (data) => {
|
|
|
42
47
|
return [lang ? lang.code : defaultLanguageCode, item.path];
|
|
43
48
|
})
|
|
44
49
|
.concat([["_tag", "Translatable"]]));
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
50
|
+
return {
|
|
51
|
+
href: populated,
|
|
52
|
+
title: "title" in value && typeof value.title === "string"
|
|
53
|
+
? value.title
|
|
54
|
+
: "",
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
if (hasKeys(value) && typeof value.href === "string") {
|
|
58
|
+
return {
|
|
59
|
+
href: value.href,
|
|
60
|
+
title: typeof value.title === "string" ? value.title : "",
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
return value;
|
|
64
|
+
};
|
|
65
|
+
const populateObject = async (value) => {
|
|
66
|
+
const contentType = typeof value._type === "string"
|
|
67
|
+
? getContentTypeByName(value._type)
|
|
68
|
+
: undefined;
|
|
69
|
+
return Object.fromEntries(await Promise.all(Object.entries(value).map(async ([key, item]) => [
|
|
70
|
+
key,
|
|
71
|
+
await populateValue(item, contentType?.fields[key]),
|
|
72
|
+
])));
|
|
73
|
+
};
|
|
74
|
+
const populateValue = async (value, field) => {
|
|
75
|
+
if (hasKeys(value) && value._tag === "Translatable") {
|
|
76
|
+
return Object.fromEntries(await Promise.all(Object.entries(value).map(async ([key, item]) => [
|
|
77
|
+
key,
|
|
78
|
+
key === "_tag" ? item : await populateValue(item, field),
|
|
79
|
+
])));
|
|
80
|
+
}
|
|
81
|
+
if (field?.meta.ui === "SimpleList" &&
|
|
82
|
+
"field" in field &&
|
|
83
|
+
Array.isArray(value)) {
|
|
84
|
+
return Promise.all(value.map((item) => populateValue(item, field.field)));
|
|
85
|
+
}
|
|
86
|
+
if (field &&
|
|
87
|
+
(field.meta.ui === "List" || field.meta.ui === "Iterator") &&
|
|
88
|
+
"fields" in field &&
|
|
89
|
+
Array.isArray(field.fields) &&
|
|
90
|
+
Array.isArray(value)) {
|
|
91
|
+
const fields = field.fields;
|
|
92
|
+
return Promise.all(value.map(async (item) => {
|
|
93
|
+
if (!hasKeys(item) || typeof item.name !== "string") {
|
|
94
|
+
return populateValue(item);
|
|
95
|
+
}
|
|
96
|
+
const entry = fields.find((candidate) => candidate.name === item.name);
|
|
97
|
+
return {
|
|
98
|
+
...item,
|
|
99
|
+
value: await populateValue(item.value, entry?.field),
|
|
100
|
+
};
|
|
101
|
+
}));
|
|
102
|
+
}
|
|
103
|
+
if (field?.meta.type === "Link") {
|
|
104
|
+
return populateLinkValue(value);
|
|
105
|
+
}
|
|
106
|
+
// Preserve support for route references found in untyped nested objects.
|
|
107
|
+
if (value &&
|
|
108
|
+
typeof value === "object" &&
|
|
109
|
+
"routeId" in value &&
|
|
110
|
+
"contentTypeId" in value) {
|
|
111
|
+
return populateLinkValue(value);
|
|
112
|
+
}
|
|
113
|
+
if (Array.isArray(value)) {
|
|
114
|
+
return Promise.all(value.map((item) => populateValue(item)));
|
|
49
115
|
}
|
|
50
116
|
if (hasKeys(value)) {
|
|
51
|
-
|
|
52
|
-
return Object.fromEntries(await Promise.all(entries.map(async ([k, v]) => [k, await populateValue(v)])));
|
|
117
|
+
return populateObject(value);
|
|
53
118
|
}
|
|
54
119
|
return value;
|
|
55
120
|
};
|
|
56
|
-
const
|
|
57
|
-
const result = Object.fromEntries(await Promise.all(entries.map(async ([k, v]) => [k, await populateValue(v)])));
|
|
121
|
+
const result = await populateObject(data);
|
|
58
122
|
return result;
|
|
59
123
|
};
|
|
60
124
|
//# sourceMappingURL=populateLinks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateLinks.js","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateLinks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAG3D,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,IAAiB,EACM,EAAE;IACzB,MAAM,EAAE,GAAG,MAAM,eAAe,EAAE,CAAC;IAEnC,MAAM,SAAS,GAAG,MAAM,YAAY,EAAE,CAAC;IACvC,MAAM,mBAAmB,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;IAEzE,MAAM,
|
|
1
|
+
{"version":3,"file":"populateLinks.js","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateLinks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateRelations.d.ts","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateRelations.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"populateRelations.d.ts","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateRelations.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAoB7D,KAAK,wBAAwB,GAAG;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AA8DF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,WAAW,EACrD,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EACjB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7B,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,WAAW,EACrD,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,EACnB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -4,6 +4,7 @@ import { hasKeys } from "../../../lib/utils/hasKeys.js";
|
|
|
4
4
|
import { getMediaService } from "../../../media/index.js";
|
|
5
5
|
import { getMongoService } from "../../../orm/index.js";
|
|
6
6
|
import { getMongoDB } from "../../../orm/mongodbPeer.js";
|
|
7
|
+
import { populateLinks } from "./populateLinks.js";
|
|
7
8
|
const toMediaSizeRecords = (value) => {
|
|
8
9
|
if (!Array.isArray(value))
|
|
9
10
|
return [];
|
|
@@ -183,14 +184,14 @@ export async function populateRelations(data, options = {}) {
|
|
|
183
184
|
// Keep original value if the target no longer exists.
|
|
184
185
|
if (!populated)
|
|
185
186
|
return Promise.resolve(value);
|
|
186
|
-
return populateRelations(
|
|
187
|
+
return populateLinks(populated).then((linksPopulated) => populateRelations(linksPopulated, options));
|
|
187
188
|
});
|
|
188
189
|
}
|
|
189
190
|
// Inline "new" relation payloads as fully populated objects.
|
|
190
191
|
if (value.type === "new" && "data" in value) {
|
|
191
192
|
const data = value.data;
|
|
192
193
|
return {
|
|
193
|
-
...(await populateRelations(data, options)),
|
|
194
|
+
...(await populateRelations(await populateLinks(data), options)),
|
|
194
195
|
_id: new ObjectId().toString(),
|
|
195
196
|
};
|
|
196
197
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateRelations.js","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateRelations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAExD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"populateRelations.js","sourceRoot":"","sources":["../../../../../src/api/utils/populates/populateRelations.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,10 +8,16 @@ declare const linkInputSchema: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
|
|
|
8
8
|
href: z.ZodString;
|
|
9
9
|
title: z.ZodString;
|
|
10
10
|
}, z.core.$strip>]>;
|
|
11
|
-
declare const linkOutputSchema: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
|
|
11
|
+
declare const linkOutputSchema: z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
|
|
12
12
|
href: z.ZodString;
|
|
13
13
|
title: z.ZodString;
|
|
14
|
-
}, z.core.$strip>]
|
|
14
|
+
}, z.core.$strip>]>, z.ZodTransform<{
|
|
15
|
+
href: string;
|
|
16
|
+
title: string;
|
|
17
|
+
}, string | {
|
|
18
|
+
href: string;
|
|
19
|
+
title: string;
|
|
20
|
+
}>>;
|
|
15
21
|
type LinkInput = z.infer<typeof linkInputSchema>;
|
|
16
22
|
type LinkOutput = z.infer<typeof linkOutputSchema>;
|
|
17
23
|
export type LinkfieldValue = LinkInput;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../../../src/lib/fields/Link.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,kBAAkB,EAGxB,MAAM,SAAS,CAAC;AAcjB,QAAA,MAAM,eAAe;;;;;;;mBAInB,CAAC;
|
|
1
|
+
{"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../../../src/lib/fields/Link.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,kBAAkB,EAGxB,MAAM,SAAS,CAAC;AAcjB,QAAA,MAAM,eAAe;;;;;;;mBAInB,CAAC;AAOH,QAAA,MAAM,gBAAgB;;;;;;;;;GAInB,CAAC;AAEJ,KAAK,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACjD,KAAK,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEnD,MAAM,MAAM,cAAc,GAAG,SAAS,CAAC;AACvC,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC;AAEzC,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,SAAS,CACnB,KAAK,SAAS,UAAU,GAAG,iBAAiB,IAC1C,kBAAkB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AAE7C,KAAK,aAAa,CAAC,KAAK,SAAS,UAAU,IAAI,SAAS,CACtD,SAAS,EACT,SAAS,EACT,UAAU,EACV,QAAQ,EACR,KAAK,CACN,CAAC;AAEF,wBAAgB,SAAS,IAAI,SAAS,CAErC;AAED,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC"}
|
|
@@ -15,13 +15,13 @@ const linkInputSchema = z.union([
|
|
|
15
15
|
internalLinkInputSchema,
|
|
16
16
|
directLinkInputSchema,
|
|
17
17
|
]);
|
|
18
|
-
const
|
|
19
|
-
z.string(),
|
|
20
|
-
z.
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
18
|
+
const resolvedLinkSchema = z.object({
|
|
19
|
+
href: z.string(),
|
|
20
|
+
title: z.string(),
|
|
21
|
+
});
|
|
22
|
+
const linkOutputSchema = z
|
|
23
|
+
.union([z.string(), resolvedLinkSchema])
|
|
24
|
+
.transform((value) => typeof value === "string" ? { href: value, title: "" } : value);
|
|
25
25
|
export function linkField() {
|
|
26
26
|
return makeLinkField(defaultFieldState);
|
|
27
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../../../../src/lib/fields/Link.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,EACL,WAAW,EACX,iBAAiB,EAOjB,kBAAkB,GACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEjC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,EAAE;IACX,aAAa,EAAE,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC;IAC9B,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjB,uBAAuB;IACvB,qBAAqB;CACtB,CAAC,CAAC;AAEH,MAAM,
|
|
1
|
+
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../../../../src/lib/fields/Link.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,EACL,WAAW,EACX,iBAAiB,EAOjB,kBAAkB,GACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEjC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,EAAE;IACX,aAAa,EAAE,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC;IAC9B,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjB,uBAAuB;IACvB,qBAAqB;CACtB,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,CAAC;KACvB,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC;KACvC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CACnB,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAC/D,CAAC;AAyBJ,MAAM,UAAU,SAAS;IACvB,OAAO,aAAa,CAAC,iBAAiB,CAAC,CAAC;AAC1C,CAAC;AAID,SAAS,aAAa,CAA2B,KAAY;IAC3D,MAAM,KAAK,GAAyB,WAAW,CAAC;QAC9C,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE;QAClC,KAAK;QACL,OAAO,EAAE;YACP,KAAK,EAAE,GAAG,EAAE,CAAC,eAAe;YAC5B,EAAE,EAAE,GAAG,EAAE,CAAC,eAAe;YACzB,MAAM,EAAE,GAAG,EAAE,CAAC,gBAAgB;SAC/B;KACF,CAAC,CAAC;IAEH,OAAO,kBAAkB,CAAC;QACxB,KAAK;QACL,OAAO,EAAE,CAA+B,SAAoB,EAAE,EAAE,CAC9D,aAAa,CAAC,SAAS,CAGtB;KACJ,CAAC,CAAC;AACL,CAAC"}
|