@strapi/core 0.0.0-experimental.c2680dea29af0c9e9a69c0474b40c8c2ab6f70ac → 0.0.0-experimental.c2b08ee20b017fc174cccf35c56c39438b0237b0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (772) hide show
  1. package/dist/Strapi.d.ts.map +1 -1
  2. package/dist/Strapi.js +428 -408
  3. package/dist/Strapi.js.map +1 -1
  4. package/dist/Strapi.mjs +428 -408
  5. package/dist/Strapi.mjs.map +1 -1
  6. package/dist/compile.js +23 -14
  7. package/dist/compile.js.map +1 -1
  8. package/dist/compile.mjs +22 -14
  9. package/dist/compile.mjs.map +1 -1
  10. package/dist/configuration/config-loader.js +110 -96
  11. package/dist/configuration/config-loader.js.map +1 -1
  12. package/dist/configuration/config-loader.mjs +109 -95
  13. package/dist/configuration/config-loader.mjs.map +1 -1
  14. package/dist/configuration/get-dirs.js +31 -29
  15. package/dist/configuration/get-dirs.js.map +1 -1
  16. package/dist/configuration/get-dirs.mjs +30 -30
  17. package/dist/configuration/get-dirs.mjs.map +1 -1
  18. package/dist/configuration/index.d.ts +1 -0
  19. package/dist/configuration/index.d.ts.map +1 -1
  20. package/dist/configuration/index.js +85 -78
  21. package/dist/configuration/index.js.map +1 -1
  22. package/dist/configuration/index.mjs +84 -74
  23. package/dist/configuration/index.mjs.map +1 -1
  24. package/dist/configuration/urls.d.ts.map +1 -1
  25. package/dist/configuration/urls.js +74 -61
  26. package/dist/configuration/urls.js.map +1 -1
  27. package/dist/configuration/urls.mjs +73 -62
  28. package/dist/configuration/urls.mjs.map +1 -1
  29. package/dist/container.js +27 -23
  30. package/dist/container.js.map +1 -1
  31. package/dist/container.mjs +26 -24
  32. package/dist/container.mjs.map +1 -1
  33. package/dist/core-api/controller/collection-type.js +77 -76
  34. package/dist/core-api/controller/collection-type.js.map +1 -1
  35. package/dist/core-api/controller/collection-type.mjs +76 -77
  36. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  37. package/dist/core-api/controller/index.js +63 -48
  38. package/dist/core-api/controller/index.js.map +1 -1
  39. package/dist/core-api/controller/index.mjs +62 -49
  40. package/dist/core-api/controller/index.mjs.map +1 -1
  41. package/dist/core-api/controller/single-type.js +41 -40
  42. package/dist/core-api/controller/single-type.js.map +1 -1
  43. package/dist/core-api/controller/single-type.mjs +40 -41
  44. package/dist/core-api/controller/single-type.mjs.map +1 -1
  45. package/dist/core-api/controller/transform.js +72 -63
  46. package/dist/core-api/controller/transform.js.map +1 -1
  47. package/dist/core-api/controller/transform.mjs +71 -64
  48. package/dist/core-api/controller/transform.mjs.map +1 -1
  49. package/dist/core-api/routes/index.d.ts +4 -22
  50. package/dist/core-api/routes/index.d.ts.map +1 -1
  51. package/dist/core-api/routes/index.js +205 -61
  52. package/dist/core-api/routes/index.js.map +1 -1
  53. package/dist/core-api/routes/index.mjs +185 -62
  54. package/dist/core-api/routes/index.mjs.map +1 -1
  55. package/dist/core-api/routes/validation/attributes.d.ts +244 -0
  56. package/dist/core-api/routes/validation/attributes.d.ts.map +1 -0
  57. package/dist/core-api/routes/validation/attributes.js +560 -0
  58. package/dist/core-api/routes/validation/attributes.js.map +1 -0
  59. package/dist/core-api/routes/validation/attributes.mjs +521 -0
  60. package/dist/core-api/routes/validation/attributes.mjs.map +1 -0
  61. package/dist/core-api/routes/validation/common.d.ts +105 -0
  62. package/dist/core-api/routes/validation/common.d.ts.map +1 -0
  63. package/dist/core-api/routes/validation/common.js +116 -0
  64. package/dist/core-api/routes/validation/common.js.map +1 -0
  65. package/dist/core-api/routes/validation/common.mjs +95 -0
  66. package/dist/core-api/routes/validation/common.mjs.map +1 -0
  67. package/dist/core-api/routes/validation/component.d.ts +34 -0
  68. package/dist/core-api/routes/validation/component.d.ts.map +1 -0
  69. package/dist/core-api/routes/validation/component.js +45 -0
  70. package/dist/core-api/routes/validation/component.js.map +1 -0
  71. package/dist/core-api/routes/validation/component.mjs +43 -0
  72. package/dist/core-api/routes/validation/component.mjs.map +1 -0
  73. package/dist/core-api/routes/validation/constants.d.ts +8 -0
  74. package/dist/core-api/routes/validation/constants.d.ts.map +1 -0
  75. package/dist/core-api/routes/validation/constants.js +18 -0
  76. package/dist/core-api/routes/validation/constants.js.map +1 -0
  77. package/dist/core-api/routes/validation/constants.mjs +16 -0
  78. package/dist/core-api/routes/validation/constants.mjs.map +1 -0
  79. package/dist/core-api/routes/validation/content-type.d.ts +128 -0
  80. package/dist/core-api/routes/validation/content-type.d.ts.map +1 -0
  81. package/dist/core-api/routes/validation/content-type.js +201 -0
  82. package/dist/core-api/routes/validation/content-type.js.map +1 -0
  83. package/dist/core-api/routes/validation/content-type.mjs +180 -0
  84. package/dist/core-api/routes/validation/content-type.mjs.map +1 -0
  85. package/dist/core-api/routes/validation/index.d.ts +5 -0
  86. package/dist/core-api/routes/validation/index.d.ts.map +1 -0
  87. package/dist/core-api/routes/validation/mappers.d.ts +105 -0
  88. package/dist/core-api/routes/validation/mappers.d.ts.map +1 -0
  89. package/dist/core-api/routes/validation/mappers.js +238 -0
  90. package/dist/core-api/routes/validation/mappers.js.map +1 -0
  91. package/dist/core-api/routes/validation/mappers.mjs +214 -0
  92. package/dist/core-api/routes/validation/mappers.mjs.map +1 -0
  93. package/dist/core-api/routes/validation/utils.d.ts +47 -0
  94. package/dist/core-api/routes/validation/utils.d.ts.map +1 -0
  95. package/dist/core-api/routes/validation/utils.js +112 -0
  96. package/dist/core-api/routes/validation/utils.js.map +1 -0
  97. package/dist/core-api/routes/validation/utils.mjs +90 -0
  98. package/dist/core-api/routes/validation/utils.mjs.map +1 -0
  99. package/dist/core-api/service/collection-type.js +73 -60
  100. package/dist/core-api/service/collection-type.js.map +1 -1
  101. package/dist/core-api/service/collection-type.mjs +72 -62
  102. package/dist/core-api/service/collection-type.mjs.map +1 -1
  103. package/dist/core-api/service/core-service.js +9 -8
  104. package/dist/core-api/service/core-service.js.map +1 -1
  105. package/dist/core-api/service/core-service.mjs +8 -9
  106. package/dist/core-api/service/core-service.mjs.map +1 -1
  107. package/dist/core-api/service/index.js +13 -13
  108. package/dist/core-api/service/index.js.map +1 -1
  109. package/dist/core-api/service/index.mjs +12 -14
  110. package/dist/core-api/service/index.mjs.map +1 -1
  111. package/dist/core-api/service/pagination.js +69 -43
  112. package/dist/core-api/service/pagination.js.map +1 -1
  113. package/dist/core-api/service/pagination.mjs +68 -47
  114. package/dist/core-api/service/pagination.mjs.map +1 -1
  115. package/dist/core-api/service/single-type.js +43 -38
  116. package/dist/core-api/service/single-type.js.map +1 -1
  117. package/dist/core-api/service/single-type.mjs +42 -40
  118. package/dist/core-api/service/single-type.mjs.map +1 -1
  119. package/dist/domain/content-type/index.js +95 -100
  120. package/dist/domain/content-type/index.js.map +1 -1
  121. package/dist/domain/content-type/index.mjs +94 -100
  122. package/dist/domain/content-type/index.mjs.map +1 -1
  123. package/dist/domain/content-type/validator.js +84 -69
  124. package/dist/domain/content-type/validator.js.map +1 -1
  125. package/dist/domain/content-type/validator.mjs +83 -68
  126. package/dist/domain/content-type/validator.mjs.map +1 -1
  127. package/dist/domain/module/index.d.ts.map +1 -1
  128. package/dist/domain/module/index.js +112 -100
  129. package/dist/domain/module/index.js.map +1 -1
  130. package/dist/domain/module/index.mjs +111 -99
  131. package/dist/domain/module/index.mjs.map +1 -1
  132. package/dist/domain/module/validation.js +25 -20
  133. package/dist/domain/module/validation.js.map +1 -1
  134. package/dist/domain/module/validation.mjs +24 -21
  135. package/dist/domain/module/validation.mjs.map +1 -1
  136. package/dist/ee/index.d.ts +7 -0
  137. package/dist/ee/index.d.ts.map +1 -1
  138. package/dist/ee/index.js +197 -137
  139. package/dist/ee/index.js.map +1 -1
  140. package/dist/ee/index.mjs +196 -139
  141. package/dist/ee/index.mjs.map +1 -1
  142. package/dist/ee/license.d.ts +3 -1
  143. package/dist/ee/license.d.ts.map +1 -1
  144. package/dist/ee/license.js +105 -75
  145. package/dist/ee/license.js.map +1 -1
  146. package/dist/ee/license.mjs +103 -76
  147. package/dist/ee/license.mjs.map +1 -1
  148. package/dist/factories.d.ts +3 -1
  149. package/dist/factories.d.ts.map +1 -1
  150. package/dist/factories.js +80 -67
  151. package/dist/factories.js.map +1 -1
  152. package/dist/factories.mjs +77 -70
  153. package/dist/factories.mjs.map +1 -1
  154. package/dist/index.js +29 -26
  155. package/dist/index.js.map +1 -1
  156. package/dist/index.mjs +29 -29
  157. package/dist/index.mjs.map +1 -1
  158. package/dist/loaders/admin.d.ts.map +1 -1
  159. package/dist/loaders/admin.js +21 -20
  160. package/dist/loaders/admin.js.map +1 -1
  161. package/dist/loaders/admin.mjs +20 -20
  162. package/dist/loaders/admin.mjs.map +1 -1
  163. package/dist/loaders/apis.js +143 -120
  164. package/dist/loaders/apis.js.map +1 -1
  165. package/dist/loaders/apis.mjs +142 -119
  166. package/dist/loaders/apis.mjs.map +1 -1
  167. package/dist/loaders/components.js +33 -34
  168. package/dist/loaders/components.js.map +1 -1
  169. package/dist/loaders/components.mjs +32 -34
  170. package/dist/loaders/components.mjs.map +1 -1
  171. package/dist/loaders/index.js +22 -20
  172. package/dist/loaders/index.js.map +1 -1
  173. package/dist/loaders/index.mjs +21 -21
  174. package/dist/loaders/index.mjs.map +1 -1
  175. package/dist/loaders/middlewares.js +29 -25
  176. package/dist/loaders/middlewares.js.map +1 -1
  177. package/dist/loaders/middlewares.mjs +28 -25
  178. package/dist/loaders/middlewares.mjs.map +1 -1
  179. package/dist/loaders/plugins/get-enabled-plugins.js +126 -131
  180. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  181. package/dist/loaders/plugins/get-enabled-plugins.mjs +125 -108
  182. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  183. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  184. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  185. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  186. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  187. package/dist/loaders/plugins/index.js +132 -121
  188. package/dist/loaders/plugins/index.js.map +1 -1
  189. package/dist/loaders/plugins/index.mjs +121 -112
  190. package/dist/loaders/plugins/index.mjs.map +1 -1
  191. package/dist/loaders/policies.js +24 -20
  192. package/dist/loaders/policies.js.map +1 -1
  193. package/dist/loaders/policies.mjs +23 -20
  194. package/dist/loaders/policies.mjs.map +1 -1
  195. package/dist/loaders/sanitizers.js +10 -4
  196. package/dist/loaders/sanitizers.js.map +1 -1
  197. package/dist/loaders/sanitizers.mjs +9 -6
  198. package/dist/loaders/sanitizers.mjs.map +1 -1
  199. package/dist/loaders/src-index.js +35 -27
  200. package/dist/loaders/src-index.js.map +1 -1
  201. package/dist/loaders/src-index.mjs +34 -29
  202. package/dist/loaders/src-index.mjs.map +1 -1
  203. package/dist/loaders/validators.js +9 -4
  204. package/dist/loaders/validators.js.map +1 -1
  205. package/dist/loaders/validators.mjs +8 -6
  206. package/dist/loaders/validators.mjs.map +1 -1
  207. package/dist/middlewares/body.d.ts.map +1 -1
  208. package/dist/middlewares/body.js +58 -54
  209. package/dist/middlewares/body.js.map +1 -1
  210. package/dist/middlewares/body.mjs +57 -51
  211. package/dist/middlewares/body.mjs.map +1 -1
  212. package/dist/middlewares/compression.js +6 -6
  213. package/dist/middlewares/compression.js.map +1 -1
  214. package/dist/middlewares/compression.mjs +5 -5
  215. package/dist/middlewares/compression.mjs.map +1 -1
  216. package/dist/middlewares/cors.js +59 -48
  217. package/dist/middlewares/cors.js.map +1 -1
  218. package/dist/middlewares/cors.mjs +58 -47
  219. package/dist/middlewares/cors.mjs.map +1 -1
  220. package/dist/middlewares/errors.js +32 -30
  221. package/dist/middlewares/errors.js.map +1 -1
  222. package/dist/middlewares/errors.mjs +31 -31
  223. package/dist/middlewares/errors.mjs.map +1 -1
  224. package/dist/middlewares/favicon.js +27 -17
  225. package/dist/middlewares/favicon.js.map +1 -1
  226. package/dist/middlewares/favicon.mjs +26 -16
  227. package/dist/middlewares/favicon.mjs.map +1 -1
  228. package/dist/middlewares/index.js +32 -30
  229. package/dist/middlewares/index.js.map +1 -1
  230. package/dist/middlewares/index.mjs +31 -31
  231. package/dist/middlewares/index.mjs.map +1 -1
  232. package/dist/middlewares/ip.js +6 -6
  233. package/dist/middlewares/ip.js.map +1 -1
  234. package/dist/middlewares/ip.mjs +5 -5
  235. package/dist/middlewares/ip.mjs.map +1 -1
  236. package/dist/middlewares/logger.js +10 -9
  237. package/dist/middlewares/logger.js.map +1 -1
  238. package/dist/middlewares/logger.mjs +9 -10
  239. package/dist/middlewares/logger.mjs.map +1 -1
  240. package/dist/middlewares/powered-by.js +13 -9
  241. package/dist/middlewares/powered-by.js.map +1 -1
  242. package/dist/middlewares/powered-by.mjs +12 -10
  243. package/dist/middlewares/powered-by.mjs.map +1 -1
  244. package/dist/middlewares/public.js +33 -29
  245. package/dist/middlewares/public.js.map +1 -1
  246. package/dist/middlewares/public.mjs +32 -28
  247. package/dist/middlewares/public.mjs.map +1 -1
  248. package/dist/middlewares/query.js +35 -32
  249. package/dist/middlewares/query.js.map +1 -1
  250. package/dist/middlewares/query.mjs +34 -31
  251. package/dist/middlewares/query.mjs.map +1 -1
  252. package/dist/middlewares/response-time.js +10 -9
  253. package/dist/middlewares/response-time.js.map +1 -1
  254. package/dist/middlewares/response-time.mjs +9 -10
  255. package/dist/middlewares/response-time.mjs.map +1 -1
  256. package/dist/middlewares/responses.js +14 -12
  257. package/dist/middlewares/responses.js.map +1 -1
  258. package/dist/middlewares/responses.mjs +13 -13
  259. package/dist/middlewares/responses.mjs.map +1 -1
  260. package/dist/middlewares/security.js +109 -71
  261. package/dist/middlewares/security.js.map +1 -1
  262. package/dist/middlewares/security.mjs +108 -70
  263. package/dist/middlewares/security.mjs.map +1 -1
  264. package/dist/middlewares/session.js +26 -25
  265. package/dist/middlewares/session.js.map +1 -1
  266. package/dist/middlewares/session.mjs +25 -24
  267. package/dist/middlewares/session.mjs.map +1 -1
  268. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +2 -2
  269. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  270. package/dist/migrations/database/5.0.0-discard-drafts.js +152 -90
  271. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
  272. package/dist/migrations/database/5.0.0-discard-drafts.mjs +151 -92
  273. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
  274. package/dist/migrations/draft-publish.d.ts +1 -1
  275. package/dist/migrations/draft-publish.d.ts.map +1 -1
  276. package/dist/migrations/draft-publish.js +61 -34
  277. package/dist/migrations/draft-publish.js.map +1 -1
  278. package/dist/migrations/draft-publish.mjs +60 -36
  279. package/dist/migrations/draft-publish.mjs.map +1 -1
  280. package/dist/migrations/i18n.js +62 -45
  281. package/dist/migrations/i18n.js.map +1 -1
  282. package/dist/migrations/i18n.mjs +61 -47
  283. package/dist/migrations/i18n.mjs.map +1 -1
  284. package/dist/migrations/index.js +24 -10
  285. package/dist/migrations/index.js.map +1 -1
  286. package/dist/migrations/index.mjs +23 -12
  287. package/dist/migrations/index.mjs.map +1 -1
  288. package/dist/package.json.js +185 -0
  289. package/dist/package.json.js.map +1 -0
  290. package/dist/package.json.mjs +162 -0
  291. package/dist/package.json.mjs.map +1 -0
  292. package/dist/providers/admin.js +27 -17
  293. package/dist/providers/admin.js.map +1 -1
  294. package/dist/providers/admin.mjs +26 -19
  295. package/dist/providers/admin.mjs.map +1 -1
  296. package/dist/providers/coreStore.js +13 -8
  297. package/dist/providers/coreStore.js.map +1 -1
  298. package/dist/providers/coreStore.mjs +12 -10
  299. package/dist/providers/coreStore.mjs.map +1 -1
  300. package/dist/providers/cron.js +19 -16
  301. package/dist/providers/cron.js.map +1 -1
  302. package/dist/providers/cron.mjs +18 -18
  303. package/dist/providers/cron.mjs.map +1 -1
  304. package/dist/providers/index.js +18 -9
  305. package/dist/providers/index.js.map +1 -1
  306. package/dist/providers/index.mjs +17 -10
  307. package/dist/providers/index.mjs.map +1 -1
  308. package/dist/providers/provider.js +4 -3
  309. package/dist/providers/provider.js.map +1 -1
  310. package/dist/providers/provider.mjs +3 -4
  311. package/dist/providers/provider.mjs.map +1 -1
  312. package/dist/providers/registries.js +37 -32
  313. package/dist/providers/registries.js.map +1 -1
  314. package/dist/providers/registries.mjs +36 -34
  315. package/dist/providers/registries.mjs.map +1 -1
  316. package/dist/providers/telemetry.js +19 -16
  317. package/dist/providers/telemetry.js.map +1 -1
  318. package/dist/providers/telemetry.mjs +18 -18
  319. package/dist/providers/telemetry.mjs.map +1 -1
  320. package/dist/providers/webhooks.js +28 -26
  321. package/dist/providers/webhooks.js.map +1 -1
  322. package/dist/providers/webhooks.mjs +27 -28
  323. package/dist/providers/webhooks.mjs.map +1 -1
  324. package/dist/registries/apis.js +23 -20
  325. package/dist/registries/apis.js.map +1 -1
  326. package/dist/registries/apis.mjs +22 -22
  327. package/dist/registries/apis.mjs.map +1 -1
  328. package/dist/registries/components.js +35 -37
  329. package/dist/registries/components.js.map +1 -1
  330. package/dist/registries/components.mjs +34 -39
  331. package/dist/registries/components.mjs.map +1 -1
  332. package/dist/registries/content-types.js +54 -59
  333. package/dist/registries/content-types.js.map +1 -1
  334. package/dist/registries/content-types.mjs +53 -61
  335. package/dist/registries/content-types.mjs.map +1 -1
  336. package/dist/registries/controllers.js +70 -71
  337. package/dist/registries/controllers.js.map +1 -1
  338. package/dist/registries/controllers.mjs +69 -73
  339. package/dist/registries/controllers.mjs.map +1 -1
  340. package/dist/registries/custom-fields.js +75 -65
  341. package/dist/registries/custom-fields.js.map +1 -1
  342. package/dist/registries/custom-fields.mjs +74 -67
  343. package/dist/registries/custom-fields.mjs.map +1 -1
  344. package/dist/registries/hooks.js +46 -49
  345. package/dist/registries/hooks.js.map +1 -1
  346. package/dist/registries/hooks.mjs +45 -51
  347. package/dist/registries/hooks.mjs.map +1 -1
  348. package/dist/registries/middlewares.js +49 -51
  349. package/dist/registries/middlewares.js.map +1 -1
  350. package/dist/registries/middlewares.mjs +48 -53
  351. package/dist/registries/middlewares.mjs.map +1 -1
  352. package/dist/registries/models.js +14 -13
  353. package/dist/registries/models.js.map +1 -1
  354. package/dist/registries/models.mjs +13 -14
  355. package/dist/registries/models.mjs.map +1 -1
  356. package/dist/registries/modules.js +39 -36
  357. package/dist/registries/modules.js.map +1 -1
  358. package/dist/registries/modules.mjs +38 -38
  359. package/dist/registries/modules.mjs.map +1 -1
  360. package/dist/registries/namespace.js +21 -20
  361. package/dist/registries/namespace.js.map +1 -1
  362. package/dist/registries/namespace.mjs +20 -23
  363. package/dist/registries/namespace.mjs.map +1 -1
  364. package/dist/registries/plugins.js +23 -20
  365. package/dist/registries/plugins.js.map +1 -1
  366. package/dist/registries/plugins.mjs +22 -22
  367. package/dist/registries/plugins.mjs.map +1 -1
  368. package/dist/registries/policies.js +103 -96
  369. package/dist/registries/policies.js.map +1 -1
  370. package/dist/registries/policies.mjs +102 -98
  371. package/dist/registries/policies.mjs.map +1 -1
  372. package/dist/registries/sanitizers.js +23 -22
  373. package/dist/registries/sanitizers.js.map +1 -1
  374. package/dist/registries/sanitizers.mjs +22 -22
  375. package/dist/registries/sanitizers.mjs.map +1 -1
  376. package/dist/registries/services.js +71 -71
  377. package/dist/registries/services.js.map +1 -1
  378. package/dist/registries/services.mjs +70 -73
  379. package/dist/registries/services.mjs.map +1 -1
  380. package/dist/registries/validators.js +23 -22
  381. package/dist/registries/validators.js.map +1 -1
  382. package/dist/registries/validators.mjs +22 -22
  383. package/dist/registries/validators.mjs.map +1 -1
  384. package/dist/services/auth/index.js +74 -74
  385. package/dist/services/auth/index.js.map +1 -1
  386. package/dist/services/auth/index.mjs +73 -74
  387. package/dist/services/auth/index.mjs.map +1 -1
  388. package/dist/services/config.js +47 -43
  389. package/dist/services/config.js.map +1 -1
  390. package/dist/services/config.mjs +46 -44
  391. package/dist/services/config.mjs.map +1 -1
  392. package/dist/services/content-api/index.js +80 -79
  393. package/dist/services/content-api/index.js.map +1 -1
  394. package/dist/services/content-api/index.mjs +79 -79
  395. package/dist/services/content-api/index.mjs.map +1 -1
  396. package/dist/services/content-api/permissions/engine.js +8 -5
  397. package/dist/services/content-api/permissions/engine.js.map +1 -1
  398. package/dist/services/content-api/permissions/engine.mjs +7 -5
  399. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  400. package/dist/services/content-api/permissions/index.js +101 -81
  401. package/dist/services/content-api/permissions/index.js.map +1 -1
  402. package/dist/services/content-api/permissions/index.mjs +100 -81
  403. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  404. package/dist/services/content-api/permissions/providers/action.js +17 -14
  405. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  406. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  407. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  408. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  409. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  410. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  411. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  412. package/dist/services/core-store.d.ts +2 -2
  413. package/dist/services/core-store.d.ts.map +1 -1
  414. package/dist/services/core-store.js +115 -95
  415. package/dist/services/core-store.js.map +1 -1
  416. package/dist/services/core-store.mjs +114 -97
  417. package/dist/services/core-store.mjs.map +1 -1
  418. package/dist/services/cron.js +74 -64
  419. package/dist/services/cron.js.map +1 -1
  420. package/dist/services/cron.mjs +73 -66
  421. package/dist/services/cron.mjs.map +1 -1
  422. package/dist/services/custom-fields.js +9 -7
  423. package/dist/services/custom-fields.js.map +1 -1
  424. package/dist/services/custom-fields.mjs +8 -9
  425. package/dist/services/custom-fields.mjs.map +1 -1
  426. package/dist/services/document-service/attributes/index.js +23 -18
  427. package/dist/services/document-service/attributes/index.js.map +1 -1
  428. package/dist/services/document-service/attributes/index.mjs +22 -19
  429. package/dist/services/document-service/attributes/index.mjs.map +1 -1
  430. package/dist/services/document-service/attributes/transforms.js +16 -15
  431. package/dist/services/document-service/attributes/transforms.js.map +1 -1
  432. package/dist/services/document-service/attributes/transforms.mjs +15 -15
  433. package/dist/services/document-service/attributes/transforms.mjs.map +1 -1
  434. package/dist/services/document-service/common.js +5 -4
  435. package/dist/services/document-service/common.js.map +1 -1
  436. package/dist/services/document-service/common.mjs +4 -5
  437. package/dist/services/document-service/common.mjs.map +1 -1
  438. package/dist/services/document-service/components.d.ts.map +1 -1
  439. package/dist/services/document-service/components.js +255 -257
  440. package/dist/services/document-service/components.js.map +1 -1
  441. package/dist/services/document-service/components.mjs +254 -262
  442. package/dist/services/document-service/components.mjs.map +1 -1
  443. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  444. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  445. package/dist/services/document-service/draft-and-publish.js +88 -48
  446. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  447. package/dist/services/document-service/draft-and-publish.mjs +87 -54
  448. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  449. package/dist/services/document-service/entries.d.ts.map +1 -1
  450. package/dist/services/document-service/entries.js +151 -91
  451. package/dist/services/document-service/entries.js.map +1 -1
  452. package/dist/services/document-service/entries.mjs +150 -92
  453. package/dist/services/document-service/entries.mjs.map +1 -1
  454. package/dist/services/document-service/events.d.ts +1 -1
  455. package/dist/services/document-service/events.d.ts.map +1 -1
  456. package/dist/services/document-service/events.js +52 -40
  457. package/dist/services/document-service/events.js.map +1 -1
  458. package/dist/services/document-service/events.mjs +51 -41
  459. package/dist/services/document-service/events.mjs.map +1 -1
  460. package/dist/services/document-service/index.js +53 -33
  461. package/dist/services/document-service/index.js.map +1 -1
  462. package/dist/services/document-service/index.mjs +52 -34
  463. package/dist/services/document-service/index.mjs.map +1 -1
  464. package/dist/services/document-service/internationalization.d.ts +6 -1
  465. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  466. package/dist/services/document-service/internationalization.js +94 -46
  467. package/dist/services/document-service/internationalization.js.map +1 -1
  468. package/dist/services/document-service/internationalization.mjs +92 -50
  469. package/dist/services/document-service/internationalization.mjs.map +1 -1
  470. package/dist/services/document-service/middlewares/errors.js +23 -19
  471. package/dist/services/document-service/middlewares/errors.js.map +1 -1
  472. package/dist/services/document-service/middlewares/errors.mjs +22 -20
  473. package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
  474. package/dist/services/document-service/middlewares/middleware-manager.js +46 -44
  475. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  476. package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -45
  477. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  478. package/dist/services/document-service/params.js +11 -5
  479. package/dist/services/document-service/params.js.map +1 -1
  480. package/dist/services/document-service/params.mjs +10 -6
  481. package/dist/services/document-service/params.mjs.map +1 -1
  482. package/dist/services/document-service/repository.d.ts.map +1 -1
  483. package/dist/services/document-service/repository.js +354 -321
  484. package/dist/services/document-service/repository.js.map +1 -1
  485. package/dist/services/document-service/repository.mjs +353 -322
  486. package/dist/services/document-service/repository.mjs.map +1 -1
  487. package/dist/services/document-service/transform/data.js +22 -12
  488. package/dist/services/document-service/transform/data.js.map +1 -1
  489. package/dist/services/document-service/transform/data.mjs +21 -13
  490. package/dist/services/document-service/transform/data.mjs.map +1 -1
  491. package/dist/services/document-service/transform/fields.js +26 -17
  492. package/dist/services/document-service/transform/fields.js.map +1 -1
  493. package/dist/services/document-service/transform/fields.mjs +25 -18
  494. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  495. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  496. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  497. package/dist/services/document-service/transform/id-map.js +115 -75
  498. package/dist/services/document-service/transform/id-map.js.map +1 -1
  499. package/dist/services/document-service/transform/id-map.mjs +114 -76
  500. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  501. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  502. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  503. package/dist/services/document-service/transform/id-transform.js +37 -29
  504. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  505. package/dist/services/document-service/transform/id-transform.mjs +36 -30
  506. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  507. package/dist/services/document-service/transform/populate.js +23 -18
  508. package/dist/services/document-service/transform/populate.js.map +1 -1
  509. package/dist/services/document-service/transform/populate.mjs +22 -19
  510. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  511. package/dist/services/document-service/transform/query.js +11 -6
  512. package/dist/services/document-service/transform/query.js.map +1 -1
  513. package/dist/services/document-service/transform/query.mjs +10 -7
  514. package/dist/services/document-service/transform/query.mjs.map +1 -1
  515. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  516. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  517. package/dist/services/document-service/transform/relations/extract/data-ids.js +70 -54
  518. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  519. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +69 -55
  520. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  521. package/dist/services/document-service/transform/relations/transform/data-ids.js +96 -71
  522. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  523. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +95 -72
  524. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  525. package/dist/services/document-service/transform/relations/transform/default-locale.js +47 -29
  526. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -1
  527. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +46 -30
  528. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -1
  529. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  530. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  531. package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
  532. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  533. package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
  534. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
  535. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  536. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  537. package/dist/services/document-service/transform/relations/utils/i18n.js +20 -18
  538. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  539. package/dist/services/document-service/transform/relations/utils/i18n.mjs +19 -21
  540. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  541. package/dist/services/document-service/transform/relations/utils/map-relation.js +116 -70
  542. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
  543. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +115 -72
  544. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
  545. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  546. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  547. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  548. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  549. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  550. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  551. package/dist/services/document-service/utils/populate.d.ts +1 -1
  552. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  553. package/dist/services/document-service/utils/populate.js +66 -42
  554. package/dist/services/document-service/utils/populate.js.map +1 -1
  555. package/dist/services/document-service/utils/populate.mjs +65 -43
  556. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  557. package/dist/services/document-service/utils/unidirectional-relations.d.ts +1 -1
  558. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  559. package/dist/services/document-service/utils/unidirectional-relations.js +110 -62
  560. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -1
  561. package/dist/services/document-service/utils/unidirectional-relations.mjs +109 -64
  562. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -1
  563. package/dist/services/entity-service/index.js +230 -161
  564. package/dist/services/entity-service/index.js.map +1 -1
  565. package/dist/services/entity-service/index.mjs +229 -160
  566. package/dist/services/entity-service/index.mjs.map +1 -1
  567. package/dist/services/entity-validator/blocks-validator.js +135 -103
  568. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  569. package/dist/services/entity-validator/blocks-validator.mjs +134 -104
  570. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  571. package/dist/services/entity-validator/index.d.ts +1 -1
  572. package/dist/services/entity-validator/index.d.ts.map +1 -1
  573. package/dist/services/entity-validator/index.js +370 -366
  574. package/dist/services/entity-validator/index.js.map +1 -1
  575. package/dist/services/entity-validator/index.mjs +366 -363
  576. package/dist/services/entity-validator/index.mjs.map +1 -1
  577. package/dist/services/entity-validator/validators.d.ts +1 -0
  578. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  579. package/dist/services/entity-validator/validators.js +270 -209
  580. package/dist/services/entity-validator/validators.js.map +1 -1
  581. package/dist/services/entity-validator/validators.mjs +269 -215
  582. package/dist/services/entity-validator/validators.mjs.map +1 -1
  583. package/dist/services/errors.js +65 -65
  584. package/dist/services/errors.js.map +1 -1
  585. package/dist/services/errors.mjs +64 -66
  586. package/dist/services/errors.mjs.map +1 -1
  587. package/dist/services/event-hub.js +82 -69
  588. package/dist/services/event-hub.js.map +1 -1
  589. package/dist/services/event-hub.mjs +81 -71
  590. package/dist/services/event-hub.mjs.map +1 -1
  591. package/dist/services/features.js +19 -14
  592. package/dist/services/features.js.map +1 -1
  593. package/dist/services/features.mjs +18 -15
  594. package/dist/services/features.mjs.map +1 -1
  595. package/dist/services/fs.js +41 -40
  596. package/dist/services/fs.js.map +1 -1
  597. package/dist/services/fs.mjs +40 -39
  598. package/dist/services/fs.mjs.map +1 -1
  599. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  600. package/dist/services/metrics/admin-user-hash.js +13 -11
  601. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  602. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  603. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  604. package/dist/services/metrics/index.js +46 -39
  605. package/dist/services/metrics/index.js.map +1 -1
  606. package/dist/services/metrics/index.mjs +45 -41
  607. package/dist/services/metrics/index.mjs.map +1 -1
  608. package/dist/services/metrics/is-truthy.js +13 -6
  609. package/dist/services/metrics/is-truthy.js.map +1 -1
  610. package/dist/services/metrics/is-truthy.mjs +12 -6
  611. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  612. package/dist/services/metrics/middleware.d.ts.map +1 -1
  613. package/dist/services/metrics/middleware.js +37 -22
  614. package/dist/services/metrics/middleware.js.map +1 -1
  615. package/dist/services/metrics/middleware.mjs +36 -24
  616. package/dist/services/metrics/middleware.mjs.map +1 -1
  617. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  618. package/dist/services/metrics/rate-limiter.js +24 -19
  619. package/dist/services/metrics/rate-limiter.js.map +1 -1
  620. package/dist/services/metrics/rate-limiter.mjs +23 -21
  621. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  622. package/dist/services/metrics/sender.d.ts.map +1 -1
  623. package/dist/services/metrics/sender.js +78 -69
  624. package/dist/services/metrics/sender.js.map +1 -1
  625. package/dist/services/metrics/sender.mjs +77 -64
  626. package/dist/services/metrics/sender.mjs.map +1 -1
  627. package/dist/services/query-params.js +13 -10
  628. package/dist/services/query-params.js.map +1 -1
  629. package/dist/services/query-params.mjs +12 -12
  630. package/dist/services/query-params.mjs.map +1 -1
  631. package/dist/services/reloader.js +35 -32
  632. package/dist/services/reloader.js.map +1 -1
  633. package/dist/services/reloader.mjs +34 -33
  634. package/dist/services/reloader.mjs.map +1 -1
  635. package/dist/services/request-context.js +11 -8
  636. package/dist/services/request-context.js.map +1 -1
  637. package/dist/services/request-context.mjs +10 -10
  638. package/dist/services/request-context.mjs.map +1 -1
  639. package/dist/services/server/admin-api.js +11 -10
  640. package/dist/services/server/admin-api.js.map +1 -1
  641. package/dist/services/server/admin-api.mjs +10 -11
  642. package/dist/services/server/admin-api.mjs.map +1 -1
  643. package/dist/services/server/api.js +33 -27
  644. package/dist/services/server/api.js.map +1 -1
  645. package/dist/services/server/api.mjs +32 -26
  646. package/dist/services/server/api.mjs.map +1 -1
  647. package/dist/services/server/compose-endpoint.js +116 -105
  648. package/dist/services/server/compose-endpoint.js.map +1 -1
  649. package/dist/services/server/compose-endpoint.mjs +115 -105
  650. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  651. package/dist/services/server/content-api.js +11 -9
  652. package/dist/services/server/content-api.js.map +1 -1
  653. package/dist/services/server/content-api.mjs +10 -10
  654. package/dist/services/server/content-api.mjs.map +1 -1
  655. package/dist/services/server/http-server.js +48 -44
  656. package/dist/services/server/http-server.js.map +1 -1
  657. package/dist/services/server/http-server.mjs +47 -43
  658. package/dist/services/server/http-server.mjs.map +1 -1
  659. package/dist/services/server/index.js +85 -82
  660. package/dist/services/server/index.js.map +1 -1
  661. package/dist/services/server/index.mjs +84 -81
  662. package/dist/services/server/index.mjs.map +1 -1
  663. package/dist/services/server/koa.js +49 -47
  664. package/dist/services/server/koa.js.map +1 -1
  665. package/dist/services/server/koa.mjs +48 -44
  666. package/dist/services/server/koa.mjs.map +1 -1
  667. package/dist/services/server/middleware.js +86 -82
  668. package/dist/services/server/middleware.js.map +1 -1
  669. package/dist/services/server/middleware.mjs +85 -82
  670. package/dist/services/server/middleware.mjs.map +1 -1
  671. package/dist/services/server/policy.js +24 -17
  672. package/dist/services/server/policy.js.map +1 -1
  673. package/dist/services/server/policy.mjs +23 -18
  674. package/dist/services/server/policy.mjs.map +1 -1
  675. package/dist/services/server/register-middlewares.js +68 -61
  676. package/dist/services/server/register-middlewares.js.map +1 -1
  677. package/dist/services/server/register-middlewares.mjs +67 -63
  678. package/dist/services/server/register-middlewares.mjs.map +1 -1
  679. package/dist/services/server/register-routes.js +109 -66
  680. package/dist/services/server/register-routes.js.map +1 -1
  681. package/dist/services/server/register-routes.mjs +108 -66
  682. package/dist/services/server/register-routes.mjs.map +1 -1
  683. package/dist/services/server/routing.d.ts +10 -0
  684. package/dist/services/server/routing.d.ts.map +1 -1
  685. package/dist/services/server/routing.js +100 -81
  686. package/dist/services/server/routing.js.map +1 -1
  687. package/dist/services/server/routing.mjs +99 -81
  688. package/dist/services/server/routing.mjs.map +1 -1
  689. package/dist/services/utils/conditional-fields.d.ts +3 -0
  690. package/dist/services/utils/conditional-fields.d.ts.map +1 -0
  691. package/dist/services/utils/conditional-fields.js +22 -0
  692. package/dist/services/utils/conditional-fields.js.map +1 -0
  693. package/dist/services/utils/conditional-fields.mjs +20 -0
  694. package/dist/services/utils/conditional-fields.mjs.map +1 -0
  695. package/dist/services/utils/dynamic-zones.js +13 -14
  696. package/dist/services/utils/dynamic-zones.js.map +1 -1
  697. package/dist/services/utils/dynamic-zones.mjs +12 -16
  698. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  699. package/dist/services/webhook-runner.js +124 -122
  700. package/dist/services/webhook-runner.js.map +1 -1
  701. package/dist/services/webhook-runner.mjs +123 -121
  702. package/dist/services/webhook-runner.mjs.map +1 -1
  703. package/dist/services/webhook-store.js +132 -99
  704. package/dist/services/webhook-store.js.map +1 -1
  705. package/dist/services/webhook-store.mjs +131 -101
  706. package/dist/services/webhook-store.mjs.map +1 -1
  707. package/dist/services/worker-queue.js +44 -49
  708. package/dist/services/worker-queue.js.map +1 -1
  709. package/dist/services/worker-queue.mjs +43 -49
  710. package/dist/services/worker-queue.mjs.map +1 -1
  711. package/dist/utils/convert-custom-field-type.js +17 -20
  712. package/dist/utils/convert-custom-field-type.js.map +1 -1
  713. package/dist/utils/convert-custom-field-type.mjs +16 -21
  714. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  715. package/dist/utils/cron.js +64 -30
  716. package/dist/utils/cron.js.map +1 -1
  717. package/dist/utils/cron.mjs +63 -31
  718. package/dist/utils/cron.mjs.map +1 -1
  719. package/dist/utils/fetch.d.ts +5 -1
  720. package/dist/utils/fetch.d.ts.map +1 -1
  721. package/dist/utils/fetch.js +28 -18
  722. package/dist/utils/fetch.js.map +1 -1
  723. package/dist/utils/fetch.mjs +27 -19
  724. package/dist/utils/fetch.mjs.map +1 -1
  725. package/dist/utils/filepath-to-prop-path.js +20 -28
  726. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  727. package/dist/utils/filepath-to-prop-path.mjs +19 -26
  728. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  729. package/dist/utils/is-initialized.js +21 -12
  730. package/dist/utils/is-initialized.js.map +1 -1
  731. package/dist/utils/is-initialized.mjs +20 -13
  732. package/dist/utils/is-initialized.mjs.map +1 -1
  733. package/dist/utils/lifecycles.js +6 -5
  734. package/dist/utils/lifecycles.js.map +1 -1
  735. package/dist/utils/lifecycles.mjs +5 -6
  736. package/dist/utils/lifecycles.mjs.map +1 -1
  737. package/dist/utils/load-config-file.js +40 -38
  738. package/dist/utils/load-config-file.js.map +1 -1
  739. package/dist/utils/load-config-file.mjs +39 -36
  740. package/dist/utils/load-config-file.mjs.map +1 -1
  741. package/dist/utils/load-files.js +40 -34
  742. package/dist/utils/load-files.js.map +1 -1
  743. package/dist/utils/load-files.mjs +39 -31
  744. package/dist/utils/load-files.mjs.map +1 -1
  745. package/dist/utils/open-browser.js +8 -8
  746. package/dist/utils/open-browser.js.map +1 -1
  747. package/dist/utils/open-browser.mjs +7 -7
  748. package/dist/utils/open-browser.mjs.map +1 -1
  749. package/dist/utils/resolve-working-dirs.js +23 -10
  750. package/dist/utils/resolve-working-dirs.js.map +1 -1
  751. package/dist/utils/resolve-working-dirs.mjs +22 -9
  752. package/dist/utils/resolve-working-dirs.mjs.map +1 -1
  753. package/dist/utils/signals.js +20 -14
  754. package/dist/utils/signals.js.map +1 -1
  755. package/dist/utils/signals.mjs +19 -15
  756. package/dist/utils/signals.mjs.map +1 -1
  757. package/dist/utils/startup-logger.js +107 -83
  758. package/dist/utils/startup-logger.js.map +1 -1
  759. package/dist/utils/startup-logger.mjs +106 -80
  760. package/dist/utils/startup-logger.mjs.map +1 -1
  761. package/dist/utils/transform-content-types-to-models.d.ts +197 -0
  762. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  763. package/dist/utils/transform-content-types-to-models.js +350 -261
  764. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  765. package/dist/utils/transform-content-types-to-models.mjs +349 -269
  766. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  767. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  768. package/dist/utils/update-notifier/index.js +68 -73
  769. package/dist/utils/update-notifier/index.js.map +1 -1
  770. package/dist/utils/update-notifier/index.mjs +67 -67
  771. package/dist/utils/update-notifier/index.mjs.map +1 -1
  772. package/package.json +29 -27
