@strapi/core 0.0.0-experimental.bd712ad3930045f4a5d2144c119e0b7856e97fc4 → 0.0.0-experimental.be7746d32e70ba7219186219896ff4ae64735740

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 (717) hide show
  1. package/LICENSE +18 -3
  2. package/dist/Strapi.d.ts.map +1 -1
  3. package/dist/configuration/index.d.ts.map +1 -1
  4. package/dist/core-api/service/collection-type.d.ts +2 -2
  5. package/dist/ee/index.d.ts.map +1 -1
  6. package/dist/index.d.ts +14 -0
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +9954 -27
  9. package/dist/index.js.map +1 -1
  10. package/dist/index.mjs +9932 -29
  11. package/dist/index.mjs.map +1 -1
  12. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  13. package/dist/loaders/plugins/index.d.ts.map +1 -1
  14. package/dist/middlewares/body.d.ts.map +1 -1
  15. package/dist/middlewares/cors.d.ts.map +1 -1
  16. package/dist/middlewares/query.d.ts.map +1 -1
  17. package/dist/middlewares/security.d.ts.map +1 -1
  18. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +14 -11
  19. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  20. package/dist/migrations/draft-publish.d.ts +2 -2
  21. package/dist/migrations/draft-publish.d.ts.map +1 -1
  22. package/dist/migrations/i18n.d.ts +5 -0
  23. package/dist/migrations/i18n.d.ts.map +1 -0
  24. package/dist/migrations/index.d.ts +5 -0
  25. package/dist/migrations/index.d.ts.map +1 -0
  26. package/dist/providers/admin.d.ts.map +1 -1
  27. package/dist/registries/policies.d.ts +1 -1
  28. package/dist/registries/policies.d.ts.map +1 -1
  29. package/dist/services/content-api/index.d.ts +10 -12
  30. package/dist/services/content-api/index.d.ts.map +1 -1
  31. package/dist/services/content-api/permissions/index.d.ts +10 -12
  32. package/dist/services/content-api/permissions/index.d.ts.map +1 -1
  33. package/dist/services/content-api/permissions/providers/action.d.ts +5 -6
  34. package/dist/services/content-api/permissions/providers/action.d.ts.map +1 -1
  35. package/dist/services/content-api/permissions/providers/condition.d.ts +5 -6
  36. package/dist/services/content-api/permissions/providers/condition.d.ts.map +1 -1
  37. package/dist/services/cron.d.ts +3 -3
  38. package/dist/services/cron.d.ts.map +1 -1
  39. package/dist/services/document-service/common.d.ts +1 -1
  40. package/dist/services/document-service/common.d.ts.map +1 -1
  41. package/dist/services/document-service/components.d.ts.map +1 -1
  42. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  43. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  44. package/dist/services/document-service/entries.d.ts +2 -2
  45. package/dist/services/document-service/entries.d.ts.map +1 -1
  46. package/dist/services/document-service/events.d.ts +1 -1
  47. package/dist/services/document-service/events.d.ts.map +1 -1
  48. package/dist/services/document-service/index.d.ts +2 -1
  49. package/dist/services/document-service/index.d.ts.map +1 -1
  50. package/dist/services/document-service/repository.d.ts.map +1 -1
  51. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  52. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  53. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  54. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  55. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  56. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  57. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  58. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  59. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  60. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  61. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  62. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  63. package/dist/services/document-service/utils/populate.d.ts +1 -1
  64. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  65. package/dist/services/document-service/utils/unidirectional-relations.d.ts +36 -0
  66. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -0
  67. package/dist/services/entity-validator/blocks-validator.d.ts +1 -2
  68. package/dist/services/entity-validator/blocks-validator.d.ts.map +1 -1
  69. package/dist/services/entity-validator/index.d.ts +2 -1
  70. package/dist/services/entity-validator/index.d.ts.map +1 -1
  71. package/dist/services/entity-validator/validators.d.ts +32 -23
  72. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  73. package/dist/services/metrics/middleware.d.ts.map +1 -1
  74. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  75. package/dist/utils/filepath-to-prop-path.d.ts +1 -1
  76. package/dist/utils/filepath-to-prop-path.d.ts.map +1 -1
  77. package/dist/utils/startup-logger.d.ts.map +1 -1
  78. package/dist/utils/transform-content-types-to-models.d.ts +355 -23
  79. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  80. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  81. package/package.json +29 -30
  82. package/dist/Strapi.js +0 -431
  83. package/dist/Strapi.js.map +0 -1
  84. package/dist/Strapi.mjs +0 -410
  85. package/dist/Strapi.mjs.map +0 -1
  86. package/dist/compile.js +0 -18
  87. package/dist/compile.js.map +0 -1
  88. package/dist/compile.mjs +0 -17
  89. package/dist/compile.mjs.map +0 -1
  90. package/dist/configuration/config-loader.js +0 -106
  91. package/dist/configuration/config-loader.js.map +0 -1
  92. package/dist/configuration/config-loader.mjs +0 -104
  93. package/dist/configuration/config-loader.mjs.map +0 -1
  94. package/dist/configuration/get-dirs.js +0 -31
  95. package/dist/configuration/get-dirs.js.map +0 -1
  96. package/dist/configuration/get-dirs.mjs +0 -31
  97. package/dist/configuration/get-dirs.mjs.map +0 -1
  98. package/dist/configuration/index.js +0 -80
  99. package/dist/configuration/index.js.map +0 -1
  100. package/dist/configuration/index.mjs +0 -75
  101. package/dist/configuration/index.mjs.map +0 -1
  102. package/dist/configuration/urls.js +0 -68
  103. package/dist/configuration/urls.js.map +0 -1
  104. package/dist/configuration/urls.mjs +0 -66
  105. package/dist/configuration/urls.mjs.map +0 -1
  106. package/dist/container.js +0 -30
  107. package/dist/container.js.map +0 -1
  108. package/dist/container.mjs +0 -30
  109. package/dist/container.mjs.map +0 -1
  110. package/dist/core-api/controller/collection-type.js +0 -84
  111. package/dist/core-api/controller/collection-type.js.map +0 -1
  112. package/dist/core-api/controller/collection-type.mjs +0 -84
  113. package/dist/core-api/controller/collection-type.mjs.map +0 -1
  114. package/dist/core-api/controller/index.js +0 -52
  115. package/dist/core-api/controller/index.js.map +0 -1
  116. package/dist/core-api/controller/index.mjs +0 -52
  117. package/dist/core-api/controller/index.mjs.map +0 -1
  118. package/dist/core-api/controller/single-type.js +0 -46
  119. package/dist/core-api/controller/single-type.js.map +0 -1
  120. package/dist/core-api/controller/single-type.mjs +0 -46
  121. package/dist/core-api/controller/single-type.mjs.map +0 -1
  122. package/dist/core-api/controller/transform.js +0 -76
  123. package/dist/core-api/controller/transform.js.map +0 -1
  124. package/dist/core-api/controller/transform.mjs +0 -76
  125. package/dist/core-api/controller/transform.mjs.map +0 -1
  126. package/dist/core-api/routes/index.js +0 -67
  127. package/dist/core-api/routes/index.js.map +0 -1
  128. package/dist/core-api/routes/index.mjs +0 -67
  129. package/dist/core-api/routes/index.mjs.map +0 -1
  130. package/dist/core-api/service/collection-type.js +0 -67
  131. package/dist/core-api/service/collection-type.js.map +0 -1
  132. package/dist/core-api/service/collection-type.mjs +0 -67
  133. package/dist/core-api/service/collection-type.mjs.map +0 -1
  134. package/dist/core-api/service/core-service.js +0 -12
  135. package/dist/core-api/service/core-service.js.map +0 -1
  136. package/dist/core-api/service/core-service.mjs +0 -12
  137. package/dist/core-api/service/core-service.mjs.map +0 -1
  138. package/dist/core-api/service/index.js +0 -16
  139. package/dist/core-api/service/index.js.map +0 -1
  140. package/dist/core-api/service/index.mjs +0 -16
  141. package/dist/core-api/service/index.mjs.map +0 -1
  142. package/dist/core-api/service/pagination.js +0 -52
  143. package/dist/core-api/service/pagination.js.map +0 -1
  144. package/dist/core-api/service/pagination.mjs +0 -52
  145. package/dist/core-api/service/pagination.mjs.map +0 -1
  146. package/dist/core-api/service/single-type.js +0 -46
  147. package/dist/core-api/service/single-type.js.map +0 -1
  148. package/dist/core-api/service/single-type.mjs +0 -46
  149. package/dist/core-api/service/single-type.mjs.map +0 -1
  150. package/dist/domain/content-type/index.js +0 -111
  151. package/dist/domain/content-type/index.js.map +0 -1
  152. package/dist/domain/content-type/index.mjs +0 -109
  153. package/dist/domain/content-type/index.mjs.map +0 -1
  154. package/dist/domain/content-type/validator.js +0 -77
  155. package/dist/domain/content-type/validator.js.map +0 -1
  156. package/dist/domain/content-type/validator.mjs +0 -75
  157. package/dist/domain/content-type/validator.mjs.map +0 -1
  158. package/dist/domain/module/index.js +0 -107
  159. package/dist/domain/module/index.js.map +0 -1
  160. package/dist/domain/module/index.mjs +0 -105
  161. package/dist/domain/module/index.mjs.map +0 -1
  162. package/dist/domain/module/validation.js +0 -25
  163. package/dist/domain/module/validation.js.map +0 -1
  164. package/dist/domain/module/validation.mjs +0 -25
  165. package/dist/domain/module/validation.mjs.map +0 -1
  166. package/dist/ee/index.js +0 -153
  167. package/dist/ee/index.js.map +0 -1
  168. package/dist/ee/index.mjs +0 -154
  169. package/dist/ee/index.mjs.map +0 -1
  170. package/dist/ee/license.js +0 -91
  171. package/dist/ee/license.js.map +0 -1
  172. package/dist/ee/license.mjs +0 -88
  173. package/dist/ee/license.mjs.map +0 -1
  174. package/dist/factories.js +0 -80
  175. package/dist/factories.js.map +0 -1
  176. package/dist/factories.mjs +0 -80
  177. package/dist/factories.mjs.map +0 -1
  178. package/dist/loaders/admin.js +0 -26
  179. package/dist/loaders/admin.js.map +0 -1
  180. package/dist/loaders/admin.mjs +0 -25
  181. package/dist/loaders/admin.mjs.map +0 -1
  182. package/dist/loaders/apis.js +0 -137
  183. package/dist/loaders/apis.js.map +0 -1
  184. package/dist/loaders/apis.mjs +0 -135
  185. package/dist/loaders/apis.mjs.map +0 -1
  186. package/dist/loaders/components.js +0 -38
  187. package/dist/loaders/components.js.map +0 -1
  188. package/dist/loaders/components.mjs +0 -37
  189. package/dist/loaders/components.mjs.map +0 -1
  190. package/dist/loaders/index.js +0 -24
  191. package/dist/loaders/index.js.map +0 -1
  192. package/dist/loaders/index.mjs +0 -24
  193. package/dist/loaders/index.mjs.map +0 -1
  194. package/dist/loaders/middlewares.js +0 -31
  195. package/dist/loaders/middlewares.js.map +0 -1
  196. package/dist/loaders/middlewares.mjs +0 -30
  197. package/dist/loaders/middlewares.mjs.map +0 -1
  198. package/dist/loaders/plugins/get-enabled-plugins.js +0 -113
  199. package/dist/loaders/plugins/get-enabled-plugins.js.map +0 -1
  200. package/dist/loaders/plugins/get-enabled-plugins.mjs +0 -111
  201. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +0 -1
  202. package/dist/loaders/plugins/get-user-plugins-config.js +0 -27
  203. package/dist/loaders/plugins/get-user-plugins-config.js.map +0 -1
  204. package/dist/loaders/plugins/get-user-plugins-config.mjs +0 -25
  205. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +0 -1
  206. package/dist/loaders/plugins/index.js +0 -118
  207. package/dist/loaders/plugins/index.js.map +0 -1
  208. package/dist/loaders/plugins/index.mjs +0 -117
  209. package/dist/loaders/plugins/index.mjs.map +0 -1
  210. package/dist/loaders/policies.js +0 -25
  211. package/dist/loaders/policies.js.map +0 -1
  212. package/dist/loaders/policies.mjs +0 -24
  213. package/dist/loaders/policies.mjs.map +0 -1
  214. package/dist/loaders/sanitizers.js +0 -6
  215. package/dist/loaders/sanitizers.js.map +0 -1
  216. package/dist/loaders/sanitizers.mjs +0 -7
  217. package/dist/loaders/sanitizers.mjs.map +0 -1
  218. package/dist/loaders/src-index.js +0 -33
  219. package/dist/loaders/src-index.js.map +0 -1
  220. package/dist/loaders/src-index.mjs +0 -34
  221. package/dist/loaders/src-index.mjs.map +0 -1
  222. package/dist/loaders/validators.js +0 -6
  223. package/dist/loaders/validators.js.map +0 -1
  224. package/dist/loaders/validators.mjs +0 -7
  225. package/dist/loaders/validators.mjs.map +0 -1
  226. package/dist/middlewares/body.js +0 -65
  227. package/dist/middlewares/body.js.map +0 -1
  228. package/dist/middlewares/body.mjs +0 -61
  229. package/dist/middlewares/body.mjs.map +0 -1
  230. package/dist/middlewares/compression.js +0 -8
  231. package/dist/middlewares/compression.js.map +0 -1
  232. package/dist/middlewares/compression.mjs +0 -6
  233. package/dist/middlewares/compression.mjs.map +0 -1
  234. package/dist/middlewares/cors.js +0 -49
  235. package/dist/middlewares/cors.js.map +0 -1
  236. package/dist/middlewares/cors.mjs +0 -47
  237. package/dist/middlewares/cors.mjs.map +0 -1
  238. package/dist/middlewares/errors.js +0 -33
  239. package/dist/middlewares/errors.js.map +0 -1
  240. package/dist/middlewares/errors.mjs +0 -33
  241. package/dist/middlewares/errors.mjs.map +0 -1
  242. package/dist/middlewares/favicon.js +0 -22
  243. package/dist/middlewares/favicon.js.map +0 -1
  244. package/dist/middlewares/favicon.mjs +0 -20
  245. package/dist/middlewares/favicon.mjs.map +0 -1
  246. package/dist/middlewares/index.js +0 -34
  247. package/dist/middlewares/index.js.map +0 -1
  248. package/dist/middlewares/index.mjs +0 -34
  249. package/dist/middlewares/index.mjs.map +0 -1
  250. package/dist/middlewares/ip.js +0 -8
  251. package/dist/middlewares/ip.js.map +0 -1
  252. package/dist/middlewares/ip.mjs +0 -6
  253. package/dist/middlewares/ip.mjs.map +0 -1
  254. package/dist/middlewares/logger.js +0 -12
  255. package/dist/middlewares/logger.js.map +0 -1
  256. package/dist/middlewares/logger.mjs +0 -12
  257. package/dist/middlewares/logger.mjs.map +0 -1
  258. package/dist/middlewares/powered-by.js +0 -14
  259. package/dist/middlewares/powered-by.js.map +0 -1
  260. package/dist/middlewares/powered-by.mjs +0 -14
  261. package/dist/middlewares/powered-by.mjs.map +0 -1
  262. package/dist/middlewares/public.js +0 -34
  263. package/dist/middlewares/public.js.map +0 -1
  264. package/dist/middlewares/public.mjs +0 -32
  265. package/dist/middlewares/public.mjs.map +0 -1
  266. package/dist/middlewares/query.js +0 -40
  267. package/dist/middlewares/query.js.map +0 -1
  268. package/dist/middlewares/query.mjs +0 -38
  269. package/dist/middlewares/query.mjs.map +0 -1
  270. package/dist/middlewares/response-time.js +0 -12
  271. package/dist/middlewares/response-time.js.map +0 -1
  272. package/dist/middlewares/response-time.mjs +0 -12
  273. package/dist/middlewares/response-time.mjs.map +0 -1
  274. package/dist/middlewares/responses.js +0 -15
  275. package/dist/middlewares/responses.js.map +0 -1
  276. package/dist/middlewares/responses.mjs +0 -15
  277. package/dist/middlewares/responses.mjs.map +0 -1
  278. package/dist/middlewares/security.js +0 -78
  279. package/dist/middlewares/security.js.map +0 -1
  280. package/dist/middlewares/security.mjs +0 -76
  281. package/dist/middlewares/security.mjs.map +0 -1
  282. package/dist/middlewares/session.js +0 -30
  283. package/dist/middlewares/session.js.map +0 -1
  284. package/dist/middlewares/session.mjs +0 -28
  285. package/dist/middlewares/session.mjs.map +0 -1
  286. package/dist/migrations/database/5.0.0-discard-drafts.js +0 -50
  287. package/dist/migrations/database/5.0.0-discard-drafts.js.map +0 -1
  288. package/dist/migrations/database/5.0.0-discard-drafts.mjs +0 -50
  289. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +0 -1
  290. package/dist/migrations/draft-publish.js +0 -42
  291. package/dist/migrations/draft-publish.js.map +0 -1
  292. package/dist/migrations/draft-publish.mjs +0 -42
  293. package/dist/migrations/draft-publish.mjs.map +0 -1
  294. package/dist/providers/admin.js +0 -20
  295. package/dist/providers/admin.js.map +0 -1
  296. package/dist/providers/admin.mjs +0 -21
  297. package/dist/providers/admin.mjs.map +0 -1
  298. package/dist/providers/coreStore.js +0 -11
  299. package/dist/providers/coreStore.js.map +0 -1
  300. package/dist/providers/coreStore.mjs +0 -12
  301. package/dist/providers/coreStore.mjs.map +0 -1
  302. package/dist/providers/cron.js +0 -20
  303. package/dist/providers/cron.js.map +0 -1
  304. package/dist/providers/cron.mjs +0 -21
  305. package/dist/providers/cron.mjs.map +0 -1
  306. package/dist/providers/index.js +0 -11
  307. package/dist/providers/index.js.map +0 -1
  308. package/dist/providers/index.mjs +0 -11
  309. package/dist/providers/index.mjs.map +0 -1
  310. package/dist/providers/provider.js +0 -5
  311. package/dist/providers/provider.js.map +0 -1
  312. package/dist/providers/provider.mjs +0 -5
  313. package/dist/providers/provider.mjs.map +0 -1
  314. package/dist/providers/registries.js +0 -35
  315. package/dist/providers/registries.js.map +0 -1
  316. package/dist/providers/registries.mjs +0 -36
  317. package/dist/providers/registries.mjs.map +0 -1
  318. package/dist/providers/telemetry.js +0 -19
  319. package/dist/providers/telemetry.js.map +0 -1
  320. package/dist/providers/telemetry.mjs +0 -20
  321. package/dist/providers/telemetry.mjs.map +0 -1
  322. package/dist/providers/webhooks.js +0 -30
  323. package/dist/providers/webhooks.js.map +0 -1
  324. package/dist/providers/webhooks.mjs +0 -31
  325. package/dist/providers/webhooks.mjs.map +0 -1
  326. package/dist/registries/apis.js +0 -23
  327. package/dist/registries/apis.js.map +0 -1
  328. package/dist/registries/apis.mjs +0 -24
  329. package/dist/registries/apis.mjs.map +0 -1
  330. package/dist/registries/components.js +0 -45
  331. package/dist/registries/components.js.map +0 -1
  332. package/dist/registries/components.mjs +0 -46
  333. package/dist/registries/components.mjs.map +0 -1
  334. package/dist/registries/content-types.js +0 -70
  335. package/dist/registries/content-types.js.map +0 -1
  336. package/dist/registries/content-types.mjs +0 -71
  337. package/dist/registries/content-types.mjs.map +0 -1
  338. package/dist/registries/controllers.js +0 -80
  339. package/dist/registries/controllers.js.map +0 -1
  340. package/dist/registries/controllers.mjs +0 -81
  341. package/dist/registries/controllers.mjs.map +0 -1
  342. package/dist/registries/custom-fields.js +0 -71
  343. package/dist/registries/custom-fields.js.map +0 -1
  344. package/dist/registries/custom-fields.mjs +0 -72
  345. package/dist/registries/custom-fields.mjs.map +0 -1
  346. package/dist/registries/hooks.js +0 -58
  347. package/dist/registries/hooks.js.map +0 -1
  348. package/dist/registries/hooks.mjs +0 -59
  349. package/dist/registries/hooks.mjs.map +0 -1
  350. package/dist/registries/middlewares.js +0 -60
  351. package/dist/registries/middlewares.js.map +0 -1
  352. package/dist/registries/middlewares.mjs +0 -61
  353. package/dist/registries/middlewares.mjs.map +0 -1
  354. package/dist/registries/models.js +0 -16
  355. package/dist/registries/models.js.map +0 -1
  356. package/dist/registries/models.mjs +0 -16
  357. package/dist/registries/models.mjs.map +0 -1
  358. package/dist/registries/modules.js +0 -39
  359. package/dist/registries/modules.js.map +0 -1
  360. package/dist/registries/modules.mjs +0 -40
  361. package/dist/registries/modules.mjs.map +0 -1
  362. package/dist/registries/namespace.js +0 -27
  363. package/dist/registries/namespace.js.map +0 -1
  364. package/dist/registries/namespace.mjs +0 -27
  365. package/dist/registries/namespace.mjs.map +0 -1
  366. package/dist/registries/plugins.js +0 -23
  367. package/dist/registries/plugins.js.map +0 -1
  368. package/dist/registries/plugins.mjs +0 -24
  369. package/dist/registries/plugins.mjs.map +0 -1
  370. package/dist/registries/policies.js +0 -108
  371. package/dist/registries/policies.js.map +0 -1
  372. package/dist/registries/policies.mjs +0 -109
  373. package/dist/registries/policies.mjs.map +0 -1
  374. package/dist/registries/sanitizers.js +0 -25
  375. package/dist/registries/sanitizers.js.map +0 -1
  376. package/dist/registries/sanitizers.mjs +0 -24
  377. package/dist/registries/sanitizers.mjs.map +0 -1
  378. package/dist/registries/services.js +0 -80
  379. package/dist/registries/services.js.map +0 -1
  380. package/dist/registries/services.mjs +0 -81
  381. package/dist/registries/services.mjs.map +0 -1
  382. package/dist/registries/validators.js +0 -25
  383. package/dist/registries/validators.js.map +0 -1
  384. package/dist/registries/validators.mjs +0 -24
  385. package/dist/registries/validators.mjs.map +0 -1
  386. package/dist/services/auth/index.js +0 -81
  387. package/dist/services/auth/index.js.map +0 -1
  388. package/dist/services/auth/index.mjs +0 -80
  389. package/dist/services/auth/index.mjs.map +0 -1
  390. package/dist/services/config.js +0 -47
  391. package/dist/services/config.js.map +0 -1
  392. package/dist/services/config.mjs +0 -47
  393. package/dist/services/config.mjs.map +0 -1
  394. package/dist/services/content-api/index.js +0 -85
  395. package/dist/services/content-api/index.js.map +0 -1
  396. package/dist/services/content-api/index.mjs +0 -84
  397. package/dist/services/content-api/index.mjs.map +0 -1
  398. package/dist/services/content-api/permissions/engine.js +0 -7
  399. package/dist/services/content-api/permissions/engine.js.map +0 -1
  400. package/dist/services/content-api/permissions/engine.mjs +0 -6
  401. package/dist/services/content-api/permissions/engine.mjs.map +0 -1
  402. package/dist/services/content-api/permissions/index.js +0 -87
  403. package/dist/services/content-api/permissions/index.js.map +0 -1
  404. package/dist/services/content-api/permissions/index.mjs +0 -86
  405. package/dist/services/content-api/permissions/index.mjs.map +0 -1
  406. package/dist/services/content-api/permissions/providers/action.js +0 -16
  407. package/dist/services/content-api/permissions/providers/action.js.map +0 -1
  408. package/dist/services/content-api/permissions/providers/action.mjs +0 -17
  409. package/dist/services/content-api/permissions/providers/action.mjs.map +0 -1
  410. package/dist/services/content-api/permissions/providers/condition.js +0 -16
  411. package/dist/services/content-api/permissions/providers/condition.js.map +0 -1
  412. package/dist/services/content-api/permissions/providers/condition.mjs +0 -17
  413. package/dist/services/content-api/permissions/providers/condition.mjs.map +0 -1
  414. package/dist/services/core-store.js +0 -107
  415. package/dist/services/core-store.js.map +0 -1
  416. package/dist/services/core-store.mjs +0 -107
  417. package/dist/services/core-store.mjs.map +0 -1
  418. package/dist/services/cron.js +0 -63
  419. package/dist/services/cron.js.map +0 -1
  420. package/dist/services/cron.mjs +0 -64
  421. package/dist/services/cron.mjs.map +0 -1
  422. package/dist/services/custom-fields.js +0 -10
  423. package/dist/services/custom-fields.js.map +0 -1
  424. package/dist/services/custom-fields.mjs +0 -11
  425. package/dist/services/custom-fields.mjs.map +0 -1
  426. package/dist/services/document-service/attributes/index.js +0 -22
  427. package/dist/services/document-service/attributes/index.js.map +0 -1
  428. package/dist/services/document-service/attributes/index.mjs +0 -22
  429. package/dist/services/document-service/attributes/index.mjs.map +0 -1
  430. package/dist/services/document-service/attributes/transforms.js +0 -20
  431. package/dist/services/document-service/attributes/transforms.js.map +0 -1
  432. package/dist/services/document-service/attributes/transforms.mjs +0 -19
  433. package/dist/services/document-service/attributes/transforms.mjs.map +0 -1
  434. package/dist/services/document-service/common.js +0 -7
  435. package/dist/services/document-service/common.js.map +0 -1
  436. package/dist/services/document-service/common.mjs +0 -7
  437. package/dist/services/document-service/common.mjs.map +0 -1
  438. package/dist/services/document-service/components.js +0 -288
  439. package/dist/services/document-service/components.js.map +0 -1
  440. package/dist/services/document-service/components.mjs +0 -286
  441. package/dist/services/document-service/components.mjs.map +0 -1
  442. package/dist/services/document-service/draft-and-publish.js +0 -69
  443. package/dist/services/document-service/draft-and-publish.js.map +0 -1
  444. package/dist/services/document-service/draft-and-publish.mjs +0 -69
  445. package/dist/services/document-service/draft-and-publish.mjs.map +0 -1
  446. package/dist/services/document-service/entries.js +0 -96
  447. package/dist/services/document-service/entries.js.map +0 -1
  448. package/dist/services/document-service/entries.mjs +0 -96
  449. package/dist/services/document-service/entries.mjs.map +0 -1
  450. package/dist/services/document-service/events.js +0 -47
  451. package/dist/services/document-service/events.js.map +0 -1
  452. package/dist/services/document-service/events.mjs +0 -47
  453. package/dist/services/document-service/events.mjs.map +0 -1
  454. package/dist/services/document-service/index.js +0 -35
  455. package/dist/services/document-service/index.js.map +0 -1
  456. package/dist/services/document-service/index.mjs +0 -35
  457. package/dist/services/document-service/index.mjs.map +0 -1
  458. package/dist/services/document-service/internationalization.js +0 -63
  459. package/dist/services/document-service/internationalization.js.map +0 -1
  460. package/dist/services/document-service/internationalization.mjs +0 -63
  461. package/dist/services/document-service/internationalization.mjs.map +0 -1
  462. package/dist/services/document-service/middlewares/errors.js +0 -25
  463. package/dist/services/document-service/middlewares/errors.js.map +0 -1
  464. package/dist/services/document-service/middlewares/errors.mjs +0 -25
  465. package/dist/services/document-service/middlewares/errors.mjs.map +0 -1
  466. package/dist/services/document-service/middlewares/middleware-manager.js +0 -49
  467. package/dist/services/document-service/middlewares/middleware-manager.js.map +0 -1
  468. package/dist/services/document-service/middlewares/middleware-manager.mjs +0 -49
  469. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +0 -1
  470. package/dist/services/document-service/params.js +0 -8
  471. package/dist/services/document-service/params.js.map +0 -1
  472. package/dist/services/document-service/params.mjs +0 -8
  473. package/dist/services/document-service/params.mjs.map +0 -1
  474. package/dist/services/document-service/repository.js +0 -278
  475. package/dist/services/document-service/repository.js.map +0 -1
  476. package/dist/services/document-service/repository.mjs +0 -278
  477. package/dist/services/document-service/repository.mjs.map +0 -1
  478. package/dist/services/document-service/transform/data.js +0 -15
  479. package/dist/services/document-service/transform/data.js.map +0 -1
  480. package/dist/services/document-service/transform/data.mjs +0 -15
  481. package/dist/services/document-service/transform/data.mjs.map +0 -1
  482. package/dist/services/document-service/transform/fields.js +0 -24
  483. package/dist/services/document-service/transform/fields.js.map +0 -1
  484. package/dist/services/document-service/transform/fields.mjs +0 -24
  485. package/dist/services/document-service/transform/fields.mjs.map +0 -1
  486. package/dist/services/document-service/transform/id-map.js +0 -78
  487. package/dist/services/document-service/transform/id-map.js.map +0 -1
  488. package/dist/services/document-service/transform/id-map.mjs +0 -78
  489. package/dist/services/document-service/transform/id-map.mjs.map +0 -1
  490. package/dist/services/document-service/transform/id-transform.js +0 -33
  491. package/dist/services/document-service/transform/id-transform.js.map +0 -1
  492. package/dist/services/document-service/transform/id-transform.mjs +0 -33
  493. package/dist/services/document-service/transform/id-transform.mjs.map +0 -1
  494. package/dist/services/document-service/transform/populate.js +0 -21
  495. package/dist/services/document-service/transform/populate.js.map +0 -1
  496. package/dist/services/document-service/transform/populate.mjs +0 -21
  497. package/dist/services/document-service/transform/populate.mjs.map +0 -1
  498. package/dist/services/document-service/transform/query.js +0 -9
  499. package/dist/services/document-service/transform/query.js.map +0 -1
  500. package/dist/services/document-service/transform/query.mjs +0 -9
  501. package/dist/services/document-service/transform/query.mjs.map +0 -1
  502. package/dist/services/document-service/transform/relations/extract/data-ids.js +0 -57
  503. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +0 -1
  504. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +0 -57
  505. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +0 -1
  506. package/dist/services/document-service/transform/relations/transform/data-ids.js +0 -76
  507. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +0 -1
  508. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +0 -76
  509. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +0 -1
  510. package/dist/services/document-service/transform/relations/transform/default-locale.js +0 -32
  511. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +0 -1
  512. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +0 -32
  513. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +0 -1
  514. package/dist/services/document-service/transform/relations/utils/dp.js +0 -30
  515. package/dist/services/document-service/transform/relations/utils/dp.js.map +0 -1
  516. package/dist/services/document-service/transform/relations/utils/dp.mjs +0 -30
  517. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +0 -1
  518. package/dist/services/document-service/transform/relations/utils/i18n.js +0 -25
  519. package/dist/services/document-service/transform/relations/utils/i18n.js.map +0 -1
  520. package/dist/services/document-service/transform/relations/utils/i18n.mjs +0 -25
  521. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +0 -1
  522. package/dist/services/document-service/transform/relations/utils/map-relation.js +0 -91
  523. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +0 -1
  524. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +0 -91
  525. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +0 -1
  526. package/dist/services/document-service/utils/populate.js +0 -45
  527. package/dist/services/document-service/utils/populate.js.map +0 -1
  528. package/dist/services/document-service/utils/populate.mjs +0 -45
  529. package/dist/services/document-service/utils/populate.mjs.map +0 -1
  530. package/dist/services/entity-service/index.js +0 -169
  531. package/dist/services/entity-service/index.js.map +0 -1
  532. package/dist/services/entity-service/index.mjs +0 -167
  533. package/dist/services/entity-service/index.mjs.map +0 -1
  534. package/dist/services/entity-validator/blocks-validator.js +0 -127
  535. package/dist/services/entity-validator/blocks-validator.js.map +0 -1
  536. package/dist/services/entity-validator/blocks-validator.mjs +0 -128
  537. package/dist/services/entity-validator/blocks-validator.mjs.map +0 -1
  538. package/dist/services/entity-validator/index.js +0 -390
  539. package/dist/services/entity-validator/index.js.map +0 -1
  540. package/dist/services/entity-validator/index.mjs +0 -389
  541. package/dist/services/entity-validator/index.mjs.map +0 -1
  542. package/dist/services/entity-validator/validators.js +0 -167
  543. package/dist/services/entity-validator/validators.js.map +0 -1
  544. package/dist/services/entity-validator/validators.mjs +0 -166
  545. package/dist/services/entity-validator/validators.mjs.map +0 -1
  546. package/dist/services/errors.js +0 -76
  547. package/dist/services/errors.js.map +0 -1
  548. package/dist/services/errors.mjs +0 -74
  549. package/dist/services/errors.mjs.map +0 -1
  550. package/dist/services/event-hub.js +0 -72
  551. package/dist/services/event-hub.js.map +0 -1
  552. package/dist/services/event-hub.mjs +0 -73
  553. package/dist/services/event-hub.mjs.map +0 -1
  554. package/dist/services/features.js +0 -17
  555. package/dist/services/features.js.map +0 -1
  556. package/dist/services/features.mjs +0 -17
  557. package/dist/services/features.mjs.map +0 -1
  558. package/dist/services/fs.js +0 -51
  559. package/dist/services/fs.js.map +0 -1
  560. package/dist/services/fs.mjs +0 -49
  561. package/dist/services/fs.mjs.map +0 -1
  562. package/dist/services/metrics/admin-user-hash.js +0 -14
  563. package/dist/services/metrics/admin-user-hash.js.map +0 -1
  564. package/dist/services/metrics/admin-user-hash.mjs +0 -12
  565. package/dist/services/metrics/admin-user-hash.mjs.map +0 -1
  566. package/dist/services/metrics/index.js +0 -45
  567. package/dist/services/metrics/index.js.map +0 -1
  568. package/dist/services/metrics/index.mjs +0 -46
  569. package/dist/services/metrics/index.mjs.map +0 -1
  570. package/dist/services/metrics/is-truthy.js +0 -9
  571. package/dist/services/metrics/is-truthy.js.map +0 -1
  572. package/dist/services/metrics/is-truthy.mjs +0 -8
  573. package/dist/services/metrics/is-truthy.mjs.map +0 -1
  574. package/dist/services/metrics/middleware.js +0 -25
  575. package/dist/services/metrics/middleware.js.map +0 -1
  576. package/dist/services/metrics/middleware.mjs +0 -26
  577. package/dist/services/metrics/middleware.mjs.map +0 -1
  578. package/dist/services/metrics/rate-limiter.js +0 -21
  579. package/dist/services/metrics/rate-limiter.js.map +0 -1
  580. package/dist/services/metrics/rate-limiter.mjs +0 -22
  581. package/dist/services/metrics/rate-limiter.mjs.map +0 -1
  582. package/dist/services/metrics/sender.js +0 -76
  583. package/dist/services/metrics/sender.js.map +0 -1
  584. package/dist/services/metrics/sender.mjs +0 -70
  585. package/dist/services/metrics/sender.mjs.map +0 -1
  586. package/dist/services/query-params.js +0 -12
  587. package/dist/services/query-params.js.map +0 -1
  588. package/dist/services/query-params.mjs +0 -13
  589. package/dist/services/query-params.mjs.map +0 -1
  590. package/dist/services/reloader.js +0 -36
  591. package/dist/services/reloader.js.map +0 -1
  592. package/dist/services/reloader.mjs +0 -36
  593. package/dist/services/reloader.mjs.map +0 -1
  594. package/dist/services/request-context.js +0 -13
  595. package/dist/services/request-context.js.map +0 -1
  596. package/dist/services/request-context.mjs +0 -14
  597. package/dist/services/request-context.mjs.map +0 -1
  598. package/dist/services/server/admin-api.js +0 -13
  599. package/dist/services/server/admin-api.js.map +0 -1
  600. package/dist/services/server/admin-api.mjs +0 -13
  601. package/dist/services/server/admin-api.mjs.map +0 -1
  602. package/dist/services/server/api.js +0 -30
  603. package/dist/services/server/api.js.map +0 -1
  604. package/dist/services/server/api.mjs +0 -28
  605. package/dist/services/server/api.mjs.map +0 -1
  606. package/dist/services/server/compose-endpoint.js +0 -117
  607. package/dist/services/server/compose-endpoint.js.map +0 -1
  608. package/dist/services/server/compose-endpoint.mjs +0 -116
  609. package/dist/services/server/compose-endpoint.mjs.map +0 -1
  610. package/dist/services/server/content-api.js +0 -12
  611. package/dist/services/server/content-api.js.map +0 -1
  612. package/dist/services/server/content-api.mjs +0 -12
  613. package/dist/services/server/content-api.mjs.map +0 -1
  614. package/dist/services/server/http-server.js +0 -50
  615. package/dist/services/server/http-server.js.map +0 -1
  616. package/dist/services/server/http-server.mjs +0 -48
  617. package/dist/services/server/http-server.mjs.map +0 -1
  618. package/dist/services/server/index.js +0 -87
  619. package/dist/services/server/index.js.map +0 -1
  620. package/dist/services/server/index.mjs +0 -85
  621. package/dist/services/server/index.mjs.map +0 -1
  622. package/dist/services/server/koa.js +0 -52
  623. package/dist/services/server/koa.js.map +0 -1
  624. package/dist/services/server/koa.mjs +0 -48
  625. package/dist/services/server/koa.mjs.map +0 -1
  626. package/dist/services/server/middleware.js +0 -92
  627. package/dist/services/server/middleware.js.map +0 -1
  628. package/dist/services/server/middleware.mjs +0 -90
  629. package/dist/services/server/middleware.mjs.map +0 -1
  630. package/dist/services/server/policy.js +0 -20
  631. package/dist/services/server/policy.js.map +0 -1
  632. package/dist/services/server/policy.mjs +0 -20
  633. package/dist/services/server/policy.mjs.map +0 -1
  634. package/dist/services/server/register-middlewares.js +0 -72
  635. package/dist/services/server/register-middlewares.js.map +0 -1
  636. package/dist/services/server/register-middlewares.mjs +0 -73
  637. package/dist/services/server/register-middlewares.mjs.map +0 -1
  638. package/dist/services/server/register-routes.js +0 -76
  639. package/dist/services/server/register-routes.js.map +0 -1
  640. package/dist/services/server/register-routes.mjs +0 -75
  641. package/dist/services/server/register-routes.mjs.map +0 -1
  642. package/dist/services/server/routing.js +0 -91
  643. package/dist/services/server/routing.js.map +0 -1
  644. package/dist/services/server/routing.mjs +0 -89
  645. package/dist/services/server/routing.mjs.map +0 -1
  646. package/dist/services/utils/dynamic-zones.js +0 -17
  647. package/dist/services/utils/dynamic-zones.js.map +0 -1
  648. package/dist/services/utils/dynamic-zones.mjs +0 -18
  649. package/dist/services/utils/dynamic-zones.mjs.map +0 -1
  650. package/dist/services/webhook-runner.js +0 -133
  651. package/dist/services/webhook-runner.js.map +0 -1
  652. package/dist/services/webhook-runner.mjs +0 -131
  653. package/dist/services/webhook-runner.mjs.map +0 -1
  654. package/dist/services/webhook-store.js +0 -110
  655. package/dist/services/webhook-store.js.map +0 -1
  656. package/dist/services/webhook-store.mjs +0 -110
  657. package/dist/services/webhook-store.mjs.map +0 -1
  658. package/dist/services/worker-queue.js +0 -56
  659. package/dist/services/worker-queue.js.map +0 -1
  660. package/dist/services/worker-queue.mjs +0 -55
  661. package/dist/services/worker-queue.mjs.map +0 -1
  662. package/dist/utils/convert-custom-field-type.js +0 -24
  663. package/dist/utils/convert-custom-field-type.js.map +0 -1
  664. package/dist/utils/convert-custom-field-type.mjs +0 -24
  665. package/dist/utils/convert-custom-field-type.mjs.map +0 -1
  666. package/dist/utils/cron.js +0 -38
  667. package/dist/utils/cron.js.map +0 -1
  668. package/dist/utils/cron.mjs +0 -38
  669. package/dist/utils/cron.mjs.map +0 -1
  670. package/dist/utils/fetch.js +0 -21
  671. package/dist/utils/fetch.js.map +0 -1
  672. package/dist/utils/fetch.mjs +0 -21
  673. package/dist/utils/fetch.mjs.map +0 -1
  674. package/dist/utils/filepath-to-prop-path.js +0 -12
  675. package/dist/utils/filepath-to-prop-path.js.map +0 -1
  676. package/dist/utils/filepath-to-prop-path.mjs +0 -10
  677. package/dist/utils/filepath-to-prop-path.mjs.map +0 -1
  678. package/dist/utils/is-initialized.js +0 -16
  679. package/dist/utils/is-initialized.js.map +0 -1
  680. package/dist/utils/is-initialized.mjs +0 -16
  681. package/dist/utils/is-initialized.mjs.map +0 -1
  682. package/dist/utils/lifecycles.js +0 -9
  683. package/dist/utils/lifecycles.js.map +0 -1
  684. package/dist/utils/lifecycles.mjs +0 -9
  685. package/dist/utils/lifecycles.mjs.map +0 -1
  686. package/dist/utils/load-config-file.js +0 -45
  687. package/dist/utils/load-config-file.js.map +0 -1
  688. package/dist/utils/load-config-file.mjs +0 -42
  689. package/dist/utils/load-config-file.mjs.map +0 -1
  690. package/dist/utils/load-files.js +0 -39
  691. package/dist/utils/load-files.js.map +0 -1
  692. package/dist/utils/load-files.mjs +0 -35
  693. package/dist/utils/load-files.mjs.map +0 -1
  694. package/dist/utils/open-browser.js +0 -11
  695. package/dist/utils/open-browser.js.map +0 -1
  696. package/dist/utils/open-browser.mjs +0 -9
  697. package/dist/utils/open-browser.mjs.map +0 -1
  698. package/dist/utils/resolve-working-dirs.js +0 -13
  699. package/dist/utils/resolve-working-dirs.js.map +0 -1
  700. package/dist/utils/resolve-working-dirs.mjs +0 -11
  701. package/dist/utils/resolve-working-dirs.mjs.map +0 -1
  702. package/dist/utils/signals.js +0 -17
  703. package/dist/utils/signals.js.map +0 -1
  704. package/dist/utils/signals.mjs +0 -17
  705. package/dist/utils/signals.mjs.map +0 -1
  706. package/dist/utils/startup-logger.js +0 -81
  707. package/dist/utils/startup-logger.js.map +0 -1
  708. package/dist/utils/startup-logger.mjs +0 -77
  709. package/dist/utils/startup-logger.mjs.map +0 -1
  710. package/dist/utils/transform-content-types-to-models.js +0 -285
  711. package/dist/utils/transform-content-types-to-models.js.map +0 -1
  712. package/dist/utils/transform-content-types-to-models.mjs +0 -282
  713. package/dist/utils/transform-content-types-to-models.mjs.map +0 -1
  714. package/dist/utils/update-notifier/index.js +0 -85
  715. package/dist/utils/update-notifier/index.js.map +0 -1
  716. package/dist/utils/update-notifier/index.mjs +0 -78
  717. 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;;"}