@strapi/strapi 4.14.5 → 4.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (697) hide show
  1. package/README.md +1 -0
  2. package/bin/strapi.js +1 -6
  3. package/dist/Strapi.js +454 -532
  4. package/dist/Strapi.js.map +1 -1
  5. package/dist/Strapi.mjs +464 -0
  6. package/dist/Strapi.mjs.map +1 -0
  7. package/dist/cli.d.ts +2 -0
  8. package/dist/cli.d.ts.map +1 -0
  9. package/dist/cli.js +4 -0
  10. package/dist/cli.js.map +1 -0
  11. package/dist/commands/actions/admin/create-user/action.js +75 -94
  12. package/dist/commands/actions/admin/create-user/action.js.map +1 -1
  13. package/dist/commands/actions/admin/create-user/command.d.ts.map +1 -1
  14. package/dist/commands/actions/admin/create-user/command.js +6 -17
  15. package/dist/commands/actions/admin/create-user/command.js.map +1 -1
  16. package/dist/commands/actions/admin/reset-user-password/action.js +33 -36
  17. package/dist/commands/actions/admin/reset-user-password/action.js.map +1 -1
  18. package/dist/commands/actions/admin/reset-user-password/command.d.ts.map +1 -1
  19. package/dist/commands/actions/admin/reset-user-password/command.js +6 -15
  20. package/dist/commands/actions/admin/reset-user-password/command.js.map +1 -1
  21. package/dist/commands/actions/build-command/action.js +15 -18
  22. package/dist/commands/actions/build-command/action.js.map +1 -1
  23. package/dist/commands/actions/build-command/command.d.ts.map +1 -1
  24. package/dist/commands/actions/build-command/command.js +6 -13
  25. package/dist/commands/actions/build-command/command.js.map +1 -1
  26. package/dist/commands/actions/components/list/action.js +18 -18
  27. package/dist/commands/actions/components/list/action.js.map +1 -1
  28. package/dist/commands/actions/components/list/command.d.ts.map +1 -1
  29. package/dist/commands/actions/components/list/command.js +6 -12
  30. package/dist/commands/actions/components/list/command.js.map +1 -1
  31. package/dist/commands/actions/configuration/dump/action.js +33 -43
  32. package/dist/commands/actions/configuration/dump/action.js.map +1 -1
  33. package/dist/commands/actions/configuration/dump/command.d.ts.map +1 -1
  34. package/dist/commands/actions/configuration/dump/command.js +6 -15
  35. package/dist/commands/actions/configuration/dump/command.js.map +1 -1
  36. package/dist/commands/actions/configuration/restore/action.js +122 -139
  37. package/dist/commands/actions/configuration/restore/action.js.map +1 -1
  38. package/dist/commands/actions/configuration/restore/command.d.ts.map +1 -1
  39. package/dist/commands/actions/configuration/restore/command.js +6 -15
  40. package/dist/commands/actions/configuration/restore/command.js.map +1 -1
  41. package/dist/commands/actions/console/action.js +19 -23
  42. package/dist/commands/actions/console/action.js.map +1 -1
  43. package/dist/commands/actions/console/command.d.ts.map +1 -1
  44. package/dist/commands/actions/console/command.js +6 -12
  45. package/dist/commands/actions/console/command.js.map +1 -1
  46. package/dist/commands/actions/content-types/list/action.js +18 -18
  47. package/dist/commands/actions/content-types/list/action.js.map +1 -1
  48. package/dist/commands/actions/content-types/list/command.d.ts.map +1 -1
  49. package/dist/commands/actions/content-types/list/command.js +6 -12
  50. package/dist/commands/actions/content-types/list/command.js.map +1 -1
  51. package/dist/commands/actions/controllers/list/action.js +18 -18
  52. package/dist/commands/actions/controllers/list/action.js.map +1 -1
  53. package/dist/commands/actions/controllers/list/command.d.ts.map +1 -1
  54. package/dist/commands/actions/controllers/list/command.js +6 -12
  55. package/dist/commands/actions/controllers/list/command.js.map +1 -1
  56. package/dist/commands/actions/develop/action.d.ts +1 -75
  57. package/dist/commands/actions/develop/action.d.ts.map +1 -1
  58. package/dist/commands/actions/develop/action.js +184 -177
  59. package/dist/commands/actions/develop/action.js.map +1 -1
  60. package/dist/commands/actions/develop/command.d.ts.map +1 -1
  61. package/dist/commands/actions/develop/command.js +6 -17
  62. package/dist/commands/actions/develop/command.js.map +1 -1
  63. package/dist/commands/actions/generate/command.js +30 -16
  64. package/dist/commands/actions/generate/command.js.map +1 -1
  65. package/dist/commands/actions/hooks/list/action.js +18 -18
  66. package/dist/commands/actions/hooks/list/action.js.map +1 -1
  67. package/dist/commands/actions/hooks/list/command.d.ts.map +1 -1
  68. package/dist/commands/actions/hooks/list/command.js +6 -12
  69. package/dist/commands/actions/hooks/list/command.js.map +1 -1
  70. package/dist/commands/actions/install/action.js +41 -45
  71. package/dist/commands/actions/install/action.js.map +1 -1
  72. package/dist/commands/actions/install/command.d.ts.map +1 -1
  73. package/dist/commands/actions/install/command.js +6 -12
  74. package/dist/commands/actions/install/command.js.map +1 -1
  75. package/dist/commands/actions/middlewares/list/action.js +18 -18
  76. package/dist/commands/actions/middlewares/list/action.js.map +1 -1
  77. package/dist/commands/actions/middlewares/list/command.d.ts.map +1 -1
  78. package/dist/commands/actions/middlewares/list/command.js +6 -12
  79. package/dist/commands/actions/middlewares/list/command.js.map +1 -1
  80. package/dist/commands/actions/new/action.js +5 -10
  81. package/dist/commands/actions/new/action.js.map +1 -1
  82. package/dist/commands/actions/new/command.js +14 -33
  83. package/dist/commands/actions/new/command.js.map +1 -1
  84. package/dist/commands/actions/plugin/build-command/action.js +80 -79
  85. package/dist/commands/actions/plugin/build-command/action.js.map +1 -1
  86. package/dist/commands/actions/plugin/build-command/command.d.ts.map +1 -1
  87. package/dist/commands/actions/plugin/build-command/command.js +7 -18
  88. package/dist/commands/actions/plugin/build-command/command.js.map +1 -1
  89. package/dist/commands/actions/plugin/watch/action.d.ts +7 -0
  90. package/dist/commands/actions/plugin/watch/action.d.ts.map +1 -0
  91. package/dist/commands/actions/plugin/watch/action.js +85 -0
  92. package/dist/commands/actions/plugin/watch/action.js.map +1 -0
  93. package/dist/commands/actions/plugin/watch/command.d.ts +7 -0
  94. package/dist/commands/actions/plugin/watch/command.d.ts.map +1 -0
  95. package/dist/commands/actions/plugin/watch/command.js +8 -0
  96. package/dist/commands/actions/plugin/watch/command.js.map +1 -0
  97. package/dist/commands/actions/policies/list/action.js +18 -18
  98. package/dist/commands/actions/policies/list/action.js.map +1 -1
  99. package/dist/commands/actions/policies/list/command.d.ts.map +1 -1
  100. package/dist/commands/actions/policies/list/command.js +6 -12
  101. package/dist/commands/actions/policies/list/command.js.map +1 -1
  102. package/dist/commands/actions/report/action.js +22 -25
  103. package/dist/commands/actions/report/action.js.map +1 -1
  104. package/dist/commands/actions/report/command.d.ts.map +1 -1
  105. package/dist/commands/actions/report/command.js +6 -15
  106. package/dist/commands/actions/report/command.js.map +1 -1
  107. package/dist/commands/actions/routes/list/action.js +22 -24
  108. package/dist/commands/actions/routes/list/action.js.map +1 -1
  109. package/dist/commands/actions/routes/list/command.d.ts.map +1 -1
  110. package/dist/commands/actions/routes/list/command.js +6 -12
  111. package/dist/commands/actions/routes/list/command.js.map +1 -1
  112. package/dist/commands/actions/services/list/action.js +18 -18
  113. package/dist/commands/actions/services/list/action.js.map +1 -1
  114. package/dist/commands/actions/services/list/command.d.ts.map +1 -1
  115. package/dist/commands/actions/services/list/command.js +6 -12
  116. package/dist/commands/actions/services/list/command.js.map +1 -1
  117. package/dist/commands/actions/start/action.d.ts +1 -74
  118. package/dist/commands/actions/start/action.d.ts.map +1 -1
  119. package/dist/commands/actions/start/action.js +19 -20
  120. package/dist/commands/actions/start/action.js.map +1 -1
  121. package/dist/commands/actions/start/command.d.ts.map +1 -1
  122. package/dist/commands/actions/start/command.js +6 -12
  123. package/dist/commands/actions/start/command.js.map +1 -1
  124. package/dist/commands/actions/telemetry/disable/action.js +72 -72
  125. package/dist/commands/actions/telemetry/disable/action.js.map +1 -1
  126. package/dist/commands/actions/telemetry/disable/command.d.ts.map +1 -1
  127. package/dist/commands/actions/telemetry/disable/command.js +6 -12
  128. package/dist/commands/actions/telemetry/disable/command.js.map +1 -1
  129. package/dist/commands/actions/telemetry/enable/action.js +87 -88
  130. package/dist/commands/actions/telemetry/enable/action.js.map +1 -1
  131. package/dist/commands/actions/telemetry/enable/command.d.ts.map +1 -1
  132. package/dist/commands/actions/telemetry/enable/command.js +6 -12
  133. package/dist/commands/actions/telemetry/enable/command.js.map +1 -1
  134. package/dist/commands/actions/templates/generate/action.js +59 -73
  135. package/dist/commands/actions/templates/generate/action.js.map +1 -1
  136. package/dist/commands/actions/templates/generate/command.d.ts.map +1 -1
  137. package/dist/commands/actions/templates/generate/command.js +6 -12
  138. package/dist/commands/actions/templates/generate/command.js.map +1 -1
  139. package/dist/commands/actions/ts/generate-types/action.js +25 -26
  140. package/dist/commands/actions/ts/generate-types/action.js.map +1 -1
  141. package/dist/commands/actions/ts/generate-types/command.d.ts.map +1 -1
  142. package/dist/commands/actions/ts/generate-types/command.js +9 -16
  143. package/dist/commands/actions/ts/generate-types/command.js.map +1 -1
  144. package/dist/commands/actions/uninstall/action.js +60 -62
  145. package/dist/commands/actions/uninstall/action.js.map +1 -1
  146. package/dist/commands/actions/uninstall/command.d.ts.map +1 -1
  147. package/dist/commands/actions/uninstall/command.js +6 -13
  148. package/dist/commands/actions/uninstall/command.js.map +1 -1
  149. package/dist/commands/actions/version/command.js +10 -17
  150. package/dist/commands/actions/version/command.js.map +1 -1
  151. package/dist/commands/actions/watch-admin/action.js +33 -34
  152. package/dist/commands/actions/watch-admin/action.js.map +1 -1
  153. package/dist/commands/actions/watch-admin/command.d.ts.map +1 -1
  154. package/dist/commands/actions/watch-admin/command.js +6 -13
  155. package/dist/commands/actions/watch-admin/command.js.map +1 -1
  156. package/dist/commands/builders/admin.js +46 -50
  157. package/dist/commands/builders/admin.js.map +1 -1
  158. package/dist/commands/builders/typescript.js +28 -25
  159. package/dist/commands/builders/typescript.js.map +1 -1
  160. package/dist/commands/index.d.ts +1 -0
  161. package/dist/commands/index.d.ts.map +1 -1
  162. package/dist/commands/index.js +102 -91
  163. package/dist/commands/index.js.map +1 -1
  164. package/dist/commands/utils/commander.js +11 -136
  165. package/dist/commands/utils/commander.js.map +1 -1
  166. package/dist/commands/utils/helpers.d.ts +4 -6
  167. package/dist/commands/utils/helpers.d.ts.map +1 -1
  168. package/dist/commands/utils/helpers.js +57 -155
  169. package/dist/commands/utils/helpers.js.map +1 -1
  170. package/dist/commands/utils/logger.js +59 -49
  171. package/dist/commands/utils/logger.js.map +1 -1
  172. package/dist/commands/utils/pkg.js +98 -107
  173. package/dist/commands/utils/pkg.js.map +1 -1
  174. package/dist/compile.js +15 -17
  175. package/dist/compile.js.map +1 -1
  176. package/dist/compile.mjs +17 -0
  177. package/dist/compile.mjs.map +1 -0
  178. package/dist/container.js +32 -35
  179. package/dist/container.js.map +1 -1
  180. package/dist/container.mjs +36 -0
  181. package/dist/container.mjs.map +1 -0
  182. package/dist/core/app-configuration/config-loader.js +17 -20
  183. package/dist/core/app-configuration/config-loader.js.map +1 -1
  184. package/dist/core/app-configuration/config-loader.mjs +17 -0
  185. package/dist/core/app-configuration/config-loader.mjs.map +1 -0
  186. package/dist/core/app-configuration/index.js +51 -50
  187. package/dist/core/app-configuration/index.js.map +1 -1
  188. package/dist/core/app-configuration/index.mjs +51 -0
  189. package/dist/core/app-configuration/index.mjs.map +1 -0
  190. package/dist/core/app-configuration/load-config-file.js +34 -38
  191. package/dist/core/app-configuration/load-config-file.js.map +1 -1
  192. package/dist/core/app-configuration/load-config-file.mjs +42 -0
  193. package/dist/core/app-configuration/load-config-file.mjs.map +1 -0
  194. package/dist/core/bootstrap.js +25 -24
  195. package/dist/core/bootstrap.js.map +1 -1
  196. package/dist/core/bootstrap.mjs +27 -0
  197. package/dist/core/bootstrap.mjs.map +1 -0
  198. package/dist/core/domain/content-type/index.js +108 -104
  199. package/dist/core/domain/content-type/index.js.map +1 -1
  200. package/dist/core/domain/content-type/index.mjs +119 -0
  201. package/dist/core/domain/content-type/index.mjs.map +1 -0
  202. package/dist/core/domain/content-type/validator.js +69 -83
  203. package/dist/core/domain/content-type/validator.js.map +1 -1
  204. package/dist/core/domain/content-type/validator.mjs +75 -0
  205. package/dist/core/domain/content-type/validator.mjs.map +1 -0
  206. package/dist/core/domain/module/index.js +97 -100
  207. package/dist/core/domain/module/index.js.map +1 -1
  208. package/dist/core/domain/module/index.mjs +105 -0
  209. package/dist/core/domain/module/index.mjs.map +1 -0
  210. package/dist/core/domain/module/validation.js +21 -25
  211. package/dist/core/domain/module/validation.js.map +1 -1
  212. package/dist/core/domain/module/validation.mjs +25 -0
  213. package/dist/core/domain/module/validation.mjs.map +1 -0
  214. package/dist/core/loaders/admin.js +13 -15
  215. package/dist/core/loaders/admin.js.map +1 -1
  216. package/dist/core/loaders/admin.mjs +15 -0
  217. package/dist/core/loaders/admin.mjs.map +1 -0
  218. package/dist/core/loaders/apis.js +109 -135
  219. package/dist/core/loaders/apis.js.map +1 -1
  220. package/dist/core/loaders/apis.mjs +128 -0
  221. package/dist/core/loaders/apis.mjs.map +1 -0
  222. package/dist/core/loaders/components.js +34 -34
  223. package/dist/core/loaders/components.js.map +1 -1
  224. package/dist/core/loaders/components.mjs +36 -0
  225. package/dist/core/loaders/components.mjs.map +1 -0
  226. package/dist/core/loaders/index.js +21 -24
  227. package/dist/core/loaders/index.js.map +1 -1
  228. package/dist/core/loaders/index.mjs +24 -0
  229. package/dist/core/loaders/index.mjs.map +1 -0
  230. package/dist/core/loaders/middlewares.js +25 -28
  231. package/dist/core/loaders/middlewares.js.map +1 -1
  232. package/dist/core/loaders/middlewares.mjs +30 -0
  233. package/dist/core/loaders/middlewares.mjs.map +1 -0
  234. package/dist/core/loaders/plugins/get-enabled-plugins.js +96 -99
  235. package/dist/core/loaders/plugins/get-enabled-plugins.js.map +1 -1
  236. package/dist/core/loaders/plugins/get-enabled-plugins.mjs +108 -0
  237. package/dist/core/loaders/plugins/get-enabled-plugins.mjs.map +1 -0
  238. package/dist/core/loaders/plugins/get-user-plugins-config.js +23 -27
  239. package/dist/core/loaders/plugins/get-user-plugins-config.js.map +1 -1
  240. package/dist/core/loaders/plugins/get-user-plugins-config.mjs +25 -0
  241. package/dist/core/loaders/plugins/get-user-plugins-config.mjs.map +1 -0
  242. package/dist/core/loaders/plugins/index.js +92 -96
  243. package/dist/core/loaders/plugins/index.js.map +1 -1
  244. package/dist/core/loaders/plugins/index.mjs +104 -0
  245. package/dist/core/loaders/plugins/index.mjs.map +1 -0
  246. package/dist/core/loaders/policies.js +21 -24
  247. package/dist/core/loaders/policies.js.map +1 -1
  248. package/dist/core/loaders/policies.mjs +24 -0
  249. package/dist/core/loaders/policies.mjs.map +1 -0
  250. package/dist/core/loaders/sanitizers.js +4 -4
  251. package/dist/core/loaders/sanitizers.js.map +1 -1
  252. package/dist/core/loaders/sanitizers.mjs +7 -0
  253. package/dist/core/loaders/sanitizers.mjs.map +1 -0
  254. package/dist/core/loaders/src-index.js +28 -32
  255. package/dist/core/loaders/src-index.js.map +1 -1
  256. package/dist/core/loaders/src-index.mjs +34 -0
  257. package/dist/core/loaders/src-index.mjs.map +1 -0
  258. package/dist/core/loaders/validators.js +4 -4
  259. package/dist/core/loaders/validators.js.map +1 -1
  260. package/dist/core/loaders/validators.mjs +7 -0
  261. package/dist/core/loaders/validators.mjs.map +1 -0
  262. package/dist/core/registries/apis.js +20 -21
  263. package/dist/core/registries/apis.js.map +1 -1
  264. package/dist/core/registries/apis.mjs +24 -0
  265. package/dist/core/registries/apis.mjs.map +1 -0
  266. package/dist/core/registries/config.js +21 -21
  267. package/dist/core/registries/config.js.map +1 -1
  268. package/dist/core/registries/config.mjs +22 -0
  269. package/dist/core/registries/config.mjs.map +1 -0
  270. package/dist/core/registries/content-types.js +65 -64
  271. package/dist/core/registries/content-types.js.map +1 -1
  272. package/dist/core/registries/content-types.mjs +72 -0
  273. package/dist/core/registries/content-types.mjs.map +1 -0
  274. package/dist/core/registries/controllers.js +77 -78
  275. package/dist/core/registries/controllers.js.map +1 -1
  276. package/dist/core/registries/controllers.mjs +81 -0
  277. package/dist/core/registries/controllers.mjs.map +1 -0
  278. package/dist/core/registries/custom-fields.js +66 -69
  279. package/dist/core/registries/custom-fields.js.map +1 -1
  280. package/dist/core/registries/custom-fields.mjs +72 -0
  281. package/dist/core/registries/custom-fields.mjs.map +1 -0
  282. package/dist/core/registries/hooks.js +55 -56
  283. package/dist/core/registries/hooks.js.map +1 -1
  284. package/dist/core/registries/hooks.mjs +59 -0
  285. package/dist/core/registries/hooks.mjs.map +1 -0
  286. package/dist/core/registries/middlewares.js +57 -59
  287. package/dist/core/registries/middlewares.js.map +1 -1
  288. package/dist/core/registries/middlewares.mjs +61 -0
  289. package/dist/core/registries/middlewares.mjs.map +1 -0
  290. package/dist/core/registries/modules.js +36 -37
  291. package/dist/core/registries/modules.js.map +1 -1
  292. package/dist/core/registries/modules.mjs +40 -0
  293. package/dist/core/registries/modules.mjs.map +1 -0
  294. package/dist/core/registries/plugins.js +20 -21
  295. package/dist/core/registries/plugins.js.map +1 -1
  296. package/dist/core/registries/plugins.mjs +24 -0
  297. package/dist/core/registries/plugins.mjs.map +1 -0
  298. package/dist/core/registries/policies.js +59 -61
  299. package/dist/core/registries/policies.js.map +1 -1
  300. package/dist/core/registries/policies.mjs +63 -0
  301. package/dist/core/registries/policies.mjs.map +1 -0
  302. package/dist/core/registries/sanitizers.js +22 -24
  303. package/dist/core/registries/sanitizers.js.map +1 -1
  304. package/dist/core/registries/sanitizers.mjs +24 -0
  305. package/dist/core/registries/sanitizers.mjs.map +1 -0
  306. package/dist/core/registries/services.js +77 -79
  307. package/dist/core/registries/services.js.map +1 -1
  308. package/dist/core/registries/services.mjs +81 -0
  309. package/dist/core/registries/services.mjs.map +1 -0
  310. package/dist/core/registries/validators.js +22 -24
  311. package/dist/core/registries/validators.js.map +1 -1
  312. package/dist/core/registries/validators.mjs +24 -0
  313. package/dist/core/registries/validators.mjs.map +1 -0
  314. package/dist/core/utils.js +19 -20
  315. package/dist/core/utils.js.map +1 -1
  316. package/dist/core/utils.mjs +27 -0
  317. package/dist/core/utils.mjs.map +1 -0
  318. package/dist/core-api/controller/collection-type.js +90 -93
  319. package/dist/core-api/controller/collection-type.js.map +1 -1
  320. package/dist/core-api/controller/collection-type.mjs +93 -0
  321. package/dist/core-api/controller/collection-type.mjs.map +1 -0
  322. package/dist/core-api/controller/index.js +43 -46
  323. package/dist/core-api/controller/index.js.map +1 -1
  324. package/dist/core-api/controller/index.mjs +47 -0
  325. package/dist/core-api/controller/index.mjs.map +1 -0
  326. package/dist/core-api/controller/single-type.js +48 -50
  327. package/dist/core-api/controller/single-type.js.map +1 -1
  328. package/dist/core-api/controller/single-type.mjs +51 -0
  329. package/dist/core-api/controller/single-type.mjs.map +1 -0
  330. package/dist/core-api/controller/transform.js +70 -72
  331. package/dist/core-api/controller/transform.js.map +1 -1
  332. package/dist/core-api/controller/transform.mjs +84 -0
  333. package/dist/core-api/controller/transform.mjs.map +1 -0
  334. package/dist/core-api/routes/index.js +60 -61
  335. package/dist/core-api/routes/index.js.map +1 -1
  336. package/dist/core-api/routes/index.mjs +67 -0
  337. package/dist/core-api/routes/index.mjs.map +1 -0
  338. package/dist/core-api/service/collection-type.js +57 -57
  339. package/dist/core-api/service/collection-type.js.map +1 -1
  340. package/dist/core-api/service/collection-type.mjs +62 -0
  341. package/dist/core-api/service/collection-type.mjs.map +1 -0
  342. package/dist/core-api/service/get-fetch-params.js +10 -12
  343. package/dist/core-api/service/get-fetch-params.js.map +1 -1
  344. package/dist/core-api/service/get-fetch-params.mjs +14 -0
  345. package/dist/core-api/service/get-fetch-params.mjs.map +1 -0
  346. package/dist/core-api/service/index.js +13 -15
  347. package/dist/core-api/service/index.js.map +1 -1
  348. package/dist/core-api/service/index.mjs +16 -0
  349. package/dist/core-api/service/index.mjs.map +1 -0
  350. package/dist/core-api/service/pagination.js +71 -79
  351. package/dist/core-api/service/pagination.js.map +1 -1
  352. package/dist/core-api/service/pagination.mjs +89 -0
  353. package/dist/core-api/service/pagination.mjs.map +1 -0
  354. package/dist/core-api/service/single-type.js +53 -53
  355. package/dist/core-api/service/single-type.js.map +1 -1
  356. package/dist/core-api/service/single-type.mjs +58 -0
  357. package/dist/core-api/service/single-type.mjs.map +1 -0
  358. package/dist/ee/index.js +128 -160
  359. package/dist/ee/index.js.map +1 -1
  360. package/dist/ee/index.mjs +154 -0
  361. package/dist/ee/index.mjs.map +1 -0
  362. package/dist/ee/license.js +72 -77
  363. package/dist/ee/license.js.map +1 -1
  364. package/dist/ee/license.mjs +86 -0
  365. package/dist/ee/license.mjs.map +1 -0
  366. package/dist/factories.js +62 -61
  367. package/dist/factories.js.map +1 -1
  368. package/dist/factories.mjs +71 -0
  369. package/dist/factories.mjs.map +1 -0
  370. package/dist/index.d.ts +0 -1
  371. package/dist/index.d.ts.map +1 -1
  372. package/dist/index.js +7 -34
  373. package/dist/index.js.map +1 -1
  374. package/dist/index.mjs +8 -0
  375. package/dist/index.mjs.map +1 -0
  376. package/dist/load/filepath-to-prop-path.js +9 -19
  377. package/dist/load/filepath-to-prop-path.js.map +1 -1
  378. package/dist/load/filepath-to-prop-path.mjs +10 -0
  379. package/dist/load/filepath-to-prop-path.mjs.map +1 -0
  380. package/dist/load/glob.js +11 -16
  381. package/dist/load/glob.js.map +1 -1
  382. package/dist/load/glob.mjs +14 -0
  383. package/dist/load/glob.mjs.map +1 -0
  384. package/dist/load/load-files.js +35 -43
  385. package/dist/load/load-files.js.map +1 -1
  386. package/dist/load/load-files.mjs +35 -0
  387. package/dist/load/load-files.mjs.map +1 -0
  388. package/dist/load/package-path.js +6 -10
  389. package/dist/load/package-path.js.map +1 -1
  390. package/dist/middlewares/body.js +53 -66
  391. package/dist/middlewares/body.js.map +1 -1
  392. package/dist/middlewares/body.mjs +61 -0
  393. package/dist/middlewares/body.mjs.map +1 -0
  394. package/dist/middlewares/compression.js +6 -8
  395. package/dist/middlewares/compression.js.map +1 -1
  396. package/dist/middlewares/compression.mjs +6 -0
  397. package/dist/middlewares/compression.mjs.map +1 -0
  398. package/dist/middlewares/cors.js +45 -48
  399. package/dist/middlewares/cors.js.map +1 -1
  400. package/dist/middlewares/cors.mjs +49 -0
  401. package/dist/middlewares/cors.mjs.map +1 -0
  402. package/dist/middlewares/errors.js +30 -32
  403. package/dist/middlewares/errors.js.map +1 -1
  404. package/dist/middlewares/errors.mjs +33 -0
  405. package/dist/middlewares/errors.mjs.map +1 -0
  406. package/dist/middlewares/favicon.js +16 -24
  407. package/dist/middlewares/favicon.js.map +1 -1
  408. package/dist/middlewares/favicon.mjs +20 -0
  409. package/dist/middlewares/favicon.mjs.map +1 -0
  410. package/dist/middlewares/index.js +32 -32
  411. package/dist/middlewares/index.js.map +1 -1
  412. package/dist/middlewares/index.mjs +34 -0
  413. package/dist/middlewares/index.mjs.map +1 -0
  414. package/dist/middlewares/ip.js +6 -8
  415. package/dist/middlewares/ip.js.map +1 -1
  416. package/dist/middlewares/ip.mjs +6 -0
  417. package/dist/middlewares/ip.mjs.map +1 -0
  418. package/dist/middlewares/logger.js +8 -9
  419. package/dist/middlewares/logger.js.map +1 -1
  420. package/dist/middlewares/logger.mjs +12 -0
  421. package/dist/middlewares/logger.mjs.map +1 -0
  422. package/dist/middlewares/powered-by.js +8 -9
  423. package/dist/middlewares/powered-by.js.map +1 -1
  424. package/dist/middlewares/powered-by.mjs +14 -0
  425. package/dist/middlewares/powered-by.mjs.map +1 -0
  426. package/dist/middlewares/public/index.js +85 -106
  427. package/dist/middlewares/public/index.js.map +1 -1
  428. package/dist/middlewares/public/index.mjs +85 -0
  429. package/dist/middlewares/public/index.mjs.map +1 -0
  430. package/dist/middlewares/public/serve-static.js +20 -23
  431. package/dist/middlewares/public/serve-static.js.map +1 -1
  432. package/dist/middlewares/public/serve-static.mjs +21 -0
  433. package/dist/middlewares/public/serve-static.mjs.map +1 -0
  434. package/dist/middlewares/query.js +32 -37
  435. package/dist/middlewares/query.js.map +1 -1
  436. package/dist/middlewares/query.mjs +38 -0
  437. package/dist/middlewares/query.mjs.map +1 -0
  438. package/dist/middlewares/response-time.js +8 -9
  439. package/dist/middlewares/response-time.js.map +1 -1
  440. package/dist/middlewares/response-time.mjs +12 -0
  441. package/dist/middlewares/response-time.mjs.map +1 -0
  442. package/dist/middlewares/responses.js +11 -12
  443. package/dist/middlewares/responses.js.map +1 -1
  444. package/dist/middlewares/responses.mjs +15 -0
  445. package/dist/middlewares/responses.mjs.map +1 -0
  446. package/dist/middlewares/security.js +44 -46
  447. package/dist/middlewares/security.js.map +1 -1
  448. package/dist/middlewares/security.mjs +48 -0
  449. package/dist/middlewares/security.mjs.map +1 -0
  450. package/dist/middlewares/session.js +24 -24
  451. package/dist/middlewares/session.js.map +1 -1
  452. package/dist/middlewares/session.mjs +28 -0
  453. package/dist/middlewares/session.mjs.map +1 -0
  454. package/dist/migrations/draft-publish.js +27 -36
  455. package/dist/migrations/draft-publish.js.map +1 -1
  456. package/dist/migrations/draft-publish.mjs +37 -0
  457. package/dist/migrations/draft-publish.mjs.map +1 -0
  458. package/dist/services/auth/index.js +74 -77
  459. package/dist/services/auth/index.js.map +1 -1
  460. package/dist/services/auth/index.mjs +80 -0
  461. package/dist/services/auth/index.mjs.map +1 -0
  462. package/dist/services/content-api/index.js +54 -57
  463. package/dist/services/content-api/index.js.map +1 -1
  464. package/dist/services/content-api/index.mjs +58 -0
  465. package/dist/services/content-api/index.mjs.map +1 -0
  466. package/dist/services/content-api/permissions/engine.js +6 -7
  467. package/dist/services/content-api/permissions/engine.js.map +1 -1
  468. package/dist/services/content-api/permissions/engine.mjs +6 -0
  469. package/dist/services/content-api/permissions/engine.mjs.map +1 -0
  470. package/dist/services/content-api/permissions/index.js +79 -102
  471. package/dist/services/content-api/permissions/index.js.map +1 -1
  472. package/dist/services/content-api/permissions/index.mjs +86 -0
  473. package/dist/services/content-api/permissions/index.mjs.map +1 -0
  474. package/dist/services/content-api/permissions/providers/action.js +14 -14
  475. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  476. package/dist/services/content-api/permissions/providers/action.mjs +17 -0
  477. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -0
  478. package/dist/services/content-api/permissions/providers/condition.js +14 -14
  479. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  480. package/dist/services/content-api/permissions/providers/condition.mjs +17 -0
  481. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -0
  482. package/dist/services/core-store.js +91 -111
  483. package/dist/services/core-store.js.map +1 -1
  484. package/dist/services/core-store.mjs +103 -0
  485. package/dist/services/core-store.mjs.map +1 -0
  486. package/dist/services/cron.js +60 -66
  487. package/dist/services/cron.js.map +1 -1
  488. package/dist/services/cron.mjs +64 -0
  489. package/dist/services/cron.mjs.map +1 -0
  490. package/dist/services/custom-fields.js +7 -8
  491. package/dist/services/custom-fields.js.map +1 -1
  492. package/dist/services/custom-fields.mjs +11 -0
  493. package/dist/services/custom-fields.mjs.map +1 -0
  494. package/dist/services/entity-service/attributes/index.js +17 -21
  495. package/dist/services/entity-service/attributes/index.js.map +1 -1
  496. package/dist/services/entity-service/attributes/index.mjs +22 -0
  497. package/dist/services/entity-service/attributes/index.mjs.map +1 -0
  498. package/dist/services/entity-service/attributes/transforms.js +17 -19
  499. package/dist/services/entity-service/attributes/transforms.js.map +1 -1
  500. package/dist/services/entity-service/attributes/transforms.mjs +19 -0
  501. package/dist/services/entity-service/attributes/transforms.mjs.map +1 -0
  502. package/dist/services/entity-service/components.js +336 -333
  503. package/dist/services/entity-service/components.js.map +1 -1
  504. package/dist/services/entity-service/components.mjs +382 -0
  505. package/dist/services/entity-service/components.mjs.map +1 -0
  506. package/dist/services/entity-service/index.js +314 -297
  507. package/dist/services/entity-service/index.js.map +1 -1
  508. package/dist/services/entity-service/index.mjs +326 -0
  509. package/dist/services/entity-service/index.mjs.map +1 -0
  510. package/dist/services/entity-service/params.js +4 -5
  511. package/dist/services/entity-service/params.js.map +1 -1
  512. package/dist/services/entity-service/params.mjs +8 -0
  513. package/dist/services/entity-service/params.mjs.map +1 -0
  514. package/dist/services/entity-validator/blocks-validator.js +95 -116
  515. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  516. package/dist/services/entity-validator/blocks-validator.mjs +108 -0
  517. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -0
  518. package/dist/services/entity-validator/index.js +284 -297
  519. package/dist/services/entity-validator/index.js.map +1 -1
  520. package/dist/services/entity-validator/index.mjs +318 -0
  521. package/dist/services/entity-validator/index.mjs.map +1 -0
  522. package/dist/services/entity-validator/validators.js +92 -124
  523. package/dist/services/entity-validator/validators.js.map +1 -1
  524. package/dist/services/entity-validator/validators.mjs +115 -0
  525. package/dist/services/entity-validator/validators.mjs.map +1 -0
  526. package/dist/services/errors.js +64 -66
  527. package/dist/services/errors.js.map +1 -1
  528. package/dist/services/errors.mjs +74 -0
  529. package/dist/services/errors.mjs.map +1 -0
  530. package/dist/services/event-hub.js +64 -74
  531. package/dist/services/event-hub.js.map +1 -1
  532. package/dist/services/event-hub.mjs +68 -0
  533. package/dist/services/event-hub.mjs.map +1 -0
  534. package/dist/services/fs.js +48 -51
  535. package/dist/services/fs.js.map +1 -1
  536. package/dist/services/fs.mjs +49 -0
  537. package/dist/services/fs.mjs.map +1 -0
  538. package/dist/services/metrics/admin-user-hash.js +10 -15
  539. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  540. package/dist/services/metrics/admin-user-hash.mjs +12 -0
  541. package/dist/services/metrics/admin-user-hash.mjs.map +1 -0
  542. package/dist/services/metrics/index.js +40 -48
  543. package/dist/services/metrics/index.js.map +1 -1
  544. package/dist/services/metrics/index.mjs +46 -0
  545. package/dist/services/metrics/index.mjs.map +1 -0
  546. package/dist/services/metrics/is-truthy.js +6 -8
  547. package/dist/services/metrics/is-truthy.js.map +1 -1
  548. package/dist/services/metrics/is-truthy.mjs +8 -0
  549. package/dist/services/metrics/is-truthy.mjs.map +1 -0
  550. package/dist/services/metrics/middleware.js +22 -25
  551. package/dist/services/metrics/middleware.js.map +1 -1
  552. package/dist/services/metrics/middleware.mjs +26 -0
  553. package/dist/services/metrics/middleware.mjs.map +1 -0
  554. package/dist/services/metrics/rate-limiter.js +19 -19
  555. package/dist/services/metrics/rate-limiter.js.map +1 -1
  556. package/dist/services/metrics/rate-limiter.mjs +22 -0
  557. package/dist/services/metrics/rate-limiter.mjs.map +1 -0
  558. package/dist/services/metrics/sender.js +69 -72
  559. package/dist/services/metrics/sender.js.map +1 -1
  560. package/dist/services/metrics/sender.mjs +71 -0
  561. package/dist/services/metrics/sender.mjs.map +1 -0
  562. package/dist/services/request-context.js +10 -11
  563. package/dist/services/request-context.js.map +1 -1
  564. package/dist/services/request-context.mjs +14 -0
  565. package/dist/services/request-context.mjs.map +1 -0
  566. package/dist/services/server/admin-api.js +9 -9
  567. package/dist/services/server/admin-api.js.map +1 -1
  568. package/dist/services/server/admin-api.mjs +13 -0
  569. package/dist/services/server/admin-api.mjs.map +1 -0
  570. package/dist/services/server/api.js +26 -28
  571. package/dist/services/server/api.js.map +1 -1
  572. package/dist/services/server/api.mjs +28 -0
  573. package/dist/services/server/api.mjs.map +1 -0
  574. package/dist/services/server/compose-endpoint.js +94 -100
  575. package/dist/services/server/compose-endpoint.js.map +1 -1
  576. package/dist/services/server/compose-endpoint.mjs +114 -0
  577. package/dist/services/server/compose-endpoint.mjs.map +1 -0
  578. package/dist/services/server/content-api.js +8 -9
  579. package/dist/services/server/content-api.js.map +1 -1
  580. package/dist/services/server/content-api.mjs +12 -0
  581. package/dist/services/server/content-api.mjs.map +1 -0
  582. package/dist/services/server/http-server.js +42 -47
  583. package/dist/services/server/http-server.js.map +1 -1
  584. package/dist/services/server/http-server.mjs +47 -0
  585. package/dist/services/server/http-server.mjs.map +1 -0
  586. package/dist/services/server/index.js +82 -85
  587. package/dist/services/server/index.js.map +1 -1
  588. package/dist/services/server/index.mjs +86 -0
  589. package/dist/services/server/index.mjs.map +1 -0
  590. package/dist/services/server/koa.js +46 -50
  591. package/dist/services/server/koa.js.map +1 -1
  592. package/dist/services/server/koa.mjs +48 -0
  593. package/dist/services/server/koa.mjs.map +1 -0
  594. package/dist/services/server/middleware.js +80 -91
  595. package/dist/services/server/middleware.js.map +1 -1
  596. package/dist/services/server/middleware.mjs +90 -0
  597. package/dist/services/server/middleware.mjs.map +1 -0
  598. package/dist/services/server/policy.js +16 -17
  599. package/dist/services/server/policy.js.map +1 -1
  600. package/dist/services/server/policy.mjs +20 -0
  601. package/dist/services/server/policy.mjs.map +1 -0
  602. package/dist/services/server/register-middlewares.js +58 -68
  603. package/dist/services/server/register-middlewares.js.map +1 -1
  604. package/dist/services/server/register-middlewares.mjs +73 -0
  605. package/dist/services/server/register-middlewares.mjs.map +1 -0
  606. package/dist/services/server/register-routes.js +64 -82
  607. package/dist/services/server/register-routes.js.map +1 -1
  608. package/dist/services/server/register-routes.mjs +75 -0
  609. package/dist/services/server/register-routes.mjs.map +1 -0
  610. package/dist/services/server/routing.js +80 -94
  611. package/dist/services/server/routing.js.map +1 -1
  612. package/dist/services/server/routing.mjs +89 -0
  613. package/dist/services/server/routing.mjs.map +1 -0
  614. package/dist/services/utils/dynamic-zones.js +13 -10
  615. package/dist/services/utils/dynamic-zones.js.map +1 -1
  616. package/dist/services/utils/dynamic-zones.mjs +17 -0
  617. package/dist/services/utils/dynamic-zones.mjs.map +1 -0
  618. package/dist/services/utils/upload-files.js +59 -68
  619. package/dist/services/utils/upload-files.js.map +1 -1
  620. package/dist/services/utils/upload-files.mjs +63 -0
  621. package/dist/services/utils/upload-files.mjs.map +1 -0
  622. package/dist/services/webhook-runner.js +122 -130
  623. package/dist/services/webhook-runner.js.map +1 -1
  624. package/dist/services/webhook-runner.mjs +131 -0
  625. package/dist/services/webhook-runner.mjs.map +1 -0
  626. package/dist/services/webhook-store.js +87 -93
  627. package/dist/services/webhook-store.js.map +1 -1
  628. package/dist/services/webhook-store.mjs +100 -0
  629. package/dist/services/webhook-store.mjs.map +1 -0
  630. package/dist/services/worker-queue.js +49 -57
  631. package/dist/services/worker-queue.js.map +1 -1
  632. package/dist/services/worker-queue.mjs +55 -0
  633. package/dist/services/worker-queue.mjs.map +1 -0
  634. package/dist/utils/addSlash.js +13 -13
  635. package/dist/utils/addSlash.js.map +1 -1
  636. package/dist/utils/convert-custom-field-type.js +19 -16
  637. package/dist/utils/convert-custom-field-type.js.map +1 -1
  638. package/dist/utils/convert-custom-field-type.mjs +24 -0
  639. package/dist/utils/convert-custom-field-type.mjs.map +1 -0
  640. package/dist/utils/cron.js +29 -47
  641. package/dist/utils/cron.js.map +1 -1
  642. package/dist/utils/cron.mjs +38 -0
  643. package/dist/utils/cron.mjs.map +1 -0
  644. package/dist/utils/ee.js +3 -7
  645. package/dist/utils/ee.js.map +1 -1
  646. package/dist/utils/ee.mjs +5 -0
  647. package/dist/utils/ee.mjs.map +1 -0
  648. package/dist/utils/fetch.js +17 -19
  649. package/dist/utils/fetch.js.map +1 -1
  650. package/dist/utils/fetch.mjs +19 -0
  651. package/dist/utils/fetch.mjs.map +1 -0
  652. package/dist/utils/get-dirs.js +26 -27
  653. package/dist/utils/get-dirs.js.map +1 -1
  654. package/dist/utils/get-dirs.mjs +30 -0
  655. package/dist/utils/get-dirs.mjs.map +1 -0
  656. package/dist/utils/is-initialized.js +11 -17
  657. package/dist/utils/is-initialized.js.map +1 -1
  658. package/dist/utils/is-initialized.mjs +16 -0
  659. package/dist/utils/is-initialized.mjs.map +1 -0
  660. package/dist/utils/lifecycles.js +7 -7
  661. package/dist/utils/lifecycles.js.map +1 -1
  662. package/dist/utils/lifecycles.mjs +9 -0
  663. package/dist/utils/lifecycles.mjs.map +1 -0
  664. package/dist/utils/machine-id.js +12 -13
  665. package/dist/utils/machine-id.js.map +1 -1
  666. package/dist/utils/machine-id.mjs +15 -0
  667. package/dist/utils/machine-id.mjs.map +1 -0
  668. package/dist/utils/open-browser.js +8 -10
  669. package/dist/utils/open-browser.js.map +1 -1
  670. package/dist/utils/open-browser.mjs +10 -0
  671. package/dist/utils/open-browser.mjs.map +1 -0
  672. package/dist/utils/signals.js +13 -16
  673. package/dist/utils/signals.js.map +1 -1
  674. package/dist/utils/signals.mjs +17 -0
  675. package/dist/utils/signals.mjs.map +1 -0
  676. package/dist/utils/startup-logger.js +73 -66
  677. package/dist/utils/startup-logger.js.map +1 -1
  678. package/dist/utils/startup-logger.mjs +72 -0
  679. package/dist/utils/startup-logger.mjs.map +1 -0
  680. package/dist/utils/update-notifier/index.js +69 -72
  681. package/dist/utils/update-notifier/index.js.map +1 -1
  682. package/dist/utils/update-notifier/index.mjs +76 -0
  683. package/dist/utils/update-notifier/index.mjs.map +1 -0
  684. package/package.json +26 -25
  685. package/dist/commands/builders/index.js +0 -11
  686. package/dist/commands/builders/index.js.map +0 -1
  687. package/dist/commands/types.js +0 -3
  688. package/dist/commands/types.js.map +0 -1
  689. package/dist/load/index.js +0 -11
  690. package/dist/load/index.js.map +0 -1
  691. package/dist/services/content-api/permissions/providers/index.js +0 -11
  692. package/dist/services/content-api/permissions/providers/index.js.map +0 -1
  693. package/dist/utils/index.js +0 -13
  694. package/dist/utils/index.js.map +0 -1
  695. package/dist/utils/postinstall.js +0 -32
  696. package/dist/utils/postinstall.js.map +0 -1
  697. package/index.js +0 -5
