@datocms/cma-client 5.1.10 → 5.1.12

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 (253) hide show
  1. package/README.md +569 -0
  2. package/dist/cjs/fieldTypes/boolean.js +2 -2
  3. package/dist/cjs/fieldTypes/boolean.js.map +1 -1
  4. package/dist/cjs/fieldTypes/color.js +2 -2
  5. package/dist/cjs/fieldTypes/color.js.map +1 -1
  6. package/dist/cjs/fieldTypes/date.js +2 -3
  7. package/dist/cjs/fieldTypes/date.js.map +1 -1
  8. package/dist/cjs/fieldTypes/date_time.js +2 -2
  9. package/dist/cjs/fieldTypes/date_time.js.map +1 -1
  10. package/dist/cjs/fieldTypes/file.js +33 -5
  11. package/dist/cjs/fieldTypes/file.js.map +1 -1
  12. package/dist/cjs/fieldTypes/float.js +2 -2
  13. package/dist/cjs/fieldTypes/float.js.map +1 -1
  14. package/dist/cjs/fieldTypes/gallery.js +20 -5
  15. package/dist/cjs/fieldTypes/gallery.js.map +1 -1
  16. package/dist/cjs/fieldTypes/index.js +2 -2
  17. package/dist/cjs/fieldTypes/index.js.map +1 -1
  18. package/dist/cjs/fieldTypes/integer.js +2 -2
  19. package/dist/cjs/fieldTypes/integer.js.map +1 -1
  20. package/dist/cjs/fieldTypes/json.js +2 -3
  21. package/dist/cjs/fieldTypes/json.js.map +1 -1
  22. package/dist/cjs/fieldTypes/lat_lon.js +2 -2
  23. package/dist/cjs/fieldTypes/lat_lon.js.map +1 -1
  24. package/dist/cjs/fieldTypes/link.js +4 -4
  25. package/dist/cjs/fieldTypes/link.js.map +1 -1
  26. package/dist/cjs/fieldTypes/links.js +5 -3
  27. package/dist/cjs/fieldTypes/links.js.map +1 -1
  28. package/dist/cjs/fieldTypes/rich_text.js +18 -18
  29. package/dist/cjs/fieldTypes/rich_text.js.map +1 -1
  30. package/dist/cjs/fieldTypes/schema.js +3 -0
  31. package/dist/cjs/fieldTypes/schema.js.map +1 -0
  32. package/dist/cjs/fieldTypes/seo.js +2 -3
  33. package/dist/cjs/fieldTypes/seo.js.map +1 -1
  34. package/dist/cjs/fieldTypes/single_block.js +20 -19
  35. package/dist/cjs/fieldTypes/single_block.js.map +1 -1
  36. package/dist/cjs/fieldTypes/slug.js +2 -3
  37. package/dist/cjs/fieldTypes/slug.js.map +1 -1
  38. package/dist/cjs/fieldTypes/string.js +2 -2
  39. package/dist/cjs/fieldTypes/string.js.map +1 -1
  40. package/dist/cjs/fieldTypes/structured_text.js +17 -18
  41. package/dist/cjs/fieldTypes/structured_text.js.map +1 -1
  42. package/dist/cjs/fieldTypes/text.js +2 -3
  43. package/dist/cjs/fieldTypes/text.js.map +1 -1
  44. package/dist/cjs/fieldTypes/video.js +2 -2
  45. package/dist/cjs/fieldTypes/video.js.map +1 -1
  46. package/dist/cjs/generated/Client.js +1 -1
  47. package/dist/cjs/generated/resources/Item.js.map +1 -1
  48. package/dist/cjs/generated/resources/ScheduledPublication.js.map +1 -1
  49. package/dist/cjs/generated/resources/ScheduledUnpublishing.js.map +1 -1
  50. package/dist/cjs/generated/resources/Upload.js.map +1 -1
  51. package/dist/cjs/index.js +5 -4
  52. package/dist/cjs/index.js.map +1 -1
  53. package/dist/cjs/utilities/buildBlockRecord.js +1 -45
  54. package/dist/cjs/utilities/buildBlockRecord.js.map +1 -1
  55. package/dist/cjs/utilities/duplicateBlockRecord.js +49 -0
  56. package/dist/cjs/utilities/duplicateBlockRecord.js.map +1 -0
  57. package/dist/cjs/utilities/inspectItem.js +427 -0
  58. package/dist/cjs/utilities/inspectItem.js.map +1 -0
  59. package/dist/cjs/utilities/{blocks.js → nonRecursiveBlocks.js} +60 -234
  60. package/dist/cjs/utilities/nonRecursiveBlocks.js.map +1 -0
  61. package/dist/cjs/utilities/{fieldValue.js → normalizedFieldValues.js} +53 -41
  62. package/dist/cjs/utilities/normalizedFieldValues.js.map +1 -0
  63. package/dist/cjs/utilities/recursiveBlocks.js +73 -92
  64. package/dist/cjs/utilities/recursiveBlocks.js.map +1 -1
  65. package/dist/cjs/utilities/schemaRepository.js +2 -2
  66. package/dist/esm/fieldTypes/boolean.d.ts +1 -1
  67. package/dist/esm/fieldTypes/boolean.js +2 -2
  68. package/dist/esm/fieldTypes/boolean.js.map +1 -1
  69. package/dist/esm/fieldTypes/color.d.ts +1 -1
  70. package/dist/esm/fieldTypes/color.js +2 -2
  71. package/dist/esm/fieldTypes/color.js.map +1 -1
  72. package/dist/esm/fieldTypes/date.d.ts +1 -1
  73. package/dist/esm/fieldTypes/date.js +2 -3
  74. package/dist/esm/fieldTypes/date.js.map +1 -1
  75. package/dist/esm/fieldTypes/date_time.d.ts +1 -1
  76. package/dist/esm/fieldTypes/date_time.js +2 -2
  77. package/dist/esm/fieldTypes/date_time.js.map +1 -1
  78. package/dist/esm/fieldTypes/file.d.ts +68 -1
  79. package/dist/esm/fieldTypes/file.js +29 -3
  80. package/dist/esm/fieldTypes/file.js.map +1 -1
  81. package/dist/esm/fieldTypes/float.d.ts +1 -1
  82. package/dist/esm/fieldTypes/float.js +2 -2
  83. package/dist/esm/fieldTypes/float.js.map +1 -1
  84. package/dist/esm/fieldTypes/gallery.d.ts +27 -11
  85. package/dist/esm/fieldTypes/gallery.js +17 -4
  86. package/dist/esm/fieldTypes/gallery.js.map +1 -1
  87. package/dist/esm/fieldTypes/index.d.ts +2 -2
  88. package/dist/esm/fieldTypes/index.js +2 -2
  89. package/dist/esm/fieldTypes/index.js.map +1 -1
  90. package/dist/esm/fieldTypes/integer.d.ts +1 -1
  91. package/dist/esm/fieldTypes/integer.js +2 -2
  92. package/dist/esm/fieldTypes/integer.js.map +1 -1
  93. package/dist/esm/fieldTypes/json.d.ts +1 -1
  94. package/dist/esm/fieldTypes/json.js +2 -3
  95. package/dist/esm/fieldTypes/json.js.map +1 -1
  96. package/dist/esm/fieldTypes/lat_lon.d.ts +1 -1
  97. package/dist/esm/fieldTypes/lat_lon.js +2 -2
  98. package/dist/esm/fieldTypes/lat_lon.js.map +1 -1
  99. package/dist/esm/fieldTypes/link.d.ts +1 -1
  100. package/dist/esm/fieldTypes/link.js +4 -4
  101. package/dist/esm/fieldTypes/link.js.map +1 -1
  102. package/dist/esm/fieldTypes/links.d.ts +1 -1
  103. package/dist/esm/fieldTypes/links.js +5 -3
  104. package/dist/esm/fieldTypes/links.js.map +1 -1
  105. package/dist/esm/fieldTypes/rich_text.d.ts +9 -10
  106. package/dist/esm/fieldTypes/rich_text.js +13 -13
  107. package/dist/esm/fieldTypes/rich_text.js.map +1 -1
  108. package/dist/esm/fieldTypes/schema.d.ts +59 -0
  109. package/dist/esm/fieldTypes/schema.js +2 -0
  110. package/dist/esm/fieldTypes/schema.js.map +1 -0
  111. package/dist/esm/fieldTypes/seo.d.ts +1 -1
  112. package/dist/esm/fieldTypes/seo.js +2 -3
  113. package/dist/esm/fieldTypes/seo.js.map +1 -1
  114. package/dist/esm/fieldTypes/single_block.d.ts +31 -16
  115. package/dist/esm/fieldTypes/single_block.js +15 -14
  116. package/dist/esm/fieldTypes/single_block.js.map +1 -1
  117. package/dist/esm/fieldTypes/slug.d.ts +1 -1
  118. package/dist/esm/fieldTypes/slug.js +2 -3
  119. package/dist/esm/fieldTypes/slug.js.map +1 -1
  120. package/dist/esm/fieldTypes/string.d.ts +1 -1
  121. package/dist/esm/fieldTypes/string.js +2 -2
  122. package/dist/esm/fieldTypes/string.js.map +1 -1
  123. package/dist/esm/fieldTypes/structured_text.d.ts +15 -16
  124. package/dist/esm/fieldTypes/structured_text.js +12 -13
  125. package/dist/esm/fieldTypes/structured_text.js.map +1 -1
  126. package/dist/esm/fieldTypes/text.d.ts +1 -1
  127. package/dist/esm/fieldTypes/text.js +2 -3
  128. package/dist/esm/fieldTypes/text.js.map +1 -1
  129. package/dist/esm/fieldTypes/video.d.ts +1 -1
  130. package/dist/esm/fieldTypes/video.js +2 -2
  131. package/dist/esm/fieldTypes/video.js.map +1 -1
  132. package/dist/esm/generated/ApiTypes.d.ts +90 -980
  133. package/dist/esm/generated/Client.js +1 -1
  134. package/dist/esm/generated/RawApiTypes.d.ts +156 -999
  135. package/dist/esm/generated/resources/Field.d.ts +200 -200
  136. package/dist/esm/generated/resources/Item.d.ts +34 -34
  137. package/dist/esm/generated/resources/Item.js.map +1 -1
  138. package/dist/esm/generated/resources/ItemVersion.d.ts +3 -1
  139. package/dist/esm/generated/resources/ScheduledPublication.d.ts +3 -3
  140. package/dist/esm/generated/resources/ScheduledPublication.js.map +1 -1
  141. package/dist/esm/generated/resources/ScheduledUnpublishing.d.ts +3 -3
  142. package/dist/esm/generated/resources/ScheduledUnpublishing.js.map +1 -1
  143. package/dist/esm/generated/resources/Upload.d.ts +6 -6
  144. package/dist/esm/generated/resources/Upload.js.map +1 -1
  145. package/dist/esm/index.d.ts +5 -4
  146. package/dist/esm/index.js +5 -4
  147. package/dist/esm/index.js.map +1 -1
  148. package/dist/esm/utilities/buildBlockRecord.d.ts +3 -5
  149. package/dist/esm/utilities/buildBlockRecord.js +0 -43
  150. package/dist/esm/utilities/buildBlockRecord.js.map +1 -1
  151. package/dist/esm/utilities/duplicateBlockRecord.d.ts +6 -0
  152. package/dist/esm/utilities/duplicateBlockRecord.js +45 -0
  153. package/dist/esm/utilities/duplicateBlockRecord.js.map +1 -0
  154. package/dist/esm/utilities/inspectItem.d.ts +8 -0
  155. package/dist/esm/utilities/inspectItem.js +400 -0
  156. package/dist/esm/utilities/inspectItem.js.map +1 -0
  157. package/dist/esm/utilities/itemDefinition.d.ts +45 -23
  158. package/dist/esm/utilities/nonRecursiveBlocks.d.ts +114 -0
  159. package/dist/esm/utilities/{blocks.js → nonRecursiveBlocks.js} +52 -220
  160. package/dist/esm/utilities/nonRecursiveBlocks.js.map +1 -0
  161. package/dist/{types/utilities/fieldValue.d.ts → esm/utilities/normalizedFieldValues.d.ts} +15 -14
  162. package/dist/esm/utilities/{fieldValue.js → normalizedFieldValues.js} +39 -28
  163. package/dist/esm/utilities/normalizedFieldValues.js.map +1 -0
  164. package/dist/esm/utilities/recursiveBlocks.d.ts +124 -11
  165. package/dist/esm/utilities/recursiveBlocks.js +65 -84
  166. package/dist/esm/utilities/recursiveBlocks.js.map +1 -1
  167. package/dist/esm/utilities/schemaRepository.d.ts +2 -2
  168. package/dist/esm/utilities/schemaRepository.js +2 -2
  169. package/dist/types/fieldTypes/boolean.d.ts +1 -1
  170. package/dist/types/fieldTypes/color.d.ts +1 -1
  171. package/dist/types/fieldTypes/date.d.ts +1 -1
  172. package/dist/types/fieldTypes/date_time.d.ts +1 -1
  173. package/dist/types/fieldTypes/file.d.ts +68 -1
  174. package/dist/types/fieldTypes/float.d.ts +1 -1
  175. package/dist/types/fieldTypes/gallery.d.ts +27 -11
  176. package/dist/types/fieldTypes/index.d.ts +2 -2
  177. package/dist/types/fieldTypes/integer.d.ts +1 -1
  178. package/dist/types/fieldTypes/json.d.ts +1 -1
  179. package/dist/types/fieldTypes/lat_lon.d.ts +1 -1
  180. package/dist/types/fieldTypes/link.d.ts +1 -1
  181. package/dist/types/fieldTypes/links.d.ts +1 -1
  182. package/dist/types/fieldTypes/rich_text.d.ts +9 -10
  183. package/dist/types/fieldTypes/schema.d.ts +59 -0
  184. package/dist/types/fieldTypes/seo.d.ts +1 -1
  185. package/dist/types/fieldTypes/single_block.d.ts +31 -16
  186. package/dist/types/fieldTypes/slug.d.ts +1 -1
  187. package/dist/types/fieldTypes/string.d.ts +1 -1
  188. package/dist/types/fieldTypes/structured_text.d.ts +15 -16
  189. package/dist/types/fieldTypes/text.d.ts +1 -1
  190. package/dist/types/fieldTypes/video.d.ts +1 -1
  191. package/dist/types/generated/ApiTypes.d.ts +90 -980
  192. package/dist/types/generated/RawApiTypes.d.ts +156 -999
  193. package/dist/types/generated/resources/Field.d.ts +200 -200
  194. package/dist/types/generated/resources/Item.d.ts +34 -34
  195. package/dist/types/generated/resources/ItemVersion.d.ts +3 -1
  196. package/dist/types/generated/resources/ScheduledPublication.d.ts +3 -3
  197. package/dist/types/generated/resources/ScheduledUnpublishing.d.ts +3 -3
  198. package/dist/types/generated/resources/Upload.d.ts +6 -6
  199. package/dist/types/index.d.ts +5 -4
  200. package/dist/types/utilities/buildBlockRecord.d.ts +3 -5
  201. package/dist/types/utilities/duplicateBlockRecord.d.ts +6 -0
  202. package/dist/types/utilities/inspectItem.d.ts +8 -0
  203. package/dist/types/utilities/itemDefinition.d.ts +45 -23
  204. package/dist/types/utilities/nonRecursiveBlocks.d.ts +114 -0
  205. package/dist/{esm/utilities/fieldValue.d.ts → types/utilities/normalizedFieldValues.d.ts} +15 -14
  206. package/dist/types/utilities/recursiveBlocks.d.ts +124 -11
  207. package/dist/types/utilities/schemaRepository.d.ts +2 -2
  208. package/package.json +4 -4
  209. package/src/fieldTypes/boolean.ts +5 -3
  210. package/src/fieldTypes/color.ts +5 -3
  211. package/src/fieldTypes/date.ts +5 -4
  212. package/src/fieldTypes/date_time.ts +5 -3
  213. package/src/fieldTypes/file.ts +98 -4
  214. package/src/fieldTypes/float.ts +5 -3
  215. package/src/fieldTypes/gallery.ts +53 -20
  216. package/src/fieldTypes/index.ts +2 -3
  217. package/src/fieldTypes/integer.ts +5 -3
  218. package/src/fieldTypes/json.ts +5 -4
  219. package/src/fieldTypes/lat_lon.ts +5 -3
  220. package/src/fieldTypes/link.ts +7 -5
  221. package/src/fieldTypes/links.ts +8 -4
  222. package/src/fieldTypes/rich_text.ts +33 -31
  223. package/src/fieldTypes/schema.ts +657 -0
  224. package/src/fieldTypes/seo.ts +5 -4
  225. package/src/fieldTypes/single_block.ts +71 -46
  226. package/src/fieldTypes/slug.ts +5 -4
  227. package/src/fieldTypes/string.ts +5 -3
  228. package/src/fieldTypes/structured_text.ts +64 -58
  229. package/src/fieldTypes/text.ts +5 -4
  230. package/src/fieldTypes/video.ts +5 -3
  231. package/src/generated/ApiTypes.ts +217 -1880
  232. package/src/generated/Client.ts +1 -1
  233. package/src/generated/RawApiTypes.ts +272 -2113
  234. package/src/generated/resources/Item.ts +93 -187
  235. package/src/generated/resources/ScheduledPublication.ts +4 -15
  236. package/src/generated/resources/ScheduledUnpublishing.ts +4 -15
  237. package/src/generated/resources/Upload.ts +9 -32
  238. package/src/index.ts +5 -4
  239. package/src/utilities/buildBlockRecord.ts +4 -59
  240. package/src/utilities/duplicateBlockRecord.ts +52 -0
  241. package/src/utilities/inspectItem.ts +602 -0
  242. package/src/utilities/itemDefinition.ts +130 -92
  243. package/src/utilities/nonRecursiveBlocks.ts +406 -0
  244. package/src/utilities/{fieldValue.ts → normalizedFieldValues.ts} +70 -30
  245. package/src/utilities/recursiveBlocks.ts +484 -204
  246. package/src/utilities/schemaRepository.ts +2 -2
  247. package/dist/cjs/utilities/blocks.js.map +0 -1
  248. package/dist/cjs/utilities/fieldValue.js.map +0 -1
  249. package/dist/esm/utilities/blocks.d.ts +0 -180
  250. package/dist/esm/utilities/blocks.js.map +0 -1
  251. package/dist/esm/utilities/fieldValue.js.map +0 -1
  252. package/dist/types/utilities/blocks.d.ts +0 -180
  253. package/src/utilities/blocks.ts +0 -626
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.visitFieldValueAsync = exports.visitFieldValue = exports.everyFieldValueAsync = exports.everyFieldValue = exports.someFieldValueAsync = exports.someFieldValue = exports.filterFieldValueAsync = exports.filterFieldValue = exports.mapFieldValueAsync = exports.mapFieldValue = exports.entriesToFieldValue = exports.fieldValueToEntries = exports.isLocalized = void 0;
12
+ exports.visitNormalizedFieldValuesAsync = exports.visitNormalizedFieldValues = exports.everyNormalizedFieldValueAsync = exports.everyNormalizedFieldValue = exports.someNormalizedFieldValuesAsync = exports.someNormalizedFieldValues = exports.filterNormalizedFieldValuesAsync = exports.filterNormalizedFieldValues = exports.mapNormalizedFieldValuesAsync = exports.mapNormalizedFieldValues = exports.fromNormalizedFieldValueEntries = exports.toNormalizedFieldValueEntries = exports.isLocalizedFieldValue = exports.isLocalized = void 0;
13
13
  /**
14
14
  * Determines whether a DatoCMS field is localized or not.
15
15
  *
@@ -23,6 +23,18 @@ function isLocalized(field) {
23
23
  return 'attributes' in field ? field.attributes.localized : field.localized;
24
24
  }
25
25
  exports.isLocalized = isLocalized;
26
+ function isLocalizedFieldValue(value) {
27
+ if (typeof value !== 'object' || value === null || Array.isArray(value)) {
28
+ return false;
29
+ }
30
+ const keys = Object.keys(value);
31
+ if (keys.length === 0) {
32
+ return false;
33
+ }
34
+ const localePattern = /^[A-Za-z]{2,4}(-[A-Za-z]{4})?(-([A-Za-z]{2}|[0-9]{3}))?$/;
35
+ return keys.every((key) => localePattern.test(key));
36
+ }
37
+ exports.isLocalizedFieldValue = isLocalizedFieldValue;
26
38
  /**
27
39
  * Converts a field value (localized or non-localized) into a uniform array of entries.
28
40
  *
@@ -33,7 +45,7 @@ exports.isLocalized = isLocalized;
33
45
  * @param value - The field value to convert (either a localized object or direct value)
34
46
  * @returns Array of entries where each entry contains a locale (string for localized, undefined for non-localized) and the corresponding value
35
47
  */
