@datocms/cma-client 5.0.0 → 5.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.
Files changed (847) hide show
  1. package/dist/cjs/BaseResource.js +3 -4
  2. package/dist/cjs/BaseResource.js.map +1 -1
  3. package/dist/cjs/buildClient.js +1 -1
  4. package/dist/cjs/buildClient.js.map +1 -1
  5. package/dist/cjs/fieldTypes/appearance/boolean.js +3 -0
  6. package/dist/cjs/fieldTypes/appearance/boolean.js.map +1 -0
  7. package/dist/cjs/fieldTypes/appearance/boolean_radio_group.js +3 -0
  8. package/dist/cjs/fieldTypes/appearance/boolean_radio_group.js.map +1 -0
  9. package/dist/cjs/fieldTypes/appearance/color_picker.js +3 -0
  10. package/dist/cjs/fieldTypes/appearance/color_picker.js.map +1 -0
  11. package/dist/cjs/fieldTypes/appearance/date_picker.js +3 -0
  12. package/dist/cjs/fieldTypes/appearance/date_picker.js.map +1 -0
  13. package/dist/cjs/fieldTypes/appearance/date_time_picker.js +3 -0
  14. package/dist/cjs/fieldTypes/appearance/date_time_picker.js.map +1 -0
  15. package/dist/cjs/fieldTypes/appearance/file.js +3 -0
  16. package/dist/cjs/fieldTypes/appearance/file.js.map +1 -0
  17. package/dist/cjs/fieldTypes/appearance/float.js +3 -0
  18. package/dist/cjs/fieldTypes/appearance/float.js.map +1 -0
  19. package/dist/cjs/fieldTypes/appearance/framed_single_block.js +3 -0
  20. package/dist/cjs/fieldTypes/appearance/framed_single_block.js.map +1 -0
  21. package/dist/cjs/fieldTypes/appearance/frameless_single_block.js +3 -0
  22. package/dist/cjs/fieldTypes/appearance/frameless_single_block.js.map +1 -0
  23. package/dist/cjs/fieldTypes/appearance/gallery.js +3 -0
  24. package/dist/cjs/fieldTypes/appearance/gallery.js.map +1 -0
  25. package/dist/cjs/fieldTypes/appearance/index.js +47 -0
  26. package/dist/cjs/fieldTypes/appearance/index.js.map +1 -0
  27. package/dist/cjs/fieldTypes/appearance/integer.js +3 -0
  28. package/dist/cjs/fieldTypes/appearance/integer.js.map +1 -0
  29. package/dist/cjs/fieldTypes/appearance/json.js +3 -0
  30. package/dist/cjs/fieldTypes/appearance/json.js.map +1 -0
  31. package/dist/cjs/fieldTypes/appearance/link_embed.js +3 -0
  32. package/dist/cjs/fieldTypes/appearance/link_embed.js.map +1 -0
  33. package/dist/cjs/fieldTypes/appearance/link_select.js +3 -0
  34. package/dist/cjs/fieldTypes/appearance/link_select.js.map +1 -0
  35. package/dist/cjs/fieldTypes/appearance/links_embed.js +3 -0
  36. package/dist/cjs/fieldTypes/appearance/links_embed.js.map +1 -0
  37. package/dist/cjs/fieldTypes/appearance/links_select.js +3 -0
  38. package/dist/cjs/fieldTypes/appearance/links_select.js.map +1 -0
  39. package/dist/cjs/fieldTypes/appearance/map.js +3 -0
  40. package/dist/cjs/fieldTypes/appearance/map.js.map +1 -0
  41. package/dist/cjs/fieldTypes/appearance/markdown.js +3 -0
  42. package/dist/cjs/fieldTypes/appearance/markdown.js.map +1 -0
  43. package/dist/cjs/fieldTypes/appearance/rich_text.js +3 -0
  44. package/dist/cjs/fieldTypes/appearance/rich_text.js.map +1 -0
  45. package/dist/cjs/fieldTypes/appearance/seo.js +3 -0
  46. package/dist/cjs/fieldTypes/appearance/seo.js.map +1 -0
  47. package/dist/cjs/fieldTypes/appearance/single_line.js +3 -0
  48. package/dist/cjs/fieldTypes/appearance/single_line.js.map +1 -0
  49. package/dist/cjs/fieldTypes/appearance/slug.js +3 -0
  50. package/dist/cjs/fieldTypes/appearance/slug.js.map +1 -0
  51. package/dist/cjs/fieldTypes/appearance/string_checkbox_group.js +3 -0
  52. package/dist/cjs/fieldTypes/appearance/string_checkbox_group.js.map +1 -0
  53. package/dist/cjs/fieldTypes/appearance/string_multi_select.js +3 -0
  54. package/dist/cjs/fieldTypes/appearance/string_multi_select.js.map +1 -0
  55. package/dist/cjs/fieldTypes/appearance/string_radio_group.js +3 -0
  56. package/dist/cjs/fieldTypes/appearance/string_radio_group.js.map +1 -0
  57. package/dist/cjs/fieldTypes/appearance/string_select.js +3 -0
  58. package/dist/cjs/fieldTypes/appearance/string_select.js.map +1 -0
  59. package/dist/cjs/fieldTypes/appearance/structured_text.js +3 -0
  60. package/dist/cjs/fieldTypes/appearance/structured_text.js.map +1 -0
  61. package/dist/cjs/fieldTypes/appearance/textarea.js +3 -0
  62. package/dist/cjs/fieldTypes/appearance/textarea.js.map +1 -0
  63. package/dist/cjs/fieldTypes/appearance/video.js +3 -0
  64. package/dist/cjs/fieldTypes/appearance/video.js.map +1 -0
  65. package/dist/cjs/fieldTypes/appearance/wysiwyg.js +3 -0
  66. package/dist/cjs/fieldTypes/appearance/wysiwyg.js.map +1 -0
  67. package/dist/cjs/fieldTypes/boolean.js +8 -0
  68. package/dist/cjs/fieldTypes/boolean.js.map +1 -0
  69. package/dist/cjs/fieldTypes/color.js +15 -0
  70. package/dist/cjs/fieldTypes/color.js.map +1 -0
  71. package/dist/cjs/fieldTypes/date.js +10 -0
  72. package/dist/cjs/fieldTypes/date.js.map +1 -0
  73. package/dist/cjs/fieldTypes/date_time.js +11 -0
  74. package/dist/cjs/fieldTypes/date_time.js.map +1 -0
  75. package/dist/cjs/fieldTypes/file.js +10 -0
  76. package/dist/cjs/fieldTypes/file.js.map +1 -0
  77. package/dist/cjs/fieldTypes/float.js +8 -0
  78. package/dist/cjs/fieldTypes/float.js.map +1 -0
  79. package/dist/cjs/fieldTypes/gallery.js +11 -0
  80. package/dist/cjs/fieldTypes/gallery.js.map +1 -0
  81. package/dist/cjs/fieldTypes/index.js +39 -0
  82. package/dist/cjs/fieldTypes/index.js.map +1 -0
  83. package/dist/cjs/fieldTypes/integer.js +8 -0
  84. package/dist/cjs/fieldTypes/integer.js.map +1 -0
  85. package/dist/cjs/fieldTypes/json.js +18 -0
  86. package/dist/cjs/fieldTypes/json.js.map +1 -0
  87. package/dist/cjs/fieldTypes/lat_lon.js +13 -0
  88. package/dist/cjs/fieldTypes/lat_lon.js.map +1 -0
  89. package/dist/cjs/fieldTypes/link.js +8 -0
  90. package/dist/cjs/fieldTypes/link.js.map +1 -0
  91. package/dist/cjs/fieldTypes/links.js +10 -0
  92. package/dist/cjs/fieldTypes/links.js.map +1 -0
  93. package/dist/cjs/fieldTypes/rich_text.js +53 -0
  94. package/dist/cjs/fieldTypes/rich_text.js.map +1 -0
  95. package/dist/cjs/fieldTypes/seo.js +16 -0
  96. package/dist/cjs/fieldTypes/seo.js.map +1 -0
  97. package/dist/cjs/fieldTypes/single_block.js +72 -0
  98. package/dist/cjs/fieldTypes/single_block.js.map +1 -0
  99. package/dist/cjs/fieldTypes/slug.js +10 -0
  100. package/dist/cjs/fieldTypes/slug.js.map +1 -0
  101. package/dist/cjs/fieldTypes/string.js +8 -0
  102. package/dist/cjs/fieldTypes/string.js.map +1 -0
  103. package/dist/cjs/fieldTypes/structured_text.js +87 -0
  104. package/dist/cjs/fieldTypes/structured_text.js.map +1 -0
  105. package/dist/cjs/fieldTypes/text.js +8 -0
  106. package/dist/cjs/fieldTypes/text.js.map +1 -0
  107. package/dist/cjs/fieldTypes/validators/date_range.js +3 -0
  108. package/dist/cjs/fieldTypes/validators/date_range.js.map +1 -0
  109. package/dist/cjs/fieldTypes/validators/date_time_range.js +3 -0
  110. package/dist/cjs/fieldTypes/validators/date_time_range.js.map +1 -0
  111. package/dist/cjs/fieldTypes/validators/description_length.js +3 -0
  112. package/dist/cjs/fieldTypes/validators/description_length.js.map +1 -0
  113. package/dist/cjs/fieldTypes/validators/enum.js +3 -0
  114. package/dist/cjs/fieldTypes/validators/enum.js.map +1 -0
  115. package/dist/cjs/fieldTypes/validators/extension.js +3 -0
  116. package/dist/cjs/fieldTypes/validators/extension.js.map +1 -0
  117. package/dist/cjs/fieldTypes/validators/file_size.js +3 -0
  118. package/dist/cjs/fieldTypes/validators/file_size.js.map +1 -0
  119. package/dist/cjs/fieldTypes/validators/format.js +3 -0
  120. package/dist/cjs/fieldTypes/validators/format.js.map +1 -0
  121. package/dist/cjs/fieldTypes/validators/image_aspect_ratio.js +3 -0
  122. package/dist/cjs/fieldTypes/validators/image_aspect_ratio.js.map +1 -0
  123. package/dist/cjs/fieldTypes/validators/image_dimensions.js +3 -0
  124. package/dist/cjs/fieldTypes/validators/image_dimensions.js.map +1 -0
  125. package/dist/cjs/fieldTypes/validators/index.js +44 -0
  126. package/dist/cjs/fieldTypes/validators/index.js.map +1 -0
  127. package/dist/cjs/fieldTypes/validators/item_item_type.js +3 -0
  128. package/dist/cjs/fieldTypes/validators/item_item_type.js.map +1 -0
  129. package/dist/cjs/fieldTypes/validators/items_item_type.js +3 -0
  130. package/dist/cjs/fieldTypes/validators/items_item_type.js.map +1 -0
  131. package/dist/cjs/fieldTypes/validators/length.js +3 -0
  132. package/dist/cjs/fieldTypes/validators/length.js.map +1 -0
  133. package/dist/cjs/fieldTypes/validators/number_range.js +3 -0
  134. package/dist/cjs/fieldTypes/validators/number_range.js.map +1 -0
  135. package/dist/cjs/fieldTypes/validators/required.js +3 -0
  136. package/dist/cjs/fieldTypes/validators/required.js.map +1 -0
  137. package/dist/cjs/fieldTypes/validators/required_alt_title.js +3 -0
  138. package/dist/cjs/fieldTypes/validators/required_alt_title.js.map +1 -0
  139. package/dist/cjs/fieldTypes/validators/required_seo_fields.js +3 -0
  140. package/dist/cjs/fieldTypes/validators/required_seo_fields.js.map +1 -0
  141. package/dist/cjs/fieldTypes/validators/rich_text_blocks.js +3 -0
  142. package/dist/cjs/fieldTypes/validators/rich_text_blocks.js.map +1 -0
  143. package/dist/cjs/fieldTypes/validators/sanitization.js +3 -0
  144. package/dist/cjs/fieldTypes/validators/sanitization.js.map +1 -0
  145. package/dist/cjs/fieldTypes/validators/single_block_blocks.js +3 -0
  146. package/dist/cjs/fieldTypes/validators/single_block_blocks.js.map +1 -0
  147. package/dist/cjs/fieldTypes/validators/size.js +3 -0
  148. package/dist/cjs/fieldTypes/validators/size.js.map +1 -0
  149. package/dist/cjs/fieldTypes/validators/slug_format.js +3 -0
  150. package/dist/cjs/fieldTypes/validators/slug_format.js.map +1 -0
  151. package/dist/cjs/fieldTypes/validators/slug_title_field.js +3 -0
  152. package/dist/cjs/fieldTypes/validators/slug_title_field.js.map +1 -0
  153. package/dist/cjs/fieldTypes/validators/structured_text_blocks.js +3 -0
  154. package/dist/cjs/fieldTypes/validators/structured_text_blocks.js.map +1 -0
  155. package/dist/cjs/fieldTypes/validators/structured_text_inline_blocks.js +3 -0
  156. package/dist/cjs/fieldTypes/validators/structured_text_inline_blocks.js.map +1 -0
  157. package/dist/cjs/fieldTypes/validators/structured_text_links.js +3 -0
  158. package/dist/cjs/fieldTypes/validators/structured_text_links.js.map +1 -0
  159. package/dist/cjs/fieldTypes/validators/title_length.js +3 -0
  160. package/dist/cjs/fieldTypes/validators/title_length.js.map +1 -0
  161. package/dist/cjs/fieldTypes/validators/unique.js +3 -0
  162. package/dist/cjs/fieldTypes/validators/unique.js.map +1 -0
  163. package/dist/cjs/fieldTypes/video.js +14 -0
  164. package/dist/cjs/fieldTypes/video.js.map +1 -0
  165. package/dist/cjs/generated/Client.js +27 -79
  166. package/dist/cjs/generated/Client.js.map +1 -1
  167. package/dist/cjs/generated/SchemaTypes.js +0 -4
  168. package/dist/cjs/generated/SchemaTypes.js.map +1 -1
  169. package/dist/cjs/generated/SimpleSchemaTypes.js +0 -4
  170. package/dist/cjs/generated/SimpleSchemaTypes.js.map +1 -1
  171. package/dist/cjs/generated/resources/AccessToken.js +42 -74
  172. package/dist/cjs/generated/resources/AccessToken.js.map +1 -1
  173. package/dist/cjs/generated/resources/AuditLogEvent.js +11 -33
  174. package/dist/cjs/generated/resources/AuditLogEvent.js.map +1 -1
  175. package/dist/cjs/generated/resources/BuildEvent.js +43 -133
  176. package/dist/cjs/generated/resources/BuildEvent.js.map +1 -1
  177. package/dist/cjs/generated/resources/BuildTrigger.js +55 -85
  178. package/dist/cjs/generated/resources/BuildTrigger.js.map +1 -1
  179. package/dist/cjs/generated/resources/DailyUsage.js +10 -32
  180. package/dist/cjs/generated/resources/DailyUsage.js.map +1 -1
  181. package/dist/cjs/generated/resources/EditingSession.js +20 -44
  182. package/dist/cjs/generated/resources/EditingSession.js.map +1 -1
  183. package/dist/cjs/generated/resources/EmojiSuggestions.js +11 -33
  184. package/dist/cjs/generated/resources/EmojiSuggestions.js.map +1 -1
  185. package/dist/cjs/generated/resources/Environment.js +43 -75
  186. package/dist/cjs/generated/resources/Environment.js.map +1 -1
  187. package/dist/cjs/generated/resources/Field.js +57 -93
  188. package/dist/cjs/generated/resources/Field.js.map +1 -1
  189. package/dist/cjs/generated/resources/Fieldset.js +39 -69
  190. package/dist/cjs/generated/resources/Fieldset.js.map +1 -1
  191. package/dist/cjs/generated/resources/Item.js +133 -247
  192. package/dist/cjs/generated/resources/Item.js.map +1 -1
  193. package/dist/cjs/generated/resources/ItemType.js +47 -79
  194. package/dist/cjs/generated/resources/ItemType.js.map +1 -1
  195. package/dist/cjs/generated/resources/ItemTypeFilter.js +35 -65
  196. package/dist/cjs/generated/resources/ItemTypeFilter.js.map +1 -1
  197. package/dist/cjs/generated/resources/ItemVersion.js +50 -142
  198. package/dist/cjs/generated/resources/ItemVersion.js.map +1 -1
  199. package/dist/cjs/generated/resources/JobResult.js +11 -33
  200. package/dist/cjs/generated/resources/JobResult.js.map +1 -1
  201. package/dist/cjs/generated/resources/MaintenanceMode.js +21 -47
  202. package/dist/cjs/generated/resources/MaintenanceMode.js.map +1 -1
  203. package/dist/cjs/generated/resources/MenuItem.js +42 -74
  204. package/dist/cjs/generated/resources/MenuItem.js.map +1 -1
  205. package/dist/cjs/generated/resources/Plugin.js +41 -73
  206. package/dist/cjs/generated/resources/Plugin.js.map +1 -1
  207. package/dist/cjs/generated/resources/PublicInfo.js +10 -32
  208. package/dist/cjs/generated/resources/PublicInfo.js.map +1 -1
  209. package/dist/cjs/generated/resources/Role.js +41 -73
  210. package/dist/cjs/generated/resources/Role.js.map +1 -1
  211. package/dist/cjs/generated/resources/ScheduledPublication.js +18 -42
  212. package/dist/cjs/generated/resources/ScheduledPublication.js.map +1 -1
  213. package/dist/cjs/generated/resources/ScheduledUnpublishing.js +18 -42
  214. package/dist/cjs/generated/resources/ScheduledUnpublishing.js.map +1 -1
  215. package/dist/cjs/generated/resources/SchemaMenuItem.js +42 -74
  216. package/dist/cjs/generated/resources/SchemaMenuItem.js.map +1 -1
  217. package/dist/cjs/generated/resources/SearchResult.js +37 -125
  218. package/dist/cjs/generated/resources/SearchResult.js.map +1 -1
  219. package/dist/cjs/generated/resources/Session.js +11 -33
  220. package/dist/cjs/generated/resources/Session.js.map +1 -1
  221. package/dist/cjs/generated/resources/Site.js +63 -105
  222. package/dist/cjs/generated/resources/Site.js.map +1 -1
  223. package/dist/cjs/generated/resources/SiteInvitation.js +41 -73
  224. package/dist/cjs/generated/resources/SiteInvitation.js.map +1 -1
  225. package/dist/cjs/generated/resources/SsoGroup.js +29 -57
  226. package/dist/cjs/generated/resources/SsoGroup.js.map +1 -1
  227. package/dist/cjs/generated/resources/SsoSettings.js +21 -47
  228. package/dist/cjs/generated/resources/SsoSettings.js.map +1 -1
  229. package/dist/cjs/generated/resources/SsoUser.js +28 -56
  230. package/dist/cjs/generated/resources/SsoUser.js.map +1 -1
  231. package/dist/cjs/generated/resources/SubscriptionFeature.js +10 -32
  232. package/dist/cjs/generated/resources/SubscriptionFeature.js.map +1 -1
  233. package/dist/cjs/generated/resources/SubscriptionLimit.js +16 -40
  234. package/dist/cjs/generated/resources/SubscriptionLimit.js.map +1 -1
  235. package/dist/cjs/generated/resources/Upload.js +87 -191
  236. package/dist/cjs/generated/resources/Upload.js.map +1 -1
  237. package/dist/cjs/generated/resources/UploadCollection.js +42 -74
  238. package/dist/cjs/generated/resources/UploadCollection.js.map +1 -1
  239. package/dist/cjs/generated/resources/UploadFilter.js +35 -65
  240. package/dist/cjs/generated/resources/UploadFilter.js.map +1 -1
  241. package/dist/cjs/generated/resources/UploadRequest.js +13 -35
  242. package/dist/cjs/generated/resources/UploadRequest.js.map +1 -1
  243. package/dist/cjs/generated/resources/UploadSmartTag.js +37 -125
  244. package/dist/cjs/generated/resources/UploadSmartTag.js.map +1 -1
  245. package/dist/cjs/generated/resources/UploadTag.js +43 -133
  246. package/dist/cjs/generated/resources/UploadTag.js.map +1 -1
  247. package/dist/cjs/generated/resources/UploadTrack.js +31 -59
  248. package/dist/cjs/generated/resources/UploadTrack.js.map +1 -1
  249. package/dist/cjs/generated/resources/UsageCounter.js +12 -34
  250. package/dist/cjs/generated/resources/UsageCounter.js.map +1 -1
  251. package/dist/cjs/generated/resources/User.js +37 -67
  252. package/dist/cjs/generated/resources/User.js.map +1 -1
  253. package/dist/cjs/generated/resources/Webhook.js +35 -65
  254. package/dist/cjs/generated/resources/Webhook.js.map +1 -1
  255. package/dist/cjs/generated/resources/WebhookCall.js +48 -138
  256. package/dist/cjs/generated/resources/WebhookCall.js.map +1 -1
  257. package/dist/cjs/generated/resources/WhiteLabelSettings.js +16 -40
  258. package/dist/cjs/generated/resources/WhiteLabelSettings.js.map +1 -1
  259. package/dist/cjs/generated/resources/Workflow.js +34 -62
  260. package/dist/cjs/generated/resources/Workflow.js.map +1 -1
  261. package/dist/cjs/index.js +8 -2
  262. package/dist/cjs/index.js.map +1 -1
  263. package/dist/cjs/resources/Role.js +42 -124
  264. package/dist/cjs/resources/Role.js.map +1 -1
  265. package/dist/cjs/utilities/blocks.js +597 -0
  266. package/dist/cjs/utilities/blocks.js.map +1 -0
  267. package/dist/cjs/{buildBlockRecord.js → utilities/buildBlockRecord.js} +2 -2
  268. package/dist/cjs/utilities/buildBlockRecord.js.map +1 -0
  269. package/dist/cjs/utilities/fieldValueLocalization.js +218 -0
  270. package/dist/cjs/utilities/fieldValueLocalization.js.map +1 -0
  271. package/dist/cjs/utilities/fieldsContainingReferences.js +45 -0
  272. package/dist/cjs/utilities/fieldsContainingReferences.js.map +1 -0
  273. package/dist/cjs/{idUtils.js → utilities/id.js} +14 -14
  274. package/dist/cjs/utilities/id.js.map +1 -0
  275. package/dist/cjs/utilities/recursiveBlocks.js +187 -0
  276. package/dist/cjs/utilities/recursiveBlocks.js.map +1 -0
  277. package/dist/cjs/utilities/schemaRepository.js +354 -0
  278. package/dist/cjs/utilities/schemaRepository.js.map +1 -0
  279. package/dist/cjs/utilities/structuredText.js +371 -0
  280. package/dist/cjs/utilities/structuredText.js.map +1 -0
  281. package/dist/esm/BaseResource.js +3 -5
  282. package/dist/esm/BaseResource.js.map +1 -1
  283. package/dist/esm/fieldTypes/appearance/boolean.d.ts +4 -0
  284. package/dist/esm/fieldTypes/appearance/boolean.js +2 -0
  285. package/dist/esm/fieldTypes/appearance/boolean.js.map +1 -0
  286. package/dist/esm/fieldTypes/appearance/boolean_radio_group.d.ts +15 -0
  287. package/dist/esm/fieldTypes/appearance/boolean_radio_group.js +2 -0
  288. package/dist/esm/fieldTypes/appearance/boolean_radio_group.js.map +1 -0
  289. package/dist/esm/fieldTypes/appearance/color_picker.d.ts +9 -0
  290. package/dist/esm/fieldTypes/appearance/color_picker.js +2 -0
  291. package/dist/esm/fieldTypes/appearance/color_picker.js.map +1 -0
  292. package/dist/esm/fieldTypes/appearance/date_picker.d.ts +4 -0
  293. package/dist/esm/fieldTypes/appearance/date_picker.js +2 -0
  294. package/dist/esm/fieldTypes/appearance/date_picker.js.map +1 -0
  295. package/dist/esm/fieldTypes/appearance/date_time_picker.d.ts +4 -0
  296. package/dist/esm/fieldTypes/appearance/date_time_picker.js +2 -0
  297. package/dist/esm/fieldTypes/appearance/date_time_picker.js.map +1 -0
  298. package/dist/esm/fieldTypes/appearance/file.d.ts +4 -0
  299. package/dist/esm/fieldTypes/appearance/file.js +2 -0
  300. package/dist/esm/fieldTypes/appearance/file.js.map +1 -0
  301. package/dist/esm/fieldTypes/appearance/float.d.ts +7 -0
  302. package/dist/esm/fieldTypes/appearance/float.js +2 -0
  303. package/dist/esm/fieldTypes/appearance/float.js.map +1 -0
  304. package/dist/esm/fieldTypes/appearance/framed_single_block.d.ts +7 -0
  305. package/dist/esm/fieldTypes/appearance/framed_single_block.js +2 -0
  306. package/dist/esm/fieldTypes/appearance/framed_single_block.js.map +1 -0
  307. package/dist/esm/fieldTypes/appearance/frameless_single_block.d.ts +7 -0
  308. package/dist/esm/fieldTypes/appearance/frameless_single_block.js +2 -0
  309. package/dist/esm/fieldTypes/appearance/frameless_single_block.js.map +1 -0
  310. package/dist/esm/fieldTypes/appearance/gallery.d.ts +4 -0
  311. package/dist/esm/fieldTypes/appearance/gallery.js +2 -0
  312. package/dist/esm/fieldTypes/appearance/gallery.js.map +1 -0
  313. package/dist/esm/fieldTypes/appearance/index.d.ts +30 -0
  314. package/dist/esm/fieldTypes/appearance/index.js +31 -0
  315. package/dist/esm/fieldTypes/appearance/index.js.map +1 -0
  316. package/dist/esm/fieldTypes/appearance/integer.d.ts +7 -0
  317. package/dist/esm/fieldTypes/appearance/integer.js +2 -0
  318. package/dist/esm/fieldTypes/appearance/integer.js.map +1 -0
  319. package/dist/esm/fieldTypes/appearance/json.d.ts +4 -0
  320. package/dist/esm/fieldTypes/appearance/json.js +2 -0
  321. package/dist/esm/fieldTypes/appearance/json.js.map +1 -0
  322. package/dist/esm/fieldTypes/appearance/link_embed.d.ts +5 -0
  323. package/dist/esm/fieldTypes/appearance/link_embed.js +2 -0
  324. package/dist/esm/fieldTypes/appearance/link_embed.js.map +1 -0
  325. package/dist/esm/fieldTypes/appearance/link_select.d.ts +5 -0
  326. package/dist/esm/fieldTypes/appearance/link_select.js +2 -0
  327. package/dist/esm/fieldTypes/appearance/link_select.js.map +1 -0
  328. package/dist/esm/fieldTypes/appearance/links_embed.d.ts +5 -0
  329. package/dist/esm/fieldTypes/appearance/links_embed.js +2 -0
  330. package/dist/esm/fieldTypes/appearance/links_embed.js.map +1 -0
  331. package/dist/esm/fieldTypes/appearance/links_select.d.ts +5 -0
  332. package/dist/esm/fieldTypes/appearance/links_select.js +2 -0
  333. package/dist/esm/fieldTypes/appearance/links_select.js.map +1 -0
  334. package/dist/esm/fieldTypes/appearance/map.d.ts +4 -0
  335. package/dist/esm/fieldTypes/appearance/map.js +2 -0
  336. package/dist/esm/fieldTypes/appearance/map.js.map +1 -0
  337. package/dist/esm/fieldTypes/appearance/markdown.d.ts +7 -0
  338. package/dist/esm/fieldTypes/appearance/markdown.js +2 -0
  339. package/dist/esm/fieldTypes/appearance/markdown.js.map +1 -0
  340. package/dist/esm/fieldTypes/appearance/rich_text.d.ts +7 -0
  341. package/dist/esm/fieldTypes/appearance/rich_text.js +2 -0
  342. package/dist/esm/fieldTypes/appearance/rich_text.js.map +1 -0
  343. package/dist/esm/fieldTypes/appearance/seo.d.ts +9 -0
  344. package/dist/esm/fieldTypes/appearance/seo.js +2 -0
  345. package/dist/esm/fieldTypes/appearance/seo.js.map +1 -0
  346. package/dist/esm/fieldTypes/appearance/single_line.d.ts +9 -0
  347. package/dist/esm/fieldTypes/appearance/single_line.js +2 -0
  348. package/dist/esm/fieldTypes/appearance/single_line.js.map +1 -0
  349. package/dist/esm/fieldTypes/appearance/slug.d.ts +9 -0
  350. package/dist/esm/fieldTypes/appearance/slug.js +2 -0
  351. package/dist/esm/fieldTypes/appearance/slug.js.map +1 -0
  352. package/dist/esm/fieldTypes/appearance/string_checkbox_group.d.ts +15 -0
  353. package/dist/esm/fieldTypes/appearance/string_checkbox_group.js +2 -0
  354. package/dist/esm/fieldTypes/appearance/string_checkbox_group.js.map +1 -0
  355. package/dist/esm/fieldTypes/appearance/string_multi_select.d.ts +15 -0
  356. package/dist/esm/fieldTypes/appearance/string_multi_select.js +2 -0
  357. package/dist/esm/fieldTypes/appearance/string_multi_select.js.map +1 -0
  358. package/dist/esm/fieldTypes/appearance/string_radio_group.d.ts +15 -0
  359. package/dist/esm/fieldTypes/appearance/string_radio_group.js +2 -0
  360. package/dist/esm/fieldTypes/appearance/string_radio_group.js.map +1 -0
  361. package/dist/esm/fieldTypes/appearance/string_select.d.ts +15 -0
  362. package/dist/esm/fieldTypes/appearance/string_select.js +2 -0
  363. package/dist/esm/fieldTypes/appearance/string_select.js.map +1 -0
  364. package/dist/esm/fieldTypes/appearance/structured_text.d.ts +17 -0
  365. package/dist/esm/fieldTypes/appearance/structured_text.js +2 -0
  366. package/dist/esm/fieldTypes/appearance/structured_text.js.map +1 -0
  367. package/dist/esm/fieldTypes/appearance/textarea.d.ts +7 -0
  368. package/dist/esm/fieldTypes/appearance/textarea.js +2 -0
  369. package/dist/esm/fieldTypes/appearance/textarea.js.map +1 -0
  370. package/dist/esm/fieldTypes/appearance/video.d.ts +4 -0
  371. package/dist/esm/fieldTypes/appearance/video.js +2 -0
  372. package/dist/esm/fieldTypes/appearance/video.js.map +1 -0
  373. package/dist/esm/fieldTypes/appearance/wysiwyg.d.ts +7 -0
  374. package/dist/esm/fieldTypes/appearance/wysiwyg.js +2 -0
  375. package/dist/esm/fieldTypes/appearance/wysiwyg.js.map +1 -0
  376. package/dist/esm/fieldTypes/boolean.d.ts +17 -0
  377. package/dist/esm/fieldTypes/boolean.js +4 -0
  378. package/dist/esm/fieldTypes/boolean.js.map +1 -0
  379. package/dist/esm/fieldTypes/color.d.ts +22 -0
  380. package/dist/esm/fieldTypes/color.js +11 -0
  381. package/dist/esm/fieldTypes/color.js.map +1 -0
  382. package/dist/esm/fieldTypes/date.d.ts +20 -0
  383. package/dist/esm/fieldTypes/date.js +6 -0
  384. package/dist/esm/fieldTypes/date.js.map +1 -0
  385. package/dist/esm/fieldTypes/date_time.d.ts +20 -0
  386. package/dist/esm/fieldTypes/date_time.js +7 -0
  387. package/dist/esm/fieldTypes/date_time.js.map +1 -0
  388. package/dist/esm/fieldTypes/file.d.ts +41 -0
  389. package/dist/esm/fieldTypes/file.js +6 -0
  390. package/dist/esm/fieldTypes/file.js.map +1 -0
  391. package/dist/esm/fieldTypes/float.d.ts +20 -0
  392. package/dist/esm/fieldTypes/float.js +4 -0
  393. package/dist/esm/fieldTypes/float.js.map +1 -0
  394. package/dist/esm/fieldTypes/gallery.d.ts +41 -0
  395. package/dist/esm/fieldTypes/gallery.js +7 -0
  396. package/dist/esm/fieldTypes/gallery.js.map +1 -0
  397. package/dist/esm/fieldTypes/index.d.ts +22 -0
  398. package/dist/esm/fieldTypes/index.js +23 -0
  399. package/dist/esm/fieldTypes/index.js.map +1 -0
  400. package/dist/esm/fieldTypes/integer.d.ts +20 -0
  401. package/dist/esm/fieldTypes/integer.js +4 -0
  402. package/dist/esm/fieldTypes/integer.js.map +1 -0
  403. package/dist/esm/fieldTypes/json.d.ts +25 -0
  404. package/dist/esm/fieldTypes/json.js +14 -0
  405. package/dist/esm/fieldTypes/json.js.map +1 -0
  406. package/dist/esm/fieldTypes/lat_lon.d.ts +20 -0
  407. package/dist/esm/fieldTypes/lat_lon.js +9 -0
  408. package/dist/esm/fieldTypes/lat_lon.js.map +1 -0
  409. package/dist/esm/fieldTypes/link.d.ts +27 -0
  410. package/dist/esm/fieldTypes/link.js +4 -0
  411. package/dist/esm/fieldTypes/link.js.map +1 -0
  412. package/dist/esm/fieldTypes/links.d.ts +24 -0
  413. package/dist/esm/fieldTypes/links.js +6 -0
  414. package/dist/esm/fieldTypes/links.js.map +1 -0
  415. package/dist/esm/fieldTypes/rich_text.d.ts +100 -0
  416. package/dist/esm/fieldTypes/rich_text.js +47 -0
  417. package/dist/esm/fieldTypes/rich_text.js.map +1 -0
  418. package/dist/esm/fieldTypes/seo.d.ts +38 -0
  419. package/dist/esm/fieldTypes/seo.js +12 -0
  420. package/dist/esm/fieldTypes/seo.js.map +1 -0
  421. package/dist/esm/fieldTypes/single_block.d.ts +134 -0
  422. package/dist/esm/fieldTypes/single_block.js +63 -0
  423. package/dist/esm/fieldTypes/single_block.js.map +1 -0
  424. package/dist/esm/fieldTypes/slug.d.ts +26 -0
  425. package/dist/esm/fieldTypes/slug.js +6 -0
  426. package/dist/esm/fieldTypes/slug.js.map +1 -0
  427. package/dist/esm/fieldTypes/string.d.ts +37 -0
  428. package/dist/esm/fieldTypes/string.js +4 -0
  429. package/dist/esm/fieldTypes/string.js.map +1 -0
  430. package/dist/esm/fieldTypes/structured_text.d.ts +181 -0
  431. package/dist/esm/fieldTypes/structured_text.js +81 -0
  432. package/dist/esm/fieldTypes/structured_text.js.map +1 -0
  433. package/dist/esm/fieldTypes/text.d.ts +34 -0
  434. package/dist/esm/fieldTypes/text.js +4 -0
  435. package/dist/esm/fieldTypes/text.js.map +1 -0
  436. package/dist/esm/fieldTypes/validators/date_range.d.ts +14 -0
  437. package/dist/esm/fieldTypes/validators/date_range.js +2 -0
  438. package/dist/esm/fieldTypes/validators/date_range.js.map +1 -0
  439. package/dist/esm/fieldTypes/validators/date_time_range.d.ts +12 -0
  440. package/dist/esm/fieldTypes/validators/date_time_range.js +2 -0
  441. package/dist/esm/fieldTypes/validators/date_time_range.js.map +1 -0
  442. package/dist/esm/fieldTypes/validators/description_length.d.ts +11 -0
  443. package/dist/esm/fieldTypes/validators/description_length.js +2 -0
  444. package/dist/esm/fieldTypes/validators/description_length.js.map +1 -0
  445. package/dist/esm/fieldTypes/validators/enum.d.ts +7 -0
  446. package/dist/esm/fieldTypes/validators/enum.js +2 -0
  447. package/dist/esm/fieldTypes/validators/enum.js.map +1 -0
  448. package/dist/esm/fieldTypes/validators/extension.d.ts +12 -0
  449. package/dist/esm/fieldTypes/validators/extension.js +2 -0
  450. package/dist/esm/fieldTypes/validators/extension.js.map +1 -0
  451. package/dist/esm/fieldTypes/validators/file_size.d.ts +16 -0
  452. package/dist/esm/fieldTypes/validators/file_size.js +2 -0
  453. package/dist/esm/fieldTypes/validators/file_size.js.map +1 -0
  454. package/dist/esm/fieldTypes/validators/format.d.ts +18 -0
  455. package/dist/esm/fieldTypes/validators/format.js +2 -0
  456. package/dist/esm/fieldTypes/validators/format.js.map +1 -0
  457. package/dist/esm/fieldTypes/validators/image_aspect_ratio.d.ts +28 -0
  458. package/dist/esm/fieldTypes/validators/image_aspect_ratio.js +2 -0
  459. package/dist/esm/fieldTypes/validators/image_aspect_ratio.js.map +1 -0
  460. package/dist/esm/fieldTypes/validators/image_dimensions.d.ts +28 -0
  461. package/dist/esm/fieldTypes/validators/image_dimensions.js +2 -0
  462. package/dist/esm/fieldTypes/validators/image_dimensions.js.map +1 -0
  463. package/dist/esm/fieldTypes/validators/index.d.ts +27 -0
  464. package/dist/esm/fieldTypes/validators/index.js +28 -0
  465. package/dist/esm/fieldTypes/validators/index.js.map +1 -0
  466. package/dist/esm/fieldTypes/validators/item_item_type.d.ts +29 -0
  467. package/dist/esm/fieldTypes/validators/item_item_type.js +2 -0
  468. package/dist/esm/fieldTypes/validators/item_item_type.js.map +1 -0
  469. package/dist/esm/fieldTypes/validators/items_item_type.d.ts +29 -0
  470. package/dist/esm/fieldTypes/validators/items_item_type.js +2 -0
  471. package/dist/esm/fieldTypes/validators/items_item_type.js.map +1 -0
  472. package/dist/esm/fieldTypes/validators/length.d.ts +19 -0
  473. package/dist/esm/fieldTypes/validators/length.js +2 -0
  474. package/dist/esm/fieldTypes/validators/length.js.map +1 -0
  475. package/dist/esm/fieldTypes/validators/number_range.d.ts +10 -0
  476. package/dist/esm/fieldTypes/validators/number_range.js +2 -0
  477. package/dist/esm/fieldTypes/validators/number_range.js.map +1 -0
  478. package/dist/esm/fieldTypes/validators/required.d.ts +4 -0
  479. package/dist/esm/fieldTypes/validators/required.js +2 -0
  480. package/dist/esm/fieldTypes/validators/required.js.map +1 -0
  481. package/dist/esm/fieldTypes/validators/required_alt_title.d.ts +12 -0
  482. package/dist/esm/fieldTypes/validators/required_alt_title.js +2 -0
  483. package/dist/esm/fieldTypes/validators/required_alt_title.js.map +1 -0
  484. package/dist/esm/fieldTypes/validators/required_seo_fields.d.ts +28 -0
  485. package/dist/esm/fieldTypes/validators/required_seo_fields.js +2 -0
  486. package/dist/esm/fieldTypes/validators/required_seo_fields.js.map +1 -0
  487. package/dist/esm/fieldTypes/validators/rich_text_blocks.d.ts +7 -0
  488. package/dist/esm/fieldTypes/validators/rich_text_blocks.js +2 -0
  489. package/dist/esm/fieldTypes/validators/rich_text_blocks.js.map +1 -0
  490. package/dist/esm/fieldTypes/validators/sanitization.d.ts +7 -0
  491. package/dist/esm/fieldTypes/validators/sanitization.js +2 -0
  492. package/dist/esm/fieldTypes/validators/sanitization.js.map +1 -0
  493. package/dist/esm/fieldTypes/validators/single_block_blocks.d.ts +7 -0
  494. package/dist/esm/fieldTypes/validators/single_block_blocks.js +2 -0
  495. package/dist/esm/fieldTypes/validators/single_block_blocks.js.map +1 -0
  496. package/dist/esm/fieldTypes/validators/size.d.ts +28 -0
  497. package/dist/esm/fieldTypes/validators/size.js +2 -0
  498. package/dist/esm/fieldTypes/validators/size.js.map +1 -0
  499. package/dist/esm/fieldTypes/validators/slug_format.d.ts +12 -0
  500. package/dist/esm/fieldTypes/validators/slug_format.js +2 -0
  501. package/dist/esm/fieldTypes/validators/slug_format.js.map +1 -0
  502. package/dist/esm/fieldTypes/validators/slug_title_field.d.ts +7 -0
  503. package/dist/esm/fieldTypes/validators/slug_title_field.js +2 -0
  504. package/dist/esm/fieldTypes/validators/slug_title_field.js.map +1 -0
  505. package/dist/esm/fieldTypes/validators/structured_text_blocks.d.ts +7 -0
  506. package/dist/esm/fieldTypes/validators/structured_text_blocks.js +2 -0
  507. package/dist/esm/fieldTypes/validators/structured_text_blocks.js.map +1 -0
  508. package/dist/esm/fieldTypes/validators/structured_text_inline_blocks.d.ts +7 -0
  509. package/dist/esm/fieldTypes/validators/structured_text_inline_blocks.js +2 -0
  510. package/dist/esm/fieldTypes/validators/structured_text_inline_blocks.js.map +1 -0
  511. package/dist/esm/fieldTypes/validators/structured_text_links.d.ts +29 -0
  512. package/dist/esm/fieldTypes/validators/structured_text_links.js +2 -0
  513. package/dist/esm/fieldTypes/validators/structured_text_links.js.map +1 -0
  514. package/dist/esm/fieldTypes/validators/title_length.d.ts +11 -0
  515. package/dist/esm/fieldTypes/validators/title_length.js +2 -0
  516. package/dist/esm/fieldTypes/validators/title_length.js.map +1 -0
  517. package/dist/esm/fieldTypes/validators/unique.d.ts +4 -0
  518. package/dist/esm/fieldTypes/validators/unique.js +2 -0
  519. package/dist/esm/fieldTypes/validators/unique.js.map +1 -0
  520. package/dist/esm/fieldTypes/video.d.ts +25 -0
  521. package/dist/esm/fieldTypes/video.js +10 -0
  522. package/dist/esm/fieldTypes/video.js.map +1 -0
  523. package/dist/esm/generated/Client.js +25 -78
  524. package/dist/esm/generated/Client.js.map +1 -1
  525. package/dist/esm/generated/SchemaTypes.d.ts +72 -7
  526. package/dist/esm/generated/SchemaTypes.js +0 -4
  527. package/dist/esm/generated/SchemaTypes.js.map +1 -1
  528. package/dist/esm/generated/SimpleSchemaTypes.d.ts +65 -8
  529. package/dist/esm/generated/SimpleSchemaTypes.js +0 -4
  530. package/dist/esm/generated/SimpleSchemaTypes.js.map +1 -1
  531. package/dist/esm/generated/resources/AccessToken.js +40 -73
  532. package/dist/esm/generated/resources/AccessToken.js.map +1 -1
  533. package/dist/esm/generated/resources/AuditLogEvent.js +9 -32
  534. package/dist/esm/generated/resources/AuditLogEvent.js.map +1 -1
  535. package/dist/esm/generated/resources/BuildEvent.js +41 -132
  536. package/dist/esm/generated/resources/BuildEvent.js.map +1 -1
  537. package/dist/esm/generated/resources/BuildTrigger.js +53 -84
  538. package/dist/esm/generated/resources/BuildTrigger.js.map +1 -1
  539. package/dist/esm/generated/resources/DailyUsage.js +8 -31
  540. package/dist/esm/generated/resources/DailyUsage.js.map +1 -1
  541. package/dist/esm/generated/resources/EditingSession.js +18 -43
  542. package/dist/esm/generated/resources/EditingSession.js.map +1 -1
  543. package/dist/esm/generated/resources/EmojiSuggestions.js +9 -32
  544. package/dist/esm/generated/resources/EmojiSuggestions.js.map +1 -1
  545. package/dist/esm/generated/resources/Environment.js +41 -74
  546. package/dist/esm/generated/resources/Environment.js.map +1 -1
  547. package/dist/esm/generated/resources/Field.d.ts +4207 -7
  548. package/dist/esm/generated/resources/Field.js +55 -92
  549. package/dist/esm/generated/resources/Field.js.map +1 -1
  550. package/dist/esm/generated/resources/Fieldset.d.ts +2 -2
  551. package/dist/esm/generated/resources/Fieldset.js +37 -68
  552. package/dist/esm/generated/resources/Fieldset.js.map +1 -1
  553. package/dist/esm/generated/resources/Item.js +131 -246
  554. package/dist/esm/generated/resources/Item.js.map +1 -1
  555. package/dist/esm/generated/resources/ItemType.js +45 -78
  556. package/dist/esm/generated/resources/ItemType.js.map +1 -1
  557. package/dist/esm/generated/resources/ItemTypeFilter.js +33 -64
  558. package/dist/esm/generated/resources/ItemTypeFilter.js.map +1 -1
  559. package/dist/esm/generated/resources/ItemVersion.js +48 -141
  560. package/dist/esm/generated/resources/ItemVersion.js.map +1 -1
  561. package/dist/esm/generated/resources/JobResult.js +9 -32
  562. package/dist/esm/generated/resources/JobResult.js.map +1 -1
  563. package/dist/esm/generated/resources/MaintenanceMode.js +19 -46
  564. package/dist/esm/generated/resources/MaintenanceMode.js.map +1 -1
  565. package/dist/esm/generated/resources/MenuItem.js +40 -73
  566. package/dist/esm/generated/resources/MenuItem.js.map +1 -1
  567. package/dist/esm/generated/resources/Plugin.js +39 -72
  568. package/dist/esm/generated/resources/Plugin.js.map +1 -1
  569. package/dist/esm/generated/resources/PublicInfo.js +8 -31
  570. package/dist/esm/generated/resources/PublicInfo.js.map +1 -1
  571. package/dist/esm/generated/resources/Role.js +39 -72
  572. package/dist/esm/generated/resources/Role.js.map +1 -1
  573. package/dist/esm/generated/resources/ScheduledPublication.js +16 -41
  574. package/dist/esm/generated/resources/ScheduledPublication.js.map +1 -1
  575. package/dist/esm/generated/resources/ScheduledUnpublishing.js +16 -41
  576. package/dist/esm/generated/resources/ScheduledUnpublishing.js.map +1 -1
  577. package/dist/esm/generated/resources/SchemaMenuItem.js +40 -73
  578. package/dist/esm/generated/resources/SchemaMenuItem.js.map +1 -1
  579. package/dist/esm/generated/resources/SearchResult.js +35 -124
  580. package/dist/esm/generated/resources/SearchResult.js.map +1 -1
  581. package/dist/esm/generated/resources/Session.js +9 -32
  582. package/dist/esm/generated/resources/Session.js.map +1 -1
  583. package/dist/esm/generated/resources/Site.js +61 -104
  584. package/dist/esm/generated/resources/Site.js.map +1 -1
  585. package/dist/esm/generated/resources/SiteInvitation.js +39 -72
  586. package/dist/esm/generated/resources/SiteInvitation.js.map +1 -1
  587. package/dist/esm/generated/resources/SsoGroup.js +27 -56
  588. package/dist/esm/generated/resources/SsoGroup.js.map +1 -1
  589. package/dist/esm/generated/resources/SsoSettings.js +19 -46
  590. package/dist/esm/generated/resources/SsoSettings.js.map +1 -1
  591. package/dist/esm/generated/resources/SsoUser.js +26 -55
  592. package/dist/esm/generated/resources/SsoUser.js.map +1 -1
  593. package/dist/esm/generated/resources/SubscriptionFeature.js +8 -31
  594. package/dist/esm/generated/resources/SubscriptionFeature.js.map +1 -1
  595. package/dist/esm/generated/resources/SubscriptionLimit.js +14 -39
  596. package/dist/esm/generated/resources/SubscriptionLimit.js.map +1 -1
  597. package/dist/esm/generated/resources/Upload.js +85 -190
  598. package/dist/esm/generated/resources/Upload.js.map +1 -1
  599. package/dist/esm/generated/resources/UploadCollection.js +40 -73
  600. package/dist/esm/generated/resources/UploadCollection.js.map +1 -1
  601. package/dist/esm/generated/resources/UploadFilter.js +33 -64
  602. package/dist/esm/generated/resources/UploadFilter.js.map +1 -1
  603. package/dist/esm/generated/resources/UploadRequest.d.ts +2 -2
  604. package/dist/esm/generated/resources/UploadRequest.js +11 -34
  605. package/dist/esm/generated/resources/UploadRequest.js.map +1 -1
  606. package/dist/esm/generated/resources/UploadSmartTag.js +35 -124
  607. package/dist/esm/generated/resources/UploadSmartTag.js.map +1 -1
  608. package/dist/esm/generated/resources/UploadTag.js +41 -132
  609. package/dist/esm/generated/resources/UploadTag.js.map +1 -1
  610. package/dist/esm/generated/resources/UploadTrack.js +29 -58
  611. package/dist/esm/generated/resources/UploadTrack.js.map +1 -1
  612. package/dist/esm/generated/resources/UsageCounter.js +10 -33
  613. package/dist/esm/generated/resources/UsageCounter.js.map +1 -1
  614. package/dist/esm/generated/resources/User.js +35 -66
  615. package/dist/esm/generated/resources/User.js.map +1 -1
  616. package/dist/esm/generated/resources/Webhook.js +33 -64
  617. package/dist/esm/generated/resources/Webhook.js.map +1 -1
  618. package/dist/esm/generated/resources/WebhookCall.js +46 -137
  619. package/dist/esm/generated/resources/WebhookCall.js.map +1 -1
  620. package/dist/esm/generated/resources/WhiteLabelSettings.js +14 -39
  621. package/dist/esm/generated/resources/WhiteLabelSettings.js.map +1 -1
  622. package/dist/esm/generated/resources/Workflow.js +32 -61
  623. package/dist/esm/generated/resources/Workflow.js.map +1 -1
  624. package/dist/esm/index.d.ts +8 -2
  625. package/dist/esm/index.js +8 -2
  626. package/dist/esm/index.js.map +1 -1
  627. package/dist/esm/resources/Role.js +41 -124
  628. package/dist/esm/resources/Role.js.map +1 -1
  629. package/dist/esm/utilities/blocks.d.ts +180 -0
  630. package/dist/esm/utilities/blocks.js +580 -0
  631. package/dist/esm/utilities/blocks.js.map +1 -0
  632. package/dist/esm/{buildBlockRecord.d.ts → utilities/buildBlockRecord.d.ts} +2 -2
  633. package/dist/esm/{buildBlockRecord.js → utilities/buildBlockRecord.js} +1 -1
  634. package/dist/esm/utilities/buildBlockRecord.js.map +1 -0
  635. package/dist/esm/utilities/fieldValueLocalization.d.ts +123 -0
  636. package/dist/esm/utilities/fieldValueLocalization.js +204 -0
  637. package/dist/esm/utilities/fieldValueLocalization.js.map +1 -0
  638. package/dist/esm/utilities/fieldsContainingReferences.d.ts +4 -0
  639. package/dist/esm/utilities/fieldsContainingReferences.js +40 -0
  640. package/dist/esm/utilities/fieldsContainingReferences.js.map +1 -0
  641. package/dist/esm/{idUtils.js → utilities/id.js} +13 -13
  642. package/dist/esm/utilities/id.js.map +1 -0
  643. package/dist/esm/utilities/recursiveBlocks.d.ts +15 -0
  644. package/dist/esm/utilities/recursiveBlocks.js +177 -0
  645. package/dist/esm/utilities/recursiveBlocks.js.map +1 -0
  646. package/dist/esm/utilities/schemaRepository.d.ts +181 -0
  647. package/dist/esm/utilities/schemaRepository.js +350 -0
  648. package/dist/esm/utilities/schemaRepository.js.map +1 -0
  649. package/dist/esm/utilities/structuredText.d.ts +177 -0
  650. package/dist/esm/utilities/structuredText.js +354 -0
  651. package/dist/esm/utilities/structuredText.js.map +1 -0
  652. package/dist/types/fieldTypes/appearance/boolean.d.ts +4 -0
  653. package/dist/types/fieldTypes/appearance/boolean_radio_group.d.ts +15 -0
  654. package/dist/types/fieldTypes/appearance/color_picker.d.ts +9 -0
  655. package/dist/types/fieldTypes/appearance/date_picker.d.ts +4 -0
  656. package/dist/types/fieldTypes/appearance/date_time_picker.d.ts +4 -0
  657. package/dist/types/fieldTypes/appearance/file.d.ts +4 -0
  658. package/dist/types/fieldTypes/appearance/float.d.ts +7 -0
  659. package/dist/types/fieldTypes/appearance/framed_single_block.d.ts +7 -0
  660. package/dist/types/fieldTypes/appearance/frameless_single_block.d.ts +7 -0
  661. package/dist/types/fieldTypes/appearance/gallery.d.ts +4 -0
  662. package/dist/types/fieldTypes/appearance/index.d.ts +30 -0
  663. package/dist/types/fieldTypes/appearance/integer.d.ts +7 -0
  664. package/dist/types/fieldTypes/appearance/json.d.ts +4 -0
  665. package/dist/types/fieldTypes/appearance/link_embed.d.ts +5 -0
  666. package/dist/types/fieldTypes/appearance/link_select.d.ts +5 -0
  667. package/dist/types/fieldTypes/appearance/links_embed.d.ts +5 -0
  668. package/dist/types/fieldTypes/appearance/links_select.d.ts +5 -0
  669. package/dist/types/fieldTypes/appearance/map.d.ts +4 -0
  670. package/dist/types/fieldTypes/appearance/markdown.d.ts +7 -0
  671. package/dist/types/fieldTypes/appearance/rich_text.d.ts +7 -0
  672. package/dist/types/fieldTypes/appearance/seo.d.ts +9 -0
  673. package/dist/types/fieldTypes/appearance/single_line.d.ts +9 -0
  674. package/dist/types/fieldTypes/appearance/slug.d.ts +9 -0
  675. package/dist/types/fieldTypes/appearance/string_checkbox_group.d.ts +15 -0
  676. package/dist/types/fieldTypes/appearance/string_multi_select.d.ts +15 -0
  677. package/dist/types/fieldTypes/appearance/string_radio_group.d.ts +15 -0
  678. package/dist/types/fieldTypes/appearance/string_select.d.ts +15 -0
  679. package/dist/types/fieldTypes/appearance/structured_text.d.ts +17 -0
  680. package/dist/types/fieldTypes/appearance/textarea.d.ts +7 -0
  681. package/dist/types/fieldTypes/appearance/video.d.ts +4 -0
  682. package/dist/types/fieldTypes/appearance/wysiwyg.d.ts +7 -0
  683. package/dist/types/fieldTypes/boolean.d.ts +17 -0
  684. package/dist/types/fieldTypes/color.d.ts +22 -0
  685. package/dist/types/fieldTypes/date.d.ts +20 -0
  686. package/dist/types/fieldTypes/date_time.d.ts +20 -0
  687. package/dist/types/fieldTypes/file.d.ts +41 -0
  688. package/dist/types/fieldTypes/float.d.ts +20 -0
  689. package/dist/types/fieldTypes/gallery.d.ts +41 -0
  690. package/dist/types/fieldTypes/index.d.ts +22 -0
  691. package/dist/types/fieldTypes/integer.d.ts +20 -0
  692. package/dist/types/fieldTypes/json.d.ts +25 -0
  693. package/dist/types/fieldTypes/lat_lon.d.ts +20 -0
  694. package/dist/types/fieldTypes/link.d.ts +27 -0
  695. package/dist/types/fieldTypes/links.d.ts +24 -0
  696. package/dist/types/fieldTypes/rich_text.d.ts +100 -0
  697. package/dist/types/fieldTypes/seo.d.ts +38 -0
  698. package/dist/types/fieldTypes/single_block.d.ts +134 -0
  699. package/dist/types/fieldTypes/slug.d.ts +26 -0
  700. package/dist/types/fieldTypes/string.d.ts +37 -0
  701. package/dist/types/fieldTypes/structured_text.d.ts +181 -0
  702. package/dist/types/fieldTypes/text.d.ts +34 -0
  703. package/dist/types/fieldTypes/validators/date_range.d.ts +14 -0
  704. package/dist/types/fieldTypes/validators/date_time_range.d.ts +12 -0
  705. package/dist/types/fieldTypes/validators/description_length.d.ts +11 -0
  706. package/dist/types/fieldTypes/validators/enum.d.ts +7 -0
  707. package/dist/types/fieldTypes/validators/extension.d.ts +12 -0
  708. package/dist/types/fieldTypes/validators/file_size.d.ts +16 -0
  709. package/dist/types/fieldTypes/validators/format.d.ts +18 -0
  710. package/dist/types/fieldTypes/validators/image_aspect_ratio.d.ts +28 -0
  711. package/dist/types/fieldTypes/validators/image_dimensions.d.ts +28 -0
  712. package/dist/types/fieldTypes/validators/index.d.ts +27 -0
  713. package/dist/types/fieldTypes/validators/item_item_type.d.ts +29 -0
  714. package/dist/types/fieldTypes/validators/items_item_type.d.ts +29 -0
  715. package/dist/types/fieldTypes/validators/length.d.ts +19 -0
  716. package/dist/types/fieldTypes/validators/number_range.d.ts +10 -0
  717. package/dist/types/fieldTypes/validators/required.d.ts +4 -0
  718. package/dist/types/fieldTypes/validators/required_alt_title.d.ts +12 -0
  719. package/dist/types/fieldTypes/validators/required_seo_fields.d.ts +28 -0
  720. package/dist/types/fieldTypes/validators/rich_text_blocks.d.ts +7 -0
  721. package/dist/types/fieldTypes/validators/sanitization.d.ts +7 -0
  722. package/dist/types/fieldTypes/validators/single_block_blocks.d.ts +7 -0
  723. package/dist/types/fieldTypes/validators/size.d.ts +28 -0
  724. package/dist/types/fieldTypes/validators/slug_format.d.ts +12 -0
  725. package/dist/types/fieldTypes/validators/slug_title_field.d.ts +7 -0
  726. package/dist/types/fieldTypes/validators/structured_text_blocks.d.ts +7 -0
  727. package/dist/types/fieldTypes/validators/structured_text_inline_blocks.d.ts +7 -0
  728. package/dist/types/fieldTypes/validators/structured_text_links.d.ts +29 -0
  729. package/dist/types/fieldTypes/validators/title_length.d.ts +11 -0
  730. package/dist/types/fieldTypes/validators/unique.d.ts +4 -0
  731. package/dist/types/fieldTypes/video.d.ts +25 -0
  732. package/dist/types/generated/SchemaTypes.d.ts +72 -7
  733. package/dist/types/generated/SimpleSchemaTypes.d.ts +65 -8
  734. package/dist/types/generated/resources/Field.d.ts +4207 -7
  735. package/dist/types/generated/resources/Fieldset.d.ts +2 -2
  736. package/dist/types/generated/resources/UploadRequest.d.ts +2 -2
  737. package/dist/types/index.d.ts +8 -2
  738. package/dist/types/utilities/blocks.d.ts +180 -0
  739. package/dist/types/{buildBlockRecord.d.ts → utilities/buildBlockRecord.d.ts} +2 -2
  740. package/dist/types/utilities/fieldValueLocalization.d.ts +123 -0
  741. package/dist/types/utilities/fieldsContainingReferences.d.ts +4 -0
  742. package/dist/types/utilities/recursiveBlocks.d.ts +15 -0
  743. package/dist/types/utilities/schemaRepository.d.ts +181 -0
  744. package/dist/types/utilities/structuredText.d.ts +177 -0
  745. package/package.json +5 -4
  746. package/resources.json +3 -3
  747. package/src/fieldTypes/appearance/boolean.ts +4 -0
  748. package/src/fieldTypes/appearance/boolean_radio_group.ts +16 -0
  749. package/src/fieldTypes/appearance/color_picker.ts +9 -0
  750. package/src/fieldTypes/appearance/date_picker.ts +4 -0
  751. package/src/fieldTypes/appearance/date_time_picker.ts +4 -0
  752. package/src/fieldTypes/appearance/file.ts +4 -0
  753. package/src/fieldTypes/appearance/float.ts +7 -0
  754. package/src/fieldTypes/appearance/framed_single_block.ts +7 -0
  755. package/src/fieldTypes/appearance/frameless_single_block.ts +7 -0
  756. package/src/fieldTypes/appearance/gallery.ts +4 -0
  757. package/src/fieldTypes/appearance/index.ts +30 -0
  758. package/src/fieldTypes/appearance/integer.ts +7 -0
  759. package/src/fieldTypes/appearance/json.ts +4 -0
  760. package/src/fieldTypes/appearance/link_embed.ts +5 -0
  761. package/src/fieldTypes/appearance/link_select.ts +5 -0
  762. package/src/fieldTypes/appearance/links_embed.ts +5 -0
  763. package/src/fieldTypes/appearance/links_select.ts +5 -0
  764. package/src/fieldTypes/appearance/map.ts +4 -0
  765. package/src/fieldTypes/appearance/markdown.ts +19 -0
  766. package/src/fieldTypes/appearance/rich_text.ts +7 -0
  767. package/src/fieldTypes/appearance/seo.ts +19 -0
  768. package/src/fieldTypes/appearance/single_line.ts +9 -0
  769. package/src/fieldTypes/appearance/slug.ts +9 -0
  770. package/src/fieldTypes/appearance/string_checkbox_group.ts +16 -0
  771. package/src/fieldTypes/appearance/string_multi_select.ts +16 -0
  772. package/src/fieldTypes/appearance/string_radio_group.ts +16 -0
  773. package/src/fieldTypes/appearance/string_select.ts +16 -0
  774. package/src/fieldTypes/appearance/structured_text.ts +21 -0
  775. package/src/fieldTypes/appearance/textarea.ts +7 -0
  776. package/src/fieldTypes/appearance/video.ts +4 -0
  777. package/src/fieldTypes/appearance/wysiwyg.ts +29 -0
  778. package/src/fieldTypes/boolean.ts +25 -0
  779. package/src/fieldTypes/color.ts +35 -0
  780. package/src/fieldTypes/date.ts +26 -0
  781. package/src/fieldTypes/date_time.ts +34 -0
  782. package/src/fieldTypes/file.ts +47 -0
  783. package/src/fieldTypes/float.ts +25 -0
  784. package/src/fieldTypes/gallery.ts +55 -0
  785. package/src/fieldTypes/index.ts +23 -0
  786. package/src/fieldTypes/integer.ts +27 -0
  787. package/src/fieldTypes/json.ts +39 -0
  788. package/src/fieldTypes/lat_lon.ts +33 -0
  789. package/src/fieldTypes/link.ts +30 -0
  790. package/src/fieldTypes/links.ts +30 -0
  791. package/src/fieldTypes/rich_text.ts +151 -0
  792. package/src/fieldTypes/seo.ts +52 -0
  793. package/src/fieldTypes/single_block.ts +201 -0
  794. package/src/fieldTypes/slug.ts +32 -0
  795. package/src/fieldTypes/string.ts +41 -0
  796. package/src/fieldTypes/structured_text.ts +328 -0
  797. package/src/fieldTypes/text.ts +35 -0
  798. package/src/fieldTypes/validators/date_range.ts +16 -0
  799. package/src/fieldTypes/validators/date_time_range.ts +14 -0
  800. package/src/fieldTypes/validators/description_length.ts +13 -0
  801. package/src/fieldTypes/validators/enum.ts +7 -0
  802. package/src/fieldTypes/validators/extension.ts +14 -0
  803. package/src/fieldTypes/validators/file_size.ts +18 -0
  804. package/src/fieldTypes/validators/format.ts +18 -0
  805. package/src/fieldTypes/validators/image_aspect_ratio.ts +31 -0
  806. package/src/fieldTypes/validators/image_dimensions.ts +32 -0
  807. package/src/fieldTypes/validators/index.ts +27 -0
  808. package/src/fieldTypes/validators/item_item_type.ts +31 -0
  809. package/src/fieldTypes/validators/items_item_type.ts +31 -0
  810. package/src/fieldTypes/validators/length.ts +22 -0
  811. package/src/fieldTypes/validators/number_range.ts +12 -0
  812. package/src/fieldTypes/validators/required.ts +4 -0
  813. package/src/fieldTypes/validators/required_alt_title.ts +14 -0
  814. package/src/fieldTypes/validators/required_seo_fields.ts +32 -0
  815. package/src/fieldTypes/validators/rich_text_blocks.ts +7 -0
  816. package/src/fieldTypes/validators/sanitization.ts +7 -0
  817. package/src/fieldTypes/validators/single_block_blocks.ts +7 -0
  818. package/src/fieldTypes/validators/size.ts +32 -0
  819. package/src/fieldTypes/validators/slug_format.ts +14 -0
  820. package/src/fieldTypes/validators/slug_title_field.ts +7 -0
  821. package/src/fieldTypes/validators/structured_text_blocks.ts +7 -0
  822. package/src/fieldTypes/validators/structured_text_inline_blocks.ts +7 -0
  823. package/src/fieldTypes/validators/structured_text_links.ts +31 -0
  824. package/src/fieldTypes/validators/title_length.ts +13 -0
  825. package/src/fieldTypes/validators/unique.ts +4 -0
  826. package/src/fieldTypes/video.ts +37 -0
  827. package/src/generated/Client.ts +1 -1
  828. package/src/generated/SchemaTypes.ts +645 -7
  829. package/src/generated/SimpleSchemaTypes.ts +638 -8
  830. package/src/generated/resources/Field.ts +2 -2
  831. package/src/generated/resources/Fieldset.ts +2 -2
  832. package/src/generated/resources/UploadRequest.ts +2 -2
  833. package/src/index.ts +8 -2
  834. package/src/utilities/blocks.ts +626 -0
  835. package/src/{buildBlockRecord.ts → utilities/buildBlockRecord.ts} +3 -3
  836. package/src/utilities/fieldValueLocalization.ts +339 -0
  837. package/src/utilities/fieldsContainingReferences.ts +49 -0
  838. package/src/utilities/recursiveBlocks.ts +392 -0
  839. package/src/utilities/schemaRepository.ts +379 -0
  840. package/src/utilities/structuredText.ts +590 -0
  841. package/dist/cjs/buildBlockRecord.js.map +0 -1
  842. package/dist/cjs/idUtils.js.map +0 -1
  843. package/dist/esm/buildBlockRecord.js.map +0 -1
  844. package/dist/esm/idUtils.js.map +0 -1
  845. /package/dist/esm/{idUtils.d.ts → utilities/id.d.ts} +0 -0
  846. /package/dist/types/{idUtils.d.ts → utilities/id.d.ts} +0 -0
  847. /package/src/{idUtils.ts → utilities/id.ts} +0 -0