@@ -1,311 +1,328 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const lodash_1 = __importDefault(require("lodash"));
7
- const delegates_1 = __importDefault(require("delegates"));
8
- const database_1 = require("@strapi/database");
9
- const utils_1 = require("@strapi/utils");
10
- const upload_files_1 = __importDefault(require("../utils/upload-files"));
11
- const components_1 = require("./components");
12
- const params_1 = require("./params");
13
- const attributes_1 = require("./attributes");
14
- const { transformParamsToQuery } = utils_1.convertQueryParams;
15
- const transformLoadParamsToQuery = (uid, field, params, pagination = {}) => {
16
- const query = transformParamsToQuery(uid, { populate: { [field]: params } });
17
- const res = {
18
- ...query.populate[field],
19
- ...pagination,
20
- };
21
- return res;
2
+ const _ = require("lodash");
3
+ const delegate = require("delegates");
4
+ const database = require("@strapi/database");
5
+ const strapiUtils = require("@strapi/utils");
6
+ const uploadFiles = require("../utils/upload-files.js");
7
+ const components = require("./components.js");
8
+ const params = require("./params.js");
9
+ const index = require("./attributes/index.js");
10
+ const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
11
+ const ___default = /* @__PURE__ */ _interopDefault(_);
12
+ const delegate__default = /* @__PURE__ */ _interopDefault(delegate);
13
+ const { transformParamsToQuery } = strapiUtils.convertQueryParams;
14
+ const transformLoadParamsToQuery = (uid, field, params2, pagination = {}) => {
15
+ const query = transformParamsToQuery(uid, { populate: { [field]: params2 } });
16
+ const res = {
17
+ ...query.populate[field],
18
+ ...pagination
19
+ };
20
+ return res;
22
21
  };
23
22
  const databaseErrorsToTransform = [
24
- database_1.errors.InvalidTimeError,
25
- database_1.errors.InvalidDateTimeError,
26
- database_1.errors.InvalidDateError,
27
- database_1.errors.InvalidRelationError,
23
+ database.errors.InvalidTimeError,
24
+ database.errors.InvalidDateTimeError,
25
+ database.errors.InvalidDateError,
26
+ database.errors.InvalidRelationError
28
27
  ];
29
28
  const creationPipeline = (data, context) => {
30
- return (0, attributes_1.applyTransforms)(data, context);
29
+ return index.applyTransforms(data, context);
31
30
  };
32
31
  const updatePipeline = (data, context) => {
33
- return (0, attributes_1.applyTransforms)(data, context);
32
+ return index.applyTransforms(data, context);
34
33
  };
35
34
  const ALLOWED_WEBHOOK_EVENTS = {
36
- ENTRY_CREATE: 'entry.create',
37
- ENTRY_UPDATE: 'entry.update',
38
- ENTRY_DELETE: 'entry.delete',
35
+ ENTRY_CREATE: "entry.create",
36
+ ENTRY_UPDATE: "entry.update",
37
+ ENTRY_DELETE: "entry.delete"
39
38
  };
40
- const createDefaultImplementation = ({ strapi, db, eventHub, entityValidator, }) => ({
41
- /**
42
- * Upload files utility
43
- */
44
- uploadFiles: upload_files_1.default,
45
- async wrapParams(options = {}) {
46
- return options;
47
- },
48
- async wrapResult(result = {}) {
49
- return result;
50
- },
51
- async emitEvent(uid, event, entity) {
52
- // Ignore audit log events to prevent infinite loops
53
- if (uid === 'admin::audit-log') {
54
- return;
55
- }
56
- const model = strapi.getModel(uid);
57
- const sanitizedEntity = await utils_1.sanitize.sanitizers.defaultSanitizeOutput(model, entity);
58
- eventHub.emit(event, {
59
- model: model.modelName,
60
- uid: model.uid,
61
- entry: sanitizedEntity,
62
- });
63
- },
64
- async findMany(uid, opts) {
65
- const { kind } = strapi.getModel(uid);
66
- const wrappedParams = await this.wrapParams(opts, { uid, action: 'findMany' });
67
- const query = transformParamsToQuery(uid, wrappedParams);
68
- if (kind === 'singleType') {
69
- const entity = db.query(uid).findOne(query);
70
- return this.wrapResult(entity, { uid, action: 'findOne' });
71
- }
72
- const entities = await db.query(uid).findMany(query);
73
- return this.wrapResult(entities, { uid, action: 'findMany' });
74
- },
75
- async findPage(uid, opts) {
76
- const wrappedParams = await this.wrapParams(opts, { uid, action: 'findPage' });
77
- const query = transformParamsToQuery(uid, wrappedParams);
78
- const page = await db.query(uid).findPage(query);
79
- return {
80
- ...page,
81
- results: await this.wrapResult(page.results, { uid, action: 'findPage' }),
82
- };
83
- },
84
- // TODO: streamline the logic based on the populate option
85
- async findWithRelationCountsPage(uid, opts) {
86
- const wrappedParams = await this.wrapParams(opts, { uid, action: 'findWithRelationCounts' });
87
- const query = transformParamsToQuery(uid, wrappedParams);
88
- const entities = await db.query(uid).findPage(query);
89
- return {
90
- ...entities,
91
- results: await this.wrapResult(entities.results, { uid, action: 'findWithRelationCounts' }),
92
- };
93
- },
94
- async findWithRelationCounts(uid, opts) {
95
- const wrappedParams = await this.wrapParams(opts, { uid, action: 'findWithRelationCounts' });
96
- const query = transformParamsToQuery(uid, wrappedParams);
97
- const entities = await db.query(uid).findMany(query);
98
- return this.wrapResult(entities, { uid, action: 'findWithRelationCounts' });
99
- },
100
- async findOne(uid, entityId, opts) {
101
- const wrappedParams = await this.wrapParams(opts, { uid, action: 'findOne' });
102
- const query = transformParamsToQuery(uid, (0, params_1.pickSelectionParams)(wrappedParams));
103
- const entity = await db.query(uid).findOne({ ...query, where: { id: entityId } });
104
- return this.wrapResult(entity, { uid, action: 'findOne' });
105
- },
106
- async count(uid, opts) {
107
- const wrappedParams = await this.wrapParams(opts, { uid, action: 'count' });
108
- const query = transformParamsToQuery(uid, wrappedParams);
109
- return db.query(uid).count(query);
110
- },
111
- async create(uid, params) {
112
- const wrappedParams = await this.wrapParams(params, { uid, action: 'create' });
113
- const { data, files } = wrappedParams;
114
- if (!data) {
115
- throw new Error('cannot create');
116
- }
117
- const model = strapi.getModel(uid);
118
- const isDraft = utils_1.contentTypes.isDraft(data, model);
119
- const validData = await entityValidator.validateEntityCreation(model, data, { isDraft });
120
- // select / populate
121
- const query = transformParamsToQuery(uid, (0, params_1.pickSelectionParams)(wrappedParams));
122
- // TODO: wrap into transaction
123
- const componentData = await (0, components_1.createComponents)(uid, validData);
124
- const entityData = creationPipeline(Object.assign((0, components_1.omitComponentData)(model, validData), componentData), {
125
- contentType: model,
126
- });
127
- let entity = await db.query(uid).create({
128
- ...query,
129
- data: entityData,
130
- });
131
- // TODO: do all of this in a transaction to avoid a race condition where entity is created then deleted before we do findOne again
132
- // TODO: upload the files then set the links in the entity like with compo to avoid making too many queries
133
- if (files && Object.keys(files).length > 0) {
134
- await this.uploadFiles(uid, Object.assign(entityData, entity), files);
135
- entity = await this.findOne(uid, entity.id, wrappedParams);
136
- }
137
- entity = await this.wrapResult(entity, { uid, action: 'create' });
138
- const { ENTRY_CREATE } = ALLOWED_WEBHOOK_EVENTS;
139
- await this.emitEvent(uid, ENTRY_CREATE, entity);
140
- return entity;
141
- },
142
- async update(uid, entityId, opts) {
143
- const wrappedParams = await this.wrapParams(opts, {
144
- uid,
145
- action: 'update',
146
- });
147
- const { data, files } = wrappedParams;
148
- const model = strapi.getModel(uid);
149
- const entityToUpdate = await db.query(uid).findOne({ where: { id: entityId } });
150
- if (!entityToUpdate) {
151
- return null;
152
- }
153
- const isDraft = utils_1.contentTypes.isDraft(entityToUpdate, model);
154
- const validData = await entityValidator.validateEntityUpdate(model, data, {
155
- isDraft,
156
- }, entityToUpdate);
157
- const query = transformParamsToQuery(uid, (0, params_1.pickSelectionParams)(wrappedParams));
158
- // TODO: wrap in transaction
159
- const componentData = await (0, components_1.updateComponents)(uid, entityToUpdate, validData);
160
- const entityData = updatePipeline(Object.assign((0, components_1.omitComponentData)(model, validData), componentData), { contentType: model });
161
- let entity = await db.query(uid).update({
162
- ...query,
163
- where: { id: entityId },
164
- data: entityData,
165
- });
166
- // TODO: upload the files then set the links in the entity like with compo to avoid making too many queries
167
- if (files && Object.keys(files).length > 0) {
168
- await this.uploadFiles(uid, Object.assign(entityData, entity), files);
169
- entity = await this.findOne(uid, entity.id, wrappedParams);
170
- }
171
- entity = await this.wrapResult(entity, { uid, action: 'update' });
172
- const { ENTRY_UPDATE } = ALLOWED_WEBHOOK_EVENTS;
173
- await this.emitEvent(uid, ENTRY_UPDATE, entity);
174
- return entity;
175
- },
176
- async delete(uid, entityId, opts) {
177
- const wrappedParams = await this.wrapParams(opts, { uid, action: 'delete' });
178
- // select / populate
179
- const query = transformParamsToQuery(uid, (0, params_1.pickSelectionParams)(wrappedParams));
180
- let entityToDelete = await db.query(uid).findOne({
181
- ...query,
182
- where: { id: entityId },
183
- });
184
- if (!entityToDelete) {
185
- return null;
186
- }
187
- const componentsToDelete = await (0, components_1.getComponents)(uid, entityToDelete);
188
- await db.query(uid).delete({ where: { id: entityToDelete.id } });
189
- await (0, components_1.deleteComponents)(uid, componentsToDelete, { loadComponents: false });
190
- entityToDelete = await this.wrapResult(entityToDelete, { uid, action: 'delete' });
191
- const { ENTRY_DELETE } = ALLOWED_WEBHOOK_EVENTS;
192
- await this.emitEvent(uid, ENTRY_DELETE, entityToDelete);
193
- return entityToDelete;
194
- },
195
- async clone(uid, cloneId, opts) {
196
- const wrappedParams = await this.wrapParams(opts, { uid, action: 'clone' });
197
- const { data, files } = wrappedParams;
198
- if (!data) {
199
- throw new Error('cannot clone');
200
- }
201
- const model = strapi.getModel(uid);
202
- const entityToClone = await db.query(uid).findOne({ where: { id: cloneId } });
203
- if (!entityToClone) {
204
- return null;
205
- }
206
- const isDraft = utils_1.contentTypes.isDraft(entityToClone, model);
207
- const validData = await entityValidator.validateEntityUpdate(model,
208
- // Omit the id, the cloned entity id will be generated by the database
209
- lodash_1.default.omit(data, ['id']), { isDraft }, entityToClone);
210
- const query = transformParamsToQuery(uid, (0, params_1.pickSelectionParams)(wrappedParams));
211
- // TODO: wrap into transaction
212
- const componentData = await (0, components_1.cloneComponents)(uid, entityToClone, validData);
213
- const entityData = creationPipeline(Object.assign((0, components_1.omitComponentData)(model, validData), componentData), {
214
- contentType: model,
215
- });
216
- let entity = await db.query(uid).clone(cloneId, {
217
- ...query,
218
- data: entityData,
219
- });
220
- // TODO: upload the files then set the links in the entity like with compo to avoid making too many queries
221
- if (files && Object.keys(files).length > 0) {
222
- await this.uploadFiles(uid, Object.assign(entityData, entity), files);
223
- entity = await this.findOne(uid, entity.id, wrappedParams);
224
- }
225
- const { ENTRY_CREATE } = ALLOWED_WEBHOOK_EVENTS;
226
- await this.emitEvent(uid, ENTRY_CREATE, entity);
227
- return entity;
228
- },
229
- // FIXME: used only for the CM to be removed
230
- async deleteMany(uid, opts) {
231
- const wrappedParams = await this.wrapParams(opts, { uid, action: 'delete' });
232
- // select / populate
233
- const query = transformParamsToQuery(uid, wrappedParams);
234
- let entitiesToDelete = await db.query(uid).findMany(query);
235
- if (!entitiesToDelete.length) {
236
- return { count: 0 };
237
- }
238
- const componentsToDelete = await Promise.all(entitiesToDelete.map((entityToDelete) => (0, components_1.getComponents)(uid, entityToDelete)));
239
- const deletedEntities = await db.query(uid).deleteMany(query);
240
- await Promise.all(componentsToDelete.map((compos) => (0, components_1.deleteComponents)(uid, compos, { loadComponents: false })));
241
- entitiesToDelete = await this.wrapResult(entitiesToDelete, { uid, action: 'delete' });
242
- // Trigger webhooks. One for each entity
243
- const { ENTRY_DELETE } = ALLOWED_WEBHOOK_EVENTS;
244
- await Promise.all(entitiesToDelete.map((entity) => this.emitEvent(uid, ENTRY_DELETE, entity)));
245
- return deletedEntities;
246
- },
247
- async load(uid, entity, field, params) {
248
- if (!lodash_1.default.isString(field)) {
249
- throw new Error(`Invalid load. Expected "${field}" to be a string`);
250
- }
251
- const loadedEntity = await db
252
- .query(uid)
253
- .load(entity, field, transformLoadParamsToQuery(uid, field, params ?? {}));
254
- return this.wrapResult(loadedEntity, { uid, field, action: 'load' });
255
- },
256
- async loadPages(uid, entity, field, params, pagination = {}) {
257
- if (!lodash_1.default.isString(field)) {
258
- throw new Error(`Invalid load. Expected "${field}" to be a string`);
259
- }
260
- const { attributes } = strapi.getModel(uid);
261
- const attribute = attributes[field];
262
- if (!utils_1.relations.isAnyToMany(attribute)) {
263
- throw new Error(`Invalid load. Expected "${field}" to be an anyToMany relational attribute`);
264
- }
265
- const query = transformLoadParamsToQuery(uid, field, params ?? {}, pagination);
266
- const loadedPage = await db.query(uid).loadPages(entity, field, query);
267
- return {
268
- ...loadedPage,
269
- results: await this.wrapResult(loadedPage.results, { uid, field, action: 'load' }),
270
- };
271
- },
272
- });
273
- exports.default = (ctx) => {
274
- Object.entries(ALLOWED_WEBHOOK_EVENTS).forEach(([key, value]) => {
275
- ctx.strapi.webhookStore?.addAllowedEvent(key, value);
39
+ const createDefaultImplementation = ({
40
+ strapi,
41
+ db,
42
+ eventHub,
43
+ entityValidator
44
+ }) => ({
45
+ /**
46
+ * Upload files utility
47
+ */
48
+ uploadFiles,
49
+ async wrapParams(options = {}) {
50
+ return options;
51
+ },
52
+ async wrapResult(result = {}) {
53
+ return result;
54
+ },
55
+ async emitEvent(uid, event, entity) {
56
+ if (uid === "admin::audit-log") {
57
+ return;
58
+ }
59
+ const model = strapi.getModel(uid);
60
+ const sanitizedEntity = await strapiUtils.sanitize.sanitizers.defaultSanitizeOutput(model, entity);
61
+ eventHub.emit(event, {
62
+ model: model.modelName,
63
+ uid: model.uid,
64
+ entry: sanitizedEntity
276
65
  });
277
- const implementation = createDefaultImplementation(ctx);
278
- const service = {
279
- implementation,
280
- decorate(decorator) {
281
- if (typeof decorator !== 'function') {
282
- throw new Error(`Decorator must be a function, received ${typeof decorator}`);
283
- }
284
- this.implementation = { ...this.implementation, ...decorator(this.implementation) };
285
- return this;
286
- },
66
+ },
67
+ async findMany(uid, opts) {
68
+ const { kind } = strapi.getModel(uid);
69
+ const wrappedParams = await this.wrapParams(opts, { uid, action: "findMany" });
70
+ const query = transformParamsToQuery(uid, wrappedParams);
71
+ if (kind === "singleType") {
72
+ const entity = db.query(uid).findOne(query);
73
+ return this.wrapResult(entity, { uid, action: "findOne" });
74
+ }
75
+ const entities = await db.query(uid).findMany(query);
76
+ return this.wrapResult(entities, { uid, action: "findMany" });
77
+ },
78
+ async findPage(uid, opts) {
79
+ const wrappedParams = await this.wrapParams(opts, { uid, action: "findPage" });
80
+ const query = transformParamsToQuery(uid, wrappedParams);
81
+ const page = await db.query(uid).findPage(query);
82
+ return {
83
+ ...page,
84
+ results: await this.wrapResult(page.results, { uid, action: "findPage" })
287
85
  };
288
- const delegator = (0, delegates_1.default)(service, 'implementation');
289
- // delegate every method in implementation
290
- Object.keys(service.implementation).forEach((key) => delegator.method(key));
291
- // wrap methods to handle Database Errors
292
- service.decorate((oldService) => {
293
- const newService = lodash_1.default.mapValues(oldService, (method, methodName) => async function (...args) {
294
- try {
295
- return await oldService[methodName].call(this, ...args);
296
- }
297
- catch (error) {
298
- if (databaseErrorsToTransform.some((errorToTransform) => error instanceof errorToTransform)) {
299
- if (error instanceof Error) {
300
- throw new utils_1.errors.ValidationError(error.message);
301
- }
302
- throw error;
303
- }
304
- throw error;
305
- }
306
- });
307
- return newService;
86
+ },
87
+ // TODO: streamline the logic based on the populate option
88
+ async findWithRelationCountsPage(uid, opts) {
89
+ const wrappedParams = await this.wrapParams(opts, { uid, action: "findWithRelationCounts" });
90
+ const query = transformParamsToQuery(uid, wrappedParams);
91
+ const entities = await db.query(uid).findPage(query);
92
+ return {
93
+ ...entities,
94
+ results: await this.wrapResult(entities.results, { uid, action: "findWithRelationCounts" })
95
+ };
96
+ },
97
+ async findWithRelationCounts(uid, opts) {
98
+ const wrappedParams = await this.wrapParams(opts, { uid, action: "findWithRelationCounts" });
99
+ const query = transformParamsToQuery(uid, wrappedParams);
100
+ const entities = await db.query(uid).findMany(query);
101
+ return this.wrapResult(entities, { uid, action: "findWithRelationCounts" });
102
+ },
103
+ async findOne(uid, entityId, opts) {
104
+ const wrappedParams = await this.wrapParams(opts, { uid, action: "findOne" });
105
+ const query = transformParamsToQuery(uid, params.pickSelectionParams(wrappedParams));
106
+ const entity = await db.query(uid).findOne({ ...query, where: { id: entityId } });
107
+ return this.wrapResult(entity, { uid, action: "findOne" });
108
+ },
109
+ async count(uid, opts) {
110
+ const wrappedParams = await this.wrapParams(opts, { uid, action: "count" });
111
+ const query = transformParamsToQuery(uid, wrappedParams);
112
+ return db.query(uid).count(query);
113
+ },
114
+ async create(uid, params$1) {
115
+ const wrappedParams = await this.wrapParams(params$1, { uid, action: "create" });
116
+ const { data, files } = wrappedParams;
117
+ if (!data) {
118
+ throw new Error("cannot create");
119
+ }
120
+ const model = strapi.getModel(uid);
121
+ const isDraft = strapiUtils.contentTypes.isDraft(data, model);
122
+ const validData = await entityValidator.validateEntityCreation(model, data, { isDraft });
123
+ const query = transformParamsToQuery(uid, params.pickSelectionParams(wrappedParams));
124
+ const componentData = await components.createComponents(uid, validData);
125
+ const entityData = creationPipeline(
126
+ Object.assign(components.omitComponentData(model, validData), componentData),
127
+ {
128
+ contentType: model
129
+ }
130
+ );
131
+ let entity = await db.query(uid).create({
132
+ ...query,
133
+ data: entityData
134
+ });
135
+ if (files && Object.keys(files).length > 0) {
136
+ await this.uploadFiles(uid, Object.assign(entityData, entity), files);
137
+ entity = await this.findOne(uid, entity.id, wrappedParams);
138
+ }
139
+ entity = await this.wrapResult(entity, { uid, action: "create" });
140
+ const { ENTRY_CREATE } = ALLOWED_WEBHOOK_EVENTS;
141
+ await this.emitEvent(uid, ENTRY_CREATE, entity);
142
+ return entity;
143
+ },
144
+ async update(uid, entityId, opts) {
145
+ const wrappedParams = await this.wrapParams(opts, {
146
+ uid,
147
+ action: "update"
308
148
  });
309
- return service;
149
+ const { data, files } = wrappedParams;
150
+ const model = strapi.getModel(uid);
151
+ const entityToUpdate = await db.query(uid).findOne({ where: { id: entityId } });
152
+ if (!entityToUpdate) {
153
+ return null;
154
+ }
155
+ const isDraft = strapiUtils.contentTypes.isDraft(entityToUpdate, model);
156
+ const validData = await entityValidator.validateEntityUpdate(
157
+ model,
158
+ data,
159
+ {
160
+ isDraft
161
+ },
162
+ entityToUpdate
163
+ );
164
+ const query = transformParamsToQuery(uid, params.pickSelectionParams(wrappedParams));
165
+ const componentData = await components.updateComponents(uid, entityToUpdate, validData);
166
+ const entityData = updatePipeline(
167
+ Object.assign(components.omitComponentData(model, validData), componentData),
168
+ { contentType: model }
169
+ );
170
+ let entity = await db.query(uid).update({
171
+ ...query,
172
+ where: { id: entityId },
173
+ data: entityData
174
+ });
175
+ if (files && Object.keys(files).length > 0) {
176
+ await this.uploadFiles(uid, Object.assign(entityData, entity), files);
177
+ entity = await this.findOne(uid, entity.id, wrappedParams);
178
+ }
179
+ entity = await this.wrapResult(entity, { uid, action: "update" });
180
+ const { ENTRY_UPDATE } = ALLOWED_WEBHOOK_EVENTS;
181
+ await this.emitEvent(uid, ENTRY_UPDATE, entity);
182
+ return entity;
183
+ },
184
+ async delete(uid, entityId, opts) {
185
+ const wrappedParams = await this.wrapParams(opts, { uid, action: "delete" });
186
+ const query = transformParamsToQuery(uid, params.pickSelectionParams(wrappedParams));
187
+ let entityToDelete = await db.query(uid).findOne({
188
+ ...query,
189
+ where: { id: entityId }
190
+ });
191
+ if (!entityToDelete) {
192
+ return null;
193
+ }
194
+ const componentsToDelete = await components.getComponents(uid, entityToDelete);
195
+ await db.query(uid).delete({ where: { id: entityToDelete.id } });
196
+ await components.deleteComponents(uid, componentsToDelete, { loadComponents: false });
197
+ entityToDelete = await this.wrapResult(entityToDelete, { uid, action: "delete" });
198
+ const { ENTRY_DELETE } = ALLOWED_WEBHOOK_EVENTS;
199
+ await this.emitEvent(uid, ENTRY_DELETE, entityToDelete);
200
+ return entityToDelete;
201
+ },
202
+ async clone(uid, cloneId, opts) {
203
+ const wrappedParams = await this.wrapParams(opts, { uid, action: "clone" });
204
+ const { data, files } = wrappedParams;
205
+ if (!data) {
206
+ throw new Error("cannot clone");
207
+ }
208
+ const model = strapi.getModel(uid);
209
+ const entityToClone = await db.query(uid).findOne({ where: { id: cloneId } });
210
+ if (!entityToClone) {
211
+ return null;
212
+ }
213
+ const isDraft = strapiUtils.contentTypes.isDraft(entityToClone, model);
214
+ const validData = await entityValidator.validateEntityUpdate(
215
+ model,
216
+ // Omit the id, the cloned entity id will be generated by the database
217
+ ___default.default.omit(data, ["id"]),
218
+ { isDraft },
219
+ entityToClone
220
+ );
221
+ const query = transformParamsToQuery(uid, params.pickSelectionParams(wrappedParams));
222
+ const componentData = await components.cloneComponents(uid, entityToClone, validData);
223
+ const entityData = creationPipeline(
224
+ Object.assign(components.omitComponentData(model, validData), componentData),
225
+ {
226
+ contentType: model
227
+ }
228
+ );
229
+ let entity = await db.query(uid).clone(cloneId, {
230
+ ...query,
231
+ data: entityData
232
+ });
233
+ if (files && Object.keys(files).length > 0) {
234
+ await this.uploadFiles(uid, Object.assign(entityData, entity), files);
235
+ entity = await this.findOne(uid, entity.id, wrappedParams);
236
+ }
237
+ const { ENTRY_CREATE } = ALLOWED_WEBHOOK_EVENTS;
238
+ await this.emitEvent(uid, ENTRY_CREATE, entity);
239
+ return entity;
240
+ },
241
+ // FIXME: used only for the CM to be removed
242
+ async deleteMany(uid, opts) {
243
+ const wrappedParams = await this.wrapParams(opts, { uid, action: "delete" });
244
+ const query = transformParamsToQuery(uid, wrappedParams);
245
+ let entitiesToDelete = await db.query(uid).findMany(query);
246
+ if (!entitiesToDelete.length) {
247
+ return { count: 0 };
248
+ }
249
+ const componentsToDelete = await Promise.all(
250
+ entitiesToDelete.map((entityToDelete) => components.getComponents(uid, entityToDelete))
251
+ );
252
+ const deletedEntities = await db.query(uid).deleteMany(query);
253
+ await Promise.all(
254
+ componentsToDelete.map(
255
+ (compos) => components.deleteComponents(uid, compos, { loadComponents: false })
256
+ )
257
+ );
258
+ entitiesToDelete = await this.wrapResult(entitiesToDelete, { uid, action: "delete" });
259
+ const { ENTRY_DELETE } = ALLOWED_WEBHOOK_EVENTS;
260
+ await Promise.all(entitiesToDelete.map((entity) => this.emitEvent(uid, ENTRY_DELETE, entity)));
261
+ return deletedEntities;
262
+ },
263
+ async load(uid, entity, field, params2) {
264
+ if (!___default.default.isString(field)) {
265
+ throw new Error(`Invalid load. Expected "${field}" to be a string`);
266
+ }
267
+ const loadedEntity = await db.query(uid).load(entity, field, transformLoadParamsToQuery(uid, field, params2 ?? {}));
268
+ return this.wrapResult(loadedEntity, { uid, field, action: "load" });
269
+ },
270
+ async loadPages(uid, entity, field, params2, pagination = {}) {
271
+ if (!___default.default.isString(field)) {
272
+ throw new Error(`Invalid load. Expected "${field}" to be a string`);
273
+ }
274
+ const { attributes } = strapi.getModel(uid);
275
+ const attribute = attributes[field];
276
+ if (!strapiUtils.relations.isAnyToMany(attribute)) {
277
+ throw new Error(`Invalid load. Expected "${field}" to be an anyToMany relational attribute`);
278
+ }
279
+ const query = transformLoadParamsToQuery(uid, field, params2 ?? {}, pagination);
280
+ const loadedPage = await db.query(uid).loadPages(entity, field, query);
281
+ return {
282
+ ...loadedPage,
283
+ results: await this.wrapResult(loadedPage.results, { uid, field, action: "load" })
284
+ };
285
+ }
286
+ });
287
+ const createEntityService = (ctx) => {
288
+ Object.entries(ALLOWED_WEBHOOK_EVENTS).forEach(([key, value]) => {
289
+ ctx.strapi.webhookStore?.addAllowedEvent(key, value);
290
+ });
291
+ const implementation = createDefaultImplementation(ctx);
292
+ const service = {
293
+ implementation,
294
+ decorate(decorator) {
295
+ if (typeof decorator !== "function") {
296
+ throw new Error(`Decorator must be a function, received ${typeof decorator}`);
297
+ }
298
+ this.implementation = { ...this.implementation, ...decorator(this.implementation) };
299
+ return this;
300
+ }
301
+ };
302
+ const delegator = delegate__default.default(service, "implementation");
303
+ Object.keys(service.implementation).forEach((key) => delegator.method(key));
304
+ service.decorate((oldService) => {
305
+ const newService = ___default.default.mapValues(
306
+ oldService,
307
+ (method, methodName) => async function(...args) {
308
+ try {
309
+ return await oldService[methodName].call(this, ...args);
310
+ } catch (error) {
311
+ if (databaseErrorsToTransform.some(
312
+ (errorToTransform) => error instanceof errorToTransform
313
+ )) {
314
+ if (error instanceof Error) {
315
+ throw new strapiUtils.errors.ValidationError(error.message);
316
+ }
317
+ throw error;
318
+ }
319
+ throw error;
320
+ }
321
+ }
322
+ );
323
+ return newService;
324
+ });
325
+ return service;
310
326
  };
311
- //# sourceMappingURL=index.js.map
327
+ module.exports = createEntityService;
328
+ //# sourceMappingURL=index.js.map