@storyblok/management-api-client 0.5.1 → 0.6.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 (320) hide show
  1. package/README.md +3 -1
  2. package/dist/client.cjs +196 -0
  3. package/dist/client.cjs.map +1 -0
  4. package/dist/client.d.cts +761 -0
  5. package/dist/client.d.mts +761 -0
  6. package/dist/client.mjs +195 -0
  7. package/dist/client.mjs.map +1 -0
  8. package/dist/error.cjs.map +1 -1
  9. package/dist/error.d.cts +12 -2
  10. package/dist/error.d.mts +12 -2
  11. package/dist/error.mjs.map +1 -1
  12. package/dist/generated/mapi/_internal.gen.d.cts +371 -0
  13. package/dist/generated/mapi/_internal.gen.d.mts +371 -0
  14. package/dist/generated/{shared → mapi}/client/client.gen.cjs +1 -1
  15. package/dist/generated/mapi/client/client.gen.cjs.map +1 -0
  16. package/dist/generated/{shared → mapi}/client/client.gen.mjs +1 -1
  17. package/dist/generated/mapi/client/client.gen.mjs.map +1 -0
  18. package/dist/generated/{shared → mapi}/client/types.gen.d.cts +1 -1
  19. package/dist/generated/{shared → mapi}/client/types.gen.d.mts +1 -1
  20. package/dist/generated/{shared → mapi}/client/utils.gen.cjs +1 -1
  21. package/dist/generated/mapi/client/utils.gen.cjs.map +1 -0
  22. package/dist/generated/{shared → mapi}/client/utils.gen.d.cts +1 -1
  23. package/dist/generated/{shared → mapi}/client/utils.gen.d.mts +1 -1
  24. package/dist/generated/{shared → mapi}/client/utils.gen.mjs +1 -1
  25. package/dist/generated/mapi/client/utils.gen.mjs.map +1 -0
  26. package/dist/generated/mapi/client.gen.cjs +10 -0
  27. package/dist/generated/mapi/client.gen.cjs.map +1 -0
  28. package/dist/generated/mapi/client.gen.mjs +10 -0
  29. package/dist/generated/mapi/client.gen.mjs.map +1 -0
  30. package/dist/generated/{shared → mapi}/core/auth.gen.cjs +1 -1
  31. package/dist/generated/mapi/core/auth.gen.cjs.map +1 -0
  32. package/dist/generated/{shared → mapi}/core/auth.gen.d.cts +1 -1
  33. package/dist/generated/{shared → mapi}/core/auth.gen.d.mts +1 -1
  34. package/dist/generated/{shared → mapi}/core/auth.gen.mjs +1 -1
  35. package/dist/generated/mapi/core/auth.gen.mjs.map +1 -0
  36. package/dist/generated/{shared → mapi}/core/bodySerializer.gen.cjs +1 -1
  37. package/dist/generated/mapi/core/bodySerializer.gen.cjs.map +1 -0
  38. package/dist/generated/{shared → mapi}/core/bodySerializer.gen.d.cts +1 -1
  39. package/dist/generated/{shared → mapi}/core/bodySerializer.gen.d.mts +1 -1
  40. package/dist/generated/{shared → mapi}/core/bodySerializer.gen.mjs +1 -1
  41. package/dist/generated/mapi/core/bodySerializer.gen.mjs.map +1 -0
  42. package/dist/generated/{shared → mapi}/core/params.gen.cjs +1 -1
  43. package/dist/generated/mapi/core/params.gen.cjs.map +1 -0
  44. package/dist/generated/{shared → mapi}/core/params.gen.mjs +1 -1
  45. package/dist/generated/mapi/core/params.gen.mjs.map +1 -0
  46. package/dist/generated/{shared → mapi}/core/pathSerializer.gen.cjs +1 -1
  47. package/dist/generated/mapi/core/pathSerializer.gen.cjs.map +1 -0
  48. package/dist/generated/{shared → mapi}/core/pathSerializer.gen.d.cts +1 -1
  49. package/dist/generated/{shared → mapi}/core/pathSerializer.gen.d.mts +1 -1
  50. package/dist/generated/{shared → mapi}/core/pathSerializer.gen.mjs +1 -1
  51. package/dist/generated/mapi/core/pathSerializer.gen.mjs.map +1 -0
  52. package/dist/generated/{shared → mapi}/core/serverSentEvents.gen.cjs +1 -1
  53. package/dist/generated/mapi/core/serverSentEvents.gen.cjs.map +1 -0
  54. package/dist/generated/{shared → mapi}/core/serverSentEvents.gen.d.cts +1 -1
  55. package/dist/generated/{shared → mapi}/core/serverSentEvents.gen.d.mts +1 -1
  56. package/dist/generated/{shared → mapi}/core/serverSentEvents.gen.mjs +1 -1
  57. package/dist/generated/mapi/core/serverSentEvents.gen.mjs.map +1 -0
  58. package/dist/generated/{shared → mapi}/core/types.gen.d.cts +1 -1
  59. package/dist/generated/{shared → mapi}/core/types.gen.d.mts +1 -1
  60. package/dist/generated/{shared → mapi}/core/utils.gen.cjs +1 -1
  61. package/dist/generated/mapi/core/utils.gen.cjs.map +1 -0
  62. package/dist/generated/{shared → mapi}/core/utils.gen.mjs +1 -1
  63. package/dist/generated/mapi/core/utils.gen.mjs.map +1 -0
  64. package/dist/generated/mapi/sdk.gen.cjs +1477 -0
  65. package/dist/generated/mapi/sdk.gen.cjs.map +1 -0
  66. package/dist/generated/mapi/sdk.gen.mjs +1399 -0
  67. package/dist/generated/mapi/sdk.gen.mjs.map +1 -0
  68. package/dist/generated/mapi/types-aliased.gen.d.cts +1598 -0
  69. package/dist/generated/mapi/types-aliased.gen.d.mts +1598 -0
  70. package/dist/generated/mapi/types.gen.d.cts +5075 -0
  71. package/dist/generated/mapi/types.gen.d.mts +5075 -0
  72. package/dist/generated/overlay/_internal.gen.d.cts +850 -0
  73. package/dist/generated/overlay/_internal.gen.d.mts +850 -0
  74. package/dist/generated/types/_utils.d.cts +7 -0
  75. package/dist/generated/types/_utils.d.mts +7 -0
  76. package/dist/generated/types/block.d.cts +55 -0
  77. package/dist/generated/types/block.d.mts +55 -0
  78. package/dist/generated/types/field.d.cts +122 -0
  79. package/dist/generated/types/field.d.mts +122 -0
  80. package/dist/generated/types/mapi-story.d.cts +29 -0
  81. package/dist/generated/types/mapi-story.d.mts +29 -0
  82. package/dist/index.cjs +3 -181
  83. package/dist/index.d.cts +12 -650
  84. package/dist/index.d.mts +12 -649
  85. package/dist/index.mjs +2 -179
  86. package/dist/resources/asset-folders.cjs +9 -9
  87. package/dist/resources/asset-folders.cjs.map +1 -1
  88. package/dist/resources/asset-folders.mjs +9 -9
  89. package/dist/resources/asset-folders.mjs.map +1 -1
  90. package/dist/resources/assets.cjs +57 -50
  91. package/dist/resources/assets.cjs.map +1 -1
  92. package/dist/resources/assets.d.cts +23 -27
  93. package/dist/resources/assets.d.mts +23 -27
  94. package/dist/resources/assets.mjs +57 -50
  95. package/dist/resources/assets.mjs.map +1 -1
  96. package/dist/resources/component-folders.cjs +9 -9
  97. package/dist/resources/component-folders.cjs.map +1 -1
  98. package/dist/resources/component-folders.mjs +9 -9
  99. package/dist/resources/component-folders.mjs.map +1 -1
  100. package/dist/resources/components.cjs +28 -20
  101. package/dist/resources/components.cjs.map +1 -1
  102. package/dist/resources/components.d.cts +76 -0
  103. package/dist/resources/components.d.mts +76 -0
  104. package/dist/resources/components.mjs +28 -20
  105. package/dist/resources/components.mjs.map +1 -1
  106. package/dist/resources/datasource-entries.cjs +28 -34
  107. package/dist/resources/datasource-entries.cjs.map +1 -1
  108. package/dist/resources/datasource-entries.mjs +29 -35
  109. package/dist/resources/datasource-entries.mjs.map +1 -1
  110. package/dist/resources/datasources.cjs +27 -9
  111. package/dist/resources/datasources.cjs.map +1 -1
  112. package/dist/resources/datasources.mjs +27 -9
  113. package/dist/resources/datasources.mjs.map +1 -1
  114. package/dist/resources/experiments.cjs +31 -31
  115. package/dist/resources/experiments.cjs.map +1 -1
  116. package/dist/resources/experiments.mjs +31 -31
  117. package/dist/resources/experiments.mjs.map +1 -1
  118. package/dist/resources/internal-tags.cjs +7 -7
  119. package/dist/resources/internal-tags.cjs.map +1 -1
  120. package/dist/resources/internal-tags.mjs +7 -7
  121. package/dist/resources/internal-tags.mjs.map +1 -1
  122. package/dist/resources/presets.cjs +9 -9
  123. package/dist/resources/presets.cjs.map +1 -1
  124. package/dist/resources/presets.mjs +9 -9
  125. package/dist/resources/presets.mjs.map +1 -1
  126. package/dist/resources/shared-asset-folders.cjs.map +1 -1
  127. package/dist/resources/shared-asset-folders.d.cts +1 -1
  128. package/dist/resources/shared-asset-folders.d.mts +1 -1
  129. package/dist/resources/shared-asset-folders.mjs.map +1 -1
  130. package/dist/resources/shared-assets.cjs.map +1 -1
  131. package/dist/resources/shared-assets.d.cts +2 -2
  132. package/dist/resources/shared-assets.d.mts +2 -2
  133. package/dist/resources/shared-assets.mjs.map +1 -1
  134. package/dist/resources/shared-internal-tags.cjs.map +1 -1
  135. package/dist/resources/shared-internal-tags.mjs.map +1 -1
  136. package/dist/resources/shared.cjs +15 -0
  137. package/dist/resources/shared.cjs.map +1 -1
  138. package/dist/resources/shared.mjs +15 -1
  139. package/dist/resources/shared.mjs.map +1 -1
  140. package/dist/resources/spaces.cjs +8 -7
  141. package/dist/resources/spaces.cjs.map +1 -1
  142. package/dist/resources/spaces.d.cts +8 -0
  143. package/dist/resources/spaces.d.mts +7 -0
  144. package/dist/resources/spaces.mjs +8 -7
  145. package/dist/resources/spaces.mjs.map +1 -1
  146. package/dist/resources/stories.cjs +20 -16
  147. package/dist/resources/stories.cjs.map +1 -1
  148. package/dist/resources/stories.d.cts +93 -0
  149. package/dist/resources/stories.d.mts +93 -0
  150. package/dist/resources/stories.mjs +20 -16
  151. package/dist/resources/stories.mjs.map +1 -1
  152. package/dist/resources/users.cjs +3 -3
  153. package/dist/resources/users.cjs.map +1 -1
  154. package/dist/resources/users.mjs +3 -3
  155. package/dist/resources/users.mjs.map +1 -1
  156. package/dist/utils/query-serializer.cjs +54 -0
  157. package/dist/utils/query-serializer.cjs.map +1 -0
  158. package/dist/utils/query-serializer.mjs +54 -0
  159. package/dist/utils/query-serializer.mjs.map +1 -0
  160. package/package.json +17 -15
  161. package/playground/integration-tests/README.md +24 -0
  162. package/playground/integration-tests/eslint.config.js +5 -0
  163. package/playground/integration-tests/node_modules/.bin/eslint +16 -0
  164. package/playground/integration-tests/node_modules/.bin/tsc +16 -0
  165. package/playground/integration-tests/node_modules/.bin/tsserver +16 -0
  166. package/playground/integration-tests/node_modules/.bin/vitest +16 -0
  167. package/playground/integration-tests/package.json +24 -0
  168. package/playground/integration-tests/test/setup.e2e.ts +11 -0
  169. package/playground/integration-tests/test/specs/mapi-round-trip.spec.e2e.ts +510 -0
  170. package/playground/integration-tests/test/types/components.test-d.ts +74 -0
  171. package/playground/integration-tests/test/types/resources.test-d.ts +212 -0
  172. package/playground/integration-tests/test/types/stories.test-d.ts +310 -0
  173. package/playground/integration-tests/vitest.config.e2e.ts +25 -0
  174. package/playground/integration-tests/vitest.config.ts +13 -0
  175. package/test/GUIDE.md +59 -0
  176. package/vitest.config.ts +5 -0
  177. package/dist/generated/asset_folders/client.gen.cjs +0 -10
  178. package/dist/generated/asset_folders/client.gen.cjs.map +0 -1
  179. package/dist/generated/asset_folders/client.gen.mjs +0 -10
  180. package/dist/generated/asset_folders/client.gen.mjs.map +0 -1
  181. package/dist/generated/asset_folders/sdk.gen.cjs +0 -99
  182. package/dist/generated/asset_folders/sdk.gen.cjs.map +0 -1
  183. package/dist/generated/asset_folders/sdk.gen.mjs +0 -95
  184. package/dist/generated/asset_folders/sdk.gen.mjs.map +0 -1
  185. package/dist/generated/asset_folders/types.gen.d.cts +0 -156
  186. package/dist/generated/asset_folders/types.gen.d.mts +0 -156
  187. package/dist/generated/assets/client.gen.cjs +0 -10
  188. package/dist/generated/assets/client.gen.cjs.map +0 -1
  189. package/dist/generated/assets/client.gen.mjs +0 -10
  190. package/dist/generated/assets/client.gen.mjs.map +0 -1
  191. package/dist/generated/assets/sdk.gen.cjs +0 -179
  192. package/dist/generated/assets/sdk.gen.cjs.map +0 -1
  193. package/dist/generated/assets/sdk.gen.mjs +0 -171
  194. package/dist/generated/assets/sdk.gen.mjs.map +0 -1
  195. package/dist/generated/assets/types.gen.d.cts +0 -415
  196. package/dist/generated/assets/types.gen.d.mts +0 -415
  197. package/dist/generated/component_folders/client.gen.cjs +0 -10
  198. package/dist/generated/component_folders/client.gen.cjs.map +0 -1
  199. package/dist/generated/component_folders/client.gen.mjs +0 -10
  200. package/dist/generated/component_folders/client.gen.mjs.map +0 -1
  201. package/dist/generated/component_folders/sdk.gen.cjs +0 -99
  202. package/dist/generated/component_folders/sdk.gen.cjs.map +0 -1
  203. package/dist/generated/component_folders/sdk.gen.mjs +0 -95
  204. package/dist/generated/component_folders/sdk.gen.mjs.map +0 -1
  205. package/dist/generated/component_folders/types.gen.d.cts +0 -118
  206. package/dist/generated/component_folders/types.gen.d.mts +0 -118
  207. package/dist/generated/components/client.gen.cjs +0 -10
  208. package/dist/generated/components/client.gen.cjs.map +0 -1
  209. package/dist/generated/components/client.gen.mjs +0 -10
  210. package/dist/generated/components/client.gen.mjs.map +0 -1
  211. package/dist/generated/components/sdk.gen.cjs +0 -171
  212. package/dist/generated/components/sdk.gen.cjs.map +0 -1
  213. package/dist/generated/components/sdk.gen.mjs +0 -163
  214. package/dist/generated/components/sdk.gen.mjs.map +0 -1
  215. package/dist/generated/components/types.gen.d.cts +0 -855
  216. package/dist/generated/components/types.gen.d.mts +0 -855
  217. package/dist/generated/datasource_entries/client.gen.cjs +0 -10
  218. package/dist/generated/datasource_entries/client.gen.cjs.map +0 -1
  219. package/dist/generated/datasource_entries/client.gen.mjs +0 -10
  220. package/dist/generated/datasource_entries/client.gen.mjs.map +0 -1
  221. package/dist/generated/datasource_entries/sdk.gen.cjs +0 -89
  222. package/dist/generated/datasource_entries/sdk.gen.cjs.map +0 -1
  223. package/dist/generated/datasource_entries/sdk.gen.mjs +0 -85
  224. package/dist/generated/datasource_entries/sdk.gen.mjs.map +0 -1
  225. package/dist/generated/datasource_entries/types.gen.d.cts +0 -156
  226. package/dist/generated/datasource_entries/types.gen.d.mts +0 -156
  227. package/dist/generated/datasources/client.gen.cjs +0 -10
  228. package/dist/generated/datasources/client.gen.cjs.map +0 -1
  229. package/dist/generated/datasources/client.gen.mjs +0 -10
  230. package/dist/generated/datasources/client.gen.mjs.map +0 -1
  231. package/dist/generated/datasources/sdk.gen.cjs +0 -89
  232. package/dist/generated/datasources/sdk.gen.cjs.map +0 -1
  233. package/dist/generated/datasources/sdk.gen.mjs +0 -85
  234. package/dist/generated/datasources/sdk.gen.mjs.map +0 -1
  235. package/dist/generated/datasources/types.gen.d.cts +0 -186
  236. package/dist/generated/datasources/types.gen.d.mts +0 -186
  237. package/dist/generated/experiments/client.gen.cjs +0 -10
  238. package/dist/generated/experiments/client.gen.cjs.map +0 -1
  239. package/dist/generated/experiments/client.gen.mjs +0 -10
  240. package/dist/generated/experiments/client.gen.mjs.map +0 -1
  241. package/dist/generated/experiments/sdk.gen.cjs +0 -298
  242. package/dist/generated/experiments/sdk.gen.cjs.map +0 -1
  243. package/dist/generated/experiments/sdk.gen.mjs +0 -283
  244. package/dist/generated/experiments/sdk.gen.mjs.map +0 -1
  245. package/dist/generated/experiments/types.gen.d.cts +0 -522
  246. package/dist/generated/experiments/types.gen.d.mts +0 -522
  247. package/dist/generated/internal_tags/client.gen.cjs +0 -10
  248. package/dist/generated/internal_tags/client.gen.cjs.map +0 -1
  249. package/dist/generated/internal_tags/client.gen.mjs +0 -10
  250. package/dist/generated/internal_tags/client.gen.mjs.map +0 -1
  251. package/dist/generated/internal_tags/sdk.gen.cjs +0 -74
  252. package/dist/generated/internal_tags/sdk.gen.cjs.map +0 -1
  253. package/dist/generated/internal_tags/sdk.gen.mjs +0 -71
  254. package/dist/generated/internal_tags/sdk.gen.mjs.map +0 -1
  255. package/dist/generated/internal_tags/types.gen.d.cts +0 -106
  256. package/dist/generated/internal_tags/types.gen.d.mts +0 -106
  257. package/dist/generated/presets/client.gen.cjs +0 -10
  258. package/dist/generated/presets/client.gen.cjs.map +0 -1
  259. package/dist/generated/presets/client.gen.mjs +0 -10
  260. package/dist/generated/presets/client.gen.mjs.map +0 -1
  261. package/dist/generated/presets/sdk.gen.cjs +0 -99
  262. package/dist/generated/presets/sdk.gen.cjs.map +0 -1
  263. package/dist/generated/presets/sdk.gen.mjs +0 -95
  264. package/dist/generated/presets/sdk.gen.mjs.map +0 -1
  265. package/dist/generated/presets/types.gen.d.cts +0 -176
  266. package/dist/generated/presets/types.gen.d.mts +0 -176
  267. package/dist/generated/shared/client/client.gen.cjs.map +0 -1
  268. package/dist/generated/shared/client/client.gen.mjs.map +0 -1
  269. package/dist/generated/shared/client/utils.gen.cjs.map +0 -1
  270. package/dist/generated/shared/client/utils.gen.mjs.map +0 -1
  271. package/dist/generated/shared/core/auth.gen.cjs.map +0 -1
  272. package/dist/generated/shared/core/auth.gen.mjs.map +0 -1
  273. package/dist/generated/shared/core/bodySerializer.gen.cjs.map +0 -1
  274. package/dist/generated/shared/core/bodySerializer.gen.mjs.map +0 -1
  275. package/dist/generated/shared/core/params.gen.cjs.map +0 -1
  276. package/dist/generated/shared/core/params.gen.mjs.map +0 -1
  277. package/dist/generated/shared/core/pathSerializer.gen.cjs.map +0 -1
  278. package/dist/generated/shared/core/pathSerializer.gen.mjs.map +0 -1
  279. package/dist/generated/shared/core/serverSentEvents.gen.cjs.map +0 -1
  280. package/dist/generated/shared/core/serverSentEvents.gen.mjs.map +0 -1
  281. package/dist/generated/shared/core/utils.gen.cjs.map +0 -1
  282. package/dist/generated/shared/core/utils.gen.mjs.map +0 -1
  283. package/dist/generated/spaces/client.gen.cjs +0 -10
  284. package/dist/generated/spaces/client.gen.cjs.map +0 -1
  285. package/dist/generated/spaces/client.gen.mjs +0 -10
  286. package/dist/generated/spaces/client.gen.mjs.map +0 -1
  287. package/dist/generated/spaces/sdk.gen.cjs +0 -99
  288. package/dist/generated/spaces/sdk.gen.cjs.map +0 -1
  289. package/dist/generated/spaces/sdk.gen.mjs +0 -95
  290. package/dist/generated/spaces/sdk.gen.mjs.map +0 -1
  291. package/dist/generated/spaces/types.gen.d.cts +0 -544
  292. package/dist/generated/spaces/types.gen.d.mts +0 -544
  293. package/dist/generated/stories/client.gen.cjs +0 -10
  294. package/dist/generated/stories/client.gen.cjs.map +0 -1
  295. package/dist/generated/stories/client.gen.mjs +0 -10
  296. package/dist/generated/stories/client.gen.mjs.map +0 -1
  297. package/dist/generated/stories/sdk.gen.cjs +0 -138
  298. package/dist/generated/stories/sdk.gen.cjs.map +0 -1
  299. package/dist/generated/stories/sdk.gen.mjs +0 -131
  300. package/dist/generated/stories/sdk.gen.mjs.map +0 -1
  301. package/dist/generated/stories/types.gen.d.cts +0 -1306
  302. package/dist/generated/stories/types.gen.d.mts +0 -1306
  303. package/dist/generated/users/client.gen.cjs +0 -10
  304. package/dist/generated/users/client.gen.cjs.map +0 -1
  305. package/dist/generated/users/client.gen.mjs +0 -10
  306. package/dist/generated/users/client.gen.mjs.map +0 -1
  307. package/dist/generated/users/sdk.gen.cjs +0 -44
  308. package/dist/generated/users/sdk.gen.cjs.map +0 -1
  309. package/dist/generated/users/sdk.gen.mjs +0 -43
  310. package/dist/generated/users/sdk.gen.mjs.map +0 -1
  311. package/dist/generated/users/types.gen.d.cts +0 -348
  312. package/dist/generated/users/types.gen.d.mts +0 -348
  313. package/dist/index.cjs.map +0 -1
  314. package/dist/index.mjs.map +0 -1
  315. package/dist/types.d.cts +0 -130
  316. package/dist/types.d.mts +0 -130
  317. /package/dist/generated/{shared → mapi}/client/client.gen.d.mts +0 -0
  318. /package/dist/generated/{shared → mapi}/client/index.cjs +0 -0
  319. /package/dist/generated/{shared → mapi}/client/index.d.mts +0 -0
  320. /package/dist/generated/{shared → mapi}/client/index.mjs +0 -0
