@strapi/core 0.0.0-experimental.d954d57341a6623992a0d211daaec8e245c3517d → 0.0.0-experimental.da0467de7eccc163e893e9b332505a79a5d52ec7

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 (721) 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/utils/fetch.d.ts.map +1 -1
  79. package/dist/utils/filepath-to-prop-path.d.ts +1 -1
  80. package/dist/utils/filepath-to-prop-path.d.ts.map +1 -1
  81. package/dist/utils/startup-logger.d.ts.map +1 -1
  82. package/dist/utils/transform-content-types-to-models.d.ts +355 -23
  83. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  84. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  85. package/package.json +32 -31
  86. package/dist/Strapi.js +0 -387
  87. package/dist/Strapi.js.map +0 -1
  88. package/dist/Strapi.mjs +0 -385
  89. package/dist/Strapi.mjs.map +0 -1
  90. package/dist/compile.js +0 -18
  91. package/dist/compile.js.map +0 -1
  92. package/dist/compile.mjs +0 -17
  93. package/dist/compile.mjs.map +0 -1
  94. package/dist/configuration/config-loader.js +0 -106
  95. package/dist/configuration/config-loader.js.map +0 -1
  96. package/dist/configuration/config-loader.mjs +0 -104
  97. package/dist/configuration/config-loader.mjs.map +0 -1
  98. package/dist/configuration/get-dirs.js +0 -31
  99. package/dist/configuration/get-dirs.js.map +0 -1
  100. package/dist/configuration/get-dirs.mjs +0 -31
  101. package/dist/configuration/get-dirs.mjs.map +0 -1
  102. package/dist/configuration/index.js +0 -80
  103. package/dist/configuration/index.js.map +0 -1
  104. package/dist/configuration/index.mjs +0 -75
  105. package/dist/configuration/index.mjs.map +0 -1
  106. package/dist/configuration/urls.js +0 -68
  107. package/dist/configuration/urls.js.map +0 -1
  108. package/dist/configuration/urls.mjs +0 -66
  109. package/dist/configuration/urls.mjs.map +0 -1
  110. package/dist/container.js +0 -30
  111. package/dist/container.js.map +0 -1
  112. package/dist/container.mjs +0 -30
  113. package/dist/container.mjs.map +0 -1
  114. package/dist/core-api/controller/collection-type.js +0 -84
  115. package/dist/core-api/controller/collection-type.js.map +0 -1
  116. package/dist/core-api/controller/collection-type.mjs +0 -84
  117. package/dist/core-api/controller/collection-type.mjs.map +0 -1
  118. package/dist/core-api/controller/index.js +0 -52
  119. package/dist/core-api/controller/index.js.map +0 -1
  120. package/dist/core-api/controller/index.mjs +0 -52
  121. package/dist/core-api/controller/index.mjs.map +0 -1
  122. package/dist/core-api/controller/single-type.js +0 -46
  123. package/dist/core-api/controller/single-type.js.map +0 -1
  124. package/dist/core-api/controller/single-type.mjs +0 -46
  125. package/dist/core-api/controller/single-type.mjs.map +0 -1
  126. package/dist/core-api/controller/transform.js +0 -76
  127. package/dist/core-api/controller/transform.js.map +0 -1
  128. package/dist/core-api/controller/transform.mjs +0 -76
  129. package/dist/core-api/controller/transform.mjs.map +0 -1
  130. package/dist/core-api/routes/index.js +0 -67
  131. package/dist/core-api/routes/index.js.map +0 -1
  132. package/dist/core-api/routes/index.mjs +0 -67
  133. package/dist/core-api/routes/index.mjs.map +0 -1
  134. package/dist/core-api/service/collection-type.js +0 -67
  135. package/dist/core-api/service/collection-type.js.map +0 -1
  136. package/dist/core-api/service/collection-type.mjs +0 -67
  137. package/dist/core-api/service/collection-type.mjs.map +0 -1
  138. package/dist/core-api/service/core-service.js +0 -12
  139. package/dist/core-api/service/core-service.js.map +0 -1
  140. package/dist/core-api/service/core-service.mjs +0 -12
  141. package/dist/core-api/service/core-service.mjs.map +0 -1
  142. package/dist/core-api/service/index.js +0 -16
  143. package/dist/core-api/service/index.js.map +0 -1
  144. package/dist/core-api/service/index.mjs +0 -16
  145. package/dist/core-api/service/index.mjs.map +0 -1
  146. package/dist/core-api/service/pagination.js +0 -52
  147. package/dist/core-api/service/pagination.js.map +0 -1
  148. package/dist/core-api/service/pagination.mjs +0 -52
  149. package/dist/core-api/service/pagination.mjs.map +0 -1
  150. package/dist/core-api/service/single-type.js +0 -46
  151. package/dist/core-api/service/single-type.js.map +0 -1
  152. package/dist/core-api/service/single-type.mjs +0 -46
  153. package/dist/core-api/service/single-type.mjs.map +0 -1
  154. package/dist/domain/content-type/index.js +0 -111
  155. package/dist/domain/content-type/index.js.map +0 -1
  156. package/dist/domain/content-type/index.mjs +0 -109
  157. package/dist/domain/content-type/index.mjs.map +0 -1
  158. package/dist/domain/content-type/validator.js +0 -77
  159. package/dist/domain/content-type/validator.js.map +0 -1
  160. package/dist/domain/content-type/validator.mjs +0 -75
  161. package/dist/domain/content-type/validator.mjs.map +0 -1
  162. package/dist/domain/module/index.js +0 -107
  163. package/dist/domain/module/index.js.map +0 -1
  164. package/dist/domain/module/index.mjs +0 -105
  165. package/dist/domain/module/index.mjs.map +0 -1
  166. package/dist/domain/module/validation.js +0 -25
  167. package/dist/domain/module/validation.js.map +0 -1
  168. package/dist/domain/module/validation.mjs +0 -25
  169. package/dist/domain/module/validation.mjs.map +0 -1
  170. package/dist/ee/index.js +0 -153
  171. package/dist/ee/index.js.map +0 -1
  172. package/dist/ee/index.mjs +0 -154
  173. package/dist/ee/index.mjs.map +0 -1
  174. package/dist/ee/license.js +0 -91
  175. package/dist/ee/license.js.map +0 -1
  176. package/dist/ee/license.mjs +0 -88
  177. package/dist/ee/license.mjs.map +0 -1
  178. package/dist/factories.js +0 -80
  179. package/dist/factories.js.map +0 -1
  180. package/dist/factories.mjs +0 -80
  181. package/dist/factories.mjs.map +0 -1
  182. package/dist/loaders/admin.js +0 -26
  183. package/dist/loaders/admin.js.map +0 -1
  184. package/dist/loaders/admin.mjs +0 -25
  185. package/dist/loaders/admin.mjs.map +0 -1
  186. package/dist/loaders/apis.js +0 -137
  187. package/dist/loaders/apis.js.map +0 -1
  188. package/dist/loaders/apis.mjs +0 -135
  189. package/dist/loaders/apis.mjs.map +0 -1
  190. package/dist/loaders/components.js +0 -38
  191. package/dist/loaders/components.js.map +0 -1
  192. package/dist/loaders/components.mjs +0 -37
  193. package/dist/loaders/components.mjs.map +0 -1
  194. package/dist/loaders/index.js +0 -24
  195. package/dist/loaders/index.js.map +0 -1
  196. package/dist/loaders/index.mjs +0 -24
  197. package/dist/loaders/index.mjs.map +0 -1
  198. package/dist/loaders/middlewares.js +0 -31
  199. package/dist/loaders/middlewares.js.map +0 -1
  200. package/dist/loaders/middlewares.mjs +0 -30
  201. package/dist/loaders/middlewares.mjs.map +0 -1
  202. package/dist/loaders/plugins/get-enabled-plugins.js +0 -113
  203. package/dist/loaders/plugins/get-enabled-plugins.js.map +0 -1
  204. package/dist/loaders/plugins/get-enabled-plugins.mjs +0 -111
  205. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +0 -1
  206. package/dist/loaders/plugins/get-user-plugins-config.js +0 -27
  207. package/dist/loaders/plugins/get-user-plugins-config.js.map +0 -1
  208. package/dist/loaders/plugins/get-user-plugins-config.mjs +0 -25
  209. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +0 -1
  210. package/dist/loaders/plugins/index.js +0 -118
  211. package/dist/loaders/plugins/index.js.map +0 -1
  212. package/dist/loaders/plugins/index.mjs +0 -117
  213. package/dist/loaders/plugins/index.mjs.map +0 -1
  214. package/dist/loaders/policies.js +0 -25
  215. package/dist/loaders/policies.js.map +0 -1
  216. package/dist/loaders/policies.mjs +0 -24
  217. package/dist/loaders/policies.mjs.map +0 -1
  218. package/dist/loaders/sanitizers.js +0 -6
  219. package/dist/loaders/sanitizers.js.map +0 -1
  220. package/dist/loaders/sanitizers.mjs +0 -7
  221. package/dist/loaders/sanitizers.mjs.map +0 -1
  222. package/dist/loaders/src-index.js +0 -33
  223. package/dist/loaders/src-index.js.map +0 -1
  224. package/dist/loaders/src-index.mjs +0 -34
  225. package/dist/loaders/src-index.mjs.map +0 -1
  226. package/dist/loaders/validators.js +0 -6
  227. package/dist/loaders/validators.js.map +0 -1
  228. package/dist/loaders/validators.mjs +0 -7
  229. package/dist/loaders/validators.mjs.map +0 -1
  230. package/dist/middlewares/body.js +0 -65
  231. package/dist/middlewares/body.js.map +0 -1
  232. package/dist/middlewares/body.mjs +0 -61
  233. package/dist/middlewares/body.mjs.map +0 -1
  234. package/dist/middlewares/compression.js +0 -8
  235. package/dist/middlewares/compression.js.map +0 -1
  236. package/dist/middlewares/compression.mjs +0 -6
  237. package/dist/middlewares/compression.mjs.map +0 -1
  238. package/dist/middlewares/cors.js +0 -49
  239. package/dist/middlewares/cors.js.map +0 -1
  240. package/dist/middlewares/cors.mjs +0 -47
  241. package/dist/middlewares/cors.mjs.map +0 -1
  242. package/dist/middlewares/errors.js +0 -33
  243. package/dist/middlewares/errors.js.map +0 -1
  244. package/dist/middlewares/errors.mjs +0 -33
  245. package/dist/middlewares/errors.mjs.map +0 -1
  246. package/dist/middlewares/favicon.js +0 -22
  247. package/dist/middlewares/favicon.js.map +0 -1
  248. package/dist/middlewares/favicon.mjs +0 -20
  249. package/dist/middlewares/favicon.mjs.map +0 -1
  250. package/dist/middlewares/index.js +0 -34
  251. package/dist/middlewares/index.js.map +0 -1
  252. package/dist/middlewares/index.mjs +0 -34
  253. package/dist/middlewares/index.mjs.map +0 -1
  254. package/dist/middlewares/ip.js +0 -8
  255. package/dist/middlewares/ip.js.map +0 -1
  256. package/dist/middlewares/ip.mjs +0 -6
  257. package/dist/middlewares/ip.mjs.map +0 -1
  258. package/dist/middlewares/logger.js +0 -12
  259. package/dist/middlewares/logger.js.map +0 -1
  260. package/dist/middlewares/logger.mjs +0 -12
  261. package/dist/middlewares/logger.mjs.map +0 -1
  262. package/dist/middlewares/powered-by.js +0 -14
  263. package/dist/middlewares/powered-by.js.map +0 -1
  264. package/dist/middlewares/powered-by.mjs +0 -14
  265. package/dist/middlewares/powered-by.mjs.map +0 -1
  266. package/dist/middlewares/public.js +0 -34
  267. package/dist/middlewares/public.js.map +0 -1
  268. package/dist/middlewares/public.mjs +0 -32
  269. package/dist/middlewares/public.mjs.map +0 -1
  270. package/dist/middlewares/query.js +0 -40
  271. package/dist/middlewares/query.js.map +0 -1
  272. package/dist/middlewares/query.mjs +0 -38
  273. package/dist/middlewares/query.mjs.map +0 -1
  274. package/dist/middlewares/response-time.js +0 -12
  275. package/dist/middlewares/response-time.js.map +0 -1
  276. package/dist/middlewares/response-time.mjs +0 -12
  277. package/dist/middlewares/response-time.mjs.map +0 -1
  278. package/dist/middlewares/responses.js +0 -15
  279. package/dist/middlewares/responses.js.map +0 -1
  280. package/dist/middlewares/responses.mjs +0 -15
  281. package/dist/middlewares/responses.mjs.map +0 -1
  282. package/dist/middlewares/security.js +0 -71
  283. package/dist/middlewares/security.js.map +0 -1
  284. package/dist/middlewares/security.mjs +0 -69
  285. package/dist/middlewares/security.mjs.map +0 -1
  286. package/dist/middlewares/session.js +0 -30
  287. package/dist/middlewares/session.js.map +0 -1
  288. package/dist/middlewares/session.mjs +0 -28
  289. package/dist/middlewares/session.mjs.map +0 -1
  290. package/dist/migrations/database/5.0.0-discard-drafts.js +0 -50
  291. package/dist/migrations/database/5.0.0-discard-drafts.js.map +0 -1
  292. package/dist/migrations/database/5.0.0-discard-drafts.mjs +0 -50
  293. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +0 -1
  294. package/dist/migrations/draft-publish.js +0 -42
  295. package/dist/migrations/draft-publish.js.map +0 -1
  296. package/dist/migrations/draft-publish.mjs +0 -42
  297. package/dist/migrations/draft-publish.mjs.map +0 -1
  298. package/dist/providers/admin.js +0 -20
  299. package/dist/providers/admin.js.map +0 -1
  300. package/dist/providers/admin.mjs +0 -21
  301. package/dist/providers/admin.mjs.map +0 -1
  302. package/dist/providers/coreStore.js +0 -11
  303. package/dist/providers/coreStore.js.map +0 -1
  304. package/dist/providers/coreStore.mjs +0 -12
  305. package/dist/providers/coreStore.mjs.map +0 -1
  306. package/dist/providers/cron.js +0 -20
  307. package/dist/providers/cron.js.map +0 -1
  308. package/dist/providers/cron.mjs +0 -21
  309. package/dist/providers/cron.mjs.map +0 -1
  310. package/dist/providers/index.js +0 -11
  311. package/dist/providers/index.js.map +0 -1
  312. package/dist/providers/index.mjs +0 -11
  313. package/dist/providers/index.mjs.map +0 -1
  314. package/dist/providers/provider.js +0 -5
  315. package/dist/providers/provider.js.map +0 -1
  316. package/dist/providers/provider.mjs +0 -5
  317. package/dist/providers/provider.mjs.map +0 -1
  318. package/dist/providers/registries.js +0 -35
  319. package/dist/providers/registries.js.map +0 -1
  320. package/dist/providers/registries.mjs +0 -36
  321. package/dist/providers/registries.mjs.map +0 -1
  322. package/dist/providers/telemetry.js +0 -19
  323. package/dist/providers/telemetry.js.map +0 -1
  324. package/dist/providers/telemetry.mjs +0 -20
  325. package/dist/providers/telemetry.mjs.map +0 -1
  326. package/dist/providers/webhooks.js +0 -30
  327. package/dist/providers/webhooks.js.map +0 -1
  328. package/dist/providers/webhooks.mjs +0 -31
  329. package/dist/providers/webhooks.mjs.map +0 -1
  330. package/dist/registries/apis.js +0 -23
  331. package/dist/registries/apis.js.map +0 -1
  332. package/dist/registries/apis.mjs +0 -24
  333. package/dist/registries/apis.mjs.map +0 -1
  334. package/dist/registries/components.js +0 -45
  335. package/dist/registries/components.js.map +0 -1
  336. package/dist/registries/components.mjs +0 -46
  337. package/dist/registries/components.mjs.map +0 -1
  338. package/dist/registries/content-types.js +0 -70
  339. package/dist/registries/content-types.js.map +0 -1
  340. package/dist/registries/content-types.mjs +0 -71
  341. package/dist/registries/content-types.mjs.map +0 -1
  342. package/dist/registries/controllers.js +0 -80
  343. package/dist/registries/controllers.js.map +0 -1
  344. package/dist/registries/controllers.mjs +0 -81
  345. package/dist/registries/controllers.mjs.map +0 -1
  346. package/dist/registries/custom-fields.js +0 -71
  347. package/dist/registries/custom-fields.js.map +0 -1
  348. package/dist/registries/custom-fields.mjs +0 -72
  349. package/dist/registries/custom-fields.mjs.map +0 -1
  350. package/dist/registries/hooks.js +0 -58
  351. package/dist/registries/hooks.js.map +0 -1
  352. package/dist/registries/hooks.mjs +0 -59
  353. package/dist/registries/hooks.mjs.map +0 -1
  354. package/dist/registries/middlewares.js +0 -60
  355. package/dist/registries/middlewares.js.map +0 -1
  356. package/dist/registries/middlewares.mjs +0 -61
  357. package/dist/registries/middlewares.mjs.map +0 -1
  358. package/dist/registries/models.js +0 -16
  359. package/dist/registries/models.js.map +0 -1
  360. package/dist/registries/models.mjs +0 -16
  361. package/dist/registries/models.mjs.map +0 -1
  362. package/dist/registries/modules.js +0 -39
  363. package/dist/registries/modules.js.map +0 -1
  364. package/dist/registries/modules.mjs +0 -40
  365. package/dist/registries/modules.mjs.map +0 -1
  366. package/dist/registries/namespace.js +0 -27
  367. package/dist/registries/namespace.js.map +0 -1
  368. package/dist/registries/namespace.mjs +0 -27
  369. package/dist/registries/namespace.mjs.map +0 -1
  370. package/dist/registries/plugins.js +0 -23
  371. package/dist/registries/plugins.js.map +0 -1
  372. package/dist/registries/plugins.mjs +0 -24
  373. package/dist/registries/plugins.mjs.map +0 -1
  374. package/dist/registries/policies.js +0 -108
  375. package/dist/registries/policies.js.map +0 -1
  376. package/dist/registries/policies.mjs +0 -109
  377. package/dist/registries/policies.mjs.map +0 -1
  378. package/dist/registries/sanitizers.js +0 -25
  379. package/dist/registries/sanitizers.js.map +0 -1
  380. package/dist/registries/sanitizers.mjs +0 -24
  381. package/dist/registries/sanitizers.mjs.map +0 -1
  382. package/dist/registries/services.js +0 -80
  383. package/dist/registries/services.js.map +0 -1
  384. package/dist/registries/services.mjs +0 -81
  385. package/dist/registries/services.mjs.map +0 -1
  386. package/dist/registries/validators.js +0 -25
  387. package/dist/registries/validators.js.map +0 -1
  388. package/dist/registries/validators.mjs +0 -24
  389. package/dist/registries/validators.mjs.map +0 -1
  390. package/dist/services/auth/index.js +0 -81
  391. package/dist/services/auth/index.js.map +0 -1
  392. package/dist/services/auth/index.mjs +0 -80
  393. package/dist/services/auth/index.mjs.map +0 -1
  394. package/dist/services/config.js +0 -47
  395. package/dist/services/config.js.map +0 -1
  396. package/dist/services/config.mjs +0 -47
  397. package/dist/services/config.mjs.map +0 -1
  398. package/dist/services/content-api/index.js +0 -85
  399. package/dist/services/content-api/index.js.map +0 -1
  400. package/dist/services/content-api/index.mjs +0 -84
  401. package/dist/services/content-api/index.mjs.map +0 -1
  402. package/dist/services/content-api/permissions/engine.js +0 -7
  403. package/dist/services/content-api/permissions/engine.js.map +0 -1
  404. package/dist/services/content-api/permissions/engine.mjs +0 -6
  405. package/dist/services/content-api/permissions/engine.mjs.map +0 -1
  406. package/dist/services/content-api/permissions/index.js +0 -87
  407. package/dist/services/content-api/permissions/index.js.map +0 -1
  408. package/dist/services/content-api/permissions/index.mjs +0 -86
  409. package/dist/services/content-api/permissions/index.mjs.map +0 -1
  410. package/dist/services/content-api/permissions/providers/action.js +0 -16
  411. package/dist/services/content-api/permissions/providers/action.js.map +0 -1
  412. package/dist/services/content-api/permissions/providers/action.mjs +0 -17
  413. package/dist/services/content-api/permissions/providers/action.mjs.map +0 -1
  414. package/dist/services/content-api/permissions/providers/condition.js +0 -16
  415. package/dist/services/content-api/permissions/providers/condition.js.map +0 -1
  416. package/dist/services/content-api/permissions/providers/condition.mjs +0 -17
  417. package/dist/services/content-api/permissions/providers/condition.mjs.map +0 -1
  418. package/dist/services/core-store.js +0 -107
  419. package/dist/services/core-store.js.map +0 -1
  420. package/dist/services/core-store.mjs +0 -107
  421. package/dist/services/core-store.mjs.map +0 -1
  422. package/dist/services/cron.js +0 -63
  423. package/dist/services/cron.js.map +0 -1
  424. package/dist/services/cron.mjs +0 -64
  425. package/dist/services/cron.mjs.map +0 -1
  426. package/dist/services/custom-fields.js +0 -10
  427. package/dist/services/custom-fields.js.map +0 -1
  428. package/dist/services/custom-fields.mjs +0 -11
  429. package/dist/services/custom-fields.mjs.map +0 -1
  430. package/dist/services/document-service/attributes/index.js +0 -22
  431. package/dist/services/document-service/attributes/index.js.map +0 -1
  432. package/dist/services/document-service/attributes/index.mjs +0 -22
  433. package/dist/services/document-service/attributes/index.mjs.map +0 -1
  434. package/dist/services/document-service/attributes/transforms.js +0 -20
  435. package/dist/services/document-service/attributes/transforms.js.map +0 -1
  436. package/dist/services/document-service/attributes/transforms.mjs +0 -19
  437. package/dist/services/document-service/attributes/transforms.mjs.map +0 -1
  438. package/dist/services/document-service/common.js +0 -7
  439. package/dist/services/document-service/common.js.map +0 -1
  440. package/dist/services/document-service/common.mjs +0 -7
  441. package/dist/services/document-service/common.mjs.map +0 -1
  442. package/dist/services/document-service/components.js +0 -288
  443. package/dist/services/document-service/components.js.map +0 -1
  444. package/dist/services/document-service/components.mjs +0 -286
  445. package/dist/services/document-service/components.mjs.map +0 -1
  446. package/dist/services/document-service/draft-and-publish.js +0 -69
  447. package/dist/services/document-service/draft-and-publish.js.map +0 -1
  448. package/dist/services/document-service/draft-and-publish.mjs +0 -69
  449. package/dist/services/document-service/draft-and-publish.mjs.map +0 -1
  450. package/dist/services/document-service/entries.js +0 -96
  451. package/dist/services/document-service/entries.js.map +0 -1
  452. package/dist/services/document-service/entries.mjs +0 -96
  453. package/dist/services/document-service/entries.mjs.map +0 -1
  454. package/dist/services/document-service/events.js +0 -47
  455. package/dist/services/document-service/events.js.map +0 -1
  456. package/dist/services/document-service/events.mjs +0 -47
  457. package/dist/services/document-service/events.mjs.map +0 -1
  458. package/dist/services/document-service/index.js +0 -35
  459. package/dist/services/document-service/index.js.map +0 -1
  460. package/dist/services/document-service/index.mjs +0 -35
  461. package/dist/services/document-service/index.mjs.map +0 -1
  462. package/dist/services/document-service/internationalization.js +0 -63
  463. package/dist/services/document-service/internationalization.js.map +0 -1
  464. package/dist/services/document-service/internationalization.mjs +0 -63
  465. package/dist/services/document-service/internationalization.mjs.map +0 -1
  466. package/dist/services/document-service/middlewares/errors.js +0 -25
  467. package/dist/services/document-service/middlewares/errors.js.map +0 -1
  468. package/dist/services/document-service/middlewares/errors.mjs +0 -25
  469. package/dist/services/document-service/middlewares/errors.mjs.map +0 -1
  470. package/dist/services/document-service/middlewares/middleware-manager.js +0 -49
  471. package/dist/services/document-service/middlewares/middleware-manager.js.map +0 -1
  472. package/dist/services/document-service/middlewares/middleware-manager.mjs +0 -49
  473. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +0 -1
  474. package/dist/services/document-service/params.js +0 -8
  475. package/dist/services/document-service/params.js.map +0 -1
  476. package/dist/services/document-service/params.mjs +0 -8
  477. package/dist/services/document-service/params.mjs.map +0 -1
  478. package/dist/services/document-service/repository.js +0 -278
  479. package/dist/services/document-service/repository.js.map +0 -1
  480. package/dist/services/document-service/repository.mjs +0 -278
  481. package/dist/services/document-service/repository.mjs.map +0 -1
  482. package/dist/services/document-service/transform/data.js +0 -15
  483. package/dist/services/document-service/transform/data.js.map +0 -1
  484. package/dist/services/document-service/transform/data.mjs +0 -15
  485. package/dist/services/document-service/transform/data.mjs.map +0 -1
  486. package/dist/services/document-service/transform/fields.js +0 -24
  487. package/dist/services/document-service/transform/fields.js.map +0 -1
  488. package/dist/services/document-service/transform/fields.mjs +0 -24
  489. package/dist/services/document-service/transform/fields.mjs.map +0 -1
  490. package/dist/services/document-service/transform/id-map.js +0 -78
  491. package/dist/services/document-service/transform/id-map.js.map +0 -1
  492. package/dist/services/document-service/transform/id-map.mjs +0 -78
  493. package/dist/services/document-service/transform/id-map.mjs.map +0 -1
  494. package/dist/services/document-service/transform/id-transform.js +0 -33
  495. package/dist/services/document-service/transform/id-transform.js.map +0 -1
  496. package/dist/services/document-service/transform/id-transform.mjs +0 -33
  497. package/dist/services/document-service/transform/id-transform.mjs.map +0 -1
  498. package/dist/services/document-service/transform/populate.js +0 -21
  499. package/dist/services/document-service/transform/populate.js.map +0 -1
  500. package/dist/services/document-service/transform/populate.mjs +0 -21
  501. package/dist/services/document-service/transform/populate.mjs.map +0 -1
  502. package/dist/services/document-service/transform/query.js +0 -9
  503. package/dist/services/document-service/transform/query.js.map +0 -1
  504. package/dist/services/document-service/transform/query.mjs +0 -9
  505. package/dist/services/document-service/transform/query.mjs.map +0 -1
  506. package/dist/services/document-service/transform/relations/extract/data-ids.js +0 -57
  507. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +0 -1
  508. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +0 -57
  509. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +0 -1
  510. package/dist/services/document-service/transform/relations/transform/data-ids.js +0 -76
  511. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +0 -1
  512. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +0 -76
  513. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +0 -1
  514. package/dist/services/document-service/transform/relations/transform/default-locale.js +0 -32
  515. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +0 -1
  516. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +0 -32
  517. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +0 -1
  518. package/dist/services/document-service/transform/relations/utils/dp.js +0 -30
  519. package/dist/services/document-service/transform/relations/utils/dp.js.map +0 -1
  520. package/dist/services/document-service/transform/relations/utils/dp.mjs +0 -30
  521. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +0 -1
  522. package/dist/services/document-service/transform/relations/utils/i18n.js +0 -25
  523. package/dist/services/document-service/transform/relations/utils/i18n.js.map +0 -1
  524. package/dist/services/document-service/transform/relations/utils/i18n.mjs +0 -25
  525. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +0 -1
  526. package/dist/services/document-service/transform/relations/utils/map-relation.js +0 -91
  527. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +0 -1
  528. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +0 -91
  529. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +0 -1
  530. package/dist/services/document-service/utils/populate.js +0 -41
  531. package/dist/services/document-service/utils/populate.js.map +0 -1
  532. package/dist/services/document-service/utils/populate.mjs +0 -41
  533. package/dist/services/document-service/utils/populate.mjs.map +0 -1
  534. package/dist/services/entity-service/index.js +0 -169
  535. package/dist/services/entity-service/index.js.map +0 -1
  536. package/dist/services/entity-service/index.mjs +0 -167
  537. package/dist/services/entity-service/index.mjs.map +0 -1
  538. package/dist/services/entity-validator/blocks-validator.js +0 -127
  539. package/dist/services/entity-validator/blocks-validator.js.map +0 -1
  540. package/dist/services/entity-validator/blocks-validator.mjs +0 -128
  541. package/dist/services/entity-validator/blocks-validator.mjs.map +0 -1
  542. package/dist/services/entity-validator/index.js +0 -333
  543. package/dist/services/entity-validator/index.js.map +0 -1
  544. package/dist/services/entity-validator/index.mjs +0 -332
  545. package/dist/services/entity-validator/index.mjs.map +0 -1
  546. package/dist/services/entity-validator/validators.js +0 -126
  547. package/dist/services/entity-validator/validators.js.map +0 -1
  548. package/dist/services/entity-validator/validators.mjs +0 -124
  549. package/dist/services/entity-validator/validators.mjs.map +0 -1
  550. package/dist/services/errors.js +0 -76
  551. package/dist/services/errors.js.map +0 -1
  552. package/dist/services/errors.mjs +0 -74
  553. package/dist/services/errors.mjs.map +0 -1
  554. package/dist/services/event-hub.js +0 -72
  555. package/dist/services/event-hub.js.map +0 -1
  556. package/dist/services/event-hub.mjs +0 -73
  557. package/dist/services/event-hub.mjs.map +0 -1
  558. package/dist/services/features.js +0 -17
  559. package/dist/services/features.js.map +0 -1
  560. package/dist/services/features.mjs +0 -17
  561. package/dist/services/features.mjs.map +0 -1
  562. package/dist/services/fs.js +0 -51
  563. package/dist/services/fs.js.map +0 -1
  564. package/dist/services/fs.mjs +0 -49
  565. package/dist/services/fs.mjs.map +0 -1
  566. package/dist/services/metrics/admin-user-hash.js +0 -14
  567. package/dist/services/metrics/admin-user-hash.js.map +0 -1
  568. package/dist/services/metrics/admin-user-hash.mjs +0 -12
  569. package/dist/services/metrics/admin-user-hash.mjs.map +0 -1
  570. package/dist/services/metrics/index.js +0 -45
  571. package/dist/services/metrics/index.js.map +0 -1
  572. package/dist/services/metrics/index.mjs +0 -46
  573. package/dist/services/metrics/index.mjs.map +0 -1
  574. package/dist/services/metrics/is-truthy.js +0 -9
  575. package/dist/services/metrics/is-truthy.js.map +0 -1
  576. package/dist/services/metrics/is-truthy.mjs +0 -8
  577. package/dist/services/metrics/is-truthy.mjs.map +0 -1
  578. package/dist/services/metrics/middleware.js +0 -25
  579. package/dist/services/metrics/middleware.js.map +0 -1
  580. package/dist/services/metrics/middleware.mjs +0 -26
  581. package/dist/services/metrics/middleware.mjs.map +0 -1
  582. package/dist/services/metrics/rate-limiter.js +0 -21
  583. package/dist/services/metrics/rate-limiter.js.map +0 -1
  584. package/dist/services/metrics/rate-limiter.mjs +0 -22
  585. package/dist/services/metrics/rate-limiter.mjs.map +0 -1
  586. package/dist/services/metrics/sender.js +0 -76
  587. package/dist/services/metrics/sender.js.map +0 -1
  588. package/dist/services/metrics/sender.mjs +0 -70
  589. package/dist/services/metrics/sender.mjs.map +0 -1
  590. package/dist/services/query-params.js +0 -12
  591. package/dist/services/query-params.js.map +0 -1
  592. package/dist/services/query-params.mjs +0 -13
  593. package/dist/services/query-params.mjs.map +0 -1
  594. package/dist/services/reloader.js +0 -36
  595. package/dist/services/reloader.js.map +0 -1
  596. package/dist/services/reloader.mjs +0 -36
  597. package/dist/services/reloader.mjs.map +0 -1
  598. package/dist/services/request-context.js +0 -13
  599. package/dist/services/request-context.js.map +0 -1
  600. package/dist/services/request-context.mjs +0 -14
  601. package/dist/services/request-context.mjs.map +0 -1
  602. package/dist/services/server/admin-api.js +0 -13
  603. package/dist/services/server/admin-api.js.map +0 -1
  604. package/dist/services/server/admin-api.mjs +0 -13
  605. package/dist/services/server/admin-api.mjs.map +0 -1
  606. package/dist/services/server/api.js +0 -30
  607. package/dist/services/server/api.js.map +0 -1
  608. package/dist/services/server/api.mjs +0 -28
  609. package/dist/services/server/api.mjs.map +0 -1
  610. package/dist/services/server/compose-endpoint.js +0 -117
  611. package/dist/services/server/compose-endpoint.js.map +0 -1
  612. package/dist/services/server/compose-endpoint.mjs +0 -116
  613. package/dist/services/server/compose-endpoint.mjs.map +0 -1
  614. package/dist/services/server/content-api.js +0 -12
  615. package/dist/services/server/content-api.js.map +0 -1
  616. package/dist/services/server/content-api.mjs +0 -12
  617. package/dist/services/server/content-api.mjs.map +0 -1
  618. package/dist/services/server/http-server.js +0 -50
  619. package/dist/services/server/http-server.js.map +0 -1
  620. package/dist/services/server/http-server.mjs +0 -48
  621. package/dist/services/server/http-server.mjs.map +0 -1
  622. package/dist/services/server/index.js +0 -87
  623. package/dist/services/server/index.js.map +0 -1
  624. package/dist/services/server/index.mjs +0 -85
  625. package/dist/services/server/index.mjs.map +0 -1
  626. package/dist/services/server/koa.js +0 -52
  627. package/dist/services/server/koa.js.map +0 -1
  628. package/dist/services/server/koa.mjs +0 -48
  629. package/dist/services/server/koa.mjs.map +0 -1
  630. package/dist/services/server/middleware.js +0 -92
  631. package/dist/services/server/middleware.js.map +0 -1
  632. package/dist/services/server/middleware.mjs +0 -90
  633. package/dist/services/server/middleware.mjs.map +0 -1
  634. package/dist/services/server/policy.js +0 -20
  635. package/dist/services/server/policy.js.map +0 -1
  636. package/dist/services/server/policy.mjs +0 -20
  637. package/dist/services/server/policy.mjs.map +0 -1
  638. package/dist/services/server/register-middlewares.js +0 -72
  639. package/dist/services/server/register-middlewares.js.map +0 -1
  640. package/dist/services/server/register-middlewares.mjs +0 -73
  641. package/dist/services/server/register-middlewares.mjs.map +0 -1
  642. package/dist/services/server/register-routes.js +0 -76
  643. package/dist/services/server/register-routes.js.map +0 -1
  644. package/dist/services/server/register-routes.mjs +0 -75
  645. package/dist/services/server/register-routes.mjs.map +0 -1
  646. package/dist/services/server/routing.js +0 -91
  647. package/dist/services/server/routing.js.map +0 -1
  648. package/dist/services/server/routing.mjs +0 -89
  649. package/dist/services/server/routing.mjs.map +0 -1
  650. package/dist/services/utils/dynamic-zones.js +0 -17
  651. package/dist/services/utils/dynamic-zones.js.map +0 -1
  652. package/dist/services/utils/dynamic-zones.mjs +0 -18
  653. package/dist/services/utils/dynamic-zones.mjs.map +0 -1
  654. package/dist/services/webhook-runner.js +0 -133
  655. package/dist/services/webhook-runner.js.map +0 -1
  656. package/dist/services/webhook-runner.mjs +0 -131
  657. package/dist/services/webhook-runner.mjs.map +0 -1
  658. package/dist/services/webhook-store.js +0 -110
  659. package/dist/services/webhook-store.js.map +0 -1
  660. package/dist/services/webhook-store.mjs +0 -110
  661. package/dist/services/webhook-store.mjs.map +0 -1
  662. package/dist/services/worker-queue.js +0 -56
  663. package/dist/services/worker-queue.js.map +0 -1
  664. package/dist/services/worker-queue.mjs +0 -55
  665. package/dist/services/worker-queue.mjs.map +0 -1
  666. package/dist/utils/convert-custom-field-type.js +0 -24
  667. package/dist/utils/convert-custom-field-type.js.map +0 -1
  668. package/dist/utils/convert-custom-field-type.mjs +0 -24
  669. package/dist/utils/convert-custom-field-type.mjs.map +0 -1
  670. package/dist/utils/cron.js +0 -38
  671. package/dist/utils/cron.js.map +0 -1
  672. package/dist/utils/cron.mjs +0 -38
  673. package/dist/utils/cron.mjs.map +0 -1
  674. package/dist/utils/fetch.js +0 -20
  675. package/dist/utils/fetch.js.map +0 -1
  676. package/dist/utils/fetch.mjs +0 -20
  677. package/dist/utils/fetch.mjs.map +0 -1
  678. package/dist/utils/filepath-to-prop-path.js +0 -12
  679. package/dist/utils/filepath-to-prop-path.js.map +0 -1
  680. package/dist/utils/filepath-to-prop-path.mjs +0 -10
  681. package/dist/utils/filepath-to-prop-path.mjs.map +0 -1
  682. package/dist/utils/is-initialized.js +0 -16
  683. package/dist/utils/is-initialized.js.map +0 -1
  684. package/dist/utils/is-initialized.mjs +0 -16
  685. package/dist/utils/is-initialized.mjs.map +0 -1
  686. package/dist/utils/lifecycles.js +0 -9
  687. package/dist/utils/lifecycles.js.map +0 -1
  688. package/dist/utils/lifecycles.mjs +0 -9
  689. package/dist/utils/lifecycles.mjs.map +0 -1
  690. package/dist/utils/load-config-file.js +0 -45
  691. package/dist/utils/load-config-file.js.map +0 -1
  692. package/dist/utils/load-config-file.mjs +0 -42
  693. package/dist/utils/load-config-file.mjs.map +0 -1
  694. package/dist/utils/load-files.js +0 -39
  695. package/dist/utils/load-files.js.map +0 -1
  696. package/dist/utils/load-files.mjs +0 -35
  697. package/dist/utils/load-files.mjs.map +0 -1
  698. package/dist/utils/open-browser.js +0 -11
  699. package/dist/utils/open-browser.js.map +0 -1
  700. package/dist/utils/open-browser.mjs +0 -9
  701. package/dist/utils/open-browser.mjs.map +0 -1
  702. package/dist/utils/resolve-working-dirs.js +0 -13
  703. package/dist/utils/resolve-working-dirs.js.map +0 -1
  704. package/dist/utils/resolve-working-dirs.mjs +0 -11
  705. package/dist/utils/resolve-working-dirs.mjs.map +0 -1
  706. package/dist/utils/signals.js +0 -17
  707. package/dist/utils/signals.js.map +0 -1
  708. package/dist/utils/signals.mjs +0 -17
  709. package/dist/utils/signals.mjs.map +0 -1
  710. package/dist/utils/startup-logger.js +0 -81
  711. package/dist/utils/startup-logger.js.map +0 -1
  712. package/dist/utils/startup-logger.mjs +0 -77
  713. package/dist/utils/startup-logger.mjs.map +0 -1
  714. package/dist/utils/transform-content-types-to-models.js +0 -275
  715. package/dist/utils/transform-content-types-to-models.js.map +0 -1
  716. package/dist/utils/transform-content-types-to-models.mjs +0 -272
  717. package/dist/utils/transform-content-types-to-models.mjs.map +0 -1
  718. package/dist/utils/update-notifier/index.js +0 -85
  719. package/dist/utils/update-notifier/index.js.map +0 -1
  720. package/dist/utils/update-notifier/index.mjs +0 -78
  721. package/dist/utils/update-notifier/index.mjs.map +0 -1
