@strapi/core 0.0.0-experimental.d362bf200f5f9359a4bbd4a549603de5ee1f04ca → 0.0.0-experimental.d4b8dd9e74eefeba4fc0574502c919ba4d091e1e

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 (873) hide show
  1. package/LICENSE +18 -3
  2. package/dist/Strapi.d.ts +37 -46
  3. package/dist/Strapi.d.ts.map +1 -1
  4. package/dist/Strapi.js +437 -446
  5. package/dist/Strapi.js.map +1 -1
  6. package/dist/Strapi.mjs +428 -457
  7. package/dist/Strapi.mjs.map +1 -1
  8. package/dist/compile.js +23 -14
  9. package/dist/compile.js.map +1 -1
  10. package/dist/compile.mjs +22 -14
  11. package/dist/compile.mjs.map +1 -1
  12. package/dist/configuration/config-loader.d.ts.map +1 -1
  13. package/dist/configuration/config-loader.js +110 -93
  14. package/dist/configuration/config-loader.js.map +1 -1
  15. package/dist/configuration/config-loader.mjs +109 -92
  16. package/dist/configuration/config-loader.mjs.map +1 -1
  17. package/dist/configuration/get-dirs.d.ts +10 -0
  18. package/dist/configuration/get-dirs.d.ts.map +1 -0
  19. package/dist/configuration/get-dirs.js +33 -0
  20. package/dist/configuration/get-dirs.js.map +1 -0
  21. package/dist/configuration/get-dirs.mjs +31 -0
  22. package/dist/configuration/get-dirs.mjs.map +1 -0
  23. package/dist/configuration/index.d.ts +5 -7
  24. package/dist/configuration/index.d.ts.map +1 -1
  25. package/dist/configuration/index.js +86 -72
  26. package/dist/configuration/index.js.map +1 -1
  27. package/dist/configuration/index.mjs +84 -68
  28. package/dist/configuration/index.mjs.map +1 -1
  29. package/dist/configuration/urls.d.ts.map +1 -1
  30. package/dist/configuration/urls.js +74 -61
  31. package/dist/configuration/urls.js.map +1 -1
  32. package/dist/configuration/urls.mjs +73 -62
  33. package/dist/configuration/urls.mjs.map +1 -1
  34. package/dist/container.js +27 -23
  35. package/dist/container.js.map +1 -1
  36. package/dist/container.mjs +26 -24
  37. package/dist/container.mjs.map +1 -1
  38. package/dist/core-api/controller/collection-type.d.ts.map +1 -1
  39. package/dist/core-api/controller/collection-type.js +77 -73
  40. package/dist/core-api/controller/collection-type.js.map +1 -1
  41. package/dist/core-api/controller/collection-type.mjs +76 -74
  42. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  43. package/dist/core-api/controller/index.js +63 -48
  44. package/dist/core-api/controller/index.js.map +1 -1
  45. package/dist/core-api/controller/index.mjs +62 -49
  46. package/dist/core-api/controller/index.mjs.map +1 -1
  47. package/dist/core-api/controller/single-type.d.ts.map +1 -1
  48. package/dist/core-api/controller/single-type.js +41 -39
  49. package/dist/core-api/controller/single-type.js.map +1 -1
  50. package/dist/core-api/controller/single-type.mjs +40 -40
  51. package/dist/core-api/controller/single-type.mjs.map +1 -1
  52. package/dist/core-api/controller/transform.js +72 -63
  53. package/dist/core-api/controller/transform.js.map +1 -1
  54. package/dist/core-api/controller/transform.mjs +71 -64
  55. package/dist/core-api/controller/transform.mjs.map +1 -1
  56. package/dist/core-api/routes/index.d.ts.map +1 -1
  57. package/dist/core-api/routes/index.js +64 -62
  58. package/dist/core-api/routes/index.js.map +1 -1
  59. package/dist/core-api/routes/index.mjs +62 -62
  60. package/dist/core-api/routes/index.mjs.map +1 -1
  61. package/dist/core-api/service/collection-type.d.ts +3 -9
  62. package/dist/core-api/service/collection-type.d.ts.map +1 -1
  63. package/dist/core-api/service/collection-type.js +73 -49
  64. package/dist/core-api/service/collection-type.js.map +1 -1
  65. package/dist/core-api/service/collection-type.mjs +72 -51
  66. package/dist/core-api/service/collection-type.mjs.map +1 -1
  67. package/dist/core-api/service/core-service.js +9 -8
  68. package/dist/core-api/service/core-service.js.map +1 -1
  69. package/dist/core-api/service/core-service.mjs +8 -9
  70. package/dist/core-api/service/core-service.mjs.map +1 -1
  71. package/dist/core-api/service/index.js +13 -13
  72. package/dist/core-api/service/index.js.map +1 -1
  73. package/dist/core-api/service/index.mjs +12 -14
  74. package/dist/core-api/service/index.mjs.map +1 -1
  75. package/dist/core-api/service/pagination.d.ts +4 -11
  76. package/dist/core-api/service/pagination.d.ts.map +1 -1
  77. package/dist/core-api/service/pagination.js +68 -68
  78. package/dist/core-api/service/pagination.js.map +1 -1
  79. package/dist/core-api/service/pagination.mjs +66 -71
  80. package/dist/core-api/service/pagination.mjs.map +1 -1
  81. package/dist/core-api/service/single-type.d.ts.map +1 -1
  82. package/dist/core-api/service/single-type.js +43 -32
  83. package/dist/core-api/service/single-type.js.map +1 -1
  84. package/dist/core-api/service/single-type.mjs +42 -34
  85. package/dist/core-api/service/single-type.mjs.map +1 -1
  86. package/dist/domain/content-type/index.js +95 -100
  87. package/dist/domain/content-type/index.js.map +1 -1
  88. package/dist/domain/content-type/index.mjs +94 -100
  89. package/dist/domain/content-type/index.mjs.map +1 -1
  90. package/dist/domain/content-type/validator.js +84 -69
  91. package/dist/domain/content-type/validator.js.map +1 -1
  92. package/dist/domain/content-type/validator.mjs +83 -68
  93. package/dist/domain/content-type/validator.mjs.map +1 -1
  94. package/dist/domain/module/index.js +109 -100
  95. package/dist/domain/module/index.js.map +1 -1
  96. package/dist/domain/module/index.mjs +108 -99
  97. package/dist/domain/module/index.mjs.map +1 -1
  98. package/dist/domain/module/validation.js +25 -20
  99. package/dist/domain/module/validation.js.map +1 -1
  100. package/dist/domain/module/validation.mjs +24 -21
  101. package/dist/domain/module/validation.mjs.map +1 -1
  102. package/dist/ee/index.d.ts +9 -0
  103. package/dist/ee/index.d.ts.map +1 -1
  104. package/dist/ee/index.js +197 -132
  105. package/dist/ee/index.js.map +1 -1
  106. package/dist/ee/index.mjs +196 -134
  107. package/dist/ee/index.mjs.map +1 -1
  108. package/dist/ee/license.d.ts +3 -1
  109. package/dist/ee/license.d.ts.map +1 -1
  110. package/dist/ee/license.js +105 -74
  111. package/dist/ee/license.js.map +1 -1
  112. package/dist/ee/license.mjs +103 -75
  113. package/dist/ee/license.mjs.map +1 -1
  114. package/dist/factories.d.ts +2 -2
  115. package/dist/factories.d.ts.map +1 -1
  116. package/dist/factories.js +72 -67
  117. package/dist/factories.js.map +1 -1
  118. package/dist/factories.mjs +71 -71
  119. package/dist/factories.mjs.map +1 -1
  120. package/dist/index.d.ts +18 -2
  121. package/dist/index.d.ts.map +1 -1
  122. package/dist/index.js +32 -5
  123. package/dist/index.js.map +1 -1
  124. package/dist/index.mjs +29 -5
  125. package/dist/index.mjs.map +1 -1
  126. package/dist/loaders/admin.d.ts.map +1 -1
  127. package/dist/loaders/admin.js +21 -21
  128. package/dist/loaders/admin.js.map +1 -1
  129. package/dist/loaders/admin.mjs +20 -21
  130. package/dist/loaders/admin.mjs.map +1 -1
  131. package/dist/loaders/apis.d.ts.map +1 -1
  132. package/dist/loaders/apis.js +143 -120
  133. package/dist/loaders/apis.js.map +1 -1
  134. package/dist/loaders/apis.mjs +142 -119
  135. package/dist/loaders/apis.mjs.map +1 -1
  136. package/dist/loaders/components.js +33 -34
  137. package/dist/loaders/components.js.map +1 -1
  138. package/dist/loaders/components.mjs +32 -34
  139. package/dist/loaders/components.mjs.map +1 -1
  140. package/dist/loaders/index.d.ts.map +1 -1
  141. package/dist/loaders/index.js +22 -22
  142. package/dist/loaders/index.js.map +1 -1
  143. package/dist/loaders/index.mjs +21 -23
  144. package/dist/loaders/index.mjs.map +1 -1
  145. package/dist/loaders/middlewares.js +29 -25
  146. package/dist/loaders/middlewares.js.map +1 -1
  147. package/dist/loaders/middlewares.mjs +28 -25
  148. package/dist/loaders/middlewares.mjs.map +1 -1
  149. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  150. package/dist/loaders/plugins/get-enabled-plugins.js +125 -101
  151. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  152. package/dist/loaders/plugins/get-enabled-plugins.mjs +124 -100
  153. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  154. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  155. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  156. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  157. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  158. package/dist/loaders/plugins/index.d.ts.map +1 -1
  159. package/dist/loaders/plugins/index.js +141 -104
  160. package/dist/loaders/plugins/index.js.map +1 -1
  161. package/dist/loaders/plugins/index.mjs +121 -104
  162. package/dist/loaders/plugins/index.mjs.map +1 -1
  163. package/dist/loaders/policies.js +24 -20
  164. package/dist/loaders/policies.js.map +1 -1
  165. package/dist/loaders/policies.mjs +23 -20
  166. package/dist/loaders/policies.mjs.map +1 -1
  167. package/dist/loaders/sanitizers.js +10 -4
  168. package/dist/loaders/sanitizers.js.map +1 -1
  169. package/dist/loaders/sanitizers.mjs +9 -6
  170. package/dist/loaders/sanitizers.mjs.map +1 -1
  171. package/dist/loaders/src-index.js +35 -27
  172. package/dist/loaders/src-index.js.map +1 -1
  173. package/dist/loaders/src-index.mjs +34 -29
  174. package/dist/loaders/src-index.mjs.map +1 -1
  175. package/dist/loaders/validators.js +9 -4
  176. package/dist/loaders/validators.js.map +1 -1
  177. package/dist/loaders/validators.mjs +8 -6
  178. package/dist/loaders/validators.mjs.map +1 -1
  179. package/dist/middlewares/body.d.ts +2 -2
  180. package/dist/middlewares/body.d.ts.map +1 -1
  181. package/dist/middlewares/body.js +58 -54
  182. package/dist/middlewares/body.js.map +1 -1
  183. package/dist/middlewares/body.mjs +57 -51
  184. package/dist/middlewares/body.mjs.map +1 -1
  185. package/dist/middlewares/compression.js +6 -6
  186. package/dist/middlewares/compression.js.map +1 -1
  187. package/dist/middlewares/compression.mjs +5 -5
  188. package/dist/middlewares/compression.mjs.map +1 -1
  189. package/dist/middlewares/cors.d.ts.map +1 -1
  190. package/dist/middlewares/cors.js +59 -46
  191. package/dist/middlewares/cors.js.map +1 -1
  192. package/dist/middlewares/cors.mjs +58 -45
  193. package/dist/middlewares/cors.mjs.map +1 -1
  194. package/dist/middlewares/errors.js +32 -30
  195. package/dist/middlewares/errors.js.map +1 -1
  196. package/dist/middlewares/errors.mjs +31 -31
  197. package/dist/middlewares/errors.mjs.map +1 -1
  198. package/dist/middlewares/favicon.js +27 -17
  199. package/dist/middlewares/favicon.js.map +1 -1
  200. package/dist/middlewares/favicon.mjs +26 -16
  201. package/dist/middlewares/favicon.mjs.map +1 -1
  202. package/dist/middlewares/index.js +32 -30
  203. package/dist/middlewares/index.js.map +1 -1
  204. package/dist/middlewares/index.mjs +31 -31
  205. package/dist/middlewares/index.mjs.map +1 -1
  206. package/dist/middlewares/ip.js +6 -6
  207. package/dist/middlewares/ip.js.map +1 -1
  208. package/dist/middlewares/ip.mjs +5 -5
  209. package/dist/middlewares/ip.mjs.map +1 -1
  210. package/dist/middlewares/logger.js +10 -9
  211. package/dist/middlewares/logger.js.map +1 -1
  212. package/dist/middlewares/logger.mjs +9 -10
  213. package/dist/middlewares/logger.mjs.map +1 -1
  214. package/dist/middlewares/powered-by.js +13 -9
  215. package/dist/middlewares/powered-by.js.map +1 -1
  216. package/dist/middlewares/powered-by.mjs +12 -10
  217. package/dist/middlewares/powered-by.mjs.map +1 -1
  218. package/dist/middlewares/public.js +33 -29
  219. package/dist/middlewares/public.js.map +1 -1
  220. package/dist/middlewares/public.mjs +32 -28
  221. package/dist/middlewares/public.mjs.map +1 -1
  222. package/dist/middlewares/query.d.ts.map +1 -1
  223. package/dist/middlewares/query.js +35 -32
  224. package/dist/middlewares/query.js.map +1 -1
  225. package/dist/middlewares/query.mjs +34 -31
  226. package/dist/middlewares/query.mjs.map +1 -1
  227. package/dist/middlewares/response-time.js +10 -9
  228. package/dist/middlewares/response-time.js.map +1 -1
  229. package/dist/middlewares/response-time.mjs +9 -10
  230. package/dist/middlewares/response-time.mjs.map +1 -1
  231. package/dist/middlewares/responses.js +14 -12
  232. package/dist/middlewares/responses.js.map +1 -1
  233. package/dist/middlewares/responses.mjs +13 -13
  234. package/dist/middlewares/responses.mjs.map +1 -1
  235. package/dist/middlewares/security.d.ts.map +1 -1
  236. package/dist/middlewares/security.js +110 -65
  237. package/dist/middlewares/security.js.map +1 -1
  238. package/dist/middlewares/security.mjs +108 -63
  239. package/dist/middlewares/security.mjs.map +1 -1
  240. package/dist/middlewares/session.js +26 -25
  241. package/dist/middlewares/session.js.map +1 -1
  242. package/dist/middlewares/session.mjs +25 -24
  243. package/dist/middlewares/session.mjs.map +1 -1
  244. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +33 -0
  245. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -0
  246. package/dist/migrations/database/5.0.0-discard-drafts.js +168 -0
  247. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -0
  248. package/dist/migrations/database/5.0.0-discard-drafts.mjs +165 -0
  249. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -0
  250. package/dist/migrations/draft-publish.d.ts +2 -2
  251. package/dist/migrations/draft-publish.d.ts.map +1 -1
  252. package/dist/migrations/draft-publish.js +59 -49
  253. package/dist/migrations/draft-publish.js.map +1 -1
  254. package/dist/migrations/draft-publish.mjs +58 -51
  255. package/dist/migrations/draft-publish.mjs.map +1 -1
  256. package/dist/migrations/i18n.d.ts +5 -0
  257. package/dist/migrations/i18n.d.ts.map +1 -0
  258. package/dist/migrations/i18n.js +71 -0
  259. package/dist/migrations/i18n.js.map +1 -0
  260. package/dist/migrations/i18n.mjs +68 -0
  261. package/dist/migrations/i18n.mjs.map +1 -0
  262. package/dist/migrations/index.d.ts +5 -0
  263. package/dist/migrations/index.d.ts.map +1 -0
  264. package/dist/migrations/index.js +29 -0
  265. package/dist/migrations/index.js.map +1 -0
  266. package/dist/migrations/index.mjs +26 -0
  267. package/dist/migrations/index.mjs.map +1 -0
  268. package/dist/package.json.js +184 -0
  269. package/dist/package.json.js.map +1 -0
  270. package/dist/package.json.mjs +161 -0
  271. package/dist/package.json.mjs.map +1 -0
  272. package/dist/providers/admin.d.ts +3 -0
  273. package/dist/providers/admin.d.ts.map +1 -0
  274. package/dist/providers/admin.js +30 -0
  275. package/dist/providers/admin.js.map +1 -0
  276. package/dist/providers/admin.mjs +28 -0
  277. package/dist/providers/admin.mjs.map +1 -0
  278. package/dist/providers/coreStore.d.ts +3 -0
  279. package/dist/providers/coreStore.d.ts.map +1 -0
  280. package/dist/providers/coreStore.js +16 -0
  281. package/dist/providers/coreStore.js.map +1 -0
  282. package/dist/providers/coreStore.mjs +14 -0
  283. package/dist/providers/coreStore.mjs.map +1 -0
  284. package/dist/providers/cron.d.ts +3 -0
  285. package/dist/providers/cron.d.ts.map +1 -0
  286. package/dist/providers/cron.js +23 -0
  287. package/dist/providers/cron.js.map +1 -0
  288. package/dist/providers/cron.mjs +21 -0
  289. package/dist/providers/cron.mjs.map +1 -0
  290. package/dist/providers/index.d.ts +3 -0
  291. package/dist/providers/index.d.ts.map +1 -0
  292. package/dist/providers/index.js +20 -0
  293. package/dist/providers/index.js.map +1 -0
  294. package/dist/providers/index.mjs +18 -0
  295. package/dist/providers/index.mjs.map +1 -0
  296. package/dist/providers/provider.d.ts +9 -0
  297. package/dist/providers/provider.d.ts.map +1 -0
  298. package/dist/providers/provider.js +6 -0
  299. package/dist/providers/provider.js.map +1 -0
  300. package/dist/providers/provider.mjs +4 -0
  301. package/dist/providers/provider.mjs.map +1 -0
  302. package/dist/providers/registries.d.ts +3 -0
  303. package/dist/providers/registries.d.ts.map +1 -0
  304. package/dist/providers/registries.js +40 -0
  305. package/dist/providers/registries.js.map +1 -0
  306. package/dist/providers/registries.mjs +38 -0
  307. package/dist/providers/registries.mjs.map +1 -0
  308. package/dist/providers/telemetry.d.ts +3 -0
  309. package/dist/providers/telemetry.d.ts.map +1 -0
  310. package/dist/providers/telemetry.js +22 -0
  311. package/dist/providers/telemetry.js.map +1 -0
  312. package/dist/providers/telemetry.mjs +20 -0
  313. package/dist/providers/telemetry.mjs.map +1 -0
  314. package/dist/providers/webhooks.d.ts +3 -0
  315. package/dist/providers/webhooks.d.ts.map +1 -0
  316. package/dist/providers/webhooks.js +32 -0
  317. package/dist/providers/webhooks.js.map +1 -0
  318. package/dist/providers/webhooks.mjs +30 -0
  319. package/dist/providers/webhooks.mjs.map +1 -0
  320. package/dist/registries/apis.js +23 -20
  321. package/dist/registries/apis.js.map +1 -1
  322. package/dist/registries/apis.mjs +22 -22
  323. package/dist/registries/apis.mjs.map +1 -1
  324. package/dist/registries/components.js +35 -37
  325. package/dist/registries/components.js.map +1 -1
  326. package/dist/registries/components.mjs +34 -39
  327. package/dist/registries/components.mjs.map +1 -1
  328. package/dist/registries/content-types.js +54 -59
  329. package/dist/registries/content-types.js.map +1 -1
  330. package/dist/registries/content-types.mjs +53 -61
  331. package/dist/registries/content-types.mjs.map +1 -1
  332. package/dist/registries/controllers.js +70 -71
  333. package/dist/registries/controllers.js.map +1 -1
  334. package/dist/registries/controllers.mjs +69 -73
  335. package/dist/registries/controllers.mjs.map +1 -1
  336. package/dist/registries/custom-fields.js +75 -65
  337. package/dist/registries/custom-fields.js.map +1 -1
  338. package/dist/registries/custom-fields.mjs +74 -67
  339. package/dist/registries/custom-fields.mjs.map +1 -1
  340. package/dist/registries/hooks.js +46 -49
  341. package/dist/registries/hooks.js.map +1 -1
  342. package/dist/registries/hooks.mjs +45 -51
  343. package/dist/registries/hooks.mjs.map +1 -1
  344. package/dist/registries/index.d.ts +0 -1
  345. package/dist/registries/index.d.ts.map +1 -1
  346. package/dist/registries/middlewares.js +49 -51
  347. package/dist/registries/middlewares.js.map +1 -1
  348. package/dist/registries/middlewares.mjs +48 -53
  349. package/dist/registries/middlewares.mjs.map +1 -1
  350. package/dist/registries/models.js +14 -13
  351. package/dist/registries/models.js.map +1 -1
  352. package/dist/registries/models.mjs +13 -14
  353. package/dist/registries/models.mjs.map +1 -1
  354. package/dist/registries/modules.js +39 -36
  355. package/dist/registries/modules.js.map +1 -1
  356. package/dist/registries/modules.mjs +38 -38
  357. package/dist/registries/modules.mjs.map +1 -1
  358. package/dist/registries/namespace.js +21 -20
  359. package/dist/registries/namespace.js.map +1 -1
  360. package/dist/registries/namespace.mjs +20 -23
  361. package/dist/registries/namespace.mjs.map +1 -1
  362. package/dist/registries/plugins.js +23 -20
  363. package/dist/registries/plugins.js.map +1 -1
  364. package/dist/registries/plugins.mjs +22 -22
  365. package/dist/registries/plugins.mjs.map +1 -1
  366. package/dist/registries/policies.d.ts +1 -1
  367. package/dist/registries/policies.d.ts.map +1 -1
  368. package/dist/registries/policies.js +103 -96
  369. package/dist/registries/policies.js.map +1 -1
  370. package/dist/registries/policies.mjs +102 -98
  371. package/dist/registries/policies.mjs.map +1 -1
  372. package/dist/registries/sanitizers.js +23 -22
  373. package/dist/registries/sanitizers.js.map +1 -1
  374. package/dist/registries/sanitizers.mjs +22 -22
  375. package/dist/registries/sanitizers.mjs.map +1 -1
  376. package/dist/registries/services.js +71 -71
  377. package/dist/registries/services.js.map +1 -1
  378. package/dist/registries/services.mjs +70 -73
  379. package/dist/registries/services.mjs.map +1 -1
  380. package/dist/registries/validators.js +23 -22
  381. package/dist/registries/validators.js.map +1 -1
  382. package/dist/registries/validators.mjs +22 -22
  383. package/dist/registries/validators.mjs.map +1 -1
  384. package/dist/services/auth/index.js +74 -74
  385. package/dist/services/auth/index.js.map +1 -1
  386. package/dist/services/auth/index.mjs +73 -74
  387. package/dist/services/auth/index.mjs.map +1 -1
  388. package/dist/services/config.d.ts +3 -0
  389. package/dist/services/config.d.ts.map +1 -0
  390. package/dist/services/config.js +51 -0
  391. package/dist/services/config.js.map +1 -0
  392. package/dist/services/config.mjs +49 -0
  393. package/dist/services/config.mjs.map +1 -0
  394. package/dist/services/content-api/index.d.ts +10 -12
  395. package/dist/services/content-api/index.d.ts.map +1 -1
  396. package/dist/services/content-api/index.js +80 -79
  397. package/dist/services/content-api/index.js.map +1 -1
  398. package/dist/services/content-api/index.mjs +79 -79
  399. package/dist/services/content-api/index.mjs.map +1 -1
  400. package/dist/services/content-api/permissions/engine.js +8 -5
  401. package/dist/services/content-api/permissions/engine.js.map +1 -1
  402. package/dist/services/content-api/permissions/engine.mjs +7 -5
  403. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  404. package/dist/services/content-api/permissions/index.d.ts +10 -12
  405. package/dist/services/content-api/permissions/index.d.ts.map +1 -1
  406. package/dist/services/content-api/permissions/index.js +101 -81
  407. package/dist/services/content-api/permissions/index.js.map +1 -1
  408. package/dist/services/content-api/permissions/index.mjs +100 -81
  409. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  410. package/dist/services/content-api/permissions/providers/action.d.ts +5 -6
  411. package/dist/services/content-api/permissions/providers/action.d.ts.map +1 -1
  412. package/dist/services/content-api/permissions/providers/action.js +17 -14
  413. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  414. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  415. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  416. package/dist/services/content-api/permissions/providers/condition.d.ts +5 -6
  417. package/dist/services/content-api/permissions/providers/condition.d.ts.map +1 -1
  418. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  419. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  420. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  421. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  422. package/dist/services/core-store.d.ts +2 -2
  423. package/dist/services/core-store.d.ts.map +1 -1
  424. package/dist/services/core-store.js +115 -95
  425. package/dist/services/core-store.js.map +1 -1
  426. package/dist/services/core-store.mjs +114 -97
  427. package/dist/services/core-store.mjs.map +1 -1
  428. package/dist/services/cron.d.ts +3 -3
  429. package/dist/services/cron.d.ts.map +1 -1
  430. package/dist/services/cron.js +74 -60
  431. package/dist/services/cron.js.map +1 -1
  432. package/dist/services/cron.mjs +73 -62
  433. package/dist/services/cron.mjs.map +1 -1
  434. package/dist/services/custom-fields.js +9 -7
  435. package/dist/services/custom-fields.js.map +1 -1
  436. package/dist/services/custom-fields.mjs +8 -9
  437. package/dist/services/custom-fields.mjs.map +1 -1
  438. package/dist/services/document-service/attributes/index.d.ts +6 -0
  439. package/dist/services/document-service/attributes/index.d.ts.map +1 -0
  440. package/dist/services/document-service/attributes/index.js +27 -0
  441. package/dist/services/document-service/attributes/index.js.map +1 -0
  442. package/dist/services/document-service/attributes/index.mjs +25 -0
  443. package/dist/services/document-service/attributes/index.mjs.map +1 -0
  444. package/dist/services/document-service/attributes/transforms.d.ts.map +1 -0
  445. package/dist/services/document-service/attributes/transforms.js +21 -0
  446. package/dist/services/document-service/attributes/transforms.js.map +1 -0
  447. package/dist/services/document-service/attributes/transforms.mjs +19 -0
  448. package/dist/services/document-service/attributes/transforms.mjs.map +1 -0
  449. package/dist/services/document-service/common.d.ts +1 -1
  450. package/dist/services/document-service/common.d.ts.map +1 -1
  451. package/dist/services/document-service/common.js +5 -4
  452. package/dist/services/document-service/common.js.map +1 -1
  453. package/dist/services/document-service/common.mjs +4 -5
  454. package/dist/services/document-service/common.mjs.map +1 -1
  455. package/dist/services/document-service/components.d.ts +25 -1
  456. package/dist/services/document-service/components.d.ts.map +1 -1
  457. package/dist/services/document-service/components.js +286 -0
  458. package/dist/services/document-service/components.js.map +1 -0
  459. package/dist/services/document-service/components.mjs +278 -0
  460. package/dist/services/document-service/components.mjs.map +1 -0
  461. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  462. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  463. package/dist/services/document-service/draft-and-publish.js +94 -54
  464. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  465. package/dist/services/document-service/draft-and-publish.mjs +87 -54
  466. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  467. package/dist/services/document-service/entries.d.ts +10 -0
  468. package/dist/services/document-service/entries.d.ts.map +1 -0
  469. package/dist/services/document-service/entries.js +155 -0
  470. package/dist/services/document-service/entries.js.map +1 -0
  471. package/dist/services/document-service/entries.mjs +153 -0
  472. package/dist/services/document-service/entries.mjs.map +1 -0
  473. package/dist/services/document-service/events.d.ts +25 -0
  474. package/dist/services/document-service/events.d.ts.map +1 -0
  475. package/dist/services/document-service/events.js +59 -0
  476. package/dist/services/document-service/events.js.map +1 -0
  477. package/dist/services/document-service/events.mjs +57 -0
  478. package/dist/services/document-service/events.mjs.map +1 -0
  479. package/dist/services/document-service/index.d.ts +2 -3
  480. package/dist/services/document-service/index.d.ts.map +1 -1
  481. package/dist/services/document-service/index.js +53 -21
  482. package/dist/services/document-service/index.js.map +1 -1
  483. package/dist/services/document-service/index.mjs +52 -22
  484. package/dist/services/document-service/index.mjs.map +1 -1
  485. package/dist/services/document-service/internationalization.d.ts +6 -1
  486. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  487. package/dist/services/document-service/internationalization.js +98 -41
  488. package/dist/services/document-service/internationalization.js.map +1 -1
  489. package/dist/services/document-service/internationalization.mjs +92 -41
  490. package/dist/services/document-service/internationalization.mjs.map +1 -1
  491. package/dist/services/document-service/middlewares/errors.js +23 -19
  492. package/dist/services/document-service/middlewares/errors.js.map +1 -1
  493. package/dist/services/document-service/middlewares/errors.mjs +22 -20
  494. package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
  495. package/dist/services/document-service/middlewares/middleware-manager.d.ts +5 -2
  496. package/dist/services/document-service/middlewares/middleware-manager.d.ts.map +1 -1
  497. package/dist/services/document-service/middlewares/middleware-manager.js +46 -41
  498. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  499. package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -42
  500. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  501. package/dist/services/document-service/params.d.ts +3 -1
  502. package/dist/services/document-service/params.d.ts.map +1 -1
  503. package/dist/services/document-service/params.js +14 -0
  504. package/dist/services/document-service/params.js.map +1 -0
  505. package/dist/services/document-service/params.mjs +12 -0
  506. package/dist/services/document-service/params.mjs.map +1 -0
  507. package/dist/services/document-service/repository.d.ts.map +1 -1
  508. package/dist/services/document-service/repository.js +355 -287
  509. package/dist/services/document-service/repository.js.map +1 -1
  510. package/dist/services/document-service/repository.mjs +354 -288
  511. package/dist/services/document-service/repository.mjs.map +1 -1
  512. package/dist/services/document-service/transform/data.d.ts.map +1 -1
  513. package/dist/services/document-service/transform/data.js +22 -10
  514. package/dist/services/document-service/transform/data.js.map +1 -1
  515. package/dist/services/document-service/transform/data.mjs +21 -11
  516. package/dist/services/document-service/transform/data.mjs.map +1 -1
  517. package/dist/services/document-service/transform/fields.js +26 -17
  518. package/dist/services/document-service/transform/fields.js.map +1 -1
  519. package/dist/services/document-service/transform/fields.mjs +25 -18
  520. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  521. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  522. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  523. package/dist/services/document-service/transform/id-map.js +116 -69
  524. package/dist/services/document-service/transform/id-map.js.map +1 -1
  525. package/dist/services/document-service/transform/id-map.mjs +115 -70
  526. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  527. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  528. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  529. package/dist/services/document-service/transform/id-transform.js +38 -30
  530. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  531. package/dist/services/document-service/transform/id-transform.mjs +36 -30
  532. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  533. package/dist/services/document-service/transform/populate.js +23 -18
  534. package/dist/services/document-service/transform/populate.js.map +1 -1
  535. package/dist/services/document-service/transform/populate.mjs +22 -19
  536. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  537. package/dist/services/document-service/transform/query.d.ts +5 -0
  538. package/dist/services/document-service/transform/query.d.ts.map +1 -0
  539. package/dist/services/document-service/transform/query.js +14 -0
  540. package/dist/services/document-service/transform/query.js.map +1 -0
  541. package/dist/services/document-service/transform/query.mjs +12 -0
  542. package/dist/services/document-service/transform/query.mjs.map +1 -0
  543. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +8 -7
  544. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  545. package/dist/services/document-service/transform/relations/extract/data-ids.js +75 -85
  546. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  547. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +74 -86
  548. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  549. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts +7 -3
  550. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  551. package/dist/services/document-service/transform/relations/transform/data-ids.js +103 -134
  552. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  553. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +102 -135
  554. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  555. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts +9 -0
  556. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts.map +1 -0
  557. package/dist/services/document-service/transform/relations/transform/default-locale.js +50 -0
  558. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -0
  559. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +48 -0
  560. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -0
  561. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  562. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  563. package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
  564. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  565. package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
  566. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
  567. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +3 -3
  568. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  569. package/dist/services/document-service/transform/relations/utils/i18n.js +19 -23
  570. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  571. package/dist/services/document-service/transform/relations/utils/i18n.mjs +18 -26
  572. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  573. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts +6 -0
  574. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -0
  575. package/dist/services/document-service/transform/relations/utils/map-relation.js +130 -0
  576. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -0
  577. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +127 -0
  578. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -0
  579. package/dist/services/document-service/transform/relations/utils/types.d.ts +6 -0
  580. package/dist/services/document-service/transform/relations/utils/types.d.ts.map +1 -1
  581. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  582. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  583. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  584. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  585. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  586. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  587. package/dist/services/document-service/utils/populate.d.ts +1 -1
  588. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  589. package/dist/services/document-service/utils/populate.js +67 -37
  590. package/dist/services/document-service/utils/populate.js.map +1 -1
  591. package/dist/services/document-service/utils/populate.mjs +66 -38
  592. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  593. package/dist/services/document-service/utils/unidirectional-relations.d.ts +36 -0
  594. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -0
  595. package/dist/services/document-service/utils/unidirectional-relations.js +116 -0
  596. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -0
  597. package/dist/services/document-service/utils/unidirectional-relations.mjs +113 -0
  598. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -0
  599. package/dist/services/entity-service/index.d.ts.map +1 -1
  600. package/dist/services/entity-service/index.js +230 -154
  601. package/dist/services/entity-service/index.js.map +1 -1
  602. package/dist/services/entity-service/index.mjs +229 -153
  603. package/dist/services/entity-service/index.mjs.map +1 -1
  604. package/dist/services/entity-validator/blocks-validator.d.ts +1 -2
  605. package/dist/services/entity-validator/blocks-validator.d.ts.map +1 -1
  606. package/dist/services/entity-validator/blocks-validator.js +137 -104
  607. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  608. package/dist/services/entity-validator/blocks-validator.mjs +135 -105
  609. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  610. package/dist/services/entity-validator/index.d.ts +15 -1
  611. package/dist/services/entity-validator/index.d.ts.map +1 -1
  612. package/dist/services/entity-validator/index.js +371 -305
  613. package/dist/services/entity-validator/index.js.map +1 -1
  614. package/dist/services/entity-validator/index.mjs +367 -302
  615. package/dist/services/entity-validator/index.mjs.map +1 -1
  616. package/dist/services/entity-validator/validators.d.ts +37 -25
  617. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  618. package/dist/services/entity-validator/validators.js +286 -110
  619. package/dist/services/entity-validator/validators.js.map +1 -1
  620. package/dist/services/entity-validator/validators.mjs +277 -108
  621. package/dist/services/entity-validator/validators.mjs.map +1 -1
  622. package/dist/services/errors.js +65 -65
  623. package/dist/services/errors.js.map +1 -1
  624. package/dist/services/errors.mjs +64 -66
  625. package/dist/services/errors.mjs.map +1 -1
  626. package/dist/services/event-hub.d.ts +1 -0
  627. package/dist/services/event-hub.d.ts.map +1 -1
  628. package/dist/services/event-hub.js +82 -64
  629. package/dist/services/event-hub.js.map +1 -1
  630. package/dist/services/event-hub.mjs +81 -66
  631. package/dist/services/event-hub.mjs.map +1 -1
  632. package/dist/services/features.js +19 -14
  633. package/dist/services/features.js.map +1 -1
  634. package/dist/services/features.mjs +18 -15
  635. package/dist/services/features.mjs.map +1 -1
  636. package/dist/services/fs.js +41 -40
  637. package/dist/services/fs.js.map +1 -1
  638. package/dist/services/fs.mjs +40 -39
  639. package/dist/services/fs.mjs.map +1 -1
  640. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  641. package/dist/services/metrics/admin-user-hash.js +13 -11
  642. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  643. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  644. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  645. package/dist/services/metrics/index.js +46 -40
  646. package/dist/services/metrics/index.js.map +1 -1
  647. package/dist/services/metrics/index.mjs +45 -42
  648. package/dist/services/metrics/index.mjs.map +1 -1
  649. package/dist/services/metrics/is-truthy.js +13 -6
  650. package/dist/services/metrics/is-truthy.js.map +1 -1
  651. package/dist/services/metrics/is-truthy.mjs +12 -6
  652. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  653. package/dist/services/metrics/middleware.d.ts.map +1 -1
  654. package/dist/services/metrics/middleware.js +37 -22
  655. package/dist/services/metrics/middleware.js.map +1 -1
  656. package/dist/services/metrics/middleware.mjs +36 -24
  657. package/dist/services/metrics/middleware.mjs.map +1 -1
  658. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  659. package/dist/services/metrics/rate-limiter.js +24 -19
  660. package/dist/services/metrics/rate-limiter.js.map +1 -1
  661. package/dist/services/metrics/rate-limiter.mjs +23 -21
  662. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  663. package/dist/services/metrics/sender.d.ts.map +1 -1
  664. package/dist/services/metrics/sender.js +78 -69
  665. package/dist/services/metrics/sender.js.map +1 -1
  666. package/dist/services/metrics/sender.mjs +77 -64
  667. package/dist/services/metrics/sender.mjs.map +1 -1
  668. package/dist/services/query-params.js +13 -10
  669. package/dist/services/query-params.js.map +1 -1
  670. package/dist/services/query-params.mjs +12 -12
  671. package/dist/services/query-params.mjs.map +1 -1
  672. package/dist/services/reloader.d.ts +7 -0
  673. package/dist/services/reloader.d.ts.map +1 -0
  674. package/dist/services/reloader.js +39 -0
  675. package/dist/services/reloader.js.map +1 -0
  676. package/dist/services/reloader.mjs +37 -0
  677. package/dist/services/reloader.mjs.map +1 -0
  678. package/dist/services/request-context.js +11 -8
  679. package/dist/services/request-context.js.map +1 -1
  680. package/dist/services/request-context.mjs +10 -10
  681. package/dist/services/request-context.mjs.map +1 -1
  682. package/dist/services/server/admin-api.js +11 -10
  683. package/dist/services/server/admin-api.js.map +1 -1
  684. package/dist/services/server/admin-api.mjs +10 -11
  685. package/dist/services/server/admin-api.mjs.map +1 -1
  686. package/dist/services/server/api.js +33 -27
  687. package/dist/services/server/api.js.map +1 -1
  688. package/dist/services/server/api.mjs +32 -26
  689. package/dist/services/server/api.mjs.map +1 -1
  690. package/dist/services/server/compose-endpoint.d.ts.map +1 -1
  691. package/dist/services/server/compose-endpoint.js +116 -105
  692. package/dist/services/server/compose-endpoint.js.map +1 -1
  693. package/dist/services/server/compose-endpoint.mjs +115 -105
  694. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  695. package/dist/services/server/content-api.js +11 -9
  696. package/dist/services/server/content-api.js.map +1 -1
  697. package/dist/services/server/content-api.mjs +10 -10
  698. package/dist/services/server/content-api.mjs.map +1 -1
  699. package/dist/services/server/http-server.js +48 -44
  700. package/dist/services/server/http-server.js.map +1 -1
  701. package/dist/services/server/http-server.mjs +47 -43
  702. package/dist/services/server/http-server.mjs.map +1 -1
  703. package/dist/services/server/index.js +85 -82
  704. package/dist/services/server/index.js.map +1 -1
  705. package/dist/services/server/index.mjs +84 -81
  706. package/dist/services/server/index.mjs.map +1 -1
  707. package/dist/services/server/koa.d.ts.map +1 -1
  708. package/dist/services/server/koa.js +49 -47
  709. package/dist/services/server/koa.js.map +1 -1
  710. package/dist/services/server/koa.mjs +48 -44
  711. package/dist/services/server/koa.mjs.map +1 -1
  712. package/dist/services/server/middleware.js +86 -82
  713. package/dist/services/server/middleware.js.map +1 -1
  714. package/dist/services/server/middleware.mjs +85 -82
  715. package/dist/services/server/middleware.mjs.map +1 -1
  716. package/dist/services/server/policy.js +24 -17
  717. package/dist/services/server/policy.js.map +1 -1
  718. package/dist/services/server/policy.mjs +23 -18
  719. package/dist/services/server/policy.mjs.map +1 -1
  720. package/dist/services/server/register-middlewares.js +68 -61
  721. package/dist/services/server/register-middlewares.js.map +1 -1
  722. package/dist/services/server/register-middlewares.mjs +67 -63
  723. package/dist/services/server/register-middlewares.mjs.map +1 -1
  724. package/dist/services/server/register-routes.js +90 -67
  725. package/dist/services/server/register-routes.js.map +1 -1
  726. package/dist/services/server/register-routes.mjs +89 -67
  727. package/dist/services/server/register-routes.mjs.map +1 -1
  728. package/dist/services/server/routing.d.ts +1 -1
  729. package/dist/services/server/routing.js +94 -81
  730. package/dist/services/server/routing.js.map +1 -1
  731. package/dist/services/server/routing.mjs +93 -81
  732. package/dist/services/server/routing.mjs.map +1 -1
  733. package/dist/services/utils/conditional-fields.d.ts +3 -0
  734. package/dist/services/utils/conditional-fields.d.ts.map +1 -0
  735. package/dist/services/utils/conditional-fields.js +22 -0
  736. package/dist/services/utils/conditional-fields.js.map +1 -0
  737. package/dist/services/utils/conditional-fields.mjs +20 -0
  738. package/dist/services/utils/conditional-fields.mjs.map +1 -0
  739. package/dist/services/utils/dynamic-zones.js +13 -14
  740. package/dist/services/utils/dynamic-zones.js.map +1 -1
  741. package/dist/services/utils/dynamic-zones.mjs +12 -16
  742. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  743. package/dist/services/webhook-runner.d.ts +2 -1
  744. package/dist/services/webhook-runner.d.ts.map +1 -1
  745. package/dist/services/webhook-runner.js +124 -122
  746. package/dist/services/webhook-runner.js.map +1 -1
  747. package/dist/services/webhook-runner.mjs +123 -121
  748. package/dist/services/webhook-runner.mjs.map +1 -1
  749. package/dist/services/webhook-store.d.ts +2 -8
  750. package/dist/services/webhook-store.d.ts.map +1 -1
  751. package/dist/services/webhook-store.js +132 -93
  752. package/dist/services/webhook-store.js.map +1 -1
  753. package/dist/services/webhook-store.mjs +131 -95
  754. package/dist/services/webhook-store.mjs.map +1 -1
  755. package/dist/services/worker-queue.js +44 -49
  756. package/dist/services/worker-queue.js.map +1 -1
  757. package/dist/services/worker-queue.mjs +43 -49
  758. package/dist/services/worker-queue.mjs.map +1 -1
  759. package/dist/utils/convert-custom-field-type.js +17 -20
  760. package/dist/utils/convert-custom-field-type.js.map +1 -1
  761. package/dist/utils/convert-custom-field-type.mjs +16 -21
  762. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  763. package/dist/utils/cron.js +64 -30
  764. package/dist/utils/cron.js.map +1 -1
  765. package/dist/utils/cron.mjs +63 -31
  766. package/dist/utils/cron.mjs.map +1 -1
  767. package/dist/utils/fetch.d.ts +5 -1
  768. package/dist/utils/fetch.d.ts.map +1 -1
  769. package/dist/utils/fetch.js +28 -17
  770. package/dist/utils/fetch.js.map +1 -1
  771. package/dist/utils/fetch.mjs +27 -18
  772. package/dist/utils/fetch.mjs.map +1 -1
  773. package/dist/utils/filepath-to-prop-path.d.ts +1 -1
  774. package/dist/utils/filepath-to-prop-path.d.ts.map +1 -1
  775. package/dist/utils/filepath-to-prop-path.js +22 -9
  776. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  777. package/dist/utils/filepath-to-prop-path.mjs +20 -7
  778. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  779. package/dist/utils/index.d.ts +2 -1
  780. package/dist/utils/index.d.ts.map +1 -1
  781. package/dist/utils/is-initialized.js +21 -12
  782. package/dist/utils/is-initialized.js.map +1 -1
  783. package/dist/utils/is-initialized.mjs +20 -13
  784. package/dist/utils/is-initialized.mjs.map +1 -1
  785. package/dist/utils/lifecycles.js +6 -5
  786. package/dist/utils/lifecycles.js.map +1 -1
  787. package/dist/utils/lifecycles.mjs +5 -6
  788. package/dist/utils/lifecycles.mjs.map +1 -1
  789. package/dist/utils/load-config-file.js +40 -38
  790. package/dist/utils/load-config-file.js.map +1 -1
  791. package/dist/utils/load-config-file.mjs +39 -36
  792. package/dist/utils/load-config-file.mjs.map +1 -1
  793. package/dist/utils/load-files.d.ts.map +1 -1
  794. package/dist/utils/load-files.js +40 -35
  795. package/dist/utils/load-files.js.map +1 -1
  796. package/dist/utils/load-files.mjs +39 -32
  797. package/dist/utils/load-files.mjs.map +1 -1
  798. package/dist/utils/open-browser.js +8 -8
  799. package/dist/utils/open-browser.js.map +1 -1
  800. package/dist/utils/open-browser.mjs +7 -7
  801. package/dist/utils/open-browser.mjs.map +1 -1
  802. package/dist/utils/resolve-working-dirs.d.ts +19 -0
  803. package/dist/utils/resolve-working-dirs.d.ts.map +1 -0
  804. package/dist/utils/resolve-working-dirs.js +26 -0
  805. package/dist/utils/resolve-working-dirs.js.map +1 -0
  806. package/dist/utils/resolve-working-dirs.mjs +24 -0
  807. package/dist/utils/resolve-working-dirs.mjs.map +1 -0
  808. package/dist/utils/signals.js +20 -14
  809. package/dist/utils/signals.js.map +1 -1
  810. package/dist/utils/signals.mjs +19 -15
  811. package/dist/utils/signals.mjs.map +1 -1
  812. package/dist/utils/startup-logger.d.ts.map +1 -1
  813. package/dist/utils/startup-logger.js +107 -78
  814. package/dist/utils/startup-logger.js.map +1 -1
  815. package/dist/utils/startup-logger.mjs +106 -75
  816. package/dist/utils/startup-logger.mjs.map +1 -1
  817. package/dist/utils/transform-content-types-to-models.d.ts +572 -38
  818. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  819. package/dist/utils/transform-content-types-to-models.js +357 -217
  820. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  821. package/dist/utils/transform-content-types-to-models.mjs +351 -220
  822. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  823. package/dist/utils/update-notifier/index.d.ts +1 -6
  824. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  825. package/dist/utils/update-notifier/index.js +66 -74
  826. package/dist/utils/update-notifier/index.js.map +1 -1
  827. package/dist/utils/update-notifier/index.mjs +65 -68
  828. package/dist/utils/update-notifier/index.mjs.map +1 -1
  829. package/package.json +44 -39
  830. package/dist/registries/config.d.ts +0 -4
  831. package/dist/registries/config.d.ts.map +0 -1
  832. package/dist/registries/config.js +0 -43
  833. package/dist/registries/config.js.map +0 -1
  834. package/dist/registries/config.mjs +0 -44
  835. package/dist/registries/config.mjs.map +0 -1
  836. package/dist/services/document-service/document-engine.d.ts +0 -2
  837. package/dist/services/document-service/document-engine.d.ts.map +0 -1
  838. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts +0 -2
  839. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts.map +0 -1
  840. package/dist/services/document-service/transform/relations/utils/data.js +0 -12
  841. package/dist/services/document-service/transform/relations/utils/data.js.map +0 -1
  842. package/dist/services/document-service/transform/relations/utils/data.mjs +0 -12
  843. package/dist/services/document-service/transform/relations/utils/data.mjs.map +0 -1
  844. package/dist/services/entity-service/attributes/index.d.ts +0 -6
  845. package/dist/services/entity-service/attributes/index.d.ts.map +0 -1
  846. package/dist/services/entity-service/attributes/index.js +0 -22
  847. package/dist/services/entity-service/attributes/index.js.map +0 -1
  848. package/dist/services/entity-service/attributes/index.mjs +0 -22
  849. package/dist/services/entity-service/attributes/index.mjs.map +0 -1
  850. package/dist/services/entity-service/attributes/transforms.d.ts.map +0 -1
  851. package/dist/services/entity-service/attributes/transforms.js +0 -20
  852. package/dist/services/entity-service/attributes/transforms.js.map +0 -1
  853. package/dist/services/entity-service/attributes/transforms.mjs +0 -19
  854. package/dist/services/entity-service/attributes/transforms.mjs.map +0 -1
  855. package/dist/services/entity-service/components.d.ts +0 -95
  856. package/dist/services/entity-service/components.d.ts.map +0 -1
  857. package/dist/services/entity-service/components.js +0 -298
  858. package/dist/services/entity-service/components.js.map +0 -1
  859. package/dist/services/entity-service/components.mjs +0 -296
  860. package/dist/services/entity-service/components.mjs.map +0 -1
  861. package/dist/services/entity-service/params.d.ts +0 -8
  862. package/dist/services/entity-service/params.d.ts.map +0 -1
  863. package/dist/services/entity-service/params.js +0 -8
  864. package/dist/services/entity-service/params.js.map +0 -1
  865. package/dist/services/entity-service/params.mjs +0 -8
  866. package/dist/services/entity-service/params.mjs.map +0 -1
  867. package/dist/utils/get-dirs.d.ts +0 -9
  868. package/dist/utils/get-dirs.d.ts.map +0 -1
  869. package/dist/utils/get-dirs.js +0 -30
  870. package/dist/utils/get-dirs.js.map +0 -1
  871. package/dist/utils/get-dirs.mjs +0 -30
  872. package/dist/utils/get-dirs.mjs.map +0 -1
  873. /package/dist/services/{entity-service → document-service}/attributes/transforms.d.ts +0 -0
