@strapi/core 0.0.0-experimental.80cf2c74a2003f3c0602abc81888dd9f36dc68a3 → 0.0.0-experimental.81dfdf02b1367004c7deed9e01afa9d3a15d0fa5

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.

Potentially problematic release.


This version of @strapi/core might be problematic. Click here for more details.

Files changed (527) 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 +189 -220
  5. package/dist/Strapi.js.map +1 -1
  6. package/dist/Strapi.mjs +158 -209
  7. package/dist/Strapi.mjs.map +1 -1
  8. package/dist/configuration/config-loader.d.ts.map +1 -1
  9. package/dist/configuration/config-loader.js +9 -5
  10. package/dist/configuration/config-loader.js.map +1 -1
  11. package/dist/configuration/config-loader.mjs +9 -5
  12. package/dist/configuration/config-loader.mjs.map +1 -1
  13. package/dist/configuration/get-dirs.d.ts +10 -0
  14. package/dist/configuration/get-dirs.d.ts.map +1 -0
  15. package/dist/{utils → configuration}/get-dirs.js +3 -2
  16. package/dist/configuration/get-dirs.js.map +1 -0
  17. package/dist/{utils → configuration}/get-dirs.mjs +3 -2
  18. package/dist/configuration/get-dirs.mjs.map +1 -0
  19. package/dist/configuration/index.d.ts +4 -7
  20. package/dist/configuration/index.d.ts.map +1 -1
  21. package/dist/configuration/index.js +8 -6
  22. package/dist/configuration/index.js.map +1 -1
  23. package/dist/configuration/index.mjs +5 -4
  24. package/dist/configuration/index.mjs.map +1 -1
  25. package/dist/core-api/controller/collection-type.d.ts.map +1 -1
  26. package/dist/core-api/controller/collection-type.js +6 -3
  27. package/dist/core-api/controller/collection-type.js.map +1 -1
  28. package/dist/core-api/controller/collection-type.mjs +3 -0
  29. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  30. package/dist/core-api/controller/index.js +7 -7
  31. package/dist/core-api/controller/index.js.map +1 -1
  32. package/dist/core-api/controller/index.mjs +6 -6
  33. package/dist/core-api/controller/index.mjs.map +1 -1
  34. package/dist/core-api/controller/single-type.d.ts.map +1 -1
  35. package/dist/core-api/controller/single-type.js +3 -2
  36. package/dist/core-api/controller/single-type.js.map +1 -1
  37. package/dist/core-api/controller/single-type.mjs +1 -0
  38. package/dist/core-api/controller/single-type.mjs.map +1 -1
  39. package/dist/core-api/controller/transform.js +8 -8
  40. package/dist/core-api/controller/transform.js.map +1 -1
  41. package/dist/core-api/routes/index.d.ts.map +1 -1
  42. package/dist/core-api/service/collection-type.d.ts +5 -11
  43. package/dist/core-api/service/collection-type.d.ts.map +1 -1
  44. package/dist/core-api/service/collection-type.js +18 -7
  45. package/dist/core-api/service/collection-type.js.map +1 -1
  46. package/dist/core-api/service/collection-type.mjs +19 -8
  47. package/dist/core-api/service/collection-type.mjs.map +1 -1
  48. package/dist/core-api/service/pagination.d.ts +4 -11
  49. package/dist/core-api/service/pagination.d.ts.map +1 -1
  50. package/dist/core-api/service/pagination.js +18 -44
  51. package/dist/core-api/service/pagination.js.map +1 -1
  52. package/dist/core-api/service/pagination.mjs +16 -42
  53. package/dist/core-api/service/pagination.mjs.map +1 -1
  54. package/dist/core-api/service/single-type.d.ts.map +1 -1
  55. package/dist/core-api/service/single-type.js +9 -2
  56. package/dist/core-api/service/single-type.js.map +1 -1
  57. package/dist/core-api/service/single-type.mjs +9 -2
  58. package/dist/core-api/service/single-type.mjs.map +1 -1
  59. package/dist/domain/content-type/index.js +4 -4
  60. package/dist/domain/content-type/index.js.map +1 -1
  61. package/dist/ee/index.d.ts +2 -0
  62. package/dist/ee/index.d.ts.map +1 -1
  63. package/dist/ee/index.js +3 -3
  64. package/dist/ee/index.js.map +1 -1
  65. package/dist/ee/index.mjs.map +1 -1
  66. package/dist/ee/license.d.ts.map +1 -1
  67. package/dist/ee/license.js +2 -1
  68. package/dist/ee/license.js.map +1 -1
  69. package/dist/ee/license.mjs +2 -1
  70. package/dist/ee/license.mjs.map +1 -1
  71. package/dist/factories.d.ts +2 -2
  72. package/dist/factories.d.ts.map +1 -1
  73. package/dist/factories.js +4 -4
  74. package/dist/factories.js.map +1 -1
  75. package/dist/factories.mjs.map +1 -1
  76. package/dist/index.d.ts +18 -2
  77. package/dist/index.d.ts.map +1 -1
  78. package/dist/index.js +25 -1
  79. package/dist/index.js.map +1 -1
  80. package/dist/index.mjs +27 -3
  81. package/dist/index.mjs.map +1 -1
  82. package/dist/loaders/admin.js +0 -1
  83. package/dist/loaders/admin.js.map +1 -1
  84. package/dist/loaders/admin.mjs +0 -1
  85. package/dist/loaders/admin.mjs.map +1 -1
  86. package/dist/loaders/apis.d.ts.map +1 -1
  87. package/dist/loaders/apis.js +12 -12
  88. package/dist/loaders/apis.js.map +1 -1
  89. package/dist/loaders/apis.mjs +10 -10
  90. package/dist/loaders/apis.mjs.map +1 -1
  91. package/dist/loaders/index.d.ts.map +1 -1
  92. package/dist/loaders/index.js +0 -2
  93. package/dist/loaders/index.js.map +1 -1
  94. package/dist/loaders/index.mjs +0 -2
  95. package/dist/loaders/index.mjs.map +1 -1
  96. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  97. package/dist/loaders/plugins/get-enabled-plugins.js +41 -15
  98. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  99. package/dist/loaders/plugins/get-enabled-plugins.mjs +11 -7
  100. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  101. package/dist/loaders/plugins/get-user-plugins-config.js +2 -2
  102. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  103. package/dist/loaders/plugins/index.js +6 -6
  104. package/dist/loaders/plugins/index.js.map +1 -1
  105. package/dist/middlewares/body.d.ts +2 -2
  106. package/dist/middlewares/body.d.ts.map +1 -1
  107. package/dist/middlewares/body.js +6 -6
  108. package/dist/middlewares/body.js.map +1 -1
  109. package/dist/middlewares/body.mjs +4 -4
  110. package/dist/middlewares/body.mjs.map +1 -1
  111. package/dist/middlewares/cors.d.ts.map +1 -1
  112. package/dist/middlewares/cors.js +9 -7
  113. package/dist/middlewares/cors.js.map +1 -1
  114. package/dist/middlewares/cors.mjs +9 -7
  115. package/dist/middlewares/cors.mjs.map +1 -1
  116. package/dist/middlewares/public.js +3 -3
  117. package/dist/middlewares/public.js.map +1 -1
  118. package/dist/middlewares/public.mjs +1 -1
  119. package/dist/middlewares/public.mjs.map +1 -1
  120. package/dist/middlewares/query.d.ts.map +1 -1
  121. package/dist/middlewares/query.js.map +1 -1
  122. package/dist/middlewares/query.mjs.map +1 -1
  123. package/dist/middlewares/responses.js +2 -2
  124. package/dist/middlewares/responses.js.map +1 -1
  125. package/dist/middlewares/security.d.ts.map +1 -1
  126. package/dist/middlewares/security.js +12 -5
  127. package/dist/middlewares/security.js.map +1 -1
  128. package/dist/middlewares/security.mjs +11 -4
  129. package/dist/middlewares/security.mjs.map +1 -1
  130. package/dist/middlewares/session.js +2 -2
  131. package/dist/middlewares/session.js.map +1 -1
  132. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +30 -0
  133. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -0
  134. package/dist/migrations/database/5.0.0-discard-drafts.js +50 -0
  135. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -0
  136. package/dist/migrations/database/5.0.0-discard-drafts.mjs +50 -0
  137. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -0
  138. package/dist/migrations/draft-publish.d.ts.map +1 -1
  139. package/dist/migrations/draft-publish.js +14 -31
  140. package/dist/migrations/draft-publish.js.map +1 -1
  141. package/dist/migrations/draft-publish.mjs +15 -32
  142. package/dist/migrations/draft-publish.mjs.map +1 -1
  143. package/dist/providers/admin.d.ts +3 -0
  144. package/dist/providers/admin.d.ts.map +1 -0
  145. package/dist/providers/admin.js +20 -0
  146. package/dist/providers/admin.js.map +1 -0
  147. package/dist/providers/admin.mjs +21 -0
  148. package/dist/providers/admin.mjs.map +1 -0
  149. package/dist/providers/coreStore.d.ts +3 -0
  150. package/dist/providers/coreStore.d.ts.map +1 -0
  151. package/dist/providers/coreStore.js +11 -0
  152. package/dist/providers/coreStore.js.map +1 -0
  153. package/dist/providers/coreStore.mjs +12 -0
  154. package/dist/providers/coreStore.mjs.map +1 -0
  155. package/dist/providers/cron.d.ts +3 -0
  156. package/dist/providers/cron.d.ts.map +1 -0
  157. package/dist/providers/cron.js +20 -0
  158. package/dist/providers/cron.js.map +1 -0
  159. package/dist/providers/cron.mjs +21 -0
  160. package/dist/providers/cron.mjs.map +1 -0
  161. package/dist/providers/index.d.ts +3 -0
  162. package/dist/providers/index.d.ts.map +1 -0
  163. package/dist/providers/index.js +11 -0
  164. package/dist/providers/index.js.map +1 -0
  165. package/dist/providers/index.mjs +11 -0
  166. package/dist/providers/index.mjs.map +1 -0
  167. package/dist/providers/provider.d.ts +9 -0
  168. package/dist/providers/provider.d.ts.map +1 -0
  169. package/dist/providers/provider.js +5 -0
  170. package/dist/providers/provider.js.map +1 -0
  171. package/dist/providers/provider.mjs +5 -0
  172. package/dist/providers/provider.mjs.map +1 -0
  173. package/dist/providers/registries.d.ts +3 -0
  174. package/dist/providers/registries.d.ts.map +1 -0
  175. package/dist/providers/registries.js +35 -0
  176. package/dist/providers/registries.js.map +1 -0
  177. package/dist/providers/registries.mjs +36 -0
  178. package/dist/providers/registries.mjs.map +1 -0
  179. package/dist/providers/telemetry.d.ts +3 -0
  180. package/dist/providers/telemetry.d.ts.map +1 -0
  181. package/dist/providers/telemetry.js +19 -0
  182. package/dist/providers/telemetry.js.map +1 -0
  183. package/dist/providers/telemetry.mjs +20 -0
  184. package/dist/providers/telemetry.mjs.map +1 -0
  185. package/dist/providers/webhooks.d.ts +3 -0
  186. package/dist/providers/webhooks.d.ts.map +1 -0
  187. package/dist/providers/webhooks.js +30 -0
  188. package/dist/providers/webhooks.js.map +1 -0
  189. package/dist/providers/webhooks.mjs +31 -0
  190. package/dist/providers/webhooks.mjs.map +1 -0
  191. package/dist/registries/apis.js +2 -2
  192. package/dist/registries/apis.js.map +1 -1
  193. package/dist/registries/components.js +2 -2
  194. package/dist/registries/components.js.map +1 -1
  195. package/dist/registries/content-types.js +3 -3
  196. package/dist/registries/content-types.js.map +1 -1
  197. package/dist/registries/controllers.js +3 -3
  198. package/dist/registries/controllers.js.map +1 -1
  199. package/dist/registries/custom-fields.js +4 -4
  200. package/dist/registries/custom-fields.js.map +1 -1
  201. package/dist/registries/hooks.js +2 -2
  202. package/dist/registries/hooks.js.map +1 -1
  203. package/dist/registries/index.d.ts +0 -1
  204. package/dist/registries/index.d.ts.map +1 -1
  205. package/dist/registries/middlewares.js +3 -3
  206. package/dist/registries/middlewares.js.map +1 -1
  207. package/dist/registries/modules.js +3 -3
  208. package/dist/registries/modules.js.map +1 -1
  209. package/dist/registries/plugins.js +2 -2
  210. package/dist/registries/plugins.js.map +1 -1
  211. package/dist/registries/policies.d.ts +21 -9
  212. package/dist/registries/policies.d.ts.map +1 -1
  213. package/dist/registries/policies.js +66 -20
  214. package/dist/registries/policies.js.map +1 -1
  215. package/dist/registries/policies.mjs +65 -19
  216. package/dist/registries/policies.mjs.map +1 -1
  217. package/dist/registries/services.js +3 -3
  218. package/dist/registries/services.js.map +1 -1
  219. package/dist/services/auth/index.js +3 -3
  220. package/dist/services/auth/index.js.map +1 -1
  221. package/dist/services/config.d.ts +3 -0
  222. package/dist/services/config.d.ts.map +1 -0
  223. package/dist/{registries → services}/config.js +11 -7
  224. package/dist/services/config.js.map +1 -0
  225. package/dist/{registries → services}/config.mjs +10 -7
  226. package/dist/services/config.mjs.map +1 -0
  227. package/dist/services/content-api/index.d.ts +24 -12
  228. package/dist/services/content-api/index.d.ts.map +1 -1
  229. package/dist/services/content-api/index.js +28 -2
  230. package/dist/services/content-api/index.js.map +1 -1
  231. package/dist/services/content-api/index.mjs +28 -2
  232. package/dist/services/content-api/index.mjs.map +1 -1
  233. package/dist/services/content-api/permissions/index.d.ts +6 -12
  234. package/dist/services/content-api/permissions/index.d.ts.map +1 -1
  235. package/dist/services/content-api/permissions/index.js +1 -1
  236. package/dist/services/content-api/permissions/index.js.map +1 -1
  237. package/dist/services/content-api/permissions/index.mjs +1 -1
  238. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  239. package/dist/services/content-api/permissions/providers/action.d.ts +3 -6
  240. package/dist/services/content-api/permissions/providers/action.d.ts.map +1 -1
  241. package/dist/services/content-api/permissions/providers/condition.d.ts +3 -6
  242. package/dist/services/content-api/permissions/providers/condition.d.ts.map +1 -1
  243. package/dist/services/core-store.d.ts.map +1 -1
  244. package/dist/services/core-store.js +3 -3
  245. package/dist/services/core-store.js.map +1 -1
  246. package/dist/services/cron.js +3 -3
  247. package/dist/services/cron.js.map +1 -1
  248. package/dist/services/document-service/attributes/index.d.ts +6 -0
  249. package/dist/services/document-service/attributes/index.d.ts.map +1 -0
  250. package/dist/services/{entity-service → document-service}/attributes/index.js +5 -5
  251. package/dist/services/document-service/attributes/index.js.map +1 -0
  252. package/dist/services/{entity-service → document-service}/attributes/index.mjs +5 -5
  253. package/dist/services/document-service/attributes/index.mjs.map +1 -0
  254. package/dist/services/document-service/attributes/transforms.d.ts.map +1 -0
  255. package/dist/services/{entity-service → document-service}/attributes/transforms.js +3 -3
  256. package/dist/services/document-service/attributes/transforms.js.map +1 -0
  257. package/dist/services/document-service/attributes/transforms.mjs.map +1 -0
  258. package/dist/services/document-service/common.d.ts +1 -1
  259. package/dist/services/document-service/common.d.ts.map +1 -1
  260. package/dist/services/document-service/common.js.map +1 -1
  261. package/dist/services/document-service/common.mjs.map +1 -1
  262. package/dist/services/document-service/components.d.ts +25 -1
  263. package/dist/services/document-service/components.d.ts.map +1 -1
  264. package/dist/services/{entity-service → document-service}/components.js +46 -56
  265. package/dist/services/document-service/components.js.map +1 -0
  266. package/dist/services/{entity-service → document-service}/components.mjs +36 -46
  267. package/dist/services/document-service/components.mjs.map +1 -0
  268. package/dist/services/document-service/draft-and-publish.js +16 -16
  269. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  270. package/dist/services/document-service/entries.d.ts +10 -0
  271. package/dist/services/document-service/entries.d.ts.map +1 -0
  272. package/dist/services/document-service/entries.js +96 -0
  273. package/dist/services/document-service/entries.js.map +1 -0
  274. package/dist/services/document-service/entries.mjs +96 -0
  275. package/dist/services/document-service/entries.mjs.map +1 -0
  276. package/dist/services/document-service/events.d.ts +25 -0
  277. package/dist/services/document-service/events.d.ts.map +1 -0
  278. package/dist/services/document-service/events.js +47 -0
  279. package/dist/services/document-service/events.js.map +1 -0
  280. package/dist/services/document-service/events.mjs +47 -0
  281. package/dist/services/document-service/events.mjs.map +1 -0
  282. package/dist/services/document-service/index.d.ts +0 -2
  283. package/dist/services/document-service/index.d.ts.map +1 -1
  284. package/dist/services/document-service/index.js +13 -2
  285. package/dist/services/document-service/index.js.map +1 -1
  286. package/dist/services/document-service/index.mjs +13 -2
  287. package/dist/services/document-service/index.mjs.map +1 -1
  288. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  289. package/dist/services/document-service/internationalization.js +21 -12
  290. package/dist/services/document-service/internationalization.js.map +1 -1
  291. package/dist/services/document-service/internationalization.mjs +14 -5
  292. package/dist/services/document-service/internationalization.mjs.map +1 -1
  293. package/dist/services/document-service/middlewares/middleware-manager.d.ts +5 -2
  294. package/dist/services/document-service/middlewares/middleware-manager.d.ts.map +1 -1
  295. package/dist/services/document-service/middlewares/middleware-manager.js +8 -5
  296. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  297. package/dist/services/document-service/middlewares/middleware-manager.mjs +8 -5
  298. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  299. package/dist/services/document-service/params.d.ts +3 -1
  300. package/dist/services/document-service/params.d.ts.map +1 -1
  301. package/dist/services/{entity-service → document-service}/params.js +2 -2
  302. package/dist/services/document-service/params.js.map +1 -0
  303. package/dist/services/document-service/params.mjs.map +1 -0
  304. package/dist/services/document-service/repository.d.ts.map +1 -1
  305. package/dist/services/document-service/repository.js +141 -160
  306. package/dist/services/document-service/repository.js.map +1 -1
  307. package/dist/services/document-service/repository.mjs +118 -137
  308. package/dist/services/document-service/repository.mjs.map +1 -1
  309. package/dist/services/document-service/transform/data.d.ts.map +1 -1
  310. package/dist/services/document-service/transform/data.js +4 -2
  311. package/dist/services/document-service/transform/data.js.map +1 -1
  312. package/dist/services/document-service/transform/data.mjs +4 -2
  313. package/dist/services/document-service/transform/data.mjs.map +1 -1
  314. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  315. package/dist/services/document-service/transform/id-transform.js +2 -2
  316. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  317. package/dist/services/document-service/transform/populate.js +1 -1
  318. package/dist/services/document-service/transform/populate.js.map +1 -1
  319. package/dist/services/document-service/transform/populate.mjs +1 -1
  320. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  321. package/dist/services/document-service/transform/query.d.ts +5 -0
  322. package/dist/services/document-service/transform/query.d.ts.map +1 -0
  323. package/dist/services/document-service/transform/query.js +9 -0
  324. package/dist/services/document-service/transform/query.js.map +1 -0
  325. package/dist/services/document-service/transform/query.mjs +9 -0
  326. package/dist/services/document-service/transform/query.mjs.map +1 -0
  327. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +8 -7
  328. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  329. package/dist/services/document-service/transform/relations/extract/data-ids.js +45 -78
  330. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  331. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +44 -77
  332. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  333. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts +7 -3
  334. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  335. package/dist/services/document-service/transform/relations/transform/data-ids.js +61 -126
  336. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  337. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +61 -126
  338. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  339. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts +9 -0
  340. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts.map +1 -0
  341. package/dist/services/document-service/transform/relations/transform/default-locale.js +32 -0
  342. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -0
  343. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +32 -0
  344. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -0
  345. package/dist/services/document-service/transform/relations/utils/dp.js +2 -2
  346. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  347. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +2 -2
  348. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  349. package/dist/services/document-service/transform/relations/utils/i18n.js +3 -9
  350. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  351. package/dist/services/document-service/transform/relations/utils/i18n.mjs +3 -9
  352. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  353. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts +6 -0
  354. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -0
  355. package/dist/services/document-service/transform/relations/utils/map-relation.js +91 -0
  356. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -0
  357. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +91 -0
  358. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -0
  359. package/dist/services/document-service/transform/relations/utils/types.d.ts +6 -0
  360. package/dist/services/document-service/transform/relations/utils/types.d.ts.map +1 -1
  361. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  362. package/dist/services/document-service/utils/populate.js +4 -0
  363. package/dist/services/document-service/utils/populate.js.map +1 -1
  364. package/dist/services/document-service/utils/populate.mjs +4 -0
  365. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  366. package/dist/services/entity-service/index.d.ts.map +1 -1
  367. package/dist/services/entity-service/index.js +22 -16
  368. package/dist/services/entity-service/index.js.map +1 -1
  369. package/dist/services/entity-service/index.mjs +23 -17
  370. package/dist/services/entity-service/index.mjs.map +1 -1
  371. package/dist/services/entity-validator/blocks-validator.d.ts +1 -2
  372. package/dist/services/entity-validator/blocks-validator.d.ts.map +1 -1
  373. package/dist/services/entity-validator/blocks-validator.js +4 -3
  374. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  375. package/dist/services/entity-validator/blocks-validator.mjs +3 -3
  376. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  377. package/dist/services/entity-validator/index.d.ts +15 -1
  378. package/dist/services/entity-validator/index.d.ts.map +1 -1
  379. package/dist/services/entity-validator/index.js +183 -125
  380. package/dist/services/entity-validator/index.js.map +1 -1
  381. package/dist/services/entity-validator/index.mjs +178 -120
  382. package/dist/services/entity-validator/index.mjs.map +1 -1
  383. package/dist/services/entity-validator/validators.d.ts +36 -25
  384. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  385. package/dist/services/entity-validator/validators.js +148 -33
  386. package/dist/services/entity-validator/validators.js.map +1 -1
  387. package/dist/services/entity-validator/validators.mjs +140 -25
  388. package/dist/services/entity-validator/validators.mjs.map +1 -1
  389. package/dist/services/event-hub.d.ts +1 -0
  390. package/dist/services/event-hub.d.ts.map +1 -1
  391. package/dist/services/event-hub.js +9 -4
  392. package/dist/services/event-hub.js.map +1 -1
  393. package/dist/services/event-hub.mjs +9 -4
  394. package/dist/services/event-hub.mjs.map +1 -1
  395. package/dist/services/metrics/middleware.d.ts.map +1 -1
  396. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  397. package/dist/services/metrics/rate-limiter.js.map +1 -1
  398. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  399. package/dist/services/query-params.d.ts +7 -0
  400. package/dist/services/query-params.d.ts.map +1 -0
  401. package/dist/services/query-params.js +12 -0
  402. package/dist/services/query-params.js.map +1 -0
  403. package/dist/services/query-params.mjs +13 -0
  404. package/dist/services/query-params.mjs.map +1 -0
  405. package/dist/services/reloader.d.ts +7 -0
  406. package/dist/services/reloader.d.ts.map +1 -0
  407. package/dist/services/reloader.js +36 -0
  408. package/dist/services/reloader.js.map +1 -0
  409. package/dist/services/reloader.mjs +36 -0
  410. package/dist/services/reloader.mjs.map +1 -0
  411. package/dist/services/server/compose-endpoint.d.ts.map +1 -1
  412. package/dist/services/server/compose-endpoint.js +8 -9
  413. package/dist/services/server/compose-endpoint.js.map +1 -1
  414. package/dist/services/server/compose-endpoint.mjs +2 -3
  415. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  416. package/dist/services/server/index.js +1 -1
  417. package/dist/services/server/index.js.map +1 -1
  418. package/dist/services/server/index.mjs +1 -1
  419. package/dist/services/server/index.mjs.map +1 -1
  420. package/dist/services/server/koa.d.ts.map +1 -1
  421. package/dist/services/server/koa.js +4 -4
  422. package/dist/services/server/koa.js.map +1 -1
  423. package/dist/services/server/koa.mjs +1 -1
  424. package/dist/services/server/koa.mjs.map +1 -1
  425. package/dist/services/server/middleware.js +3 -3
  426. package/dist/services/server/middleware.js.map +1 -1
  427. package/dist/services/server/policy.d.ts +2 -2
  428. package/dist/services/server/policy.d.ts.map +1 -1
  429. package/dist/services/server/policy.js +4 -4
  430. package/dist/services/server/policy.js.map +1 -1
  431. package/dist/services/server/policy.mjs +4 -4
  432. package/dist/services/server/policy.mjs.map +1 -1
  433. package/dist/services/server/register-routes.js +3 -3
  434. package/dist/services/server/register-routes.js.map +1 -1
  435. package/dist/services/server/register-routes.mjs +3 -3
  436. package/dist/services/server/register-routes.mjs.map +1 -1
  437. package/dist/services/server/routing.d.ts +1 -1
  438. package/dist/services/server/routing.js +2 -2
  439. package/dist/services/server/routing.js.map +1 -1
  440. package/dist/services/utils/dynamic-zones.js +5 -5
  441. package/dist/services/utils/dynamic-zones.js.map +1 -1
  442. package/dist/services/webhook-runner.d.ts +2 -1
  443. package/dist/services/webhook-runner.d.ts.map +1 -1
  444. package/dist/services/webhook-runner.js.map +1 -1
  445. package/dist/services/webhook-runner.mjs.map +1 -1
  446. package/dist/services/webhook-store.d.ts +2 -8
  447. package/dist/services/webhook-store.d.ts.map +1 -1
  448. package/dist/services/webhook-store.js +14 -8
  449. package/dist/services/webhook-store.js.map +1 -1
  450. package/dist/services/webhook-store.mjs +14 -8
  451. package/dist/services/webhook-store.mjs.map +1 -1
  452. package/dist/utils/cron.js +3 -3
  453. package/dist/utils/cron.js.map +1 -1
  454. package/dist/utils/fetch.d.ts.map +1 -1
  455. package/dist/utils/fetch.js +4 -3
  456. package/dist/utils/fetch.js.map +1 -1
  457. package/dist/utils/fetch.mjs +4 -3
  458. package/dist/utils/fetch.mjs.map +1 -1
  459. package/dist/utils/filepath-to-prop-path.d.ts +1 -1
  460. package/dist/utils/filepath-to-prop-path.d.ts.map +1 -1
  461. package/dist/utils/filepath-to-prop-path.js +27 -6
  462. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  463. package/dist/utils/filepath-to-prop-path.mjs +25 -5
  464. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  465. package/dist/utils/index.d.ts +2 -1
  466. package/dist/utils/index.d.ts.map +1 -1
  467. package/dist/utils/is-initialized.js +3 -3
  468. package/dist/utils/is-initialized.js.map +1 -1
  469. package/dist/utils/load-files.d.ts.map +1 -1
  470. package/dist/utils/resolve-working-dirs.d.ts +19 -0
  471. package/dist/utils/resolve-working-dirs.d.ts.map +1 -0
  472. package/dist/utils/resolve-working-dirs.js +13 -0
  473. package/dist/utils/resolve-working-dirs.js.map +1 -0
  474. package/dist/utils/resolve-working-dirs.mjs +11 -0
  475. package/dist/utils/resolve-working-dirs.mjs.map +1 -0
  476. package/dist/utils/startup-logger.d.ts.map +1 -1
  477. package/dist/utils/startup-logger.js +4 -4
  478. package/dist/utils/startup-logger.js.map +1 -1
  479. package/dist/utils/startup-logger.mjs +3 -3
  480. package/dist/utils/startup-logger.mjs.map +1 -1
  481. package/dist/utils/transform-content-types-to-models.d.ts +17 -17
  482. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  483. package/dist/utils/transform-content-types-to-models.js +94 -89
  484. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  485. package/dist/utils/transform-content-types-to-models.mjs +93 -88
  486. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  487. package/dist/utils/update-notifier/index.d.ts +1 -6
  488. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  489. package/dist/utils/update-notifier/index.js +11 -14
  490. package/dist/utils/update-notifier/index.js.map +1 -1
  491. package/dist/utils/update-notifier/index.mjs +11 -14
  492. package/dist/utils/update-notifier/index.mjs.map +1 -1
  493. package/package.json +31 -27
  494. package/dist/registries/config.d.ts +0 -4
  495. package/dist/registries/config.d.ts.map +0 -1
  496. package/dist/registries/config.js.map +0 -1
  497. package/dist/registries/config.mjs.map +0 -1
  498. package/dist/services/document-service/document-engine.d.ts +0 -2
  499. package/dist/services/document-service/document-engine.d.ts.map +0 -1
  500. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts +0 -2
  501. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts.map +0 -1
  502. package/dist/services/document-service/transform/relations/utils/data.js +0 -12
  503. package/dist/services/document-service/transform/relations/utils/data.js.map +0 -1
  504. package/dist/services/document-service/transform/relations/utils/data.mjs +0 -12
  505. package/dist/services/document-service/transform/relations/utils/data.mjs.map +0 -1
  506. package/dist/services/entity-service/attributes/index.d.ts +0 -6
  507. package/dist/services/entity-service/attributes/index.d.ts.map +0 -1
  508. package/dist/services/entity-service/attributes/index.js.map +0 -1
  509. package/dist/services/entity-service/attributes/index.mjs.map +0 -1
  510. package/dist/services/entity-service/attributes/transforms.d.ts.map +0 -1
  511. package/dist/services/entity-service/attributes/transforms.js.map +0 -1
  512. package/dist/services/entity-service/attributes/transforms.mjs.map +0 -1
  513. package/dist/services/entity-service/components.d.ts +0 -95
  514. package/dist/services/entity-service/components.d.ts.map +0 -1
  515. package/dist/services/entity-service/components.js.map +0 -1
  516. package/dist/services/entity-service/components.mjs.map +0 -1
  517. package/dist/services/entity-service/params.d.ts +0 -8
  518. package/dist/services/entity-service/params.d.ts.map +0 -1
  519. package/dist/services/entity-service/params.js.map +0 -1
  520. package/dist/services/entity-service/params.mjs.map +0 -1
  521. package/dist/utils/get-dirs.d.ts +0 -9
  522. package/dist/utils/get-dirs.d.ts.map +0 -1
  523. package/dist/utils/get-dirs.js.map +0 -1
  524. package/dist/utils/get-dirs.mjs.map +0 -1
  525. /package/dist/services/{entity-service → document-service}/attributes/transforms.d.ts +0 -0
  526. /package/dist/services/{entity-service → document-service}/attributes/transforms.mjs +0 -0
  527. /package/dist/services/{entity-service → document-service}/params.mjs +0 -0
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const _ = require("lodash/fp");
3
+ const strapiUtils = require("@strapi/utils");
4
+ const fp = require("lodash/fp");
4
5
  const getDefaultLocale = async () => {
5
6
  return strapi.plugin("i18n").service("locales").getDefaultLocale();
6
7
  };
