@datocms/cma-client 6.0.0 → 6.1.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/cjs/generated/Client.js +1 -1
- package/dist/esm/generated/Client.js +25 -23
- package/dist/esm/generated/Client.js.map +1 -1
- package/dist/esm/generated/resources/BuildEvent.js +5 -44
- package/dist/esm/generated/resources/BuildEvent.js.map +1 -1
- package/dist/esm/generated/resources/Item.js +5 -44
- package/dist/esm/generated/resources/Item.js.map +1 -1
- package/dist/esm/generated/resources/ItemVersion.js +5 -44
- package/dist/esm/generated/resources/ItemVersion.js.map +1 -1
- package/dist/esm/generated/resources/SearchIndexEvent.js +5 -44
- package/dist/esm/generated/resources/SearchIndexEvent.js.map +1 -1
- package/dist/esm/generated/resources/SearchResult.js +5 -44
- package/dist/esm/generated/resources/SearchResult.js.map +1 -1
- package/dist/esm/generated/resources/Upload.js +5 -44
- package/dist/esm/generated/resources/Upload.js.map +1 -1
- package/dist/esm/generated/resources/UploadSmartTag.js +5 -44
- package/dist/esm/generated/resources/UploadSmartTag.js.map +1 -1
- package/dist/esm/generated/resources/UploadTag.js +5 -44
- package/dist/esm/generated/resources/UploadTag.js.map +1 -1
- package/dist/esm/generated/resources/WebhookCall.js +5 -44
- package/dist/esm/generated/resources/WebhookCall.js.map +1 -1
- package/dist/esm/resources/Role.js +23 -25
- package/dist/esm/resources/Role.js.map +1 -1
- package/dist/esm/resources/Upload.js +12 -83
- package/dist/esm/resources/Upload.js.map +1 -1
- package/dist/esm/utilities/buildBlockRecord.js +4 -1
- package/dist/esm/utilities/buildBlockRecord.js.map +1 -1
- package/dist/esm/utilities/defaultFieldMetadata.js +16 -25
- package/dist/esm/utilities/defaultFieldMetadata.js.map +1 -1
- package/dist/esm/utilities/duplicateBlockRecord.js +25 -47
- package/dist/esm/utilities/duplicateBlockRecord.js.map +1 -1
- package/dist/esm/utilities/environmentSettings.js +3 -14
- package/dist/esm/utilities/environmentSettings.js.map +1 -1
- package/dist/esm/utilities/inspectItem.js +1 -12
- package/dist/esm/utilities/inspectItem.js.map +1 -1
- package/dist/esm/utilities/nonRecursiveBlocks.js +109 -260
- package/dist/esm/utilities/nonRecursiveBlocks.js.map +1 -1
- package/dist/esm/utilities/normalizedFieldValues.js +30 -53
- package/dist/esm/utilities/normalizedFieldValues.js.map +1 -1
- package/dist/esm/utilities/recursiveBlocks.js +108 -131
- package/dist/esm/utilities/recursiveBlocks.js.map +1 -1
- package/dist/esm/utilities/schemaRepository.js +266 -333
- package/dist/esm/utilities/schemaRepository.js.map +1 -1
- package/package.json +3 -3
- package/src/generated/Client.ts +1 -1
|
@@ -21,67 +21,37 @@
|
|
|
21
21
|
* All functions come in both sync and async variants to support different use cases,
|
|
22
22
|
* particularly useful when block transformations require async operations like API calls.
|
|
23
23
|
*/
|
|
24
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
25
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
26
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
27
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
28
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
29
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
30
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
31
|
-
});
|
|
32
|
-
};
|
|
33
|
-
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
34
|
-
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
35
|
-
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
36
|
-
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
37
|
-
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
|
|
38
|
-
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
|
|
39
|
-
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
|
|
40
|
-
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
|
|
41
|
-
function fulfill(value) { resume("next", value); }
|
|
42
|
-
function reject(value) { resume("throw", value); }
|
|
43
|
-
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
44
|
-
};
|
|
45
|
-
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
46
|
-
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
47
|
-
var m = o[Symbol.asyncIterator], i;
|
|
48
|
-
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
49
|
-
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
50
|
-
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
51
|
-
};
|
|
52
24
|
import { collectNodesAsync, filterNodesAsync, mapNodes, mapNodesAsync, } from 'datocms-structured-text-utils';
|
|
53
|
-
function iterateBlocksAsync(fieldType, nonLocalizedFieldValue) {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
yield yield __await({ item, path: [index] });
|
|
61
|
-
}
|
|
25
|
+
async function* iterateBlocksAsync(fieldType, nonLocalizedFieldValue) {
|
|
26
|
+
if (fieldType === 'rich_text') {
|
|
27
|
+
const richTextValue = nonLocalizedFieldValue;
|
|
28
|
+
if (richTextValue) {
|
|
29
|
+
for (let index = 0; index < richTextValue.length; index++) {
|
|
30
|
+
const item = richTextValue[index];
|
|
31
|
+
yield { item, path: [index] };
|
|
62
32
|
}
|
|
63
|
-
return yield __await(void 0);
|
|
64
33
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
if (fieldType === 'single_block') {
|
|
37
|
+
const singleBlockValue = nonLocalizedFieldValue;
|
|
38
|
+
if (singleBlockValue) {
|
|
39
|
+
yield { item: singleBlockValue, path: [] };
|
|
71
40
|
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
if (fieldType === 'structured_text') {
|
|
44
|
+
const structuredTextValue = nonLocalizedFieldValue;
|
|
45
|
+
if (structuredTextValue) {
|
|
46
|
+
const foundNodes = await collectNodesAsync(structuredTextValue.document, async (node) => node.type === 'block' || node.type === 'inlineBlock');
|
|
47
|
+
for (const { node, path } of foundNodes) {
|
|
48
|
+
if (node.type === 'block' || node.type === 'inlineBlock') {
|
|
49
|
+
yield { item: node.item, path };
|
|
80
50
|
}
|
|
81
51
|
}
|
|
82
|
-
return yield __await(void 0);
|
|
83
52
|
}
|
|
84
|
-
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
85
55
|
}
|
|
86
56
|
/**
|
|
87
57
|
* Visit every block in a field value, calling the visitor function for each block found.
|
|
@@ -92,30 +62,10 @@ function iterateBlocksAsync(fieldType, nonLocalizedFieldValue) {
|
|
|
92
62
|
* @param visitor - Asynchronous function called for each block. Receives the block item and its path
|
|
93
63
|
* @returns Promise that resolves when all blocks have been visited
|
|
94
64
|
*/
|
|
95
|
-
export function nonRecursiveVisitBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, visitor) {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
for (var _d = true, _e = __asyncValues(iterateBlocksAsync(fieldType, nonLocalizedFieldValue)), _f; _f = yield _e.next(), _a = _f.done, !_a;) {
|
|
100
|
-
_c = _f.value;
|
|
101
|
-
_d = false;
|
|
102
|
-
try {
|
|
103
|
-
const { item, path } = _c;
|
|
104
|
-
yield visitor(item, path);
|
|
105
|
-
}
|
|
106
|
-
finally {
|
|
107
|
-
_d = true;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
112
|
-
finally {
|
|
113
|
-
try {
|
|
114
|
-
if (!_d && !_a && (_b = _e.return)) yield _b.call(_e);
|
|
115
|
-
}
|
|
116
|
-
finally { if (e_1) throw e_1.error; }
|
|
117
|
-
}
|
|
118
|
-
});
|
|
65
|
+
export async function nonRecursiveVisitBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, visitor) {
|
|
66
|
+
for await (const { item, path } of iterateBlocksAsync(fieldType, nonLocalizedFieldValue)) {
|
|
67
|
+
await visitor(item, path);
|
|
68
|
+
}
|
|
119
69
|
}
|
|
120
70
|
/**
|
|
121
71
|
* Transform blocks in a field value by applying a mapping function to each block.
|
|
@@ -147,7 +97,7 @@ export function nonRecursiveMapBlocksInNonLocalizedFieldValue(fieldType, nonLoca
|
|
|
147
97
|
schema: 'dast',
|
|
148
98
|
document: mapNodes(structuredTextValue.document, (node, _parent, path) => {
|
|
149
99
|
if (node.type === 'block' || node.type === 'inlineBlock') {
|
|
150
|
-
return
|
|
100
|
+
return { ...node, item: mapper(node.item, path) };
|
|
151
101
|
}
|
|
152
102
|
return node;
|
|
153
103
|
}),
|
|
@@ -165,35 +115,33 @@ export function nonRecursiveMapBlocksInNonLocalizedFieldValue(fieldType, nonLoca
|
|
|
165
115
|
* @param mapper - Asynchronous function that transforms each block. Receives block item and path, returns new block
|
|
166
116
|
* @returns Promise that resolves to the new field value with transformed blocks
|
|
167
117
|
*/
|
|
168
|
-
export function nonRecursiveMapBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, mapper) {
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
return null;
|
|
184
|
-
}
|
|
185
|
-
return {
|
|
186
|
-
schema: 'dast',
|
|
187
|
-
document: yield mapNodesAsync(structuredTextValue.document, (node, _parent, path) => __awaiter(this, void 0, void 0, function* () {
|
|
188
|
-
if (node.type === 'block' || node.type === 'inlineBlock') {
|
|
189
|
-
return Object.assign(Object.assign({}, node), { item: yield mapper(node.item, path) });
|
|
190
|
-
}
|
|
191
|
-
return node;
|
|
192
|
-
})),
|
|
193
|
-
};
|
|
118
|
+
export async function nonRecursiveMapBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, mapper) {
|
|
119
|
+
if (fieldType === 'rich_text') {
|
|
120
|
+
const richTextValue = nonLocalizedFieldValue;
|
|
121
|
+
return richTextValue
|
|
122
|
+
? await Promise.all(richTextValue.map((item, index) => mapper(item, [index])))
|
|
123
|
+
: richTextValue;
|
|
124
|
+
}
|
|
125
|
+
if (fieldType === 'single_block') {
|
|
126
|
+
const singleBlockValue = nonLocalizedFieldValue;
|
|
127
|
+
return singleBlockValue ? await mapper(singleBlockValue, []) : null;
|
|
128
|
+
}
|
|
129
|
+
if (fieldType === 'structured_text') {
|
|
130
|
+
const structuredTextValue = nonLocalizedFieldValue;
|
|
131
|
+
if (!structuredTextValue) {
|
|
132
|
+
return null;
|
|
194
133
|
}
|
|
195
|
-
return
|
|
196
|
-
|
|
134
|
+
return {
|
|
135
|
+
schema: 'dast',
|
|
136
|
+
document: await mapNodesAsync(structuredTextValue.document, async (node, _parent, path) => {
|
|
137
|
+
if (node.type === 'block' || node.type === 'inlineBlock') {
|
|
138
|
+
return { ...node, item: await mapper(node.item, path) };
|
|
139
|
+
}
|
|
140
|
+
return node;
|
|
141
|
+
}),
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
return nonLocalizedFieldValue;
|
|
197
145
|
}
|
|
198
146
|
/**
|
|
199
147
|
* Find all blocks that match the predicate function.
|
|
@@ -204,34 +152,14 @@ export function nonRecursiveMapBlocksInNonLocalizedFieldValueAsync(fieldType, no
|
|
|
204
152
|
* @param predicate - Asynchronous function that tests each block. Should return true for matching blocks
|
|
205
153
|
* @returns Promise that resolves to an array of objects, each containing a matching block and its path
|
|
206
154
|
*/
|
|
207
|
-
export function nonRecursiveFindAllBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, predicate) {
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
for (var _d = true, _e = __asyncValues(iterateBlocksAsync(fieldType, nonLocalizedFieldValue)), _f; _f = yield _e.next(), _a = _f.done, !_a;) {
|
|
213
|
-
_c = _f.value;
|
|
214
|
-
_d = false;
|
|
215
|
-
try {
|
|
216
|
-
const { item, path } = _c;
|
|
217
|
-
if (yield predicate(item, path)) {
|
|
218
|
-
results.push({ item, path });
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
finally {
|
|
222
|
-
_d = true;
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
227
|
-
finally {
|
|
228
|
-
try {
|
|
229
|
-
if (!_d && !_a && (_b = _e.return)) yield _b.call(_e);
|
|
230
|
-
}
|
|
231
|
-
finally { if (e_2) throw e_2.error; }
|
|
155
|
+
export async function nonRecursiveFindAllBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, predicate) {
|
|
156
|
+
const results = [];
|
|
157
|
+
for await (const { item, path } of iterateBlocksAsync(fieldType, nonLocalizedFieldValue)) {
|
|
158
|
+
if (await predicate(item, path)) {
|
|
159
|
+
results.push({ item, path });
|
|
232
160
|
}
|
|
233
|
-
|
|
234
|
-
|
|
161
|
+
}
|
|
162
|
+
return results;
|
|
235
163
|
}
|
|
236
164
|
/**
|
|
237
165
|
* Filter blocks in a field value, removing those that don't match the predicate.
|
|
@@ -243,80 +171,43 @@ export function nonRecursiveFindAllBlocksInNonLocalizedFieldValueAsync(fieldType
|
|
|
243
171
|
* @param predicate - Asynchronous function that tests each block. Blocks returning false are removed
|
|
244
172
|
* @returns Promise that resolves to the new field value with filtered blocks
|
|
245
173
|
*/
|
|
246
|
-
export function nonRecursiveFilterBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, predicate) {
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
for (var _g = true, _h = __asyncValues(iterateBlocksAsync(fieldType, nonLocalizedFieldValue)), _j; _j = yield _h.next(), _a = _j.done, !_a;) {
|
|
253
|
-
_c = _j.value;
|
|
254
|
-
_g = false;
|
|
255
|
-
try {
|
|
256
|
-
const { item, path } = _c;
|
|
257
|
-
if (yield predicate(item, path)) {
|
|
258
|
-
filteredItems.push(item);
|
|
259
|
-
}
|
|
260
|
-
}
|
|
261
|
-
finally {
|
|
262
|
-
_g = true;
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
267
|
-
finally {
|
|
268
|
-
try {
|
|
269
|
-
if (!_g && !_a && (_b = _h.return)) yield _b.call(_h);
|
|
270
|
-
}
|
|
271
|
-
finally { if (e_3) throw e_3.error; }
|
|
174
|
+
export async function nonRecursiveFilterBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, predicate) {
|
|
175
|
+
if (fieldType === 'rich_text') {
|
|
176
|
+
const filteredItems = [];
|
|
177
|
+
for await (const { item, path } of iterateBlocksAsync(fieldType, nonLocalizedFieldValue)) {
|
|
178
|
+
if (await predicate(item, path)) {
|
|
179
|
+
filteredItems.push(item);
|
|
272
180
|
}
|
|
273
|
-
return filteredItems;
|
|
274
181
|
}
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
const { item, path } = _f;
|
|
282
|
-
if (yield predicate(item, path)) {
|
|
283
|
-
return item;
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
finally {
|
|
287
|
-
_k = true;
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
}
|
|
291
|
-
catch (e_4_1) { e_4 = { error: e_4_1 }; }
|
|
292
|
-
finally {
|
|
293
|
-
try {
|
|
294
|
-
if (!_k && !_d && (_e = _l.return)) yield _e.call(_l);
|
|
295
|
-
}
|
|
296
|
-
finally { if (e_4) throw e_4.error; }
|
|
182
|
+
return filteredItems;
|
|
183
|
+
}
|
|
184
|
+
if (fieldType === 'single_block') {
|
|
185
|
+
for await (const { item, path } of iterateBlocksAsync(fieldType, nonLocalizedFieldValue)) {
|
|
186
|
+
if (await predicate(item, path)) {
|
|
187
|
+
return item;
|
|
297
188
|
}
|
|
189
|
+
}
|
|
190
|
+
return null;
|
|
191
|
+
}
|
|
192
|
+
if (fieldType === 'structured_text') {
|
|
193
|
+
const structuredTextValue = nonLocalizedFieldValue;
|
|
194
|
+
if (!structuredTextValue) {
|
|
298
195
|
return null;
|
|
299
196
|
}
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
return null;
|
|
197
|
+
const filteredDocument = await filterNodesAsync(structuredTextValue.document, async (node, _parent, path) => {
|
|
198
|
+
if (node.type === 'block' || node.type === 'inlineBlock') {
|
|
199
|
+
return await predicate(node.item, path);
|
|
304
200
|
}
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
}
|
|
316
|
-
: null;
|
|
317
|
-
}
|
|
318
|
-
return nonLocalizedFieldValue;
|
|
319
|
-
});
|
|
201
|
+
return true;
|
|
202
|
+
});
|
|
203
|
+
return filteredDocument
|
|
204
|
+
? {
|
|
205
|
+
schema: 'dast',
|
|
206
|
+
document: filteredDocument,
|
|
207
|
+
}
|
|
208
|
+
: null;
|
|
209
|
+
}
|
|
210
|
+
return nonLocalizedFieldValue;
|
|
320
211
|
}
|
|
321
212
|
/**
|
|
322
213
|
* Reduce all blocks in a field value to a single value by applying a reducer function.
|
|
@@ -329,32 +220,12 @@ export function nonRecursiveFilterBlocksInNonLocalizedFieldValueAsync(fieldType,
|
|
|
329
220
|
* @param initialValue - The initial value for the accumulator
|
|
330
221
|
* @returns Promise that resolves to the final accumulated value
|
|
331
222
|
*/
|
|
332
|
-
export function nonRecursiveReduceBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, reducer, initialValue) {
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
_c = _f.value;
|
|
339
|
-
_d = false;
|
|
340
|
-
try {
|
|
341
|
-
const { item, path } = _c;
|
|
342
|
-
accumulator = yield reducer(accumulator, item, path);
|
|
343
|
-
}
|
|
344
|
-
finally {
|
|
345
|
-
_d = true;
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
}
|
|
349
|
-
catch (e_5_1) { e_5 = { error: e_5_1 }; }
|
|
350
|
-
finally {
|
|
351
|
-
try {
|
|
352
|
-
if (!_d && !_a && (_b = _e.return)) yield _b.call(_e);
|
|
353
|
-
}
|
|
354
|
-
finally { if (e_5) throw e_5.error; }
|
|
355
|
-
}
|
|
356
|
-
return accumulator;
|
|
357
|
-
});
|
|
223
|
+
export async function nonRecursiveReduceBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, reducer, initialValue) {
|
|
224
|
+
let accumulator = initialValue;
|
|
225
|
+
for await (const { item, path } of iterateBlocksAsync(fieldType, nonLocalizedFieldValue)) {
|
|
226
|
+
accumulator = await reducer(accumulator, item, path);
|
|
227
|
+
}
|
|
228
|
+
return accumulator;
|
|
358
229
|
}
|
|
359
230
|
/**
|
|
360
231
|
* Check if any block in the non-localized field value matches the predicate function.
|
|
@@ -365,33 +236,13 @@ export function nonRecursiveReduceBlocksInNonLocalizedFieldValueAsync(fieldType,
|
|
|
365
236
|
* @param predicate - Asynchronous function that tests each block. Should return true for matching blocks
|
|
366
237
|
* @returns Promise that resolves to true if any block matches, false otherwise
|
|
367
238
|
*/
|
|
368
|
-
export function nonRecursiveSomeBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, predicate) {
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
for (var _d = true, _e = __asyncValues(iterateBlocksAsync(fieldType, nonLocalizedFieldValue)), _f; _f = yield _e.next(), _a = _f.done, !_a;) {
|
|
373
|
-
_c = _f.value;
|
|
374
|
-
_d = false;
|
|
375
|
-
try {
|
|
376
|
-
const { item, path } = _c;
|
|
377
|
-
if (yield predicate(item, path)) {
|
|
378
|
-
return true;
|
|
379
|
-
}
|
|
380
|
-
}
|
|
381
|
-
finally {
|
|
382
|
-
_d = true;
|
|
383
|
-
}
|
|
384
|
-
}
|
|
239
|
+
export async function nonRecursiveSomeBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, predicate) {
|
|
240
|
+
for await (const { item, path } of iterateBlocksAsync(fieldType, nonLocalizedFieldValue)) {
|
|
241
|
+
if (await predicate(item, path)) {
|
|
242
|
+
return true;
|
|
385
243
|
}
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
try {
|
|
389
|
-
if (!_d && !_a && (_b = _e.return)) yield _b.call(_e);
|
|
390
|
-
}
|
|
391
|
-
finally { if (e_6) throw e_6.error; }
|
|
392
|
-
}
|
|
393
|
-
return false;
|
|
394
|
-
});
|
|
244
|
+
}
|
|
245
|
+
return false;
|
|
395
246
|
}
|
|
396
247
|
/**
|
|
397
248
|
* Check if every block in the non-localized field value matches the predicate function.
|
|
@@ -402,11 +253,9 @@ export function nonRecursiveSomeBlocksInNonLocalizedFieldValueAsync(fieldType, n
|
|
|
402
253
|
* @param predicate - Asynchronous function that tests each block. Should return true for valid blocks
|
|
403
254
|
* @returns Promise that resolves to true if all blocks match, false otherwise
|
|
404
255
|
*/
|
|
405
|
-
export function nonRecursiveEveryBlockInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, predicate) {
|
|
406
|
-
return
|
|
407
|
-
return !(
|
|
408
|
-
|
|
409
|
-
})));
|
|
410
|
-
});
|
|
256
|
+
export async function nonRecursiveEveryBlockInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, predicate) {
|
|
257
|
+
return !(await nonRecursiveSomeBlocksInNonLocalizedFieldValueAsync(fieldType, nonLocalizedFieldValue, async (item, path) => {
|
|
258
|
+
return !(await predicate(item, path));
|
|
259
|
+
}));
|
|
411
260
|
}
|
|
412
261
|
//# sourceMappingURL=nonRecursiveBlocks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nonRecursiveBlocks.js","sourceRoot":"","sources":["../../../src/utilities/nonRecursiveBlocks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG
|
|
1
|
+
{"version":3,"file":"nonRecursiveBlocks.js","sourceRoot":"","sources":["../../../src/utilities/nonRecursiveBlocks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
/**
|
|
11
2
|
* Determines whether a DatoCMS field is localized or not.
|
|
12
3
|
*
|
|
@@ -100,17 +91,13 @@ export function mapNormalizedFieldValues(localizedOrNonLocalizedFieldValue, fiel
|
|
|
100
91
|
* @param mapFn - The function to apply to each locale value or the direct value
|
|
101
92
|
* @returns The mapped value with the same structure as the input
|
|
102
93
|
*/
|
|
103
|
-
export function mapNormalizedFieldValuesAsync(localizedOrNonLocalizedFieldValue, field, mapFn) {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
});
|
|
111
|
-
})));
|
|
112
|
-
return fromNormalizedFieldValueEntries(mappedEntries, field);
|
|
113
|
-
});
|
|
94
|
+
export async function mapNormalizedFieldValuesAsync(localizedOrNonLocalizedFieldValue, field, mapFn) {
|
|
95
|
+
const entries = toNormalizedFieldValueEntries(localizedOrNonLocalizedFieldValue, field);
|
|
96
|
+
const mappedEntries = await Promise.all(entries.map(async ({ locale, value }) => ({
|
|
97
|
+
locale,
|
|
98
|
+
value: await mapFn(locale, value),
|
|
99
|
+
})));
|
|
100
|
+
return fromNormalizedFieldValueEntries(mappedEntries, field);
|
|
114
101
|
}
|
|
115
102
|
/**
|
|
116
103
|
* Filters field values using a provided filter function.
|
|
@@ -141,25 +128,21 @@ export function filterNormalizedFieldValues(localizedOrNonLocalizedFieldValue, f
|
|
|
141
128
|
* @param filterFn - The function to test each locale value or the direct value
|
|
142
129
|
* @returns The filtered value with the same structure as the input
|
|
143
130
|
*/
|
|
144
|
-
export function filterNormalizedFieldValuesAsync(localizedOrNonLocalizedFieldValue, field, filterFn) {
|
|
131
|
+
export async function filterNormalizedFieldValuesAsync(localizedOrNonLocalizedFieldValue, field, filterFn) {
|
|
145
132
|
var _a;
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
})));
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
return fromNormalizedFieldValueEntries(filteredEntries, field);
|
|
160
|
-
}
|
|
161
|
-
return filteredEntries.length > 0 ? (_a = filteredEntries[0]) === null || _a === void 0 ? void 0 : _a.value : undefined;
|
|
162
|
-
});
|
|
133
|
+
const entries = toNormalizedFieldValueEntries(localizedOrNonLocalizedFieldValue, field);
|
|
134
|
+
const results = await Promise.all(entries.map(async ({ locale, value }) => ({
|
|
135
|
+
locale,
|
|
136
|
+
value,
|
|
137
|
+
passed: await filterFn(locale, value),
|
|
138
|
+
})));
|
|
139
|
+
const filteredEntries = results
|
|
140
|
+
.filter(({ passed }) => passed)
|
|
141
|
+
.map(({ locale, value }) => ({ locale, value }));
|
|
142
|
+
if (isLocalized(field)) {
|
|
143
|
+
return fromNormalizedFieldValueEntries(filteredEntries, field);
|
|
144
|
+
}
|
|
145
|
+
return filteredEntries.length > 0 ? (_a = filteredEntries[0]) === null || _a === void 0 ? void 0 : _a.value : undefined;
|
|
163
146
|
}
|
|
164
147
|
/**
|
|
165
148
|
* Tests whether at least one field value passes the test implemented by the provided function.
|
|
@@ -185,12 +168,10 @@ export function someNormalizedFieldValues(localizedOrNonLocalizedFieldValue, fie
|
|
|
185
168
|
* @param testFn - The function to test each locale value or the direct value
|
|
186
169
|
* @returns true if at least one value passes the test, false otherwise
|
|
187
170
|
*/
|
|
188
|
-
export function someNormalizedFieldValuesAsync(localizedOrNonLocalizedFieldValue, field, testFn) {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
return results.some((result) => result);
|
|
193
|
-
});
|
|
171
|
+
export async function someNormalizedFieldValuesAsync(localizedOrNonLocalizedFieldValue, field, testFn) {
|
|
172
|
+
const entries = toNormalizedFieldValueEntries(localizedOrNonLocalizedFieldValue, field);
|
|
173
|
+
const results = await Promise.all(entries.map(({ locale, value }) => testFn(locale, value)));
|
|
174
|
+
return results.some((result) => result);
|
|
194
175
|
}
|
|
195
176
|
/**
|
|
196
177
|
* Tests whether all field values pass the test implemented by the provided function.
|
|
@@ -215,10 +196,8 @@ export function everyNormalizedFieldValue(localizedOrNonLocalizedFieldValue, fie
|
|
|
215
196
|
* @param testFn - The function to test each locale value or the direct value
|
|
216
197
|
* @returns true if all values pass the test, false otherwise
|
|
217
198
|
*/
|
|
218
|
-
export function everyNormalizedFieldValueAsync(localizedOrNonLocalizedFieldValue, field, testFn) {
|
|
219
|
-
return
|
|
220
|
-
return !(yield someNormalizedFieldValuesAsync(localizedOrNonLocalizedFieldValue, field, (locale, localeValue) => __awaiter(this, void 0, void 0, function* () { return !(yield testFn(locale, localeValue)); })));
|
|
221
|
-
});
|
|
199
|
+
export async function everyNormalizedFieldValueAsync(localizedOrNonLocalizedFieldValue, field, testFn) {
|
|
200
|
+
return !(await someNormalizedFieldValuesAsync(localizedOrNonLocalizedFieldValue, field, async (locale, localeValue) => !(await testFn(locale, localeValue))));
|
|
222
201
|
}
|
|
223
202
|
/**
|
|
224
203
|
* Visits each field value with the provided function.
|
|
@@ -244,10 +223,8 @@ export function visitNormalizedFieldValues(value, field, visitFn) {
|
|
|
244
223
|
* @param field - The DatoCMS field definition
|
|
245
224
|
* @param visitFn - The function to call for each locale value or the direct value
|
|
246
225
|
*/
|
|
247
|
-
export function visitNormalizedFieldValuesAsync(localizedOrNonLocalizedFieldValue, field, visitFn) {
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
yield Promise.all(entries.map(({ locale, value }) => visitFn(locale, value)));
|
|
251
|
-
});
|
|
226
|
+
export async function visitNormalizedFieldValuesAsync(localizedOrNonLocalizedFieldValue, field, visitFn) {
|
|
227
|
+
const entries = toNormalizedFieldValueEntries(localizedOrNonLocalizedFieldValue, field);
|
|
228
|
+
await Promise.all(entries.map(({ locale, value }) => visitFn(locale, value)));
|
|
252
229
|
}
|
|
253
230
|
//# sourceMappingURL=normalizedFieldValues.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalizedFieldValues.js","sourceRoot":"","sources":["../../../src/utilities/normalizedFieldValues.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"normalizedFieldValues.js","sourceRoot":"","sources":["../../../src/utilities/normalizedFieldValues.ts"],"names":[],"mappings":"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"}
|