@strapi/core 0.0.0-experimental.baa6cf22298e591b4d52d8e59c60406d7a9f137f → 0.0.0-experimental.bd3419429b8caba37ca42ac08edb57cd4b5e1c47

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 (725) hide show
  1. package/LICENSE +18 -3
  2. package/dist/Strapi.d.ts +3 -1
  3. package/dist/Strapi.d.ts.map +1 -1
  4. package/dist/configuration/index.d.ts.map +1 -1
  5. package/dist/core-api/service/collection-type.d.ts +2 -2
  6. package/dist/ee/index.d.ts.map +1 -1
  7. package/dist/index.d.ts +14 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +10101 -27
  10. package/dist/index.js.map +1 -1
  11. package/dist/index.mjs +10079 -29
  12. package/dist/index.mjs.map +1 -1
  13. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  14. package/dist/loaders/plugins/index.d.ts.map +1 -1
  15. package/dist/middlewares/body.d.ts.map +1 -1
  16. package/dist/middlewares/cors.d.ts.map +1 -1
  17. package/dist/middlewares/query.d.ts.map +1 -1
  18. package/dist/middlewares/security.d.ts.map +1 -1
  19. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +14 -11
  20. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  21. package/dist/migrations/draft-publish.d.ts +2 -2
  22. package/dist/migrations/draft-publish.d.ts.map +1 -1
  23. package/dist/migrations/i18n.d.ts +5 -0
  24. package/dist/migrations/i18n.d.ts.map +1 -0
  25. package/dist/migrations/index.d.ts +5 -0
  26. package/dist/migrations/index.d.ts.map +1 -0
  27. package/dist/providers/admin.d.ts.map +1 -1
  28. package/dist/registries/policies.d.ts +1 -1
  29. package/dist/registries/policies.d.ts.map +1 -1
  30. package/dist/services/content-api/index.d.ts +10 -12
  31. package/dist/services/content-api/index.d.ts.map +1 -1
  32. package/dist/services/content-api/permissions/index.d.ts +10 -12
  33. package/dist/services/content-api/permissions/index.d.ts.map +1 -1
  34. package/dist/services/content-api/permissions/providers/action.d.ts +5 -6
  35. package/dist/services/content-api/permissions/providers/action.d.ts.map +1 -1
  36. package/dist/services/content-api/permissions/providers/condition.d.ts +5 -6
  37. package/dist/services/content-api/permissions/providers/condition.d.ts.map +1 -1
  38. package/dist/services/cron.d.ts +3 -3
  39. package/dist/services/cron.d.ts.map +1 -1
  40. package/dist/services/document-service/common.d.ts +1 -1
  41. package/dist/services/document-service/common.d.ts.map +1 -1
  42. package/dist/services/document-service/components.d.ts.map +1 -1
  43. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  44. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  45. package/dist/services/document-service/entries.d.ts +2 -2
  46. package/dist/services/document-service/entries.d.ts.map +1 -1
  47. package/dist/services/document-service/events.d.ts +1 -1
  48. package/dist/services/document-service/events.d.ts.map +1 -1
  49. package/dist/services/document-service/index.d.ts +2 -1
  50. package/dist/services/document-service/index.d.ts.map +1 -1
  51. package/dist/services/document-service/repository.d.ts.map +1 -1
  52. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  53. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  54. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  55. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  56. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  57. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  58. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  59. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  60. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  61. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  62. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  63. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  64. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  65. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  66. package/dist/services/document-service/utils/populate.d.ts +1 -1
  67. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  68. package/dist/services/document-service/utils/unidirectional-relations.d.ts +36 -0
  69. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -0
  70. package/dist/services/entity-validator/blocks-validator.d.ts +1 -2
  71. package/dist/services/entity-validator/blocks-validator.d.ts.map +1 -1
  72. package/dist/services/entity-validator/index.d.ts +15 -1
  73. package/dist/services/entity-validator/index.d.ts.map +1 -1
  74. package/dist/services/entity-validator/validators.d.ts +36 -25
  75. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  76. package/dist/services/metrics/middleware.d.ts.map +1 -1
  77. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  78. package/dist/services/webhook-runner.d.ts +2 -1
  79. package/dist/services/webhook-runner.d.ts.map +1 -1
  80. package/dist/services/webhook-store.d.ts +2 -8
  81. package/dist/services/webhook-store.d.ts.map +1 -1
  82. package/dist/utils/fetch.d.ts.map +1 -1
  83. package/dist/utils/filepath-to-prop-path.d.ts +1 -1
  84. package/dist/utils/filepath-to-prop-path.d.ts.map +1 -1
  85. package/dist/utils/startup-logger.d.ts.map +1 -1
  86. package/dist/utils/transform-content-types-to-models.d.ts +355 -23
  87. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  88. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  89. package/package.json +31 -30
  90. package/dist/Strapi.js +0 -387
  91. package/dist/Strapi.js.map +0 -1
  92. package/dist/Strapi.mjs +0 -385
  93. package/dist/Strapi.mjs.map +0 -1
  94. package/dist/compile.js +0 -18
  95. package/dist/compile.js.map +0 -1
  96. package/dist/compile.mjs +0 -17
  97. package/dist/compile.mjs.map +0 -1
  98. package/dist/configuration/config-loader.js +0 -106
  99. package/dist/configuration/config-loader.js.map +0 -1
  100. package/dist/configuration/config-loader.mjs +0 -104
  101. package/dist/configuration/config-loader.mjs.map +0 -1
  102. package/dist/configuration/get-dirs.js +0 -31
  103. package/dist/configuration/get-dirs.js.map +0 -1
  104. package/dist/configuration/get-dirs.mjs +0 -31
  105. package/dist/configuration/get-dirs.mjs.map +0 -1
  106. package/dist/configuration/index.js +0 -80
  107. package/dist/configuration/index.js.map +0 -1
  108. package/dist/configuration/index.mjs +0 -75
  109. package/dist/configuration/index.mjs.map +0 -1
  110. package/dist/configuration/urls.js +0 -68
  111. package/dist/configuration/urls.js.map +0 -1
  112. package/dist/configuration/urls.mjs +0 -66
  113. package/dist/configuration/urls.mjs.map +0 -1
  114. package/dist/container.js +0 -30
  115. package/dist/container.js.map +0 -1
  116. package/dist/container.mjs +0 -30
  117. package/dist/container.mjs.map +0 -1
  118. package/dist/core-api/controller/collection-type.js +0 -84
  119. package/dist/core-api/controller/collection-type.js.map +0 -1
  120. package/dist/core-api/controller/collection-type.mjs +0 -84
  121. package/dist/core-api/controller/collection-type.mjs.map +0 -1
  122. package/dist/core-api/controller/index.js +0 -52
  123. package/dist/core-api/controller/index.js.map +0 -1
  124. package/dist/core-api/controller/index.mjs +0 -52
  125. package/dist/core-api/controller/index.mjs.map +0 -1
  126. package/dist/core-api/controller/single-type.js +0 -46
  127. package/dist/core-api/controller/single-type.js.map +0 -1
  128. package/dist/core-api/controller/single-type.mjs +0 -46
  129. package/dist/core-api/controller/single-type.mjs.map +0 -1
  130. package/dist/core-api/controller/transform.js +0 -76
  131. package/dist/core-api/controller/transform.js.map +0 -1
  132. package/dist/core-api/controller/transform.mjs +0 -76
  133. package/dist/core-api/controller/transform.mjs.map +0 -1
  134. package/dist/core-api/routes/index.js +0 -67
  135. package/dist/core-api/routes/index.js.map +0 -1
  136. package/dist/core-api/routes/index.mjs +0 -67
  137. package/dist/core-api/routes/index.mjs.map +0 -1
  138. package/dist/core-api/service/collection-type.js +0 -67
  139. package/dist/core-api/service/collection-type.js.map +0 -1
  140. package/dist/core-api/service/collection-type.mjs +0 -67
  141. package/dist/core-api/service/collection-type.mjs.map +0 -1
  142. package/dist/core-api/service/core-service.js +0 -12
  143. package/dist/core-api/service/core-service.js.map +0 -1
  144. package/dist/core-api/service/core-service.mjs +0 -12
  145. package/dist/core-api/service/core-service.mjs.map +0 -1
  146. package/dist/core-api/service/index.js +0 -16
  147. package/dist/core-api/service/index.js.map +0 -1
  148. package/dist/core-api/service/index.mjs +0 -16
  149. package/dist/core-api/service/index.mjs.map +0 -1
  150. package/dist/core-api/service/pagination.js +0 -52
  151. package/dist/core-api/service/pagination.js.map +0 -1
  152. package/dist/core-api/service/pagination.mjs +0 -52
  153. package/dist/core-api/service/pagination.mjs.map +0 -1
  154. package/dist/core-api/service/single-type.js +0 -46
  155. package/dist/core-api/service/single-type.js.map +0 -1
  156. package/dist/core-api/service/single-type.mjs +0 -46
  157. package/dist/core-api/service/single-type.mjs.map +0 -1
  158. package/dist/domain/content-type/index.js +0 -111
  159. package/dist/domain/content-type/index.js.map +0 -1
  160. package/dist/domain/content-type/index.mjs +0 -109
  161. package/dist/domain/content-type/index.mjs.map +0 -1
  162. package/dist/domain/content-type/validator.js +0 -77
  163. package/dist/domain/content-type/validator.js.map +0 -1
  164. package/dist/domain/content-type/validator.mjs +0 -75
  165. package/dist/domain/content-type/validator.mjs.map +0 -1
  166. package/dist/domain/module/index.js +0 -107
  167. package/dist/domain/module/index.js.map +0 -1
  168. package/dist/domain/module/index.mjs +0 -105
  169. package/dist/domain/module/index.mjs.map +0 -1
  170. package/dist/domain/module/validation.js +0 -25
  171. package/dist/domain/module/validation.js.map +0 -1
  172. package/dist/domain/module/validation.mjs +0 -25
  173. package/dist/domain/module/validation.mjs.map +0 -1
  174. package/dist/ee/index.js +0 -153
  175. package/dist/ee/index.js.map +0 -1
  176. package/dist/ee/index.mjs +0 -154
  177. package/dist/ee/index.mjs.map +0 -1
  178. package/dist/ee/license.js +0 -91
  179. package/dist/ee/license.js.map +0 -1
  180. package/dist/ee/license.mjs +0 -88
  181. package/dist/ee/license.mjs.map +0 -1
  182. package/dist/factories.js +0 -80
  183. package/dist/factories.js.map +0 -1
  184. package/dist/factories.mjs +0 -80
  185. package/dist/factories.mjs.map +0 -1
  186. package/dist/loaders/admin.js +0 -26
  187. package/dist/loaders/admin.js.map +0 -1
  188. package/dist/loaders/admin.mjs +0 -25
  189. package/dist/loaders/admin.mjs.map +0 -1
  190. package/dist/loaders/apis.js +0 -137
  191. package/dist/loaders/apis.js.map +0 -1
  192. package/dist/loaders/apis.mjs +0 -135
  193. package/dist/loaders/apis.mjs.map +0 -1
  194. package/dist/loaders/components.js +0 -38
  195. package/dist/loaders/components.js.map +0 -1
  196. package/dist/loaders/components.mjs +0 -37
  197. package/dist/loaders/components.mjs.map +0 -1
  198. package/dist/loaders/index.js +0 -24
  199. package/dist/loaders/index.js.map +0 -1
  200. package/dist/loaders/index.mjs +0 -24
  201. package/dist/loaders/index.mjs.map +0 -1
  202. package/dist/loaders/middlewares.js +0 -31
  203. package/dist/loaders/middlewares.js.map +0 -1
  204. package/dist/loaders/middlewares.mjs +0 -30
  205. package/dist/loaders/middlewares.mjs.map +0 -1
  206. package/dist/loaders/plugins/get-enabled-plugins.js +0 -113
  207. package/dist/loaders/plugins/get-enabled-plugins.js.map +0 -1
  208. package/dist/loaders/plugins/get-enabled-plugins.mjs +0 -111
  209. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +0 -1
  210. package/dist/loaders/plugins/get-user-plugins-config.js +0 -27
  211. package/dist/loaders/plugins/get-user-plugins-config.js.map +0 -1
  212. package/dist/loaders/plugins/get-user-plugins-config.mjs +0 -25
  213. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +0 -1
  214. package/dist/loaders/plugins/index.js +0 -118
  215. package/dist/loaders/plugins/index.js.map +0 -1
  216. package/dist/loaders/plugins/index.mjs +0 -117
  217. package/dist/loaders/plugins/index.mjs.map +0 -1
  218. package/dist/loaders/policies.js +0 -25
  219. package/dist/loaders/policies.js.map +0 -1
  220. package/dist/loaders/policies.mjs +0 -24
  221. package/dist/loaders/policies.mjs.map +0 -1
  222. package/dist/loaders/sanitizers.js +0 -6
  223. package/dist/loaders/sanitizers.js.map +0 -1
  224. package/dist/loaders/sanitizers.mjs +0 -7
  225. package/dist/loaders/sanitizers.mjs.map +0 -1
  226. package/dist/loaders/src-index.js +0 -33
  227. package/dist/loaders/src-index.js.map +0 -1
  228. package/dist/loaders/src-index.mjs +0 -34
  229. package/dist/loaders/src-index.mjs.map +0 -1
  230. package/dist/loaders/validators.js +0 -6
  231. package/dist/loaders/validators.js.map +0 -1
  232. package/dist/loaders/validators.mjs +0 -7
  233. package/dist/loaders/validators.mjs.map +0 -1
  234. package/dist/middlewares/body.js +0 -65
  235. package/dist/middlewares/body.js.map +0 -1
  236. package/dist/middlewares/body.mjs +0 -61
  237. package/dist/middlewares/body.mjs.map +0 -1
  238. package/dist/middlewares/compression.js +0 -8
  239. package/dist/middlewares/compression.js.map +0 -1
  240. package/dist/middlewares/compression.mjs +0 -6
  241. package/dist/middlewares/compression.mjs.map +0 -1
  242. package/dist/middlewares/cors.js +0 -51
  243. package/dist/middlewares/cors.js.map +0 -1
  244. package/dist/middlewares/cors.mjs +0 -49
  245. package/dist/middlewares/cors.mjs.map +0 -1
  246. package/dist/middlewares/errors.js +0 -33
  247. package/dist/middlewares/errors.js.map +0 -1
  248. package/dist/middlewares/errors.mjs +0 -33
  249. package/dist/middlewares/errors.mjs.map +0 -1
  250. package/dist/middlewares/favicon.js +0 -22
  251. package/dist/middlewares/favicon.js.map +0 -1
  252. package/dist/middlewares/favicon.mjs +0 -20
  253. package/dist/middlewares/favicon.mjs.map +0 -1
  254. package/dist/middlewares/index.js +0 -34
  255. package/dist/middlewares/index.js.map +0 -1
  256. package/dist/middlewares/index.mjs +0 -34
  257. package/dist/middlewares/index.mjs.map +0 -1
  258. package/dist/middlewares/ip.js +0 -8
  259. package/dist/middlewares/ip.js.map +0 -1
  260. package/dist/middlewares/ip.mjs +0 -6
  261. package/dist/middlewares/ip.mjs.map +0 -1
  262. package/dist/middlewares/logger.js +0 -12
  263. package/dist/middlewares/logger.js.map +0 -1
  264. package/dist/middlewares/logger.mjs +0 -12
  265. package/dist/middlewares/logger.mjs.map +0 -1
  266. package/dist/middlewares/powered-by.js +0 -14
  267. package/dist/middlewares/powered-by.js.map +0 -1
  268. package/dist/middlewares/powered-by.mjs +0 -14
  269. package/dist/middlewares/powered-by.mjs.map +0 -1
  270. package/dist/middlewares/public.js +0 -34
  271. package/dist/middlewares/public.js.map +0 -1
  272. package/dist/middlewares/public.mjs +0 -32
  273. package/dist/middlewares/public.mjs.map +0 -1
  274. package/dist/middlewares/query.js +0 -40
  275. package/dist/middlewares/query.js.map +0 -1
  276. package/dist/middlewares/query.mjs +0 -38
  277. package/dist/middlewares/query.mjs.map +0 -1
  278. package/dist/middlewares/response-time.js +0 -12
  279. package/dist/middlewares/response-time.js.map +0 -1
  280. package/dist/middlewares/response-time.mjs +0 -12
  281. package/dist/middlewares/response-time.mjs.map +0 -1
  282. package/dist/middlewares/responses.js +0 -15
  283. package/dist/middlewares/responses.js.map +0 -1
  284. package/dist/middlewares/responses.mjs +0 -15
  285. package/dist/middlewares/responses.mjs.map +0 -1
  286. package/dist/middlewares/security.js +0 -71
  287. package/dist/middlewares/security.js.map +0 -1
  288. package/dist/middlewares/security.mjs +0 -69
  289. package/dist/middlewares/security.mjs.map +0 -1
  290. package/dist/middlewares/session.js +0 -30
  291. package/dist/middlewares/session.js.map +0 -1
  292. package/dist/middlewares/session.mjs +0 -28
  293. package/dist/middlewares/session.mjs.map +0 -1
  294. package/dist/migrations/database/5.0.0-discard-drafts.js +0 -50
  295. package/dist/migrations/database/5.0.0-discard-drafts.js.map +0 -1
  296. package/dist/migrations/database/5.0.0-discard-drafts.mjs +0 -50
  297. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +0 -1
  298. package/dist/migrations/draft-publish.js +0 -42
  299. package/dist/migrations/draft-publish.js.map +0 -1
  300. package/dist/migrations/draft-publish.mjs +0 -42
  301. package/dist/migrations/draft-publish.mjs.map +0 -1
  302. package/dist/providers/admin.js +0 -20
  303. package/dist/providers/admin.js.map +0 -1
  304. package/dist/providers/admin.mjs +0 -21
  305. package/dist/providers/admin.mjs.map +0 -1
  306. package/dist/providers/coreStore.js +0 -11
  307. package/dist/providers/coreStore.js.map +0 -1
  308. package/dist/providers/coreStore.mjs +0 -12
  309. package/dist/providers/coreStore.mjs.map +0 -1
  310. package/dist/providers/cron.js +0 -20
  311. package/dist/providers/cron.js.map +0 -1
  312. package/dist/providers/cron.mjs +0 -21
  313. package/dist/providers/cron.mjs.map +0 -1
  314. package/dist/providers/index.js +0 -11
  315. package/dist/providers/index.js.map +0 -1
  316. package/dist/providers/index.mjs +0 -11
  317. package/dist/providers/index.mjs.map +0 -1
  318. package/dist/providers/provider.js +0 -5
  319. package/dist/providers/provider.js.map +0 -1
  320. package/dist/providers/provider.mjs +0 -5
  321. package/dist/providers/provider.mjs.map +0 -1
  322. package/dist/providers/registries.js +0 -35
  323. package/dist/providers/registries.js.map +0 -1
  324. package/dist/providers/registries.mjs +0 -36
  325. package/dist/providers/registries.mjs.map +0 -1
  326. package/dist/providers/telemetry.js +0 -19
  327. package/dist/providers/telemetry.js.map +0 -1
  328. package/dist/providers/telemetry.mjs +0 -20
  329. package/dist/providers/telemetry.mjs.map +0 -1
  330. package/dist/providers/webhooks.js +0 -30
  331. package/dist/providers/webhooks.js.map +0 -1
  332. package/dist/providers/webhooks.mjs +0 -31
  333. package/dist/providers/webhooks.mjs.map +0 -1
  334. package/dist/registries/apis.js +0 -23
  335. package/dist/registries/apis.js.map +0 -1
  336. package/dist/registries/apis.mjs +0 -24
  337. package/dist/registries/apis.mjs.map +0 -1
  338. package/dist/registries/components.js +0 -45
  339. package/dist/registries/components.js.map +0 -1
  340. package/dist/registries/components.mjs +0 -46
  341. package/dist/registries/components.mjs.map +0 -1
  342. package/dist/registries/content-types.js +0 -70
  343. package/dist/registries/content-types.js.map +0 -1
  344. package/dist/registries/content-types.mjs +0 -71
  345. package/dist/registries/content-types.mjs.map +0 -1
  346. package/dist/registries/controllers.js +0 -80
  347. package/dist/registries/controllers.js.map +0 -1
  348. package/dist/registries/controllers.mjs +0 -81
  349. package/dist/registries/controllers.mjs.map +0 -1
  350. package/dist/registries/custom-fields.js +0 -71
  351. package/dist/registries/custom-fields.js.map +0 -1
  352. package/dist/registries/custom-fields.mjs +0 -72
  353. package/dist/registries/custom-fields.mjs.map +0 -1
  354. package/dist/registries/hooks.js +0 -58
  355. package/dist/registries/hooks.js.map +0 -1
  356. package/dist/registries/hooks.mjs +0 -59
  357. package/dist/registries/hooks.mjs.map +0 -1
  358. package/dist/registries/middlewares.js +0 -60
  359. package/dist/registries/middlewares.js.map +0 -1
  360. package/dist/registries/middlewares.mjs +0 -61
  361. package/dist/registries/middlewares.mjs.map +0 -1
  362. package/dist/registries/models.js +0 -16
  363. package/dist/registries/models.js.map +0 -1
  364. package/dist/registries/models.mjs +0 -16
  365. package/dist/registries/models.mjs.map +0 -1
  366. package/dist/registries/modules.js +0 -39
  367. package/dist/registries/modules.js.map +0 -1
  368. package/dist/registries/modules.mjs +0 -40
  369. package/dist/registries/modules.mjs.map +0 -1
  370. package/dist/registries/namespace.js +0 -27
  371. package/dist/registries/namespace.js.map +0 -1
  372. package/dist/registries/namespace.mjs +0 -27
  373. package/dist/registries/namespace.mjs.map +0 -1
  374. package/dist/registries/plugins.js +0 -23
  375. package/dist/registries/plugins.js.map +0 -1
  376. package/dist/registries/plugins.mjs +0 -24
  377. package/dist/registries/plugins.mjs.map +0 -1
  378. package/dist/registries/policies.js +0 -108
  379. package/dist/registries/policies.js.map +0 -1
  380. package/dist/registries/policies.mjs +0 -109
  381. package/dist/registries/policies.mjs.map +0 -1
  382. package/dist/registries/sanitizers.js +0 -25
  383. package/dist/registries/sanitizers.js.map +0 -1
  384. package/dist/registries/sanitizers.mjs +0 -24
  385. package/dist/registries/sanitizers.mjs.map +0 -1
  386. package/dist/registries/services.js +0 -80
  387. package/dist/registries/services.js.map +0 -1
  388. package/dist/registries/services.mjs +0 -81
  389. package/dist/registries/services.mjs.map +0 -1
  390. package/dist/registries/validators.js +0 -25
  391. package/dist/registries/validators.js.map +0 -1
  392. package/dist/registries/validators.mjs +0 -24
  393. package/dist/registries/validators.mjs.map +0 -1
  394. package/dist/services/auth/index.js +0 -81
  395. package/dist/services/auth/index.js.map +0 -1
  396. package/dist/services/auth/index.mjs +0 -80
  397. package/dist/services/auth/index.mjs.map +0 -1
  398. package/dist/services/config.js +0 -47
  399. package/dist/services/config.js.map +0 -1
  400. package/dist/services/config.mjs +0 -47
  401. package/dist/services/config.mjs.map +0 -1
  402. package/dist/services/content-api/index.js +0 -85
  403. package/dist/services/content-api/index.js.map +0 -1
  404. package/dist/services/content-api/index.mjs +0 -84
  405. package/dist/services/content-api/index.mjs.map +0 -1
  406. package/dist/services/content-api/permissions/engine.js +0 -7
  407. package/dist/services/content-api/permissions/engine.js.map +0 -1
  408. package/dist/services/content-api/permissions/engine.mjs +0 -6
  409. package/dist/services/content-api/permissions/engine.mjs.map +0 -1
  410. package/dist/services/content-api/permissions/index.js +0 -87
  411. package/dist/services/content-api/permissions/index.js.map +0 -1
  412. package/dist/services/content-api/permissions/index.mjs +0 -86
  413. package/dist/services/content-api/permissions/index.mjs.map +0 -1
  414. package/dist/services/content-api/permissions/providers/action.js +0 -16
  415. package/dist/services/content-api/permissions/providers/action.js.map +0 -1
  416. package/dist/services/content-api/permissions/providers/action.mjs +0 -17
  417. package/dist/services/content-api/permissions/providers/action.mjs.map +0 -1
  418. package/dist/services/content-api/permissions/providers/condition.js +0 -16
  419. package/dist/services/content-api/permissions/providers/condition.js.map +0 -1
  420. package/dist/services/content-api/permissions/providers/condition.mjs +0 -17
  421. package/dist/services/content-api/permissions/providers/condition.mjs.map +0 -1
  422. package/dist/services/core-store.js +0 -107
  423. package/dist/services/core-store.js.map +0 -1
  424. package/dist/services/core-store.mjs +0 -107
  425. package/dist/services/core-store.mjs.map +0 -1
  426. package/dist/services/cron.js +0 -63
  427. package/dist/services/cron.js.map +0 -1
  428. package/dist/services/cron.mjs +0 -64
  429. package/dist/services/cron.mjs.map +0 -1
  430. package/dist/services/custom-fields.js +0 -10
  431. package/dist/services/custom-fields.js.map +0 -1
  432. package/dist/services/custom-fields.mjs +0 -11
  433. package/dist/services/custom-fields.mjs.map +0 -1
  434. package/dist/services/document-service/attributes/index.js +0 -22
  435. package/dist/services/document-service/attributes/index.js.map +0 -1
  436. package/dist/services/document-service/attributes/index.mjs +0 -22
  437. package/dist/services/document-service/attributes/index.mjs.map +0 -1
  438. package/dist/services/document-service/attributes/transforms.js +0 -20
  439. package/dist/services/document-service/attributes/transforms.js.map +0 -1
  440. package/dist/services/document-service/attributes/transforms.mjs +0 -19
  441. package/dist/services/document-service/attributes/transforms.mjs.map +0 -1
  442. package/dist/services/document-service/common.js +0 -7
  443. package/dist/services/document-service/common.js.map +0 -1
  444. package/dist/services/document-service/common.mjs +0 -7
  445. package/dist/services/document-service/common.mjs.map +0 -1
  446. package/dist/services/document-service/components.js +0 -288
  447. package/dist/services/document-service/components.js.map +0 -1
  448. package/dist/services/document-service/components.mjs +0 -286
  449. package/dist/services/document-service/components.mjs.map +0 -1
  450. package/dist/services/document-service/draft-and-publish.js +0 -69
  451. package/dist/services/document-service/draft-and-publish.js.map +0 -1
  452. package/dist/services/document-service/draft-and-publish.mjs +0 -69
  453. package/dist/services/document-service/draft-and-publish.mjs.map +0 -1
  454. package/dist/services/document-service/entries.js +0 -96
  455. package/dist/services/document-service/entries.js.map +0 -1
  456. package/dist/services/document-service/entries.mjs +0 -96
  457. package/dist/services/document-service/entries.mjs.map +0 -1
  458. package/dist/services/document-service/events.js +0 -47
  459. package/dist/services/document-service/events.js.map +0 -1
  460. package/dist/services/document-service/events.mjs +0 -47
  461. package/dist/services/document-service/events.mjs.map +0 -1
  462. package/dist/services/document-service/index.js +0 -35
  463. package/dist/services/document-service/index.js.map +0 -1
  464. package/dist/services/document-service/index.mjs +0 -35
  465. package/dist/services/document-service/index.mjs.map +0 -1
  466. package/dist/services/document-service/internationalization.js +0 -63
  467. package/dist/services/document-service/internationalization.js.map +0 -1
  468. package/dist/services/document-service/internationalization.mjs +0 -63
  469. package/dist/services/document-service/internationalization.mjs.map +0 -1
  470. package/dist/services/document-service/middlewares/errors.js +0 -25
  471. package/dist/services/document-service/middlewares/errors.js.map +0 -1
  472. package/dist/services/document-service/middlewares/errors.mjs +0 -25
  473. package/dist/services/document-service/middlewares/errors.mjs.map +0 -1
  474. package/dist/services/document-service/middlewares/middleware-manager.js +0 -49
  475. package/dist/services/document-service/middlewares/middleware-manager.js.map +0 -1
  476. package/dist/services/document-service/middlewares/middleware-manager.mjs +0 -49
  477. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +0 -1
  478. package/dist/services/document-service/params.js +0 -8
  479. package/dist/services/document-service/params.js.map +0 -1
  480. package/dist/services/document-service/params.mjs +0 -8
  481. package/dist/services/document-service/params.mjs.map +0 -1
  482. package/dist/services/document-service/repository.js +0 -278
  483. package/dist/services/document-service/repository.js.map +0 -1
  484. package/dist/services/document-service/repository.mjs +0 -278
  485. package/dist/services/document-service/repository.mjs.map +0 -1
  486. package/dist/services/document-service/transform/data.js +0 -15
  487. package/dist/services/document-service/transform/data.js.map +0 -1
  488. package/dist/services/document-service/transform/data.mjs +0 -15
  489. package/dist/services/document-service/transform/data.mjs.map +0 -1
  490. package/dist/services/document-service/transform/fields.js +0 -24
  491. package/dist/services/document-service/transform/fields.js.map +0 -1
  492. package/dist/services/document-service/transform/fields.mjs +0 -24
  493. package/dist/services/document-service/transform/fields.mjs.map +0 -1
  494. package/dist/services/document-service/transform/id-map.js +0 -78
  495. package/dist/services/document-service/transform/id-map.js.map +0 -1
  496. package/dist/services/document-service/transform/id-map.mjs +0 -78
  497. package/dist/services/document-service/transform/id-map.mjs.map +0 -1
  498. package/dist/services/document-service/transform/id-transform.js +0 -33
  499. package/dist/services/document-service/transform/id-transform.js.map +0 -1
  500. package/dist/services/document-service/transform/id-transform.mjs +0 -33
  501. package/dist/services/document-service/transform/id-transform.mjs.map +0 -1
  502. package/dist/services/document-service/transform/populate.js +0 -21
  503. package/dist/services/document-service/transform/populate.js.map +0 -1
  504. package/dist/services/document-service/transform/populate.mjs +0 -21
  505. package/dist/services/document-service/transform/populate.mjs.map +0 -1
  506. package/dist/services/document-service/transform/query.js +0 -9
  507. package/dist/services/document-service/transform/query.js.map +0 -1
  508. package/dist/services/document-service/transform/query.mjs +0 -9
  509. package/dist/services/document-service/transform/query.mjs.map +0 -1
  510. package/dist/services/document-service/transform/relations/extract/data-ids.js +0 -57
  511. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +0 -1
  512. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +0 -57
  513. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +0 -1
  514. package/dist/services/document-service/transform/relations/transform/data-ids.js +0 -76
  515. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +0 -1
  516. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +0 -76
  517. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +0 -1
  518. package/dist/services/document-service/transform/relations/transform/default-locale.js +0 -32
  519. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +0 -1
  520. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +0 -32
  521. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +0 -1
  522. package/dist/services/document-service/transform/relations/utils/dp.js +0 -30
  523. package/dist/services/document-service/transform/relations/utils/dp.js.map +0 -1
  524. package/dist/services/document-service/transform/relations/utils/dp.mjs +0 -30
  525. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +0 -1
  526. package/dist/services/document-service/transform/relations/utils/i18n.js +0 -25
  527. package/dist/services/document-service/transform/relations/utils/i18n.js.map +0 -1
  528. package/dist/services/document-service/transform/relations/utils/i18n.mjs +0 -25
  529. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +0 -1
  530. package/dist/services/document-service/transform/relations/utils/map-relation.js +0 -91
  531. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +0 -1
  532. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +0 -91
  533. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +0 -1
  534. package/dist/services/document-service/utils/populate.js +0 -41
  535. package/dist/services/document-service/utils/populate.js.map +0 -1
  536. package/dist/services/document-service/utils/populate.mjs +0 -41
  537. package/dist/services/document-service/utils/populate.mjs.map +0 -1
  538. package/dist/services/entity-service/index.js +0 -169
  539. package/dist/services/entity-service/index.js.map +0 -1
  540. package/dist/services/entity-service/index.mjs +0 -167
  541. package/dist/services/entity-service/index.mjs.map +0 -1
  542. package/dist/services/entity-validator/blocks-validator.js +0 -127
  543. package/dist/services/entity-validator/blocks-validator.js.map +0 -1
  544. package/dist/services/entity-validator/blocks-validator.mjs +0 -128
  545. package/dist/services/entity-validator/blocks-validator.mjs.map +0 -1
  546. package/dist/services/entity-validator/index.js +0 -333
  547. package/dist/services/entity-validator/index.js.map +0 -1
  548. package/dist/services/entity-validator/index.mjs +0 -332
  549. package/dist/services/entity-validator/index.mjs.map +0 -1
  550. package/dist/services/entity-validator/validators.js +0 -126
  551. package/dist/services/entity-validator/validators.js.map +0 -1
  552. package/dist/services/entity-validator/validators.mjs +0 -124
  553. package/dist/services/entity-validator/validators.mjs.map +0 -1
  554. package/dist/services/errors.js +0 -76
  555. package/dist/services/errors.js.map +0 -1
  556. package/dist/services/errors.mjs +0 -74
  557. package/dist/services/errors.mjs.map +0 -1
  558. package/dist/services/event-hub.js +0 -72
  559. package/dist/services/event-hub.js.map +0 -1
  560. package/dist/services/event-hub.mjs +0 -73
  561. package/dist/services/event-hub.mjs.map +0 -1
  562. package/dist/services/features.js +0 -17
  563. package/dist/services/features.js.map +0 -1
  564. package/dist/services/features.mjs +0 -17
  565. package/dist/services/features.mjs.map +0 -1
  566. package/dist/services/fs.js +0 -51
  567. package/dist/services/fs.js.map +0 -1
  568. package/dist/services/fs.mjs +0 -49
  569. package/dist/services/fs.mjs.map +0 -1
  570. package/dist/services/metrics/admin-user-hash.js +0 -14
  571. package/dist/services/metrics/admin-user-hash.js.map +0 -1
  572. package/dist/services/metrics/admin-user-hash.mjs +0 -12
  573. package/dist/services/metrics/admin-user-hash.mjs.map +0 -1
  574. package/dist/services/metrics/index.js +0 -45
  575. package/dist/services/metrics/index.js.map +0 -1
  576. package/dist/services/metrics/index.mjs +0 -46
  577. package/dist/services/metrics/index.mjs.map +0 -1
  578. package/dist/services/metrics/is-truthy.js +0 -9
  579. package/dist/services/metrics/is-truthy.js.map +0 -1
  580. package/dist/services/metrics/is-truthy.mjs +0 -8
  581. package/dist/services/metrics/is-truthy.mjs.map +0 -1
  582. package/dist/services/metrics/middleware.js +0 -25
  583. package/dist/services/metrics/middleware.js.map +0 -1
  584. package/dist/services/metrics/middleware.mjs +0 -26
  585. package/dist/services/metrics/middleware.mjs.map +0 -1
  586. package/dist/services/metrics/rate-limiter.js +0 -21
  587. package/dist/services/metrics/rate-limiter.js.map +0 -1
  588. package/dist/services/metrics/rate-limiter.mjs +0 -22
  589. package/dist/services/metrics/rate-limiter.mjs.map +0 -1
  590. package/dist/services/metrics/sender.js +0 -76
  591. package/dist/services/metrics/sender.js.map +0 -1
  592. package/dist/services/metrics/sender.mjs +0 -70
  593. package/dist/services/metrics/sender.mjs.map +0 -1
  594. package/dist/services/query-params.js +0 -12
  595. package/dist/services/query-params.js.map +0 -1
  596. package/dist/services/query-params.mjs +0 -13
  597. package/dist/services/query-params.mjs.map +0 -1
  598. package/dist/services/reloader.js +0 -36
  599. package/dist/services/reloader.js.map +0 -1
  600. package/dist/services/reloader.mjs +0 -36
  601. package/dist/services/reloader.mjs.map +0 -1
  602. package/dist/services/request-context.js +0 -13
  603. package/dist/services/request-context.js.map +0 -1
  604. package/dist/services/request-context.mjs +0 -14
  605. package/dist/services/request-context.mjs.map +0 -1
  606. package/dist/services/server/admin-api.js +0 -13
  607. package/dist/services/server/admin-api.js.map +0 -1
  608. package/dist/services/server/admin-api.mjs +0 -13
  609. package/dist/services/server/admin-api.mjs.map +0 -1
  610. package/dist/services/server/api.js +0 -30
  611. package/dist/services/server/api.js.map +0 -1
  612. package/dist/services/server/api.mjs +0 -28
  613. package/dist/services/server/api.mjs.map +0 -1
  614. package/dist/services/server/compose-endpoint.js +0 -117
  615. package/dist/services/server/compose-endpoint.js.map +0 -1
  616. package/dist/services/server/compose-endpoint.mjs +0 -116
  617. package/dist/services/server/compose-endpoint.mjs.map +0 -1
  618. package/dist/services/server/content-api.js +0 -12
  619. package/dist/services/server/content-api.js.map +0 -1
  620. package/dist/services/server/content-api.mjs +0 -12
  621. package/dist/services/server/content-api.mjs.map +0 -1
  622. package/dist/services/server/http-server.js +0 -50
  623. package/dist/services/server/http-server.js.map +0 -1
  624. package/dist/services/server/http-server.mjs +0 -48
  625. package/dist/services/server/http-server.mjs.map +0 -1
  626. package/dist/services/server/index.js +0 -87
  627. package/dist/services/server/index.js.map +0 -1
  628. package/dist/services/server/index.mjs +0 -85
  629. package/dist/services/server/index.mjs.map +0 -1
  630. package/dist/services/server/koa.js +0 -52
  631. package/dist/services/server/koa.js.map +0 -1
  632. package/dist/services/server/koa.mjs +0 -48
  633. package/dist/services/server/koa.mjs.map +0 -1
  634. package/dist/services/server/middleware.js +0 -92
  635. package/dist/services/server/middleware.js.map +0 -1
  636. package/dist/services/server/middleware.mjs +0 -90
  637. package/dist/services/server/middleware.mjs.map +0 -1
  638. package/dist/services/server/policy.js +0 -20
  639. package/dist/services/server/policy.js.map +0 -1
  640. package/dist/services/server/policy.mjs +0 -20
  641. package/dist/services/server/policy.mjs.map +0 -1
  642. package/dist/services/server/register-middlewares.js +0 -72
  643. package/dist/services/server/register-middlewares.js.map +0 -1
  644. package/dist/services/server/register-middlewares.mjs +0 -73
  645. package/dist/services/server/register-middlewares.mjs.map +0 -1
  646. package/dist/services/server/register-routes.js +0 -76
  647. package/dist/services/server/register-routes.js.map +0 -1
  648. package/dist/services/server/register-routes.mjs +0 -75
  649. package/dist/services/server/register-routes.mjs.map +0 -1
  650. package/dist/services/server/routing.js +0 -91
  651. package/dist/services/server/routing.js.map +0 -1
  652. package/dist/services/server/routing.mjs +0 -89
  653. package/dist/services/server/routing.mjs.map +0 -1
  654. package/dist/services/utils/dynamic-zones.js +0 -17
  655. package/dist/services/utils/dynamic-zones.js.map +0 -1
  656. package/dist/services/utils/dynamic-zones.mjs +0 -18
  657. package/dist/services/utils/dynamic-zones.mjs.map +0 -1
  658. package/dist/services/webhook-runner.js +0 -133
  659. package/dist/services/webhook-runner.js.map +0 -1
  660. package/dist/services/webhook-runner.mjs +0 -131
  661. package/dist/services/webhook-runner.mjs.map +0 -1
  662. package/dist/services/webhook-store.js +0 -110
  663. package/dist/services/webhook-store.js.map +0 -1
  664. package/dist/services/webhook-store.mjs +0 -110
  665. package/dist/services/webhook-store.mjs.map +0 -1
  666. package/dist/services/worker-queue.js +0 -56
  667. package/dist/services/worker-queue.js.map +0 -1
  668. package/dist/services/worker-queue.mjs +0 -55
  669. package/dist/services/worker-queue.mjs.map +0 -1
  670. package/dist/utils/convert-custom-field-type.js +0 -24
  671. package/dist/utils/convert-custom-field-type.js.map +0 -1
  672. package/dist/utils/convert-custom-field-type.mjs +0 -24
  673. package/dist/utils/convert-custom-field-type.mjs.map +0 -1
  674. package/dist/utils/cron.js +0 -38
  675. package/dist/utils/cron.js.map +0 -1
  676. package/dist/utils/cron.mjs +0 -38
  677. package/dist/utils/cron.mjs.map +0 -1
  678. package/dist/utils/fetch.js +0 -20
  679. package/dist/utils/fetch.js.map +0 -1
  680. package/dist/utils/fetch.mjs +0 -20
  681. package/dist/utils/fetch.mjs.map +0 -1
  682. package/dist/utils/filepath-to-prop-path.js +0 -12
  683. package/dist/utils/filepath-to-prop-path.js.map +0 -1
  684. package/dist/utils/filepath-to-prop-path.mjs +0 -10
  685. package/dist/utils/filepath-to-prop-path.mjs.map +0 -1
  686. package/dist/utils/is-initialized.js +0 -16
  687. package/dist/utils/is-initialized.js.map +0 -1
  688. package/dist/utils/is-initialized.mjs +0 -16
  689. package/dist/utils/is-initialized.mjs.map +0 -1
  690. package/dist/utils/lifecycles.js +0 -9
  691. package/dist/utils/lifecycles.js.map +0 -1
  692. package/dist/utils/lifecycles.mjs +0 -9
  693. package/dist/utils/lifecycles.mjs.map +0 -1
  694. package/dist/utils/load-config-file.js +0 -45
  695. package/dist/utils/load-config-file.js.map +0 -1
  696. package/dist/utils/load-config-file.mjs +0 -42
  697. package/dist/utils/load-config-file.mjs.map +0 -1
  698. package/dist/utils/load-files.js +0 -39
  699. package/dist/utils/load-files.js.map +0 -1
  700. package/dist/utils/load-files.mjs +0 -35
  701. package/dist/utils/load-files.mjs.map +0 -1
  702. package/dist/utils/open-browser.js +0 -11
  703. package/dist/utils/open-browser.js.map +0 -1
  704. package/dist/utils/open-browser.mjs +0 -9
  705. package/dist/utils/open-browser.mjs.map +0 -1
  706. package/dist/utils/resolve-working-dirs.js +0 -13
  707. package/dist/utils/resolve-working-dirs.js.map +0 -1
  708. package/dist/utils/resolve-working-dirs.mjs +0 -11
  709. package/dist/utils/resolve-working-dirs.mjs.map +0 -1
  710. package/dist/utils/signals.js +0 -17
  711. package/dist/utils/signals.js.map +0 -1
  712. package/dist/utils/signals.mjs +0 -17
  713. package/dist/utils/signals.mjs.map +0 -1
  714. package/dist/utils/startup-logger.js +0 -81
  715. package/dist/utils/startup-logger.js.map +0 -1
  716. package/dist/utils/startup-logger.mjs +0 -77
  717. package/dist/utils/startup-logger.mjs.map +0 -1
  718. package/dist/utils/transform-content-types-to-models.js +0 -275
  719. package/dist/utils/transform-content-types-to-models.js.map +0 -1
  720. package/dist/utils/transform-content-types-to-models.mjs +0 -272
  721. package/dist/utils/transform-content-types-to-models.mjs.map +0 -1
  722. package/dist/utils/update-notifier/index.js +0 -85
  723. package/dist/utils/update-notifier/index.js.map +0 -1
  724. package/dist/utils/update-notifier/index.mjs +0 -78
  725. package/dist/utils/update-notifier/index.mjs.map +0 -1