36
- function fieldValueToEntries(field, value) {
48
+ function toNormalizedFieldValueEntries(field, value) {
37
49
  if (isLocalized(field)) {
38
50
  const localizedValue = value;
39
51
  return Object.entries(localizedValue).map(([locale, value]) => ({
@@ -43,11 +55,11 @@ function fieldValueToEntries(field, value) {
43
55
  }
44
56
  return [{ locale: undefined, value: value }];
45
57
  }
46
- exports.fieldValueToEntries = fieldValueToEntries;
58
+ exports.toNormalizedFieldValueEntries = toNormalizedFieldValueEntries;
47
59
  /**
48
60
  * Converts an array of possibly localized entries back into the appropriate field value format.
49
61
  *
50
- * This function is the inverse of `fieldValueToEntries`. It takes a uniform
62
+ * This function is the inverse of `toNormalizedFieldValueEntries`. It takes a uniform
51
63
  * array of entries and converts them back to either a localized object or a direct value,
52
64
  * depending on the field's localization setting.
53
65
  *
@@ -55,7 +67,7 @@ exports.fieldValueToEntries = fieldValueToEntries;
55
67
  * @param entries - Array of entries to convert back to field value format
56
68
  * @returns Either a localized object (for localized fields) or the direct value (for non-localized fields)
57
69
  */
58
- function entriesToFieldValue(field, entries) {
70
+ function fromNormalizedFieldValueEntries(field, entries) {
59
71
  if (isLocalized(field)) {
60
72
  return Object.fromEntries(entries.map(({ locale, value }) => [locale, value]));
61
73
  }
@@ -64,7 +76,7 @@ function entriesToFieldValue(field, entries) {
64
76
  }
65
77
  return entries[0].value;
66
78
  }
67
- exports.entriesToFieldValue = entriesToFieldValue;
79
+ exports.fromNormalizedFieldValueEntries = fromNormalizedFieldValueEntries;
68
80
  /**
69
81
  * Maps field values using a provided mapping function.
70
82
  * For localized fields, applies the mapping function to each locale value.
@@ -76,15 +88,15 @@ exports.entriesToFieldValue = entriesToFieldValue;
76
88
  * @param mapFn - The function to apply to each locale value or the direct value
77
89
  * @returns The mapped value with the same structure as the input
78
90
  */
79
- function mapFieldValue(field, value, mapFn) {
80
- const entries = fieldValueToEntries(field, value);
91
+ function mapNormalizedFieldValues(field, value, mapFn) {
92
+ const entries = toNormalizedFieldValueEntries(field, value);
81
93
  const mappedEntries = entries.map(({ locale, value }) => ({
82
94
  locale,
83
95
  value: mapFn(locale, value),
84
96
  }));
85
- return entriesToFieldValue(field, mappedEntries);
97
+ return fromNormalizedFieldValueEntries(field, mappedEntries);
86
98
  }
87
- exports.mapFieldValue = mapFieldValue;
99
+ exports.mapNormalizedFieldValues = mapNormalizedFieldValues;
88
100
  /**
89
101
  * Maps field values using a provided mapping function (async version).
90
102
  * For localized fields, applies the mapping function to each locale value.
@@ -96,19 +108,19 @@ exports.mapFieldValue = mapFieldValue;
96
108
  * @param mapFn - The function to apply to each locale value or the direct value
97
109
  * @returns The mapped value with the same structure as the input
98
110
  */
99
- function mapFieldValueAsync(field, value, mapFn) {
111
+ function mapNormalizedFieldValuesAsync(field, value, mapFn) {
100
112
  return __awaiter(this, void 0, void 0, function* () {
101
- const entries = fieldValueToEntries(field, value);
113
+ const entries = toNormalizedFieldValueEntries(field, value);
102
114
  const mappedEntries = yield Promise.all(entries.map(({ locale, value }) => __awaiter(this, void 0, void 0, function* () {
103
115
  return ({
104
116
  locale,
105
117
  value: yield mapFn(locale, value),
106
118
  });
107
119
  })));
108
- return entriesToFieldValue(field, mappedEntries);
120
+ return fromNormalizedFieldValueEntries(field, mappedEntries);
109
121
  });
110
122
  }
111
- exports.mapFieldValueAsync = mapFieldValueAsync;
123
+ exports.mapNormalizedFieldValuesAsync = mapNormalizedFieldValuesAsync;
112
124
  /**
113
125
  * Filters field values using a provided filter function.
114
126
  * For localized fields, filters each locale value.
@@ -119,16 +131,16 @@ exports.mapFieldValueAsync = mapFieldValueAsync;
119
131
  * @param filterFn - The function to test each locale value or the direct value
120
132
  * @returns The filtered value with the same structure as the input
121
133
  */
122
- function filterFieldValue(field, value, filterFn) {
134
+ function filterNormalizedFieldValues(field, value, filterFn) {
123
135
  var _a;
124
- const entries = fieldValueToEntries(field, value);
136
+ const entries = toNormalizedFieldValueEntries(field, value);
125
137
  const filteredEntries = entries.filter((entry) => filterFn(entry.locale, entry.value));
126
138
  if (isLocalized(field)) {
127
- return entriesToFieldValue(field, filteredEntries);
139
+ return fromNormalizedFieldValueEntries(field, filteredEntries);
128
140
  }
129
141
  return filteredEntries.length > 0 ? (_a = filteredEntries[0]) === null || _a === void 0 ? void 0 : _a.value : undefined;
130
142
  }
131
- exports.filterFieldValue = filterFieldValue;
143
+ exports.filterNormalizedFieldValues = filterNormalizedFieldValues;
132
144
  /**
133
145
  * Filters field values using a provided filter function (async version).
134
146
  * For localized fields, filters each locale value.
@@ -139,10 +151,10 @@ exports.filterFieldValue = filterFieldValue;
139
151
  * @param filterFn - The function to test each locale value or the direct value
140
152
  * @returns The filtered value with the same structure as the input
141
153
  */
142
- function filterFieldValueAsync(field, value, filterFn) {
154
+ function filterNormalizedFieldValuesAsync(field, value, filterFn) {
143
155
  var _a;
144
156
  return __awaiter(this, void 0, void 0, function* () {
145
- const entries = fieldValueToEntries(field, value);
157
+ const entries = toNormalizedFieldValueEntries(field, value);
146
158
  const results = yield Promise.all(entries.map(({ locale, value }) => __awaiter(this, void 0, void 0, function* () {
147
159
  return ({
148
160
  locale,
@@ -154,12 +166,12 @@ function filterFieldValueAsync(field, value, filterFn) {
154
166
  .filter(({ passed }) => passed)
155
167
  .map(({ locale, value }) => ({ locale, value }));
156
168
  if (isLocalized(field)) {
157
- return entriesToFieldValue(field, filteredEntries);
169
+ return fromNormalizedFieldValueEntries(field, filteredEntries);
158
170
  }
159
171
  return filteredEntries.length > 0 ? (_a = filteredEntries[0]) === null || _a === void 0 ? void 0 : _a.value : undefined;
160
172
  });
161
173
  }
162
- exports.filterFieldValueAsync = filterFieldValueAsync;
174
+ exports.filterNormalizedFieldValuesAsync = filterNormalizedFieldValuesAsync;
163
175
  /**
164
176
  * Tests whether at least one field value passes the test implemented by the provided function.
165
177
  * For localized fields, tests each locale value.
@@ -170,11 +182,11 @@ exports.filterFieldValueAsync = filterFieldValueAsync;
170
182
  * @param testFn - The function to test each locale value or the direct value
171
183
  * @returns true if at least one value passes the test, false otherwise
172
184
  */
173
- function someFieldValue(field, value, testFn) {
174
- const entries = fieldValueToEntries(field, value);
185
+ function someNormalizedFieldValues(field, value, testFn) {
186
+ const entries = toNormalizedFieldValueEntries(field, value);
175
187
  return entries.some(({ locale, value }) => testFn(locale, value));
176
188
  }
177
- exports.someFieldValue = someFieldValue;
189
+ exports.someNormalizedFieldValues = someNormalizedFieldValues;
178
190
  /**
179
191
  * Tests whether at least one field value passes the test implemented by the provided function (async version).
180
192
  * For localized fields, tests each locale value.
@@ -185,14 +197,14 @@ exports.someFieldValue = someFieldValue;
185
197
  * @param testFn - The function to test each locale value or the direct value
186
198
  * @returns true if at least one value passes the test, false otherwise
187
199
  */
188
- function someFieldValueAsync(field, value, testFn) {
200
+ function someNormalizedFieldValuesAsync(field, value, testFn) {
189
201
  return __awaiter(this, void 0, void 0, function* () {
190
- const entries = fieldValueToEntries(field, value);
202
+ const entries = toNormalizedFieldValueEntries(field, value);
191
203
  const results = yield Promise.all(entries.map(({ locale, value }) => testFn(locale, value)));
192
204
  return results.some((result) => result);
193
205
  });
194
206
  }
195
- exports.someFieldValueAsync = someFieldValueAsync;
207
+ exports.someNormalizedFieldValuesAsync = someNormalizedFieldValuesAsync;
196
208
  /**
197
209
  * Tests whether all field values pass the test implemented by the provided function.
198
210
  * For localized fields, tests each locale value.
@@ -203,10 +215,10 @@ exports.someFieldValueAsync = someFieldValueAsync;
203
215
  * @param testFn - The function to test each locale value or the direct value
204
216
  * @returns true if all values pass the test, false otherwise
205
217
  */
206
- function everyFieldValue(field, value, testFn) {
207
- return !someFieldValue(field, value, (locale, localeValue) => !testFn(locale, localeValue));
218
+ function everyNormalizedFieldValue(field, value, testFn) {
219
+ return !someNormalizedFieldValues(field, value, (locale, localeValue) => !testFn(locale, localeValue));
208
220
  }
209
- exports.everyFieldValue = everyFieldValue;
221
+ exports.everyNormalizedFieldValue = everyNormalizedFieldValue;
210
222
  /**
211
223
  * Tests whether all field values pass the test implemented by the provided function (async version).
212
224
  * For localized fields, tests each locale value.
@@ -217,12 +229,12 @@ exports.everyFieldValue = everyFieldValue;
217
229
  * @param testFn - The function to test each locale value or the direct value
218
230
  * @returns true if all values pass the test, false otherwise
219
231
  */
220
- function everyFieldValueAsync(field, value, testFn) {
232
+ function everyNormalizedFieldValueAsync(field, value, testFn) {
221
233
  return __awaiter(this, void 0, void 0, function* () {
222
- return !(yield someFieldValueAsync(field, value, (locale, localeValue) => __awaiter(this, void 0, void 0, function* () { return !(yield testFn(locale, localeValue)); })));
234
+ return !(yield someNormalizedFieldValuesAsync(field, value, (locale, localeValue) => __awaiter(this, void 0, void 0, function* () { return !(yield testFn(locale, localeValue)); })));
223
235
  });
224
236
  }
225
- exports.everyFieldValueAsync = everyFieldValueAsync;
237
+ exports.everyNormalizedFieldValueAsync = everyNormalizedFieldValueAsync;
226
238
  /**
227
239
  * Visits each field value with the provided function.
228
240
  * For localized fields, visits each locale value.
@@ -232,13 +244,13 @@ exports.everyFieldValueAsync = everyFieldValueAsync;
232
244
  * @param value - The field value (either localized object or direct value)
233
245
  * @param visitFn - The function to call for each locale value or the direct value
234
246
  */
235
- function visitFieldValue(field, value, visitFn) {
236
- const entries = fieldValueToEntries(field, value);
247
+ function visitNormalizedFieldValues(field, value, visitFn) {
248
+ const entries = toNormalizedFieldValueEntries(field, value);
237
249
  for (const { locale, value } of entries) {
238
250
  visitFn(locale, value);
239
251
  }
240
252
  }
241
- exports.visitFieldValue = visitFieldValue;
253
+ exports.visitNormalizedFieldValues = visitNormalizedFieldValues;
242
254
  /**
243
255
  * Visits each field value with the provided function (async version).
244
256
  * For localized fields, visits each locale value.
@@ -248,11 +260,11 @@ exports.visitFieldValue = visitFieldValue;
248
260
  * @param value - The field value (either localized object or direct value)
249
261
  * @param visitFn - The function to call for each locale value or the direct value
250
262
  */
251
- function visitFieldValueAsync(field, value, visitFn) {
263
+ function visitNormalizedFieldValuesAsync(field, value, visitFn) {
252
264
  return __awaiter(this, void 0, void 0, function* () {
253
- const entries = fieldValueToEntries(field, value);
265
+ const entries = toNormalizedFieldValueEntries(field, value);
254
266
  yield Promise.all(entries.map(({ locale, value }) => visitFn(locale, value)));
255
267
  });
256
268
  }
257
- exports.visitFieldValueAsync = visitFieldValueAsync;
258
- //# sourceMappingURL=fieldValue.js.map
269
+ exports.visitNormalizedFieldValuesAsync = visitNormalizedFieldValuesAsync;
270
+ //# sourceMappingURL=normalizedFieldValues.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizedFieldValues.js","sourceRoot":"","sources":["../../../src/utilities/normalizedFieldValues.ts"],"names":[],"mappings":"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"}
@@ -9,13 +9,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.mapBlocksInFieldValues = exports.everyBlockInFieldValues = exports.someBlocksInFieldValues = exports.reduceBlocksInFieldValues = exports.filterBlocksInFieldValues = exports.findAllBlocksInFieldValues = exports.visitBlocksInFieldValues = void 0;
12
+ exports.mapBlocksInNonLocalizedFieldValue = exports.everyBlockInNonLocalizedFieldValue = exports.someBlocksInNonLocalizedFieldValue = exports.reduceBlocksInNonLocalizedFieldValue = exports.filterBlocksInNonLocalizedFieldValue = exports.findAllBlocksInNonLocalizedFieldValue = exports.visitBlocksInNonLocalizedFieldValue = void 0;
13
13
  const fieldTypes_1 = require("../fieldTypes");
14
- const blocks_1 = require("./blocks");
15
- const fieldValue_1 = require("./fieldValue");
16
- function visitBlocksInFieldValues(schemaRepository, field, value, visitor, path = []) {
14
+ const nonRecursiveBlocks_1 = require("./nonRecursiveBlocks");
15
+ function visitBlocksInNonLocalizedFieldValue(nonLocalizedFieldValue, fieldType, schemaRepository, visitor, path = []) {
17
16
  return __awaiter(this, void 0, void 0, function* () {
18
- yield (0, blocks_1.nonRecursiveVisitBlocksInFieldValueAsync)(field, value, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
17
+ yield (0, nonRecursiveBlocks_1.nonRecursiveVisitBlocksInNonLocalizedFieldValueAsync)(fieldType, nonLocalizedFieldValue, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
19
18
  yield visitor(block, [...path, ...innerPath]);
20
19
  if (!(0, fieldTypes_1.isItemWithOptionalIdAndMeta)(block)) {
21
20
  return;
@@ -23,108 +22,93 @@ function visitBlocksInFieldValues(schemaRepository, field, value, visitor, path
23
22
  const itemType = yield schemaRepository.getRawItemTypeById(block.relationships.item_type.data.id);
24
23
  const fields = yield schemaRepository.getRawItemTypeFields(itemType);
25
24
  for (const field of fields) {
26
- yield (0, fieldValue_1.visitFieldValueAsync)(field, block.attributes[field.attributes.api_key], (locale, valueForLocale) => visitBlocksInFieldValues(schemaRepository, field, valueForLocale, visitor, [
27
- ...path,
28
- ...innerPath,
29
- 'attributes',
30
- field.attributes.api_key,
31
- ...(locale ? [locale] : []),
32
- ]));
25
+ yield visitBlocksInNonLocalizedFieldValue(block.attributes[field.attributes.api_key], field.attributes.field_type, schemaRepository, visitor, [...path, ...innerPath, 'attributes', field.attributes.api_key]);
33
26
  }
34
27
  }));
35
28
  });
36
29
  }
37
- exports.visitBlocksInFieldValues = visitBlocksInFieldValues;
38
- function findAllBlocksInFieldValues(schemaRepository, field, value, predicate, path = []) {
30
+ exports.visitBlocksInNonLocalizedFieldValue = visitBlocksInNonLocalizedFieldValue;
31
+ function findAllBlocksInNonLocalizedFieldValue(nonLocalizedFieldValue, fieldType, schemaRepository, predicate, path = []) {
39
32
  return __awaiter(this, void 0, void 0, function* () {
40
33
  const results = [];
41
- const directMatches = yield (0, blocks_1.nonRecursiveFindAllBlocksInFieldValueAsync)(field, value, (block, innerPath) => __awaiter(this, void 0, void 0, function* () { return yield predicate(block, [...path, ...innerPath]); }));
34
+ const directMatches = yield (0, nonRecursiveBlocks_1.nonRecursiveFindAllBlocksInNonLocalizedFieldValueAsync)(fieldType, nonLocalizedFieldValue, (block, innerPath) => __awaiter(this, void 0, void 0, function* () { return yield predicate(block, [...path, ...innerPath]); }));
42
35
  results.push(...directMatches.map(({ item, path: innerPath }) => ({
43
36
  item,
44
37
  path: [...path, ...innerPath],
45
38
  })));
46
- yield (0, blocks_1.nonRecursiveVisitBlocksInFieldValueAsync)(field, value, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
39
+ yield (0, nonRecursiveBlocks_1.nonRecursiveVisitBlocksInNonLocalizedFieldValueAsync)(fieldType, nonLocalizedFieldValue, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
47
40
  if (!(0, fieldTypes_1.isItemWithOptionalIdAndMeta)(block)) {
48
41
  return;
49
42
  }
50
43
  const itemType = yield schemaRepository.getRawItemTypeById(block.relationships.item_type.data.id);
51
44
  const fields = yield schemaRepository.getRawItemTypeFields(itemType);
52
45
  for (const field of fields) {
53
- yield (0, fieldValue_1.visitFieldValueAsync)(field, block.attributes[field.attributes.api_key], (locale, valueForLocale) => __awaiter(this, void 0, void 0, function* () {
54
- const nestedResults = yield findAllBlocksInFieldValues(schemaRepository, field, valueForLocale, predicate, [
55
- ...path,
56
- ...innerPath,
57
- 'attributes',
58
- field.attributes.api_key,
59
- ...(locale ? [locale] : []),
60
- ]);
61
- results.push(...nestedResults);
62
- }));
46
+ const nestedResults = yield findAllBlocksInNonLocalizedFieldValue(block.attributes[field.attributes.api_key], field.attributes.field_type, schemaRepository, predicate, [...path, ...innerPath, 'attributes', field.attributes.api_key]);
47
+ results.push(...nestedResults);
63
48
  }
64
49
  }));
65
50
  return results;
66
51
  });
67
52
  }
68
- exports.findAllBlocksInFieldValues = findAllBlocksInFieldValues;
69
- function filterBlocksInFieldValues(schemaRepository, field, value, predicate, path = []) {
53
+ exports.findAllBlocksInNonLocalizedFieldValue = findAllBlocksInNonLocalizedFieldValue;
54
+ function filterBlocksInNonLocalizedFieldValue(nonLocalizedFieldValue, fieldType, schemaRepository, predicate, options = {}, path = []) {
70
55
  return __awaiter(this, void 0, void 0, function* () {
71
- return (0, blocks_1.nonRecursiveFilterBlocksInFieldValueAsync)(field, value, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
56
+ const { traversalDirection = 'top-down' } = options;
57
+ const mapperFunc = (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
72
58
  const blockPath = [...path, ...innerPath];
73
- const passes = yield predicate(block, blockPath);
74
- if (!passes) {
75
- return false;
76
- }
77
59
  if (!(0, fieldTypes_1.isItemWithOptionalIdAndMeta)(block)) {
78
- return true;
60
+ return block;
79
61
  }
80
62
  const itemType = yield schemaRepository.getRawItemTypeById(block.relationships.item_type.data.id);
81
63
  const fields = yield schemaRepository.getRawItemTypeFields(itemType);
64
+ if (traversalDirection === 'top-down') {
65
+ const blockCopy = Object.assign(Object.assign({}, block), { attributes: Object.assign({}, block.attributes) });
66
+ for (const field of fields) {
67
+ blockCopy.attributes[field.attributes.api_key] =
68
+ yield filterBlocksInNonLocalizedFieldValue(blockCopy.attributes[field.attributes.api_key], field.attributes.field_type, schemaRepository, predicate, options, [...blockPath, 'attributes', field.attributes.api_key]);
69
+ }
70
+ return blockCopy;
71
+ }
72
+ const blockCopy = Object.assign(Object.assign({}, block), { attributes: Object.assign({}, block.attributes) });
82
73
  for (const field of fields) {
83
- block.attributes[field.attributes.api_key] = yield (0, fieldValue_1.mapFieldValueAsync)(field, block.attributes[field.attributes.api_key], (locale, valueForLocale) => filterBlocksInFieldValues(schemaRepository, field, valueForLocale, predicate, [
84
- ...blockPath,
85
- 'attributes',
86
- field.attributes.api_key,
87
- ...(locale ? [locale] : []),
88
- ]));
74
+ blockCopy.attributes[field.attributes.api_key] =
75
+ yield filterBlocksInNonLocalizedFieldValue(blockCopy.attributes[field.attributes.api_key], field.attributes.field_type, schemaRepository, predicate, options, [...blockPath, 'attributes', field.attributes.api_key]);
89
76
  }
90
- return true;
77
+ return blockCopy;
78
+ });
79
+ const mappedValue = yield (0, nonRecursiveBlocks_1.nonRecursiveMapBlocksInNonLocalizedFieldValueAsync)(fieldType, nonLocalizedFieldValue, mapperFunc);
80
+ return (0, nonRecursiveBlocks_1.nonRecursiveFilterBlocksInNonLocalizedFieldValueAsync)(fieldType, mappedValue, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
81
+ const blockPath = [...path, ...innerPath];
82
+ return yield predicate(block, blockPath);
91
83
  }));
92
84
  });
93
85
  }
94
- exports.filterBlocksInFieldValues = filterBlocksInFieldValues;
95
- function reduceBlocksInFieldValues(schemaRepository, field, value, reducer, initialValue, path = []) {
86
+ exports.filterBlocksInNonLocalizedFieldValue = filterBlocksInNonLocalizedFieldValue;
87
+ function reduceBlocksInNonLocalizedFieldValue(nonLocalizedFieldValue, fieldType, schemaRepository, reducer, initialValue, path = []) {
96
88
  return __awaiter(this, void 0, void 0, function* () {
97
- let accumulator = yield (0, blocks_1.nonRecursiveReduceBlocksInFieldValueAsync)(field, value, (acc, block, innerPath) => __awaiter(this, void 0, void 0, function* () { return yield reducer(acc, block, [...path, ...innerPath]); }), initialValue);
98
- yield (0, blocks_1.nonRecursiveVisitBlocksInFieldValueAsync)(field, value, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
89
+ let accumulator = yield (0, nonRecursiveBlocks_1.nonRecursiveReduceBlocksInNonLocalizedFieldValueAsync)(fieldType, nonLocalizedFieldValue, (acc, block, innerPath) => __awaiter(this, void 0, void 0, function* () { return yield reducer(acc, block, [...path, ...innerPath]); }), initialValue);
90
+ yield (0, nonRecursiveBlocks_1.nonRecursiveVisitBlocksInNonLocalizedFieldValueAsync)(fieldType, nonLocalizedFieldValue, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
99
91
  if (!(0, fieldTypes_1.isItemWithOptionalIdAndMeta)(block)) {
100
92
  return;
101
93
  }
102
94
  const itemType = yield schemaRepository.getRawItemTypeById(block.relationships.item_type.data.id);
103
95
  const fields = yield schemaRepository.getRawItemTypeFields(itemType);
104
96
  for (const field of fields) {
105
- yield (0, fieldValue_1.visitFieldValueAsync)(field, block.attributes[field.attributes.api_key], (locale, valueForLocale) => __awaiter(this, void 0, void 0, function* () {
106
- accumulator = yield reduceBlocksInFieldValues(schemaRepository, field, valueForLocale, reducer, accumulator, [
107
- ...path,
108
- ...innerPath,
109
- 'attributes',
110
- field.attributes.api_key,
111
- ...(locale ? [locale] : []),
112
- ]);
113
- }));
97
+ accumulator = yield reduceBlocksInNonLocalizedFieldValue(block.attributes[field.attributes.api_key], field.attributes.field_type, schemaRepository, reducer, accumulator, [...path, ...innerPath, 'attributes', field.attributes.api_key]);
114
98
  }
115
99
  }));
116
100
  return accumulator;
117
101
  });
118
102
  }
119
- exports.reduceBlocksInFieldValues = reduceBlocksInFieldValues;
120
- function someBlocksInFieldValues(schemaRepository, field, value, predicate, path = []) {
103
+ exports.reduceBlocksInNonLocalizedFieldValue = reduceBlocksInNonLocalizedFieldValue;
104
+ function someBlocksInNonLocalizedFieldValue(nonLocalizedFieldValue, fieldType, schemaRepository, predicate, path = []) {
121
105
  return __awaiter(this, void 0, void 0, function* () {
122
- const directMatch = yield (0, blocks_1.nonRecursiveSomeBlocksInFieldValueAsync)(field, value, (block, innerPath) => __awaiter(this, void 0, void 0, function* () { return yield predicate(block, [...path, ...innerPath]); }));
106
+ const directMatch = yield (0, nonRecursiveBlocks_1.nonRecursiveSomeBlocksInNonLocalizedFieldValueAsync)(fieldType, nonLocalizedFieldValue, (block, innerPath) => __awaiter(this, void 0, void 0, function* () { return yield predicate(block, [...path, ...innerPath]); }));
123
107
  if (directMatch) {
124
108
  return true;
125
109
  }
126
110
  let found = false;
127
- yield (0, blocks_1.nonRecursiveVisitBlocksInFieldValueAsync)(field, value, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
111
+ yield (0, nonRecursiveBlocks_1.nonRecursiveVisitBlocksInNonLocalizedFieldValueAsync)(fieldType, nonLocalizedFieldValue, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
128
112
  if (found || !(0, fieldTypes_1.isItemWithOptionalIdAndMeta)(block)) {
129
113
  return;
130
114
  }
@@ -133,54 +117,51 @@ function someBlocksInFieldValues(schemaRepository, field, value, predicate, path
133
117
  for (const field of fields) {
134
118
  if (found)
135
119
  break;
136
- yield (0, fieldValue_1.visitFieldValueAsync)(field, block.attributes[field.attributes.api_key], (locale, valueForLocale) => __awaiter(this, void 0, void 0, function* () {
137
- if (found)
138
- return;
139
- const nestedMatch = yield someBlocksInFieldValues(schemaRepository, field, valueForLocale, predicate, [
140
- ...path,
141
- ...innerPath,
142
- 'attributes',
143
- field.attributes.api_key,
144
- ...(locale ? [locale] : []),
145
- ]);
146
- if (nestedMatch) {
147
- found = true;
148
- }
149
- }));
120
+ const nestedMatch = yield someBlocksInNonLocalizedFieldValue(block.attributes[field.attributes.api_key], field.attributes.field_type, schemaRepository, predicate, [...path, ...innerPath, 'attributes', field.attributes.api_key]);
121
+ if (nestedMatch) {
122
+ found = true;
123
+ }
150
124
  }
151
125
  }));
152
126
  return found;
153
127
  });
154
128
  }
155
- exports.someBlocksInFieldValues = someBlocksInFieldValues;
156
- function everyBlockInFieldValues(schemaRepository, field, value, predicate, path = []) {
129
+ exports.someBlocksInNonLocalizedFieldValue = someBlocksInNonLocalizedFieldValue;
130
+ function everyBlockInNonLocalizedFieldValue(nonLocalizedFieldValue, fieldType, schemaRepository, predicate, path = []) {
157
131
  return __awaiter(this, void 0, void 0, function* () {
158
- return !(yield someBlocksInFieldValues(schemaRepository, field, value, (item, path) => __awaiter(this, void 0, void 0, function* () { return !(yield predicate(item, path)); }), path));
132
+ return !(yield someBlocksInNonLocalizedFieldValue(nonLocalizedFieldValue, fieldType, schemaRepository, (item, path) => __awaiter(this, void 0, void 0, function* () { return !(yield predicate(item, path)); }), path));
159
133
  });
160
134
  }
161
- exports.everyBlockInFieldValues = everyBlockInFieldValues;
162
- function mapBlocksInFieldValues(schemaRepository, field, value, mapper, path = []) {
135
+ exports.everyBlockInNonLocalizedFieldValue = everyBlockInNonLocalizedFieldValue;
136
+ function mapBlocksInNonLocalizedFieldValue(nonLocalizedFieldValue, fieldType, schemaRepository, mapper, options = {}, path = []) {
163
137
  return __awaiter(this, void 0, void 0, function* () {
164
- return (0, blocks_1.nonRecursiveMapBlocksInFieldValueAsync)(field, value, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
165
- const newBlock = yield mapper(block, [...path, ...innerPath]);
166
- if (!(0, fieldTypes_1.isItemWithOptionalIdAndMeta)(newBlock)) {
167
- return newBlock;
138
+ const { traversalDirection = 'top-down' } = options;
139
+ return (0, nonRecursiveBlocks_1.nonRecursiveMapBlocksInNonLocalizedFieldValueAsync)(fieldType, nonLocalizedFieldValue, (block, innerPath) => __awaiter(this, void 0, void 0, function* () {
140
+ const blockPath = [...path, ...innerPath];
141
+ if (!(0, fieldTypes_1.isItemWithOptionalIdAndMeta)(block)) {
142
+ return yield mapper(block, blockPath);
168
143
  }
169
- const itemType = yield schemaRepository.getRawItemTypeById(newBlock.relationships.item_type.data.id);
144
+ const itemType = yield schemaRepository.getRawItemTypeById(block.relationships.item_type.data.id);
170
145
  const fields = yield schemaRepository.getRawItemTypeFields(itemType);
146
+ if (traversalDirection === 'top-down') {
147
+ const newBlock = yield mapper(block, blockPath);
148
+ if (!(0, fieldTypes_1.isItemWithOptionalIdAndMeta)(newBlock)) {
149
+ return newBlock;
150
+ }
151
+ for (const field of fields) {
152
+ newBlock.attributes[field.attributes.api_key] =
153
+ yield mapBlocksInNonLocalizedFieldValue(newBlock.attributes[field.attributes.api_key], field.attributes.field_type, schemaRepository, mapper, options, [...blockPath, 'attributes', field.attributes.api_key]);
154
+ }
155
+ return newBlock;
156
+ }
157
+ const blockCopy = Object.assign({}, block);
171
158
  for (const field of fields) {
172
- newBlock.attributes[field.attributes.api_key] =
173
- yield (0, fieldValue_1.mapFieldValueAsync)(field, newBlock.attributes[field.attributes.api_key], (locale, valueForLocale) => mapBlocksInFieldValues(schemaRepository, field, valueForLocale, mapper, [
174
- ...path,
175
- ...innerPath,
176
- 'attributes',
177
- field.attributes.api_key,
178
- ...(locale ? [locale] : []),
179
- ]));
159
+ blockCopy.attributes[field.attributes.api_key] =
160
+ yield mapBlocksInNonLocalizedFieldValue(blockCopy.attributes[field.attributes.api_key], field.attributes.field_type, schemaRepository, mapper, options, [...blockPath, 'attributes', field.attributes.api_key]);
180
161
  }
181
- return newBlock;
162
+ return yield mapper(blockCopy, blockPath);
182
163
  }));
183
164
  });
184
165
  }
185
- exports.mapBlocksInFieldValues = mapBlocksInFieldValues;
166
+ exports.mapBlocksInNonLocalizedFieldValue = mapBlocksInNonLocalizedFieldValue;
186
167
  //# sourceMappingURL=recursiveBlocks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"recursiveBlocks.js","sourceRoot":"","sources":["../../../src/utilities/recursiveBlocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recursiveBlocks.js","sourceRoot":"","sources":["../../../src/utilities/recursiveBlocks.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,7 @@ const rest_client_utils_1 = require("@datocms/rest-client-utils");
27
27
  * - **Caching schema entities**: Automatically caches item types, fields, fieldsets,
28
28
  * and plugins after the first API request, returning cached results on subsequent calls
29
29
  * - **Complex traversal operations**: Essential when using utilities like
30
- * `mapBlocksInFieldValues()` that need to repeatedly lookup block models and fields
30
+ * `mapBlocksInNonLocalizedFieldValue()` that need to repeatedly lookup block models and fields
31
31
  * while traversing nested content structures
32
32
  * - **Bulk operations**: Ideal for scripts that process multiple records of different
33
33
  * types and need efficient access to schema information
@@ -59,7 +59,7 @@ const rest_client_utils_1 = require("@datocms/rest-client-utils");
59
59
  * const sameBlogPost = await schemaRepository.getItemTypeByApiKey('blog_post');
60
60
  *
61
61
  * // Pass the repository to utilities that need schema information
62
- * await mapBlocksInFieldValues(schemaRepository, record, (block) => {
62
+ * await mapBlocksInNonLocalizedFieldValue(schemaRepository, record, (block) => {
63
63
  * // The utility will use the cached schema data internally
64
64
  * });
65
65
  * ```
@@ -1,4 +1,4 @@
1
- import type { LocalizedFieldValue } from '../utilities/fieldValue';
1
+ import { type LocalizedFieldValue } from '../utilities/normalizedFieldValues';
2
2
  import type { BooleanEditorConfiguration } from './appearance/boolean';
3
3
  import type { BooleanRadioGroupEditorConfiguration } from './appearance/boolean_radio_group';
4
4
  export type BooleanFieldValue = boolean | null;
@@ -1,9 +1,9 @@
1
+ import { isLocalizedFieldValue, } from '../utilities/normalizedFieldValues';
1
2
  export function isBooleanFieldValue(value) {
2
3
  return typeof value === 'boolean' || value === null;
3
4
  }
4
5
  export function isLocalizedBooleanFieldValue(value) {
5
- return (typeof value === 'object' &&
6
- value !== null &&
6
+ return (isLocalizedFieldValue(value) &&
7
7
  Object.values(value).every(isBooleanFieldValue));
8
8
  }
9
9
  //# sourceMappingURL=boolean.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"boolean.js","sourceRoot":"","sources":["../../../src/fieldTypes/boolean.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,mBAAmB,CACjC,KAAc;IAEd,OAAO,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,KAAc;IAEd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAChD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"boolean.js","sourceRoot":"","sources":["../../../src/fieldTypes/boolean.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,qBAAqB,GACtB,MAAM,oCAAoC,CAAC;AAM5C,MAAM,UAAU,mBAAmB,CACjC,KAAc;IAEd,OAAO,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,KAAc;IAEd,OAAO,CACL,qBAAqB,CAAC,KAAK,CAAC;QAC5B,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAChD,CAAC;AACJ,CAAC"}