@@ -9,18 +10,20 @@ const defaultLocale = async (contentType, params) => {
9
10
  return params;
10
11
  }
11
12
  if (!params.locale) {
12
- return _.assoc("locale", await getDefaultLocale(), params);
13
+ return fp.assoc("locale", await getDefaultLocale(), params);
13
14
  }
14
15
  return params;
15
16
  };
16
17
  const localeToLookup = (contentType, params) => {
17
- if (!strapi.plugin("i18n").service("content-types").isLocalizedContentType(contentType)) {
18
+ if (!params.locale || !strapi.plugin("i18n").service("content-types").isLocalizedContentType(contentType)) {
18
19
  return params;
19
20
  }
20
- if (params.locale) {
21
- return _.assoc(["lookup", "locale"], params.locale, params);
21
+ if (typeof params.locale !== "string") {
22
+ throw new strapiUtils.errors.ValidationError(
23
+ `Invalid locale param ${String(params.locale)} provided. Document locales must be strings.`
24
+ );
22
25
  }
23
- return params;
26
+ return fp.assoc(["lookup", "locale"], params.locale, params);
24
27
  };
25
28
  const multiLocaleToLookup = (contentType, params) => {
26
29
  if (!strapi.plugin("i18n").service("content-types").isLocalizedContentType(contentType)) {
@@ -30,7 +33,7 @@ const multiLocaleToLookup = (contentType, params) => {
30
33
  if (params.locale === "*") {
31
34
  return params;
32
35
  }
33
- return _.assoc(["lookup", "locale"], params.locale, params);
36
+ return fp.assoc(["lookup", "locale"], params.locale, params);
34
37
  }
35
38
  return params;
36
39
  };
@@ -39,14 +42,20 @@ const localeToData = (contentType, params) => {
39
42
  return params;
40
43
  }
41
44
  if (params.locale) {
42
- return _.assoc(["data", "locale"], params.locale, params);
45
+ const isValidLocale = typeof params.locale === "string" && params.locale !== "*";
46
+ if (isValidLocale) {
47
+ return fp.assoc(["data", "locale"], params.locale, params);
48
+ }
49
+ throw new strapiUtils.errors.ValidationError(
50
+ `Invalid locale param ${params.locale} provided. Document locales must be strings.`
51
+ );
43
52
  }
44
53
  return params;
45
54
  };
46
- const defaultLocaleCurry = _.curry(defaultLocale);
47
- const localeToLookupCurry = _.curry(localeToLookup);
48
- const multiLocaleToLookupCurry = _.curry(multiLocaleToLookup);
49
- const localeToDataCurry = _.curry(localeToData);
55
+ const defaultLocaleCurry = fp.curry(defaultLocale);
56
+ const localeToLookupCurry = fp.curry(localeToLookup);
57
+ const multiLocaleToLookupCurry = fp.curry(multiLocaleToLookup);
58
+ const localeToDataCurry = fp.curry(localeToData);
50
59
  exports.defaultLocale = defaultLocaleCurry;
51
60
  exports.localeToData = localeToDataCurry;
52
61
  exports.localeToLookup = localeToLookupCurry;
@@ -1 +1 @@
1
- {"version":3,"file":"internationalization.js","sources":["../../../src/services/document-service/internationalization.ts"],"sourcesContent":["import type { Struct, Modules } from '@strapi/types';\nimport { curry, assoc } from 'lodash/fp';\n\ntype Transform = (\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema,\n params: Modules.Documents.Params.All\n) => Modules.Documents.Params.All;\n\ntype AsyncTransform = (\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema,\n params: Modules.Documents.Params.All\n) => Promise<Modules.Documents.Params.All>;\n\nconst getDefaultLocale = async (): Promise<string> => {\n return strapi.plugin('i18n').service('locales').getDefaultLocale();\n};\n\nconst defaultLocale: AsyncTransform = async (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (!params.locale) {\n // TODO: Load default locale from db in i18n\n return assoc('locale', await getDefaultLocale(), params);\n }\n\n return params;\n};\n\n/**\n * Add locale lookup query to the params\n */\nconst localeToLookup: Transform = (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (params.locale) {\n return assoc(['lookup', 'locale'], params.locale, params);\n }\n\n return params;\n};\n\n/**\n * Add locale lookup query to the params\n */\nconst multiLocaleToLookup: Transform = (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (params.locale) {\n if (params.locale === '*') {\n return params;\n }\n\n return assoc(['lookup', 'locale'], params.locale, params);\n }\n\n return params;\n};\n\n/**\n * Translate locale status parameter into the data that will be saved\n */\nconst localeToData: Transform = (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (params.locale) {\n return assoc(['data', 'locale'], params.locale, params);\n }\n\n return params;\n};\n\nconst defaultLocaleCurry = curry(defaultLocale);\nconst localeToLookupCurry = curry(localeToLookup);\nconst multiLocaleToLookupCurry = curry(multiLocaleToLookup);\nconst localeToDataCurry = curry(localeToData);\n\nexport {\n defaultLocaleCurry as defaultLocale,\n localeToLookupCurry as localeToLookup,\n localeToDataCurry as localeToData,\n multiLocaleToLookupCurry as multiLocaleToLookup,\n};\n"],"names":["assoc","curry"],"mappings":";;;AAaA,MAAM,mBAAmB,YAA6B;AACpD,SAAO,OAAO,OAAO,MAAM,EAAE,QAAQ,SAAS,EAAE;AAClD;AAEA,MAAM,gBAAgC,OAAO,aAAa,WAAW;AAC/D,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEI,MAAA,CAAC,OAAO,QAAQ;AAElB,WAAOA,EAAM,MAAA,UAAU,MAAM,oBAAoB,MAAM;AAAA,EACzD;AAEO,SAAA;AACT;AAKA,MAAM,iBAA4B,CAAC,aAAa,WAAW;AACrD,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEA,MAAI,OAAO,QAAQ;AACjB,WAAOA,EAAAA,MAAM,CAAC,UAAU,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAAA,EAC1D;AAEO,SAAA;AACT;AAKA,MAAM,sBAAiC,CAAC,aAAa,WAAW;AAC1D,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEA,MAAI,OAAO,QAAQ;AACb,QAAA,OAAO,WAAW,KAAK;AAClB,aAAA;AAAA,IACT;AAEA,WAAOA,EAAAA,MAAM,CAAC,UAAU,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAAA,EAC1D;AAEO,SAAA;AACT;AAKA,MAAM,eAA0B,CAAC,aAAa,WAAW;AACnD,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEA,MAAI,OAAO,QAAQ;AACjB,WAAOA,EAAAA,MAAM,CAAC,QAAQ,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAAA,EACxD;AAEO,SAAA;AACT;AAEM,MAAA,qBAAqBC,QAAM,aAAa;AACxC,MAAA,sBAAsBA,QAAM,cAAc;AAC1C,MAAA,2BAA2BA,QAAM,mBAAmB;AACpD,MAAA,oBAAoBA,QAAM,YAAY;;;;;"}
1
+ {"version":3,"file":"internationalization.js","sources":["../../../src/services/document-service/internationalization.ts"],"sourcesContent":["import type { Struct, Modules } from '@strapi/types';\nimport { errors } from '@strapi/utils';\nimport { curry, assoc } from 'lodash/fp';\n\ntype Transform = (\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema,\n params: Modules.Documents.Params.All\n) => Modules.Documents.Params.All;\n\ntype AsyncTransform = (\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema,\n params: Modules.Documents.Params.All\n) => Promise<Modules.Documents.Params.All>;\n\nconst getDefaultLocale = async (): Promise<string> => {\n return strapi.plugin('i18n').service('locales').getDefaultLocale();\n};\n\nconst defaultLocale: AsyncTransform = async (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (!params.locale) {\n return assoc('locale', await getDefaultLocale(), params);\n }\n\n return params;\n};\n\n/**\n * Add locale lookup query to the params\n */\nconst localeToLookup: Transform = (contentType, params) => {\n if (\n !params.locale ||\n !strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)\n ) {\n return params;\n }\n\n if (typeof params.locale !== 'string') {\n // localeToLookup accepts locales of '*'. This is because the document\n // service functions that use this transform work with the '*' locale\n // to return all locales.\n throw new errors.ValidationError(\n `Invalid locale param ${String(params.locale)} provided. Document locales must be strings.`\n );\n }\n\n return assoc(['lookup', 'locale'], params.locale, params);\n};\n\n/**\n * Add locale lookup query to the params\n */\nconst multiLocaleToLookup: Transform = (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (params.locale) {\n if (params.locale === '*') {\n return params;\n }\n\n return assoc(['lookup', 'locale'], params.locale, params);\n }\n\n return params;\n};\n\n/**\n * Translate locale status parameter into the data that will be saved\n */\nconst localeToData: Transform = (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (params.locale) {\n const isValidLocale = typeof params.locale === 'string' && params.locale !== '*';\n if (isValidLocale) {\n return assoc(['data', 'locale'], params.locale, params);\n }\n\n throw new errors.ValidationError(\n `Invalid locale param ${params.locale} provided. Document locales must be strings.`\n );\n }\n\n return params;\n};\n\nconst defaultLocaleCurry = curry(defaultLocale);\nconst localeToLookupCurry = curry(localeToLookup);\nconst multiLocaleToLookupCurry = curry(multiLocaleToLookup);\nconst localeToDataCurry = curry(localeToData);\n\nexport {\n defaultLocaleCurry as defaultLocale,\n localeToLookupCurry as localeToLookup,\n localeToDataCurry as localeToData,\n multiLocaleToLookupCurry as multiLocaleToLookup,\n};\n"],"names":["assoc","errors","curry"],"mappings":";;;;AAcA,MAAM,mBAAmB,YAA6B;AACpD,SAAO,OAAO,OAAO,MAAM,EAAE,QAAQ,SAAS,EAAE;AAClD;AAEA,MAAM,gBAAgC,OAAO,aAAa,WAAW;AAC/D,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEI,MAAA,CAAC,OAAO,QAAQ;AAClB,WAAOA,GAAM,MAAA,UAAU,MAAM,oBAAoB,MAAM;AAAA,EACzD;AAEO,SAAA;AACT;AAKA,MAAM,iBAA4B,CAAC,aAAa,WAAW;AACzD,MACE,CAAC,OAAO,UACR,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAClF;AACO,WAAA;AAAA,EACT;AAEI,MAAA,OAAO,OAAO,WAAW,UAAU;AAIrC,UAAM,IAAIC,YAAO,OAAA;AAAA,MACf,wBAAwB,OAAO,OAAO,MAAM,CAAC;AAAA,IAAA;AAAA,EAEjD;AAEA,SAAOD,GAAAA,MAAM,CAAC,UAAU,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAC1D;AAKA,MAAM,sBAAiC,CAAC,aAAa,WAAW;AAC1D,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEA,MAAI,OAAO,QAAQ;AACb,QAAA,OAAO,WAAW,KAAK;AAClB,aAAA;AAAA,IACT;AAEA,WAAOA,GAAAA,MAAM,CAAC,UAAU,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAAA,EAC1D;AAEO,SAAA;AACT;AAKA,MAAM,eAA0B,CAAC,aAAa,WAAW;AACnD,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEA,MAAI,OAAO,QAAQ;AACjB,UAAM,gBAAgB,OAAO,OAAO,WAAW,YAAY,OAAO,WAAW;AAC7E,QAAI,eAAe;AACjB,aAAOA,GAAAA,MAAM,CAAC,QAAQ,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAAA,IACxD;AAEA,UAAM,IAAIC,YAAO,OAAA;AAAA,MACf,wBAAwB,OAAO,MAAM;AAAA,IAAA;AAAA,EAEzC;AAEO,SAAA;AACT;AAEM,MAAA,qBAAqBC,SAAM,aAAa;AACxC,MAAA,sBAAsBA,SAAM,cAAc;AAC1C,MAAA,2BAA2BA,SAAM,mBAAmB;AACpD,MAAA,oBAAoBA,SAAM,YAAY;;;;;"}
@@ -1,3 +1,4 @@
1
+ import { errors } from "@strapi/utils";
1
2
  import { curry, assoc } from "lodash/fp";
2
3
  const getDefaultLocale = async () => {
3
4
  return strapi.plugin("i18n").service("locales").getDefaultLocale();
@@ -12,13 +13,15 @@ const defaultLocale = async (contentType, params) => {
12
13
  return params;
13
14
  };
14
15
  const localeToLookup = (contentType, params) => {
15
- if (!strapi.plugin("i18n").service("content-types").isLocalizedContentType(contentType)) {
16
+ if (!params.locale || !strapi.plugin("i18n").service("content-types").isLocalizedContentType(contentType)) {
16
17
  return params;
17
18
  }
18
- if (params.locale) {
19
- return assoc(["lookup", "locale"], params.locale, params);
19
+ if (typeof params.locale !== "string") {
20
+ throw new errors.ValidationError(
21
+ `Invalid locale param ${String(params.locale)} provided. Document locales must be strings.`
22
+ );
20
23
  }
21
- return params;
24
+ return assoc(["lookup", "locale"], params.locale, params);
22
25
  };
23
26
  const multiLocaleToLookup = (contentType, params) => {
24
27
  if (!strapi.plugin("i18n").service("content-types").isLocalizedContentType(contentType)) {
@@ -37,7 +40,13 @@ const localeToData = (contentType, params) => {
37
40
  return params;
38
41
  }
39
42
  if (params.locale) {
40
- return assoc(["data", "locale"], params.locale, params);
43
+ const isValidLocale = typeof params.locale === "string" && params.locale !== "*";
44
+ if (isValidLocale) {
45
+ return assoc(["data", "locale"], params.locale, params);
46
+ }
47
+ throw new errors.ValidationError(
48
+ `Invalid locale param ${params.locale} provided. Document locales must be strings.`
49
+ );
41
50
  }
42
51
  return params;
43
52
  };
@@ -1 +1 @@
1
- {"version":3,"file":"internationalization.mjs","sources":["../../../src/services/document-service/internationalization.ts"],"sourcesContent":["import type { Struct, Modules } from '@strapi/types';\nimport { curry, assoc } from 'lodash/fp';\n\ntype Transform = (\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema,\n params: Modules.Documents.Params.All\n) => Modules.Documents.Params.All;\n\ntype AsyncTransform = (\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema,\n params: Modules.Documents.Params.All\n) => Promise<Modules.Documents.Params.All>;\n\nconst getDefaultLocale = async (): Promise<string> => {\n return strapi.plugin('i18n').service('locales').getDefaultLocale();\n};\n\nconst defaultLocale: AsyncTransform = async (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (!params.locale) {\n // TODO: Load default locale from db in i18n\n return assoc('locale', await getDefaultLocale(), params);\n }\n\n return params;\n};\n\n/**\n * Add locale lookup query to the params\n */\nconst localeToLookup: Transform = (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (params.locale) {\n return assoc(['lookup', 'locale'], params.locale, params);\n }\n\n return params;\n};\n\n/**\n * Add locale lookup query to the params\n */\nconst multiLocaleToLookup: Transform = (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (params.locale) {\n if (params.locale === '*') {\n return params;\n }\n\n return assoc(['lookup', 'locale'], params.locale, params);\n }\n\n return params;\n};\n\n/**\n * Translate locale status parameter into the data that will be saved\n */\nconst localeToData: Transform = (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (params.locale) {\n return assoc(['data', 'locale'], params.locale, params);\n }\n\n return params;\n};\n\nconst defaultLocaleCurry = curry(defaultLocale);\nconst localeToLookupCurry = curry(localeToLookup);\nconst multiLocaleToLookupCurry = curry(multiLocaleToLookup);\nconst localeToDataCurry = curry(localeToData);\n\nexport {\n defaultLocaleCurry as defaultLocale,\n localeToLookupCurry as localeToLookup,\n localeToDataCurry as localeToData,\n multiLocaleToLookupCurry as multiLocaleToLookup,\n};\n"],"names":[],"mappings":";AAaA,MAAM,mBAAmB,YAA6B;AACpD,SAAO,OAAO,OAAO,MAAM,EAAE,QAAQ,SAAS,EAAE;AAClD;AAEA,MAAM,gBAAgC,OAAO,aAAa,WAAW;AAC/D,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEI,MAAA,CAAC,OAAO,QAAQ;AAElB,WAAO,MAAM,UAAU,MAAM,oBAAoB,MAAM;AAAA,EACzD;AAEO,SAAA;AACT;AAKA,MAAM,iBAA4B,CAAC,aAAa,WAAW;AACrD,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEA,MAAI,OAAO,QAAQ;AACjB,WAAO,MAAM,CAAC,UAAU,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAAA,EAC1D;AAEO,SAAA;AACT;AAKA,MAAM,sBAAiC,CAAC,aAAa,WAAW;AAC1D,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEA,MAAI,OAAO,QAAQ;AACb,QAAA,OAAO,WAAW,KAAK;AAClB,aAAA;AAAA,IACT;AAEA,WAAO,MAAM,CAAC,UAAU,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAAA,EAC1D;AAEO,SAAA;AACT;AAKA,MAAM,eAA0B,CAAC,aAAa,WAAW;AACnD,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEA,MAAI,OAAO,QAAQ;AACjB,WAAO,MAAM,CAAC,QAAQ,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAAA,EACxD;AAEO,SAAA;AACT;AAEM,MAAA,qBAAqB,MAAM,aAAa;AACxC,MAAA,sBAAsB,MAAM,cAAc;AAC1C,MAAA,2BAA2B,MAAM,mBAAmB;AACpD,MAAA,oBAAoB,MAAM,YAAY;"}
1
+ {"version":3,"file":"internationalization.mjs","sources":["../../../src/services/document-service/internationalization.ts"],"sourcesContent":["import type { Struct, Modules } from '@strapi/types';\nimport { errors } from '@strapi/utils';\nimport { curry, assoc } from 'lodash/fp';\n\ntype Transform = (\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema,\n params: Modules.Documents.Params.All\n) => Modules.Documents.Params.All;\n\ntype AsyncTransform = (\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema,\n params: Modules.Documents.Params.All\n) => Promise<Modules.Documents.Params.All>;\n\nconst getDefaultLocale = async (): Promise<string> => {\n return strapi.plugin('i18n').service('locales').getDefaultLocale();\n};\n\nconst defaultLocale: AsyncTransform = async (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (!params.locale) {\n return assoc('locale', await getDefaultLocale(), params);\n }\n\n return params;\n};\n\n/**\n * Add locale lookup query to the params\n */\nconst localeToLookup: Transform = (contentType, params) => {\n if (\n !params.locale ||\n !strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)\n ) {\n return params;\n }\n\n if (typeof params.locale !== 'string') {\n // localeToLookup accepts locales of '*'. This is because the document\n // service functions that use this transform work with the '*' locale\n // to return all locales.\n throw new errors.ValidationError(\n `Invalid locale param ${String(params.locale)} provided. Document locales must be strings.`\n );\n }\n\n return assoc(['lookup', 'locale'], params.locale, params);\n};\n\n/**\n * Add locale lookup query to the params\n */\nconst multiLocaleToLookup: Transform = (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (params.locale) {\n if (params.locale === '*') {\n return params;\n }\n\n return assoc(['lookup', 'locale'], params.locale, params);\n }\n\n return params;\n};\n\n/**\n * Translate locale status parameter into the data that will be saved\n */\nconst localeToData: Transform = (contentType, params) => {\n if (!strapi.plugin('i18n').service('content-types').isLocalizedContentType(contentType)) {\n return params;\n }\n\n if (params.locale) {\n const isValidLocale = typeof params.locale === 'string' && params.locale !== '*';\n if (isValidLocale) {\n return assoc(['data', 'locale'], params.locale, params);\n }\n\n throw new errors.ValidationError(\n `Invalid locale param ${params.locale} provided. Document locales must be strings.`\n );\n }\n\n return params;\n};\n\nconst defaultLocaleCurry = curry(defaultLocale);\nconst localeToLookupCurry = curry(localeToLookup);\nconst multiLocaleToLookupCurry = curry(multiLocaleToLookup);\nconst localeToDataCurry = curry(localeToData);\n\nexport {\n defaultLocaleCurry as defaultLocale,\n localeToLookupCurry as localeToLookup,\n localeToDataCurry as localeToData,\n multiLocaleToLookupCurry as multiLocaleToLookup,\n};\n"],"names":[],"mappings":";;AAcA,MAAM,mBAAmB,YAA6B;AACpD,SAAO,OAAO,OAAO,MAAM,EAAE,QAAQ,SAAS,EAAE;AAClD;AAEA,MAAM,gBAAgC,OAAO,aAAa,WAAW;AAC/D,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEI,MAAA,CAAC,OAAO,QAAQ;AAClB,WAAO,MAAM,UAAU,MAAM,oBAAoB,MAAM;AAAA,EACzD;AAEO,SAAA;AACT;AAKA,MAAM,iBAA4B,CAAC,aAAa,WAAW;AACzD,MACE,CAAC,OAAO,UACR,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAClF;AACO,WAAA;AAAA,EACT;AAEI,MAAA,OAAO,OAAO,WAAW,UAAU;AAIrC,UAAM,IAAI,OAAO;AAAA,MACf,wBAAwB,OAAO,OAAO,MAAM,CAAC;AAAA,IAAA;AAAA,EAEjD;AAEA,SAAO,MAAM,CAAC,UAAU,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAC1D;AAKA,MAAM,sBAAiC,CAAC,aAAa,WAAW;AAC1D,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEA,MAAI,OAAO,QAAQ;AACb,QAAA,OAAO,WAAW,KAAK;AAClB,aAAA;AAAA,IACT;AAEA,WAAO,MAAM,CAAC,UAAU,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAAA,EAC1D;AAEO,SAAA;AACT;AAKA,MAAM,eAA0B,CAAC,aAAa,WAAW;AACnD,MAAA,CAAC,OAAO,OAAO,MAAM,EAAE,QAAQ,eAAe,EAAE,uBAAuB,WAAW,GAAG;AAChF,WAAA;AAAA,EACT;AAEA,MAAI,OAAO,QAAQ;AACjB,UAAM,gBAAgB,OAAO,OAAO,WAAW,YAAY,OAAO,WAAW;AAC7E,QAAI,eAAe;AACjB,aAAO,MAAM,CAAC,QAAQ,QAAQ,GAAG,OAAO,QAAQ,MAAM;AAAA,IACxD;AAEA,UAAM,IAAI,OAAO;AAAA,MACf,wBAAwB,OAAO,MAAM;AAAA,IAAA;AAAA,EAEzC;AAEO,SAAA;AACT;AAEM,MAAA,qBAAqB,MAAM,aAAa;AACxC,MAAA,sBAAsB,MAAM,cAAc;AAC1C,MAAA,2BAA2B,MAAM,mBAAmB;AACpD,MAAA,oBAAoB,MAAM,YAAY;"}
@@ -1,7 +1,10 @@
1
- export type Middleware = (ctx: any, next: () => Promise<void>) => Promise<void>;
1
+ export type Middleware = (ctx: any, next: () => Promise<void>) => Promise<void> | void;
2
+ export type Options = {
3
+ exclude?: string[];
4
+ };
2
5
  export declare const createMiddlewareManager: () => {
3
6
  use(middleware: Middleware): () => Middleware[];
4
7
  run(ctx: any, cb: () => void): Promise<void>;
5
- wrapObject<TSource extends Record<string, any>>(source: TSource, ctxDefaults?: {}): TSource;
8
+ wrapObject<TSource>(source: TSource, ctxDefaults?: {}, opts?: Options): TSource;
6
9
  };
7
10
  //# sourceMappingURL=middleware-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"middleware-manager.d.ts","sourceRoot":"","sources":["../../../../src/services/document-service/middlewares/middleware-manager.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEhF,eAAO,MAAM,uBAAuB;oBAIhB,UAAU;aAMX,GAAG,MAAM,MAAM,IAAI;;CA4CrC,CAAC"}
1
+ {"version":3,"file":"middleware-manager.d.ts","sourceRoot":"","sources":["../../../../src/services/document-service/middlewares/middleware-manager.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAEvF,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,uBAAuB;oBAIhB,UAAU;aAMX,GAAG,MAAM,MAAM,IAAI;gCAcN,OAAO,2BAA0B,OAAO,GAAQ,OAAO;CAiCtF,CAAC"}
@@ -17,19 +17,22 @@ const createMiddlewareManager = () => {
17
17
  };
18
18
  return next();
19
19
  },
20
- wrapObject(source, ctxDefaults = {}) {
20
+ wrapObject(source, ctxDefaults = {}, opts = {}) {
21
21
  const facade = {};
22
+ const { exclude = [] } = opts;
22
23
  for (const key in source) {
23
24
  if (Object.hasOwnProperty.call(source, key)) {
24
25
  const prop = source[key];
25
- if (typeof prop === "function") {
26
- const newMethod = async (...args) => {
26
+ if (exclude.includes(key)) {
27
+ facade[key] = prop;
28
+ } else if (typeof prop === "function") {
29
+ const newMethod = async (params = {}) => {
27
30
  const ctx = {
28
31
  ...ctxDefaults,
29
32
  action: key,
30
- args
33
+ params
31
34
  };
32
- return manager.run(ctx, () => prop(...ctx.args));
35
+ return manager.run(ctx, () => prop(ctx.params));
33
36
  };
34
37
  facade[key] = newMethod;
35
38
  } else {
@@ -1 +1 @@
1
- {"version":3,"file":"middleware-manager.js","sources":["../../../../src/services/document-service/middlewares/middleware-manager.ts"],"sourcesContent":["export type Middleware = (ctx: any, next: () => Promise<void>) => Promise<void>;\n\nexport const createMiddlewareManager = () => {\n const middlewares: Middleware[] = [];\n\n const manager = {\n use(middleware: Middleware) {\n middlewares.push(middleware);\n\n return () => middlewares.splice(middlewares.indexOf(middleware), 1);\n },\n\n async run(ctx: any, cb: () => void) {\n let index = 0;\n const next = async () => {\n if (index < middlewares.length) {\n // eslint-disable-next-line no-plusplus\n return middlewares[index++](ctx, next);\n }\n\n return cb();\n };\n\n return next();\n },\n\n wrapObject<TSource extends Record<string, any>>(source: TSource, ctxDefaults = {}): TSource {\n const facade: TSource = {} as TSource;\n\n for (const key in source) {\n if (Object.hasOwnProperty.call(source, key)) {\n const prop = source[key];\n\n if (typeof prop === 'function') {\n const newMethod = async (...args: any[]) => {\n const ctx = {\n ...ctxDefaults,\n action: key,\n args,\n };\n\n return manager.run(ctx, () => prop(...ctx.args));\n };\n\n facade[key] = newMethod as typeof prop;\n } else {\n facade[key] = prop;\n }\n }\n }\n\n return facade;\n },\n };\n\n return manager;\n};\n"],"names":[],"mappings":";;AAEO,MAAM,0BAA0B,MAAM;AAC3C,QAAM,cAA4B,CAAA;AAElC,QAAM,UAAU;AAAA,IACd,IAAI,YAAwB;AAC1B,kBAAY,KAAK,UAAU;AAE3B,aAAO,MAAM,YAAY,OAAO,YAAY,QAAQ,UAAU,GAAG,CAAC;AAAA,IACpE;AAAA,IAEA,MAAM,IAAI,KAAU,IAAgB;AAClC,UAAI,QAAQ;AACZ,YAAM,OAAO,YAAY;AACnB,YAAA,QAAQ,YAAY,QAAQ;AAE9B,iBAAO,YAAY,OAAO,EAAE,KAAK,IAAI;AAAA,QACvC;AAEA,eAAO,GAAG;AAAA,MAAA;AAGZ,aAAO,KAAK;AAAA,IACd;AAAA,IAEA,WAAgD,QAAiB,cAAc,IAAa;AAC1F,YAAM,SAAkB,CAAA;AAExB,iBAAW,OAAO,QAAQ;AACxB,YAAI,OAAO,eAAe,KAAK,QAAQ,GAAG,GAAG;AACrC,gBAAA,OAAO,OAAO,GAAG;AAEnB,cAAA,OAAO,SAAS,YAAY;AACxB,kBAAA,YAAY,UAAU,SAAgB;AAC1C,oBAAM,MAAM;AAAA,gBACV,GAAG;AAAA,gBACH,QAAQ;AAAA,gBACR;AAAA,cAAA;AAGK,qBAAA,QAAQ,IAAI,KAAK,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC;AAAA,YAAA;AAGjD,mBAAO,GAAG,IAAI;AAAA,UAAA,OACT;AACL,mBAAO,GAAG,IAAI;AAAA,UAChB;AAAA,QACF;AAAA,MACF;AAEO,aAAA;AAAA,IACT;AAAA,EAAA;AAGK,SAAA;AACT;;"}
1
+ {"version":3,"file":"middleware-manager.js","sources":["../../../../src/services/document-service/middlewares/middleware-manager.ts"],"sourcesContent":["export type Middleware = (ctx: any, next: () => Promise<void>) => Promise<void> | void;\n\nexport type Options = {\n exclude?: string[];\n};\n\nexport const createMiddlewareManager = () => {\n const middlewares: Middleware[] = [];\n\n const manager = {\n use(middleware: Middleware) {\n middlewares.push(middleware);\n\n return () => middlewares.splice(middlewares.indexOf(middleware), 1);\n },\n\n async run(ctx: any, cb: () => void) {\n let index = 0;\n const next = async () => {\n if (index < middlewares.length) {\n // eslint-disable-next-line no-plusplus\n return middlewares[index++](ctx, next);\n }\n\n return cb();\n };\n\n return next();\n },\n\n wrapObject<TSource>(source: TSource, ctxDefaults = {}, opts: Options = {}): TSource {\n const facade: TSource = {} as TSource;\n const { exclude = [] } = opts;\n\n for (const key in source) {\n if (Object.hasOwnProperty.call(source, key)) {\n const prop = source[key];\n\n if (exclude.includes(key)) {\n facade[key] = prop;\n } else if (typeof prop === 'function') {\n const newMethod = async (params: any = {}) => {\n const ctx = {\n ...ctxDefaults,\n action: key,\n params,\n };\n\n return manager.run(ctx, () => prop(ctx.params));\n };\n\n facade[key] = newMethod as typeof prop;\n } else {\n facade[key] = prop;\n }\n }\n }\n\n return facade;\n },\n };\n\n return manager;\n};\n"],"names":[],"mappings":";;AAMO,MAAM,0BAA0B,MAAM;AAC3C,QAAM,cAA4B,CAAA;AAElC,QAAM,UAAU;AAAA,IACd,IAAI,YAAwB;AAC1B,kBAAY,KAAK,UAAU;AAE3B,aAAO,MAAM,YAAY,OAAO,YAAY,QAAQ,UAAU,GAAG,CAAC;AAAA,IACpE;AAAA,IAEA,MAAM,IAAI,KAAU,IAAgB;AAClC,UAAI,QAAQ;AACZ,YAAM,OAAO,YAAY;AACnB,YAAA,QAAQ,YAAY,QAAQ;AAE9B,iBAAO,YAAY,OAAO,EAAE,KAAK,IAAI;AAAA,QACvC;AAEA,eAAO,GAAG;AAAA,MAAA;AAGZ,aAAO,KAAK;AAAA,IACd;AAAA,IAEA,WAAoB,QAAiB,cAAc,CAAA,GAAI,OAAgB,CAAA,GAAa;AAClF,YAAM,SAAkB,CAAA;AACxB,YAAM,EAAE,UAAU,GAAO,IAAA;AAEzB,iBAAW,OAAO,QAAQ;AACxB,YAAI,OAAO,eAAe,KAAK,QAAQ,GAAG,GAAG;AACrC,gBAAA,OAAO,OAAO,GAAG;AAEnB,cAAA,QAAQ,SAAS,GAAG,GAAG;AACzB,mBAAO,GAAG,IAAI;AAAA,UAAA,WACL,OAAO,SAAS,YAAY;AACrC,kBAAM,YAAY,OAAO,SAAc,OAAO;AAC5C,oBAAM,MAAM;AAAA,gBACV,GAAG;AAAA,gBACH,QAAQ;AAAA,gBACR;AAAA,cAAA;AAGF,qBAAO,QAAQ,IAAI,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC;AAAA,YAAA;AAGhD,mBAAO,GAAG,IAAI;AAAA,UAAA,OACT;AACL,mBAAO,GAAG,IAAI;AAAA,UAChB;AAAA,QACF;AAAA,MACF;AAEO,aAAA;AAAA,IACT;AAAA,EAAA;AAGK,SAAA;AACT;;"}
@@ -15,19 +15,22 @@ const createMiddlewareManager = () => {
15
15
  };
16
16
  return next();
17
17
  },
18
- wrapObject(source, ctxDefaults = {}) {
18
+ wrapObject(source, ctxDefaults = {}, opts = {}) {
19
19
  const facade = {};
20
+ const { exclude = [] } = opts;
20
21
  for (const key in source) {
21
22
  if (Object.hasOwnProperty.call(source, key)) {
22
23
  const prop = source[key];
23
- if (typeof prop === "function") {
24
- const newMethod = async (...args) => {
24
+ if (exclude.includes(key)) {
25
+ facade[key] = prop;
26
+ } else if (typeof prop === "function") {
27
+ const newMethod = async (params = {}) => {
25
28
  const ctx = {
26
29
  ...ctxDefaults,
27
30
  action: key,
28
- args
31
+ params
29
32
  };
30
- return manager.run(ctx, () => prop(...ctx.args));
33
+ return manager.run(ctx, () => prop(ctx.params));
31
34
  };
32
35
  facade[key] = newMethod;
33
36
  } else {
@@ -1 +1 @@
1
- {"version":3,"file":"middleware-manager.mjs","sources":["../../../../src/services/document-service/middlewares/middleware-manager.ts"],"sourcesContent":["export type Middleware = (ctx: any, next: () => Promise<void>) => Promise<void>;\n\nexport const createMiddlewareManager = () => {\n const middlewares: Middleware[] = [];\n\n const manager = {\n use(middleware: Middleware) {\n middlewares.push(middleware);\n\n return () => middlewares.splice(middlewares.indexOf(middleware), 1);\n },\n\n async run(ctx: any, cb: () => void) {\n let index = 0;\n const next = async () => {\n if (index < middlewares.length) {\n // eslint-disable-next-line no-plusplus\n return middlewares[index++](ctx, next);\n }\n\n return cb();\n };\n\n return next();\n },\n\n wrapObject<TSource extends Record<string, any>>(source: TSource, ctxDefaults = {}): TSource {\n const facade: TSource = {} as TSource;\n\n for (const key in source) {\n if (Object.hasOwnProperty.call(source, key)) {\n const prop = source[key];\n\n if (typeof prop === 'function') {\n const newMethod = async (...args: any[]) => {\n const ctx = {\n ...ctxDefaults,\n action: key,\n args,\n };\n\n return manager.run(ctx, () => prop(...ctx.args));\n };\n\n facade[key] = newMethod as typeof prop;\n } else {\n facade[key] = prop;\n }\n }\n }\n\n return facade;\n },\n };\n\n return manager;\n};\n"],"names":[],"mappings":"AAEO,MAAM,0BAA0B,MAAM;AAC3C,QAAM,cAA4B,CAAA;AAElC,QAAM,UAAU;AAAA,IACd,IAAI,YAAwB;AAC1B,kBAAY,KAAK,UAAU;AAE3B,aAAO,MAAM,YAAY,OAAO,YAAY,QAAQ,UAAU,GAAG,CAAC;AAAA,IACpE;AAAA,IAEA,MAAM,IAAI,KAAU,IAAgB;AAClC,UAAI,QAAQ;AACZ,YAAM,OAAO,YAAY;AACnB,YAAA,QAAQ,YAAY,QAAQ;AAE9B,iBAAO,YAAY,OAAO,EAAE,KAAK,IAAI;AAAA,QACvC;AAEA,eAAO,GAAG;AAAA,MAAA;AAGZ,aAAO,KAAK;AAAA,IACd;AAAA,IAEA,WAAgD,QAAiB,cAAc,IAAa;AAC1F,YAAM,SAAkB,CAAA;AAExB,iBAAW,OAAO,QAAQ;AACxB,YAAI,OAAO,eAAe,KAAK,QAAQ,GAAG,GAAG;AACrC,gBAAA,OAAO,OAAO,GAAG;AAEnB,cAAA,OAAO,SAAS,YAAY;AACxB,kBAAA,YAAY,UAAU,SAAgB;AAC1C,oBAAM,MAAM;AAAA,gBACV,GAAG;AAAA,gBACH,QAAQ;AAAA,gBACR;AAAA,cAAA;AAGK,qBAAA,QAAQ,IAAI,KAAK,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC;AAAA,YAAA;AAGjD,mBAAO,GAAG,IAAI;AAAA,UAAA,OACT;AACL,mBAAO,GAAG,IAAI;AAAA,UAChB;AAAA,QACF;AAAA,MACF;AAEO,aAAA;AAAA,IACT;AAAA,EAAA;AAGK,SAAA;AACT;"}
1
+ {"version":3,"file":"middleware-manager.mjs","sources":["../../../../src/services/document-service/middlewares/middleware-manager.ts"],"sourcesContent":["export type Middleware = (ctx: any, next: () => Promise<void>) => Promise<void> | void;\n\nexport type Options = {\n exclude?: string[];\n};\n\nexport const createMiddlewareManager = () => {\n const middlewares: Middleware[] = [];\n\n const manager = {\n use(middleware: Middleware) {\n middlewares.push(middleware);\n\n return () => middlewares.splice(middlewares.indexOf(middleware), 1);\n },\n\n async run(ctx: any, cb: () => void) {\n let index = 0;\n const next = async () => {\n if (index < middlewares.length) {\n // eslint-disable-next-line no-plusplus\n return middlewares[index++](ctx, next);\n }\n\n return cb();\n };\n\n return next();\n },\n\n wrapObject<TSource>(source: TSource, ctxDefaults = {}, opts: Options = {}): TSource {\n const facade: TSource = {} as TSource;\n const { exclude = [] } = opts;\n\n for (const key in source) {\n if (Object.hasOwnProperty.call(source, key)) {\n const prop = source[key];\n\n if (exclude.includes(key)) {\n facade[key] = prop;\n } else if (typeof prop === 'function') {\n const newMethod = async (params: any = {}) => {\n const ctx = {\n ...ctxDefaults,\n action: key,\n params,\n };\n\n return manager.run(ctx, () => prop(ctx.params));\n };\n\n facade[key] = newMethod as typeof prop;\n } else {\n facade[key] = prop;\n }\n }\n }\n\n return facade;\n },\n };\n\n return manager;\n};\n"],"names":[],"mappings":"AAMO,MAAM,0BAA0B,MAAM;AAC3C,QAAM,cAA4B,CAAA;AAElC,QAAM,UAAU;AAAA,IACd,IAAI,YAAwB;AAC1B,kBAAY,KAAK,UAAU;AAE3B,aAAO,MAAM,YAAY,OAAO,YAAY,QAAQ,UAAU,GAAG,CAAC;AAAA,IACpE;AAAA,IAEA,MAAM,IAAI,KAAU,IAAgB;AAClC,UAAI,QAAQ;AACZ,YAAM,OAAO,YAAY;AACnB,YAAA,QAAQ,YAAY,QAAQ;AAE9B,iBAAO,YAAY,OAAO,EAAE,KAAK,IAAI;AAAA,QACvC;AAEA,eAAO,GAAG;AAAA,MAAA;AAGZ,aAAO,KAAK;AAAA,IACd;AAAA,IAEA,WAAoB,QAAiB,cAAc,CAAA,GAAI,OAAgB,CAAA,GAAa;AAClF,YAAM,SAAkB,CAAA;AACxB,YAAM,EAAE,UAAU,GAAO,IAAA;AAEzB,iBAAW,OAAO,QAAQ;AACxB,YAAI,OAAO,eAAe,KAAK,QAAQ,GAAG,GAAG;AACrC,gBAAA,OAAO,OAAO,GAAG;AAEnB,cAAA,QAAQ,SAAS,GAAG,GAAG;AACzB,mBAAO,GAAG,IAAI;AAAA,UAAA,WACL,OAAO,SAAS,YAAY;AACrC,kBAAM,YAAY,OAAO,SAAc,OAAO;AAC5C,oBAAM,MAAM;AAAA,gBACV,GAAG;AAAA,gBACH,QAAQ;AAAA,gBACR;AAAA,cAAA;AAGF,qBAAO,QAAQ,IAAI,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC;AAAA,YAAA;AAGhD,mBAAO,GAAG,IAAI;AAAA,UAAA,OACT;AACL,mBAAO,GAAG,IAAI;AAAA,UAChB;AAAA,QACF;AAAA,MACF;AAEO,aAAA;AAAA,IACT;AAAA,EAAA;AAGK,SAAA;AACT;"}
@@ -1,2 +1,4 @@
1
- export * from '../entity-service/params';
1
+ import type { UID, Modules } from '@strapi/types';
2
+ declare const pickSelectionParams: <TUID extends UID.ContentType>(data: unknown) => Modules.Documents.Params.Pick<TUID, 'fields' | 'populate' | 'status'>;
3
+ export { pickSelectionParams };
2
4
  //# sourceMappingURL=params.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../../src/services/document-service/params.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../../src/services/document-service/params.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAElD,QAAA,MAAM,mBAAmB,uCACjB,OAAO,KACZ,QAAQ,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAEtE,CAAC;AAEF,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const _ = require("lodash/fp");
3
+ const fp = require("lodash/fp");
4
4
  const pickSelectionParams = (data) => {
5
- return _.pick(["fields", "populate", "status"], data);
5
+ return fp.pick(["fields", "populate", "status"], data);
6
6
  };
7
7
  exports.pickSelectionParams = pickSelectionParams;
8
8
  //# sourceMappingURL=params.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"params.js","sources":["../../../src/services/document-service/params.ts"],"sourcesContent":["import { pick } from 'lodash/fp';\nimport type { UID, Modules } from '@strapi/types';\n\nconst pickSelectionParams = <TUID extends UID.ContentType>(\n data: unknown\n): Modules.Documents.Params.Pick<TUID, 'fields' | 'populate' | 'status'> => {\n return pick(['fields', 'populate', 'status'], data);\n};\n\nexport { pickSelectionParams };\n"],"names":["pick"],"mappings":";;;AAGM,MAAA,sBAAsB,CAC1B,SAC0E;AAC1E,SAAOA,GAAAA,KAAK,CAAC,UAAU,YAAY,QAAQ,GAAG,IAAI;AACpD;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"params.mjs","sources":["../../../src/services/document-service/params.ts"],"sourcesContent":["import { pick } from 'lodash/fp';\nimport type { UID, Modules } from '@strapi/types';\n\nconst pickSelectionParams = <TUID extends UID.ContentType>(\n data: unknown\n): Modules.Documents.Params.Pick<TUID, 'fields' | 'populate' | 'status'> => {\n return pick(['fields', 'populate', 'status'], data);\n};\n\nexport { pickSelectionParams };\n"],"names":[],"mappings":";AAGM,MAAA,sBAAsB,CAC1B,SAC0E;AAC1E,SAAO,KAAK,CAAC,UAAU,YAAY,QAAQ,GAAG,IAAI;AACpD;"}
@@ -1 +1 @@
1
- {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../src/services/document-service/repository.ts"],"names":[],"mappings":"AAKA,OAAO,EAAqB,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AA0B3E,eAAO,MAAM,2BAA2B,EAAE,uBA4VzC,CAAC"}
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../src/services/document-service/repository.ts"],"names":[],"mappings":"AAIA,OAAO,EAAqB,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAa3E,eAAO,MAAM,2BAA2B,EAAE,uBAyUzC,CAAC"}