@@ -1,16 +1,14 @@
1
- import { contentTypes } from "@strapi/utils";
2
- import { createSingleTypeService } from "./single-type.mjs";
3
- import { createCollectionTypeService } from "./collection-type.mjs";
4
- const isSingleType = (contentType) => contentTypes.isSingleType(contentType);
5
- function createService({
6
- contentType
7
- }) {
8
- if (isSingleType(contentType)) {
9
- return createSingleTypeService(contentType);
10
- }
11
- return createCollectionTypeService(contentType);
1
+ import { contentTypes } from '@strapi/utils';
2
+ import { createSingleTypeService } from './single-type.mjs';
3
+ import { createCollectionTypeService } from './collection-type.mjs';
4
+
5
+ const isSingleType = (contentType)=>contentTypes.isSingleType(contentType);
6
+ function createService({ contentType }) {
7
+ if (isSingleType(contentType)) {
8
+ return createSingleTypeService(contentType);
9
+ }
10
+ return createCollectionTypeService(contentType);
12
11
  }
13
- export {
14
- createService
15
- };
12
+
13
+ export { createService };
16
14
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/core-api/service/index.ts"],"sourcesContent":["import { contentTypes as contentTypeUtils } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\n\nimport { createSingleTypeService } from './single-type';\nimport { createCollectionTypeService } from './collection-type';\n\nconst isSingleType = (\n contentType: Struct.ContentTypeSchema\n): contentType is Struct.SingleTypeSchema => contentTypeUtils.isSingleType(contentType);\n\n/**\n * Returns a core api for the provided model\n */\nfunction createService<T extends Struct.SingleTypeSchema | Struct.CollectionTypeSchema>(opts: {\n contentType: T;\n}): T extends Struct.SingleTypeSchema\n ? Core.CoreAPI.Service.SingleType\n : Core.CoreAPI.Service.CollectionType;\nfunction createService({\n contentType,\n}: {\n contentType: Struct.CollectionTypeSchema | Struct.SingleTypeSchema;\n}): Core.CoreAPI.Service.SingleType | Core.CoreAPI.Service.CollectionType {\n if (isSingleType(contentType)) {\n return createSingleTypeService(contentType);\n }\n\n return createCollectionTypeService(contentType);\n}\n\nexport { createService };\n"],"names":["contentTypeUtils"],"mappings":";;;AAMA,MAAM,eAAe,CACnB,gBAC2CA,aAAiB,aAAa,WAAW;AAUtF,SAAS,cAAc;AAAA,EACrB;AACF,GAE0E;AACpE,MAAA,aAAa,WAAW,GAAG;AAC7B,WAAO,wBAAwB,WAAW;AAAA,EAC5C;AAEA,SAAO,4BAA4B,WAAW;AAChD;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/core-api/service/index.ts"],"sourcesContent":["import { contentTypes as contentTypeUtils } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\n\nimport { createSingleTypeService } from './single-type';\nimport { createCollectionTypeService } from './collection-type';\n\nconst isSingleType = (\n contentType: Struct.ContentTypeSchema\n): contentType is Struct.SingleTypeSchema => contentTypeUtils.isSingleType(contentType);\n\n/**\n * Returns a core api for the provided model\n */\nfunction createService<T extends Struct.SingleTypeSchema | Struct.CollectionTypeSchema>(opts: {\n contentType: T;\n}): T extends Struct.SingleTypeSchema\n ? Core.CoreAPI.Service.SingleType\n : Core.CoreAPI.Service.CollectionType;\nfunction createService({\n contentType,\n}: {\n contentType: Struct.CollectionTypeSchema | Struct.SingleTypeSchema;\n}): Core.CoreAPI.Service.SingleType | Core.CoreAPI.Service.CollectionType {\n if (isSingleType(contentType)) {\n return createSingleTypeService(contentType);\n }\n\n return createCollectionTypeService(contentType);\n}\n\nexport { createService };\n"],"names":["isSingleType","contentType","contentTypeUtils","createService","createSingleTypeService","createCollectionTypeService"],"mappings":";;;;AAMA,MAAMA,YAAe,GAAA,CACnBC,WAC2CC,GAAAA,YAAAA,CAAiBF,YAAY,CAACC,WAAAA,CAAAA;AAU3E,SAASE,aAAAA,CAAc,EACrBF,WAAW,EAGZ,EAAA;AACC,IAAA,IAAID,aAAaC,WAAc,CAAA,EAAA;AAC7B,QAAA,OAAOG,uBAAwBH,CAAAA,WAAAA,CAAAA;AACjC;AAEA,IAAA,OAAOI,2BAA4BJ,CAAAA,WAAAA,CAAAA;AACrC;;;;"}
@@ -1,3 +1,4 @@
1
+ import { pagination } from '@strapi/utils';
1
2
  interface BasePaginationParams {
2
3
  withCount?: boolean | 't' | '1' | 'true' | 'f' | '0' | 'false' | 0 | 1;
3
4
  }
@@ -17,21 +18,13 @@ type PaginationInfo = {
17
18
  start: number;
18
19
  limit: number;
19
20
  };
21
+ declare const isPagedPagination: (pagination?: PaginationParams) => pagination is PagedPagination;
20
22
  declare const shouldCount: (params: {
21
23
  pagination?: PaginationParams;
22
24
  }) => boolean;
23
25
  declare const getPaginationInfo: (params: {
24
26
  pagination?: PaginationParams;
25
27
  }) => PaginationInfo;
26
- declare const transformPaginationResponse: (paginationInfo: PaginationInfo, count: number) => {
27
- pageCount: number;
28
- total: number;
29
- page: number;
30
- pageSize: number;
31
- } | {
32
- total: number;
33
- start: number;
34
- limit: number;
35
- };
36
- export { getPaginationInfo, transformPaginationResponse, shouldCount };
28
+ declare const transformPaginationResponse: (paginationInfo: PaginationInfo, total: number | undefined, isPaged: boolean) => pagination.PagePatinationInformation | pagination.OffsetPaginationInformation;
29
+ export { isPagedPagination, shouldCount, getPaginationInfo, transformPaginationResponse };
37
30
  //# sourceMappingURL=pagination.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../src/core-api/service/pagination.ts"],"names":[],"mappings":"AAGA,UAAU,oBAAoB;IAC5B,SAAS,CAAC,EAAE,OAAO,GAAG,GAAG,GAAG,GAAG,GAAG,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;CACxE;AAED,KAAK,eAAe,GAAG,oBAAoB,GAAG;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,gBAAgB,GAAG,oBAAoB,GAAG;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAElE,KAAK,cAAc,GACf;IACE,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,GACD;IACE,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAmBN,QAAA,MAAM,WAAW,WAAY;IAAE,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAAE,YA0B7D,CAAC;AAQF,QAAA,MAAM,iBAAiB,WAAY;IAAE,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAAE,KAAG,cA0CtE,CAAC;AAEF,QAAA,MAAM,2BAA2B,mBAAoB,cAAc,SAAS,MAAM;;;UAvGtE,MAAM;cACF,MAAM;;;WAGT,MAAM;WACN,MAAM;CA+GlB,CAAC;AAEF,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../src/core-api/service/pagination.ts"],"names":[],"mappings":"AAEA,OAAO,EAAU,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnD,UAAU,oBAAoB;IAC5B,SAAS,CAAC,EAAE,OAAO,GAAG,GAAG,GAAG,GAAG,GAAG,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;CACxE;AAED,KAAK,eAAe,GAAG,oBAAoB,GAAG;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,gBAAgB,GAAG,oBAAoB,GAAG;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAElE,KAAK,cAAc,GACf;IACE,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,GACD;IACE,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAaN,QAAA,MAAM,iBAAiB,gBAAiB,gBAAgB,kCACmC,CAAC;AAE5F,QAAA,MAAM,WAAW,WAAY;IAAE,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAAE,YA0B7D,CAAC;AAEF,QAAA,MAAM,iBAAiB,WAAY;IAAE,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAAE,KAAG,cAStE,CAAC;AAEF,QAAA,MAAM,2BAA2B,mBACf,cAAc,SACvB,MAAM,GAAG,SAAS,WAChB,OAAO,kFAcjB,CAAC;AAEF,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,CAAC"}
@@ -1,78 +1,78 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const _ = require("lodash/fp");
4
- const strapiUtils = require("@strapi/utils");
5
- const getLimitConfigDefaults = () => ({
6
- defaultLimit: _.toNumber(strapi.config.get("api.rest.defaultLimit", 25)),
7
- maxLimit: _.toNumber(strapi.config.get("api.rest.maxLimit")) || null
8
- });
9
- const shouldApplyMaxLimit = (limit, maxLimit, { isPagedPagination: isPagedPagination2 = false } = {}) => !isPagedPagination2 && limit === -1 || maxLimit !== null && limit > maxLimit;
10
- const shouldCount = (params) => {
11
- if (_.has("pagination.withCount", params)) {
12
- const withCount = params.pagination?.withCount;
13
- if (typeof withCount === "boolean") {
14
- return withCount;
1
+ 'use strict';
2
+
3
+ var fp = require('lodash/fp');
4
+ var strapiUtils = require('@strapi/utils');
5
+
6
+ /**
7
+ * Default limit values from config
8
+ */ const getLimitConfigDefaults = ()=>({
9
+ defaultLimit: fp.toNumber(strapi.config.get('api.rest.defaultLimit', 25)),
10
+ maxLimit: fp.toNumber(strapi.config.get('api.rest.maxLimit')) || null
11
+ });
12
+ const isOffsetPagination = (pagination)=>fp.has('start', pagination) || fp.has('limit', pagination);
13
+ const isPagedPagination = (pagination)=>fp.has('page', pagination) || fp.has('pageSize', pagination) || !isOffsetPagination(pagination);
14
+ const shouldCount = (params)=>{
15
+ if (fp.has('pagination.withCount', params)) {
16
+ const withCount = params.pagination?.withCount;
17
+ if (typeof withCount === 'boolean') {
18
+ return withCount;
19
+ }
20
+ if (typeof withCount === 'undefined') {
21
+ return false;
22
+ }
23
+ if ([
24
+ 'true',
25
+ 't',
26
+ '1',
27
+ 1
28
+ ].includes(withCount)) {
29
+ return true;
30
+ }
31
+ if ([
32
+ 'false',
33
+ 'f',
34
+ '0',
35
+ 0
36
+ ].includes(withCount)) {
37
+ return false;
38
+ }
39
+ throw new strapiUtils.errors.ValidationError('Invalid withCount parameter. Expected "t","1","true","false","0","f"');
15
40
  }
16
- if (typeof withCount === "undefined") {
17
- return false;
18
- }
19
- if (["true", "t", "1", 1].includes(withCount)) {
20
- return true;
21
- }
22
- if (["false", "f", "0", 0].includes(withCount)) {
23
- return false;
24
- }
25
- throw new strapiUtils.errors.ValidationError(
26
- 'Invalid withCount parameter. Expected "t","1","true","false","0","f"'
27
- );
28
- }
29
- return Boolean(strapi.config.get("api.rest.withCount", true));
41
+ return Boolean(strapi.config.get('api.rest.withCount', true));
30
42
  };
31
- const isOffsetPagination = (pagination) => _.has("start", pagination) || _.has("limit", pagination);
32
- const isPagedPagination = (pagination) => _.has("page", pagination) || _.has("pageSize", pagination);
33
- const getPaginationInfo = (params) => {
34
- const { defaultLimit, maxLimit } = getLimitConfigDefaults();
35
- const { pagination } = params;
36
- const isPaged = isPagedPagination(pagination);
37
- const isOffset = isOffsetPagination(pagination);
38
- if (isOffset && isPaged) {
39
- throw new strapiUtils.errors.ValidationError(
40
- "Invalid pagination parameters. Expected either start/limit or page/pageSize"
41
- );
42
- }
43
- if (!isOffset && !isPaged) {
44
- return {
45
- page: 1,
46
- pageSize: defaultLimit
47
- };
48
- }
49
- if (isPagedPagination(pagination)) {
50
- const pageSize = _.isUndefined(pagination.pageSize) ? defaultLimit : Math.max(1, _.toNumber(pagination.pageSize));
43
+ const getPaginationInfo = (params)=>{
44
+ const { defaultLimit, maxLimit } = getLimitConfigDefaults();
45
+ const { start, limit } = strapiUtils.pagination.withDefaultPagination(params.pagination || {}, {
46
+ defaults: {
47
+ offset: {
48
+ limit: defaultLimit
49
+ },
50
+ page: {
51
+ pageSize: defaultLimit
52
+ }
53
+ },
54
+ maxLimit: maxLimit || -1
55
+ });
51
56
  return {
52
- page: Math.max(1, _.toNumber(pagination.page || 1)),
53
- pageSize: typeof maxLimit === "number" && shouldApplyMaxLimit(pageSize, maxLimit, { isPagedPagination: true }) ? maxLimit : Math.max(1, pageSize)
57
+ start,
58
+ limit
54
59
  };
55
- }
56
- const limit = _.isUndefined(pagination.limit) ? defaultLimit : _.toNumber(pagination.limit);
57
- return {
58
- start: Math.max(0, _.toNumber(pagination.start || 0)),
59
- limit: shouldApplyMaxLimit(limit, maxLimit) ? maxLimit || -1 : Math.max(1, limit)
60
- };
61
60
  };
62
- const transformPaginationResponse = (paginationInfo, count) => {
63
- if ("page" in paginationInfo) {
64
- return {
65
- ...paginationInfo,
66
- pageCount: Math.ceil(count / paginationInfo.pageSize),
67
- total: count
68
- };
69
- }
70
- return {
71
- ...paginationInfo,
72
- total: count
73
- };
61
+ const transformPaginationResponse = (paginationInfo, total, isPaged)=>{
62
+ const transform = isPaged ? strapiUtils.pagination.transformPagedPaginationInfo : strapiUtils.pagination.transformOffsetPaginationInfo;
63
+ const paginationResponse = transform(paginationInfo, total);
64
+ if (fp.isNil(total)) {
65
+ // Ignore total and pageCount if `total` value is not available.
66
+ return fp.omit([
67
+ 'total',
68
+ 'pageCount'
69
+ ], paginationResponse);
70
+ }
71
+ return paginationResponse;
74
72
  };
73
+
75
74
  exports.getPaginationInfo = getPaginationInfo;
75
+ exports.isPagedPagination = isPagedPagination;
76
76
  exports.shouldCount = shouldCount;
77
77
  exports.transformPaginationResponse = transformPaginationResponse;
78
78
  //# sourceMappingURL=pagination.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.js","sources":["../../../src/core-api/service/pagination.ts"],"sourcesContent":["import { has, toNumber, isUndefined } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\n\ninterface BasePaginationParams {\n withCount?: boolean | 't' | '1' | 'true' | 'f' | '0' | 'false' | 0 | 1;\n}\n\ntype PagedPagination = BasePaginationParams & {\n page?: number;\n pageSize?: number;\n};\n\ntype OffsetPagination = BasePaginationParams & {\n start?: number;\n limit?: number;\n};\n\nexport type PaginationParams = PagedPagination | OffsetPagination;\n\ntype PaginationInfo =\n | {\n page: number;\n pageSize: number;\n }\n | {\n start: number;\n limit: number;\n };\n\n/**\n * Default limit values from config\n */\nconst getLimitConfigDefaults = () => ({\n defaultLimit: toNumber(strapi.config.get('api.rest.defaultLimit', 25)),\n maxLimit: toNumber(strapi.config.get('api.rest.maxLimit')) || null,\n});\n\n/**\n * Should maxLimit be used as the limit or not\n */\nconst shouldApplyMaxLimit = (\n limit: number,\n maxLimit: number | null,\n { isPagedPagination = false } = {}\n) => (!isPagedPagination && limit === -1) || (maxLimit !== null && limit > maxLimit);\n\nconst shouldCount = (params: { pagination?: PaginationParams }) => {\n if (has('pagination.withCount', params)) {\n const withCount = params.pagination?.withCount;\n\n if (typeof withCount === 'boolean') {\n return withCount;\n }\n\n if (typeof withCount === 'undefined') {\n return false;\n }\n\n if (['true', 't', '1', 1].includes(withCount)) {\n return true;\n }\n\n if (['false', 'f', '0', 0].includes(withCount)) {\n return false;\n }\n\n throw new errors.ValidationError(\n 'Invalid withCount parameter. Expected \"t\",\"1\",\"true\",\"false\",\"0\",\"f\"'\n );\n }\n\n return Boolean(strapi.config.get('api.rest.withCount', true));\n};\n\nconst isOffsetPagination = (pagination?: PaginationParams): pagination is OffsetPagination =>\n has('start', pagination) || has('limit', pagination);\n\nconst isPagedPagination = (pagination?: PaginationParams): pagination is PagedPagination =>\n has('page', pagination) || has('pageSize', pagination);\n\nconst getPaginationInfo = (params: { pagination?: PaginationParams }): PaginationInfo => {\n const { defaultLimit, maxLimit } = getLimitConfigDefaults();\n\n const { pagination } = params;\n\n const isPaged = isPagedPagination(pagination);\n const isOffset = isOffsetPagination(pagination);\n\n if (isOffset && isPaged) {\n throw new errors.ValidationError(\n 'Invalid pagination parameters. Expected either start/limit or page/pageSize'\n );\n }\n\n if (!isOffset && !isPaged) {\n return {\n page: 1,\n pageSize: defaultLimit,\n };\n }\n\n if (isPagedPagination(pagination)) {\n const pageSize = isUndefined(pagination.pageSize)\n ? defaultLimit\n : Math.max(1, toNumber(pagination.pageSize));\n\n return {\n page: Math.max(1, toNumber(pagination.page || 1)),\n pageSize:\n typeof maxLimit === 'number' &&\n shouldApplyMaxLimit(pageSize, maxLimit, { isPagedPagination: true })\n ? maxLimit\n : Math.max(1, pageSize),\n };\n }\n\n const limit = isUndefined(pagination.limit) ? defaultLimit : toNumber(pagination.limit);\n\n return {\n start: Math.max(0, toNumber(pagination.start || 0)),\n limit: shouldApplyMaxLimit(limit, maxLimit) ? maxLimit || -1 : Math.max(1, limit),\n };\n};\n\nconst transformPaginationResponse = (paginationInfo: PaginationInfo, count: number) => {\n if ('page' in paginationInfo) {\n return {\n ...paginationInfo,\n pageCount: Math.ceil(count / paginationInfo.pageSize),\n total: count,\n };\n }\n\n return {\n ...paginationInfo,\n total: count,\n };\n};\n\nexport { getPaginationInfo, transformPaginationResponse, shouldCount };\n"],"names":["toNumber","isPagedPagination","has","errors","isUndefined"],"mappings":";;;;AAgCA,MAAM,yBAAyB,OAAO;AAAA,EACpC,cAAcA,EAAS,SAAA,OAAO,OAAO,IAAI,yBAAyB,EAAE,CAAC;AAAA,EACrE,UAAUA,EAAS,SAAA,OAAO,OAAO,IAAI,mBAAmB,CAAC,KAAK;AAChE;AAKA,MAAM,sBAAsB,CAC1B,OACA,UACA,EAAE,mBAAAC,qBAAoB,UAAU,CAAA,MAC5B,CAACA,sBAAqB,UAAU,MAAQ,aAAa,QAAQ,QAAQ;AAErE,MAAA,cAAc,CAAC,WAA8C;AAC7D,MAAAC,EAAA,IAAI,wBAAwB,MAAM,GAAG;AACjC,UAAA,YAAY,OAAO,YAAY;AAEjC,QAAA,OAAO,cAAc,WAAW;AAC3B,aAAA;AAAA,IACT;AAEI,QAAA,OAAO,cAAc,aAAa;AAC7B,aAAA;AAAA,IACT;AAEI,QAAA,CAAC,QAAQ,KAAK,KAAK,CAAC,EAAE,SAAS,SAAS,GAAG;AACtC,aAAA;AAAA,IACT;AAEI,QAAA,CAAC,SAAS,KAAK,KAAK,CAAC,EAAE,SAAS,SAAS,GAAG;AACvC,aAAA;AAAA,IACT;AAEA,UAAM,IAAIC,YAAO,OAAA;AAAA,MACf;AAAA,IAAA;AAAA,EAEJ;AAEA,SAAO,QAAQ,OAAO,OAAO,IAAI,sBAAsB,IAAI,CAAC;AAC9D;AAEA,MAAM,qBAAqB,CAAC,eAC1BD,EAAAA,IAAI,SAAS,UAAU,KAAKA,EAAI,IAAA,SAAS,UAAU;AAErD,MAAM,oBAAoB,CAAC,eACzBA,EAAAA,IAAI,QAAQ,UAAU,KAAKA,EAAI,IAAA,YAAY,UAAU;AAEjD,MAAA,oBAAoB,CAAC,WAA8D;AACvF,QAAM,EAAE,cAAc,SAAS,IAAI,uBAAuB;AAEpD,QAAA,EAAE,WAAe,IAAA;AAEjB,QAAA,UAAU,kBAAkB,UAAU;AACtC,QAAA,WAAW,mBAAmB,UAAU;AAE9C,MAAI,YAAY,SAAS;AACvB,UAAM,IAAIC,YAAO,OAAA;AAAA,MACf;AAAA,IAAA;AAAA,EAEJ;AAEI,MAAA,CAAC,YAAY,CAAC,SAAS;AAClB,WAAA;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA,IAAA;AAAA,EAEd;AAEI,MAAA,kBAAkB,UAAU,GAAG;AACjC,UAAM,WAAWC,EAAA,YAAY,WAAW,QAAQ,IAC5C,eACA,KAAK,IAAI,GAAGJ,EAAAA,SAAS,WAAW,QAAQ,CAAC;AAEtC,WAAA;AAAA,MACL,MAAM,KAAK,IAAI,GAAGA,WAAS,WAAW,QAAQ,CAAC,CAAC;AAAA,MAChD,UACE,OAAO,aAAa,YACpB,oBAAoB,UAAU,UAAU,EAAE,mBAAmB,KAAA,CAAM,IAC/D,WACA,KAAK,IAAI,GAAG,QAAQ;AAAA,IAAA;AAAA,EAE9B;AAEM,QAAA,QAAQI,cAAY,WAAW,KAAK,IAAI,eAAeJ,EAAA,SAAS,WAAW,KAAK;AAE/E,SAAA;AAAA,IACL,OAAO,KAAK,IAAI,GAAGA,WAAS,WAAW,SAAS,CAAC,CAAC;AAAA,IAClD,OAAO,oBAAoB,OAAO,QAAQ,IAAI,YAAY,KAAK,KAAK,IAAI,GAAG,KAAK;AAAA,EAAA;AAEpF;AAEM,MAAA,8BAA8B,CAAC,gBAAgC,UAAkB;AACrF,MAAI,UAAU,gBAAgB;AACrB,WAAA;AAAA,MACL,GAAG;AAAA,MACH,WAAW,KAAK,KAAK,QAAQ,eAAe,QAAQ;AAAA,MACpD,OAAO;AAAA,IAAA;AAAA,EAEX;AAEO,SAAA;AAAA,IACL,GAAG;AAAA,IACH,OAAO;AAAA,EAAA;AAEX;;;;"}
1
+ {"version":3,"file":"pagination.js","sources":["../../../src/core-api/service/pagination.ts"],"sourcesContent":["import { omit, has, toNumber, isNil } from 'lodash/fp';\n\nimport { errors, pagination } from '@strapi/utils';\n\ninterface BasePaginationParams {\n withCount?: boolean | 't' | '1' | 'true' | 'f' | '0' | 'false' | 0 | 1;\n}\n\ntype PagedPagination = BasePaginationParams & {\n page?: number;\n pageSize?: number;\n};\n\ntype OffsetPagination = BasePaginationParams & {\n start?: number;\n limit?: number;\n};\n\nexport type PaginationParams = PagedPagination | OffsetPagination;\n\ntype PaginationInfo =\n | {\n page: number;\n pageSize: number;\n }\n | {\n start: number;\n limit: number;\n };\n\n/**\n * Default limit values from config\n */\nconst getLimitConfigDefaults = () => ({\n defaultLimit: toNumber(strapi.config.get('api.rest.defaultLimit', 25)),\n maxLimit: toNumber(strapi.config.get('api.rest.maxLimit')) || null,\n});\n\nconst isOffsetPagination = (pagination?: PaginationParams): pagination is OffsetPagination =>\n has('start', pagination) || has('limit', pagination);\n\nconst isPagedPagination = (pagination?: PaginationParams): pagination is PagedPagination =>\n has('page', pagination) || has('pageSize', pagination) || !isOffsetPagination(pagination);\n\nconst shouldCount = (params: { pagination?: PaginationParams }) => {\n if (has('pagination.withCount', params)) {\n const withCount = params.pagination?.withCount;\n\n if (typeof withCount === 'boolean') {\n return withCount;\n }\n\n if (typeof withCount === 'undefined') {\n return false;\n }\n\n if (['true', 't', '1', 1].includes(withCount)) {\n return true;\n }\n\n if (['false', 'f', '0', 0].includes(withCount)) {\n return false;\n }\n\n throw new errors.ValidationError(\n 'Invalid withCount parameter. Expected \"t\",\"1\",\"true\",\"false\",\"0\",\"f\"'\n );\n }\n\n return Boolean(strapi.config.get('api.rest.withCount', true));\n};\n\nconst getPaginationInfo = (params: { pagination?: PaginationParams }): PaginationInfo => {\n const { defaultLimit, maxLimit } = getLimitConfigDefaults();\n\n const { start, limit } = pagination.withDefaultPagination(params.pagination || {}, {\n defaults: { offset: { limit: defaultLimit }, page: { pageSize: defaultLimit } },\n maxLimit: maxLimit || -1,\n });\n\n return { start, limit };\n};\n\nconst transformPaginationResponse = (\n paginationInfo: PaginationInfo,\n total: number | undefined,\n isPaged: boolean\n) => {\n const transform = isPaged\n ? pagination.transformPagedPaginationInfo\n : pagination.transformOffsetPaginationInfo;\n\n const paginationResponse = transform(paginationInfo, total!);\n\n if (isNil(total)) {\n // Ignore total and pageCount if `total` value is not available.\n return omit(['total', 'pageCount'], paginationResponse) as ReturnType<typeof transform>;\n }\n\n return paginationResponse;\n};\n\nexport { isPagedPagination, shouldCount, getPaginationInfo, transformPaginationResponse };\n"],"names":["getLimitConfigDefaults","defaultLimit","toNumber","strapi","config","get","maxLimit","isOffsetPagination","pagination","has","isPagedPagination","shouldCount","params","withCount","includes","errors","ValidationError","Boolean","getPaginationInfo","start","limit","withDefaultPagination","defaults","offset","page","pageSize","transformPaginationResponse","paginationInfo","total","isPaged","transform","transformPagedPaginationInfo","transformOffsetPaginationInfo","paginationResponse","isNil","omit"],"mappings":";;;;;AA8BA;;IAGA,MAAMA,sBAAyB,GAAA,KAAO;AACpCC,QAAAA,YAAAA,EAAcC,YAASC,MAAOC,CAAAA,MAAM,CAACC,GAAG,CAAC,uBAAyB,EAAA,EAAA,CAAA,CAAA;AAClEC,QAAAA,QAAAA,EAAUJ,YAASC,MAAOC,CAAAA,MAAM,CAACC,GAAG,CAAC,mBAAyB,CAAA,CAAA,IAAA;KAChE,CAAA;AAEA,MAAME,qBAAqB,CAACC,UAAAA,GAC1BC,OAAI,OAASD,EAAAA,UAAAA,CAAAA,IAAeC,OAAI,OAASD,EAAAA,UAAAA,CAAAA;AAErCE,MAAAA,iBAAAA,GAAoB,CAACF,UAAAA,GACzBC,MAAI,CAAA,MAAA,EAAQD,eAAeC,MAAI,CAAA,UAAA,EAAYD,UAAe,CAAA,IAAA,CAACD,kBAAmBC,CAAAA,UAAAA;AAEhF,MAAMG,cAAc,CAACC,MAAAA,GAAAA;IACnB,IAAIH,MAAAA,CAAI,wBAAwBG,MAAS,CAAA,EAAA;QACvC,MAAMC,SAAAA,GAAYD,MAAOJ,CAAAA,UAAU,EAAEK,SAAAA;QAErC,IAAI,OAAOA,cAAc,SAAW,EAAA;YAClC,OAAOA,SAAAA;AACT;QAEA,IAAI,OAAOA,cAAc,WAAa,EAAA;YACpC,OAAO,KAAA;AACT;QAEA,IAAI;AAAC,YAAA,MAAA;AAAQ,YAAA,GAAA;AAAK,YAAA,GAAA;AAAK,YAAA;SAAE,CAACC,QAAQ,CAACD,SAAY,CAAA,EAAA;YAC7C,OAAO,IAAA;AACT;QAEA,IAAI;AAAC,YAAA,OAAA;AAAS,YAAA,GAAA;AAAK,YAAA,GAAA;AAAK,YAAA;SAAE,CAACC,QAAQ,CAACD,SAAY,CAAA,EAAA;YAC9C,OAAO,KAAA;AACT;QAEA,MAAM,IAAIE,kBAAOC,CAAAA,eAAe,CAC9B,sEAAA,CAAA;AAEJ;AAEA,IAAA,OAAOC,QAAQd,MAAOC,CAAAA,MAAM,CAACC,GAAG,CAAC,oBAAsB,EAAA,IAAA,CAAA,CAAA;AACzD;AAEA,MAAMa,oBAAoB,CAACN,MAAAA,GAAAA;AACzB,IAAA,MAAM,EAAEX,YAAY,EAAEK,QAAQ,EAAE,GAAGN,sBAAAA,EAAAA;AAEnC,IAAA,MAAM,EAAEmB,KAAK,EAAEC,KAAK,EAAE,GAAGZ,sBAAWa,CAAAA,qBAAqB,CAACT,MAAAA,CAAOJ,UAAU,IAAI,EAAI,EAAA;QACjFc,QAAU,EAAA;YAAEC,MAAQ,EAAA;gBAAEH,KAAOnB,EAAAA;AAAa,aAAA;YAAGuB,IAAM,EAAA;gBAAEC,QAAUxB,EAAAA;AAAa;AAAE,SAAA;AAC9EK,QAAAA,QAAAA,EAAUA,YAAY,CAAC;AACzB,KAAA,CAAA;IAEA,OAAO;AAAEa,QAAAA,KAAAA;AAAOC,QAAAA;AAAM,KAAA;AACxB;AAEMM,MAAAA,2BAAAA,GAA8B,CAClCC,cAAAA,EACAC,KACAC,EAAAA,OAAAA,GAAAA;AAEA,IAAA,MAAMC,YAAYD,OACdrB,GAAAA,sBAAAA,CAAWuB,4BAA4B,GACvCvB,uBAAWwB,6BAA6B;IAE5C,MAAMC,kBAAAA,GAAqBH,UAAUH,cAAgBC,EAAAA,KAAAA,CAAAA;AAErD,IAAA,IAAIM,SAAMN,KAAQ,CAAA,EAAA;;AAEhB,QAAA,OAAOO,OAAK,CAAA;AAAC,YAAA,OAAA;AAAS,YAAA;SAAY,EAAEF,kBAAAA,CAAAA;AACtC;IAEA,OAAOA,kBAAAA;AACT;;;;;;;"}
@@ -1,78 +1,73 @@
1
- import { has, isUndefined, toNumber } from "lodash/fp";
2
- import { errors } from "@strapi/utils";
3
- const getLimitConfigDefaults = () => ({
4
- defaultLimit: toNumber(strapi.config.get("api.rest.defaultLimit", 25)),
5
- maxLimit: toNumber(strapi.config.get("api.rest.maxLimit")) || null
6
- });
7
- const shouldApplyMaxLimit = (limit, maxLimit, { isPagedPagination: isPagedPagination2 = false } = {}) => !isPagedPagination2 && limit === -1 || maxLimit !== null && limit > maxLimit;
8
- const shouldCount = (params) => {
9
- if (has("pagination.withCount", params)) {
10
- const withCount = params.pagination?.withCount;
11
- if (typeof withCount === "boolean") {
12
- return withCount;
1
+ import { has, isNil, omit, toNumber } from 'lodash/fp';
2
+ import { errors, pagination } from '@strapi/utils';
3
+
4
+ /**
5
+ * Default limit values from config
6
+ */ const getLimitConfigDefaults = ()=>({
7
+ defaultLimit: toNumber(strapi.config.get('api.rest.defaultLimit', 25)),
8
+ maxLimit: toNumber(strapi.config.get('api.rest.maxLimit')) || null
9
+ });
10
+ const isOffsetPagination = (pagination)=>has('start', pagination) || has('limit', pagination);
11
+ const isPagedPagination = (pagination)=>has('page', pagination) || has('pageSize', pagination) || !isOffsetPagination(pagination);
12
+ const shouldCount = (params)=>{
13
+ if (has('pagination.withCount', params)) {
14
+ const withCount = params.pagination?.withCount;
15
+ if (typeof withCount === 'boolean') {
16
+ return withCount;
17
+ }
18
+ if (typeof withCount === 'undefined') {
19
+ return false;
20
+ }
21
+ if ([
22
+ 'true',
23
+ 't',
24
+ '1',
25
+ 1
26
+ ].includes(withCount)) {
27
+ return true;
28
+ }
29
+ if ([
30
+ 'false',
31
+ 'f',
32
+ '0',
33
+ 0
34
+ ].includes(withCount)) {
35
+ return false;
36
+ }
37
+ throw new errors.ValidationError('Invalid withCount parameter. Expected "t","1","true","false","0","f"');
13
38
  }
14
- if (typeof withCount === "undefined") {
15
- return false;
16
- }
17
- if (["true", "t", "1", 1].includes(withCount)) {
18
- return true;
19
- }
20
- if (["false", "f", "0", 0].includes(withCount)) {
21
- return false;
22
- }
23
- throw new errors.ValidationError(
24
- 'Invalid withCount parameter. Expected "t","1","true","false","0","f"'
25
- );
26
- }
27
- return Boolean(strapi.config.get("api.rest.withCount", true));
39
+ return Boolean(strapi.config.get('api.rest.withCount', true));
28
40
  };
29
- const isOffsetPagination = (pagination) => has("start", pagination) || has("limit", pagination);
30
- const isPagedPagination = (pagination) => has("page", pagination) || has("pageSize", pagination);
31
- const getPaginationInfo = (params) => {
32
- const { defaultLimit, maxLimit } = getLimitConfigDefaults();
33
- const { pagination } = params;
34
- const isPaged = isPagedPagination(pagination);
35
- const isOffset = isOffsetPagination(pagination);
36
- if (isOffset && isPaged) {
37
- throw new errors.ValidationError(
38
- "Invalid pagination parameters. Expected either start/limit or page/pageSize"
39
- );
40
- }
41
- if (!isOffset && !isPaged) {
42
- return {
43
- page: 1,
44
- pageSize: defaultLimit
45
- };
46
- }
47
- if (isPagedPagination(pagination)) {
48
- const pageSize = isUndefined(pagination.pageSize) ? defaultLimit : Math.max(1, toNumber(pagination.pageSize));
41
+ const getPaginationInfo = (params)=>{
42
+ const { defaultLimit, maxLimit } = getLimitConfigDefaults();
43
+ const { start, limit } = pagination.withDefaultPagination(params.pagination || {}, {
44
+ defaults: {
45
+ offset: {
46
+ limit: defaultLimit
47
+ },
48
+ page: {
49
+ pageSize: defaultLimit
50
+ }
51
+ },
52
+ maxLimit: maxLimit || -1
53
+ });
49
54
  return {
50
- page: Math.max(1, toNumber(pagination.page || 1)),
51
- pageSize: typeof maxLimit === "number" && shouldApplyMaxLimit(pageSize, maxLimit, { isPagedPagination: true }) ? maxLimit : Math.max(1, pageSize)
55
+ start,
56
+ limit
52
57
  };
53
- }
54
- const limit = isUndefined(pagination.limit) ? defaultLimit : toNumber(pagination.limit);
55
- return {
56
- start: Math.max(0, toNumber(pagination.start || 0)),
57
- limit: shouldApplyMaxLimit(limit, maxLimit) ? maxLimit || -1 : Math.max(1, limit)
58
- };
59
58
  };
60
- const transformPaginationResponse = (paginationInfo, count) => {
61
- if ("page" in paginationInfo) {
62
- return {
63
- ...paginationInfo,
64
- pageCount: Math.ceil(count / paginationInfo.pageSize),
65
- total: count
66
- };
67
- }
68
- return {
69
- ...paginationInfo,
70
- total: count
71
- };
72
- };
73
- export {
74
- getPaginationInfo,
75
- shouldCount,
76
- transformPaginationResponse
59
+ const transformPaginationResponse = (paginationInfo, total, isPaged)=>{
60
+ const transform = isPaged ? pagination.transformPagedPaginationInfo : pagination.transformOffsetPaginationInfo;
61
+ const paginationResponse = transform(paginationInfo, total);
62
+ if (isNil(total)) {
63
+ // Ignore total and pageCount if `total` value is not available.
64
+ return omit([
65
+ 'total',
66
+ 'pageCount'
67
+ ], paginationResponse);
68
+ }
69
+ return paginationResponse;
77
70
  };
71
+
72
+ export { getPaginationInfo, isPagedPagination, shouldCount, transformPaginationResponse };
78
73
  //# sourceMappingURL=pagination.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.mjs","sources":["../../../src/core-api/service/pagination.ts"],"sourcesContent":["import { has, toNumber, isUndefined } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\n\ninterface BasePaginationParams {\n withCount?: boolean | 't' | '1' | 'true' | 'f' | '0' | 'false' | 0 | 1;\n}\n\ntype PagedPagination = BasePaginationParams & {\n page?: number;\n pageSize?: number;\n};\n\ntype OffsetPagination = BasePaginationParams & {\n start?: number;\n limit?: number;\n};\n\nexport type PaginationParams = PagedPagination | OffsetPagination;\n\ntype PaginationInfo =\n | {\n page: number;\n pageSize: number;\n }\n | {\n start: number;\n limit: number;\n };\n\n/**\n * Default limit values from config\n */\nconst getLimitConfigDefaults = () => ({\n defaultLimit: toNumber(strapi.config.get('api.rest.defaultLimit', 25)),\n maxLimit: toNumber(strapi.config.get('api.rest.maxLimit')) || null,\n});\n\n/**\n * Should maxLimit be used as the limit or not\n */\nconst shouldApplyMaxLimit = (\n limit: number,\n maxLimit: number | null,\n { isPagedPagination = false } = {}\n) => (!isPagedPagination && limit === -1) || (maxLimit !== null && limit > maxLimit);\n\nconst shouldCount = (params: { pagination?: PaginationParams }) => {\n if (has('pagination.withCount', params)) {\n const withCount = params.pagination?.withCount;\n\n if (typeof withCount === 'boolean') {\n return withCount;\n }\n\n if (typeof withCount === 'undefined') {\n return false;\n }\n\n if (['true', 't', '1', 1].includes(withCount)) {\n return true;\n }\n\n if (['false', 'f', '0', 0].includes(withCount)) {\n return false;\n }\n\n throw new errors.ValidationError(\n 'Invalid withCount parameter. Expected \"t\",\"1\",\"true\",\"false\",\"0\",\"f\"'\n );\n }\n\n return Boolean(strapi.config.get('api.rest.withCount', true));\n};\n\nconst isOffsetPagination = (pagination?: PaginationParams): pagination is OffsetPagination =>\n has('start', pagination) || has('limit', pagination);\n\nconst isPagedPagination = (pagination?: PaginationParams): pagination is PagedPagination =>\n has('page', pagination) || has('pageSize', pagination);\n\nconst getPaginationInfo = (params: { pagination?: PaginationParams }): PaginationInfo => {\n const { defaultLimit, maxLimit } = getLimitConfigDefaults();\n\n const { pagination } = params;\n\n const isPaged = isPagedPagination(pagination);\n const isOffset = isOffsetPagination(pagination);\n\n if (isOffset && isPaged) {\n throw new errors.ValidationError(\n 'Invalid pagination parameters. Expected either start/limit or page/pageSize'\n );\n }\n\n if (!isOffset && !isPaged) {\n return {\n page: 1,\n pageSize: defaultLimit,\n };\n }\n\n if (isPagedPagination(pagination)) {\n const pageSize = isUndefined(pagination.pageSize)\n ? defaultLimit\n : Math.max(1, toNumber(pagination.pageSize));\n\n return {\n page: Math.max(1, toNumber(pagination.page || 1)),\n pageSize:\n typeof maxLimit === 'number' &&\n shouldApplyMaxLimit(pageSize, maxLimit, { isPagedPagination: true })\n ? maxLimit\n : Math.max(1, pageSize),\n };\n }\n\n const limit = isUndefined(pagination.limit) ? defaultLimit : toNumber(pagination.limit);\n\n return {\n start: Math.max(0, toNumber(pagination.start || 0)),\n limit: shouldApplyMaxLimit(limit, maxLimit) ? maxLimit || -1 : Math.max(1, limit),\n };\n};\n\nconst transformPaginationResponse = (paginationInfo: PaginationInfo, count: number) => {\n if ('page' in paginationInfo) {\n return {\n ...paginationInfo,\n pageCount: Math.ceil(count / paginationInfo.pageSize),\n total: count,\n };\n }\n\n return {\n ...paginationInfo,\n total: count,\n };\n};\n\nexport { getPaginationInfo, transformPaginationResponse, shouldCount };\n"],"names":["isPagedPagination"],"mappings":";;AAgCA,MAAM,yBAAyB,OAAO;AAAA,EACpC,cAAc,SAAS,OAAO,OAAO,IAAI,yBAAyB,EAAE,CAAC;AAAA,EACrE,UAAU,SAAS,OAAO,OAAO,IAAI,mBAAmB,CAAC,KAAK;AAChE;AAKA,MAAM,sBAAsB,CAC1B,OACA,UACA,EAAE,mBAAAA,qBAAoB,UAAU,CAAA,MAC5B,CAACA,sBAAqB,UAAU,MAAQ,aAAa,QAAQ,QAAQ;AAErE,MAAA,cAAc,CAAC,WAA8C;AAC7D,MAAA,IAAI,wBAAwB,MAAM,GAAG;AACjC,UAAA,YAAY,OAAO,YAAY;AAEjC,QAAA,OAAO,cAAc,WAAW;AAC3B,aAAA;AAAA,IACT;AAEI,QAAA,OAAO,cAAc,aAAa;AAC7B,aAAA;AAAA,IACT;AAEI,QAAA,CAAC,QAAQ,KAAK,KAAK,CAAC,EAAE,SAAS,SAAS,GAAG;AACtC,aAAA;AAAA,IACT;AAEI,QAAA,CAAC,SAAS,KAAK,KAAK,CAAC,EAAE,SAAS,SAAS,GAAG;AACvC,aAAA;AAAA,IACT;AAEA,UAAM,IAAI,OAAO;AAAA,MACf;AAAA,IAAA;AAAA,EAEJ;AAEA,SAAO,QAAQ,OAAO,OAAO,IAAI,sBAAsB,IAAI,CAAC;AAC9D;AAEA,MAAM,qBAAqB,CAAC,eAC1B,IAAI,SAAS,UAAU,KAAK,IAAI,SAAS,UAAU;AAErD,MAAM,oBAAoB,CAAC,eACzB,IAAI,QAAQ,UAAU,KAAK,IAAI,YAAY,UAAU;AAEjD,MAAA,oBAAoB,CAAC,WAA8D;AACvF,QAAM,EAAE,cAAc,SAAS,IAAI,uBAAuB;AAEpD,QAAA,EAAE,WAAe,IAAA;AAEjB,QAAA,UAAU,kBAAkB,UAAU;AACtC,QAAA,WAAW,mBAAmB,UAAU;AAE9C,MAAI,YAAY,SAAS;AACvB,UAAM,IAAI,OAAO;AAAA,MACf;AAAA,IAAA;AAAA,EAEJ;AAEI,MAAA,CAAC,YAAY,CAAC,SAAS;AAClB,WAAA;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA,IAAA;AAAA,EAEd;AAEI,MAAA,kBAAkB,UAAU,GAAG;AACjC,UAAM,WAAW,YAAY,WAAW,QAAQ,IAC5C,eACA,KAAK,IAAI,GAAG,SAAS,WAAW,QAAQ,CAAC;AAEtC,WAAA;AAAA,MACL,MAAM,KAAK,IAAI,GAAG,SAAS,WAAW,QAAQ,CAAC,CAAC;AAAA,MAChD,UACE,OAAO,aAAa,YACpB,oBAAoB,UAAU,UAAU,EAAE,mBAAmB,KAAA,CAAM,IAC/D,WACA,KAAK,IAAI,GAAG,QAAQ;AAAA,IAAA;AAAA,EAE9B;AAEM,QAAA,QAAQ,YAAY,WAAW,KAAK,IAAI,eAAe,SAAS,WAAW,KAAK;AAE/E,SAAA;AAAA,IACL,OAAO,KAAK,IAAI,GAAG,SAAS,WAAW,SAAS,CAAC,CAAC;AAAA,IAClD,OAAO,oBAAoB,OAAO,QAAQ,IAAI,YAAY,KAAK,KAAK,IAAI,GAAG,KAAK;AAAA,EAAA;AAEpF;AAEM,MAAA,8BAA8B,CAAC,gBAAgC,UAAkB;AACrF,MAAI,UAAU,gBAAgB;AACrB,WAAA;AAAA,MACL,GAAG;AAAA,MACH,WAAW,KAAK,KAAK,QAAQ,eAAe,QAAQ;AAAA,MACpD,OAAO;AAAA,IAAA;AAAA,EAEX;AAEO,SAAA;AAAA,IACL,GAAG;AAAA,IACH,OAAO;AAAA,EAAA;AAEX;"}
1
+ {"version":3,"file":"pagination.mjs","sources":["../../../src/core-api/service/pagination.ts"],"sourcesContent":["import { omit, has, toNumber, isNil } from 'lodash/fp';\n\nimport { errors, pagination } from '@strapi/utils';\n\ninterface BasePaginationParams {\n withCount?: boolean | 't' | '1' | 'true' | 'f' | '0' | 'false' | 0 | 1;\n}\n\ntype PagedPagination = BasePaginationParams & {\n page?: number;\n pageSize?: number;\n};\n\ntype OffsetPagination = BasePaginationParams & {\n start?: number;\n limit?: number;\n};\n\nexport type PaginationParams = PagedPagination | OffsetPagination;\n\ntype PaginationInfo =\n | {\n page: number;\n pageSize: number;\n }\n | {\n start: number;\n limit: number;\n };\n\n/**\n * Default limit values from config\n */\nconst getLimitConfigDefaults = () => ({\n defaultLimit: toNumber(strapi.config.get('api.rest.defaultLimit', 25)),\n maxLimit: toNumber(strapi.config.get('api.rest.maxLimit')) || null,\n});\n\nconst isOffsetPagination = (pagination?: PaginationParams): pagination is OffsetPagination =>\n has('start', pagination) || has('limit', pagination);\n\nconst isPagedPagination = (pagination?: PaginationParams): pagination is PagedPagination =>\n has('page', pagination) || has('pageSize', pagination) || !isOffsetPagination(pagination);\n\nconst shouldCount = (params: { pagination?: PaginationParams }) => {\n if (has('pagination.withCount', params)) {\n const withCount = params.pagination?.withCount;\n\n if (typeof withCount === 'boolean') {\n return withCount;\n }\n\n if (typeof withCount === 'undefined') {\n return false;\n }\n\n if (['true', 't', '1', 1].includes(withCount)) {\n return true;\n }\n\n if (['false', 'f', '0', 0].includes(withCount)) {\n return false;\n }\n\n throw new errors.ValidationError(\n 'Invalid withCount parameter. Expected \"t\",\"1\",\"true\",\"false\",\"0\",\"f\"'\n );\n }\n\n return Boolean(strapi.config.get('api.rest.withCount', true));\n};\n\nconst getPaginationInfo = (params: { pagination?: PaginationParams }): PaginationInfo => {\n const { defaultLimit, maxLimit } = getLimitConfigDefaults();\n\n const { start, limit } = pagination.withDefaultPagination(params.pagination || {}, {\n defaults: { offset: { limit: defaultLimit }, page: { pageSize: defaultLimit } },\n maxLimit: maxLimit || -1,\n });\n\n return { start, limit };\n};\n\nconst transformPaginationResponse = (\n paginationInfo: PaginationInfo,\n total: number | undefined,\n isPaged: boolean\n) => {\n const transform = isPaged\n ? pagination.transformPagedPaginationInfo\n : pagination.transformOffsetPaginationInfo;\n\n const paginationResponse = transform(paginationInfo, total!);\n\n if (isNil(total)) {\n // Ignore total and pageCount if `total` value is not available.\n return omit(['total', 'pageCount'], paginationResponse) as ReturnType<typeof transform>;\n }\n\n return paginationResponse;\n};\n\nexport { isPagedPagination, shouldCount, getPaginationInfo, transformPaginationResponse };\n"],"names":["getLimitConfigDefaults","defaultLimit","toNumber","strapi","config","get","maxLimit","isOffsetPagination","pagination","has","isPagedPagination","shouldCount","params","withCount","includes","errors","ValidationError","Boolean","getPaginationInfo","start","limit","withDefaultPagination","defaults","offset","page","pageSize","transformPaginationResponse","paginationInfo","total","isPaged","transform","transformPagedPaginationInfo","transformOffsetPaginationInfo","paginationResponse","isNil","omit"],"mappings":";;;AA8BA;;IAGA,MAAMA,sBAAyB,GAAA,KAAO;AACpCC,QAAAA,YAAAA,EAAcC,SAASC,MAAOC,CAAAA,MAAM,CAACC,GAAG,CAAC,uBAAyB,EAAA,EAAA,CAAA,CAAA;AAClEC,QAAAA,QAAAA,EAAUJ,SAASC,MAAOC,CAAAA,MAAM,CAACC,GAAG,CAAC,mBAAyB,CAAA,CAAA,IAAA;KAChE,CAAA;AAEA,MAAME,qBAAqB,CAACC,UAAAA,GAC1BC,IAAI,OAASD,EAAAA,UAAAA,CAAAA,IAAeC,IAAI,OAASD,EAAAA,UAAAA,CAAAA;AAErCE,MAAAA,iBAAAA,GAAoB,CAACF,UAAAA,GACzBC,GAAI,CAAA,MAAA,EAAQD,eAAeC,GAAI,CAAA,UAAA,EAAYD,UAAe,CAAA,IAAA,CAACD,kBAAmBC,CAAAA,UAAAA;AAEhF,MAAMG,cAAc,CAACC,MAAAA,GAAAA;IACnB,IAAIH,GAAAA,CAAI,wBAAwBG,MAAS,CAAA,EAAA;QACvC,MAAMC,SAAAA,GAAYD,MAAOJ,CAAAA,UAAU,EAAEK,SAAAA;QAErC,IAAI,OAAOA,cAAc,SAAW,EAAA;YAClC,OAAOA,SAAAA;AACT;QAEA,IAAI,OAAOA,cAAc,WAAa,EAAA;YACpC,OAAO,KAAA;AACT;QAEA,IAAI;AAAC,YAAA,MAAA;AAAQ,YAAA,GAAA;AAAK,YAAA,GAAA;AAAK,YAAA;SAAE,CAACC,QAAQ,CAACD,SAAY,CAAA,EAAA;YAC7C,OAAO,IAAA;AACT;QAEA,IAAI;AAAC,YAAA,OAAA;AAAS,YAAA,GAAA;AAAK,YAAA,GAAA;AAAK,YAAA;SAAE,CAACC,QAAQ,CAACD,SAAY,CAAA,EAAA;YAC9C,OAAO,KAAA;AACT;QAEA,MAAM,IAAIE,MAAOC,CAAAA,eAAe,CAC9B,sEAAA,CAAA;AAEJ;AAEA,IAAA,OAAOC,QAAQd,MAAOC,CAAAA,MAAM,CAACC,GAAG,CAAC,oBAAsB,EAAA,IAAA,CAAA,CAAA;AACzD;AAEA,MAAMa,oBAAoB,CAACN,MAAAA,GAAAA;AACzB,IAAA,MAAM,EAAEX,YAAY,EAAEK,QAAQ,EAAE,GAAGN,sBAAAA,EAAAA;AAEnC,IAAA,MAAM,EAAEmB,KAAK,EAAEC,KAAK,EAAE,GAAGZ,UAAWa,CAAAA,qBAAqB,CAACT,MAAAA,CAAOJ,UAAU,IAAI,EAAI,EAAA;QACjFc,QAAU,EAAA;YAAEC,MAAQ,EAAA;gBAAEH,KAAOnB,EAAAA;AAAa,aAAA;YAAGuB,IAAM,EAAA;gBAAEC,QAAUxB,EAAAA;AAAa;AAAE,SAAA;AAC9EK,QAAAA,QAAAA,EAAUA,YAAY,CAAC;AACzB,KAAA,CAAA;IAEA,OAAO;AAAEa,QAAAA,KAAAA;AAAOC,QAAAA;AAAM,KAAA;AACxB;AAEMM,MAAAA,2BAAAA,GAA8B,CAClCC,cAAAA,EACAC,KACAC,EAAAA,OAAAA,GAAAA;AAEA,IAAA,MAAMC,YAAYD,OACdrB,GAAAA,UAAAA,CAAWuB,4BAA4B,GACvCvB,WAAWwB,6BAA6B;IAE5C,MAAMC,kBAAAA,GAAqBH,UAAUH,cAAgBC,EAAAA,KAAAA,CAAAA;AAErD,IAAA,IAAIM,MAAMN,KAAQ,CAAA,EAAA;;AAEhB,QAAA,OAAOO,IAAK,CAAA;AAAC,YAAA,OAAA;AAAS,YAAA;SAAY,EAAEF,kBAAAA,CAAAA;AACtC;IAEA,OAAOA,kBAAAA;AACT;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"single-type.d.ts","sourceRoot":"","sources":["../../../src/core-api/service/single-type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,iBAAkB,SAAQ,WAAY,YAAW,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU;IAC3F,OAAO,CAAC,WAAW,CAA0B;gBAEjC,WAAW,EAAE,MAAM,CAAC,gBAAgB;IAM1C,aAAa;IASb,IAAI,CAAC,MAAM,KAAK;IAMhB,cAAc,CAAC,MAAM,KAAK;IAY1B,MAAM,CAAC,MAAM,KAAK;;;CAQzB;AAED,QAAA,MAAM,uBAAuB,gBACd,OAAO,gBAAgB,KACnC,KAAK,OAAO,CAAC,OAAO,CAAC,UAEvB,CAAC;AAEF,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
1
+ {"version":3,"file":"single-type.d.ts","sourceRoot":"","sources":["../../../src/core-api/service/single-type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,iBAAkB,SAAQ,WAAY,YAAW,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU;IAC3F,OAAO,CAAC,WAAW,CAA0B;gBAEjC,WAAW,EAAE,MAAM,CAAC,gBAAgB;IAM1C,aAAa;IASb,IAAI,CAAC,MAAM,KAAK;IAMhB,cAAc,CAAC,MAAM,KAAK;IAe1B,MAAM,CAAC,MAAM,KAAK;;;CAazB;AAED,QAAA,MAAM,uBAAuB,gBACd,OAAO,gBAAgB,KACnC,KAAK,OAAO,CAAC,OAAO,CAAC,UAEvB,CAAC;AAEF,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
@@ -1,39 +1,50 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const coreService = require("./core-service.js");
1
+ 'use strict';
2
+
3
+ var coreService = require('./core-service.js');
4
+
4
5
  class SingleTypeService extends coreService.CoreService {
5
- contentType;
6
- constructor(contentType) {
7
- super();
8
- this.contentType = contentType;
9
- }
10
- async getDocumentId() {
11
- const { uid } = this.contentType;
12
- return strapi.db.query(uid).findOne().then((document) => document?.documentId);
13
- }
14
- async find(params = {}) {
15
- const { uid } = this.contentType;
16
- return strapi.documents(uid).findFirst(this.getFetchParams(params));
17
- }
18
- async createOrUpdate(params = {}) {
19
- const { uid } = this.contentType;
20
- const documentId = await this.getDocumentId();
21
- if (documentId) {
22
- return strapi.documents(uid).update(documentId, this.getFetchParams(params));
6
+ async getDocumentId() {
7
+ const { uid } = this.contentType;
8
+ return strapi.db.query(uid).findOne().then((document)=>document?.documentId);
9
+ }
10
+ async find(params = {}) {
11
+ const { uid } = this.contentType;
12
+ return strapi.documents(uid).findFirst(this.getFetchParams(params));
13
+ }
14
+ async createOrUpdate(params = {}) {
15
+ const { uid } = this.contentType;
16
+ const documentId = await this.getDocumentId();
17
+ if (documentId) {
18
+ return strapi.documents(uid).update({
19
+ ...this.getFetchParams(params),
20
+ documentId
21
+ });
22
+ }
23
+ return strapi.documents(uid).create(this.getFetchParams(params));
24
+ }
25
+ async delete(params = {}) {
26
+ const { uid } = this.contentType;
27
+ const documentId = await this.getDocumentId();
28
+ if (!documentId) return {
29
+ deletedEntries: 0
30
+ };
31
+ const { entries } = await strapi.documents(uid).delete({
32
+ ...this.getFetchParams(params),
33
+ documentId
34
+ });
35
+ return {
36
+ deletedEntries: entries.length
37
+ };
38
+ }
39
+ constructor(contentType){
40
+ super();
41
+ this.contentType = contentType;
23
42
  }
24
- return strapi.documents(uid).create(this.getFetchParams(params));
25
- }
26
- async delete(params = {}) {
27
- const { uid } = this.contentType;
28
- const documentId = await this.getDocumentId();
29
- if (!documentId)
30
- return { deletedEntries: 0 };
31
- return strapi.documents(uid).delete(documentId, this.getFetchParams(params));
32
- }
33
43
  }
34
- const createSingleTypeService = (contentType) => {
35
- return new SingleTypeService(contentType);
44
+ const createSingleTypeService = (contentType)=>{
45
+ return new SingleTypeService(contentType);
36
46
  };
47
+
37
48
  exports.SingleTypeService = SingleTypeService;
38
49
  exports.createSingleTypeService = createSingleTypeService;
39
50
  //# sourceMappingURL=single-type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"single-type.js","sources":["../../../src/core-api/service/single-type.ts"],"sourcesContent":["import type { Struct, Core } from '@strapi/types';\nimport { CoreService } from './core-service';\n\nexport class SingleTypeService extends CoreService implements Core.CoreAPI.Service.SingleType {\n private contentType: Struct.SingleTypeSchema;\n\n constructor(contentType: Struct.SingleTypeSchema) {\n super();\n\n this.contentType = contentType;\n }\n\n async getDocumentId() {\n const { uid } = this.contentType;\n\n return strapi.db\n .query(uid)\n .findOne()\n .then((document) => document?.documentId as string);\n }\n\n async find(params = {}) {\n const { uid } = this.contentType;\n\n return strapi.documents(uid).findFirst(this.getFetchParams(params));\n }\n\n async createOrUpdate(params = {}) {\n const { uid } = this.contentType;\n\n const documentId = await this.getDocumentId();\n\n if (documentId) {\n return strapi.documents(uid).update(documentId, this.getFetchParams(params));\n }\n\n return strapi.documents(uid).create(this.getFetchParams(params));\n }\n\n async delete(params = {}) {\n const { uid } = this.contentType;\n\n const documentId = await this.getDocumentId();\n if (!documentId) return { deletedEntries: 0 };\n\n return strapi.documents(uid).delete(documentId, this.getFetchParams(params));\n }\n}\n\nconst createSingleTypeService = (\n contentType: Struct.SingleTypeSchema\n): Core.CoreAPI.Service.SingleType => {\n return new SingleTypeService(contentType);\n};\n\nexport { createSingleTypeService };\n"],"names":["CoreService"],"mappings":";;;AAGO,MAAM,0BAA0BA,YAAAA,YAAuD;AAAA,EACpF;AAAA,EAER,YAAY,aAAsC;AAC1C;AAEN,SAAK,cAAc;AAAA,EACrB;AAAA,EAEA,MAAM,gBAAgB;AACd,UAAA,EAAE,IAAI,IAAI,KAAK;AAEd,WAAA,OAAO,GACX,MAAM,GAAG,EACT,UACA,KAAK,CAAC,aAAa,UAAU,UAAoB;AAAA,EACtD;AAAA,EAEA,MAAM,KAAK,SAAS,IAAI;AAChB,UAAA,EAAE,IAAI,IAAI,KAAK;AAEd,WAAA,OAAO,UAAU,GAAG,EAAE,UAAU,KAAK,eAAe,MAAM,CAAC;AAAA,EACpE;AAAA,EAEA,MAAM,eAAe,SAAS,IAAI;AAC1B,UAAA,EAAE,IAAI,IAAI,KAAK;AAEf,UAAA,aAAa,MAAM,KAAK;AAE9B,QAAI,YAAY;AACP,aAAA,OAAO,UAAU,GAAG,EAAE,OAAO,YAAY,KAAK,eAAe,MAAM,CAAC;AAAA,IAC7E;AAEO,WAAA,OAAO,UAAU,GAAG,EAAE,OAAO,KAAK,eAAe,MAAM,CAAC;AAAA,EACjE;AAAA,EAEA,MAAM,OAAO,SAAS,IAAI;AAClB,UAAA,EAAE,IAAI,IAAI,KAAK;AAEf,UAAA,aAAa,MAAM,KAAK;AAC9B,QAAI,CAAC;AAAmB,aAAA,EAAE,gBAAgB;AAEnC,WAAA,OAAO,UAAU,GAAG,EAAE,OAAO,YAAY,KAAK,eAAe,MAAM,CAAC;AAAA,EAC7E;AACF;AAEM,MAAA,0BAA0B,CAC9B,gBACoC;AAC7B,SAAA,IAAI,kBAAkB,WAAW;AAC1C;;;"}
1
+ {"version":3,"file":"single-type.js","sources":["../../../src/core-api/service/single-type.ts"],"sourcesContent":["import type { Struct, Core } from '@strapi/types';\nimport { CoreService } from './core-service';\n\nexport class SingleTypeService extends CoreService implements Core.CoreAPI.Service.SingleType {\n private contentType: Struct.SingleTypeSchema;\n\n constructor(contentType: Struct.SingleTypeSchema) {\n super();\n\n this.contentType = contentType;\n }\n\n async getDocumentId() {\n const { uid } = this.contentType;\n\n return strapi.db\n .query(uid)\n .findOne()\n .then((document) => document?.documentId as string);\n }\n\n async find(params = {}) {\n const { uid } = this.contentType;\n\n return strapi.documents(uid).findFirst(this.getFetchParams(params));\n }\n\n async createOrUpdate(params = {}) {\n const { uid } = this.contentType;\n\n const documentId = await this.getDocumentId();\n\n if (documentId) {\n return strapi.documents(uid).update({\n ...this.getFetchParams(params),\n documentId,\n });\n }\n\n return strapi.documents(uid).create(this.getFetchParams(params));\n }\n\n async delete(params = {}) {\n const { uid } = this.contentType;\n\n const documentId = await this.getDocumentId();\n if (!documentId) return { deletedEntries: 0 };\n\n const { entries } = await strapi.documents(uid).delete({\n ...this.getFetchParams(params),\n documentId,\n });\n\n return { deletedEntries: entries.length };\n }\n}\n\nconst createSingleTypeService = (\n contentType: Struct.SingleTypeSchema\n): Core.CoreAPI.Service.SingleType => {\n return new SingleTypeService(contentType);\n};\n\nexport { createSingleTypeService };\n"],"names":["SingleTypeService","CoreService","getDocumentId","uid","contentType","strapi","db","query","findOne","then","document","documentId","find","params","documents","findFirst","getFetchParams","createOrUpdate","update","create","delete","deletedEntries","entries","length","constructor","createSingleTypeService"],"mappings":";;;;AAGO,MAAMA,iBAA0BC,SAAAA,uBAAAA,CAAAA;AASrC,IAAA,MAAMC,aAAgB,GAAA;AACpB,QAAA,MAAM,EAAEC,GAAG,EAAE,GAAG,IAAI,CAACC,WAAW;AAEhC,QAAA,OAAOC,MAAOC,CAAAA,EAAE,CACbC,KAAK,CAACJ,GAAAA,CAAAA,CACNK,OAAO,EAAA,CACPC,IAAI,CAAC,CAACC,QAAAA,GAAaA,QAAUC,EAAAA,UAAAA,CAAAA;AAClC;AAEA,IAAA,MAAMC,IAAKC,CAAAA,MAAAA,GAAS,EAAE,EAAE;AACtB,QAAA,MAAM,EAAEV,GAAG,EAAE,GAAG,IAAI,CAACC,WAAW;QAEhC,OAAOC,MAAAA,CAAOS,SAAS,CAACX,GAAAA,CAAAA,CAAKY,SAAS,CAAC,IAAI,CAACC,cAAc,CAACH,MAAAA,CAAAA,CAAAA;AAC7D;AAEA,IAAA,MAAMI,cAAeJ,CAAAA,MAAAA,GAAS,EAAE,EAAE;AAChC,QAAA,MAAM,EAAEV,GAAG,EAAE,GAAG,IAAI,CAACC,WAAW;AAEhC,QAAA,MAAMO,UAAa,GAAA,MAAM,IAAI,CAACT,aAAa,EAAA;AAE3C,QAAA,IAAIS,UAAY,EAAA;AACd,YAAA,OAAON,MAAOS,CAAAA,SAAS,CAACX,GAAAA,CAAAA,CAAKe,MAAM,CAAC;AAClC,gBAAA,GAAG,IAAI,CAACF,cAAc,CAACH,MAAO,CAAA;AAC9BF,gBAAAA;AACF,aAAA,CAAA;AACF;QAEA,OAAON,MAAAA,CAAOS,SAAS,CAACX,GAAAA,CAAAA,CAAKgB,MAAM,CAAC,IAAI,CAACH,cAAc,CAACH,MAAAA,CAAAA,CAAAA;AAC1D;AAEA,IAAA,MAAMO,MAAOP,CAAAA,MAAAA,GAAS,EAAE,EAAE;AACxB,QAAA,MAAM,EAAEV,GAAG,EAAE,GAAG,IAAI,CAACC,WAAW;AAEhC,QAAA,MAAMO,UAAa,GAAA,MAAM,IAAI,CAACT,aAAa,EAAA;QAC3C,IAAI,CAACS,YAAY,OAAO;YAAEU,cAAgB,EAAA;AAAE,SAAA;QAE5C,MAAM,EAAEC,OAAO,EAAE,GAAG,MAAMjB,OAAOS,SAAS,CAACX,GAAKiB,CAAAA,CAAAA,MAAM,CAAC;AACrD,YAAA,GAAG,IAAI,CAACJ,cAAc,CAACH,MAAO,CAAA;AAC9BF,YAAAA;AACF,SAAA,CAAA;QAEA,OAAO;AAAEU,YAAAA,cAAAA,EAAgBC,QAAQC;AAAO,SAAA;AAC1C;AAhDAC,IAAAA,WAAAA,CAAYpB,WAAoC,CAAE;QAChD,KAAK,EAAA;QAEL,IAAI,CAACA,WAAW,GAAGA,WAAAA;AACrB;AA6CF;AAEA,MAAMqB,0BAA0B,CAC9BrB,WAAAA,GAAAA;AAEA,IAAA,OAAO,IAAIJ,iBAAkBI,CAAAA,WAAAA,CAAAA;AAC/B;;;;;"}