package/dist/Strapi.js CHANGED
@@ -1,437 +1,457 @@
1
- "use strict";
2
- const globalAgent = require("global-agent");
3
- const path = require("path");
4
- const _ = require("lodash");
5
- const fp = require("lodash/fp");
6
- const logger = require("@strapi/logger");
7
- const database = require("@strapi/database");
8
- const tsUtils = require("@strapi/typescript-utils");
9
- const index = require("./configuration/index.js");
10
- const factories = require("./factories.js");
11
- const openBrowser = require("./utils/open-browser.js");
12
- const isInitialized = require("./utils/is-initialized.js");
13
- const index$2 = require("./ee/index.js");
14
- require("./utils/update-notifier/index.js");
15
- const fetch = require("./utils/fetch.js");
16
- const convertCustomFieldType = require("./utils/convert-custom-field-type.js");
17
- const startupLogger = require("./utils/startup-logger.js");
18
- const transformContentTypesToModels = require("./utils/transform-content-types-to-models.js");
19
- const lifecycles = require("./utils/lifecycles.js");
20
- require("node:path");
21
- const container = require("./container.js");
22
- const fs = require("./services/fs.js");
23
- const eventHub = require("./services/event-hub.js");
24
- const index$5 = require("./services/server/index.js");
25
- const reloader = require("./services/reloader.js");
26
- const index$1 = require("./providers/index.js");
27
- const index$7 = require("./services/entity-service/index.js");
28
- const queryParams = require("./services/query-params.js");
29
- const index$6 = require("./services/entity-validator/index.js");
30
- const requestContext = require("./services/request-context.js");
31
- const index$4 = require("./services/auth/index.js");
32
- const customFields = require("./services/custom-fields.js");
33
- const index$3 = require("./services/content-api/index.js");
34
- const dynamicZones = require("./services/utils/dynamic-zones.js");
35
- const features = require("./services/features.js");
36
- const index$8 = require("./services/document-service/index.js");
37
- const coreStore = require("./services/core-store.js");
38
- const config = require("./services/config.js");
39
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
40
- function _interopNamespace(e) {
41
- if (e && e.__esModule) return e;
42
- const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
1
+ 'use strict';
2
+
3
+ var globalAgent = require('global-agent');
4
+ var path = require('path');
5
+ var _ = require('lodash');
6
+ var fp = require('lodash/fp');
7
+ var logger = require('@strapi/logger');
8
+ var database = require('@strapi/database');
9
+ var tsUtils = require('@strapi/typescript-utils');
10
+ var index$8 = require('./configuration/index.js');
11
+ var factories = require('./factories.js');
12
+ var openBrowser = require('./utils/open-browser.js');
13
+ var isInitialized = require('./utils/is-initialized.js');
14
+ var index = require('./ee/index.js');
15
+ require('package-json');
16
+ require('configstore');
17
+ require('semver');
18
+ require('boxen');
19
+ require('chalk');
20
+ require('@strapi/utils');
21
+ var fetch = require('./utils/fetch.js');
22
+ var convertCustomFieldType = require('./utils/convert-custom-field-type.js');
23
+ var startupLogger = require('./utils/startup-logger.js');
24
+ var transformContentTypesToModels = require('./utils/transform-content-types-to-models.js');
25
+ var lifecycles = require('./utils/lifecycles.js');
26
+ require('node:path');
27
+ var container = require('./container.js');
28
+ var fs = require('./services/fs.js');
29
+ var eventHub = require('./services/event-hub.js');
30
+ var index$3 = require('./services/server/index.js');
31
+ var reloader = require('./services/reloader.js');
32
+ var index$7 = require('./providers/index.js');
33
+ var index$5 = require('./services/entity-service/index.js');
34
+ var queryParams = require('./services/query-params.js');
35
+ var index$4 = require('./services/entity-validator/index.js');
36
+ var requestContext = require('./services/request-context.js');
37
+ var index$2 = require('./services/auth/index.js');
38
+ var customFields = require('./services/custom-fields.js');
39
+ var index$1 = require('./services/content-api/index.js');
40
+ var dynamicZones = require('./services/utils/dynamic-zones.js');
41
+ var conditionalFields = require('./services/utils/conditional-fields.js');
42
+ var features = require('./services/features.js');
43
+ var index$6 = require('./services/document-service/index.js');
44
+ var coreStore = require('./services/core-store.js');
45
+ var config = require('./services/config.js');
46
+
47
+ function _interopNamespaceDefault(e) {
48
+ var n = Object.create(null);
43
49
  if (e) {
44
- for (const k in e) {
45
- if (k !== "default") {
46
- const d = Object.getOwnPropertyDescriptor(e, k);
50
+ Object.keys(e).forEach(function (k) {
51
+ if (k !== 'default') {
52
+ var d = Object.getOwnPropertyDescriptor(e, k);
47
53
  Object.defineProperty(n, k, d.get ? d : {
48
54
  enumerable: true,
49
- get: () => e[k]
55
+ get: function () { return e[k]; }
50
56
  });
51
57
  }
52
- }
58
+ });
53
59
  }
54
60
  n.default = e;
55
61
  return Object.freeze(n);
56
62
  }
57
- const globalAgent__namespace = /* @__PURE__ */ _interopNamespace(globalAgent);
58
- const path__default = /* @__PURE__ */ _interopDefault(path);
59
- const ___default = /* @__PURE__ */ _interopDefault(_);
60
- const tsUtils__default = /* @__PURE__ */ _interopDefault(tsUtils);
63
+
64
+ var globalAgent__namespace = /*#__PURE__*/_interopNamespaceDefault(globalAgent);
65
+
61
66
  class Strapi extends container.Container {
62
- app;
63
- isLoaded = false;
64
- internal_config = {};
65
- constructor(opts) {
66
- super();
67
- this.internal_config = index.loadConfiguration(opts);
68
- this.registerInternalServices();
69
- for (const provider of index$1.providers) {
70
- provider.init?.(this);
67
+ get admin() {
68
+ return this.get('admin');
71
69
  }
72
- }
73
- get admin() {
74
- return this.get("admin");
75
- }
76
- get EE() {
77
- return index$2.isEE;
78
- }
79
- get ee() {
80
- return index$2;
81
- }
82
- get dirs() {
83
- return this.config.get("dirs");
84
- }
85
- get reload() {
86
- return this.get("reload");
87
- }
88
- get db() {
89
- return this.get("db");
90
- }
91
- get requestContext() {
92
- return this.get("requestContext");
93
- }
94
- get customFields() {
95
- return this.get("customFields");
96
- }
97
- get entityValidator() {
98
- return this.get("entityValidator");
99
- }
100
- /**
70
+ get EE() {
71
+ return index.isEE;
72
+ }
73
+ get ee() {
74
+ return index;
75
+ }
76
+ get dirs() {
77
+ return this.config.get('dirs');
78
+ }
79
+ get reload() {
80
+ return this.get('reload');
81
+ }
82
+ get db() {
83
+ return this.get('db');
84
+ }
85
+ get requestContext() {
86
+ return this.get('requestContext');
87
+ }
88
+ get customFields() {
89
+ return this.get('customFields');
90
+ }
91
+ get entityValidator() {
92
+ return this.get('entityValidator');
93
+ }
94
+ /**
101
95
  * @deprecated `strapi.entityService` will be removed in the next major version
102
- */
103
- get entityService() {
104
- return this.get("entityService");
105
- }
106
- get documents() {
107
- return this.get("documents");
108
- }
109
- get features() {
110
- return this.get("features");
111
- }
112
- get fetch() {
113
- return this.get("fetch");
114
- }
115
- get cron() {
116
- return this.get("cron");
117
- }
118
- get log() {
119
- return this.get("logger");
120
- }
121
- get startupLogger() {
122
- return this.get("startupLogger");
123
- }
124
- get eventHub() {
125
- return this.get("eventHub");
126
- }
127
- get fs() {
128
- return this.get("fs");
129
- }
130
- get server() {
131
- return this.get("server");
132
- }
133
- get telemetry() {
134
- return this.get("telemetry");
135
- }
136
- get store() {
137
- return this.get("coreStore");
138
- }
139
- get config() {
140
- return this.get("config");
141
- }
142
- get services() {
143
- return this.get("services").getAll();
144
- }
145
- service(uid) {
146
- return this.get("services").get(uid);
147
- }
148
- get controllers() {
149
- return this.get("controllers").getAll();
150
- }
151
- controller(uid) {
152
- return this.get("controllers").get(uid);
153
- }
154
- get contentTypes() {
155
- return this.get("content-types").getAll();
156
- }
157
- contentType(name) {
158
- return this.get("content-types").get(name);
159
- }
160
- get components() {
161
- return this.get("components").getAll();
162
- }
163
- get policies() {
164
- return this.get("policies").getAll();
165
- }
166
- policy(name) {
167
- return this.get("policies").get(name);
168
- }
169
- get middlewares() {
170
- return this.get("middlewares").getAll();
171
- }
172
- middleware(name) {
173
- return this.get("middlewares").get(name);
174
- }
175
- get plugins() {
176
- return this.get("plugins").getAll();
177
- }
178
- plugin(name) {
179
- return this.get("plugins").get(name);
180
- }
181
- get hooks() {
182
- return this.get("hooks").getAll();
183
- }
184
- hook(name) {
185
- return this.get("hooks").get(name);
186
- }
187
- get apis() {
188
- return this.get("apis").getAll();
189
- }
190
- api(name) {
191
- return this.get("apis").get(name);
192
- }
193
- get auth() {
194
- return this.get("auth");
195
- }
196
- get contentAPI() {
197
- return this.get("content-api");
198
- }
199
- get sanitizers() {
200
- return this.get("sanitizers");
201
- }
202
- get validators() {
203
- return this.get("validators");
204
- }
205
- async start() {
206
- try {
207
- if (!this.isLoaded) {
208
- await this.load();
209
- }
210
- await this.listen();
211
- return this;
212
- } catch (error) {
213
- return this.stopWithError(error);
96
+ */ get entityService() {
97
+ return this.get('entityService');
214
98
  }
215
- }
216
- // TODO: split into more providers
217
- registerInternalServices() {
218
- const config$1 = config.createConfigProvider(this.internal_config, this);
219
- const logger$1 = logger.createLogger({
220
- level: "http",
221
- // Strapi defaults to level 'http'
222
- ...config$1.get("logger"),
223
- // DEPRECATED
224
- ...config$1.get("server.logger.config")
225
- });
226
- this.add("config", () => config$1).add("query-params", queryParams(this)).add("content-api", index$3(this)).add("auth", index$4()).add("server", () => index$5.createServer(this)).add("fs", () => fs(this)).add("eventHub", () => eventHub()).add("startupLogger", () => startupLogger.createStartupLogger(this)).add("logger", () => logger$1).add("fetch", () => fetch.createStrapiFetch(this)).add("features", () => features.createFeaturesService(this)).add("requestContext", requestContext).add("customFields", customFields(this)).add("entityValidator", index$6).add("entityService", () => index$7({ strapi: this, db: this.db })).add("documents", () => index$8.createDocumentService(this)).add("db", () => {
227
- const tsDir = tsUtils__default.default.resolveOutDirSync(this.dirs.app.root);
228
- const tsMigrationsEnabled = this.config.get("database.settings.useTypescriptMigrations") === true && tsDir;
229
- const projectDir = tsMigrationsEnabled ? tsDir : this.dirs.app.root;
230
- return new database.Database(
231
- ___default.default.merge(this.config.get("database"), {
232
- logger: logger$1,
233
- settings: {
234
- migrations: {
235
- dir: path__default.default.join(projectDir, "database/migrations")
236
- }
237
- }
238
- })
239
- );
240
- }).add("reload", () => reloader.createReloader(this));
241
- }
242
- sendStartupTelemetry() {
243
- this.telemetry.send("didStartServer", {
244
- groupProperties: {
245
- database: this.config.get("database.connection.client"),
246
- plugins: Object.keys(this.plugins),
247
- numberOfAllContentTypes: ___default.default.size(this.contentTypes),
248
- // TODO: V5: This event should be renamed numberOfContentTypes in V5 as the name is already taken to describe the number of content types using i18n.
249
- numberOfComponents: ___default.default.size(this.components),
250
- numberOfDynamicZones: dynamicZones(),
251
- numberOfCustomControllers: Object.values(this.controllers).filter(
252
- // TODO: Fix this at the content API loader level to prevent future types issues
253
- (controller) => controller !== void 0 && factories.isCustomController(controller)
254
- ).length,
255
- environment: this.config.environment
256
- // TODO: to add back
257
- // providers: this.config.installedProviders,
258
- }
259
- }).catch(this.log.error);
260
- }
261
- async openAdmin({ isInitialized: isInitialized2 }) {
262
- const shouldOpenAdmin = this.config.get("environment") === "development" && this.config.get("admin.autoOpen", true) !== false;
263
- if (shouldOpenAdmin && !isInitialized2) {
264
- try {
265
- await openBrowser.openBrowser(this.config);
266
- this.telemetry.send("didOpenTab");
267
- } catch (e) {
268
- this.telemetry.send("didNotOpenTab");
269
- }
99
+ get documents() {
100
+ return this.get('documents');
270
101
  }
271
- }
272
- async postListen() {
273
- const isInitialized$1 = await isInitialized.isInitialized(this);
274
- this.startupLogger.logStartupMessage({ isInitialized: isInitialized$1 });
275
- this.log.info("Strapi started successfully");
276
- this.sendStartupTelemetry();
277
- this.openAdmin({ isInitialized: isInitialized$1 });
278
- }
279
- /**
280
- * Add behaviors to the server
281
- */
282
- async listen() {
283
- return new Promise((resolve, reject) => {
284
- const onListen = async () => {
102
+ get features() {
103
+ return this.get('features');
104
+ }
105
+ get fetch() {
106
+ return this.get('fetch');
107
+ }
108
+ get cron() {
109
+ return this.get('cron');
110
+ }
111
+ get log() {
112
+ return this.get('logger');
113
+ }
114
+ get startupLogger() {
115
+ return this.get('startupLogger');
116
+ }
117
+ get eventHub() {
118
+ return this.get('eventHub');
119
+ }
120
+ get fs() {
121
+ return this.get('fs');
122
+ }
123
+ get server() {
124
+ return this.get('server');
125
+ }
126
+ get telemetry() {
127
+ return this.get('telemetry');
128
+ }
129
+ get store() {
130
+ return this.get('coreStore');
131
+ }
132
+ get config() {
133
+ return this.get('config');
134
+ }
135
+ get services() {
136
+ return this.get('services').getAll();
137
+ }
138
+ service(uid) {
139
+ return this.get('services').get(uid);
140
+ }
141
+ get controllers() {
142
+ return this.get('controllers').getAll();
143
+ }
144
+ controller(uid) {
145
+ return this.get('controllers').get(uid);
146
+ }
147
+ get contentTypes() {
148
+ return this.get('content-types').getAll();
149
+ }
150
+ contentType(name) {
151
+ return this.get('content-types').get(name);
152
+ }
153
+ get components() {
154
+ return this.get('components').getAll();
155
+ }
156
+ get policies() {
157
+ return this.get('policies').getAll();
158
+ }
159
+ policy(name) {
160
+ return this.get('policies').get(name);
161
+ }
162
+ get middlewares() {
163
+ return this.get('middlewares').getAll();
164
+ }
165
+ middleware(name) {
166
+ return this.get('middlewares').get(name);
167
+ }
168
+ get plugins() {
169
+ return this.get('plugins').getAll();
170
+ }
171
+ plugin(name) {
172
+ return this.get('plugins').get(name);
173
+ }
174
+ get hooks() {
175
+ return this.get('hooks').getAll();
176
+ }
177
+ hook(name) {
178
+ return this.get('hooks').get(name);
179
+ }
180
+ get apis() {
181
+ return this.get('apis').getAll();
182
+ }
183
+ api(name) {
184
+ return this.get('apis').get(name);
185
+ }
186
+ get auth() {
187
+ return this.get('auth');
188
+ }
189
+ get contentAPI() {
190
+ return this.get('content-api');
191
+ }
192
+ get sanitizers() {
193
+ return this.get('sanitizers');
194
+ }
195
+ get validators() {
196
+ return this.get('validators');
197
+ }
198
+ async start() {
285
199
  try {
286
- await this.postListen();
287
- resolve();
200
+ if (!this.isLoaded) {
201
+ await this.load();
202
+ }
203
+ await this.listen();
204
+ return this;
288
205
  } catch (error) {
289
- reject(error);
206
+ return this.stopWithError(error);
290
207
  }
291
- };
292
- const listenSocket = this.config.get("server.socket");
293
- if (listenSocket) {
294
- this.server.listen(listenSocket, onListen);
295
- } else {
296
- const { host, port } = this.config.get("server");
297
- this.server.listen(port, host, onListen);
298
- }
299
- });
300
- }
301
- stopWithError(err, customMessage) {
302
- this.log.debug(`⛔️ Server wasn't able to start properly.`);
303
- if (customMessage) {
304
- this.log.error(customMessage);
305
208
  }
306
- this.log.error(err);
307
- return this.stop();
308
- }
309
- stop(exitCode = 1) {
310
- this.destroy();
311
- if (this.config.get("autoReload")) {
312
- process.send?.("stop");
209
+ // TODO: split into more providers
210
+ registerInternalServices() {
211
+ const config$1 = config.createConfigProvider(this.internal_config, this);
212
+ const logger$1 = logger.createLogger({
213
+ level: 'http',
214
+ ...config$1.get('logger'),
215
+ ...config$1.get('server.logger.config')
216
+ });
217
+ // Instantiate the Strapi container
218
+ this.add('config', ()=>config$1).add('query-params', queryParams(this)).add('content-api', index$1(this)).add('auth', index$2()).add('server', ()=>index$3.createServer(this)).add('fs', ()=>fs(this)).add('eventHub', ()=>eventHub()).add('startupLogger', ()=>startupLogger.createStartupLogger(this)).add('logger', ()=>logger$1).add('fetch', ()=>fetch.createStrapiFetch(this)).add('features', ()=>features.createFeaturesService(this)).add('requestContext', requestContext).add('customFields', customFields(this)).add('entityValidator', index$4).add('entityService', ()=>index$5({
219
+ strapi: this,
220
+ db: this.db
221
+ })).add('documents', ()=>index$6.createDocumentService(this)).add('db', ()=>{
222
+ const tsDir = tsUtils.resolveOutDirSync(this.dirs.app.root);
223
+ const tsMigrationsEnabled = this.config.get('database.settings.useTypescriptMigrations') === true && tsDir;
224
+ const projectDir = tsMigrationsEnabled ? tsDir : this.dirs.app.root;
225
+ return new database.Database(_.merge(this.config.get('database'), {
226
+ logger: logger$1,
227
+ settings: {
228
+ migrations: {
229
+ dir: path.join(projectDir, 'database/migrations')
230
+ }
231
+ }
232
+ }));
233
+ }).add('reload', ()=>reloader.createReloader(this));
313
234
  }
314
- process.exit(exitCode);
315
- }
316
- async load() {
317
- await this.register();
318
- await this.bootstrap();
319
- this.isLoaded = true;
320
- return this;
321
- }
322
- async register() {
323
- this.ee.init(this.dirs.app.root, this.log);
324
- for (const provider of index$1.providers) {
325
- await provider.register?.(this);
326
- }
327
- await this.runPluginsLifecycles(lifecycles.LIFECYCLES.REGISTER);
328
- await this.runUserLifecycles(lifecycles.LIFECYCLES.REGISTER);
329
- convertCustomFieldType.convertCustomFieldType(this);
330
- return this;
331
- }
332
- async bootstrap() {
333
- this.configureGlobalProxy();
334
- const models = [
335
- ...transformContentTypesToModels.transformContentTypesToModels(
336
- [...Object.values(this.contentTypes), ...Object.values(this.components)],
337
- this.db.metadata.identifiers
338
- ),
339
- ...this.get("models").get()
340
- ];
341
- await this.db.init({ models });
342
- let oldContentTypes;
343
- if (await this.db.getSchemaConnection().hasTable(coreStore.coreStoreModel.tableName)) {
344
- oldContentTypes = await this.store.get({
345
- type: "strapi",
346
- name: "content_types",
347
- key: "schema"
348
- });
349
- }
350
- await this.hook("strapi::content-types.beforeSync").call({
351
- oldContentTypes,
352
- contentTypes: this.contentTypes
353
- });
354
- const status = await this.db.schema.sync();
355
- if (status === "CHANGED") {
356
- await this.db.repair.removeOrphanMorphType({ pivot: "component_type" });
235
+ sendStartupTelemetry() {
236
+ // Emit started event.
237
+ // do not await to avoid slower startup
238
+ // This event is anonymous
239
+ this.telemetry.send('didStartServer', {
240
+ groupProperties: {
241
+ database: this.config.get('database.connection.client'),
242
+ plugins: Object.keys(this.plugins),
243
+ numberOfAllContentTypes: _.size(this.contentTypes),
244
+ numberOfComponents: _.size(this.components),
245
+ numberOfDynamicZones: dynamicZones(),
246
+ numberOfConditionalFields: conditionalFields(),
247
+ numberOfCustomControllers: Object.values(this.controllers).filter(// TODO: Fix this at the content API loader level to prevent future types issues
248
+ (controller)=>controller !== undefined && factories.isCustomController(controller)).length,
249
+ environment: this.config.environment
250
+ }
251
+ }).catch(this.log.error);
357
252
  }
358
- if (this.EE) {
359
- await index$2.checkLicense({ strapi: this });
253
+ async openAdmin({ isInitialized }) {
254
+ const shouldOpenAdmin = this.config.get('environment') === 'development' && this.config.get('admin.autoOpen', true) !== false;
255
+ if (shouldOpenAdmin && !isInitialized) {
256
+ try {
257
+ await openBrowser.openBrowser(this.config);
258
+ this.telemetry.send('didOpenTab');
259
+ } catch (e) {
260
+ this.telemetry.send('didNotOpenTab');
261
+ }
262
+ }
360
263
  }
361
- await this.hook("strapi::content-types.afterSync").call({
362
- oldContentTypes,
363
- contentTypes: this.contentTypes
364
- });
365
- await this.store.set({
366
- type: "strapi",
367
- name: "content_types",
368
- key: "schema",
369
- value: this.contentTypes
370
- });
371
- await this.server.initMiddlewares();
372
- this.server.initRouting();
373
- await this.contentAPI.permissions.registerActions();
374
- await this.runPluginsLifecycles(lifecycles.LIFECYCLES.BOOTSTRAP);
375
- for (const provider of index$1.providers) {
376
- await provider.bootstrap?.(this);
377
- }
378
- await this.runUserLifecycles(lifecycles.LIFECYCLES.BOOTSTRAP);
379
- return this;
380
- }
381
- configureGlobalProxy() {
382
- const globalProxy = this.config.get("server.proxy.global");
383
- const httpProxy = this.config.get("server.proxy.http") || globalProxy;
384
- const httpsProxy = this.config.get("server.proxy.https") || globalProxy;
385
- if (!httpProxy && !httpsProxy) {
386
- return;
387
- }
388
- globalAgent__namespace.bootstrap();
389
- if (httpProxy) {
390
- this.log.info(`Using HTTP proxy: ${httpProxy}`);
391
- global.GLOBAL_AGENT.HTTP_PROXY = httpProxy;
392
- }
393
- if (httpsProxy) {
394
- this.log.info(`Using HTTPS proxy: ${httpsProxy}`);
395
- global.GLOBAL_AGENT.HTTPS_PROXY = httpsProxy;
264
+ async postListen() {
265
+ const isInitialized$1 = await isInitialized.isInitialized(this);
266
+ this.startupLogger.logStartupMessage({
267
+ isInitialized: isInitialized$1
268
+ });
269
+ this.log.info('Strapi started successfully');
270
+ this.sendStartupTelemetry();
271
+ this.openAdmin({
272
+ isInitialized: isInitialized$1
273
+ });
396
274
  }
397
- }
398
- async destroy() {
399
- this.log.info("Shutting down Strapi");
400
- await this.runPluginsLifecycles(lifecycles.LIFECYCLES.DESTROY);
401
- for (const provider of index$1.providers) {
402
- await provider.destroy?.(this);
403
- }
404
- await this.runUserLifecycles(lifecycles.LIFECYCLES.DESTROY);
405
- await this.server.destroy();
406
- this.eventHub.destroy();
407
- await this.db?.destroy();
408
- process.removeAllListeners();
409
- delete global.strapi;
410
- this.log.info("Strapi has been shut down");
411
- }
412
- async runPluginsLifecycles(lifecycleName) {
413
- await this.get("modules")[lifecycleName]();
414
- }
415
- async runUserLifecycles(lifecycleName) {
416
- const userLifecycleFunction = this.app && this.app[lifecycleName];
417
- if (fp.isFunction(userLifecycleFunction)) {
418
- await userLifecycleFunction({ strapi: this });
275
+ /**
276
+ * Add behaviors to the server
277
+ */ async listen() {
278
+ return new Promise((resolve, reject)=>{
279
+ const onListen = async ()=>{
280
+ try {
281
+ await this.postListen();
282
+ resolve();
283
+ } catch (error) {
284
+ reject(error);
285
+ }
286
+ };
287
+ const listenSocket = this.config.get('server.socket');
288
+ if (listenSocket) {
289
+ this.server.listen(listenSocket, onListen);
290
+ } else {
291
+ const { host, port } = this.config.get('server');
292
+ this.server.listen(port, host, onListen);
293
+ }
294
+ });
419
295
  }
420
- }
421
- getModel(uid) {
422
- if (uid in this.contentTypes) {
423
- return this.contentTypes[uid];
296
+ stopWithError(err, customMessage) {
297
+ this.log.debug(`⛔️ Server wasn't able to start properly.`);
298
+ if (customMessage) {
299
+ this.log.error(customMessage);
300
+ }
301
+ this.log.error(err);
302
+ return this.stop();
424
303
  }
425
- if (uid in this.components) {
426
- return this.components[uid];
304
+ stop(exitCode = 1) {
305
+ this.destroy();
306
+ if (this.config.get('autoReload')) {
307
+ process.send?.('stop');
308
+ }
309
+ // Kill process
310
+ process.exit(exitCode);
427
311
  }
428
- }
429
- /**
312
+ async load() {
313
+ await this.register();
314
+ await this.bootstrap();
315
+ this.isLoaded = true;
316
+ return this;
317
+ }
318
+ async register() {
319
+ // @ts-expect-error: init is internal
320
+ this.ee.init(this.dirs.app.root, this.log);
321
+ for (const provider of index$7.providers){
322
+ await provider.register?.(this);
323
+ }
324
+ await this.runPluginsLifecycles(lifecycles.LIFECYCLES.REGISTER);
325
+ await this.runUserLifecycles(lifecycles.LIFECYCLES.REGISTER);
326
+ // NOTE: Swap type customField for underlying data type
327
+ convertCustomFieldType.convertCustomFieldType(this);
328
+ return this;
329
+ }
330
+ async bootstrap() {
331
+ this.configureGlobalProxy();
332
+ const models = [
333
+ ...transformContentTypesToModels.transformContentTypesToModels([
334
+ ...Object.values(this.contentTypes),
335
+ ...Object.values(this.components)
336
+ ], this.db.metadata.identifiers),
337
+ ...this.get('models').get()
338
+ ];
339
+ await this.db.init({
340
+ models
341
+ });
342
+ let oldContentTypes;
343
+ if (await this.db.getSchemaConnection().hasTable(coreStore.coreStoreModel.tableName)) {
344
+ oldContentTypes = await this.store.get({
345
+ type: 'strapi',
346
+ name: 'content_types',
347
+ key: 'schema'
348
+ });
349
+ }
350
+ await this.hook('strapi::content-types.beforeSync').call({
351
+ oldContentTypes,
352
+ contentTypes: this.contentTypes
353
+ });
354
+ const status = await this.db.schema.sync();
355
+ // if schemas have changed, run repairs
356
+ if (status === 'CHANGED') {
357
+ await this.db.repair.removeOrphanMorphType({
358
+ pivot: 'component_type'
359
+ });
360
+ }
361
+ if (this.EE) {
362
+ await index.checkLicense({
363
+ strapi: this
364
+ });
365
+ }
366
+ await this.hook('strapi::content-types.afterSync').call({
367
+ oldContentTypes,
368
+ contentTypes: this.contentTypes
369
+ });
370
+ await this.store.set({
371
+ type: 'strapi',
372
+ name: 'content_types',
373
+ key: 'schema',
374
+ value: this.contentTypes
375
+ });
376
+ await this.server.initMiddlewares();
377
+ this.server.initRouting();
378
+ await this.contentAPI.permissions.registerActions();
379
+ await this.runPluginsLifecycles(lifecycles.LIFECYCLES.BOOTSTRAP);
380
+ for (const provider of index$7.providers){
381
+ await provider.bootstrap?.(this);
382
+ }
383
+ await this.runUserLifecycles(lifecycles.LIFECYCLES.BOOTSTRAP);
384
+ return this;
385
+ }
386
+ configureGlobalProxy() {
387
+ const globalProxy = this.config.get('server.proxy.global');
388
+ const httpProxy = this.config.get('server.proxy.http') || globalProxy;
389
+ const httpsProxy = this.config.get('server.proxy.https') || globalProxy;
390
+ if (!httpProxy && !httpsProxy) {
391
+ return;
392
+ }
393
+ globalAgent__namespace.bootstrap();
394
+ if (httpProxy) {
395
+ this.log.info(`Using HTTP proxy: ${httpProxy}`);
396
+ global.GLOBAL_AGENT.HTTP_PROXY = httpProxy;
397
+ }
398
+ if (httpsProxy) {
399
+ this.log.info(`Using HTTPS proxy: ${httpsProxy}`);
400
+ global.GLOBAL_AGENT.HTTPS_PROXY = httpsProxy;
401
+ }
402
+ }
403
+ async destroy() {
404
+ this.log.info('Shutting down Strapi');
405
+ await this.runPluginsLifecycles(lifecycles.LIFECYCLES.DESTROY);
406
+ for (const provider of index$7.providers){
407
+ await provider.destroy?.(this);
408
+ }
409
+ await this.runUserLifecycles(lifecycles.LIFECYCLES.DESTROY);
410
+ await this.server.destroy();
411
+ this.eventHub.destroy();
412
+ await this.db?.destroy();
413
+ process.removeAllListeners();
414
+ // @ts-expect-error: Allow clean delete of global.strapi to allow re-instanciation
415
+ delete global.strapi;
416
+ this.log.info('Strapi has been shut down');
417
+ }
418
+ async runPluginsLifecycles(lifecycleName) {
419
+ // plugins
420
+ await this.get('modules')[lifecycleName]();
421
+ }
422
+ async runUserLifecycles(lifecycleName) {
423
+ // user
424
+ const userLifecycleFunction = this.app && this.app[lifecycleName];
425
+ if (fp.isFunction(userLifecycleFunction)) {
426
+ await userLifecycleFunction({
427
+ strapi: this
428
+ });
429
+ }
430
+ }
431
+ getModel(uid) {
432
+ if (uid in this.contentTypes) {
433
+ return this.contentTypes[uid];
434
+ }
435
+ if (uid in this.components) {
436
+ return this.components[uid];
437
+ }
438
+ }
439
+ /**
430
440
  * @deprecated Use `strapi.db.query` instead
431
- */
432
- query(uid) {
433
- return this.db.query(uid);
434
- }
441
+ */ query(uid) {
442
+ return this.db.query(uid);
443
+ }
444
+ constructor(opts){
445
+ super();
446
+ this.isLoaded = false;
447
+ this.internal_config = {};
448
+ this.internal_config = index$8.loadConfiguration(opts);
449
+ this.registerInternalServices();
450
+ for (const provider of index$7.providers){
451
+ provider.init?.(this);
452
+ }
453
+ }
435
454
  }
455
+
436
456
  module.exports = Strapi;
437
457
  //# sourceMappingURL=Strapi.js.map