@@ -1,37 +0,0 @@
1
- import { join } from "path";
2
- import _ from "lodash";
3
- import { pathExists } from "fs-extra";
4
- import { loadFiles } from "../utils/load-files.mjs";
5
- async function loadComponents(strapi) {
6
- if (!await pathExists(strapi.dirs.dist.components)) {
7
- return {};
8
- }
9
- const map = await loadFiles(strapi.dirs.dist.components, "*/*.*(js|json)");
10
- const components = Object.keys(map).reduce((acc, category) => {
11
- Object.keys(map[category]).forEach((key) => {
12
- const schema = map[category][key];
13
- if (!schema.collectionName) {
14
- const filePath = join(strapi.dirs.app.components, category, schema.__filename__);
15
- return strapi.stopWithError(
16
- `Component ${key} is missing a "collectionName" property.
17
- Verify file ${filePath}.`
18
- );
19
- }
20
- const uid = `${category}.${key}`;
21
- acc[uid] = Object.assign(schema, {
22
- __schema__: _.cloneDeep(schema),
23
- uid,
24
- category,
25
- modelType: "component",
26
- modelName: key,
27
- globalId: schema.globalId || _.upperFirst(_.camelCase(`component_${uid}`))
28
- });
29
- });
30
- return acc;
31
- }, {});
32
- strapi.get("components").add(components);
33
- }
34
- export {
35
- loadComponents as default
36
- };
37
- //# sourceMappingURL=components.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"components.mjs","sources":["../../src/loaders/components.ts"],"sourcesContent":["import { join } from 'path';\nimport _ from 'lodash';\nimport { pathExists } from 'fs-extra';\nimport type { Core, Struct, UID } from '@strapi/types';\nimport { loadFiles } from '../utils/load-files';\n\ntype LoadedComponent = {\n collectionName: string;\n __filename__: string;\n __schema__: LoadedComponent;\n uid: string;\n category: string;\n modelName: string;\n globalId: string;\n info: any;\n attributes: any;\n};\n\ntype LoadedComponents = {\n [category: string]: {\n [key: string]: LoadedComponent;\n };\n};\n\ntype ComponentMap = {\n [uid in UID.Component]: Struct.ComponentSchema;\n};\n\nexport default async function loadComponents(strapi: Core.Strapi) {\n if (!(await pathExists(strapi.dirs.dist.components))) {\n return {};\n }\n\n const map = await loadFiles<LoadedComponents>(strapi.dirs.dist.components, '*/*.*(js|json)');\n\n const components = Object.keys(map).reduce((acc, category) => {\n Object.keys(map[category]).forEach((key) => {\n const schema = map[category][key];\n\n if (!schema.collectionName) {\n // NOTE: We're using the filepath from the app directory instead of the dist for information purpose\n const filePath = join(strapi.dirs.app.components, category, schema.__filename__);\n\n return strapi.stopWithError(\n `Component ${key} is missing a \"collectionName\" property.\\nVerify file ${filePath}.`\n );\n }\n\n const uid: UID.Component = `${category}.${key}`;\n\n acc[uid] = Object.assign(schema, {\n __schema__: _.cloneDeep(schema),\n uid,\n category,\n modelType: 'component' as const,\n modelName: key,\n globalId: schema.globalId || _.upperFirst(_.camelCase(`component_${uid}`)),\n });\n });\n\n return acc;\n }, {} as ComponentMap);\n\n strapi.get('components').add(components);\n}\n"],"names":[],"mappings":";;;;AA4BA,eAA8B,eAAe,QAAqB;AAChE,MAAI,CAAE,MAAM,WAAW,OAAO,KAAK,KAAK,UAAU,GAAI;AACpD,WAAO;EACT;AAEA,QAAM,MAAM,MAAM,UAA4B,OAAO,KAAK,KAAK,YAAY,gBAAgB;AAErF,QAAA,aAAa,OAAO,KAAK,GAAG,EAAE,OAAO,CAAC,KAAK,aAAa;AAC5D,WAAO,KAAK,IAAI,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ;AAC1C,YAAM,SAAS,IAAI,QAAQ,EAAE,GAAG;AAE5B,UAAA,CAAC,OAAO,gBAAgB;AAEpB,cAAA,WAAW,KAAK,OAAO,KAAK,IAAI,YAAY,UAAU,OAAO,YAAY;AAE/E,eAAO,OAAO;AAAA,UACZ,aAAa,GAAG;AAAA,cAAyD,QAAQ;AAAA,QAAA;AAAA,MAErF;AAEA,YAAM,MAAqB,GAAG,QAAQ,IAAI,GAAG;AAE7C,UAAI,GAAG,IAAI,OAAO,OAAO,QAAQ;AAAA,QAC/B,YAAY,EAAE,UAAU,MAAM;AAAA,QAC9B;AAAA,QACA;AAAA,QACA,WAAW;AAAA,QACX,WAAW;AAAA,QACX,UAAU,OAAO,YAAY,EAAE,WAAW,EAAE,UAAU,aAAa,GAAG,EAAE,CAAC;AAAA,MAAA,CAC1E;AAAA,IAAA,CACF;AAEM,WAAA;AAAA,EACT,GAAG,CAAkB,CAAA;AAErB,SAAO,IAAI,YAAY,EAAE,IAAI,UAAU;AACzC;"}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const srcIndex = require("./src-index.js");
4
- const apis = require("./apis.js");
5
- const middlewares = require("./middlewares.js");
6
- const components = require("./components.js");
7
- const policies = require("./policies.js");
8
- const index = require("./plugins/index.js");
9
- const sanitizers = require("./sanitizers.js");
10
- const validators = require("./validators.js");
11
- async function loadApplicationContext(strapi) {
12
- await Promise.all([
13
- srcIndex(strapi),
14
- sanitizers(strapi),
15
- validators(strapi),
16
- index(strapi),
17
- apis(strapi),
18
- components(strapi),
19
- middlewares(strapi),
20
- policies(strapi)
21
- ]);
22
- }
23
- exports.loadApplicationContext = loadApplicationContext;
24
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/loaders/index.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nimport loadSrcIndex from './src-index';\nimport loadAPIs from './apis';\nimport loadMiddlewares from './middlewares';\nimport loadComponents from './components';\nimport loadPolicies from './policies';\nimport loadPlugins from './plugins';\nimport loadSanitizers from './sanitizers';\nimport loadValidators from './validators';\n\nexport async function loadApplicationContext(strapi: Core.Strapi) {\n await Promise.all([\n loadSrcIndex(strapi),\n loadSanitizers(strapi),\n loadValidators(strapi),\n loadPlugins(strapi),\n loadAPIs(strapi),\n loadComponents(strapi),\n loadMiddlewares(strapi),\n loadPolicies(strapi),\n ]);\n}\n"],"names":["loadSrcIndex","loadSanitizers","loadValidators","loadPlugins","loadAPIs","loadComponents","loadMiddlewares","loadPolicies"],"mappings":";;;;;;;;;;AAWA,eAAsB,uBAAuB,QAAqB;AAChE,QAAM,QAAQ,IAAI;AAAA,IAChBA,SAAa,MAAM;AAAA,IACnBC,WAAe,MAAM;AAAA,IACrBC,WAAe,MAAM;AAAA,IACrBC,MAAY,MAAM;AAAA,IAClBC,KAAS,MAAM;AAAA,IACfC,WAAe,MAAM;AAAA,IACrBC,YAAgB,MAAM;AAAA,IACtBC,SAAa,MAAM;AAAA,EAAA,CACpB;AACH;;"}
@@ -1,24 +0,0 @@
1
- import loadSrcIndex from "./src-index.mjs";
2
- import loadAPIs from "./apis.mjs";
3
- import loadMiddlewares from "./middlewares.mjs";
4
- import loadComponents from "./components.mjs";
5
- import loadPolicies from "./policies.mjs";
6
- import loadPlugins from "./plugins/index.mjs";
7
- import loadSanitizers from "./sanitizers.mjs";
8
- import loadValidators from "./validators.mjs";
9
- async function loadApplicationContext(strapi) {
10
- await Promise.all([
11
- loadSrcIndex(strapi),
12
- loadSanitizers(strapi),
13
- loadValidators(strapi),
14
- loadPlugins(strapi),
15
- loadAPIs(strapi),
16
- loadComponents(strapi),
17
- loadMiddlewares(strapi),
18
- loadPolicies(strapi)
19
- ]);
20
- }
21
- export {
22
- loadApplicationContext
23
- };
24
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/loaders/index.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nimport loadSrcIndex from './src-index';\nimport loadAPIs from './apis';\nimport loadMiddlewares from './middlewares';\nimport loadComponents from './components';\nimport loadPolicies from './policies';\nimport loadPlugins from './plugins';\nimport loadSanitizers from './sanitizers';\nimport loadValidators from './validators';\n\nexport async function loadApplicationContext(strapi: Core.Strapi) {\n await Promise.all([\n loadSrcIndex(strapi),\n loadSanitizers(strapi),\n loadValidators(strapi),\n loadPlugins(strapi),\n loadAPIs(strapi),\n loadComponents(strapi),\n loadMiddlewares(strapi),\n loadPolicies(strapi),\n ]);\n}\n"],"names":[],"mappings":";;;;;;;;AAWA,eAAsB,uBAAuB,QAAqB;AAChE,QAAM,QAAQ,IAAI;AAAA,IAChB,aAAa,MAAM;AAAA,IACnB,eAAe,MAAM;AAAA,IACrB,eAAe,MAAM;AAAA,IACrB,YAAY,MAAM;AAAA,IAClB,SAAS,MAAM;AAAA,IACf,eAAe,MAAM;AAAA,IACrB,gBAAgB,MAAM;AAAA,IACtB,aAAa,MAAM;AAAA,EAAA,CACpB;AACH;"}
@@ -1,31 +0,0 @@
1
- "use strict";
2
- const path = require("path");
3
- const fse = require("fs-extra");
4
- const strapiUtils = require("@strapi/utils");
5
- const index = require("../middlewares/index.js");
6
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
7
- const fse__default = /* @__PURE__ */ _interopDefault(fse);
8
- async function loadMiddlewares(strapi) {
9
- const localMiddlewares = await loadLocalMiddlewares(strapi);
10
- strapi.get("middlewares").add(`global::`, localMiddlewares);
11
- strapi.get("middlewares").add(`strapi::`, index.middlewares);
12
- }
13
- const loadLocalMiddlewares = async (strapi) => {
14
- const dir = strapi.dirs.dist.middlewares;
15
- if (!await fse__default.default.pathExists(dir)) {
16
- return {};
17
- }
18
- const middlewares = {};
19
- const paths = await fse__default.default.readdir(dir, { withFileTypes: true });
20
- for (const fd of paths) {
21
- const { name } = fd;
22
- const fullPath = path.join(dir, name);
23
- if (fd.isFile() && path.extname(name) === ".js") {
24
- const key = path.basename(name, ".js");
25
- middlewares[key] = strapiUtils.importDefault(fullPath);
26
- }
27
- }
28
- return middlewares;
29
- };
30
- module.exports = loadMiddlewares;
31
- //# sourceMappingURL=middlewares.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"middlewares.js","sources":["../../src/loaders/middlewares.ts"],"sourcesContent":["import { join, extname, basename } from 'path';\nimport fse from 'fs-extra';\nimport { importDefault } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { middlewares as internalMiddlewares } from '../middlewares';\n\n// TODO:: allow folders with index.js inside for bigger policies\nexport default async function loadMiddlewares(strapi: Core.Strapi) {\n const localMiddlewares = await loadLocalMiddlewares(strapi);\n\n strapi.get('middlewares').add(`global::`, localMiddlewares);\n strapi.get('middlewares').add(`strapi::`, internalMiddlewares);\n}\n\nconst loadLocalMiddlewares = async (strapi: Core.Strapi) => {\n const dir = strapi.dirs.dist.middlewares;\n\n if (!(await fse.pathExists(dir))) {\n return {};\n }\n\n const middlewares: Record<string, Core.MiddlewareFactory> = {};\n const paths = await fse.readdir(dir, { withFileTypes: true });\n\n for (const fd of paths) {\n const { name } = fd;\n const fullPath = join(dir, name);\n\n if (fd.isFile() && extname(name) === '.js') {\n const key = basename(name, '.js');\n middlewares[key] = importDefault(fullPath);\n }\n }\n\n return middlewares;\n};\n"],"names":["internalMiddlewares","fse","join","extname","basename","importDefault"],"mappings":";;;;;;;AAOA,eAA8B,gBAAgB,QAAqB;AAC3D,QAAA,mBAAmB,MAAM,qBAAqB,MAAM;AAE1D,SAAO,IAAI,aAAa,EAAE,IAAI,YAAY,gBAAgB;AAC1D,SAAO,IAAI,aAAa,EAAE,IAAI,YAAYA,MAAAA,WAAmB;AAC/D;AAEA,MAAM,uBAAuB,OAAO,WAAwB;AACpD,QAAA,MAAM,OAAO,KAAK,KAAK;AAE7B,MAAI,CAAE,MAAMC,aAAAA,QAAI,WAAW,GAAG,GAAI;AAChC,WAAO;EACT;AAEA,QAAM,cAAsD,CAAA;AACtD,QAAA,QAAQ,MAAMA,aAAAA,QAAI,QAAQ,KAAK,EAAE,eAAe,MAAM;AAE5D,aAAW,MAAM,OAAO;AAChB,UAAA,EAAE,KAAS,IAAA;AACX,UAAA,WAAWC,KAAAA,KAAK,KAAK,IAAI;AAE/B,QAAI,GAAG,OAAO,KAAKC,KAAQ,QAAA,IAAI,MAAM,OAAO;AACpC,YAAA,MAAMC,KAAAA,SAAS,MAAM,KAAK;AACpB,kBAAA,GAAG,IAAIC,YAAA,cAAc,QAAQ;AAAA,IAC3C;AAAA,EACF;AAEO,SAAA;AACT;;"}
@@ -1,30 +0,0 @@
1
- import { join, extname, basename } from "path";
2
- import fse from "fs-extra";
3
- import { importDefault } from "@strapi/utils";
4
- import { middlewares } from "../middlewares/index.mjs";
5
- async function loadMiddlewares(strapi) {
6
- const localMiddlewares = await loadLocalMiddlewares(strapi);
7
- strapi.get("middlewares").add(`global::`, localMiddlewares);
8
- strapi.get("middlewares").add(`strapi::`, middlewares);
9
- }
10
- const loadLocalMiddlewares = async (strapi) => {
11
- const dir = strapi.dirs.dist.middlewares;
12
- if (!await fse.pathExists(dir)) {
13
- return {};
14
- }
15
- const middlewares2 = {};
16
- const paths = await fse.readdir(dir, { withFileTypes: true });
17
- for (const fd of paths) {
18
- const { name } = fd;
19
- const fullPath = join(dir, name);
20
- if (fd.isFile() && extname(name) === ".js") {
21
- const key = basename(name, ".js");
22
- middlewares2[key] = importDefault(fullPath);
23
- }
24
- }
25
- return middlewares2;
26
- };
27
- export {
28
- loadMiddlewares as default
29
- };
30
- //# sourceMappingURL=middlewares.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"middlewares.mjs","sources":["../../src/loaders/middlewares.ts"],"sourcesContent":["import { join, extname, basename } from 'path';\nimport fse from 'fs-extra';\nimport { importDefault } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { middlewares as internalMiddlewares } from '../middlewares';\n\n// TODO:: allow folders with index.js inside for bigger policies\nexport default async function loadMiddlewares(strapi: Core.Strapi) {\n const localMiddlewares = await loadLocalMiddlewares(strapi);\n\n strapi.get('middlewares').add(`global::`, localMiddlewares);\n strapi.get('middlewares').add(`strapi::`, internalMiddlewares);\n}\n\nconst loadLocalMiddlewares = async (strapi: Core.Strapi) => {\n const dir = strapi.dirs.dist.middlewares;\n\n if (!(await fse.pathExists(dir))) {\n return {};\n }\n\n const middlewares: Record<string, Core.MiddlewareFactory> = {};\n const paths = await fse.readdir(dir, { withFileTypes: true });\n\n for (const fd of paths) {\n const { name } = fd;\n const fullPath = join(dir, name);\n\n if (fd.isFile() && extname(name) === '.js') {\n const key = basename(name, '.js');\n middlewares[key] = importDefault(fullPath);\n }\n }\n\n return middlewares;\n};\n"],"names":["internalMiddlewares","middlewares"],"mappings":";;;;AAOA,eAA8B,gBAAgB,QAAqB;AAC3D,QAAA,mBAAmB,MAAM,qBAAqB,MAAM;AAE1D,SAAO,IAAI,aAAa,EAAE,IAAI,YAAY,gBAAgB;AAC1D,SAAO,IAAI,aAAa,EAAE,IAAI,YAAYA,WAAmB;AAC/D;AAEA,MAAM,uBAAuB,OAAO,WAAwB;AACpD,QAAA,MAAM,OAAO,KAAK,KAAK;AAE7B,MAAI,CAAE,MAAM,IAAI,WAAW,GAAG,GAAI;AAChC,WAAO;EACT;AAEA,QAAMC,eAAsD,CAAA;AACtD,QAAA,QAAQ,MAAM,IAAI,QAAQ,KAAK,EAAE,eAAe,MAAM;AAE5D,aAAW,MAAM,OAAO;AAChB,UAAA,EAAE,KAAS,IAAA;AACX,UAAA,WAAW,KAAK,KAAK,IAAI;AAE/B,QAAI,GAAG,OAAO,KAAK,QAAQ,IAAI,MAAM,OAAO;AACpC,YAAA,MAAM,SAAS,MAAM,KAAK;AACpB,MAAAA,aAAA,GAAG,IAAI,cAAc,QAAQ;AAAA,IAC3C;AAAA,EACF;AAEO,SAAAA;AACT;"}
@@ -1,113 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const path = require("path");
4
- const fs = require("fs");
5
- const _ = require("lodash");
6
- const _$1 = require("lodash/fp");
7
- const strapiUtils = require("@strapi/utils");
8
- const getUserPluginsConfig = require("./get-user-plugins-config.js");
9
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
10
- const ___default = /* @__PURE__ */ _interopDefault(_);
11
- const INTERNAL_PLUGINS = [
12
- "@strapi/content-manager",
13
- "@strapi/content-type-builder",
14
- "@strapi/email",
15
- "@strapi/upload",
16
- "@strapi/i18n",
17
- "@strapi/content-releases",
18
- "@strapi/review-workflows"
19
- ];
20
- const isStrapiPlugin = (info) => _$1.get("strapi.kind", info) === "plugin";
21
- const validatePluginName = (pluginName) => {
22
- if (!strapiUtils.strings.isKebabCase(pluginName)) {
23
- throw new Error(`Plugin name "${pluginName}" is not in kebab (an-example-of-kebab-case)`);
24
- }
25
- };
26
- const toDetailedDeclaration = (declaration) => {
27
- if (typeof declaration === "boolean") {
28
- return { enabled: declaration };
29
- }
30
- const detailedDeclaration = {
31
- enabled: declaration.enabled
32
- };
33
- if (declaration?.resolve) {
34
- let pathToPlugin = "";
35
- if (declaration.isModule) {
36
- pathToPlugin = path.join(declaration.resolve, "..");
37
- } else {
38
- try {
39
- pathToPlugin = path.dirname(require.resolve(declaration.resolve));
40
- } catch (e) {
41
- pathToPlugin = path.resolve(strapi.dirs.app.root, declaration.resolve);
42
- if (!fs.existsSync(pathToPlugin) || !fs.statSync(pathToPlugin).isDirectory()) {
43
- throw new Error(`${declaration.resolve} couldn't be resolved`);
44
- }
45
- }
46
- }
47
- detailedDeclaration.pathToPlugin = pathToPlugin;
48
- }
49
- return detailedDeclaration;
50
- };
51
- const getEnabledPlugins = async (strapi2, { client } = { client: false }) => {
52
- const internalPlugins = {};
53
- for (const dep of INTERNAL_PLUGINS) {
54
- const packagePath = path.join(dep, "package.json");
55
- const packageInfo = require(packagePath);
56
- validatePluginName(packageInfo.strapi.name);
57
- internalPlugins[packageInfo.strapi.name] = {
58
- ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),
59
- info: packageInfo.strapi
60
- };
61
- }
62
- const installedPlugins = {};
63
- const dependencies = strapi2.config.get("info.dependencies", {});
64
- for (const dep of Object.keys(dependencies)) {
65
- const packagePath = path.join(dep, "package.json");
66
- let packageInfo;
67
- try {
68
- packageInfo = require(packagePath);
69
- } catch {
70
- continue;
71
- }
72
- if (isStrapiPlugin(packageInfo)) {
73
- validatePluginName(packageInfo.strapi.name);
74
- installedPlugins[packageInfo.strapi.name] = {
75
- ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),
76
- info: {
77
- ...packageInfo.strapi,
78
- packageName: packageInfo.name
79
- }
80
- };
81
- }
82
- }
83
- const declaredPlugins = {};
84
- const userPluginsConfig = await getUserPluginsConfig.getUserPluginsConfig();
85
- ___default.default.forEach(userPluginsConfig, (declaration, pluginName) => {
86
- validatePluginName(pluginName);
87
- declaredPlugins[pluginName] = {
88
- ...toDetailedDeclaration(declaration),
89
- info: {}
90
- };
91
- const { pathToPlugin } = declaredPlugins[pluginName];
92
- if (pathToPlugin) {
93
- const packagePath = path.join(pathToPlugin, "package.json");
94
- const packageInfo = require(packagePath);
95
- if (isStrapiPlugin(packageInfo)) {
96
- declaredPlugins[pluginName].info = packageInfo.strapi || {};
97
- }
98
- }
99
- });
100
- const declaredPluginsResolves = _$1.map(_$1.prop("pathToPlugin"), declaredPlugins);
101
- const installedPluginsNotAlreadyUsed = _$1.pickBy(
102
- (p) => !declaredPluginsResolves.includes(p.pathToPlugin),
103
- installedPlugins
104
- );
105
- const enabledPlugins = _$1.pipe(
106
- _$1.defaultsDeep(declaredPlugins),
107
- _$1.defaultsDeep(installedPluginsNotAlreadyUsed),
108
- _$1.pickBy((p) => p.enabled)
109
- )(internalPlugins);
110
- return enabledPlugins;
111
- };
112
- exports.getEnabledPlugins = getEnabledPlugins;
113
- //# sourceMappingURL=get-enabled-plugins.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-enabled-plugins.js","sources":["../../../src/loaders/plugins/get-enabled-plugins.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nimport { dirname, join, resolve } from 'path';\nimport { statSync, existsSync } from 'fs';\nimport _ from 'lodash';\nimport { get, pickBy, defaultsDeep, map, prop, pipe } from 'lodash/fp';\nimport { strings } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { getUserPluginsConfig } from './get-user-plugins-config';\n\ninterface PluginMeta {\n enabled: boolean;\n pathToPlugin?: string;\n info: Record<string, unknown>;\n}\n\ntype PluginMetas = Record<string, PluginMeta>;\n\ninterface PluginInfo {\n name: string;\n kind: string;\n}\n\ninterface PluginDeclaration {\n enabled: boolean;\n resolve: string;\n isModule: boolean;\n}\n\n/**\n * otherwise known as \"core features\"\n *\n * NOTE: These are excluded from the content manager plugin list, as they are always enabled.\n * See admin.ts server controller on the content-manager plugin for more details.\n */\nconst INTERNAL_PLUGINS = [\n '@strapi/content-manager',\n '@strapi/content-type-builder',\n '@strapi/email',\n '@strapi/upload',\n '@strapi/i18n',\n '@strapi/content-releases',\n '@strapi/review-workflows',\n];\n\nconst isStrapiPlugin = (info: PluginInfo) => get('strapi.kind', info) === 'plugin';\n\nconst validatePluginName = (pluginName: string) => {\n if (!strings.isKebabCase(pluginName)) {\n throw new Error(`Plugin name \"${pluginName}\" is not in kebab (an-example-of-kebab-case)`);\n }\n};\n\nconst toDetailedDeclaration = (declaration: boolean | PluginDeclaration) => {\n if (typeof declaration === 'boolean') {\n return { enabled: declaration };\n }\n\n const detailedDeclaration: { enabled: boolean; pathToPlugin?: string } = {\n enabled: declaration.enabled,\n };\n\n if (declaration?.resolve) {\n let pathToPlugin = '';\n\n if (declaration.isModule) {\n /**\n * we only want the node_module here, not the package.json\n */\n pathToPlugin = join(declaration.resolve, '..');\n } else {\n try {\n pathToPlugin = dirname(require.resolve(declaration.resolve));\n } catch (e) {\n pathToPlugin = resolve(strapi.dirs.app.root, declaration.resolve);\n\n if (!existsSync(pathToPlugin) || !statSync(pathToPlugin).isDirectory()) {\n throw new Error(`${declaration.resolve} couldn't be resolved`);\n }\n }\n }\n\n detailedDeclaration.pathToPlugin = pathToPlugin;\n }\n\n return detailedDeclaration;\n};\n\nexport const getEnabledPlugins = async (strapi: Core.Strapi, { client } = { client: false }) => {\n const internalPlugins: PluginMetas = {};\n\n for (const dep of INTERNAL_PLUGINS) {\n const packagePath = join(dep, 'package.json');\n const packageInfo = require(packagePath);\n\n validatePluginName(packageInfo.strapi.name);\n internalPlugins[packageInfo.strapi.name] = {\n ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),\n info: packageInfo.strapi,\n };\n }\n\n const installedPlugins: PluginMetas = {};\n const dependencies = strapi.config.get('info.dependencies', {});\n\n for (const dep of Object.keys(dependencies)) {\n const packagePath = join(dep, 'package.json');\n let packageInfo;\n try {\n packageInfo = require(packagePath);\n } catch {\n continue;\n }\n\n if (isStrapiPlugin(packageInfo)) {\n validatePluginName(packageInfo.strapi.name);\n installedPlugins[packageInfo.strapi.name] = {\n ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),\n info: {\n ...packageInfo.strapi,\n packageName: packageInfo.name,\n },\n };\n }\n }\n\n const declaredPlugins: PluginMetas = {};\n const userPluginsConfig = await getUserPluginsConfig();\n\n _.forEach(userPluginsConfig, (declaration, pluginName) => {\n validatePluginName(pluginName);\n\n declaredPlugins[pluginName] = {\n ...toDetailedDeclaration(declaration),\n info: {},\n };\n\n const { pathToPlugin } = declaredPlugins[pluginName];\n\n // for manually resolved plugins\n if (pathToPlugin) {\n const packagePath = join(pathToPlugin, 'package.json');\n const packageInfo = require(packagePath);\n\n if (isStrapiPlugin(packageInfo)) {\n declaredPlugins[pluginName].info = packageInfo.strapi || {};\n }\n }\n });\n\n const declaredPluginsResolves = map(prop('pathToPlugin'), declaredPlugins);\n const installedPluginsNotAlreadyUsed = pickBy(\n (p) => !declaredPluginsResolves.includes(p.pathToPlugin),\n installedPlugins\n );\n\n const enabledPlugins = pipe(\n defaultsDeep(declaredPlugins),\n defaultsDeep(installedPluginsNotAlreadyUsed),\n pickBy((p: PluginMeta) => p.enabled)\n )(internalPlugins);\n\n return enabledPlugins;\n};\n"],"names":["get","strings","join","dirname","resolve","existsSync","statSync","strapi","getUserPluginsConfig","_","map","prop","pickBy","pipe","defaultsDeep"],"mappings":"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"}
@@ -1,111 +0,0 @@
1
- import { join, dirname, resolve } from "path";
2
- import { existsSync, statSync } from "fs";
3
- import _ from "lodash";
4
- import { map, prop, pickBy, pipe, defaultsDeep, get } from "lodash/fp";
5
- import { strings } from "@strapi/utils";
6
- import { getUserPluginsConfig } from "./get-user-plugins-config.mjs";
7
- const INTERNAL_PLUGINS = [
8
- "@strapi/content-manager",
9
- "@strapi/content-type-builder",
10
- "@strapi/email",
11
- "@strapi/upload",
12
- "@strapi/i18n",
13
- "@strapi/content-releases",
14
- "@strapi/review-workflows"
15
- ];
16
- const isStrapiPlugin = (info) => get("strapi.kind", info) === "plugin";
17
- const validatePluginName = (pluginName) => {
18
- if (!strings.isKebabCase(pluginName)) {
19
- throw new Error(`Plugin name "${pluginName}" is not in kebab (an-example-of-kebab-case)`);
20
- }
21
- };
22
- const toDetailedDeclaration = (declaration) => {
23
- if (typeof declaration === "boolean") {
24
- return { enabled: declaration };
25
- }
26
- const detailedDeclaration = {
27
- enabled: declaration.enabled
28
- };
29
- if (declaration?.resolve) {
30
- let pathToPlugin = "";
31
- if (declaration.isModule) {
32
- pathToPlugin = join(declaration.resolve, "..");
33
- } else {
34
- try {
35
- pathToPlugin = dirname(require.resolve(declaration.resolve));
36
- } catch (e) {
37
- pathToPlugin = resolve(strapi.dirs.app.root, declaration.resolve);
38
- if (!existsSync(pathToPlugin) || !statSync(pathToPlugin).isDirectory()) {
39
- throw new Error(`${declaration.resolve} couldn't be resolved`);
40
- }
41
- }
42
- }
43
- detailedDeclaration.pathToPlugin = pathToPlugin;
44
- }
45
- return detailedDeclaration;
46
- };
47
- const getEnabledPlugins = async (strapi2, { client } = { client: false }) => {
48
- const internalPlugins = {};
49
- for (const dep of INTERNAL_PLUGINS) {
50
- const packagePath = join(dep, "package.json");
51
- const packageInfo = require(packagePath);
52
- validatePluginName(packageInfo.strapi.name);
53
- internalPlugins[packageInfo.strapi.name] = {
54
- ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),
55
- info: packageInfo.strapi
56
- };
57
- }
58
- const installedPlugins = {};
59
- const dependencies = strapi2.config.get("info.dependencies", {});
60
- for (const dep of Object.keys(dependencies)) {
61
- const packagePath = join(dep, "package.json");
62
- let packageInfo;
63
- try {
64
- packageInfo = require(packagePath);
65
- } catch {
66
- continue;
67
- }
68
- if (isStrapiPlugin(packageInfo)) {
69
- validatePluginName(packageInfo.strapi.name);
70
- installedPlugins[packageInfo.strapi.name] = {
71
- ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),
72
- info: {
73
- ...packageInfo.strapi,
74
- packageName: packageInfo.name
75
- }
76
- };
77
- }
78
- }
79
- const declaredPlugins = {};
80
- const userPluginsConfig = await getUserPluginsConfig();
81
- _.forEach(userPluginsConfig, (declaration, pluginName) => {
82
- validatePluginName(pluginName);
83
- declaredPlugins[pluginName] = {
84
- ...toDetailedDeclaration(declaration),
85
- info: {}
86
- };
87
- const { pathToPlugin } = declaredPlugins[pluginName];
88
- if (pathToPlugin) {
89
- const packagePath = join(pathToPlugin, "package.json");
90
- const packageInfo = require(packagePath);
91
- if (isStrapiPlugin(packageInfo)) {
92
- declaredPlugins[pluginName].info = packageInfo.strapi || {};
93
- }
94
- }
95
- });
96
- const declaredPluginsResolves = map(prop("pathToPlugin"), declaredPlugins);
97
- const installedPluginsNotAlreadyUsed = pickBy(
98
- (p) => !declaredPluginsResolves.includes(p.pathToPlugin),
99
- installedPlugins
100
- );
101
- const enabledPlugins = pipe(
102
- defaultsDeep(declaredPlugins),
103
- defaultsDeep(installedPluginsNotAlreadyUsed),
104
- pickBy((p) => p.enabled)
105
- )(internalPlugins);
106
- return enabledPlugins;
107
- };
108
- export {
109
- getEnabledPlugins
110
- };
111
- //# sourceMappingURL=get-enabled-plugins.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-enabled-plugins.mjs","sources":["../../../src/loaders/plugins/get-enabled-plugins.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nimport { dirname, join, resolve } from 'path';\nimport { statSync, existsSync } from 'fs';\nimport _ from 'lodash';\nimport { get, pickBy, defaultsDeep, map, prop, pipe } from 'lodash/fp';\nimport { strings } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { getUserPluginsConfig } from './get-user-plugins-config';\n\ninterface PluginMeta {\n enabled: boolean;\n pathToPlugin?: string;\n info: Record<string, unknown>;\n}\n\ntype PluginMetas = Record<string, PluginMeta>;\n\ninterface PluginInfo {\n name: string;\n kind: string;\n}\n\ninterface PluginDeclaration {\n enabled: boolean;\n resolve: string;\n isModule: boolean;\n}\n\n/**\n * otherwise known as \"core features\"\n *\n * NOTE: These are excluded from the content manager plugin list, as they are always enabled.\n * See admin.ts server controller on the content-manager plugin for more details.\n */\nconst INTERNAL_PLUGINS = [\n '@strapi/content-manager',\n '@strapi/content-type-builder',\n '@strapi/email',\n '@strapi/upload',\n '@strapi/i18n',\n '@strapi/content-releases',\n '@strapi/review-workflows',\n];\n\nconst isStrapiPlugin = (info: PluginInfo) => get('strapi.kind', info) === 'plugin';\n\nconst validatePluginName = (pluginName: string) => {\n if (!strings.isKebabCase(pluginName)) {\n throw new Error(`Plugin name \"${pluginName}\" is not in kebab (an-example-of-kebab-case)`);\n }\n};\n\nconst toDetailedDeclaration = (declaration: boolean | PluginDeclaration) => {\n if (typeof declaration === 'boolean') {\n return { enabled: declaration };\n }\n\n const detailedDeclaration: { enabled: boolean; pathToPlugin?: string } = {\n enabled: declaration.enabled,\n };\n\n if (declaration?.resolve) {\n let pathToPlugin = '';\n\n if (declaration.isModule) {\n /**\n * we only want the node_module here, not the package.json\n */\n pathToPlugin = join(declaration.resolve, '..');\n } else {\n try {\n pathToPlugin = dirname(require.resolve(declaration.resolve));\n } catch (e) {\n pathToPlugin = resolve(strapi.dirs.app.root, declaration.resolve);\n\n if (!existsSync(pathToPlugin) || !statSync(pathToPlugin).isDirectory()) {\n throw new Error(`${declaration.resolve} couldn't be resolved`);\n }\n }\n }\n\n detailedDeclaration.pathToPlugin = pathToPlugin;\n }\n\n return detailedDeclaration;\n};\n\nexport const getEnabledPlugins = async (strapi: Core.Strapi, { client } = { client: false }) => {\n const internalPlugins: PluginMetas = {};\n\n for (const dep of INTERNAL_PLUGINS) {\n const packagePath = join(dep, 'package.json');\n const packageInfo = require(packagePath);\n\n validatePluginName(packageInfo.strapi.name);\n internalPlugins[packageInfo.strapi.name] = {\n ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),\n info: packageInfo.strapi,\n };\n }\n\n const installedPlugins: PluginMetas = {};\n const dependencies = strapi.config.get('info.dependencies', {});\n\n for (const dep of Object.keys(dependencies)) {\n const packagePath = join(dep, 'package.json');\n let packageInfo;\n try {\n packageInfo = require(packagePath);\n } catch {\n continue;\n }\n\n if (isStrapiPlugin(packageInfo)) {\n validatePluginName(packageInfo.strapi.name);\n installedPlugins[packageInfo.strapi.name] = {\n ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),\n info: {\n ...packageInfo.strapi,\n packageName: packageInfo.name,\n },\n };\n }\n }\n\n const declaredPlugins: PluginMetas = {};\n const userPluginsConfig = await getUserPluginsConfig();\n\n _.forEach(userPluginsConfig, (declaration, pluginName) => {\n validatePluginName(pluginName);\n\n declaredPlugins[pluginName] = {\n ...toDetailedDeclaration(declaration),\n info: {},\n };\n\n const { pathToPlugin } = declaredPlugins[pluginName];\n\n // for manually resolved plugins\n if (pathToPlugin) {\n const packagePath = join(pathToPlugin, 'package.json');\n const packageInfo = require(packagePath);\n\n if (isStrapiPlugin(packageInfo)) {\n declaredPlugins[pluginName].info = packageInfo.strapi || {};\n }\n }\n });\n\n const declaredPluginsResolves = map(prop('pathToPlugin'), declaredPlugins);\n const installedPluginsNotAlreadyUsed = pickBy(\n (p) => !declaredPluginsResolves.includes(p.pathToPlugin),\n installedPlugins\n );\n\n const enabledPlugins = pipe(\n defaultsDeep(declaredPlugins),\n defaultsDeep(installedPluginsNotAlreadyUsed),\n pickBy((p: PluginMeta) => p.enabled)\n )(internalPlugins);\n\n return enabledPlugins;\n};\n"],"names":["strapi"],"mappings":"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"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const path = require("path");
4
- const fse = require("fs-extra");
5
- const _ = require("lodash/fp");
6
- const loadConfigFile = require("../../utils/load-config-file.js");
7
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
8
- const fse__default = /* @__PURE__ */ _interopDefault(fse);
9
- const getUserPluginsConfig = async () => {
10
- const globalUserConfigPath = path.join(strapi.dirs.dist.config, "plugins.js");
11
- const currentEnvUserConfigPath = path.join(
12
- strapi.dirs.dist.config,
13
- "env",
14
- process.env.NODE_ENV,
15
- "plugins.js"
16
- );
17
- let config = {};
18
- if (await fse__default.default.pathExists(globalUserConfigPath)) {
19
- config = loadConfigFile.loadConfigFile(globalUserConfigPath);
20
- }
21
- if (await fse__default.default.pathExists(currentEnvUserConfigPath)) {
22
- config = _.merge(config, loadConfigFile.loadConfigFile(currentEnvUserConfigPath));
23
- }
24
- return config;
25
- };
26
- exports.getUserPluginsConfig = getUserPluginsConfig;
27
- //# sourceMappingURL=get-user-plugins-config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-user-plugins-config.js","sources":["../../../src/loaders/plugins/get-user-plugins-config.ts"],"sourcesContent":["import { join } from 'path';\nimport fse from 'fs-extra';\nimport { merge } from 'lodash/fp';\nimport { loadConfigFile } from '../../utils/load-config-file';\n\n/**\n * Return user defined plugins' config\n * first load config from `config/plugins.js`\n * and then merge config from `config/env/{env}/plugins.js`\n */\nexport const getUserPluginsConfig = async () => {\n const globalUserConfigPath = join(strapi.dirs.dist.config, 'plugins.js');\n const currentEnvUserConfigPath = join(\n strapi.dirs.dist.config,\n 'env',\n process.env.NODE_ENV as string,\n 'plugins.js'\n );\n let config = {};\n\n // assign global user config if exists\n if (await fse.pathExists(globalUserConfigPath)) {\n config = loadConfigFile(globalUserConfigPath);\n }\n\n // and merge user config by environment if exists\n if (await fse.pathExists(currentEnvUserConfigPath)) {\n config = merge(config, loadConfigFile(currentEnvUserConfigPath));\n }\n\n return config;\n};\n"],"names":["join","fse","loadConfigFile","merge"],"mappings":";;;;;;;;AAUO,MAAM,uBAAuB,YAAY;AAC9C,QAAM,uBAAuBA,KAAAA,KAAK,OAAO,KAAK,KAAK,QAAQ,YAAY;AACvE,QAAM,2BAA2BA,KAAA;AAAA,IAC/B,OAAO,KAAK,KAAK;AAAA,IACjB;AAAA,IACA,QAAQ,IAAI;AAAA,IACZ;AAAA,EAAA;AAEF,MAAI,SAAS,CAAA;AAGb,MAAI,MAAMC,aAAA,QAAI,WAAW,oBAAoB,GAAG;AAC9C,aAASC,eAAAA,eAAe,oBAAoB;AAAA,EAC9C;AAGA,MAAI,MAAMD,aAAA,QAAI,WAAW,wBAAwB,GAAG;AAClD,aAASE,EAAAA,MAAM,QAAQD,eAAAA,eAAe,wBAAwB,CAAC;AAAA,EACjE;AAEO,SAAA;AACT;;"}
@@ -1,25 +0,0 @@
1
- import { join } from "path";
2
- import fse from "fs-extra";
3
- import { merge } from "lodash/fp";
4
- import { loadConfigFile } from "../../utils/load-config-file.mjs";
5
- const getUserPluginsConfig = async () => {
6
- const globalUserConfigPath = join(strapi.dirs.dist.config, "plugins.js");
7
- const currentEnvUserConfigPath = join(
8
- strapi.dirs.dist.config,
9
- "env",
10
- process.env.NODE_ENV,
11
- "plugins.js"
12
- );
13
- let config = {};
14
- if (await fse.pathExists(globalUserConfigPath)) {
15
- config = loadConfigFile(globalUserConfigPath);
16
- }
17
- if (await fse.pathExists(currentEnvUserConfigPath)) {
18
- config = merge(config, loadConfigFile(currentEnvUserConfigPath));
19
- }
20
- return config;
21
- };
22
- export {
23
- getUserPluginsConfig
24
- };
25
- //# sourceMappingURL=get-user-plugins-config.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-user-plugins-config.mjs","sources":["../../../src/loaders/plugins/get-user-plugins-config.ts"],"sourcesContent":["import { join } from 'path';\nimport fse from 'fs-extra';\nimport { merge } from 'lodash/fp';\nimport { loadConfigFile } from '../../utils/load-config-file';\n\n/**\n * Return user defined plugins' config\n * first load config from `config/plugins.js`\n * and then merge config from `config/env/{env}/plugins.js`\n */\nexport const getUserPluginsConfig = async () => {\n const globalUserConfigPath = join(strapi.dirs.dist.config, 'plugins.js');\n const currentEnvUserConfigPath = join(\n strapi.dirs.dist.config,\n 'env',\n process.env.NODE_ENV as string,\n 'plugins.js'\n );\n let config = {};\n\n // assign global user config if exists\n if (await fse.pathExists(globalUserConfigPath)) {\n config = loadConfigFile(globalUserConfigPath);\n }\n\n // and merge user config by environment if exists\n if (await fse.pathExists(currentEnvUserConfigPath)) {\n config = merge(config, loadConfigFile(currentEnvUserConfigPath));\n }\n\n return config;\n};\n"],"names":[],"mappings":";;;;AAUO,MAAM,uBAAuB,YAAY;AAC9C,QAAM,uBAAuB,KAAK,OAAO,KAAK,KAAK,QAAQ,YAAY;AACvE,QAAM,2BAA2B;AAAA,IAC/B,OAAO,KAAK,KAAK;AAAA,IACjB;AAAA,IACA,QAAQ,IAAI;AAAA,IACZ;AAAA,EAAA;AAEF,MAAI,SAAS,CAAA;AAGb,MAAI,MAAM,IAAI,WAAW,oBAAoB,GAAG;AAC9C,aAAS,eAAe,oBAAoB;AAAA,EAC9C;AAGA,MAAI,MAAM,IAAI,WAAW,wBAAwB,GAAG;AAClD,aAAS,MAAM,QAAQ,eAAe,wBAAwB,CAAC;AAAA,EACjE;AAEO,SAAA;AACT;"}
@@ -1,118 +0,0 @@
1
- "use strict";
2
- const path = require("path");
3
- const fse = require("fs-extra");
4
- const _ = require("lodash/fp");
5
- const strapiUtils = require("@strapi/utils");
6
- const loadConfigFile = require("../../utils/load-config-file.js");
7
- const loadFiles = require("../../utils/load-files.js");
8
- const getEnabledPlugins = require("./get-enabled-plugins.js");
9
- const getUserPluginsConfig = require("./get-user-plugins-config.js");
10
- const index = require("../../domain/content-type/index.js");
11
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
12
- const fse__default = /* @__PURE__ */ _interopDefault(fse);
13
- const defaultPlugin = {
14
- bootstrap() {
15
- },
16
- destroy() {
17
- },
18
- register() {
19
- },
20
- config: {
21
- default: {},
22
- validator() {
23
- }
24
- },
25
- routes: [],
26
- controllers: {},
27
- services: {},
28
- policies: {},
29
- middlewares: {},
30
- contentTypes: {}
31
- };
32
- const applyUserExtension = async (plugins) => {
33
- const extensionsDir = strapi.dirs.dist.extensions;
34
- if (!await fse__default.default.pathExists(extensionsDir)) {
35
- return;
36
- }
37
- const extendedSchemas = await loadFiles.loadFiles(extensionsDir, "**/content-types/**/schema.json");
38
- const strapiServers = await loadFiles.loadFiles(extensionsDir, "**/strapi-server.js");
39
- for (const pluginName of Object.keys(plugins)) {
40
- const plugin = plugins[pluginName];
41
- for (const ctName of Object.keys(plugin.contentTypes)) {
42
- const extendedSchema = _.get([pluginName, "content-types", ctName, "schema"], extendedSchemas);
43
- if (extendedSchema) {
44
- plugin.contentTypes[ctName].schema = {
45
- ...plugin.contentTypes[ctName].schema,
46
- ...extendedSchema
47
- };
48
- }
49
- }
50
- const strapiServer = _.get([pluginName, "strapi-server"], strapiServers);
51
- if (strapiServer) {
52
- plugins[pluginName] = await strapiServer(plugin);
53
- }
54
- }
55
- };
56
- const applyUserConfig = async (plugins) => {
57
- const userPluginsConfig = await getUserPluginsConfig.getUserPluginsConfig();
58
- for (const pluginName of Object.keys(plugins)) {
59
- const plugin = plugins[pluginName];
60
- const userPluginConfig = _.getOr({}, `${pluginName}.config`, userPluginsConfig);
61
- const defaultConfig = typeof plugin.config.default === "function" ? plugin.config.default({ env: strapiUtils.env }) : plugin.config.default;
62
- const config = _.defaultsDeep(defaultConfig, userPluginConfig);
63
- try {
64
- plugin.config.validator(config);
65
- } catch (e) {
66
- if (e instanceof Error) {
67
- throw new Error(`Error regarding ${pluginName} config: ${e.message}`);
68
- }
69
- throw e;
70
- }
71
- plugin.config = config;
72
- }
73
- };
74
- async function loadPlugins(strapi2) {
75
- const plugins = {};
76
- const enabledPlugins = await getEnabledPlugins.getEnabledPlugins(strapi2);
77
- strapi2.config.set("enabledPlugins", enabledPlugins);
78
- for (const pluginName of Object.keys(enabledPlugins)) {
79
- const enabledPlugin = enabledPlugins[pluginName];
80
- let serverEntrypointPath;
81
- try {
82
- serverEntrypointPath = path.join(enabledPlugin.pathToPlugin, "strapi-server.js");
83
- } catch (e) {
84
- throw new Error(
85
- `Error loading the plugin ${pluginName} because ${pluginName} is not installed. Please either install the plugin or remove it's configuration.`
86
- );
87
- }
88
- if (!await fse__default.default.pathExists(serverEntrypointPath)) {
89
- continue;
90
- }
91
- const pluginServer = loadConfigFile.loadConfigFile(serverEntrypointPath);
92
- plugins[pluginName] = {
93
- ...defaultPlugin,
94
- ...pluginServer,
95
- contentTypes: formatContentTypes(pluginName, pluginServer.contentTypes ?? {}),
96
- config: _.defaults(defaultPlugin.config, pluginServer.config),
97
- routes: pluginServer.routes ?? defaultPlugin.routes
98
- };
99
- }
100
- await applyUserConfig(plugins);
101
- await applyUserExtension(plugins);
102
- for (const pluginName of Object.keys(plugins)) {
103
- strapi2.get("plugins").add(pluginName, plugins[pluginName]);
104
- }
105
- }
106
- const formatContentTypes = (pluginName, contentTypes) => {
107
- Object.values(contentTypes).forEach((definition) => {
108
- const { schema } = definition;
109
- Object.assign(schema, {
110
- plugin: pluginName,
111
- collectionName: schema.collectionName || `${pluginName}_${schema.info.singularName}`.toLowerCase(),
112
- globalId: index.getGlobalId(schema, pluginName)
113
- });
114
- });
115
- return contentTypes;
116
- };
117
- module.exports = loadPlugins;
118
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/loaders/plugins/index.ts"],"sourcesContent":["import { join } from 'path';\nimport fse from 'fs-extra';\nimport { defaultsDeep, defaults, getOr, get } from 'lodash/fp';\nimport { env } from '@strapi/utils';\nimport type { Core, Plugin, Struct } from '@strapi/types';\nimport { loadConfigFile } from '../../utils/load-config-file';\nimport { loadFiles } from '../../utils/load-files';\nimport { getEnabledPlugins } from './get-enabled-plugins';\nimport { getUserPluginsConfig } from './get-user-plugins-config';\nimport { getGlobalId } from '../../domain/content-type';\n\ninterface Plugins {\n [key: string]: Plugin.LoadedPlugin;\n}\n\nconst defaultPlugin = {\n bootstrap() {},\n destroy() {},\n register() {},\n config: {\n default: {},\n validator() {},\n },\n routes: [],\n controllers: {},\n services: {},\n policies: {},\n middlewares: {},\n contentTypes: {},\n};\n\nconst applyUserExtension = async (plugins: Plugins) => {\n const extensionsDir = strapi.dirs.dist.extensions;\n if (!(await fse.pathExists(extensionsDir))) {\n return;\n }\n\n const extendedSchemas = await loadFiles(extensionsDir, '**/content-types/**/schema.json');\n const strapiServers = await loadFiles(extensionsDir, '**/strapi-server.js');\n\n for (const pluginName of Object.keys(plugins)) {\n const plugin = plugins[pluginName];\n // first: load json schema\n for (const ctName of Object.keys(plugin.contentTypes)) {\n const extendedSchema = get([pluginName, 'content-types', ctName, 'schema'], extendedSchemas);\n if (extendedSchema) {\n plugin.contentTypes[ctName].schema = {\n ...plugin.contentTypes[ctName].schema,\n ...extendedSchema,\n };\n }\n }\n // second: execute strapi-server extension\n const strapiServer = get([pluginName, 'strapi-server'], strapiServers);\n if (strapiServer) {\n plugins[pluginName] = await strapiServer(plugin);\n }\n }\n};\n\nconst applyUserConfig = async (plugins: Plugins) => {\n const userPluginsConfig = await getUserPluginsConfig();\n\n for (const pluginName of Object.keys(plugins)) {\n const plugin = plugins[pluginName];\n const userPluginConfig = getOr({}, `${pluginName}.config`, userPluginsConfig);\n const defaultConfig =\n typeof plugin.config.default === 'function'\n ? plugin.config.default({ env })\n : plugin.config.default;\n\n const config = defaultsDeep(defaultConfig, userPluginConfig);\n try {\n plugin.config.validator(config);\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`Error regarding ${pluginName} config: ${e.message}`);\n }\n\n throw e;\n }\n plugin.config = config;\n }\n};\n\nexport default async function loadPlugins(strapi: Core.Strapi) {\n const plugins: Plugins = {};\n\n const enabledPlugins = await getEnabledPlugins(strapi);\n\n strapi.config.set('enabledPlugins', enabledPlugins);\n\n for (const pluginName of Object.keys(enabledPlugins)) {\n const enabledPlugin = enabledPlugins[pluginName];\n\n let serverEntrypointPath;\n\n try {\n serverEntrypointPath = join(enabledPlugin.pathToPlugin, 'strapi-server.js');\n } catch (e) {\n throw new Error(\n `Error loading the plugin ${pluginName} because ${pluginName} is not installed. Please either install the plugin or remove it's configuration.`\n );\n }\n\n // only load plugins with a server entrypoint\n if (!(await fse.pathExists(serverEntrypointPath))) {\n continue;\n }\n\n const pluginServer = loadConfigFile(serverEntrypointPath);\n plugins[pluginName] = {\n ...defaultPlugin,\n ...pluginServer,\n contentTypes: formatContentTypes(pluginName, pluginServer.contentTypes ?? {}),\n config: defaults(defaultPlugin.config, pluginServer.config),\n routes: pluginServer.routes ?? defaultPlugin.routes,\n };\n }\n\n // TODO: validate plugin format\n await applyUserConfig(plugins);\n await applyUserExtension(plugins);\n\n for (const pluginName of Object.keys(plugins)) {\n strapi.get('plugins').add(pluginName, plugins[pluginName]);\n }\n}\n\nconst formatContentTypes = (\n pluginName: string,\n contentTypes: Record<string, { schema: Struct.ContentTypeSchema }>\n) => {\n Object.values(contentTypes).forEach((definition) => {\n const { schema } = definition;\n\n Object.assign(schema, {\n plugin: pluginName,\n collectionName:\n schema.collectionName || `${pluginName}_${schema.info.singularName}`.toLowerCase(),\n globalId: getGlobalId(schema, pluginName),\n });\n });\n\n return contentTypes;\n};\n"],"names":["fse","loadFiles","get","getUserPluginsConfig","getOr","env","defaultsDeep","strapi","getEnabledPlugins","join","loadConfigFile","defaults","getGlobalId"],"mappings":";;;;;;;;;;;;AAeA,MAAM,gBAAgB;AAAA,EACpB,YAAY;AAAA,EAAC;AAAA,EACb,UAAU;AAAA,EAAC;AAAA,EACX,WAAW;AAAA,EAAC;AAAA,EACZ,QAAQ;AAAA,IACN,SAAS,CAAC;AAAA,IACV,YAAY;AAAA,IAAC;AAAA,EACf;AAAA,EACA,QAAQ,CAAC;AAAA,EACT,aAAa,CAAC;AAAA,EACd,UAAU,CAAC;AAAA,EACX,UAAU,CAAC;AAAA,EACX,aAAa,CAAC;AAAA,EACd,cAAc,CAAC;AACjB;AAEA,MAAM,qBAAqB,OAAO,YAAqB;AAC/C,QAAA,gBAAgB,OAAO,KAAK,KAAK;AACvC,MAAI,CAAE,MAAMA,aAAAA,QAAI,WAAW,aAAa,GAAI;AAC1C;AAAA,EACF;AAEA,QAAM,kBAAkB,MAAMC,UAAAA,UAAU,eAAe,iCAAiC;AACxF,QAAM,gBAAgB,MAAMA,UAAAA,UAAU,eAAe,qBAAqB;AAE1E,aAAW,cAAc,OAAO,KAAK,OAAO,GAAG;AACvC,UAAA,SAAS,QAAQ,UAAU;AAEjC,eAAW,UAAU,OAAO,KAAK,OAAO,YAAY,GAAG;AAC/C,YAAA,iBAAiBC,MAAI,CAAC,YAAY,iBAAiB,QAAQ,QAAQ,GAAG,eAAe;AAC3F,UAAI,gBAAgB;AACX,eAAA,aAAa,MAAM,EAAE,SAAS;AAAA,UACnC,GAAG,OAAO,aAAa,MAAM,EAAE;AAAA,UAC/B,GAAG;AAAA,QAAA;AAAA,MAEP;AAAA,IACF;AAEA,UAAM,eAAeA,EAAAA,IAAI,CAAC,YAAY,eAAe,GAAG,aAAa;AACrE,QAAI,cAAc;AAChB,cAAQ,UAAU,IAAI,MAAM,aAAa,MAAM;AAAA,IACjD;AAAA,EACF;AACF;AAEA,MAAM,kBAAkB,OAAO,YAAqB;AAC5C,QAAA,oBAAoB,MAAMC,qBAAAA;AAEhC,aAAW,cAAc,OAAO,KAAK,OAAO,GAAG;AACvC,UAAA,SAAS,QAAQ,UAAU;AACjC,UAAM,mBAAmBC,EAAM,MAAA,IAAI,GAAG,UAAU,WAAW,iBAAiB;AAC5E,UAAM,gBACJ,OAAO,OAAO,OAAO,YAAY,aAC7B,OAAO,OAAO,QAAQ,EAAEC,KAAAA,YAAAA,IAAK,CAAA,IAC7B,OAAO,OAAO;AAEd,UAAA,SAASC,EAAAA,aAAa,eAAe,gBAAgB;AACvD,QAAA;AACK,aAAA,OAAO,UAAU,MAAM;AAAA,aACvB,GAAG;AACV,UAAI,aAAa,OAAO;AACtB,cAAM,IAAI,MAAM,mBAAmB,UAAU,YAAY,EAAE,OAAO,EAAE;AAAA,MACtE;AAEM,YAAA;AAAA,IACR;AACA,WAAO,SAAS;AAAA,EAClB;AACF;AAEA,eAA8B,YAAYC,SAAqB;AAC7D,QAAM,UAAmB,CAAA;AAEnB,QAAA,iBAAiB,MAAMC,oCAAkBD,OAAM;AAErDA,UAAO,OAAO,IAAI,kBAAkB,cAAc;AAElD,aAAW,cAAc,OAAO,KAAK,cAAc,GAAG;AAC9C,UAAA,gBAAgB,eAAe,UAAU;AAE3C,QAAA;AAEA,QAAA;AACqB,6BAAAE,KAAAA,KAAK,cAAc,cAAc,kBAAkB;AAAA,aACnE,GAAG;AACV,YAAM,IAAI;AAAA,QACR,4BAA4B,UAAU,YAAY,UAAU;AAAA,MAAA;AAAA,IAEhE;AAGA,QAAI,CAAE,MAAMT,aAAAA,QAAI,WAAW,oBAAoB,GAAI;AACjD;AAAA,IACF;AAEM,UAAA,eAAeU,8BAAe,oBAAoB;AACxD,YAAQ,UAAU,IAAI;AAAA,MACpB,GAAG;AAAA,MACH,GAAG;AAAA,MACH,cAAc,mBAAmB,YAAY,aAAa,gBAAgB,CAAA,CAAE;AAAA,MAC5E,QAAQC,EAAAA,SAAS,cAAc,QAAQ,aAAa,MAAM;AAAA,MAC1D,QAAQ,aAAa,UAAU,cAAc;AAAA,IAAA;AAAA,EAEjD;AAGA,QAAM,gBAAgB,OAAO;AAC7B,QAAM,mBAAmB,OAAO;AAEhC,aAAW,cAAc,OAAO,KAAK,OAAO,GAAG;AAC7CJ,YAAO,IAAI,SAAS,EAAE,IAAI,YAAY,QAAQ,UAAU,CAAC;AAAA,EAC3D;AACF;AAEA,MAAM,qBAAqB,CACzB,YACA,iBACG;AACH,SAAO,OAAO,YAAY,EAAE,QAAQ,CAAC,eAAe;AAC5C,UAAA,EAAE,OAAW,IAAA;AAEnB,WAAO,OAAO,QAAQ;AAAA,MACpB,QAAQ;AAAA,MACR,gBACE,OAAO,kBAAkB,GAAG,UAAU,IAAI,OAAO,KAAK,YAAY,GAAG,YAAY;AAAA,MACnF,UAAUK,MAAAA,YAAY,QAAQ,UAAU;AAAA,IAAA,CACzC;AAAA,EAAA,CACF;AAEM,SAAA;AACT;;"}