@@ -1,16 +0,0 @@
1
- const registry = () => {
2
- const models = [];
3
- return {
4
- add(model) {
5
- models.push(model);
6
- return this;
7
- },
8
- get() {
9
- return models;
10
- }
11
- };
12
- };
13
- export {
14
- registry
15
- };
16
- //# sourceMappingURL=models.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.mjs","sources":["../../src/registries/models.ts"],"sourcesContent":["import { Model } from '@strapi/database';\n\nexport const registry = () => {\n const models: Model[] = [];\n\n return {\n add(model: Model) {\n models.push(model);\n return this;\n },\n\n get() {\n return models;\n },\n };\n};\n"],"names":[],"mappings":"AAEO,MAAM,WAAW,MAAM;AAC5B,QAAM,SAAkB,CAAA;AAEjB,SAAA;AAAA,IACL,IAAI,OAAc;AAChB,aAAO,KAAK,KAAK;AACV,aAAA;AAAA,IACT;AAAA,IAEA,MAAM;AACG,aAAA;AAAA,IACT;AAAA,EAAA;AAEJ;"}
@@ -1,39 +0,0 @@
1
- "use strict";
2
- const _ = require("lodash/fp");
3
- const index = require("../domain/module/index.js");
4
- const modulesRegistry = (strapi) => {
5
- const modules = {};
6
- return {
7
- get(namespace) {
8
- return modules[namespace];
9
- },
10
- getAll(prefix = "") {
11
- return _.pickBy((mod, namespace) => namespace.startsWith(prefix))(modules);
12
- },
13
- add(namespace, rawModule) {
14
- if (_.has(namespace, modules)) {
15
- throw new Error(`Module ${namespace} has already been registered.`);
16
- }
17
- modules[namespace] = index.createModule(namespace, rawModule, strapi);
18
- modules[namespace].load();
19
- return modules[namespace];
20
- },
21
- async bootstrap() {
22
- for (const mod of Object.values(modules)) {
23
- await mod.bootstrap();
24
- }
25
- },
26
- async register() {
27
- for (const mod of Object.values(modules)) {
28
- await mod.register();
29
- }
30
- },
31
- async destroy() {
32
- for (const mod of Object.values(modules)) {
33
- await mod.destroy();
34
- }
35
- }
36
- };
37
- };
38
- module.exports = modulesRegistry;
39
- //# sourceMappingURL=modules.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"modules.js","sources":["../../src/registries/modules.ts"],"sourcesContent":["import { pickBy, has } from 'lodash/fp';\nimport type { Core } from '@strapi/types';\nimport { createModule, RawModule, Module } from '../domain/module';\n\ntype ModuleMap = { [namespace: string]: Module };\n\nconst modulesRegistry = (strapi: Core.Strapi) => {\n const modules: ModuleMap = {};\n\n return {\n get(namespace: string) {\n return modules[namespace];\n },\n getAll(prefix = '') {\n return pickBy<ModuleMap>((mod, namespace) => namespace.startsWith(prefix))(modules);\n },\n add(namespace: string, rawModule: RawModule) {\n if (has(namespace, modules)) {\n throw new Error(`Module ${namespace} has already been registered.`);\n }\n\n modules[namespace] = createModule(namespace, rawModule, strapi);\n modules[namespace].load();\n\n return modules[namespace];\n },\n async bootstrap() {\n for (const mod of Object.values(modules)) {\n await mod.bootstrap();\n }\n },\n async register() {\n for (const mod of Object.values(modules)) {\n await mod.register();\n }\n },\n async destroy() {\n for (const mod of Object.values(modules)) {\n await mod.destroy();\n }\n },\n };\n};\n\nexport default modulesRegistry;\n"],"names":["pickBy","has","createModule"],"mappings":";;;AAMM,MAAA,kBAAkB,CAAC,WAAwB;AAC/C,QAAM,UAAqB,CAAA;AAEpB,SAAA;AAAA,IACL,IAAI,WAAmB;AACrB,aAAO,QAAQ,SAAS;AAAA,IAC1B;AAAA,IACA,OAAO,SAAS,IAAI;AACX,aAAAA,EAAA,OAAkB,CAAC,KAAK,cAAc,UAAU,WAAW,MAAM,CAAC,EAAE,OAAO;AAAA,IACpF;AAAA,IACA,IAAI,WAAmB,WAAsB;AACvC,UAAAC,EAAA,IAAI,WAAW,OAAO,GAAG;AAC3B,cAAM,IAAI,MAAM,UAAU,SAAS,+BAA+B;AAAA,MACpE;AAEA,cAAQ,SAAS,IAAIC,MAAAA,aAAa,WAAW,WAAW,MAAM;AACtD,cAAA,SAAS,EAAE;AAEnB,aAAO,QAAQ,SAAS;AAAA,IAC1B;AAAA,IACA,MAAM,YAAY;AAChB,iBAAW,OAAO,OAAO,OAAO,OAAO,GAAG;AACxC,cAAM,IAAI;MACZ;AAAA,IACF;AAAA,IACA,MAAM,WAAW;AACf,iBAAW,OAAO,OAAO,OAAO,OAAO,GAAG;AACxC,cAAM,IAAI;MACZ;AAAA,IACF;AAAA,IACA,MAAM,UAAU;AACd,iBAAW,OAAO,OAAO,OAAO,OAAO,GAAG;AACxC,cAAM,IAAI;MACZ;AAAA,IACF;AAAA,EAAA;AAEJ;;"}
@@ -1,40 +0,0 @@
1
- import { pickBy, has } from "lodash/fp";
2
- import { createModule } from "../domain/module/index.mjs";
3
- const modulesRegistry = (strapi) => {
4
- const modules = {};
5
- return {
6
- get(namespace) {
7
- return modules[namespace];
8
- },
9
- getAll(prefix = "") {
10
- return pickBy((mod, namespace) => namespace.startsWith(prefix))(modules);
11
- },
12
- add(namespace, rawModule) {
13
- if (has(namespace, modules)) {
14
- throw new Error(`Module ${namespace} has already been registered.`);
15
- }
16
- modules[namespace] = createModule(namespace, rawModule, strapi);
17
- modules[namespace].load();
18
- return modules[namespace];
19
- },
20
- async bootstrap() {
21
- for (const mod of Object.values(modules)) {
22
- await mod.bootstrap();
23
- }
24
- },
25
- async register() {
26
- for (const mod of Object.values(modules)) {
27
- await mod.register();
28
- }
29
- },
30
- async destroy() {
31
- for (const mod of Object.values(modules)) {
32
- await mod.destroy();
33
- }
34
- }
35
- };
36
- };
37
- export {
38
- modulesRegistry as default
39
- };
40
- //# sourceMappingURL=modules.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"modules.mjs","sources":["../../src/registries/modules.ts"],"sourcesContent":["import { pickBy, has } from 'lodash/fp';\nimport type { Core } from '@strapi/types';\nimport { createModule, RawModule, Module } from '../domain/module';\n\ntype ModuleMap = { [namespace: string]: Module };\n\nconst modulesRegistry = (strapi: Core.Strapi) => {\n const modules: ModuleMap = {};\n\n return {\n get(namespace: string) {\n return modules[namespace];\n },\n getAll(prefix = '') {\n return pickBy<ModuleMap>((mod, namespace) => namespace.startsWith(prefix))(modules);\n },\n add(namespace: string, rawModule: RawModule) {\n if (has(namespace, modules)) {\n throw new Error(`Module ${namespace} has already been registered.`);\n }\n\n modules[namespace] = createModule(namespace, rawModule, strapi);\n modules[namespace].load();\n\n return modules[namespace];\n },\n async bootstrap() {\n for (const mod of Object.values(modules)) {\n await mod.bootstrap();\n }\n },\n async register() {\n for (const mod of Object.values(modules)) {\n await mod.register();\n }\n },\n async destroy() {\n for (const mod of Object.values(modules)) {\n await mod.destroy();\n }\n },\n };\n};\n\nexport default modulesRegistry;\n"],"names":[],"mappings":";;AAMM,MAAA,kBAAkB,CAAC,WAAwB;AAC/C,QAAM,UAAqB,CAAA;AAEpB,SAAA;AAAA,IACL,IAAI,WAAmB;AACrB,aAAO,QAAQ,SAAS;AAAA,IAC1B;AAAA,IACA,OAAO,SAAS,IAAI;AACX,aAAA,OAAkB,CAAC,KAAK,cAAc,UAAU,WAAW,MAAM,CAAC,EAAE,OAAO;AAAA,IACpF;AAAA,IACA,IAAI,WAAmB,WAAsB;AACvC,UAAA,IAAI,WAAW,OAAO,GAAG;AAC3B,cAAM,IAAI,MAAM,UAAU,SAAS,+BAA+B;AAAA,MACpE;AAEA,cAAQ,SAAS,IAAI,aAAa,WAAW,WAAW,MAAM;AACtD,cAAA,SAAS,EAAE;AAEnB,aAAO,QAAQ,SAAS;AAAA,IAC1B;AAAA,IACA,MAAM,YAAY;AAChB,iBAAW,OAAO,OAAO,OAAO,OAAO,GAAG;AACxC,cAAM,IAAI;MACZ;AAAA,IACF;AAAA,IACA,MAAM,WAAW;AACf,iBAAW,OAAO,OAAO,OAAO,OAAO,GAAG;AACxC,cAAM,IAAI;MACZ;AAAA,IACF;AAAA,IACA,MAAM,UAAU;AACd,iBAAW,OAAO,OAAO,OAAO,OAAO,GAAG;AACxC,cAAM,IAAI;MACZ;AAAA,IACF;AAAA,EAAA;AAEJ;"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const hasNamespace = (name, namespace) => {
4
- if (!namespace) {
5
- return true;
6
- }
7
- if (namespace.endsWith("::")) {
8
- return name.startsWith(namespace);
9
- }
10
- return name.startsWith(`${namespace}.`);
11
- };
12
- const addNamespace = (name, namespace) => {
13
- if (namespace.endsWith("::")) {
14
- return `${namespace}${name}`;
15
- }
16
- return `${namespace}.${name}`;
17
- };
18
- const removeNamespace = (name, namespace) => {
19
- if (namespace.endsWith("::")) {
20
- return name.replace(namespace, "");
21
- }
22
- return name.replace(`${namespace}.`, "");
23
- };
24
- exports.addNamespace = addNamespace;
25
- exports.hasNamespace = hasNamespace;
26
- exports.removeNamespace = removeNamespace;
27
- //# sourceMappingURL=namespace.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"namespace.js","sources":["../../src/registries/namespace.ts"],"sourcesContent":["const hasNamespace = (name: string, namespace: string) => {\n if (!namespace) {\n return true;\n }\n\n if (namespace.endsWith('::')) {\n return name.startsWith(namespace);\n }\n return name.startsWith(`${namespace}.`);\n};\n\nconst addNamespace = (name: string, namespace: string) => {\n if (namespace.endsWith('::')) {\n return `${namespace}${name}`;\n }\n return `${namespace}.${name}`;\n};\n\nconst removeNamespace = (name: string, namespace: string) => {\n if (namespace.endsWith('::')) {\n return name.replace(namespace, '');\n }\n return name.replace(`${namespace}.`, '');\n};\n\nexport { addNamespace, removeNamespace, hasNamespace };\n"],"names":[],"mappings":";;AAAM,MAAA,eAAe,CAAC,MAAc,cAAsB;AACxD,MAAI,CAAC,WAAW;AACP,WAAA;AAAA,EACT;AAEI,MAAA,UAAU,SAAS,IAAI,GAAG;AACrB,WAAA,KAAK,WAAW,SAAS;AAAA,EAClC;AACA,SAAO,KAAK,WAAW,GAAG,SAAS,GAAG;AACxC;AAEM,MAAA,eAAe,CAAC,MAAc,cAAsB;AACpD,MAAA,UAAU,SAAS,IAAI,GAAG;AACrB,WAAA,GAAG,SAAS,GAAG,IAAI;AAAA,EAC5B;AACO,SAAA,GAAG,SAAS,IAAI,IAAI;AAC7B;AAEM,MAAA,kBAAkB,CAAC,MAAc,cAAsB;AACvD,MAAA,UAAU,SAAS,IAAI,GAAG;AACrB,WAAA,KAAK,QAAQ,WAAW,EAAE;AAAA,EACnC;AACA,SAAO,KAAK,QAAQ,GAAG,SAAS,KAAK,EAAE;AACzC;;;;"}
@@ -1,27 +0,0 @@
1
- const hasNamespace = (name, namespace) => {
2
- if (!namespace) {
3
- return true;
4
- }
5
- if (namespace.endsWith("::")) {
6
- return name.startsWith(namespace);
7
- }
8
- return name.startsWith(`${namespace}.`);
9
- };
10
- const addNamespace = (name, namespace) => {
11
- if (namespace.endsWith("::")) {
12
- return `${namespace}${name}`;
13
- }
14
- return `${namespace}.${name}`;
15
- };
16
- const removeNamespace = (name, namespace) => {
17
- if (namespace.endsWith("::")) {
18
- return name.replace(namespace, "");
19
- }
20
- return name.replace(`${namespace}.`, "");
21
- };
22
- export {
23
- addNamespace,
24
- hasNamespace,
25
- removeNamespace
26
- };
27
- //# sourceMappingURL=namespace.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"namespace.mjs","sources":["../../src/registries/namespace.ts"],"sourcesContent":["const hasNamespace = (name: string, namespace: string) => {\n if (!namespace) {\n return true;\n }\n\n if (namespace.endsWith('::')) {\n return name.startsWith(namespace);\n }\n return name.startsWith(`${namespace}.`);\n};\n\nconst addNamespace = (name: string, namespace: string) => {\n if (namespace.endsWith('::')) {\n return `${namespace}${name}`;\n }\n return `${namespace}.${name}`;\n};\n\nconst removeNamespace = (name: string, namespace: string) => {\n if (namespace.endsWith('::')) {\n return name.replace(namespace, '');\n }\n return name.replace(`${namespace}.`, '');\n};\n\nexport { addNamespace, removeNamespace, hasNamespace };\n"],"names":[],"mappings":"AAAM,MAAA,eAAe,CAAC,MAAc,cAAsB;AACxD,MAAI,CAAC,WAAW;AACP,WAAA;AAAA,EACT;AAEI,MAAA,UAAU,SAAS,IAAI,GAAG;AACrB,WAAA,KAAK,WAAW,SAAS;AAAA,EAClC;AACA,SAAO,KAAK,WAAW,GAAG,SAAS,GAAG;AACxC;AAEM,MAAA,eAAe,CAAC,MAAc,cAAsB;AACpD,MAAA,UAAU,SAAS,IAAI,GAAG;AACrB,WAAA,GAAG,SAAS,GAAG,IAAI;AAAA,EAC5B;AACO,SAAA,GAAG,SAAS,IAAI,IAAI;AAC7B;AAEM,MAAA,kBAAkB,CAAC,MAAc,cAAsB;AACvD,MAAA,UAAU,SAAS,IAAI,GAAG;AACrB,WAAA,KAAK,QAAQ,WAAW,EAAE;AAAA,EACnC;AACA,SAAO,KAAK,QAAQ,GAAG,SAAS,KAAK,EAAE;AACzC;"}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- const _ = require("lodash/fp");
3
- const pluginsRegistry = (strapi) => {
4
- const plugins = {};
5
- return {
6
- get(name) {
7
- return plugins[name];
8
- },
9
- getAll() {
10
- return plugins;
11
- },
12
- add(name, pluginConfig) {
13
- if (_.has(name, plugins)) {
14
- throw new Error(`Plugin ${name} has already been registered.`);
15
- }
16
- const pluginModule = strapi.get("modules").add(`plugin::${name}`, pluginConfig);
17
- plugins[name] = pluginModule;
18
- return plugins[name];
19
- }
20
- };
21
- };
22
- module.exports = pluginsRegistry;
23
- //# sourceMappingURL=plugins.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugins.js","sources":["../../src/registries/plugins.ts"],"sourcesContent":["import { has } from 'lodash/fp';\n\nimport type { Core } from '@strapi/types';\n\ntype PluginMap = Record<string, Core.Plugin>;\n\nconst pluginsRegistry = (strapi: Core.Strapi) => {\n const plugins: PluginMap = {};\n\n return {\n get(name: string) {\n return plugins[name];\n },\n getAll() {\n return plugins;\n },\n add(name: string, pluginConfig: Core.Plugin) {\n if (has(name, plugins)) {\n throw new Error(`Plugin ${name} has already been registered.`);\n }\n\n const pluginModule = strapi.get('modules').add(`plugin::${name}`, pluginConfig);\n plugins[name] = pluginModule;\n\n return plugins[name];\n },\n };\n};\n\nexport default pluginsRegistry;\n"],"names":["has"],"mappings":";;AAMM,MAAA,kBAAkB,CAAC,WAAwB;AAC/C,QAAM,UAAqB,CAAA;AAEpB,SAAA;AAAA,IACL,IAAI,MAAc;AAChB,aAAO,QAAQ,IAAI;AAAA,IACrB;AAAA,IACA,SAAS;AACA,aAAA;AAAA,IACT;AAAA,IACA,IAAI,MAAc,cAA2B;AACvC,UAAAA,EAAA,IAAI,MAAM,OAAO,GAAG;AACtB,cAAM,IAAI,MAAM,UAAU,IAAI,+BAA+B;AAAA,MAC/D;AAEM,YAAA,eAAe,OAAO,IAAI,SAAS,EAAE,IAAI,WAAW,IAAI,IAAI,YAAY;AAC9E,cAAQ,IAAI,IAAI;AAEhB,aAAO,QAAQ,IAAI;AAAA,IACrB;AAAA,EAAA;AAEJ;;"}
@@ -1,24 +0,0 @@
1
- import { has } from "lodash/fp";
2
- const pluginsRegistry = (strapi) => {
3
- const plugins = {};
4
- return {
5
- get(name) {
6
- return plugins[name];
7
- },
8
- getAll() {
9
- return plugins;
10
- },
11
- add(name, pluginConfig) {
12
- if (has(name, plugins)) {
13
- throw new Error(`Plugin ${name} has already been registered.`);
14
- }
15
- const pluginModule = strapi.get("modules").add(`plugin::${name}`, pluginConfig);
16
- plugins[name] = pluginModule;
17
- return plugins[name];
18
- }
19
- };
20
- };
21
- export {
22
- pluginsRegistry as default
23
- };
24
- //# sourceMappingURL=plugins.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugins.mjs","sources":["../../src/registries/plugins.ts"],"sourcesContent":["import { has } from 'lodash/fp';\n\nimport type { Core } from '@strapi/types';\n\ntype PluginMap = Record<string, Core.Plugin>;\n\nconst pluginsRegistry = (strapi: Core.Strapi) => {\n const plugins: PluginMap = {};\n\n return {\n get(name: string) {\n return plugins[name];\n },\n getAll() {\n return plugins;\n },\n add(name: string, pluginConfig: Core.Plugin) {\n if (has(name, plugins)) {\n throw new Error(`Plugin ${name} has already been registered.`);\n }\n\n const pluginModule = strapi.get('modules').add(`plugin::${name}`, pluginConfig);\n plugins[name] = pluginModule;\n\n return plugins[name];\n },\n };\n};\n\nexport default pluginsRegistry;\n"],"names":[],"mappings":";AAMM,MAAA,kBAAkB,CAAC,WAAwB;AAC/C,QAAM,UAAqB,CAAA;AAEpB,SAAA;AAAA,IACL,IAAI,MAAc;AAChB,aAAO,QAAQ,IAAI;AAAA,IACrB;AAAA,IACA,SAAS;AACA,aAAA;AAAA,IACT;AAAA,IACA,IAAI,MAAc,cAA2B;AACvC,UAAA,IAAI,MAAM,OAAO,GAAG;AACtB,cAAM,IAAI,MAAM,UAAU,IAAI,+BAA+B;AAAA,MAC/D;AAEM,YAAA,eAAe,OAAO,IAAI,SAAS,EAAE,IAAI,WAAW,IAAI,IAAI,YAAY;AAC9E,cAAQ,IAAI,IAAI;AAEhB,aAAO,QAAQ,IAAI;AAAA,IACrB;AAAA,EAAA;AAEJ;"}
@@ -1,108 +0,0 @@
1
- "use strict";
2
- const _ = require("lodash/fp");
3
- const namespace = require("./namespace.js");
4
- const PLUGIN_PREFIX = "plugin::";
5
- const API_PREFIX = "api::";
6
- const parsePolicy = (policy) => {
7
- if (typeof policy === "string") {
8
- return { policyName: policy, config: {} };
9
- }
10
- const { name, config } = policy;
11
- return { policyName: name, config };
12
- };
13
- const policiesRegistry = () => {
14
- const policies = /* @__PURE__ */ new Map();
15
- const find = (name, namespaceInfo) => {
16
- const { pluginName, apiName } = namespaceInfo ?? {};
17
- const policy = policies.get(name);
18
- if (policy) {
19
- return policy;
20
- }
21
- if (pluginName) {
22
- return policies.get(`${PLUGIN_PREFIX}${pluginName}.${name}`);
23
- }
24
- if (apiName) {
25
- return policies.get(`${API_PREFIX}${apiName}.${name}`);
26
- }
27
- };
28
- function resolveHandler(policyConfig, namespaceInfo) {
29
- if (Array.isArray(policyConfig)) {
30
- return policyConfig.map((config2) => {
31
- return resolveHandler(config2, namespaceInfo);
32
- });
33
- }
34
- const { policyName, config } = parsePolicy(policyConfig);
35
- const policy = find(policyName, namespaceInfo);
36
- if (!policy) {
37
- throw new Error(`Policy ${policyName} not found.`);
38
- }
39
- if (typeof policy === "function") {
40
- return policy;
41
- }
42
- if (policy.validator) {
43
- policy.validator(config);
44
- }
45
- return policy.handler;
46
- }
47
- return {
48
- /**
49
- * Returns this list of registered policies uids
50
- */
51
- keys() {
52
- return policies.keys();
53
- },
54
- /**
55
- * Returns the instance of a policy. Instantiate the policy if not already done
56
- */
57
- get(name, namespaceInfo) {
58
- return find(name, namespaceInfo);
59
- },
60
- /**
61
- * Checks if a policy is registered
62
- */
63
- has(name, namespaceInfo) {
64
- const res = find(name, namespaceInfo);
65
- return !!res;
66
- },
67
- /**
68
- * Returns a map with all the policies in a namespace
69
- */
70
- getAll(namespace$1) {
71
- return _.pickBy((_2, uid) => namespace.hasNamespace(uid, namespace$1))(Object.fromEntries(policies));
72
- },
73
- /**
74
- * Registers a policy
75
- */
76
- set(uid, policy) {
77
- policies.set(uid, policy);
78
- return this;
79
- },
80
- /**
81
- * Registers a map of policies for a specific namespace
82
- */
83
- add(namespace$1, newPolicies) {
84
- for (const policyName of Object.keys(newPolicies)) {
85
- const policy = newPolicies[policyName];
86
- const uid = namespace.addNamespace(policyName, namespace$1);
87
- if (_.has(uid, policies)) {
88
- throw new Error(`Policy ${uid} has already been registered.`);
89
- }
90
- policies.set(uid, policy);
91
- }
92
- },
93
- /**
94
- * Resolves a list of policies
95
- */
96
- resolve(config, namespaceInfo) {
97
- const { pluginName, apiName } = namespaceInfo ?? {};
98
- return _.castArray(config).map((policyConfig) => {
99
- return {
100
- handler: resolveHandler(policyConfig, { pluginName, apiName }),
101
- config: typeof policyConfig === "object" && policyConfig.config || {}
102
- };
103
- });
104
- }
105
- };
106
- };
107
- module.exports = policiesRegistry;
108
- //# sourceMappingURL=policies.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"policies.js","sources":["../../src/registries/policies.ts"],"sourcesContent":["import { pickBy, has, castArray } from 'lodash/fp';\nimport type { Core } from '@strapi/types';\nimport { addNamespace, hasNamespace } from './namespace';\n\nconst PLUGIN_PREFIX = 'plugin::';\nconst API_PREFIX = 'api::';\n\ninterface PolicyInfo {\n name: string;\n config: unknown;\n}\n\ntype PolicyConfig = string | PolicyInfo;\n\ninterface NamespaceInfo {\n pluginName?: string;\n apiName?: string;\n}\n\nconst parsePolicy = (policy: string | PolicyInfo) => {\n if (typeof policy === 'string') {\n return { policyName: policy, config: {} };\n }\n\n const { name, config } = policy;\n return { policyName: name, config };\n};\n\nconst policiesRegistry = () => {\n const policies = new Map<string, Core.Policy>();\n\n const find = (name: string, namespaceInfo?: NamespaceInfo) => {\n const { pluginName, apiName } = namespaceInfo ?? {};\n\n // try to resolve a full name to avoid extra prefixing\n const policy = policies.get(name);\n\n if (policy) {\n return policy;\n }\n\n if (pluginName) {\n return policies.get(`${PLUGIN_PREFIX}${pluginName}.${name}`);\n }\n\n if (apiName) {\n return policies.get(`${API_PREFIX}${apiName}.${name}`);\n }\n };\n\n function resolveHandler(policyConfig: PolicyConfig, namespaceInfo?: NamespaceInfo): Core.Policy;\n function resolveHandler(\n policyConfig: PolicyConfig[],\n namespaceInfo?: NamespaceInfo\n ): Core.Policy[];\n function resolveHandler(\n policyConfig: PolicyConfig | PolicyConfig[],\n namespaceInfo?: NamespaceInfo\n ): Core.Policy | Core.Policy[] {\n if (Array.isArray(policyConfig)) {\n return policyConfig.map((config) => {\n return resolveHandler(config, namespaceInfo);\n });\n }\n\n const { policyName, config } = parsePolicy(policyConfig);\n\n const policy = find(policyName, namespaceInfo);\n\n if (!policy) {\n throw new Error(`Policy ${policyName} not found.`);\n }\n\n if (typeof policy === 'function') {\n return policy;\n }\n\n if (policy.validator) {\n policy.validator(config);\n }\n\n return policy.handler;\n }\n\n return {\n /**\n * Returns this list of registered policies uids\n */\n keys() {\n return policies.keys();\n },\n\n /**\n * Returns the instance of a policy. Instantiate the policy if not already done\n */\n get(name: string, namespaceInfo?: NamespaceInfo) {\n return find(name, namespaceInfo);\n },\n /**\n * Checks if a policy is registered\n */\n has(name: string, namespaceInfo?: NamespaceInfo) {\n const res = find(name, namespaceInfo);\n return !!res;\n },\n\n /**\n * Returns a map with all the policies in a namespace\n */\n getAll(namespace: string) {\n return pickBy((_, uid) => hasNamespace(uid, namespace))(Object.fromEntries(policies));\n },\n\n /**\n * Registers a policy\n */\n set(uid: string, policy: Core.Policy) {\n policies.set(uid, policy);\n return this;\n },\n\n /**\n * Registers a map of policies for a specific namespace\n */\n add(namespace: string, newPolicies: Record<string, Core.Policy>) {\n for (const policyName of Object.keys(newPolicies)) {\n const policy = newPolicies[policyName];\n const uid = addNamespace(policyName, namespace);\n\n if (has(uid, policies)) {\n throw new Error(`Policy ${uid} has already been registered.`);\n }\n\n policies.set(uid, policy);\n }\n },\n\n /**\n * Resolves a list of policies\n */\n resolve(config: PolicyConfig | PolicyConfig[], namespaceInfo?: NamespaceInfo) {\n const { pluginName, apiName } = namespaceInfo ?? {};\n\n return castArray(config).map((policyConfig) => {\n return {\n handler: resolveHandler(policyConfig, { pluginName, apiName }),\n config: (typeof policyConfig === 'object' && policyConfig.config) || {},\n };\n });\n },\n };\n};\n\nexport default policiesRegistry;\n"],"names":["config","namespace","pickBy","_","hasNamespace","addNamespace","has","castArray"],"mappings":";;;AAIA,MAAM,gBAAgB;AACtB,MAAM,aAAa;AAcnB,MAAM,cAAc,CAAC,WAAgC;AAC/C,MAAA,OAAO,WAAW,UAAU;AAC9B,WAAO,EAAE,YAAY,QAAQ,QAAQ,CAAG,EAAA;AAAA,EAC1C;AAEM,QAAA,EAAE,MAAM,OAAW,IAAA;AAClB,SAAA,EAAE,YAAY,MAAM;AAC7B;AAEA,MAAM,mBAAmB,MAAM;AACvB,QAAA,+BAAe;AAEf,QAAA,OAAO,CAAC,MAAc,kBAAkC;AAC5D,UAAM,EAAE,YAAY,YAAY,iBAAiB,CAAA;AAG3C,UAAA,SAAS,SAAS,IAAI,IAAI;AAEhC,QAAI,QAAQ;AACH,aAAA;AAAA,IACT;AAEA,QAAI,YAAY;AACP,aAAA,SAAS,IAAI,GAAG,aAAa,GAAG,UAAU,IAAI,IAAI,EAAE;AAAA,IAC7D;AAEA,QAAI,SAAS;AACJ,aAAA,SAAS,IAAI,GAAG,UAAU,GAAG,OAAO,IAAI,IAAI,EAAE;AAAA,IACvD;AAAA,EAAA;AAQO,WAAA,eACP,cACA,eAC6B;AACzB,QAAA,MAAM,QAAQ,YAAY,GAAG;AACxB,aAAA,aAAa,IAAI,CAACA,YAAW;AAC3B,eAAA,eAAeA,SAAQ,aAAa;AAAA,MAAA,CAC5C;AAAA,IACH;AAEA,UAAM,EAAE,YAAY,OAAO,IAAI,YAAY,YAAY;AAEjD,UAAA,SAAS,KAAK,YAAY,aAAa;AAE7C,QAAI,CAAC,QAAQ;AACX,YAAM,IAAI,MAAM,UAAU,UAAU,aAAa;AAAA,IACnD;AAEI,QAAA,OAAO,WAAW,YAAY;AACzB,aAAA;AAAA,IACT;AAEA,QAAI,OAAO,WAAW;AACpB,aAAO,UAAU,MAAM;AAAA,IACzB;AAEA,WAAO,OAAO;AAAA,EAChB;AAEO,SAAA;AAAA;AAAA;AAAA;AAAA,IAIL,OAAO;AACL,aAAO,SAAS;IAClB;AAAA;AAAA;AAAA;AAAA,IAKA,IAAI,MAAc,eAA+B;AACxC,aAAA,KAAK,MAAM,aAAa;AAAA,IACjC;AAAA;AAAA;AAAA;AAAA,IAIA,IAAI,MAAc,eAA+B;AACzC,YAAA,MAAM,KAAK,MAAM,aAAa;AACpC,aAAO,CAAC,CAAC;AAAA,IACX;AAAA;AAAA;AAAA;AAAA,IAKA,OAAOC,aAAmB;AACxB,aAAOC,SAAO,CAACC,IAAG,QAAQC,UAAAA,aAAa,KAAKH,WAAS,CAAC,EAAE,OAAO,YAAY,QAAQ,CAAC;AAAA,IACtF;AAAA;AAAA;AAAA;AAAA,IAKA,IAAI,KAAa,QAAqB;AAC3B,eAAA,IAAI,KAAK,MAAM;AACjB,aAAA;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAKA,IAAIA,aAAmB,aAA0C;AAC/D,iBAAW,cAAc,OAAO,KAAK,WAAW,GAAG;AAC3C,cAAA,SAAS,YAAY,UAAU;AAC/B,cAAA,MAAMI,UAAAA,aAAa,YAAYJ,WAAS;AAE1C,YAAAK,EAAA,IAAI,KAAK,QAAQ,GAAG;AACtB,gBAAM,IAAI,MAAM,UAAU,GAAG,+BAA+B;AAAA,QAC9D;AAES,iBAAA,IAAI,KAAK,MAAM;AAAA,MAC1B;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKA,QAAQ,QAAuC,eAA+B;AAC5E,YAAM,EAAE,YAAY,YAAY,iBAAiB,CAAA;AAEjD,aAAOC,EAAU,UAAA,MAAM,EAAE,IAAI,CAAC,iBAAiB;AACtC,eAAA;AAAA,UACL,SAAS,eAAe,cAAc,EAAE,YAAY,SAAS;AAAA,UAC7D,QAAS,OAAO,iBAAiB,YAAY,aAAa,UAAW,CAAC;AAAA,QAAA;AAAA,MACxE,CACD;AAAA,IACH;AAAA,EAAA;AAEJ;;"}
@@ -1,109 +0,0 @@
1
- import { pickBy, has, castArray } from "lodash/fp";
2
- import { hasNamespace, addNamespace } from "./namespace.mjs";
3
- const PLUGIN_PREFIX = "plugin::";
4
- const API_PREFIX = "api::";
5
- const parsePolicy = (policy) => {
6
- if (typeof policy === "string") {
7
- return { policyName: policy, config: {} };
8
- }
9
- const { name, config } = policy;
10
- return { policyName: name, config };
11
- };
12
- const policiesRegistry = () => {
13
- const policies = /* @__PURE__ */ new Map();
14
- const find = (name, namespaceInfo) => {
15
- const { pluginName, apiName } = namespaceInfo ?? {};
16
- const policy = policies.get(name);
17
- if (policy) {
18
- return policy;
19
- }
20
- if (pluginName) {
21
- return policies.get(`${PLUGIN_PREFIX}${pluginName}.${name}`);
22
- }
23
- if (apiName) {
24
- return policies.get(`${API_PREFIX}${apiName}.${name}`);
25
- }
26
- };
27
- function resolveHandler(policyConfig, namespaceInfo) {
28
- if (Array.isArray(policyConfig)) {
29
- return policyConfig.map((config2) => {
30
- return resolveHandler(config2, namespaceInfo);
31
- });
32
- }
33
- const { policyName, config } = parsePolicy(policyConfig);
34
- const policy = find(policyName, namespaceInfo);
35
- if (!policy) {
36
- throw new Error(`Policy ${policyName} not found.`);
37
- }
38
- if (typeof policy === "function") {
39
- return policy;
40
- }
41
- if (policy.validator) {
42
- policy.validator(config);
43
- }
44
- return policy.handler;
45
- }
46
- return {
47
- /**
48
- * Returns this list of registered policies uids
49
- */
50
- keys() {
51
- return policies.keys();
52
- },
53
- /**
54
- * Returns the instance of a policy. Instantiate the policy if not already done
55
- */
56
- get(name, namespaceInfo) {
57
- return find(name, namespaceInfo);
58
- },
59
- /**
60
- * Checks if a policy is registered
61
- */
62
- has(name, namespaceInfo) {
63
- const res = find(name, namespaceInfo);
64
- return !!res;
65
- },
66
- /**
67
- * Returns a map with all the policies in a namespace
68
- */
69
- getAll(namespace) {
70
- return pickBy((_, uid) => hasNamespace(uid, namespace))(Object.fromEntries(policies));
71
- },
72
- /**
73
- * Registers a policy
74
- */
75
- set(uid, policy) {
76
- policies.set(uid, policy);
77
- return this;
78
- },
79
- /**
80
- * Registers a map of policies for a specific namespace
81
- */
82
- add(namespace, newPolicies) {
83
- for (const policyName of Object.keys(newPolicies)) {
84
- const policy = newPolicies[policyName];
85
- const uid = addNamespace(policyName, namespace);
86
- if (has(uid, policies)) {
87
- throw new Error(`Policy ${uid} has already been registered.`);
88
- }
89
- policies.set(uid, policy);
90
- }
91
- },
92
- /**
93
- * Resolves a list of policies
94
- */
95
- resolve(config, namespaceInfo) {
96
- const { pluginName, apiName } = namespaceInfo ?? {};
97
- return castArray(config).map((policyConfig) => {
98
- return {
99
- handler: resolveHandler(policyConfig, { pluginName, apiName }),
100
- config: typeof policyConfig === "object" && policyConfig.config || {}
101
- };
102
- });
103
- }
104
- };
105
- };
106
- export {
107
- policiesRegistry as default
108
- };
109
- //# sourceMappingURL=policies.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"policies.mjs","sources":["../../src/registries/policies.ts"],"sourcesContent":["import { pickBy, has, castArray } from 'lodash/fp';\nimport type { Core } from '@strapi/types';\nimport { addNamespace, hasNamespace } from './namespace';\n\nconst PLUGIN_PREFIX = 'plugin::';\nconst API_PREFIX = 'api::';\n\ninterface PolicyInfo {\n name: string;\n config: unknown;\n}\n\ntype PolicyConfig = string | PolicyInfo;\n\ninterface NamespaceInfo {\n pluginName?: string;\n apiName?: string;\n}\n\nconst parsePolicy = (policy: string | PolicyInfo) => {\n if (typeof policy === 'string') {\n return { policyName: policy, config: {} };\n }\n\n const { name, config } = policy;\n return { policyName: name, config };\n};\n\nconst policiesRegistry = () => {\n const policies = new Map<string, Core.Policy>();\n\n const find = (name: string, namespaceInfo?: NamespaceInfo) => {\n const { pluginName, apiName } = namespaceInfo ?? {};\n\n // try to resolve a full name to avoid extra prefixing\n const policy = policies.get(name);\n\n if (policy) {\n return policy;\n }\n\n if (pluginName) {\n return policies.get(`${PLUGIN_PREFIX}${pluginName}.${name}`);\n }\n\n if (apiName) {\n return policies.get(`${API_PREFIX}${apiName}.${name}`);\n }\n };\n\n function resolveHandler(policyConfig: PolicyConfig, namespaceInfo?: NamespaceInfo): Core.Policy;\n function resolveHandler(\n policyConfig: PolicyConfig[],\n namespaceInfo?: NamespaceInfo\n ): Core.Policy[];\n function resolveHandler(\n policyConfig: PolicyConfig | PolicyConfig[],\n namespaceInfo?: NamespaceInfo\n ): Core.Policy | Core.Policy[] {\n if (Array.isArray(policyConfig)) {\n return policyConfig.map((config) => {\n return resolveHandler(config, namespaceInfo);\n });\n }\n\n const { policyName, config } = parsePolicy(policyConfig);\n\n const policy = find(policyName, namespaceInfo);\n\n if (!policy) {\n throw new Error(`Policy ${policyName} not found.`);\n }\n\n if (typeof policy === 'function') {\n return policy;\n }\n\n if (policy.validator) {\n policy.validator(config);\n }\n\n return policy.handler;\n }\n\n return {\n /**\n * Returns this list of registered policies uids\n */\n keys() {\n return policies.keys();\n },\n\n /**\n * Returns the instance of a policy. Instantiate the policy if not already done\n */\n get(name: string, namespaceInfo?: NamespaceInfo) {\n return find(name, namespaceInfo);\n },\n /**\n * Checks if a policy is registered\n */\n has(name: string, namespaceInfo?: NamespaceInfo) {\n const res = find(name, namespaceInfo);\n return !!res;\n },\n\n /**\n * Returns a map with all the policies in a namespace\n */\n getAll(namespace: string) {\n return pickBy((_, uid) => hasNamespace(uid, namespace))(Object.fromEntries(policies));\n },\n\n /**\n * Registers a policy\n */\n set(uid: string, policy: Core.Policy) {\n policies.set(uid, policy);\n return this;\n },\n\n /**\n * Registers a map of policies for a specific namespace\n */\n add(namespace: string, newPolicies: Record<string, Core.Policy>) {\n for (const policyName of Object.keys(newPolicies)) {\n const policy = newPolicies[policyName];\n const uid = addNamespace(policyName, namespace);\n\n if (has(uid, policies)) {\n throw new Error(`Policy ${uid} has already been registered.`);\n }\n\n policies.set(uid, policy);\n }\n },\n\n /**\n * Resolves a list of policies\n */\n resolve(config: PolicyConfig | PolicyConfig[], namespaceInfo?: NamespaceInfo) {\n const { pluginName, apiName } = namespaceInfo ?? {};\n\n return castArray(config).map((policyConfig) => {\n return {\n handler: resolveHandler(policyConfig, { pluginName, apiName }),\n config: (typeof policyConfig === 'object' && policyConfig.config) || {},\n };\n });\n },\n };\n};\n\nexport default policiesRegistry;\n"],"names":["config"],"mappings":";;AAIA,MAAM,gBAAgB;AACtB,MAAM,aAAa;AAcnB,MAAM,cAAc,CAAC,WAAgC;AAC/C,MAAA,OAAO,WAAW,UAAU;AAC9B,WAAO,EAAE,YAAY,QAAQ,QAAQ,CAAG,EAAA;AAAA,EAC1C;AAEM,QAAA,EAAE,MAAM,OAAW,IAAA;AAClB,SAAA,EAAE,YAAY,MAAM;AAC7B;AAEA,MAAM,mBAAmB,MAAM;AACvB,QAAA,+BAAe;AAEf,QAAA,OAAO,CAAC,MAAc,kBAAkC;AAC5D,UAAM,EAAE,YAAY,YAAY,iBAAiB,CAAA;AAG3C,UAAA,SAAS,SAAS,IAAI,IAAI;AAEhC,QAAI,QAAQ;AACH,aAAA;AAAA,IACT;AAEA,QAAI,YAAY;AACP,aAAA,SAAS,IAAI,GAAG,aAAa,GAAG,UAAU,IAAI,IAAI,EAAE;AAAA,IAC7D;AAEA,QAAI,SAAS;AACJ,aAAA,SAAS,IAAI,GAAG,UAAU,GAAG,OAAO,IAAI,IAAI,EAAE;AAAA,IACvD;AAAA,EAAA;AAQO,WAAA,eACP,cACA,eAC6B;AACzB,QAAA,MAAM,QAAQ,YAAY,GAAG;AACxB,aAAA,aAAa,IAAI,CAACA,YAAW;AAC3B,eAAA,eAAeA,SAAQ,aAAa;AAAA,MAAA,CAC5C;AAAA,IACH;AAEA,UAAM,EAAE,YAAY,OAAO,IAAI,YAAY,YAAY;AAEjD,UAAA,SAAS,KAAK,YAAY,aAAa;AAE7C,QAAI,CAAC,QAAQ;AACX,YAAM,IAAI,MAAM,UAAU,UAAU,aAAa;AAAA,IACnD;AAEI,QAAA,OAAO,WAAW,YAAY;AACzB,aAAA;AAAA,IACT;AAEA,QAAI,OAAO,WAAW;AACpB,aAAO,UAAU,MAAM;AAAA,IACzB;AAEA,WAAO,OAAO;AAAA,EAChB;AAEO,SAAA;AAAA;AAAA;AAAA;AAAA,IAIL,OAAO;AACL,aAAO,SAAS;IAClB;AAAA;AAAA;AAAA;AAAA,IAKA,IAAI,MAAc,eAA+B;AACxC,aAAA,KAAK,MAAM,aAAa;AAAA,IACjC;AAAA;AAAA;AAAA;AAAA,IAIA,IAAI,MAAc,eAA+B;AACzC,YAAA,MAAM,KAAK,MAAM,aAAa;AACpC,aAAO,CAAC,CAAC;AAAA,IACX;AAAA;AAAA;AAAA;AAAA,IAKA,OAAO,WAAmB;AACxB,aAAO,OAAO,CAAC,GAAG,QAAQ,aAAa,KAAK,SAAS,CAAC,EAAE,OAAO,YAAY,QAAQ,CAAC;AAAA,IACtF;AAAA;AAAA;AAAA;AAAA,IAKA,IAAI,KAAa,QAAqB;AAC3B,eAAA,IAAI,KAAK,MAAM;AACjB,aAAA;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAKA,IAAI,WAAmB,aAA0C;AAC/D,iBAAW,cAAc,OAAO,KAAK,WAAW,GAAG;AAC3C,cAAA,SAAS,YAAY,UAAU;AAC/B,cAAA,MAAM,aAAa,YAAY,SAAS;AAE1C,YAAA,IAAI,KAAK,QAAQ,GAAG;AACtB,gBAAM,IAAI,MAAM,UAAU,GAAG,+BAA+B;AAAA,QAC9D;AAES,iBAAA,IAAI,KAAK,MAAM;AAAA,MAC1B;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKA,QAAQ,QAAuC,eAA+B;AAC5E,YAAM,EAAE,YAAY,YAAY,iBAAiB,CAAA;AAEjD,aAAO,UAAU,MAAM,EAAE,IAAI,CAAC,iBAAiB;AACtC,eAAA;AAAA,UACL,SAAS,eAAe,cAAc,EAAE,YAAY,SAAS;AAAA,UAC7D,QAAS,OAAO,iBAAiB,YAAY,aAAa,UAAW,CAAC;AAAA,QAAA;AAAA,MACxE,CACD;AAAA,IACH;AAAA,EAAA;AAEJ;"}
@@ -1,25 +0,0 @@
1
- "use strict";
2
- const _ = require("lodash");
3
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
4
- const ___default = /* @__PURE__ */ _interopDefault(_);
5
- const sanitizersRegistry = () => {
6
- const sanitizers = {};
7
- return {
8
- get(path) {
9
- return ___default.default.get(sanitizers, path, []);
10
- },
11
- add(path, sanitizer) {
12
- this.get(path).push(sanitizer);
13
- return this;
14
- },
15
- set(path, value = []) {
16
- ___default.default.set(sanitizers, path, value);
17
- return this;
18
- },
19
- has(path) {
20
- return ___default.default.has(sanitizers, path);
21
- }
22
- };
23
- };
24
- module.exports = sanitizersRegistry;
25
- //# sourceMappingURL=sanitizers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sanitizers.js","sources":["../../src/registries/sanitizers.ts"],"sourcesContent":["import _, { PropertyName } from 'lodash';\n\ntype Sanitizer = (value: unknown) => unknown;\n\nconst sanitizersRegistry = () => {\n const sanitizers: Record<string, Sanitizer[]> = {};\n\n return {\n get(path: PropertyName): Sanitizer[] {\n return _.get(sanitizers, path, []);\n },\n\n add(path: PropertyName, sanitizer: Sanitizer) {\n this.get(path).push(sanitizer);\n return this;\n },\n\n set(path: PropertyName, value = []) {\n _.set(sanitizers, path, value);\n return this;\n },\n\n has(path: PropertyName) {\n return _.has(sanitizers, path);\n },\n };\n};\n\nexport default sanitizersRegistry;\n"],"names":["_"],"mappings":";;;;AAIA,MAAM,qBAAqB,MAAM;AAC/B,QAAM,aAA0C,CAAA;AAEzC,SAAA;AAAA,IACL,IAAI,MAAiC;AACnC,aAAOA,WAAE,QAAA,IAAI,YAAY,MAAM,CAAE,CAAA;AAAA,IACnC;AAAA,IAEA,IAAI,MAAoB,WAAsB;AAC5C,WAAK,IAAI,IAAI,EAAE,KAAK,SAAS;AACtB,aAAA;AAAA,IACT;AAAA,IAEA,IAAI,MAAoB,QAAQ,IAAI;AAChCA,iBAAAA,QAAA,IAAI,YAAY,MAAM,KAAK;AACtB,aAAA;AAAA,IACT;AAAA,IAEA,IAAI,MAAoB;AACf,aAAAA,mBAAE,IAAI,YAAY,IAAI;AAAA,IAC/B;AAAA,EAAA;AAEJ;;"}
@@ -1,24 +0,0 @@
1
- import _ from "lodash";
2
- const sanitizersRegistry = () => {
3
- const sanitizers = {};
4
- return {
5
- get(path) {
6
- return _.get(sanitizers, path, []);
7
- },
8
- add(path, sanitizer) {
9
- this.get(path).push(sanitizer);
10
- return this;
11
- },
12
- set(path, value = []) {
13
- _.set(sanitizers, path, value);
14
- return this;
15
- },
16
- has(path) {
17
- return _.has(sanitizers, path);
18
- }
19
- };
20
- };
21
- export {
22
- sanitizersRegistry as default
23
- };
24
- //# sourceMappingURL=sanitizers.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sanitizers.mjs","sources":["../../src/registries/sanitizers.ts"],"sourcesContent":["import _, { PropertyName } from 'lodash';\n\ntype Sanitizer = (value: unknown) => unknown;\n\nconst sanitizersRegistry = () => {\n const sanitizers: Record<string, Sanitizer[]> = {};\n\n return {\n get(path: PropertyName): Sanitizer[] {\n return _.get(sanitizers, path, []);\n },\n\n add(path: PropertyName, sanitizer: Sanitizer) {\n this.get(path).push(sanitizer);\n return this;\n },\n\n set(path: PropertyName, value = []) {\n _.set(sanitizers, path, value);\n return this;\n },\n\n has(path: PropertyName) {\n return _.has(sanitizers, path);\n },\n };\n};\n\nexport default sanitizersRegistry;\n"],"names":[],"mappings":";AAIA,MAAM,qBAAqB,MAAM;AAC/B,QAAM,aAA0C,CAAA;AAEzC,SAAA;AAAA,IACL,IAAI,MAAiC;AACnC,aAAO,EAAE,IAAI,YAAY,MAAM,CAAE,CAAA;AAAA,IACnC;AAAA,IAEA,IAAI,MAAoB,WAAsB;AAC5C,WAAK,IAAI,IAAI,EAAE,KAAK,SAAS;AACtB,aAAA;AAAA,IACT;AAAA,IAEA,IAAI,MAAoB,QAAQ,IAAI;AAChC,QAAA,IAAI,YAAY,MAAM,KAAK;AACtB,aAAA;AAAA,IACT;AAAA,IAEA,IAAI,MAAoB;AACf,aAAA,EAAE,IAAI,YAAY,IAAI;AAAA,IAC/B;AAAA,EAAA;AAEJ;"}
@@ -1,80 +0,0 @@
1
- "use strict";
2
- const _ = require("lodash/fp");
3
- const namespace = require("./namespace.js");
4
- const servicesRegistry = (strapi) => {
5
- const services = {};
6
- const instantiatedServices = {};
7
- return {
8
- /**
9
- * Returns this list of registered services uids
10
- */
11
- keys() {
12
- return Object.keys(services);
13
- },
14
- /**
15
- * Returns the instance of a service. Instantiate the service if not already done
16
- */
17
- get(uid) {
18
- if (instantiatedServices[uid]) {
19
- return instantiatedServices[uid];
20
- }
21
- const service = services[uid];
22
- if (service) {
23
- instantiatedServices[uid] = typeof service === "function" ? service({ strapi }) : service;
24
- return instantiatedServices[uid];
25
- }
26
- },
27
- /**
28
- * Returns a map with all the services in a namespace
29
- */
30
- getAll(namespace$1) {
31
- const filteredServices = _.pickBy((_2, uid) => namespace.hasNamespace(uid, namespace$1))(services);
32
- const map = {};
33
- for (const uid of Object.keys(filteredServices)) {
34
- Object.defineProperty(map, uid, {
35
- enumerable: true,
36
- get: () => {
37
- return this.get(uid);
38
- }
39
- });
40
- }
41
- return map;
42
- },
43
- /**
44
- * Registers a service
45
- */
46
- set(uid, service) {
47
- services[uid] = service;
48
- delete instantiatedServices[uid];
49
- return this;
50
- },
51
- /**
52
- * Registers a map of services for a specific namespace
53
- */
54
- add(namespace$1, newServices) {
55
- for (const serviceName of Object.keys(newServices)) {
56
- const service = newServices[serviceName];
57
- const uid = namespace.addNamespace(serviceName, namespace$1);
58
- if (_.has(uid, services)) {
59
- throw new Error(`Service ${uid} has already been registered.`);
60
- }
61
- services[uid] = service;
62
- }
63
- return this;
64
- },
65
- /**
66
- * Wraps a service to extend it
67
- */
68
- extend(uid, extendFn) {
69
- const currentService = this.get(uid);
70
- if (!currentService) {
71
- throw new Error(`Service ${uid} doesn't exist`);
72
- }
73
- const newService = extendFn(currentService);
74
- instantiatedServices[uid] = newService;
75
- return this;
76
- }
77
- };
78
- };
79
- module.exports = servicesRegistry;
80
- //# sourceMappingURL=services.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"services.js","sources":["../../src/registries/services.ts"],"sourcesContent":["import { pickBy, has } from 'lodash/fp';\nimport type { Core, UID } from '@strapi/types';\nimport { addNamespace, hasNamespace } from './namespace';\n\nexport type ServiceFactory = (params: { strapi: Core.Strapi }) => Core.Service | Core.Service;\nexport type ServiceFactoryMap = Record<string, ServiceFactory>;\nexport type ServiceMap = Record<string, Core.Service>;\nexport type ServiceExtendFn = (service: Core.Service) => Core.Service;\n\nconst servicesRegistry = (strapi: Core.Strapi) => {\n const services: ServiceFactoryMap = {};\n const instantiatedServices: ServiceMap = {};\n\n return {\n /**\n * Returns this list of registered services uids\n */\n keys() {\n return Object.keys(services);\n },\n\n /**\n * Returns the instance of a service. Instantiate the service if not already done\n */\n get(uid: UID.Service) {\n if (instantiatedServices[uid]) {\n return instantiatedServices[uid];\n }\n\n const service = services[uid];\n if (service) {\n instantiatedServices[uid] = typeof service === 'function' ? service({ strapi }) : service;\n return instantiatedServices[uid];\n }\n },\n\n /**\n * Returns a map with all the services in a namespace\n */\n getAll(namespace: string): ServiceMap {\n const filteredServices = pickBy((_, uid) => hasNamespace(uid, namespace))(services);\n\n // create lazy accessor to avoid instantiating the services;\n const map = {};\n for (const uid of Object.keys(filteredServices)) {\n Object.defineProperty(map, uid, {\n enumerable: true,\n get: () => {\n return this.get(uid as UID.Service);\n },\n });\n }\n\n return map;\n },\n\n /**\n * Registers a service\n */\n set(uid: string, service: ServiceFactory) {\n services[uid] = service;\n delete instantiatedServices[uid];\n return this;\n },\n\n /**\n * Registers a map of services for a specific namespace\n */\n add(namespace: string, newServices: ServiceFactoryMap) {\n for (const serviceName of Object.keys(newServices)) {\n const service = newServices[serviceName];\n const uid = addNamespace(serviceName, namespace);\n\n if (has(uid, services)) {\n throw new Error(`Service ${uid} has already been registered.`);\n }\n services[uid] = service;\n }\n\n return this;\n },\n\n /**\n * Wraps a service to extend it\n */\n extend(uid: UID.Service, extendFn: ServiceExtendFn) {\n const currentService = this.get(uid);\n\n if (!currentService) {\n throw new Error(`Service ${uid} doesn't exist`);\n }\n\n const newService = extendFn(currentService);\n instantiatedServices[uid] = newService;\n\n return this;\n },\n };\n};\n\nexport default servicesRegistry;\n"],"names":["namespace","pickBy","_","hasNamespace","addNamespace","has"],"mappings":";;;AASM,MAAA,mBAAmB,CAAC,WAAwB;AAChD,QAAM,WAA8B,CAAA;AACpC,QAAM,uBAAmC,CAAA;AAElC,SAAA;AAAA;AAAA;AAAA;AAAA,IAIL,OAAO;AACE,aAAA,OAAO,KAAK,QAAQ;AAAA,IAC7B;AAAA;AAAA;AAAA;AAAA,IAKA,IAAI,KAAkB;AAChB,UAAA,qBAAqB,GAAG,GAAG;AAC7B,eAAO,qBAAqB,GAAG;AAAA,MACjC;AAEM,YAAA,UAAU,SAAS,GAAG;AAC5B,UAAI,SAAS;AACU,6BAAA,GAAG,IAAI,OAAO,YAAY,aAAa,QAAQ,EAAE,QAAQ,IAAI;AAClF,eAAO,qBAAqB,GAAG;AAAA,MACjC;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKA,OAAOA,aAA+B;AAC9B,YAAA,mBAAmBC,EAAAA,OAAO,CAACC,IAAG,QAAQC,uBAAa,KAAKH,WAAS,CAAC,EAAE,QAAQ;AAGlF,YAAM,MAAM,CAAA;AACZ,iBAAW,OAAO,OAAO,KAAK,gBAAgB,GAAG;AACxC,eAAA,eAAe,KAAK,KAAK;AAAA,UAC9B,YAAY;AAAA,UACZ,KAAK,MAAM;AACF,mBAAA,KAAK,IAAI,GAAkB;AAAA,UACpC;AAAA,QAAA,CACD;AAAA,MACH;AAEO,aAAA;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAKA,IAAI,KAAa,SAAyB;AACxC,eAAS,GAAG,IAAI;AAChB,aAAO,qBAAqB,GAAG;AACxB,aAAA;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAKA,IAAIA,aAAmB,aAAgC;AACrD,iBAAW,eAAe,OAAO,KAAK,WAAW,GAAG;AAC5C,cAAA,UAAU,YAAY,WAAW;AACjC,cAAA,MAAMI,UAAAA,aAAa,aAAaJ,WAAS;AAE3C,YAAAK,EAAA,IAAI,KAAK,QAAQ,GAAG;AACtB,gBAAM,IAAI,MAAM,WAAW,GAAG,+BAA+B;AAAA,QAC/D;AACA,iBAAS,GAAG,IAAI;AAAA,MAClB;AAEO,aAAA;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAKA,OAAO,KAAkB,UAA2B;AAC5C,YAAA,iBAAiB,KAAK,IAAI,GAAG;AAEnC,UAAI,CAAC,gBAAgB;AACnB,cAAM,IAAI,MAAM,WAAW,GAAG,gBAAgB;AAAA,MAChD;AAEM,YAAA,aAAa,SAAS,cAAc;AAC1C,2BAAqB,GAAG,IAAI;AAErB,aAAA;AAAA,IACT;AAAA,EAAA;AAEJ;;"}