@@ -0,0 +1,379 @@
1
+ import { deserializeResponseBody } from '@datocms/rest-client-utils';
2
+ import type * as SchemaTypes from '../generated/SchemaTypes';
3
+ import type * as SimpleSchemaTypes from '../generated/SimpleSchemaTypes';
4
+
5
+ interface GenericClient {
6
+ itemTypes: {
7
+ rawList(): Promise<{ data: SchemaTypes.ItemType[] }>;
8
+ };
9
+ fields: {
10
+ rawList(itemTypeId: string): Promise<{ data: SchemaTypes.Field[] }>;
11
+ };
12
+ fieldsets: {
13
+ rawList(itemTypeId: string): Promise<{ data: SchemaTypes.Fieldset[] }>;
14
+ };
15
+ plugins: {
16
+ rawList(): Promise<{ data: SchemaTypes.Plugin[] }>;
17
+ };
18
+ }
19
+
20
+ /**
21
+ * Repository for DatoCMS schema entities including item types, fields, and plugins.
22
+ * Provides caching and efficient lookup functionality for schema-related operations.
23
+ */
24
+ export class SchemaRepository {
25
+ private client: GenericClient;
26
+ private itemTypesPromise: Promise<SchemaTypes.ItemType[]> | null = null;
27
+ private itemTypesByApiKey: Map<string, SchemaTypes.ItemType> = new Map();
28
+ private itemTypesById: Map<string, SchemaTypes.ItemType> = new Map();
29
+ private fieldsByItemType: Map<string, SchemaTypes.Field[]> = new Map();
30
+ private fieldsetsByItemType: Map<string, SchemaTypes.Fieldset[]> = new Map();
31
+ private pluginsPromise: Promise<SchemaTypes.Plugin[]> | null = null;
32
+ private pluginsById: Map<string, SchemaTypes.Plugin> = new Map();
33
+ private pluginsByPackageName: Map<string, SchemaTypes.Plugin> = new Map();
34
+
35
+ /**
36
+ * Creates a new SchemaRepository instance.
37
+ * @param client - The DatoCMS client instance
38
+ */
39
+ constructor(client: GenericClient) {
40
+ this.client = client;
41
+ }
42
+
43
+ /**
44
+ * Loads and caches all item types from the DatoCMS API.
45
+ * This method is called lazily and caches the result for subsequent calls.
46
+ * @returns Promise that resolves to an array of item types
47
+ */
48
+ private async loadItemTypes(): Promise<SchemaTypes.ItemType[]> {
49
+ if (!this.itemTypesPromise) {
50
+ this.itemTypesPromise = (async () => {
51
+ const { data: itemTypes } = await this.client.itemTypes.rawList();
52
+
53
+ // Populate the lookup maps
54
+ for (const itemType of itemTypes) {
55
+ this.itemTypesByApiKey.set(itemType.attributes.api_key, itemType);
56
+ this.itemTypesById.set(itemType.id, itemType);
57
+ }
58
+
59
+ return itemTypes;
60
+ })();
61
+ }
62
+
63
+ return this.itemTypesPromise;
64
+ }
65
+
66
+ /**
67
+ * Gets all item types from the DatoCMS project.
68
+ * @returns Promise that resolves to an array of all item types
69
+ */
70
+ async getAllItemTypes(): Promise<SimpleSchemaTypes.ItemType[]> {
71
+ const rawResult = await this.getAllRawItemTypes();
72
+ return deserializeResponseBody<SimpleSchemaTypes.ItemType[]>({
73
+ data: rawResult,
74
+ });
75
+ }
76
+
77
+ /**
78
+ * Gets all item types from the DatoCMS project.
79
+ * @returns Promise that resolves to an array of all item types
80
+ */
81
+ async getAllRawItemTypes(): Promise<SchemaTypes.ItemType[]> {
82
+ const itemTypes = await this.loadItemTypes();
83
+ return itemTypes;
84
+ }
85
+
86
+ /**
87
+ * Gets all item types that are models (not modular blocks).
88
+ * @returns Promise that resolves to an array of model item types
89
+ */
90
+ async getAllModels(): Promise<SimpleSchemaTypes.ItemType[]> {
91
+ const rawResult = await this.getAllRawModels();
92
+ return deserializeResponseBody<SimpleSchemaTypes.ItemType[]>({
93
+ data: rawResult,
94
+ });
95
+ }
96
+
97
+ /**
98
+ * Gets all item types that are models (not modular blocks).
99
+ * @returns Promise that resolves to an array of model item types
100
+ */
101
+ async getAllRawModels(): Promise<SchemaTypes.ItemType[]> {
102
+ const itemTypes = await this.loadItemTypes();
103
+ return itemTypes.filter((it) => !it.attributes.modular_block);
104
+ }
105
+
106
+ /**
107
+ * Gets all item types that are modular blocks.
108
+ * @returns Promise that resolves to an array of block model item types
109
+ */
110
+ async getAllBlockModels(): Promise<SimpleSchemaTypes.ItemType[]> {
111
+ const rawResult = await this.getAllRawBlockModels();
112
+ return deserializeResponseBody<SimpleSchemaTypes.ItemType[]>({
113
+ data: rawResult,
114
+ });
115
+ }
116
+
117
+ /**
118
+ * Gets all item types that are modular blocks.
119
+ * @returns Promise that resolves to an array of block model item types
120
+ */
121
+ async getAllRawBlockModels(): Promise<SchemaTypes.ItemType[]> {
122
+ const itemTypes = await this.loadItemTypes();
123
+ return itemTypes.filter((it) => it.attributes.modular_block);
124
+ }
125
+
126
+ /**
127
+ * Gets an item type by its API key.
128
+ * @param apiKey - The API key of the item type to retrieve
129
+ * @returns Promise that resolves to the item type
130
+ * @throws Error if the item type is not found
131
+ */
132
+ async getItemTypeByApiKey(
133
+ apiKey: string,
134
+ ): Promise<SimpleSchemaTypes.ItemType> {
135
+ const rawResult = await this.getRawItemTypeByApiKey(apiKey);
136
+ return deserializeResponseBody<SimpleSchemaTypes.ItemType>({
137
+ data: rawResult,
138
+ });
139
+ }
140
+
141
+ /**
142
+ * Gets an item type by its API key.
143
+ * @param apiKey - The API key of the item type to retrieve
144
+ * @returns Promise that resolves to the item type
145
+ * @throws Error if the item type is not found
146
+ */
147
+ async getRawItemTypeByApiKey(apiKey: string): Promise<SchemaTypes.ItemType> {
148
+ await this.loadItemTypes();
149
+
150
+ const itemType = this.itemTypesByApiKey.get(apiKey);
151
+ if (!itemType) {
152
+ throw new Error(`Item type with API key '${apiKey}' not found`);
153
+ }
154
+
155
+ return itemType;
156
+ }
157
+
158
+ /**
159
+ * Gets an item type by its ID.
160
+ * @param id - The ID of the item type to retrieve
161
+ * @returns Promise that resolves to the item type
162
+ * @throws Error if the item type is not found
163
+ */
164
+ async getItemTypeById(id: string): Promise<SimpleSchemaTypes.ItemType> {
165
+ const rawResult = await this.getRawItemTypeById(id);
166
+ return deserializeResponseBody<SimpleSchemaTypes.ItemType>({
167
+ data: rawResult,
168
+ });
169
+ }
170
+
171
+ /**
172
+ * Gets an item type by its ID.
173
+ * @param id - The ID of the item type to retrieve
174
+ * @returns Promise that resolves to the item type
175
+ * @throws Error if the item type is not found
176
+ */
177
+ async getRawItemTypeById(id: string): Promise<SchemaTypes.ItemType> {
178
+ await this.loadItemTypes();
179
+
180
+ const itemType = this.itemTypesById.get(id);
181
+ if (!itemType) {
182
+ throw new Error(`Item type with ID '${id}' not found`);
183
+ }
184
+
185
+ return itemType;
186
+ }
187
+
188
+ /**
189
+ * Gets all fields for a given item type.
190
+ * Fields are cached after the first request for performance.
191
+ * @param itemType - The item type to get fields for
192
+ * @returns Promise that resolves to an array of fields
193
+ */
194
+ async getItemTypeFields(
195
+ itemType: SimpleSchemaTypes.ItemType | SchemaTypes.ItemType,
196
+ ): Promise<SimpleSchemaTypes.Field[]> {
197
+ const rawResult = await this.getRawItemTypeFields(
198
+ itemType as SchemaTypes.ItemType,
199
+ );
200
+ return deserializeResponseBody<SimpleSchemaTypes.Field[]>({
201
+ data: rawResult,
202
+ });
203
+ }
204
+
205
+ /**
206
+ * Gets all fields for a given item type.
207
+ * Fields are cached after the first request for performance.
208
+ * @param itemType - The item type to get fields for
209
+ * @returns Promise that resolves to an array of fields
210
+ */
211
+ async getRawItemTypeFields(
212
+ itemType: SchemaTypes.ItemType,
213
+ ): Promise<SchemaTypes.Field[]> {
214
+ // Check if we already have the fields cached
215
+ const cachedFields = this.fieldsByItemType.get(itemType.id);
216
+ if (cachedFields) {
217
+ return cachedFields;
218
+ }
219
+
220
+ // Fetch and cache the fields
221
+ const { data: fields } = await this.client.fields.rawList(itemType.id);
222
+ this.fieldsByItemType.set(itemType.id, fields);
223
+
224
+ return fields;
225
+ }
226
+
227
+ /**
228
+ * Gets all fieldsets for a given item type.
229
+ * Fieldsets are cached after the first request for performance.
230
+ * @param itemType - The item type to get fieldsets for
231
+ * @returns Promise that resolves to an array of fieldsets
232
+ */
233
+ async getItemTypeFieldsets(
234
+ itemType: SimpleSchemaTypes.ItemType | SchemaTypes.ItemType,
235
+ ): Promise<SimpleSchemaTypes.Fieldset[]> {
236
+ const rawResult = await this.getRawItemTypeFieldsets(
237
+ itemType as SchemaTypes.ItemType,
238
+ );
239
+ return deserializeResponseBody<SimpleSchemaTypes.Fieldset[]>({
240
+ data: rawResult,
241
+ });
242
+ }
243
+
244
+ /**
245
+ * Gets all fieldsets for a given item type.
246
+ * Fieldsets are cached after the first request for performance.
247
+ * @param itemType - The item type to get fieldsets for
248
+ * @returns Promise that resolves to an array of fieldsets
249
+ */
250
+ async getRawItemTypeFieldsets(
251
+ itemType: SchemaTypes.ItemType,
252
+ ): Promise<SchemaTypes.Fieldset[]> {
253
+ // Check if we already have the fieldsets cached
254
+ const cachedFieldsets = this.fieldsetsByItemType.get(itemType.id);
255
+ if (cachedFieldsets) {
256
+ return cachedFieldsets;
257
+ }
258
+
259
+ // Fetch and cache the fieldsets
260
+ const { data: fieldsets } = await this.client.fieldsets.rawList(
261
+ itemType.id,
262
+ );
263
+ this.fieldsetsByItemType.set(itemType.id, fieldsets);
264
+
265
+ return fieldsets;
266
+ }
267
+
268
+ /**
269
+ * Loads and caches all plugins from the DatoCMS API.
270
+ * This method is called lazily and caches the result for subsequent calls.
271
+ * @returns Promise that resolves to an array of plugins
272
+ */
273
+ private async loadPlugins(): Promise<SchemaTypes.Plugin[]> {
274
+ if (!this.pluginsPromise) {
275
+ this.pluginsPromise = (async () => {
276
+ const { data: plugins } = await this.client.plugins.rawList();
277
+
278
+ // Populate the lookup maps
279
+ for (const plugin of plugins) {
280
+ this.pluginsById.set(plugin.id, plugin);
281
+ if (plugin.attributes.package_name) {
282
+ this.pluginsByPackageName.set(
283
+ plugin.attributes.package_name,
284
+ plugin,
285
+ );
286
+ }
287
+ }
288
+
289
+ return plugins;
290
+ })();
291
+ }
292
+
293
+ return this.pluginsPromise;
294
+ }
295
+
296
+ /**
297
+ * Gets all plugins from the DatoCMS project.
298
+ * @returns Promise that resolves to an array of all plugins
299
+ */
300
+ async getAllPlugins(): Promise<SimpleSchemaTypes.Plugin[]> {
301
+ const rawResult = await this.getAllRawPlugins();
302
+ return deserializeResponseBody<SimpleSchemaTypes.Plugin[]>({
303
+ data: rawResult,
304
+ });
305
+ }
306
+
307
+ /**
308
+ * Gets all plugins from the DatoCMS project.
309
+ * @returns Promise that resolves to an array of all plugins
310
+ */
311
+ async getAllRawPlugins(): Promise<SchemaTypes.Plugin[]> {
312
+ const plugins = await this.loadPlugins();
313
+ return plugins;
314
+ }
315
+
316
+ /**
317
+ * Gets a plugin by its ID.
318
+ * @param id - The ID of the plugin to retrieve
319
+ * @returns Promise that resolves to the plugin
320
+ * @throws Error if the plugin is not found
321
+ */
322
+ async getPluginById(id: string): Promise<SimpleSchemaTypes.Plugin> {
323
+ const rawResult = await this.getRawPluginById(id);
324
+ return deserializeResponseBody<SimpleSchemaTypes.Plugin>({
325
+ data: rawResult,
326
+ });
327
+ }
328
+
329
+ /**
330
+ * Gets a plugin by its ID.
331
+ * @param id - The ID of the plugin to retrieve
332
+ * @returns Promise that resolves to the plugin
333
+ * @throws Error if the plugin is not found
334
+ */
335
+ async getRawPluginById(id: string): Promise<SchemaTypes.Plugin> {
336
+ await this.loadPlugins();
337
+
338
+ const plugin = this.pluginsById.get(id);
339
+ if (!plugin) {
340
+ throw new Error(`Plugin with ID '${id}' not found`);
341
+ }
342
+
343
+ return plugin;
344
+ }
345
+
346
+ /**
347
+ * Gets a plugin by its package name.
348
+ * @param packageName - The package name of the plugin to retrieve
349
+ * @returns Promise that resolves to the plugin
350
+ * @throws Error if the plugin is not found
351
+ */
352
+ async getPluginByPackageName(
353
+ packageName: string,
354
+ ): Promise<SimpleSchemaTypes.Plugin> {
355
+ const rawResult = await this.getRawPluginByPackageName(packageName);
356
+ return deserializeResponseBody<SimpleSchemaTypes.Plugin>({
357
+ data: rawResult,
358
+ });
359
+ }
360
+
361
+ /**
362
+ * Gets a plugin by its package name.
363
+ * @param packageName - The package name of the plugin to retrieve
364
+ * @returns Promise that resolves to the plugin
365
+ * @throws Error if the plugin is not found
366
+ */
367
+ async getRawPluginByPackageName(
368
+ packageName: string,
369
+ ): Promise<SchemaTypes.Plugin> {
370
+ await this.loadPlugins();
371
+
372
+ const plugin = this.pluginsByPackageName.get(packageName);
373
+ if (!plugin) {
374
+ throw new Error(`Plugin with package name '${packageName}' not found`);
375
+ }
376
+
377
+ return plugin;
378
+ }
379
+ }