@strapi/core 0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba → 0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c

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 (358) 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/Strapi.js +59 -15
  5. package/dist/Strapi.js.map +1 -1
  6. package/dist/Strapi.mjs +38 -13
  7. package/dist/Strapi.mjs.map +1 -1
  8. package/dist/configuration/get-dirs.js +2 -2
  9. package/dist/configuration/get-dirs.js.map +1 -1
  10. package/dist/configuration/index.js +2 -2
  11. package/dist/configuration/index.js.map +1 -1
  12. package/dist/core-api/controller/collection-type.d.ts.map +1 -1
  13. package/dist/core-api/controller/collection-type.js +6 -3
  14. package/dist/core-api/controller/collection-type.js.map +1 -1
  15. package/dist/core-api/controller/collection-type.mjs +3 -0
  16. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  17. package/dist/core-api/controller/index.js +2 -2
  18. package/dist/core-api/controller/index.js.map +1 -1
  19. package/dist/core-api/controller/single-type.d.ts.map +1 -1
  20. package/dist/core-api/controller/single-type.js +3 -2
  21. package/dist/core-api/controller/single-type.js.map +1 -1
  22. package/dist/core-api/controller/single-type.mjs +1 -0
  23. package/dist/core-api/controller/single-type.mjs.map +1 -1
  24. package/dist/core-api/controller/transform.js +8 -8
  25. package/dist/core-api/controller/transform.js.map +1 -1
  26. package/dist/core-api/routes/index.d.ts.map +1 -1
  27. package/dist/core-api/service/collection-type.d.ts +3 -9
  28. package/dist/core-api/service/collection-type.d.ts.map +1 -1
  29. package/dist/core-api/service/collection-type.js +5 -3
  30. package/dist/core-api/service/collection-type.js.map +1 -1
  31. package/dist/core-api/service/collection-type.mjs +6 -4
  32. package/dist/core-api/service/collection-type.mjs.map +1 -1
  33. package/dist/core-api/service/pagination.d.ts +4 -11
  34. package/dist/core-api/service/pagination.d.ts.map +1 -1
  35. package/dist/core-api/service/pagination.js +18 -44
  36. package/dist/core-api/service/pagination.js.map +1 -1
  37. package/dist/core-api/service/pagination.mjs +16 -42
  38. package/dist/core-api/service/pagination.mjs.map +1 -1
  39. package/dist/core-api/service/single-type.d.ts.map +1 -1
  40. package/dist/core-api/service/single-type.js +2 -1
  41. package/dist/core-api/service/single-type.js.map +1 -1
  42. package/dist/core-api/service/single-type.mjs +2 -1
  43. package/dist/core-api/service/single-type.mjs.map +1 -1
  44. package/dist/domain/content-type/index.js +4 -4
  45. package/dist/domain/content-type/index.js.map +1 -1
  46. package/dist/ee/index.d.ts.map +1 -1
  47. package/dist/ee/index.js +9 -4
  48. package/dist/ee/index.js.map +1 -1
  49. package/dist/ee/index.mjs +6 -1
  50. package/dist/ee/index.mjs.map +1 -1
  51. package/dist/ee/license.d.ts.map +1 -1
  52. package/dist/ee/license.js +2 -1
  53. package/dist/ee/license.js.map +1 -1
  54. package/dist/ee/license.mjs +2 -1
  55. package/dist/ee/license.mjs.map +1 -1
  56. package/dist/factories.d.ts +2 -2
  57. package/dist/factories.d.ts.map +1 -1
  58. package/dist/factories.js +4 -4
  59. package/dist/factories.js.map +1 -1
  60. package/dist/factories.mjs.map +1 -1
  61. package/dist/index.d.ts +14 -0
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js.map +1 -1
  64. package/dist/index.mjs.map +1 -1
  65. package/dist/loaders/apis.d.ts.map +1 -1
  66. package/dist/loaders/apis.js +12 -12
  67. package/dist/loaders/apis.js.map +1 -1
  68. package/dist/loaders/apis.mjs +10 -10
  69. package/dist/loaders/apis.mjs.map +1 -1
  70. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  71. package/dist/loaders/plugins/get-enabled-plugins.js +45 -17
  72. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  73. package/dist/loaders/plugins/get-enabled-plugins.mjs +15 -9
  74. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  75. package/dist/loaders/plugins/get-user-plugins-config.js +2 -2
  76. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  77. package/dist/loaders/plugins/index.d.ts.map +1 -1
  78. package/dist/loaders/plugins/index.js +34 -7
  79. package/dist/loaders/plugins/index.js.map +1 -1
  80. package/dist/loaders/plugins/index.mjs +9 -1
  81. package/dist/loaders/plugins/index.mjs.map +1 -1
  82. package/dist/middlewares/body.js +2 -2
  83. package/dist/middlewares/body.js.map +1 -1
  84. package/dist/middlewares/cors.d.ts.map +1 -1
  85. package/dist/middlewares/cors.js +9 -7
  86. package/dist/middlewares/cors.js.map +1 -1
  87. package/dist/middlewares/cors.mjs +9 -7
  88. package/dist/middlewares/cors.mjs.map +1 -1
  89. package/dist/middlewares/public.js +2 -2
  90. package/dist/middlewares/public.js.map +1 -1
  91. package/dist/middlewares/query.d.ts.map +1 -1
  92. package/dist/middlewares/query.js.map +1 -1
  93. package/dist/middlewares/query.mjs.map +1 -1
  94. package/dist/middlewares/responses.js +2 -2
  95. package/dist/middlewares/responses.js.map +1 -1
  96. package/dist/middlewares/security.d.ts.map +1 -1
  97. package/dist/middlewares/security.js +12 -5
  98. package/dist/middlewares/security.js.map +1 -1
  99. package/dist/middlewares/security.mjs +11 -4
  100. package/dist/middlewares/security.mjs.map +1 -1
  101. package/dist/middlewares/session.js +2 -2
  102. package/dist/middlewares/session.js.map +1 -1
  103. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +33 -0
  104. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -0
  105. package/dist/migrations/database/5.0.0-discard-drafts.js +106 -0
  106. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -0
  107. package/dist/migrations/database/5.0.0-discard-drafts.mjs +106 -0
  108. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -0
  109. package/dist/migrations/draft-publish.d.ts +1 -1
  110. package/dist/migrations/draft-publish.d.ts.map +1 -1
  111. package/dist/migrations/draft-publish.js +14 -31
  112. package/dist/migrations/draft-publish.js.map +1 -1
  113. package/dist/migrations/draft-publish.mjs +15 -32
  114. package/dist/migrations/draft-publish.mjs.map +1 -1
  115. package/dist/migrations/i18n.d.ts +5 -0
  116. package/dist/migrations/i18n.d.ts.map +1 -0
  117. package/dist/migrations/i18n.js +54 -0
  118. package/dist/migrations/i18n.js.map +1 -0
  119. package/dist/migrations/i18n.mjs +54 -0
  120. package/dist/migrations/i18n.mjs.map +1 -0
  121. package/dist/migrations/index.d.ts +5 -0
  122. package/dist/migrations/index.d.ts.map +1 -0
  123. package/dist/migrations/index.js +15 -0
  124. package/dist/migrations/index.js.map +1 -0
  125. package/dist/migrations/index.mjs +15 -0
  126. package/dist/migrations/index.mjs.map +1 -0
  127. package/dist/providers/admin.d.ts.map +1 -1
  128. package/dist/providers/admin.js.map +1 -1
  129. package/dist/providers/admin.mjs.map +1 -1
  130. package/dist/providers/registries.d.ts.map +1 -1
  131. package/dist/providers/registries.js +5 -3
  132. package/dist/providers/registries.js.map +1 -1
  133. package/dist/providers/registries.mjs +5 -3
  134. package/dist/providers/registries.mjs.map +1 -1
  135. package/dist/registries/apis.js +2 -2
  136. package/dist/registries/apis.js.map +1 -1
  137. package/dist/registries/components.js +2 -2
  138. package/dist/registries/components.js.map +1 -1
  139. package/dist/registries/content-types.js +3 -3
  140. package/dist/registries/content-types.js.map +1 -1
  141. package/dist/registries/controllers.js +3 -3
  142. package/dist/registries/controllers.js.map +1 -1
  143. package/dist/registries/custom-fields.js +4 -4
  144. package/dist/registries/custom-fields.js.map +1 -1
  145. package/dist/registries/hooks.js +2 -2
  146. package/dist/registries/hooks.js.map +1 -1
  147. package/dist/registries/middlewares.js +3 -3
  148. package/dist/registries/middlewares.js.map +1 -1
  149. package/dist/registries/modules.js +3 -3
  150. package/dist/registries/modules.js.map +1 -1
  151. package/dist/registries/plugins.js +2 -2
  152. package/dist/registries/plugins.js.map +1 -1
  153. package/dist/registries/policies.d.ts +1 -1
  154. package/dist/registries/policies.d.ts.map +1 -1
  155. package/dist/registries/policies.js +5 -5
  156. package/dist/registries/policies.js.map +1 -1
  157. package/dist/registries/policies.mjs +1 -1
  158. package/dist/registries/policies.mjs.map +1 -1
  159. package/dist/registries/services.js +3 -3
  160. package/dist/registries/services.js.map +1 -1
  161. package/dist/services/auth/index.js +3 -3
  162. package/dist/services/auth/index.js.map +1 -1
  163. package/dist/services/content-api/index.d.ts +10 -12
  164. package/dist/services/content-api/index.d.ts.map +1 -1
  165. package/dist/services/content-api/permissions/index.d.ts +10 -12
  166. package/dist/services/content-api/permissions/index.d.ts.map +1 -1
  167. package/dist/services/content-api/permissions/providers/action.d.ts +5 -6
  168. package/dist/services/content-api/permissions/providers/action.d.ts.map +1 -1
  169. package/dist/services/content-api/permissions/providers/condition.d.ts +5 -6
  170. package/dist/services/content-api/permissions/providers/condition.d.ts.map +1 -1
  171. package/dist/services/core-store.d.ts.map +1 -1
  172. package/dist/services/core-store.js +3 -3
  173. package/dist/services/core-store.js.map +1 -1
  174. package/dist/services/cron.d.ts +3 -3
  175. package/dist/services/cron.d.ts.map +1 -1
  176. package/dist/services/cron.js +12 -7
  177. package/dist/services/cron.js.map +1 -1
  178. package/dist/services/cron.mjs +9 -4
  179. package/dist/services/cron.mjs.map +1 -1
  180. package/dist/services/document-service/attributes/index.d.ts +4 -4
  181. package/dist/services/document-service/attributes/index.d.ts.map +1 -1
  182. package/dist/services/document-service/attributes/index.js +5 -5
  183. package/dist/services/document-service/attributes/index.js.map +1 -1
  184. package/dist/services/document-service/attributes/index.mjs +5 -5
  185. package/dist/services/document-service/attributes/index.mjs.map +1 -1
  186. package/dist/services/document-service/attributes/transforms.js +3 -3
  187. package/dist/services/document-service/attributes/transforms.js.map +1 -1
  188. package/dist/services/document-service/common.d.ts +1 -1
  189. package/dist/services/document-service/common.d.ts.map +1 -1
  190. package/dist/services/document-service/common.js.map +1 -1
  191. package/dist/services/document-service/common.mjs.map +1 -1
  192. package/dist/services/document-service/components.d.ts +8 -80
  193. package/dist/services/document-service/components.d.ts.map +1 -1
  194. package/dist/services/document-service/components.js +29 -30
  195. package/dist/services/document-service/components.js.map +1 -1
  196. package/dist/services/document-service/components.mjs +19 -20
  197. package/dist/services/document-service/components.mjs.map +1 -1
  198. package/dist/services/document-service/draft-and-publish.js +16 -16
  199. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  200. package/dist/services/document-service/entries.d.ts +5 -3
  201. package/dist/services/document-service/entries.d.ts.map +1 -1
  202. package/dist/services/document-service/entries.js +52 -19
  203. package/dist/services/document-service/entries.js.map +1 -1
  204. package/dist/services/document-service/entries.mjs +45 -12
  205. package/dist/services/document-service/entries.mjs.map +1 -1
  206. package/dist/services/document-service/events.d.ts +25 -0
  207. package/dist/services/document-service/events.d.ts.map +1 -0
  208. package/dist/services/document-service/events.js +47 -0
  209. package/dist/services/document-service/events.js.map +1 -0
  210. package/dist/services/document-service/events.mjs +47 -0
  211. package/dist/services/document-service/events.mjs.map +1 -0
  212. package/dist/services/document-service/index.d.ts +2 -1
  213. package/dist/services/document-service/index.d.ts.map +1 -1
  214. package/dist/services/document-service/index.js +12 -4
  215. package/dist/services/document-service/index.js.map +1 -1
  216. package/dist/services/document-service/index.mjs +12 -4
  217. package/dist/services/document-service/index.mjs.map +1 -1
  218. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  219. package/dist/services/document-service/internationalization.js +21 -12
  220. package/dist/services/document-service/internationalization.js.map +1 -1
  221. package/dist/services/document-service/internationalization.mjs +14 -5
  222. package/dist/services/document-service/internationalization.mjs.map +1 -1
  223. package/dist/services/document-service/middlewares/middleware-manager.d.ts +5 -2
  224. package/dist/services/document-service/middlewares/middleware-manager.d.ts.map +1 -1
  225. package/dist/services/document-service/middlewares/middleware-manager.js +6 -3
  226. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  227. package/dist/services/document-service/middlewares/middleware-manager.mjs +6 -3
  228. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  229. package/dist/services/document-service/params.d.ts +1 -5
  230. package/dist/services/document-service/params.d.ts.map +1 -1
  231. package/dist/services/document-service/params.js +2 -2
  232. package/dist/services/document-service/params.js.map +1 -1
  233. package/dist/services/document-service/repository.d.ts.map +1 -1
  234. package/dist/services/document-service/repository.js +139 -86
  235. package/dist/services/document-service/repository.js.map +1 -1
  236. package/dist/services/document-service/repository.mjs +129 -76
  237. package/dist/services/document-service/repository.mjs.map +1 -1
  238. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  239. package/dist/services/document-service/transform/id-map.js +13 -4
  240. package/dist/services/document-service/transform/id-map.js.map +1 -1
  241. package/dist/services/document-service/transform/id-map.mjs +14 -5
  242. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  243. package/dist/services/document-service/transform/id-transform.js +2 -2
  244. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  245. package/dist/services/document-service/transform/query.js +3 -3
  246. package/dist/services/document-service/transform/query.js.map +1 -1
  247. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  248. package/dist/services/document-service/transform/relations/extract/data-ids.js +5 -2
  249. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  250. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +3 -0
  251. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  252. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  253. package/dist/services/document-service/transform/relations/transform/data-ids.js +5 -2
  254. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  255. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +3 -0
  256. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  257. package/dist/services/document-service/transform/relations/utils/dp.js +2 -2
  258. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  259. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  260. package/dist/services/document-service/transform/relations/utils/map-relation.js +13 -9
  261. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
  262. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +7 -3
  263. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
  264. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  265. package/dist/services/document-service/utils/populate.js +7 -1
  266. package/dist/services/document-service/utils/populate.js.map +1 -1
  267. package/dist/services/document-service/utils/populate.mjs +7 -1
  268. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  269. package/dist/services/document-service/utils/unidirectional-relations.d.ts +36 -0
  270. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -0
  271. package/dist/services/document-service/utils/unidirectional-relations.js +69 -0
  272. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -0
  273. package/dist/services/document-service/utils/unidirectional-relations.mjs +69 -0
  274. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -0
  275. package/dist/services/entity-service/index.d.ts.map +1 -1
  276. package/dist/services/entity-validator/blocks-validator.d.ts +1 -2
  277. package/dist/services/entity-validator/blocks-validator.d.ts.map +1 -1
  278. package/dist/services/entity-validator/blocks-validator.js +4 -3
  279. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  280. package/dist/services/entity-validator/blocks-validator.mjs +3 -3
  281. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  282. package/dist/services/entity-validator/index.d.ts +15 -1
  283. package/dist/services/entity-validator/index.d.ts.map +1 -1
  284. package/dist/services/entity-validator/index.js +109 -53
  285. package/dist/services/entity-validator/index.js.map +1 -1
  286. package/dist/services/entity-validator/index.mjs +95 -39
  287. package/dist/services/entity-validator/index.mjs.map +1 -1
  288. package/dist/services/entity-validator/validators.d.ts +36 -25
  289. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  290. package/dist/services/entity-validator/validators.js +148 -33
  291. package/dist/services/entity-validator/validators.js.map +1 -1
  292. package/dist/services/entity-validator/validators.mjs +140 -25
  293. package/dist/services/entity-validator/validators.mjs.map +1 -1
  294. package/dist/services/event-hub.d.ts +1 -0
  295. package/dist/services/event-hub.d.ts.map +1 -1
  296. package/dist/services/event-hub.js +9 -4
  297. package/dist/services/event-hub.js.map +1 -1
  298. package/dist/services/event-hub.mjs +9 -4
  299. package/dist/services/event-hub.mjs.map +1 -1
  300. package/dist/services/metrics/middleware.d.ts.map +1 -1
  301. package/dist/services/server/compose-endpoint.d.ts.map +1 -1
  302. package/dist/services/server/compose-endpoint.js +7 -7
  303. package/dist/services/server/compose-endpoint.js.map +1 -1
  304. package/dist/services/server/index.js +1 -1
  305. package/dist/services/server/index.js.map +1 -1
  306. package/dist/services/server/index.mjs +1 -1
  307. package/dist/services/server/index.mjs.map +1 -1
  308. package/dist/services/server/koa.d.ts.map +1 -1
  309. package/dist/services/server/koa.js +4 -4
  310. package/dist/services/server/koa.js.map +1 -1
  311. package/dist/services/server/koa.mjs +1 -1
  312. package/dist/services/server/koa.mjs.map +1 -1
  313. package/dist/services/server/middleware.js +3 -3
  314. package/dist/services/server/middleware.js.map +1 -1
  315. package/dist/services/server/routing.js +2 -2
  316. package/dist/services/server/routing.js.map +1 -1
  317. package/dist/services/utils/dynamic-zones.js +5 -5
  318. package/dist/services/utils/dynamic-zones.js.map +1 -1
  319. package/dist/services/webhook-runner.d.ts +2 -1
  320. package/dist/services/webhook-runner.d.ts.map +1 -1
  321. package/dist/services/webhook-runner.js.map +1 -1
  322. package/dist/services/webhook-runner.mjs.map +1 -1
  323. package/dist/services/webhook-store.d.ts +2 -8
  324. package/dist/services/webhook-store.d.ts.map +1 -1
  325. package/dist/services/webhook-store.js +9 -2
  326. package/dist/services/webhook-store.js.map +1 -1
  327. package/dist/services/webhook-store.mjs +9 -2
  328. package/dist/services/webhook-store.mjs.map +1 -1
  329. package/dist/utils/cron.js +3 -3
  330. package/dist/utils/cron.js.map +1 -1
  331. package/dist/utils/fetch.d.ts.map +1 -1
  332. package/dist/utils/fetch.js +4 -3
  333. package/dist/utils/fetch.js.map +1 -1
  334. package/dist/utils/fetch.mjs +4 -3
  335. package/dist/utils/fetch.mjs.map +1 -1
  336. package/dist/utils/filepath-to-prop-path.d.ts +1 -1
  337. package/dist/utils/filepath-to-prop-path.d.ts.map +1 -1
  338. package/dist/utils/filepath-to-prop-path.js +27 -6
  339. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  340. package/dist/utils/filepath-to-prop-path.mjs +25 -5
  341. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  342. package/dist/utils/is-initialized.js +3 -3
  343. package/dist/utils/is-initialized.js.map +1 -1
  344. package/dist/utils/load-files.d.ts.map +1 -1
  345. package/dist/utils/startup-logger.d.ts.map +1 -1
  346. package/dist/utils/startup-logger.js +4 -4
  347. package/dist/utils/startup-logger.js.map +1 -1
  348. package/dist/utils/startup-logger.mjs +3 -3
  349. package/dist/utils/startup-logger.mjs.map +1 -1
  350. package/dist/utils/transform-content-types-to-models.d.ts +327 -23
  351. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  352. package/dist/utils/transform-content-types-to-models.js +17 -4
  353. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  354. package/dist/utils/transform-content-types-to-models.mjs +16 -3
  355. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  356. package/package.json +28 -24
  357. package/dist/services/document-service/document-engine.d.ts +0 -2
  358. package/dist/services/document-service/document-engine.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"transform-content-types-to-models.mjs","sources":["../../src/utils/transform-content-types-to-models.ts"],"sourcesContent":["import { type Model, type Identifiers } from '@strapi/database';\nimport type { Struct, Schema } from '@strapi/types';\nimport { createId } from '@paralleldrive/cuid2';\nimport assert from 'node:assert';\nimport _ from 'lodash/fp';\n\n/**\n * Because strapi/database models don't know about things like components or dynamic zones, we use this file to convert them\n * to a relations format that it recognizes\n *\n * Therefore we have to keep an additional set of helpers/extensions to the database naming methods\n *\n * IMPORTANT!\n * If we use short versions of anything, we MUST call getNameFromTokens directly; attempting to shorten them ourselves\n * prevents the unshortened name map from being filled properly, so for example it will think that the short name\n * 'collection4f3a_cmps' maps to the unshortened 'collectionname_cmps' rather than 'collectionname_components'\n * Therefore, we only use the identifiers helpers in cases where we do not do any of our own shortening\n */\n\nexport const getComponentJoinTableName = (collectionName: string, identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([\n { name: collectionName, compressible: true },\n { name: 'components', shortName: 'cmps', compressible: false },\n ]);\n};\n\nexport const getDzJoinTableName = (collectionName: string, identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([\n { name: collectionName, compressible: true },\n { name: 'components', shortName: 'cmps', compressible: false },\n ]);\n};\n\nexport const getComponentJoinColumnEntityName = (identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([\n { name: 'entity', compressible: false },\n { name: 'id', compressible: false },\n ]);\n};\n\nexport const getComponentJoinColumnInverseName = (identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([\n { name: 'component', shortName: 'cmp', compressible: false },\n { name: 'id', compressible: false },\n ]);\n};\n\nexport const getComponentTypeColumn = (identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([{ name: 'component_type', compressible: false }]);\n};\n\nexport const getComponentFkIndexName = (contentType: string, identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([\n { name: contentType, compressible: true },\n { name: 'entity', compressible: false },\n { name: 'fk', compressible: false },\n ]);\n};\n\n// const { ID_COLUMN: id, FIELD_COLUMN: field, ORDER_COLUMN: order } = identifiers;\n\nexport type LoadedContentTypeModel = Struct.ContentTypeSchema &\n Required<Pick<Struct.ContentTypeSchema, 'collectionName' | 'uid' | 'modelName'>>;\n\n// Transforms an attribute (particularly for relation types) into the format that strapi/database accepts\nexport const transformAttribute = (\n name: string,\n attribute: Schema.Attribute.AnyAttribute,\n contentType: LoadedContentTypeModel,\n identifiers: Identifiers\n) => {\n switch (attribute.type) {\n case 'media': {\n return {\n type: 'relation',\n relation: attribute.multiple === true ? 'morphMany' : 'morphOne',\n target: 'plugin::upload.file',\n morphBy: 'related',\n };\n }\n case 'component': {\n const joinTableName = getComponentJoinTableName(contentType.collectionName, identifiers);\n const joinColumnEntityName = getComponentJoinColumnEntityName(identifiers);\n const joinColumnInverseName = getComponentJoinColumnInverseName(identifiers);\n const compTypeColumn = getComponentTypeColumn(identifiers);\n return {\n type: 'relation',\n relation: attribute.repeatable === true ? 'oneToMany' : 'oneToOne',\n target: attribute.component,\n\n // We need the join table name to be deterministic,\n // We need to allow passing the join table name as an option\n joinTable: {\n name: joinTableName,\n joinColumn: {\n name: joinColumnEntityName,\n referencedColumn: identifiers.ID_COLUMN,\n },\n inverseJoinColumn: {\n name: joinColumnInverseName,\n referencedColumn: identifiers.ID_COLUMN,\n },\n on: {\n field: name,\n },\n orderColumnName: identifiers.ORDER_COLUMN,\n orderBy: {\n order: 'asc',\n },\n pivotColumns: [\n joinColumnEntityName,\n joinColumnInverseName,\n identifiers.FIELD_COLUMN,\n compTypeColumn,\n ],\n },\n };\n }\n case 'dynamiczone': {\n const joinTableName = getDzJoinTableName(contentType.collectionName, identifiers);\n const joinColumnEntityName = getComponentJoinColumnEntityName(identifiers);\n const joinColumnInverseName = getComponentJoinColumnInverseName(identifiers);\n const compTypeColumn = getComponentTypeColumn(identifiers);\n\n return {\n type: 'relation',\n relation: 'morphToMany',\n // TODO: handle restrictions at some point\n // target: attribute.components,\n joinTable: {\n name: joinTableName,\n joinColumn: {\n name: joinColumnEntityName,\n referencedColumn: identifiers.ID_COLUMN,\n },\n morphColumn: {\n idColumn: {\n name: joinColumnInverseName,\n referencedColumn: identifiers.ID_COLUMN,\n },\n typeColumn: {\n name: compTypeColumn,\n },\n typeField: '__component',\n },\n on: {\n field: name,\n },\n orderBy: {\n order: 'asc',\n },\n pivotColumns: [\n joinColumnEntityName,\n joinColumnInverseName,\n identifiers.FIELD_COLUMN,\n compTypeColumn,\n ],\n },\n };\n }\n default: {\n return attribute;\n }\n }\n};\n\nexport const transformAttributes = (\n contentType: LoadedContentTypeModel,\n identifiers: Identifiers\n) => {\n return Object.keys(contentType.attributes! || {}).reduce((attrs, attrName) => {\n return {\n ...attrs,\n [attrName]: transformAttribute(\n attrName,\n contentType.attributes[attrName]!,\n contentType,\n identifiers\n ),\n };\n }, {});\n};\n\nexport const hasComponentsOrDz = (\n contentType: LoadedContentTypeModel\n): contentType is LoadedContentTypeModel & { type: 'dynamiczone' | 'component' } => {\n return Object.values(contentType.attributes || {}).some(\n (({ type }: { type: string }) => type === 'dynamiczone' || type === 'component') as any\n );\n};\n\nexport const createDocumentId = createId;\n\nconst createCompoLinkModel = (\n contentType: LoadedContentTypeModel,\n identifiers: Identifiers\n): Model => {\n const name = getComponentJoinTableName(contentType.collectionName, identifiers);\n\n const entityId = getComponentJoinColumnEntityName(identifiers);\n const componentId = getComponentJoinColumnInverseName(identifiers);\n const compTypeColumn = getComponentTypeColumn(identifiers);\n const fkIndex = getComponentFkIndexName(contentType.collectionName, identifiers);\n\n return {\n // TODO: make sure there can't be any conflicts with a prefix\n singularName: name,\n uid: name,\n tableName: name,\n attributes: {\n [identifiers.ID_COLUMN]: {\n type: 'increments',\n },\n [entityId]: {\n type: 'integer',\n column: {\n unsigned: true,\n },\n },\n [componentId]: {\n type: 'integer',\n column: {\n unsigned: true,\n },\n },\n [compTypeColumn]: {\n type: 'string',\n },\n [identifiers.FIELD_COLUMN]: {\n type: 'string',\n },\n [identifiers.ORDER_COLUMN]: {\n type: 'float',\n column: {\n unsigned: true,\n defaultTo: null,\n },\n },\n },\n indexes: [\n {\n name: identifiers.getIndexName([contentType.collectionName, identifiers.FIELD_COLUMN]),\n columns: [identifiers.FIELD_COLUMN],\n },\n {\n name: identifiers.getIndexName([contentType.collectionName, compTypeColumn]),\n columns: [compTypeColumn],\n },\n {\n name: fkIndex,\n columns: [entityId],\n },\n {\n // NOTE: since we don't include attribute names, we need to be careful not to create another unique index\n name: identifiers.getUniqueIndexName([contentType.collectionName]),\n columns: [entityId, componentId, identifiers.FIELD_COLUMN, compTypeColumn],\n type: 'unique',\n },\n ],\n foreignKeys: [\n {\n name: fkIndex,\n columns: [entityId],\n referencedColumns: [identifiers.ID_COLUMN],\n referencedTable: identifiers.getTableName(contentType.collectionName),\n onDelete: 'CASCADE',\n },\n ],\n };\n};\n\nexport const transformContentTypesToModels = (\n contentTypes: LoadedContentTypeModel[],\n identifiers: Identifiers\n): Model[] => {\n const models: Model[] = [];\n\n contentTypes.forEach((contentType) => {\n assert(contentType.collectionName, 'Content type \"collectionName\" is required');\n assert(contentType.modelName, 'Content type \"modelName\" is required');\n assert(contentType.uid, 'Content type \"uid\" is required');\n\n // Add document id to content types\n // as it is not documented\n const documentIdAttribute: Record<string, Schema.Attribute.AnyAttribute> =\n contentType.modelType === 'contentType'\n ? { documentId: { type: 'string', default: createDocumentId } }\n : {};\n\n // TODO: this needs to be combined with getReservedNames, we should not be maintaining two lists\n // Prevent user from creating a documentId attribute\n const reservedAttributeNames = ['document_id', identifiers.ID_COLUMN];\n Object.keys(contentType.attributes || {}).forEach((attributeName) => {\n const snakeCasedAttributeName = _.snakeCase(attributeName);\n if (reservedAttributeNames.includes(snakeCasedAttributeName)) {\n throw new Error(\n `The attribute \"${attributeName}\" is reserved and cannot be used in a model. Please rename \"${contentType.modelName}\" attribute \"${attributeName}\" to something else.`\n );\n }\n });\n\n if (hasComponentsOrDz(contentType)) {\n const compoLinkModel = createCompoLinkModel(contentType, identifiers);\n models.push(compoLinkModel);\n }\n\n const model: Model = {\n uid: contentType.uid,\n singularName: contentType.modelName,\n tableName: contentType.collectionName, // This gets shortened in metadata.loadModels(), so we don't shorten here or it will happen twice\n attributes: {\n [identifiers.ID_COLUMN]: {\n type: 'increments',\n },\n ...documentIdAttribute,\n ...transformAttributes(contentType, identifiers),\n },\n };\n\n models.push(model);\n });\n\n return models;\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transform-content-types-to-models.mjs","sources":["../../src/utils/transform-content-types-to-models.ts"],"sourcesContent":["import { type Model, type Identifiers } from '@strapi/database';\nimport type { Struct, Schema } from '@strapi/types';\nimport { createId } from '@paralleldrive/cuid2';\nimport assert from 'node:assert';\nimport _ from 'lodash/fp';\n\n/**\n * Because strapi/database models don't know about things like components or dynamic zones, we use this file to convert them\n * to a relations format that it recognizes\n *\n * Therefore we have to keep an additional set of helpers/extensions to the database naming methods\n *\n * IMPORTANT!\n * If we use short versions of anything, we MUST call getNameFromTokens directly; attempting to shorten them ourselves\n * prevents the unshortened name map from being filled properly, so for example it will think that the short name\n * 'collection4f3a_cmps' maps to the unshortened 'collectionname_cmps' rather than 'collectionname_components'\n * Therefore, we only use the identifiers helpers in cases where we do not do any of our own shortening\n */\n\nexport const getComponentJoinTableName = (collectionName: string, identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([\n { name: collectionName, compressible: true },\n { name: 'components', shortName: 'cmps', compressible: false },\n ]);\n};\n\nexport const getDzJoinTableName = (collectionName: string, identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([\n { name: collectionName, compressible: true },\n { name: 'components', shortName: 'cmps', compressible: false },\n ]);\n};\n\nexport const getComponentJoinColumnEntityName = (identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([\n { name: 'entity', compressible: false },\n { name: 'id', compressible: false },\n ]);\n};\n\nexport const getComponentJoinColumnInverseName = (identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([\n { name: 'component', shortName: 'cmp', compressible: false },\n { name: 'id', compressible: false },\n ]);\n};\n\nexport const getComponentTypeColumn = (identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([{ name: 'component_type', compressible: false }]);\n};\n\nexport const getComponentFkIndexName = (contentType: string, identifiers: Identifiers) => {\n return identifiers.getNameFromTokens([\n { name: contentType, compressible: true },\n { name: 'entity', compressible: false },\n { name: 'fk', compressible: false },\n ]);\n};\n\n// const { ID_COLUMN: id, FIELD_COLUMN: field, ORDER_COLUMN: order } = identifiers;\n\nexport type LoadedContentTypeModel = Struct.ContentTypeSchema &\n Required<Pick<Struct.ContentTypeSchema, 'collectionName' | 'uid' | 'modelName'>> &\n Pick<Model, 'lifecycles'>;\n\n// Transforms an attribute (particularly for relation types) into the format that strapi/database accepts\nexport const transformAttribute = (\n name: string,\n attribute: Schema.Attribute.AnyAttribute,\n contentType: LoadedContentTypeModel,\n identifiers: Identifiers\n) => {\n switch (attribute.type) {\n case 'media': {\n return {\n type: 'relation',\n relation: attribute.multiple === true ? 'morphMany' : 'morphOne',\n target: 'plugin::upload.file',\n morphBy: 'related',\n };\n }\n case 'component': {\n const joinTableName = getComponentJoinTableName(contentType.collectionName, identifiers);\n const joinColumnEntityName = getComponentJoinColumnEntityName(identifiers);\n const joinColumnInverseName = getComponentJoinColumnInverseName(identifiers);\n const compTypeColumn = getComponentTypeColumn(identifiers);\n return {\n type: 'relation',\n relation: attribute.repeatable === true ? 'oneToMany' : 'oneToOne',\n target: attribute.component,\n\n // We need the join table name to be deterministic,\n // We need to allow passing the join table name as an option\n joinTable: {\n name: joinTableName,\n joinColumn: {\n name: joinColumnEntityName,\n referencedColumn: identifiers.ID_COLUMN,\n },\n inverseJoinColumn: {\n name: joinColumnInverseName,\n referencedColumn: identifiers.ID_COLUMN,\n },\n on: {\n field: name,\n },\n orderColumnName: identifiers.ORDER_COLUMN,\n orderBy: {\n order: 'asc',\n },\n pivotColumns: [\n joinColumnEntityName,\n joinColumnInverseName,\n identifiers.FIELD_COLUMN,\n compTypeColumn,\n ],\n },\n };\n }\n case 'dynamiczone': {\n const joinTableName = getDzJoinTableName(contentType.collectionName, identifiers);\n const joinColumnEntityName = getComponentJoinColumnEntityName(identifiers);\n const joinColumnInverseName = getComponentJoinColumnInverseName(identifiers);\n const compTypeColumn = getComponentTypeColumn(identifiers);\n\n return {\n type: 'relation',\n relation: 'morphToMany',\n // TODO: handle restrictions at some point\n // target: attribute.components,\n joinTable: {\n name: joinTableName,\n joinColumn: {\n name: joinColumnEntityName,\n referencedColumn: identifiers.ID_COLUMN,\n },\n morphColumn: {\n idColumn: {\n name: joinColumnInverseName,\n referencedColumn: identifiers.ID_COLUMN,\n },\n typeColumn: {\n name: compTypeColumn,\n },\n typeField: '__component',\n },\n on: {\n field: name,\n },\n orderBy: {\n order: 'asc',\n },\n pivotColumns: [\n joinColumnEntityName,\n joinColumnInverseName,\n identifiers.FIELD_COLUMN,\n compTypeColumn,\n ],\n },\n };\n }\n default: {\n return attribute;\n }\n }\n};\n\nexport const transformAttributes = (\n contentType: LoadedContentTypeModel,\n identifiers: Identifiers\n) => {\n return Object.keys(contentType.attributes! || {}).reduce((attrs, attrName) => {\n return {\n ...attrs,\n [attrName]: transformAttribute(\n attrName,\n contentType.attributes[attrName]!,\n contentType,\n identifiers\n ),\n };\n }, {});\n};\n\nexport const hasComponentsOrDz = (\n contentType: LoadedContentTypeModel\n): contentType is LoadedContentTypeModel & { type: 'dynamiczone' | 'component' } => {\n return Object.values(contentType.attributes || {}).some(\n (({ type }: { type: string }) => type === 'dynamiczone' || type === 'component') as any\n );\n};\n\nexport const createDocumentId = createId;\n\nconst createCompoLinkModel = (\n contentType: LoadedContentTypeModel,\n identifiers: Identifiers\n): Model => {\n const name = getComponentJoinTableName(contentType.collectionName, identifiers);\n\n const entityId = getComponentJoinColumnEntityName(identifiers);\n const componentId = getComponentJoinColumnInverseName(identifiers);\n const compTypeColumn = getComponentTypeColumn(identifiers);\n const fkIndex = getComponentFkIndexName(contentType.collectionName, identifiers);\n\n return {\n // TODO: make sure there can't be any conflicts with a prefix\n singularName: name,\n uid: name,\n tableName: name,\n attributes: {\n [identifiers.ID_COLUMN]: {\n type: 'increments',\n },\n [entityId]: {\n type: 'integer',\n column: {\n unsigned: true,\n },\n },\n [componentId]: {\n type: 'integer',\n column: {\n unsigned: true,\n },\n },\n [compTypeColumn]: {\n type: 'string',\n },\n [identifiers.FIELD_COLUMN]: {\n type: 'string',\n },\n [identifiers.ORDER_COLUMN]: {\n type: 'float',\n column: {\n unsigned: true,\n defaultTo: null,\n },\n },\n },\n indexes: [\n {\n name: identifiers.getIndexName([contentType.collectionName, identifiers.FIELD_COLUMN]),\n columns: [identifiers.FIELD_COLUMN],\n },\n {\n name: identifiers.getIndexName([contentType.collectionName, compTypeColumn]),\n columns: [compTypeColumn],\n },\n {\n name: fkIndex,\n columns: [entityId],\n },\n {\n // NOTE: since we don't include attribute names, we need to be careful not to create another unique index\n name: identifiers.getUniqueIndexName([contentType.collectionName]),\n columns: [entityId, componentId, identifiers.FIELD_COLUMN, compTypeColumn],\n type: 'unique',\n },\n ],\n foreignKeys: [\n {\n name: fkIndex,\n columns: [entityId],\n referencedColumns: [identifiers.ID_COLUMN],\n referencedTable: identifiers.getTableName(contentType.collectionName),\n onDelete: 'CASCADE',\n },\n ],\n };\n};\n\nexport const transformContentTypesToModels = (\n contentTypes: LoadedContentTypeModel[],\n identifiers: Identifiers\n): Model[] => {\n const models: Model[] = [];\n\n contentTypes.forEach((contentType) => {\n assert(contentType.collectionName, 'Content type \"collectionName\" is required');\n assert(contentType.modelName, 'Content type \"modelName\" is required');\n assert(contentType.uid, 'Content type \"uid\" is required');\n\n // Add document id to content types\n // as it is not documented\n const documentIdAttribute: Record<string, Schema.Attribute.AnyAttribute> =\n contentType.modelType === 'contentType'\n ? { documentId: { type: 'string', default: createDocumentId } }\n : {};\n\n // TODO: this needs to be combined with getReservedNames, we should not be maintaining two lists\n // Prevent user from creating a documentId attribute\n const reservedAttributeNames = ['document_id', identifiers.ID_COLUMN];\n Object.keys(contentType.attributes || {}).forEach((attributeName) => {\n const snakeCasedAttributeName = _.snakeCase(attributeName);\n if (reservedAttributeNames.includes(snakeCasedAttributeName)) {\n throw new Error(\n `The attribute \"${attributeName}\" is reserved and cannot be used in a model. Please rename \"${contentType.modelName}\" attribute \"${attributeName}\" to something else.`\n );\n }\n });\n\n if (hasComponentsOrDz(contentType)) {\n const compoLinkModel = createCompoLinkModel(contentType, identifiers);\n models.push(compoLinkModel);\n }\n\n const model: Model = {\n uid: contentType.uid,\n singularName: contentType.modelName,\n tableName: contentType.collectionName, // This gets shortened in metadata.loadModels(), so we don't shorten here or it will happen twice\n attributes: {\n [identifiers.ID_COLUMN]: {\n type: 'increments',\n },\n ...documentIdAttribute,\n ...transformAttributes(contentType, identifiers),\n },\n indexes: contentType.indexes as Model['indexes'],\n foreignKeys: contentType.foreignKeys as Model['foreignKeys'],\n lifecycles: contentType?.lifecycles ?? {},\n };\n\n // Add indexes to model\n if (contentType.modelType === 'contentType') {\n model.indexes = [\n ...(model.indexes || []),\n {\n name: identifiers.getIndexName([contentType.collectionName, 'documents']),\n // Filter attributes that are not in the schema\n columns: ['documentId', 'locale', 'publishedAt']\n .filter((n) => model.attributes[n])\n .map((name) => identifiers.getColumnName(_.snakeCase(name))),\n },\n ];\n }\n\n models.push(model);\n });\n\n return models;\n};\n"],"names":["_"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strapi/core",
3
- "version": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
3
+ "version": "0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c",
4
4
  "description": "Core of Strapi",
5
5
  "homepage": "https://strapi.io",
6
6
  "bugs": {
@@ -55,31 +55,31 @@
55
55
  "@koa/cors": "5.0.0",
56
56
  "@koa/router": "12.0.1",
57
57
  "@paralleldrive/cuid2": "2.2.2",
58
- "@strapi/admin": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
59
- "@strapi/database": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
60
- "@strapi/generate-new": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
61
- "@strapi/generators": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
62
- "@strapi/logger": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
63
- "@strapi/pack-up": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
64
- "@strapi/permissions": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
65
- "@strapi/types": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
66
- "@strapi/typescript-utils": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
67
- "@strapi/utils": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
58
+ "@strapi/admin": "0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c",
59
+ "@strapi/database": "0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c",
60
+ "@strapi/generators": "0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c",
61
+ "@strapi/logger": "0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c",
62
+ "@strapi/pack-up": "5.0.0",
63
+ "@strapi/permissions": "0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c",
64
+ "@strapi/types": "0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c",
65
+ "@strapi/typescript-utils": "0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c",
66
+ "@strapi/utils": "0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c",
68
67
  "bcryptjs": "2.4.3",
69
68
  "boxen": "5.1.2",
70
69
  "chalk": "4.1.2",
71
- "ci-info": "3.8.0",
70
+ "ci-info": "4.0.0",
72
71
  "cli-table3": "0.6.2",
73
72
  "commander": "8.3.0",
74
73
  "configstore": "5.0.1",
75
74
  "copyfiles": "2.4.1",
76
75
  "debug": "4.3.4",
77
76
  "delegates": "1.0.0",
78
- "dotenv": "14.2.0",
77
+ "dotenv": "16.4.5",
79
78
  "execa": "5.1.1",
80
- "fs-extra": "10.0.0",
79
+ "fs-extra": "11.2.0",
81
80
  "glob": "10.3.10",
82
- "http-errors": "1.8.1",
81
+ "global-agent": "3.0.0",
82
+ "http-errors": "2.0.0",
83
83
  "inquirer": "8.2.5",
84
84
  "is-docker": "2.2.1",
85
85
  "koa": "2.15.2",
@@ -93,24 +93,28 @@
93
93
  "koa-static": "5.0.0",
94
94
  "lodash": "4.17.21",
95
95
  "mime-types": "2.1.35",
96
- "node-schedule": "2.1.0",
96
+ "node-schedule": "2.1.1",
97
97
  "open": "8.4.0",
98
98
  "ora": "5.4.1",
99
99
  "package-json": "7.0.0",
100
100
  "pkg-up": "3.1.0",
101
101
  "qs": "6.11.1",
102
+ "resolve.exports": "2.0.2",
102
103
  "semver": "7.5.4",
103
104
  "statuses": "2.0.1",
104
- "typescript": "5.2.2",
105
- "undici": "5.27.2",
105
+ "typescript": "5.3.2",
106
+ "undici": "6.19.2",
106
107
  "yup": "0.32.9"
107
108
  },
108
109
  "devDependencies": {
109
- "@strapi/pack-up": "workspace:*",
110
+ "@strapi/pack-up": "5.0.0",
110
111
  "@strapi/ts-zen": "^0.2.0",
111
112
  "@types/bcryptjs": "2.4.3",
112
113
  "@types/configstore": "5.0.1",
113
114
  "@types/delegates": "1.0.0",
115
+ "@types/fs-extra": "11.0.4",
116
+ "@types/global-agent": "2.1.3",
117
+ "@types/http-errors": "2.0.4",
114
118
  "@types/jest": "29.5.2",
115
119
  "@types/koa": "2.13.4",
116
120
  "@types/koa-compress": "4.0.3",
@@ -120,15 +124,15 @@
120
124
  "@types/lodash": "^4.14.191",
121
125
  "@types/mime-types": "2.1.1",
122
126
  "@types/node": "18.19.24",
123
- "@types/node-schedule": "2.1.0",
127
+ "@types/node-schedule": "2.1.7",
124
128
  "@types/statuses": "2.0.1",
125
- "eslint-config-custom": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba",
129
+ "eslint-config-custom": "0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c",
126
130
  "supertest": "6.3.3",
127
- "tsconfig": "0.0.0-experimental.74c69aeafc770d59d5b3d5d37cd249934ef395ba"
131
+ "tsconfig": "0.0.0-experimental.76999222c105ee5da1bc2540e3b5e5f57747300c"
128
132
  },
129
133
  "engines": {
130
- "node": ">=18.0.0 <=20.x.x",
134
+ "node": ">=18.0.0 <=22.x.x",
131
135
  "npm": ">=6.0.0"
132
136
  },
133
- "gitHead": "74c69aeafc770d59d5b3d5d37cd249934ef395ba"
137
+ "gitHead": "76999222c105ee5da1bc2540e3b5e5f57747300c"
134
138
  }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=document-engine.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document-engine.d.ts","sourceRoot":"","sources":["../../../src/services/document-service/document-engine.ts"],"names":[],"mappings":""}