package/README.md CHANGED
@@ -38,7 +38,9 @@
38
38
 
39
39
  ## Documentation
40
40
 
41
- For complete documentation, please visit [package reference](https://www.storyblok.com/docs/libraries/js/management-api-client)
41
+ <!-- TODO: restore docs link once live — https://www.storyblok.com/docs/libraries/js/management-api-client (docs #536/#548) -->
42
+
43
+ Full package documentation is coming soon. For now, browse the [package source on GitHub](https://github.com/storyblok/monoblok/tree/alpha/packages/mapi-client) or see it used in the [Astro playground](https://github.com/storyblok/monoblok/tree/alpha/packages/schema/playground/astro).
42
44
 
43
45
  ## Contributing
44
46
 
@@ -0,0 +1,196 @@
1
+ const require_runtime = require('./_virtual/_rolldown/runtime.cjs');
2
+ const require_utils_gen = require('./generated/mapi/client/utils.gen.cjs');
3
+ const require_client_gen = require('./generated/mapi/client/client.gen.cjs');
4
+ require('./generated/mapi/client/index.cjs');
5
+ const require_error = require('./error.cjs');
6
+ const require_rate_limit = require('./utils/rate-limit.cjs');
7
+ const require_query_serializer = require('./utils/query-serializer.cjs');
8
+ const require_asset_folders = require('./resources/asset-folders.cjs');
9
+ const require_assets = require('./resources/assets.cjs');
10
+ const require_component_folders = require('./resources/component-folders.cjs');
11
+ const require_components = require('./resources/components.cjs');
12
+ const require_datasource_entries = require('./resources/datasource-entries.cjs');
13
+ const require_datasources = require('./resources/datasources.cjs');
14
+ const require_experiments = require('./resources/experiments.cjs');
15
+ const require_internal_tags = require('./resources/internal-tags.cjs');
16
+ const require_presets = require('./resources/presets.cjs');
17
+ const require_shared_asset_folders = require('./resources/shared-asset-folders.cjs');
18
+ const require_shared_assets = require('./resources/shared-assets.cjs');
19
+ const require_shared_internal_tags = require('./resources/shared-internal-tags.cjs');
20
+ const require_spaces = require('./resources/spaces.cjs');
21
+ const require_stories = require('./resources/stories.cjs');
22
+ const require_users = require('./resources/users.cjs');
23
+ let _storyblok_region_helper = require("@storyblok/region-helper");
24
+
25
+ //#region src/client.ts
26
+ function getAuthorizationHeader(config) {
27
+ if (config.personalAccessToken) return config.personalAccessToken;
28
+ if (config.oauthToken) return config.oauthToken.startsWith("Bearer ") ? config.oauthToken : `Bearer ${config.oauthToken}`;
29
+ }
30
+ const createManagementApiClientBase = (config) => {
31
+ const { spaceId, region = "eu", baseUrl, headers = {}, throwOnError = false, retry = {
32
+ limit: 12,
33
+ backoffLimit: 2e4,
34
+ methods: [
35
+ "get",
36
+ "post",
37
+ "put",
38
+ "delete",
39
+ "patch",
40
+ "head",
41
+ "options",
42
+ "trace"
43
+ ],
44
+ statusCodes: [429]
45
+ }, timeout = 3e4, rateLimit } = config;
46
+ const throttleManager = require_rate_limit.createThrottleManager(rateLimit ?? {});
47
+ const authHeader = getAuthorizationHeader(config);
48
+ const client = require_client_gen.createClient(require_utils_gen.createConfig({
49
+ baseUrl: baseUrl || (0, _storyblok_region_helper.getManagementBaseUrl)(region),
50
+ headers: {
51
+ ...authHeader ? { Authorization: authHeader } : {},
52
+ ...headers
53
+ },
54
+ querySerializer: require_query_serializer.querySerializer,
55
+ throwOnError,
56
+ kyOptions: {
57
+ throwHttpErrors: true,
58
+ timeout,
59
+ retry
60
+ }
61
+ }));
62
+ client.interceptors.error.use((error, response) => new require_error.ClientError(response?.statusText || "API request failed", {
63
+ status: response?.status ?? 0,
64
+ statusText: response?.statusText ?? "",
65
+ data: error
66
+ }));
67
+ function wrapRequest(fn, _throwOnError) {
68
+ return throttleManager.execute(() => fn());
69
+ }
70
+ const deps = {
71
+ client,
72
+ spaceId,
73
+ wrapRequest
74
+ };
75
+ return {
76
+ deps,
77
+ resources: buildResources(deps, client)
78
+ };
79
+ };
80
+ function buildResources(deps, client) {
81
+ /**
82
+ * Escape hatch: send a GET request to any MAPI endpoint not yet wrapped
83
+ * in a dedicated resource method.
84
+ */
85
+ const httpGet = (path, options = {}) => {
86
+ const { fetchOptions, ...rest } = options;
87
+ return deps.wrapRequest(() => client.get({
88
+ url: path,
89
+ ...rest,
90
+ ...fetchOptions ? { kyOptions: {
91
+ ...client.getConfig().kyOptions,
92
+ ...fetchOptions
93
+ } } : {}
94
+ }));
95
+ };
96
+ /**
97
+ * Escape hatch: send a POST request to any MAPI endpoint not yet wrapped
98
+ * in a dedicated resource method.
99
+ */
100
+ const httpPost = (path, options = {}) => {
101
+ const { fetchOptions, ...rest } = options;
102
+ return deps.wrapRequest(() => client.post({
103
+ url: path,
104
+ ...rest,
105
+ ...fetchOptions ? { kyOptions: {
106
+ ...client.getConfig().kyOptions,
107
+ ...fetchOptions
108
+ } } : {}
109
+ }));
110
+ };
111
+ /**
112
+ * Escape hatch: send a PUT request to any MAPI endpoint not yet wrapped
113
+ * in a dedicated resource method.
114
+ */
115
+ const httpPut = (path, options = {}) => {
116
+ const { fetchOptions, ...rest } = options;
117
+ return deps.wrapRequest(() => client.put({
118
+ url: path,
119
+ ...rest,
120
+ ...fetchOptions ? { kyOptions: {
121
+ ...client.getConfig().kyOptions,
122
+ ...fetchOptions
123
+ } } : {}
124
+ }));
125
+ };
126
+ /**
127
+ * Escape hatch: send a PATCH request to any MAPI endpoint not yet wrapped
128
+ * in a dedicated resource method.
129
+ */
130
+ const httpPatch = (path, options = {}) => {
131
+ const { fetchOptions, ...rest } = options;
132
+ return deps.wrapRequest(() => client.patch({
133
+ url: path,
134
+ ...rest,
135
+ ...fetchOptions ? { kyOptions: {
136
+ ...client.getConfig().kyOptions,
137
+ ...fetchOptions
138
+ } } : {}
139
+ }));
140
+ };
141
+ /**
142
+ * Escape hatch: send a DELETE request to any MAPI endpoint not yet wrapped
143
+ * in a dedicated resource method.
144
+ */
145
+ const httpDelete = (path, options = {}) => {
146
+ const { fetchOptions, ...rest } = options;
147
+ return deps.wrapRequest(() => client.delete({
148
+ url: path,
149
+ ...rest,
150
+ ...fetchOptions ? { kyOptions: {
151
+ ...client.getConfig().kyOptions,
152
+ ...fetchOptions
153
+ } } : {}
154
+ }));
155
+ };
156
+ return {
157
+ assetFolders: require_asset_folders.createAssetFoldersResource(deps),
158
+ assets: require_assets.createAssetsResource(deps),
159
+ componentFolders: require_component_folders.createComponentFoldersResource(deps),
160
+ datasourceEntries: require_datasource_entries.createDatasourceEntriesResource(deps),
161
+ datasources: require_datasources.createDatasourcesResource(deps),
162
+ experiments: require_experiments.createExperimentsResource(deps),
163
+ delete: httpDelete,
164
+ get: httpGet,
165
+ patch: httpPatch,
166
+ interceptors: client.interceptors,
167
+ internalTags: require_internal_tags.createInternalTagsResource(deps),
168
+ post: httpPost,
169
+ presets: require_presets.createPresetsResource(deps),
170
+ put: httpPut,
171
+ sharedAssetFolders: require_shared_asset_folders.createSharedAssetFoldersResource(deps),
172
+ sharedAssets: require_shared_assets.createSharedAssetsResource(deps),
173
+ sharedInternalTags: require_shared_internal_tags.createSharedInternalTagsResource(deps),
174
+ spaces: require_spaces.createSpacesResource(deps),
175
+ users: require_users.createUsersResource({
176
+ client,
177
+ wrapRequest: deps.wrapRequest
178
+ })
179
+ };
180
+ }
181
+ const createManagementApiClient = (config) => {
182
+ const { deps, resources } = createManagementApiClientBase(config);
183
+ const self = {
184
+ ...resources,
185
+ components: require_components.createComponentsResource(deps),
186
+ stories: require_stories.createStoriesResource(deps),
187
+ withTypes() {
188
+ return self;
189
+ }
190
+ };
191
+ return self;
192
+ };
193
+
194
+ //#endregion
195
+ exports.createManagementApiClient = createManagementApiClient;
196
+ //# sourceMappingURL=client.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.cjs","names":["createThrottleManager","createClient","createConfig","ClientError","createAssetFoldersResource","createAssetsResource","createComponentFoldersResource","createDatasourceEntriesResource","createDatasourcesResource","createExperimentsResource","createInternalTagsResource","createPresetsResource","createSharedAssetFoldersResource","createSharedAssetsResource","createSharedInternalTagsResource","createSpacesResource","createUsersResource","createComponentsResource","createStoriesResource"],"sources":["../src/client.ts"],"sourcesContent":["import type { Client, ResolvedRequestOptions, RetryOptions } from './generated/mapi/client';\nimport type { Middleware } from './generated/mapi/client/utils.gen';\nimport { createClient, createConfig } from './generated/mapi/client';\nimport { getManagementBaseUrl } from '@storyblok/region-helper';\nimport type { Region } from '@storyblok/region-helper';\nimport type { Block } from './generated/types/block';\nimport { ClientError } from './error';\nimport type { RateLimitConfig } from './utils/rate-limit';\nimport { createThrottleManager } from './utils/rate-limit';\nimport { querySerializer } from './utils/query-serializer';\nimport { createAssetFoldersResource } from './resources/asset-folders';\nimport { createAssetsResource } from './resources/assets';\nimport { createComponentFoldersResource } from './resources/component-folders';\nimport { createComponentsResource } from './resources/components';\nimport { createDatasourceEntriesResource } from './resources/datasource-entries';\nimport { createDatasourcesResource } from './resources/datasources';\nimport { createExperimentsResource } from './resources/experiments';\nimport { createInternalTagsResource } from './resources/internal-tags';\nimport { createPresetsResource } from './resources/presets';\nimport { createSharedAssetFoldersResource } from './resources/shared-asset-folders';\nimport { createSharedAssetsResource } from './resources/shared-assets';\nimport { createSharedInternalTagsResource } from './resources/shared-internal-tags';\nimport { createSpacesResource } from './resources/spaces';\nimport { createStoriesResource } from './resources/stories';\nimport { createUsersResource } from './resources/users';\n\n// ---------------------------------------------------------------------------\n// Client types (co-located with runtime)\n// ---------------------------------------------------------------------------\n\nexport type ApiResponse<T, ThrowOnError extends boolean = false> =\n ThrowOnError extends true\n ? { data: T; error?: never; response: Response; request: Request }\n : | { data: T; error: undefined; response: Response; request: Request }\n | { data: undefined; error: ClientError; response: Response; request: Request };\n\nexport interface RequestConfigOverrides {\n throwOnError?: boolean;\n}\n\n/**\n * Arbitrary options forwarded to the underlying `fetch()` call.\n *\n * Standard `RequestInit` properties (`cache`, `credentials`, `mode`, …) and\n * non-standard, vendor-specific properties (Next.js `next`, Cloudflare `cf`, …)\n * are both supported.\n *\n * @example\n * ```ts\n * client.stories.get(123, {\n * fetchOptions: {\n * cache: 'no-store',\n * next: { revalidate: 60 },\n * },\n * })\n * ```\n */\nexport type FetchOptions = Record<string, unknown>;\n\nexport interface HttpRequestOptions {\n query?: Record<string, unknown>;\n body?: unknown;\n headers?: Record<string, string>;\n signal?: AbortSignal;\n throwOnError?: RequestConfigOverrides['throwOnError'];\n fetchOptions?: FetchOptions;\n}\n\n/**\n * Dependencies injected into every resource factory.\n */\nexport interface MapiResourceDeps<DefaultThrowOnError extends boolean = false> {\n client: Client;\n spaceId?: number;\n wrapRequest: <TData, ThrowOnError extends boolean = DefaultThrowOnError>(fn: () => Promise<unknown>, throwOnError?: ThrowOnError) => Promise<ApiResponse<TData, ThrowOnError>>;\n}\n\ntype TokenConfig =\n | {\n /** Personal access token for authentication. */\n personalAccessToken: string;\n oauthToken?: never;\n }\n | {\n personalAccessToken?: never;\n /** OAuth bearer token for authentication. */\n oauthToken: string;\n }\n | {\n personalAccessToken?: undefined;\n oauthToken?: undefined;\n };\n\nexport type ManagementApiClientConfig<\n ThrowOnError extends boolean = false,\n> = TokenConfig & {\n /**\n * The Storyblok space ID. Used as the default for space-scoped endpoints.\n * You can also override it per request via `path.space_id`.\n */\n spaceId?: number;\n /**\n * Storyblok region. Determines the base URL.\n * @default 'eu'\n */\n region?: Region;\n /**\n * Override the base URL entirely (e.g. for testing).\n */\n baseUrl?: string;\n /**\n * Additional request headers.\n */\n headers?: Record<string, string>;\n /**\n * Throw on HTTP errors instead of returning them.\n * @default false\n */\n throwOnError?: ThrowOnError;\n /**\n * Retry configuration for failed requests.\n */\n retry?: RetryOptions;\n /**\n * Request timeout in milliseconds.\n * @default 30_000\n */\n timeout?: number;\n /**\n * Preventive rate limiting to avoid hitting the Storyblok Management API rate limits.\n *\n * - `undefined` (default): single bucket at maxConcurrency: 6.\n * - `number`: fixed max concurrent requests per second.\n * - `{ maxConcurrency?: number; adaptToServerHeaders?: boolean }`: full config.\n * - `false`: disable rate limiting entirely.\n */\n rateLimit?: RateLimitConfig | number | false;\n};\n\n// ---------------------------------------------------------------------------\n// Client factory\n// ---------------------------------------------------------------------------\n\nfunction getAuthorizationHeader(config: ManagementApiClientConfig<boolean>): string | undefined {\n if (config.personalAccessToken) {\n return config.personalAccessToken;\n }\n if (config.oauthToken) {\n return config.oauthToken.startsWith('Bearer ')\n ? config.oauthToken\n : `Bearer ${config.oauthToken}`;\n }\n return undefined;\n}\n\nconst createManagementApiClientBase = <DefaultThrowOnError extends boolean = false>(\n config: ManagementApiClientConfig<DefaultThrowOnError>,\n): {\n deps: MapiResourceDeps<DefaultThrowOnError>;\n resources: Omit<ReturnType<typeof buildResources<DefaultThrowOnError>>, never>;\n} => {\n const {\n spaceId,\n region = 'eu',\n baseUrl,\n headers = {},\n throwOnError = false,\n retry = {\n limit: 12,\n backoffLimit: 20_000,\n methods: ['get', 'post', 'put', 'delete', 'patch', 'head', 'options', 'trace'],\n statusCodes: [429],\n },\n timeout = 30_000,\n rateLimit,\n } = config;\n\n const throttleManager = createThrottleManager(rateLimit ?? {});\n const authHeader = getAuthorizationHeader(config);\n\n const client: Client = createClient(\n createConfig({\n baseUrl: baseUrl || getManagementBaseUrl(region),\n headers: {\n ...(authHeader ? { Authorization: authHeader } : {}),\n ...headers,\n },\n // Default serializer throws on nested objects; MAPI needs `filter_query`\n // serialized as a nested hash (`filter_query[field][op]=value`).\n querySerializer,\n throwOnError,\n kyOptions: {\n throwHttpErrors: true,\n timeout,\n retry,\n },\n }),\n );\n\n client.interceptors.error.use(\n (error: unknown, response: Response) =>\n new ClientError(response?.statusText || 'API request failed', {\n status: response?.status ?? 0,\n statusText: response?.statusText ?? '',\n data: error,\n }),\n );\n\n function wrapRequest<TData, CurrentThrowOnError extends boolean = DefaultThrowOnError>(\n fn: () => Promise<unknown>,\n _throwOnError?: CurrentThrowOnError,\n ): Promise<ApiResponse<TData, CurrentThrowOnError>> {\n return throttleManager.execute(\n () => fn() as Promise<ApiResponse<TData, CurrentThrowOnError>>,\n );\n }\n\n const deps: MapiResourceDeps<DefaultThrowOnError> = { client, spaceId, wrapRequest };\n return { deps, resources: buildResources(deps, client) };\n};\n\nfunction buildResources<DefaultThrowOnError extends boolean = false>(\n deps: MapiResourceDeps<DefaultThrowOnError>,\n client: Client,\n) {\n /**\n * Escape hatch: send a GET request to any MAPI endpoint not yet wrapped\n * in a dedicated resource method.\n */\n const httpGet = <TData = unknown>(\n path: string,\n options: HttpRequestOptions = {},\n ): Promise<ApiResponse<TData, DefaultThrowOnError>> => {\n const { fetchOptions, ...rest } = options;\n return deps.wrapRequest<TData>(() =>\n client.get({ url: path, ...rest, ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }),\n );\n };\n\n /**\n * Escape hatch: send a POST request to any MAPI endpoint not yet wrapped\n * in a dedicated resource method.\n */\n const httpPost = <TData = unknown>(\n path: string,\n options: HttpRequestOptions = {},\n ): Promise<ApiResponse<TData, DefaultThrowOnError>> => {\n const { fetchOptions, ...rest } = options;\n return deps.wrapRequest<TData>(() =>\n client.post({ url: path, ...rest, ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }),\n );\n };\n\n /**\n * Escape hatch: send a PUT request to any MAPI endpoint not yet wrapped\n * in a dedicated resource method.\n */\n const httpPut = <TData = unknown>(\n path: string,\n options: HttpRequestOptions = {},\n ): Promise<ApiResponse<TData, DefaultThrowOnError>> => {\n const { fetchOptions, ...rest } = options;\n return deps.wrapRequest<TData>(() =>\n client.put({ url: path, ...rest, ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }),\n );\n };\n\n /**\n * Escape hatch: send a PATCH request to any MAPI endpoint not yet wrapped\n * in a dedicated resource method.\n */\n const httpPatch = <TData = unknown>(\n path: string,\n options: HttpRequestOptions = {},\n ): Promise<ApiResponse<TData, DefaultThrowOnError>> => {\n const { fetchOptions, ...rest } = options;\n return deps.wrapRequest<TData>(() =>\n client.patch({ url: path, ...rest, ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }),\n );\n };\n\n /**\n * Escape hatch: send a DELETE request to any MAPI endpoint not yet wrapped\n * in a dedicated resource method.\n */\n const httpDelete = <TData = unknown>(\n path: string,\n options: HttpRequestOptions = {},\n ): Promise<ApiResponse<TData, DefaultThrowOnError>> => {\n const { fetchOptions, ...rest } = options;\n return deps.wrapRequest<TData>(() =>\n client.delete({ url: path, ...rest, ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }),\n );\n };\n\n return {\n assetFolders: createAssetFoldersResource(deps),\n assets: createAssetsResource(deps),\n componentFolders: createComponentFoldersResource(deps),\n datasourceEntries: createDatasourceEntriesResource(deps),\n datasources: createDatasourcesResource(deps),\n experiments: createExperimentsResource(deps),\n delete: httpDelete,\n get: httpGet,\n patch: httpPatch,\n interceptors: client.interceptors as Middleware<Request, Response, unknown, ResolvedRequestOptions>,\n internalTags: createInternalTagsResource(deps),\n post: httpPost,\n presets: createPresetsResource(deps),\n put: httpPut,\n sharedAssetFolders: createSharedAssetFoldersResource(deps),\n sharedAssets: createSharedAssetsResource(deps),\n sharedInternalTags: createSharedInternalTagsResource(deps),\n spaces: createSpacesResource(deps),\n users: createUsersResource<DefaultThrowOnError>({ client, wrapRequest: deps.wrapRequest }),\n };\n}\n\ntype StoryblokTypesConfig = { components: Block } | { blocks: Block };\n\ntype ResolveComponents<T extends StoryblokTypesConfig> =\n T extends { components: infer C extends Block } ? C\n : T extends { blocks: infer B extends Block } ? B\n : never;\n\n/** Extracts the `fieldType → value` plugin map from a Schema, defaulting to an empty map. */\ntype ResolveFieldPlugins<T> = T extends { fieldPlugins: infer P } ? P : Record<never, never>;\n\n/**\n * The return type of `createManagementApiClient`, parameterised by `TBlocks` so that\n * `.stories` methods can narrow story content types without touching the runtime object.\n * Component *definitions* (`.components`) are wire-shaped and not narrowed by `TBlocks`.\n */\nexport type ManagementApiClient<\n TBlocks extends Block = Block,\n TFieldPlugins = Record<never, never>,\n DefaultThrowOnError extends boolean = false,\n> = ReturnType<typeof buildResources<DefaultThrowOnError>> & {\n components: ReturnType<typeof createComponentsResource<DefaultThrowOnError>>;\n stories: ReturnType<typeof createStoriesResource<TBlocks, TFieldPlugins, DefaultThrowOnError>>;\n /**\n * Returns the same client instance cast to a version that narrows story content\n * to the provided component types. No runtime cost — type parameter is erased.\n *\n * Accepts either `{ components: ... }` or `{ blocks: ... }` — the latter matches the\n * `Schema` type produced by `@storyblok/schema`'s `InferSchema`.\n *\n * @example\n * ```ts\n * import type { Schema } from './schema';\n *\n * const client = createManagementApiClient({ personalAccessToken: '...' })\n * .withTypes<Schema>();\n * ```\n */\n withTypes: <T extends StoryblokTypesConfig>() => ManagementApiClient<ResolveComponents<T>, ResolveFieldPlugins<T>, DefaultThrowOnError>;\n};\n\nexport const createManagementApiClient = <\n DefaultThrowOnError extends boolean = false,\n>(\n config: ManagementApiClientConfig<DefaultThrowOnError>,\n): ManagementApiClient<Block, Record<never, never>, DefaultThrowOnError> => {\n const { deps, resources } = createManagementApiClientBase(config);\n const self: ManagementApiClient<Block, Record<never, never>, DefaultThrowOnError> = {\n ...resources,\n components: createComponentsResource<DefaultThrowOnError>(deps),\n stories: createStoriesResource<Block, Record<never, never>, DefaultThrowOnError>(deps),\n withTypes<T extends StoryblokTypesConfig>() {\n return self as unknown as ManagementApiClient<ResolveComponents<T>, ResolveFieldPlugins<T>, DefaultThrowOnError>;\n },\n };\n return self;\n};\n"],"mappings":"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"}