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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (725) hide show
  1. package/LICENSE +18 -3
  2. package/dist/Strapi.d.ts +3 -1
  3. package/dist/Strapi.d.ts.map +1 -1
  4. package/dist/configuration/index.d.ts.map +1 -1
  5. package/dist/core-api/service/collection-type.d.ts +2 -2
  6. package/dist/ee/index.d.ts.map +1 -1
  7. package/dist/index.d.ts +14 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +10101 -27
  10. package/dist/index.js.map +1 -1
  11. package/dist/index.mjs +10079 -29
  12. package/dist/index.mjs.map +1 -1
  13. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  14. package/dist/loaders/plugins/index.d.ts.map +1 -1
  15. package/dist/middlewares/body.d.ts.map +1 -1
  16. package/dist/middlewares/cors.d.ts.map +1 -1
  17. package/dist/middlewares/query.d.ts.map +1 -1
  18. package/dist/middlewares/security.d.ts.map +1 -1
  19. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +14 -11
  20. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  21. package/dist/migrations/draft-publish.d.ts +2 -2
  22. package/dist/migrations/draft-publish.d.ts.map +1 -1
  23. package/dist/migrations/i18n.d.ts +5 -0
  24. package/dist/migrations/i18n.d.ts.map +1 -0
  25. package/dist/migrations/index.d.ts +5 -0
  26. package/dist/migrations/index.d.ts.map +1 -0
  27. package/dist/providers/admin.d.ts.map +1 -1
  28. package/dist/registries/policies.d.ts +1 -1
  29. package/dist/registries/policies.d.ts.map +1 -1
  30. package/dist/services/content-api/index.d.ts +10 -12
  31. package/dist/services/content-api/index.d.ts.map +1 -1
  32. package/dist/services/content-api/permissions/index.d.ts +10 -12
  33. package/dist/services/content-api/permissions/index.d.ts.map +1 -1
  34. package/dist/services/content-api/permissions/providers/action.d.ts +5 -6
  35. package/dist/services/content-api/permissions/providers/action.d.ts.map +1 -1
  36. package/dist/services/content-api/permissions/providers/condition.d.ts +5 -6
  37. package/dist/services/content-api/permissions/providers/condition.d.ts.map +1 -1
  38. package/dist/services/cron.d.ts +3 -3
  39. package/dist/services/cron.d.ts.map +1 -1
  40. package/dist/services/document-service/common.d.ts +1 -1
  41. package/dist/services/document-service/common.d.ts.map +1 -1
  42. package/dist/services/document-service/components.d.ts.map +1 -1
  43. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  44. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  45. package/dist/services/document-service/entries.d.ts +2 -2
  46. package/dist/services/document-service/entries.d.ts.map +1 -1
  47. package/dist/services/document-service/events.d.ts +1 -1
  48. package/dist/services/document-service/events.d.ts.map +1 -1
  49. package/dist/services/document-service/index.d.ts +2 -1
  50. package/dist/services/document-service/index.d.ts.map +1 -1
  51. package/dist/services/document-service/repository.d.ts.map +1 -1
  52. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  53. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  54. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  55. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  56. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  57. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  58. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  59. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  60. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  61. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  62. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  63. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  64. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  65. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  66. package/dist/services/document-service/utils/populate.d.ts +1 -1
  67. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  68. package/dist/services/document-service/utils/unidirectional-relations.d.ts +36 -0
  69. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -0
  70. package/dist/services/entity-validator/blocks-validator.d.ts +1 -2
  71. package/dist/services/entity-validator/blocks-validator.d.ts.map +1 -1
  72. package/dist/services/entity-validator/index.d.ts +15 -1
  73. package/dist/services/entity-validator/index.d.ts.map +1 -1
  74. package/dist/services/entity-validator/validators.d.ts +36 -25
  75. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  76. package/dist/services/metrics/middleware.d.ts.map +1 -1
  77. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  78. package/dist/services/webhook-runner.d.ts +2 -1
  79. package/dist/services/webhook-runner.d.ts.map +1 -1
  80. package/dist/services/webhook-store.d.ts +2 -8
  81. package/dist/services/webhook-store.d.ts.map +1 -1
  82. package/dist/utils/fetch.d.ts.map +1 -1
  83. package/dist/utils/filepath-to-prop-path.d.ts +1 -1
  84. package/dist/utils/filepath-to-prop-path.d.ts.map +1 -1
  85. package/dist/utils/startup-logger.d.ts.map +1 -1
  86. package/dist/utils/transform-content-types-to-models.d.ts +355 -23
  87. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  88. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  89. package/package.json +31 -30
  90. package/dist/Strapi.js +0 -387
  91. package/dist/Strapi.js.map +0 -1
  92. package/dist/Strapi.mjs +0 -385
  93. package/dist/Strapi.mjs.map +0 -1
  94. package/dist/compile.js +0 -18
  95. package/dist/compile.js.map +0 -1
  96. package/dist/compile.mjs +0 -17
  97. package/dist/compile.mjs.map +0 -1
  98. package/dist/configuration/config-loader.js +0 -106
  99. package/dist/configuration/config-loader.js.map +0 -1
  100. package/dist/configuration/config-loader.mjs +0 -104
  101. package/dist/configuration/config-loader.mjs.map +0 -1
  102. package/dist/configuration/get-dirs.js +0 -31
  103. package/dist/configuration/get-dirs.js.map +0 -1
  104. package/dist/configuration/get-dirs.mjs +0 -31
  105. package/dist/configuration/get-dirs.mjs.map +0 -1
  106. package/dist/configuration/index.js +0 -80
  107. package/dist/configuration/index.js.map +0 -1
  108. package/dist/configuration/index.mjs +0 -75
  109. package/dist/configuration/index.mjs.map +0 -1
  110. package/dist/configuration/urls.js +0 -68
  111. package/dist/configuration/urls.js.map +0 -1
  112. package/dist/configuration/urls.mjs +0 -66
  113. package/dist/configuration/urls.mjs.map +0 -1
  114. package/dist/container.js +0 -30
  115. package/dist/container.js.map +0 -1
  116. package/dist/container.mjs +0 -30
  117. package/dist/container.mjs.map +0 -1
  118. package/dist/core-api/controller/collection-type.js +0 -84
  119. package/dist/core-api/controller/collection-type.js.map +0 -1
  120. package/dist/core-api/controller/collection-type.mjs +0 -84
  121. package/dist/core-api/controller/collection-type.mjs.map +0 -1
  122. package/dist/core-api/controller/index.js +0 -52
  123. package/dist/core-api/controller/index.js.map +0 -1
  124. package/dist/core-api/controller/index.mjs +0 -52
  125. package/dist/core-api/controller/index.mjs.map +0 -1
  126. package/dist/core-api/controller/single-type.js +0 -46
  127. package/dist/core-api/controller/single-type.js.map +0 -1
  128. package/dist/core-api/controller/single-type.mjs +0 -46
  129. package/dist/core-api/controller/single-type.mjs.map +0 -1
  130. package/dist/core-api/controller/transform.js +0 -76
  131. package/dist/core-api/controller/transform.js.map +0 -1
  132. package/dist/core-api/controller/transform.mjs +0 -76
  133. package/dist/core-api/controller/transform.mjs.map +0 -1
  134. package/dist/core-api/routes/index.js +0 -67
  135. package/dist/core-api/routes/index.js.map +0 -1
  136. package/dist/core-api/routes/index.mjs +0 -67
  137. package/dist/core-api/routes/index.mjs.map +0 -1
  138. package/dist/core-api/service/collection-type.js +0 -67
  139. package/dist/core-api/service/collection-type.js.map +0 -1
  140. package/dist/core-api/service/collection-type.mjs +0 -67
  141. package/dist/core-api/service/collection-type.mjs.map +0 -1
  142. package/dist/core-api/service/core-service.js +0 -12
  143. package/dist/core-api/service/core-service.js.map +0 -1
  144. package/dist/core-api/service/core-service.mjs +0 -12
  145. package/dist/core-api/service/core-service.mjs.map +0 -1
  146. package/dist/core-api/service/index.js +0 -16
  147. package/dist/core-api/service/index.js.map +0 -1
  148. package/dist/core-api/service/index.mjs +0 -16
  149. package/dist/core-api/service/index.mjs.map +0 -1
  150. package/dist/core-api/service/pagination.js +0 -52
  151. package/dist/core-api/service/pagination.js.map +0 -1
  152. package/dist/core-api/service/pagination.mjs +0 -52
  153. package/dist/core-api/service/pagination.mjs.map +0 -1
  154. package/dist/core-api/service/single-type.js +0 -46
  155. package/dist/core-api/service/single-type.js.map +0 -1
  156. package/dist/core-api/service/single-type.mjs +0 -46
  157. package/dist/core-api/service/single-type.mjs.map +0 -1
  158. package/dist/domain/content-type/index.js +0 -111
  159. package/dist/domain/content-type/index.js.map +0 -1
  160. package/dist/domain/content-type/index.mjs +0 -109
  161. package/dist/domain/content-type/index.mjs.map +0 -1
  162. package/dist/domain/content-type/validator.js +0 -77
  163. package/dist/domain/content-type/validator.js.map +0 -1
  164. package/dist/domain/content-type/validator.mjs +0 -75
  165. package/dist/domain/content-type/validator.mjs.map +0 -1
  166. package/dist/domain/module/index.js +0 -107
  167. package/dist/domain/module/index.js.map +0 -1
  168. package/dist/domain/module/index.mjs +0 -105
  169. package/dist/domain/module/index.mjs.map +0 -1
  170. package/dist/domain/module/validation.js +0 -25
  171. package/dist/domain/module/validation.js.map +0 -1
  172. package/dist/domain/module/validation.mjs +0 -25
  173. package/dist/domain/module/validation.mjs.map +0 -1
  174. package/dist/ee/index.js +0 -153
  175. package/dist/ee/index.js.map +0 -1
  176. package/dist/ee/index.mjs +0 -154
  177. package/dist/ee/index.mjs.map +0 -1
  178. package/dist/ee/license.js +0 -91
  179. package/dist/ee/license.js.map +0 -1
  180. package/dist/ee/license.mjs +0 -88
  181. package/dist/ee/license.mjs.map +0 -1
  182. package/dist/factories.js +0 -80
  183. package/dist/factories.js.map +0 -1
  184. package/dist/factories.mjs +0 -80
  185. package/dist/factories.mjs.map +0 -1
  186. package/dist/loaders/admin.js +0 -26
  187. package/dist/loaders/admin.js.map +0 -1
  188. package/dist/loaders/admin.mjs +0 -25
  189. package/dist/loaders/admin.mjs.map +0 -1
  190. package/dist/loaders/apis.js +0 -137
  191. package/dist/loaders/apis.js.map +0 -1
  192. package/dist/loaders/apis.mjs +0 -135
  193. package/dist/loaders/apis.mjs.map +0 -1
  194. package/dist/loaders/components.js +0 -38
  195. package/dist/loaders/components.js.map +0 -1
  196. package/dist/loaders/components.mjs +0 -37
  197. package/dist/loaders/components.mjs.map +0 -1
  198. package/dist/loaders/index.js +0 -24
  199. package/dist/loaders/index.js.map +0 -1
  200. package/dist/loaders/index.mjs +0 -24
  201. package/dist/loaders/index.mjs.map +0 -1
  202. package/dist/loaders/middlewares.js +0 -31
  203. package/dist/loaders/middlewares.js.map +0 -1
  204. package/dist/loaders/middlewares.mjs +0 -30
  205. package/dist/loaders/middlewares.mjs.map +0 -1
  206. package/dist/loaders/plugins/get-enabled-plugins.js +0 -113
  207. package/dist/loaders/plugins/get-enabled-plugins.js.map +0 -1
  208. package/dist/loaders/plugins/get-enabled-plugins.mjs +0 -111
  209. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +0 -1
  210. package/dist/loaders/plugins/get-user-plugins-config.js +0 -27
  211. package/dist/loaders/plugins/get-user-plugins-config.js.map +0 -1
  212. package/dist/loaders/plugins/get-user-plugins-config.mjs +0 -25
  213. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +0 -1
  214. package/dist/loaders/plugins/index.js +0 -118
  215. package/dist/loaders/plugins/index.js.map +0 -1
  216. package/dist/loaders/plugins/index.mjs +0 -117
  217. package/dist/loaders/plugins/index.mjs.map +0 -1
  218. package/dist/loaders/policies.js +0 -25
  219. package/dist/loaders/policies.js.map +0 -1
  220. package/dist/loaders/policies.mjs +0 -24
  221. package/dist/loaders/policies.mjs.map +0 -1
  222. package/dist/loaders/sanitizers.js +0 -6
  223. package/dist/loaders/sanitizers.js.map +0 -1
  224. package/dist/loaders/sanitizers.mjs +0 -7
  225. package/dist/loaders/sanitizers.mjs.map +0 -1
  226. package/dist/loaders/src-index.js +0 -33
  227. package/dist/loaders/src-index.js.map +0 -1
  228. package/dist/loaders/src-index.mjs +0 -34
  229. package/dist/loaders/src-index.mjs.map +0 -1
  230. package/dist/loaders/validators.js +0 -6
  231. package/dist/loaders/validators.js.map +0 -1
  232. package/dist/loaders/validators.mjs +0 -7
  233. package/dist/loaders/validators.mjs.map +0 -1
  234. package/dist/middlewares/body.js +0 -65
  235. package/dist/middlewares/body.js.map +0 -1
  236. package/dist/middlewares/body.mjs +0 -61
  237. package/dist/middlewares/body.mjs.map +0 -1
  238. package/dist/middlewares/compression.js +0 -8
  239. package/dist/middlewares/compression.js.map +0 -1
  240. package/dist/middlewares/compression.mjs +0 -6
  241. package/dist/middlewares/compression.mjs.map +0 -1
  242. package/dist/middlewares/cors.js +0 -51
  243. package/dist/middlewares/cors.js.map +0 -1
  244. package/dist/middlewares/cors.mjs +0 -49
  245. package/dist/middlewares/cors.mjs.map +0 -1
  246. package/dist/middlewares/errors.js +0 -33
  247. package/dist/middlewares/errors.js.map +0 -1
  248. package/dist/middlewares/errors.mjs +0 -33
  249. package/dist/middlewares/errors.mjs.map +0 -1
  250. package/dist/middlewares/favicon.js +0 -22
  251. package/dist/middlewares/favicon.js.map +0 -1
  252. package/dist/middlewares/favicon.mjs +0 -20
  253. package/dist/middlewares/favicon.mjs.map +0 -1
  254. package/dist/middlewares/index.js +0 -34
  255. package/dist/middlewares/index.js.map +0 -1
  256. package/dist/middlewares/index.mjs +0 -34
  257. package/dist/middlewares/index.mjs.map +0 -1
  258. package/dist/middlewares/ip.js +0 -8
  259. package/dist/middlewares/ip.js.map +0 -1
  260. package/dist/middlewares/ip.mjs +0 -6
  261. package/dist/middlewares/ip.mjs.map +0 -1
  262. package/dist/middlewares/logger.js +0 -12
  263. package/dist/middlewares/logger.js.map +0 -1
  264. package/dist/middlewares/logger.mjs +0 -12
  265. package/dist/middlewares/logger.mjs.map +0 -1
  266. package/dist/middlewares/powered-by.js +0 -14
  267. package/dist/middlewares/powered-by.js.map +0 -1
  268. package/dist/middlewares/powered-by.mjs +0 -14
  269. package/dist/middlewares/powered-by.mjs.map +0 -1
  270. package/dist/middlewares/public.js +0 -34
  271. package/dist/middlewares/public.js.map +0 -1
  272. package/dist/middlewares/public.mjs +0 -32
  273. package/dist/middlewares/public.mjs.map +0 -1
  274. package/dist/middlewares/query.js +0 -40
  275. package/dist/middlewares/query.js.map +0 -1
  276. package/dist/middlewares/query.mjs +0 -38
  277. package/dist/middlewares/query.mjs.map +0 -1
  278. package/dist/middlewares/response-time.js +0 -12
  279. package/dist/middlewares/response-time.js.map +0 -1
  280. package/dist/middlewares/response-time.mjs +0 -12
  281. package/dist/middlewares/response-time.mjs.map +0 -1
  282. package/dist/middlewares/responses.js +0 -15
  283. package/dist/middlewares/responses.js.map +0 -1
  284. package/dist/middlewares/responses.mjs +0 -15
  285. package/dist/middlewares/responses.mjs.map +0 -1
  286. package/dist/middlewares/security.js +0 -71
  287. package/dist/middlewares/security.js.map +0 -1
  288. package/dist/middlewares/security.mjs +0 -69
  289. package/dist/middlewares/security.mjs.map +0 -1
  290. package/dist/middlewares/session.js +0 -30
  291. package/dist/middlewares/session.js.map +0 -1
  292. package/dist/middlewares/session.mjs +0 -28
  293. package/dist/middlewares/session.mjs.map +0 -1
  294. package/dist/migrations/database/5.0.0-discard-drafts.js +0 -50
  295. package/dist/migrations/database/5.0.0-discard-drafts.js.map +0 -1
  296. package/dist/migrations/database/5.0.0-discard-drafts.mjs +0 -50
  297. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +0 -1
  298. package/dist/migrations/draft-publish.js +0 -42
  299. package/dist/migrations/draft-publish.js.map +0 -1
  300. package/dist/migrations/draft-publish.mjs +0 -42
  301. package/dist/migrations/draft-publish.mjs.map +0 -1
  302. package/dist/providers/admin.js +0 -20
  303. package/dist/providers/admin.js.map +0 -1
  304. package/dist/providers/admin.mjs +0 -21
  305. package/dist/providers/admin.mjs.map +0 -1
  306. package/dist/providers/coreStore.js +0 -11
  307. package/dist/providers/coreStore.js.map +0 -1
  308. package/dist/providers/coreStore.mjs +0 -12
  309. package/dist/providers/coreStore.mjs.map +0 -1
  310. package/dist/providers/cron.js +0 -20
  311. package/dist/providers/cron.js.map +0 -1
  312. package/dist/providers/cron.mjs +0 -21
  313. package/dist/providers/cron.mjs.map +0 -1
  314. package/dist/providers/index.js +0 -11
  315. package/dist/providers/index.js.map +0 -1
  316. package/dist/providers/index.mjs +0 -11
  317. package/dist/providers/index.mjs.map +0 -1
  318. package/dist/providers/provider.js +0 -5
  319. package/dist/providers/provider.js.map +0 -1
  320. package/dist/providers/provider.mjs +0 -5
  321. package/dist/providers/provider.mjs.map +0 -1
  322. package/dist/providers/registries.js +0 -35
  323. package/dist/providers/registries.js.map +0 -1
  324. package/dist/providers/registries.mjs +0 -36
  325. package/dist/providers/registries.mjs.map +0 -1
  326. package/dist/providers/telemetry.js +0 -19
  327. package/dist/providers/telemetry.js.map +0 -1
  328. package/dist/providers/telemetry.mjs +0 -20
  329. package/dist/providers/telemetry.mjs.map +0 -1
  330. package/dist/providers/webhooks.js +0 -30
  331. package/dist/providers/webhooks.js.map +0 -1
  332. package/dist/providers/webhooks.mjs +0 -31
  333. package/dist/providers/webhooks.mjs.map +0 -1
  334. package/dist/registries/apis.js +0 -23
  335. package/dist/registries/apis.js.map +0 -1
  336. package/dist/registries/apis.mjs +0 -24
  337. package/dist/registries/apis.mjs.map +0 -1
  338. package/dist/registries/components.js +0 -45
  339. package/dist/registries/components.js.map +0 -1
  340. package/dist/registries/components.mjs +0 -46
  341. package/dist/registries/components.mjs.map +0 -1
  342. package/dist/registries/content-types.js +0 -70
  343. package/dist/registries/content-types.js.map +0 -1
  344. package/dist/registries/content-types.mjs +0 -71
  345. package/dist/registries/content-types.mjs.map +0 -1
  346. package/dist/registries/controllers.js +0 -80
  347. package/dist/registries/controllers.js.map +0 -1
  348. package/dist/registries/controllers.mjs +0 -81
  349. package/dist/registries/controllers.mjs.map +0 -1
  350. package/dist/registries/custom-fields.js +0 -71
  351. package/dist/registries/custom-fields.js.map +0 -1
  352. package/dist/registries/custom-fields.mjs +0 -72
  353. package/dist/registries/custom-fields.mjs.map +0 -1
  354. package/dist/registries/hooks.js +0 -58
  355. package/dist/registries/hooks.js.map +0 -1
  356. package/dist/registries/hooks.mjs +0 -59
  357. package/dist/registries/hooks.mjs.map +0 -1
  358. package/dist/registries/middlewares.js +0 -60
  359. package/dist/registries/middlewares.js.map +0 -1
  360. package/dist/registries/middlewares.mjs +0 -61
  361. package/dist/registries/middlewares.mjs.map +0 -1
  362. package/dist/registries/models.js +0 -16
  363. package/dist/registries/models.js.map +0 -1
  364. package/dist/registries/models.mjs +0 -16
  365. package/dist/registries/models.mjs.map +0 -1
  366. package/dist/registries/modules.js +0 -39
  367. package/dist/registries/modules.js.map +0 -1
  368. package/dist/registries/modules.mjs +0 -40
  369. package/dist/registries/modules.mjs.map +0 -1
  370. package/dist/registries/namespace.js +0 -27
  371. package/dist/registries/namespace.js.map +0 -1
  372. package/dist/registries/namespace.mjs +0 -27
  373. package/dist/registries/namespace.mjs.map +0 -1
  374. package/dist/registries/plugins.js +0 -23
  375. package/dist/registries/plugins.js.map +0 -1
  376. package/dist/registries/plugins.mjs +0 -24
  377. package/dist/registries/plugins.mjs.map +0 -1
  378. package/dist/registries/policies.js +0 -108
  379. package/dist/registries/policies.js.map +0 -1
  380. package/dist/registries/policies.mjs +0 -109
  381. package/dist/registries/policies.mjs.map +0 -1
  382. package/dist/registries/sanitizers.js +0 -25
  383. package/dist/registries/sanitizers.js.map +0 -1
  384. package/dist/registries/sanitizers.mjs +0 -24
  385. package/dist/registries/sanitizers.mjs.map +0 -1
  386. package/dist/registries/services.js +0 -80
  387. package/dist/registries/services.js.map +0 -1
  388. package/dist/registries/services.mjs +0 -81
  389. package/dist/registries/services.mjs.map +0 -1
  390. package/dist/registries/validators.js +0 -25
  391. package/dist/registries/validators.js.map +0 -1
  392. package/dist/registries/validators.mjs +0 -24
  393. package/dist/registries/validators.mjs.map +0 -1
  394. package/dist/services/auth/index.js +0 -81
  395. package/dist/services/auth/index.js.map +0 -1
  396. package/dist/services/auth/index.mjs +0 -80
  397. package/dist/services/auth/index.mjs.map +0 -1
  398. package/dist/services/config.js +0 -47
  399. package/dist/services/config.js.map +0 -1
  400. package/dist/services/config.mjs +0 -47
  401. package/dist/services/config.mjs.map +0 -1
  402. package/dist/services/content-api/index.js +0 -85
  403. package/dist/services/content-api/index.js.map +0 -1
  404. package/dist/services/content-api/index.mjs +0 -84
  405. package/dist/services/content-api/index.mjs.map +0 -1
  406. package/dist/services/content-api/permissions/engine.js +0 -7
  407. package/dist/services/content-api/permissions/engine.js.map +0 -1
  408. package/dist/services/content-api/permissions/engine.mjs +0 -6
  409. package/dist/services/content-api/permissions/engine.mjs.map +0 -1
  410. package/dist/services/content-api/permissions/index.js +0 -87
  411. package/dist/services/content-api/permissions/index.js.map +0 -1
  412. package/dist/services/content-api/permissions/index.mjs +0 -86
  413. package/dist/services/content-api/permissions/index.mjs.map +0 -1
  414. package/dist/services/content-api/permissions/providers/action.js +0 -16
  415. package/dist/services/content-api/permissions/providers/action.js.map +0 -1
  416. package/dist/services/content-api/permissions/providers/action.mjs +0 -17
  417. package/dist/services/content-api/permissions/providers/action.mjs.map +0 -1
  418. package/dist/services/content-api/permissions/providers/condition.js +0 -16
  419. package/dist/services/content-api/permissions/providers/condition.js.map +0 -1
  420. package/dist/services/content-api/permissions/providers/condition.mjs +0 -17
  421. package/dist/services/content-api/permissions/providers/condition.mjs.map +0 -1
  422. package/dist/services/core-store.js +0 -107
  423. package/dist/services/core-store.js.map +0 -1
  424. package/dist/services/core-store.mjs +0 -107
  425. package/dist/services/core-store.mjs.map +0 -1
  426. package/dist/services/cron.js +0 -63
  427. package/dist/services/cron.js.map +0 -1
  428. package/dist/services/cron.mjs +0 -64
  429. package/dist/services/cron.mjs.map +0 -1
  430. package/dist/services/custom-fields.js +0 -10
  431. package/dist/services/custom-fields.js.map +0 -1
  432. package/dist/services/custom-fields.mjs +0 -11
  433. package/dist/services/custom-fields.mjs.map +0 -1
  434. package/dist/services/document-service/attributes/index.js +0 -22
  435. package/dist/services/document-service/attributes/index.js.map +0 -1
  436. package/dist/services/document-service/attributes/index.mjs +0 -22
  437. package/dist/services/document-service/attributes/index.mjs.map +0 -1
  438. package/dist/services/document-service/attributes/transforms.js +0 -20
  439. package/dist/services/document-service/attributes/transforms.js.map +0 -1
  440. package/dist/services/document-service/attributes/transforms.mjs +0 -19
  441. package/dist/services/document-service/attributes/transforms.mjs.map +0 -1
  442. package/dist/services/document-service/common.js +0 -7
  443. package/dist/services/document-service/common.js.map +0 -1
  444. package/dist/services/document-service/common.mjs +0 -7
  445. package/dist/services/document-service/common.mjs.map +0 -1
  446. package/dist/services/document-service/components.js +0 -288
  447. package/dist/services/document-service/components.js.map +0 -1
  448. package/dist/services/document-service/components.mjs +0 -286
  449. package/dist/services/document-service/components.mjs.map +0 -1
  450. package/dist/services/document-service/draft-and-publish.js +0 -69
  451. package/dist/services/document-service/draft-and-publish.js.map +0 -1
  452. package/dist/services/document-service/draft-and-publish.mjs +0 -69
  453. package/dist/services/document-service/draft-and-publish.mjs.map +0 -1
  454. package/dist/services/document-service/entries.js +0 -96
  455. package/dist/services/document-service/entries.js.map +0 -1
  456. package/dist/services/document-service/entries.mjs +0 -96
  457. package/dist/services/document-service/entries.mjs.map +0 -1
  458. package/dist/services/document-service/events.js +0 -47
  459. package/dist/services/document-service/events.js.map +0 -1
  460. package/dist/services/document-service/events.mjs +0 -47
  461. package/dist/services/document-service/events.mjs.map +0 -1
  462. package/dist/services/document-service/index.js +0 -35
  463. package/dist/services/document-service/index.js.map +0 -1
  464. package/dist/services/document-service/index.mjs +0 -35
  465. package/dist/services/document-service/index.mjs.map +0 -1
  466. package/dist/services/document-service/internationalization.js +0 -63
  467. package/dist/services/document-service/internationalization.js.map +0 -1
  468. package/dist/services/document-service/internationalization.mjs +0 -63
  469. package/dist/services/document-service/internationalization.mjs.map +0 -1
  470. package/dist/services/document-service/middlewares/errors.js +0 -25
  471. package/dist/services/document-service/middlewares/errors.js.map +0 -1
  472. package/dist/services/document-service/middlewares/errors.mjs +0 -25
  473. package/dist/services/document-service/middlewares/errors.mjs.map +0 -1
  474. package/dist/services/document-service/middlewares/middleware-manager.js +0 -49
  475. package/dist/services/document-service/middlewares/middleware-manager.js.map +0 -1
  476. package/dist/services/document-service/middlewares/middleware-manager.mjs +0 -49
  477. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +0 -1
  478. package/dist/services/document-service/params.js +0 -8
  479. package/dist/services/document-service/params.js.map +0 -1
  480. package/dist/services/document-service/params.mjs +0 -8
  481. package/dist/services/document-service/params.mjs.map +0 -1
  482. package/dist/services/document-service/repository.js +0 -278
  483. package/dist/services/document-service/repository.js.map +0 -1
  484. package/dist/services/document-service/repository.mjs +0 -278
  485. package/dist/services/document-service/repository.mjs.map +0 -1
  486. package/dist/services/document-service/transform/data.js +0 -15
  487. package/dist/services/document-service/transform/data.js.map +0 -1
  488. package/dist/services/document-service/transform/data.mjs +0 -15
  489. package/dist/services/document-service/transform/data.mjs.map +0 -1
  490. package/dist/services/document-service/transform/fields.js +0 -24
  491. package/dist/services/document-service/transform/fields.js.map +0 -1
  492. package/dist/services/document-service/transform/fields.mjs +0 -24
  493. package/dist/services/document-service/transform/fields.mjs.map +0 -1
  494. package/dist/services/document-service/transform/id-map.js +0 -78
  495. package/dist/services/document-service/transform/id-map.js.map +0 -1
  496. package/dist/services/document-service/transform/id-map.mjs +0 -78
  497. package/dist/services/document-service/transform/id-map.mjs.map +0 -1
  498. package/dist/services/document-service/transform/id-transform.js +0 -33
  499. package/dist/services/document-service/transform/id-transform.js.map +0 -1
  500. package/dist/services/document-service/transform/id-transform.mjs +0 -33
  501. package/dist/services/document-service/transform/id-transform.mjs.map +0 -1
  502. package/dist/services/document-service/transform/populate.js +0 -21
  503. package/dist/services/document-service/transform/populate.js.map +0 -1
  504. package/dist/services/document-service/transform/populate.mjs +0 -21
  505. package/dist/services/document-service/transform/populate.mjs.map +0 -1
  506. package/dist/services/document-service/transform/query.js +0 -9
  507. package/dist/services/document-service/transform/query.js.map +0 -1
  508. package/dist/services/document-service/transform/query.mjs +0 -9
  509. package/dist/services/document-service/transform/query.mjs.map +0 -1
  510. package/dist/services/document-service/transform/relations/extract/data-ids.js +0 -57
  511. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +0 -1
  512. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +0 -57
  513. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +0 -1
  514. package/dist/services/document-service/transform/relations/transform/data-ids.js +0 -76
  515. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +0 -1
  516. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +0 -76
  517. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +0 -1
  518. package/dist/services/document-service/transform/relations/transform/default-locale.js +0 -32
  519. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +0 -1
  520. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +0 -32
  521. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +0 -1
  522. package/dist/services/document-service/transform/relations/utils/dp.js +0 -30
  523. package/dist/services/document-service/transform/relations/utils/dp.js.map +0 -1
  524. package/dist/services/document-service/transform/relations/utils/dp.mjs +0 -30
  525. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +0 -1
  526. package/dist/services/document-service/transform/relations/utils/i18n.js +0 -25
  527. package/dist/services/document-service/transform/relations/utils/i18n.js.map +0 -1
  528. package/dist/services/document-service/transform/relations/utils/i18n.mjs +0 -25
  529. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +0 -1
  530. package/dist/services/document-service/transform/relations/utils/map-relation.js +0 -91
  531. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +0 -1
  532. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +0 -91
  533. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +0 -1
  534. package/dist/services/document-service/utils/populate.js +0 -41
  535. package/dist/services/document-service/utils/populate.js.map +0 -1
  536. package/dist/services/document-service/utils/populate.mjs +0 -41
  537. package/dist/services/document-service/utils/populate.mjs.map +0 -1
  538. package/dist/services/entity-service/index.js +0 -169
  539. package/dist/services/entity-service/index.js.map +0 -1
  540. package/dist/services/entity-service/index.mjs +0 -167
  541. package/dist/services/entity-service/index.mjs.map +0 -1
  542. package/dist/services/entity-validator/blocks-validator.js +0 -127
  543. package/dist/services/entity-validator/blocks-validator.js.map +0 -1
  544. package/dist/services/entity-validator/blocks-validator.mjs +0 -128
  545. package/dist/services/entity-validator/blocks-validator.mjs.map +0 -1
  546. package/dist/services/entity-validator/index.js +0 -333
  547. package/dist/services/entity-validator/index.js.map +0 -1
  548. package/dist/services/entity-validator/index.mjs +0 -332
  549. package/dist/services/entity-validator/index.mjs.map +0 -1
  550. package/dist/services/entity-validator/validators.js +0 -126
  551. package/dist/services/entity-validator/validators.js.map +0 -1
  552. package/dist/services/entity-validator/validators.mjs +0 -124
  553. package/dist/services/entity-validator/validators.mjs.map +0 -1
  554. package/dist/services/errors.js +0 -76
  555. package/dist/services/errors.js.map +0 -1
  556. package/dist/services/errors.mjs +0 -74
  557. package/dist/services/errors.mjs.map +0 -1
  558. package/dist/services/event-hub.js +0 -72
  559. package/dist/services/event-hub.js.map +0 -1
  560. package/dist/services/event-hub.mjs +0 -73
  561. package/dist/services/event-hub.mjs.map +0 -1
  562. package/dist/services/features.js +0 -17
  563. package/dist/services/features.js.map +0 -1
  564. package/dist/services/features.mjs +0 -17
  565. package/dist/services/features.mjs.map +0 -1
  566. package/dist/services/fs.js +0 -51
  567. package/dist/services/fs.js.map +0 -1
  568. package/dist/services/fs.mjs +0 -49
  569. package/dist/services/fs.mjs.map +0 -1
  570. package/dist/services/metrics/admin-user-hash.js +0 -14
  571. package/dist/services/metrics/admin-user-hash.js.map +0 -1
  572. package/dist/services/metrics/admin-user-hash.mjs +0 -12
  573. package/dist/services/metrics/admin-user-hash.mjs.map +0 -1
  574. package/dist/services/metrics/index.js +0 -45
  575. package/dist/services/metrics/index.js.map +0 -1
  576. package/dist/services/metrics/index.mjs +0 -46
  577. package/dist/services/metrics/index.mjs.map +0 -1
  578. package/dist/services/metrics/is-truthy.js +0 -9
  579. package/dist/services/metrics/is-truthy.js.map +0 -1
  580. package/dist/services/metrics/is-truthy.mjs +0 -8
  581. package/dist/services/metrics/is-truthy.mjs.map +0 -1
  582. package/dist/services/metrics/middleware.js +0 -25
  583. package/dist/services/metrics/middleware.js.map +0 -1
  584. package/dist/services/metrics/middleware.mjs +0 -26
  585. package/dist/services/metrics/middleware.mjs.map +0 -1
  586. package/dist/services/metrics/rate-limiter.js +0 -21
  587. package/dist/services/metrics/rate-limiter.js.map +0 -1
  588. package/dist/services/metrics/rate-limiter.mjs +0 -22
  589. package/dist/services/metrics/rate-limiter.mjs.map +0 -1
  590. package/dist/services/metrics/sender.js +0 -76
  591. package/dist/services/metrics/sender.js.map +0 -1
  592. package/dist/services/metrics/sender.mjs +0 -70
  593. package/dist/services/metrics/sender.mjs.map +0 -1
  594. package/dist/services/query-params.js +0 -12
  595. package/dist/services/query-params.js.map +0 -1
  596. package/dist/services/query-params.mjs +0 -13
  597. package/dist/services/query-params.mjs.map +0 -1
  598. package/dist/services/reloader.js +0 -36
  599. package/dist/services/reloader.js.map +0 -1
  600. package/dist/services/reloader.mjs +0 -36
  601. package/dist/services/reloader.mjs.map +0 -1
  602. package/dist/services/request-context.js +0 -13
  603. package/dist/services/request-context.js.map +0 -1
  604. package/dist/services/request-context.mjs +0 -14
  605. package/dist/services/request-context.mjs.map +0 -1
  606. package/dist/services/server/admin-api.js +0 -13
  607. package/dist/services/server/admin-api.js.map +0 -1
  608. package/dist/services/server/admin-api.mjs +0 -13
  609. package/dist/services/server/admin-api.mjs.map +0 -1
  610. package/dist/services/server/api.js +0 -30
  611. package/dist/services/server/api.js.map +0 -1
  612. package/dist/services/server/api.mjs +0 -28
  613. package/dist/services/server/api.mjs.map +0 -1
  614. package/dist/services/server/compose-endpoint.js +0 -117
  615. package/dist/services/server/compose-endpoint.js.map +0 -1
  616. package/dist/services/server/compose-endpoint.mjs +0 -116
  617. package/dist/services/server/compose-endpoint.mjs.map +0 -1
  618. package/dist/services/server/content-api.js +0 -12
  619. package/dist/services/server/content-api.js.map +0 -1
  620. package/dist/services/server/content-api.mjs +0 -12
  621. package/dist/services/server/content-api.mjs.map +0 -1
  622. package/dist/services/server/http-server.js +0 -50
  623. package/dist/services/server/http-server.js.map +0 -1
  624. package/dist/services/server/http-server.mjs +0 -48
  625. package/dist/services/server/http-server.mjs.map +0 -1
  626. package/dist/services/server/index.js +0 -87
  627. package/dist/services/server/index.js.map +0 -1
  628. package/dist/services/server/index.mjs +0 -85
  629. package/dist/services/server/index.mjs.map +0 -1
  630. package/dist/services/server/koa.js +0 -52
  631. package/dist/services/server/koa.js.map +0 -1
  632. package/dist/services/server/koa.mjs +0 -48
  633. package/dist/services/server/koa.mjs.map +0 -1
  634. package/dist/services/server/middleware.js +0 -92
  635. package/dist/services/server/middleware.js.map +0 -1
  636. package/dist/services/server/middleware.mjs +0 -90
  637. package/dist/services/server/middleware.mjs.map +0 -1
  638. package/dist/services/server/policy.js +0 -20
  639. package/dist/services/server/policy.js.map +0 -1
  640. package/dist/services/server/policy.mjs +0 -20
  641. package/dist/services/server/policy.mjs.map +0 -1
  642. package/dist/services/server/register-middlewares.js +0 -72
  643. package/dist/services/server/register-middlewares.js.map +0 -1
  644. package/dist/services/server/register-middlewares.mjs +0 -73
  645. package/dist/services/server/register-middlewares.mjs.map +0 -1
  646. package/dist/services/server/register-routes.js +0 -76
  647. package/dist/services/server/register-routes.js.map +0 -1
  648. package/dist/services/server/register-routes.mjs +0 -75
  649. package/dist/services/server/register-routes.mjs.map +0 -1
  650. package/dist/services/server/routing.js +0 -91
  651. package/dist/services/server/routing.js.map +0 -1
  652. package/dist/services/server/routing.mjs +0 -89
  653. package/dist/services/server/routing.mjs.map +0 -1
  654. package/dist/services/utils/dynamic-zones.js +0 -17
  655. package/dist/services/utils/dynamic-zones.js.map +0 -1
  656. package/dist/services/utils/dynamic-zones.mjs +0 -18
  657. package/dist/services/utils/dynamic-zones.mjs.map +0 -1
  658. package/dist/services/webhook-runner.js +0 -133
  659. package/dist/services/webhook-runner.js.map +0 -1
  660. package/dist/services/webhook-runner.mjs +0 -131
  661. package/dist/services/webhook-runner.mjs.map +0 -1
  662. package/dist/services/webhook-store.js +0 -110
  663. package/dist/services/webhook-store.js.map +0 -1
  664. package/dist/services/webhook-store.mjs +0 -110
  665. package/dist/services/webhook-store.mjs.map +0 -1
  666. package/dist/services/worker-queue.js +0 -56
  667. package/dist/services/worker-queue.js.map +0 -1
  668. package/dist/services/worker-queue.mjs +0 -55
  669. package/dist/services/worker-queue.mjs.map +0 -1
  670. package/dist/utils/convert-custom-field-type.js +0 -24
  671. package/dist/utils/convert-custom-field-type.js.map +0 -1
  672. package/dist/utils/convert-custom-field-type.mjs +0 -24
  673. package/dist/utils/convert-custom-field-type.mjs.map +0 -1
  674. package/dist/utils/cron.js +0 -38
  675. package/dist/utils/cron.js.map +0 -1
  676. package/dist/utils/cron.mjs +0 -38
  677. package/dist/utils/cron.mjs.map +0 -1
  678. package/dist/utils/fetch.js +0 -20
  679. package/dist/utils/fetch.js.map +0 -1
  680. package/dist/utils/fetch.mjs +0 -20
  681. package/dist/utils/fetch.mjs.map +0 -1
  682. package/dist/utils/filepath-to-prop-path.js +0 -12
  683. package/dist/utils/filepath-to-prop-path.js.map +0 -1
  684. package/dist/utils/filepath-to-prop-path.mjs +0 -10
  685. package/dist/utils/filepath-to-prop-path.mjs.map +0 -1
  686. package/dist/utils/is-initialized.js +0 -16
  687. package/dist/utils/is-initialized.js.map +0 -1
  688. package/dist/utils/is-initialized.mjs +0 -16
  689. package/dist/utils/is-initialized.mjs.map +0 -1
  690. package/dist/utils/lifecycles.js +0 -9
  691. package/dist/utils/lifecycles.js.map +0 -1
  692. package/dist/utils/lifecycles.mjs +0 -9
  693. package/dist/utils/lifecycles.mjs.map +0 -1
  694. package/dist/utils/load-config-file.js +0 -45
  695. package/dist/utils/load-config-file.js.map +0 -1
  696. package/dist/utils/load-config-file.mjs +0 -42
  697. package/dist/utils/load-config-file.mjs.map +0 -1
  698. package/dist/utils/load-files.js +0 -39
  699. package/dist/utils/load-files.js.map +0 -1
  700. package/dist/utils/load-files.mjs +0 -35
  701. package/dist/utils/load-files.mjs.map +0 -1
  702. package/dist/utils/open-browser.js +0 -11
  703. package/dist/utils/open-browser.js.map +0 -1
  704. package/dist/utils/open-browser.mjs +0 -9
  705. package/dist/utils/open-browser.mjs.map +0 -1
  706. package/dist/utils/resolve-working-dirs.js +0 -13
  707. package/dist/utils/resolve-working-dirs.js.map +0 -1
  708. package/dist/utils/resolve-working-dirs.mjs +0 -11
  709. package/dist/utils/resolve-working-dirs.mjs.map +0 -1
  710. package/dist/utils/signals.js +0 -17
  711. package/dist/utils/signals.js.map +0 -1
  712. package/dist/utils/signals.mjs +0 -17
  713. package/dist/utils/signals.mjs.map +0 -1
  714. package/dist/utils/startup-logger.js +0 -81
  715. package/dist/utils/startup-logger.js.map +0 -1
  716. package/dist/utils/startup-logger.mjs +0 -77
  717. package/dist/utils/startup-logger.mjs.map +0 -1
  718. package/dist/utils/transform-content-types-to-models.js +0 -275
  719. package/dist/utils/transform-content-types-to-models.js.map +0 -1
  720. package/dist/utils/transform-content-types-to-models.mjs +0 -272
  721. package/dist/utils/transform-content-types-to-models.mjs.map +0 -1
  722. package/dist/utils/update-notifier/index.js +0 -85
  723. package/dist/utils/update-notifier/index.js.map +0 -1
  724. package/dist/utils/update-notifier/index.mjs +0 -78
  725. package/dist/utils/update-notifier/index.mjs.map +0 -1
@@ -1,71 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const _ = require("lodash/fp");
4
- const helmet = require("koa-helmet");
5
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
6
- const helmet__default = /* @__PURE__ */ _interopDefault(helmet);
7
- const defaults = {
8
- crossOriginEmbedderPolicy: false,
9
- crossOriginOpenerPolicy: false,
10
- crossOriginResourcePolicy: false,
11
- originAgentCluster: false,
12
- contentSecurityPolicy: {
13
- useDefaults: true,
14
- directives: {
15
- "connect-src": ["'self'", "https:"],
16
- "img-src": ["'self'", "data:", "blob:", "https://market-assets.strapi.io"],
17
- "media-src": ["'self'", "data:", "blob:"],
18
- upgradeInsecureRequests: null
19
- }
20
- },
21
- xssFilter: false,
22
- hsts: {
23
- maxAge: 31536e3,
24
- includeSubDomains: true
25
- },
26
- frameguard: {
27
- action: "sameorigin"
28
- }
29
- };
30
- const security = (config, { strapi }) => (ctx, next) => {
31
- let helmetConfig = _.defaultsDeep(defaults, config);
32
- const specialPaths = ["/documentation"];
33
- const directives = {
34
- "script-src": ["'self'", "'unsafe-inline'", "cdn.jsdelivr.net"],
35
- "img-src": ["'self'", "data:", "cdn.jsdelivr.net", "strapi.io"],
36
- "manifest-src": [],
37
- "frame-src": []
38
- };
39
- if (strapi.plugin("graphql")?.service("utils").playground.isEnabled()) {
40
- const { config: gqlConfig } = strapi.plugin("graphql");
41
- specialPaths.push(gqlConfig("endpoint"));
42
- directives["script-src"].push(`https: 'unsafe-inline'`);
43
- directives["img-src"].push(`'apollo-server-landing-page.cdn.apollographql.com'`);
44
- directives["manifest-src"].push(`'self'`);
45
- directives["manifest-src"].push("apollo-server-landing-page.cdn.apollographql.com");
46
- directives["frame-src"].push(`'self'`);
47
- directives["frame-src"].push("sandbox.embed.apollographql.com");
48
- }
49
- if (ctx.method === "GET" && specialPaths.some((str) => ctx.path.startsWith(str))) {
50
- helmetConfig = _.merge(helmetConfig, {
51
- crossOriginEmbedderPolicy: false,
52
- // TODO: only use this for graphql playground
53
- contentSecurityPolicy: {
54
- directives
55
- }
56
- });
57
- }
58
- if (process.env.NODE_ENV === "development" && ctx.method === "GET" && ["/admin"].some((str) => ctx.path.startsWith(str))) {
59
- helmetConfig = _.merge(helmetConfig, {
60
- contentSecurityPolicy: {
61
- directives: {
62
- "script-src": ["'self'", "'unsafe-inline'"],
63
- "connect-src": ["'self'", "http:", "https:", "ws:"]
64
- }
65
- }
66
- });
67
- }
68
- return helmet__default.default(helmetConfig)(ctx, next);
69
- };
70
- exports.security = security;
71
- //# sourceMappingURL=security.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"security.js","sources":["../../src/middlewares/security.ts"],"sourcesContent":["import { defaultsDeep, merge } from 'lodash/fp';\nimport helmet, { KoaHelmet } from 'koa-helmet';\n\nimport type { Core } from '@strapi/types';\n\nexport type Config = NonNullable<Parameters<KoaHelmet>[0]>;\n\nconst defaults: Config = {\n crossOriginEmbedderPolicy: false,\n crossOriginOpenerPolicy: false,\n crossOriginResourcePolicy: false,\n originAgentCluster: false,\n contentSecurityPolicy: {\n useDefaults: true,\n directives: {\n 'connect-src': [\"'self'\", 'https:'],\n 'img-src': [\"'self'\", 'data:', 'blob:', 'https://market-assets.strapi.io'],\n 'media-src': [\"'self'\", 'data:', 'blob:'],\n upgradeInsecureRequests: null,\n },\n },\n xssFilter: false,\n hsts: {\n maxAge: 31536000,\n includeSubDomains: true,\n },\n frameguard: {\n action: 'sameorigin',\n },\n};\n\nexport const security: Core.MiddlewareFactory<Config> =\n (config, { strapi }) =>\n (ctx, next) => {\n let helmetConfig: Config = defaultsDeep(defaults, config);\n\n const specialPaths = ['/documentation'];\n\n const directives: {\n 'script-src': string[];\n 'img-src': string[];\n 'manifest-src': string[];\n 'frame-src': string[];\n } = {\n 'script-src': [\"'self'\", \"'unsafe-inline'\", 'cdn.jsdelivr.net'],\n 'img-src': [\"'self'\", 'data:', 'cdn.jsdelivr.net', 'strapi.io'],\n 'manifest-src': [],\n 'frame-src': [],\n };\n\n // if apollo graphql playground is enabled, add exceptions for it\n if (strapi.plugin('graphql')?.service('utils').playground.isEnabled()) {\n const { config: gqlConfig } = strapi.plugin('graphql');\n specialPaths.push(gqlConfig('endpoint'));\n\n directives['script-src'].push(`https: 'unsafe-inline'`);\n directives['img-src'].push(`'apollo-server-landing-page.cdn.apollographql.com'`);\n directives['manifest-src'].push(`'self'`);\n directives['manifest-src'].push('apollo-server-landing-page.cdn.apollographql.com');\n directives['frame-src'].push(`'self'`);\n directives['frame-src'].push('sandbox.embed.apollographql.com');\n }\n\n // TODO: we shouldn't combine playground exceptions with documentation for all routes, we should first check the path and then return exceptions specific to that\n if (ctx.method === 'GET' && specialPaths.some((str) => ctx.path.startsWith(str))) {\n helmetConfig = merge(helmetConfig, {\n crossOriginEmbedderPolicy: false, // TODO: only use this for graphql playground\n contentSecurityPolicy: {\n directives,\n },\n });\n }\n\n /**\n * These are for vite's watch mode so it can accurately\n * connect to the HMR websocket & reconnect on failure\n * or when the server restarts.\n *\n * It only applies in development, and only on GET requests\n * that are part of the admin route.\n */\n if (\n process.env.NODE_ENV === 'development' &&\n ctx.method === 'GET' &&\n ['/admin'].some((str) => ctx.path.startsWith(str))\n ) {\n helmetConfig = merge(helmetConfig, {\n contentSecurityPolicy: {\n directives: {\n 'script-src': [\"'self'\", \"'unsafe-inline'\"],\n 'connect-src': [\"'self'\", 'http:', 'https:', 'ws:'],\n },\n },\n });\n }\n\n return helmet(helmetConfig)(ctx, next);\n };\n"],"names":["defaultsDeep","merge","helmet"],"mappings":";;;;;;AAOA,MAAM,WAAmB;AAAA,EACvB,2BAA2B;AAAA,EAC3B,yBAAyB;AAAA,EACzB,2BAA2B;AAAA,EAC3B,oBAAoB;AAAA,EACpB,uBAAuB;AAAA,IACrB,aAAa;AAAA,IACb,YAAY;AAAA,MACV,eAAe,CAAC,UAAU,QAAQ;AAAA,MAClC,WAAW,CAAC,UAAU,SAAS,SAAS,iCAAiC;AAAA,MACzE,aAAa,CAAC,UAAU,SAAS,OAAO;AAAA,MACxC,yBAAyB;AAAA,IAC3B;AAAA,EACF;AAAA,EACA,WAAW;AAAA,EACX,MAAM;AAAA,IACJ,QAAQ;AAAA,IACR,mBAAmB;AAAA,EACrB;AAAA,EACA,YAAY;AAAA,IACV,QAAQ;AAAA,EACV;AACF;AAEa,MAAA,WACX,CAAC,QAAQ,EAAE,aACX,CAAC,KAAK,SAAS;AACT,MAAA,eAAuBA,EAAAA,aAAa,UAAU,MAAM;AAElD,QAAA,eAAe,CAAC,gBAAgB;AAEtC,QAAM,aAKF;AAAA,IACF,cAAc,CAAC,UAAU,mBAAmB,kBAAkB;AAAA,IAC9D,WAAW,CAAC,UAAU,SAAS,oBAAoB,WAAW;AAAA,IAC9D,gBAAgB,CAAC;AAAA,IACjB,aAAa,CAAC;AAAA,EAAA;AAIZ,MAAA,OAAO,OAAO,SAAS,GAAG,QAAQ,OAAO,EAAE,WAAW,aAAa;AACrE,UAAM,EAAE,QAAQ,UAAA,IAAc,OAAO,OAAO,SAAS;AACxC,iBAAA,KAAK,UAAU,UAAU,CAAC;AAE5B,eAAA,YAAY,EAAE,KAAK,wBAAwB;AAC3C,eAAA,SAAS,EAAE,KAAK,oDAAoD;AACpE,eAAA,cAAc,EAAE,KAAK,QAAQ;AAC7B,eAAA,cAAc,EAAE,KAAK,kDAAkD;AACvE,eAAA,WAAW,EAAE,KAAK,QAAQ;AAC1B,eAAA,WAAW,EAAE,KAAK,iCAAiC;AAAA,EAChE;AAGA,MAAI,IAAI,WAAW,SAAS,aAAa,KAAK,CAAC,QAAQ,IAAI,KAAK,WAAW,GAAG,CAAC,GAAG;AAChF,mBAAeC,QAAM,cAAc;AAAA,MACjC,2BAA2B;AAAA;AAAA,MAC3B,uBAAuB;AAAA,QACrB;AAAA,MACF;AAAA,IAAA,CACD;AAAA,EACH;AAUA,MACE,QAAQ,IAAI,aAAa,iBACzB,IAAI,WAAW,SACf,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK,WAAW,GAAG,CAAC,GACjD;AACA,mBAAeA,QAAM,cAAc;AAAA,MACjC,uBAAuB;AAAA,QACrB,YAAY;AAAA,UACV,cAAc,CAAC,UAAU,iBAAiB;AAAA,UAC1C,eAAe,CAAC,UAAU,SAAS,UAAU,KAAK;AAAA,QACpD;AAAA,MACF;AAAA,IAAA,CACD;AAAA,EACH;AAEA,SAAOC,gBAAO,QAAA,YAAY,EAAE,KAAK,IAAI;AACvC;;"}
@@ -1,69 +0,0 @@
1
- import { defaultsDeep, merge } from "lodash/fp";
2
- import helmet from "koa-helmet";
3
- const defaults = {
4
- crossOriginEmbedderPolicy: false,
5
- crossOriginOpenerPolicy: false,
6
- crossOriginResourcePolicy: false,
7
- originAgentCluster: false,
8
- contentSecurityPolicy: {
9
- useDefaults: true,
10
- directives: {
11
- "connect-src": ["'self'", "https:"],
12
- "img-src": ["'self'", "data:", "blob:", "https://market-assets.strapi.io"],
13
- "media-src": ["'self'", "data:", "blob:"],
14
- upgradeInsecureRequests: null
15
- }
16
- },
17
- xssFilter: false,
18
- hsts: {
19
- maxAge: 31536e3,
20
- includeSubDomains: true
21
- },
22
- frameguard: {
23
- action: "sameorigin"
24
- }
25
- };
26
- const security = (config, { strapi }) => (ctx, next) => {
27
- let helmetConfig = defaultsDeep(defaults, config);
28
- const specialPaths = ["/documentation"];
29
- const directives = {
30
- "script-src": ["'self'", "'unsafe-inline'", "cdn.jsdelivr.net"],
31
- "img-src": ["'self'", "data:", "cdn.jsdelivr.net", "strapi.io"],
32
- "manifest-src": [],
33
- "frame-src": []
34
- };
35
- if (strapi.plugin("graphql")?.service("utils").playground.isEnabled()) {
36
- const { config: gqlConfig } = strapi.plugin("graphql");
37
- specialPaths.push(gqlConfig("endpoint"));
38
- directives["script-src"].push(`https: 'unsafe-inline'`);
39
- directives["img-src"].push(`'apollo-server-landing-page.cdn.apollographql.com'`);
40
- directives["manifest-src"].push(`'self'`);
41
- directives["manifest-src"].push("apollo-server-landing-page.cdn.apollographql.com");
42
- directives["frame-src"].push(`'self'`);
43
- directives["frame-src"].push("sandbox.embed.apollographql.com");
44
- }
45
- if (ctx.method === "GET" && specialPaths.some((str) => ctx.path.startsWith(str))) {
46
- helmetConfig = merge(helmetConfig, {
47
- crossOriginEmbedderPolicy: false,
48
- // TODO: only use this for graphql playground
49
- contentSecurityPolicy: {
50
- directives
51
- }
52
- });
53
- }
54
- if (process.env.NODE_ENV === "development" && ctx.method === "GET" && ["/admin"].some((str) => ctx.path.startsWith(str))) {
55
- helmetConfig = merge(helmetConfig, {
56
- contentSecurityPolicy: {
57
- directives: {
58
- "script-src": ["'self'", "'unsafe-inline'"],
59
- "connect-src": ["'self'", "http:", "https:", "ws:"]
60
- }
61
- }
62
- });
63
- }
64
- return helmet(helmetConfig)(ctx, next);
65
- };
66
- export {
67
- security
68
- };
69
- //# sourceMappingURL=security.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"security.mjs","sources":["../../src/middlewares/security.ts"],"sourcesContent":["import { defaultsDeep, merge } from 'lodash/fp';\nimport helmet, { KoaHelmet } from 'koa-helmet';\n\nimport type { Core } from '@strapi/types';\n\nexport type Config = NonNullable<Parameters<KoaHelmet>[0]>;\n\nconst defaults: Config = {\n crossOriginEmbedderPolicy: false,\n crossOriginOpenerPolicy: false,\n crossOriginResourcePolicy: false,\n originAgentCluster: false,\n contentSecurityPolicy: {\n useDefaults: true,\n directives: {\n 'connect-src': [\"'self'\", 'https:'],\n 'img-src': [\"'self'\", 'data:', 'blob:', 'https://market-assets.strapi.io'],\n 'media-src': [\"'self'\", 'data:', 'blob:'],\n upgradeInsecureRequests: null,\n },\n },\n xssFilter: false,\n hsts: {\n maxAge: 31536000,\n includeSubDomains: true,\n },\n frameguard: {\n action: 'sameorigin',\n },\n};\n\nexport const security: Core.MiddlewareFactory<Config> =\n (config, { strapi }) =>\n (ctx, next) => {\n let helmetConfig: Config = defaultsDeep(defaults, config);\n\n const specialPaths = ['/documentation'];\n\n const directives: {\n 'script-src': string[];\n 'img-src': string[];\n 'manifest-src': string[];\n 'frame-src': string[];\n } = {\n 'script-src': [\"'self'\", \"'unsafe-inline'\", 'cdn.jsdelivr.net'],\n 'img-src': [\"'self'\", 'data:', 'cdn.jsdelivr.net', 'strapi.io'],\n 'manifest-src': [],\n 'frame-src': [],\n };\n\n // if apollo graphql playground is enabled, add exceptions for it\n if (strapi.plugin('graphql')?.service('utils').playground.isEnabled()) {\n const { config: gqlConfig } = strapi.plugin('graphql');\n specialPaths.push(gqlConfig('endpoint'));\n\n directives['script-src'].push(`https: 'unsafe-inline'`);\n directives['img-src'].push(`'apollo-server-landing-page.cdn.apollographql.com'`);\n directives['manifest-src'].push(`'self'`);\n directives['manifest-src'].push('apollo-server-landing-page.cdn.apollographql.com');\n directives['frame-src'].push(`'self'`);\n directives['frame-src'].push('sandbox.embed.apollographql.com');\n }\n\n // TODO: we shouldn't combine playground exceptions with documentation for all routes, we should first check the path and then return exceptions specific to that\n if (ctx.method === 'GET' && specialPaths.some((str) => ctx.path.startsWith(str))) {\n helmetConfig = merge(helmetConfig, {\n crossOriginEmbedderPolicy: false, // TODO: only use this for graphql playground\n contentSecurityPolicy: {\n directives,\n },\n });\n }\n\n /**\n * These are for vite's watch mode so it can accurately\n * connect to the HMR websocket & reconnect on failure\n * or when the server restarts.\n *\n * It only applies in development, and only on GET requests\n * that are part of the admin route.\n */\n if (\n process.env.NODE_ENV === 'development' &&\n ctx.method === 'GET' &&\n ['/admin'].some((str) => ctx.path.startsWith(str))\n ) {\n helmetConfig = merge(helmetConfig, {\n contentSecurityPolicy: {\n directives: {\n 'script-src': [\"'self'\", \"'unsafe-inline'\"],\n 'connect-src': [\"'self'\", 'http:', 'https:', 'ws:'],\n },\n },\n });\n }\n\n return helmet(helmetConfig)(ctx, next);\n };\n"],"names":[],"mappings":";;AAOA,MAAM,WAAmB;AAAA,EACvB,2BAA2B;AAAA,EAC3B,yBAAyB;AAAA,EACzB,2BAA2B;AAAA,EAC3B,oBAAoB;AAAA,EACpB,uBAAuB;AAAA,IACrB,aAAa;AAAA,IACb,YAAY;AAAA,MACV,eAAe,CAAC,UAAU,QAAQ;AAAA,MAClC,WAAW,CAAC,UAAU,SAAS,SAAS,iCAAiC;AAAA,MACzE,aAAa,CAAC,UAAU,SAAS,OAAO;AAAA,MACxC,yBAAyB;AAAA,IAC3B;AAAA,EACF;AAAA,EACA,WAAW;AAAA,EACX,MAAM;AAAA,IACJ,QAAQ;AAAA,IACR,mBAAmB;AAAA,EACrB;AAAA,EACA,YAAY;AAAA,IACV,QAAQ;AAAA,EACV;AACF;AAEa,MAAA,WACX,CAAC,QAAQ,EAAE,aACX,CAAC,KAAK,SAAS;AACT,MAAA,eAAuB,aAAa,UAAU,MAAM;AAElD,QAAA,eAAe,CAAC,gBAAgB;AAEtC,QAAM,aAKF;AAAA,IACF,cAAc,CAAC,UAAU,mBAAmB,kBAAkB;AAAA,IAC9D,WAAW,CAAC,UAAU,SAAS,oBAAoB,WAAW;AAAA,IAC9D,gBAAgB,CAAC;AAAA,IACjB,aAAa,CAAC;AAAA,EAAA;AAIZ,MAAA,OAAO,OAAO,SAAS,GAAG,QAAQ,OAAO,EAAE,WAAW,aAAa;AACrE,UAAM,EAAE,QAAQ,UAAA,IAAc,OAAO,OAAO,SAAS;AACxC,iBAAA,KAAK,UAAU,UAAU,CAAC;AAE5B,eAAA,YAAY,EAAE,KAAK,wBAAwB;AAC3C,eAAA,SAAS,EAAE,KAAK,oDAAoD;AACpE,eAAA,cAAc,EAAE,KAAK,QAAQ;AAC7B,eAAA,cAAc,EAAE,KAAK,kDAAkD;AACvE,eAAA,WAAW,EAAE,KAAK,QAAQ;AAC1B,eAAA,WAAW,EAAE,KAAK,iCAAiC;AAAA,EAChE;AAGA,MAAI,IAAI,WAAW,SAAS,aAAa,KAAK,CAAC,QAAQ,IAAI,KAAK,WAAW,GAAG,CAAC,GAAG;AAChF,mBAAe,MAAM,cAAc;AAAA,MACjC,2BAA2B;AAAA;AAAA,MAC3B,uBAAuB;AAAA,QACrB;AAAA,MACF;AAAA,IAAA,CACD;AAAA,EACH;AAUA,MACE,QAAQ,IAAI,aAAa,iBACzB,IAAI,WAAW,SACf,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK,WAAW,GAAG,CAAC,GACjD;AACA,mBAAe,MAAM,cAAc;AAAA,MACjC,uBAAuB;AAAA,QACrB,YAAY;AAAA,UACV,cAAc,CAAC,UAAU,iBAAiB;AAAA,UAC1C,eAAe,CAAC,UAAU,SAAS,UAAU,KAAK;AAAA,QACpD;AAAA,MACF;AAAA,IAAA,CACD;AAAA,EACH;AAEA,SAAO,OAAO,YAAY,EAAE,KAAK,IAAI;AACvC;"}
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const _ = require("lodash/fp");
4
- const koaSession = require("koa-session");
5
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
6
- const koaSession__default = /* @__PURE__ */ _interopDefault(koaSession);
7
- const defaultConfig = {
8
- key: "koa.sess",
9
- maxAge: 864e5,
10
- autoCommit: true,
11
- overwrite: true,
12
- httpOnly: true,
13
- signed: true,
14
- rolling: false,
15
- renew: false,
16
- secure: process.env.NODE_ENV === "production",
17
- sameSite: void 0
18
- };
19
- const session = (userConfig, { strapi }) => {
20
- const { keys } = strapi.server.app;
21
- if (!_.isArray(keys) || _.isEmpty(keys) || keys.some(_.isEmpty)) {
22
- throw new Error(
23
- `App keys are required. Please set app.keys in config/server.js (ex: keys: ['myKeyA', 'myKeyB'])`
24
- );
25
- }
26
- const config = { ...defaultConfig, ...userConfig };
27
- strapi.server.use(koaSession__default.default(config, strapi.server.app));
28
- };
29
- exports.session = session;
30
- //# sourceMappingURL=session.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session.js","sources":["../../src/middlewares/session.ts"],"sourcesContent":["import { isEmpty, isArray } from 'lodash/fp';\nimport koaSession from 'koa-session';\nimport type { Core } from '@strapi/types';\n\nconst defaultConfig = {\n key: 'koa.sess',\n maxAge: 86400000,\n autoCommit: true,\n overwrite: true,\n httpOnly: true,\n signed: true,\n rolling: false,\n renew: false,\n secure: process.env.NODE_ENV === 'production',\n sameSite: undefined,\n};\n\nexport const session: Core.MiddlewareFactory<Partial<koaSession.opts>> = (\n userConfig,\n { strapi }\n) => {\n const { keys } = strapi.server.app;\n if (!isArray(keys) || isEmpty(keys) || keys.some(isEmpty)) {\n throw new Error(\n `App keys are required. Please set app.keys in config/server.js (ex: keys: ['myKeyA', 'myKeyB'])`\n );\n }\n\n const config: Partial<koaSession.opts> = { ...defaultConfig, ...userConfig };\n\n strapi.server.use(koaSession(config, strapi.server.app));\n};\n"],"names":["isArray","isEmpty","koaSession"],"mappings":";;;;;;AAIA,MAAM,gBAAgB;AAAA,EACpB,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,OAAO;AAAA,EACP,QAAQ,QAAQ,IAAI,aAAa;AAAA,EACjC,UAAU;AACZ;AAEO,MAAM,UAA4D,CACvE,YACA,EAAE,aACC;AACH,QAAM,EAAE,KAAS,IAAA,OAAO,OAAO;AAC3B,MAAA,CAACA,EAAAA,QAAQ,IAAI,KAAKC,EAAA,QAAQ,IAAI,KAAK,KAAK,KAAKA,EAAAA,OAAO,GAAG;AACzD,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAAA,EAEJ;AAEA,QAAM,SAAmC,EAAE,GAAG,eAAe,GAAG,WAAW;AAE3E,SAAO,OAAO,IAAIC,oBAAA,QAAW,QAAQ,OAAO,OAAO,GAAG,CAAC;AACzD;;"}
@@ -1,28 +0,0 @@
1
- import { isArray, isEmpty } from "lodash/fp";
2
- import koaSession from "koa-session";
3
- const defaultConfig = {
4
- key: "koa.sess",
5
- maxAge: 864e5,
6
- autoCommit: true,
7
- overwrite: true,
8
- httpOnly: true,
9
- signed: true,
10
- rolling: false,
11
- renew: false,
12
- secure: process.env.NODE_ENV === "production",
13
- sameSite: void 0
14
- };
15
- const session = (userConfig, { strapi }) => {
16
- const { keys } = strapi.server.app;
17
- if (!isArray(keys) || isEmpty(keys) || keys.some(isEmpty)) {
18
- throw new Error(
19
- `App keys are required. Please set app.keys in config/server.js (ex: keys: ['myKeyA', 'myKeyB'])`
20
- );
21
- }
22
- const config = { ...defaultConfig, ...userConfig };
23
- strapi.server.use(koaSession(config, strapi.server.app));
24
- };
25
- export {
26
- session
27
- };
28
- //# sourceMappingURL=session.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session.mjs","sources":["../../src/middlewares/session.ts"],"sourcesContent":["import { isEmpty, isArray } from 'lodash/fp';\nimport koaSession from 'koa-session';\nimport type { Core } from '@strapi/types';\n\nconst defaultConfig = {\n key: 'koa.sess',\n maxAge: 86400000,\n autoCommit: true,\n overwrite: true,\n httpOnly: true,\n signed: true,\n rolling: false,\n renew: false,\n secure: process.env.NODE_ENV === 'production',\n sameSite: undefined,\n};\n\nexport const session: Core.MiddlewareFactory<Partial<koaSession.opts>> = (\n userConfig,\n { strapi }\n) => {\n const { keys } = strapi.server.app;\n if (!isArray(keys) || isEmpty(keys) || keys.some(isEmpty)) {\n throw new Error(\n `App keys are required. Please set app.keys in config/server.js (ex: keys: ['myKeyA', 'myKeyB'])`\n );\n }\n\n const config: Partial<koaSession.opts> = { ...defaultConfig, ...userConfig };\n\n strapi.server.use(koaSession(config, strapi.server.app));\n};\n"],"names":[],"mappings":";;AAIA,MAAM,gBAAgB;AAAA,EACpB,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,OAAO;AAAA,EACP,QAAQ,QAAQ,IAAI,aAAa;AAAA,EACjC,UAAU;AACZ;AAEO,MAAM,UAA4D,CACvE,YACA,EAAE,aACC;AACH,QAAM,EAAE,KAAS,IAAA,OAAO,OAAO;AAC3B,MAAA,CAAC,QAAQ,IAAI,KAAK,QAAQ,IAAI,KAAK,KAAK,KAAK,OAAO,GAAG;AACzD,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAAA,EAEJ;AAEA,QAAM,SAAmC,EAAE,GAAG,eAAe,GAAG,WAAW;AAE3E,SAAO,OAAO,IAAI,WAAW,QAAQ,OAAO,OAAO,GAAG,CAAC;AACzD;"}
@@ -1,50 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const strapiUtils = require("@strapi/utils");
4
- async function* getBatchToDiscard({
5
- db,
6
- trx,
7
- uid,
8
- batchSize = 1e3
9
- }) {
10
- let offset = 0;
11
- let hasMore = true;
12
- while (hasMore) {
13
- const batch = await db.queryBuilder(uid).select(["id", "documentId", "locale"]).where({ publishedAt: { $ne: null } }).limit(batchSize).offset(offset).orderBy("id").transacting(trx).execute();
14
- if (batch.length < batchSize) {
15
- hasMore = false;
16
- }
17
- offset += batchSize;
18
- yield batch;
19
- }
20
- }
21
- const migrateUp = async (trx, db) => {
22
- for (const meta of db.metadata.values()) {
23
- const hasTable = await trx.schema.hasTable(meta.tableName);
24
- if (!hasTable) {
25
- continue;
26
- }
27
- const uid = meta.uid;
28
- const model = strapi.getModel(uid);
29
- const hasDP = strapiUtils.contentTypes.hasDraftAndPublish(model);
30
- if (!hasDP) {
31
- continue;
32
- }
33
- const discardDraft = async (entry) => strapi.documents(uid).discardDraft({ documentId: entry.documentId, locale: entry.locale });
34
- for await (const batch of getBatchToDiscard({ db, trx, uid: meta.uid })) {
35
- await strapiUtils.async.map(batch, discardDraft, { concurrency: 10 });
36
- }
37
- }
38
- };
39
- const discardDocumentDrafts = {
40
- name: "core::5.0.0-discard-drafts",
41
- async up(trx, db) {
42
- await migrateUp(trx, db);
43
- },
44
- async down() {
45
- throw new Error("not implemented");
46
- }
47
- };
48
- exports.discardDocumentDrafts = discardDocumentDrafts;
49
- exports.getBatchToDiscard = getBatchToDiscard;
50
- //# sourceMappingURL=5.0.0-discard-drafts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"5.0.0-discard-drafts.js","sources":["../../../src/migrations/database/5.0.0-discard-drafts.ts"],"sourcesContent":["/* eslint-disable no-continue */\nimport type { UID } from '@strapi/types';\nimport type { Database, Migration } from '@strapi/database';\nimport { async, contentTypes } from '@strapi/utils';\n\ntype DocumentVersion = { documentId: string; locale: string };\ntype Knex = Parameters<Migration['up']>[0];\n\n/**\n * Load a batch of versions to discard.\n *\n * Versions with only a draft version will be ignored.\n * Only versions with a published version (which always have a draft version) will be discarded.\n */\nexport async function* getBatchToDiscard({\n db,\n trx,\n uid,\n batchSize = 1000,\n}: {\n db: Database;\n trx: Knex;\n uid: string;\n batchSize?: number;\n}) {\n let offset = 0;\n let hasMore = true;\n\n while (hasMore) {\n // Look for the published entries to discard\n const batch: DocumentVersion[] = await db\n .queryBuilder(uid)\n .select(['id', 'documentId', 'locale'])\n .where({ publishedAt: { $ne: null } })\n .limit(batchSize)\n .offset(offset)\n .orderBy('id')\n .transacting(trx)\n .execute();\n\n if (batch.length < batchSize) {\n hasMore = false;\n }\n\n offset += batchSize;\n yield batch;\n }\n}\n\nconst migrateUp = async (trx: Knex, db: Database) => {\n for (const meta of db.metadata.values()) {\n const hasTable = await trx.schema.hasTable(meta.tableName);\n\n if (!hasTable) {\n continue;\n }\n\n const uid = meta.uid as UID.ContentType;\n const model = strapi.getModel(uid);\n const hasDP = contentTypes.hasDraftAndPublish(model);\n if (!hasDP) {\n continue;\n }\n\n const discardDraft = async (entry: DocumentVersion) =>\n strapi\n .documents(uid)\n // Discard draft by referencing the documentId and locale\n .discardDraft({ documentId: entry.documentId, locale: entry.locale });\n\n /**\n * Load a batch of entries (batched to prevent loading millions of rows at once ),\n * and discard them using the document service.\n */\n for await (const batch of getBatchToDiscard({ db, trx, uid: meta.uid })) {\n await async.map(batch, discardDraft, { concurrency: 10 });\n }\n }\n};\n\n/**\n * On V4 there was no concept of document, and an entry could be in a draft or published state.\n * But not both at the same time.\n *\n * On V5 we introduced the concept of document, and an entry can be in a draft or published state,\n * with the requirement that a document must always have a draft.\n *\n * This migration creates the document draft counterpart for all the entries that were in a published state.\n */\nexport const discardDocumentDrafts: Migration = {\n name: 'core::5.0.0-discard-drafts',\n async up(trx, db) {\n // TODO: Log to inform the user that the migration is running in the background\n await migrateUp(trx, db);\n },\n async down() {\n throw new Error('not implemented');\n },\n};\n"],"names":["contentTypes","async"],"mappings":";;;AAcA,gBAAuB,kBAAkB;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AACd,GAKG;AACD,MAAI,SAAS;AACb,MAAI,UAAU;AAEd,SAAO,SAAS;AAEd,UAAM,QAA2B,MAAM,GACpC,aAAa,GAAG,EAChB,OAAO,CAAC,MAAM,cAAc,QAAQ,CAAC,EACrC,MAAM,EAAE,aAAa,EAAE,KAAK,KAAO,EAAA,CAAC,EACpC,MAAM,SAAS,EACf,OAAO,MAAM,EACb,QAAQ,IAAI,EACZ,YAAY,GAAG,EACf,QAAQ;AAEP,QAAA,MAAM,SAAS,WAAW;AAClB,gBAAA;AAAA,IACZ;AAEU,cAAA;AACJ,UAAA;AAAA,EACR;AACF;AAEA,MAAM,YAAY,OAAO,KAAW,OAAiB;AACnD,aAAW,QAAQ,GAAG,SAAS,OAAA,GAAU;AACvC,UAAM,WAAW,MAAM,IAAI,OAAO,SAAS,KAAK,SAAS;AAEzD,QAAI,CAAC,UAAU;AACb;AAAA,IACF;AAEA,UAAM,MAAM,KAAK;AACX,UAAA,QAAQ,OAAO,SAAS,GAAG;AAC3B,UAAA,QAAQA,YAAAA,aAAa,mBAAmB,KAAK;AACnD,QAAI,CAAC,OAAO;AACV;AAAA,IACF;AAEA,UAAM,eAAe,OAAO,UAC1B,OACG,UAAU,GAAG,EAEb,aAAa,EAAE,YAAY,MAAM,YAAY,QAAQ,MAAM,QAAQ;AAMvD,qBAAA,SAAS,kBAAkB,EAAE,IAAI,KAAK,KAAK,KAAK,IAAI,CAAC,GAAG;AACvE,YAAMC,YAAAA,MAAM,IAAI,OAAO,cAAc,EAAE,aAAa,IAAI;AAAA,IAC1D;AAAA,EACF;AACF;AAWO,MAAM,wBAAmC;AAAA,EAC9C,MAAM;AAAA,EACN,MAAM,GAAG,KAAK,IAAI;AAEV,UAAA,UAAU,KAAK,EAAE;AAAA,EACzB;AAAA,EACA,MAAM,OAAO;AACL,UAAA,IAAI,MAAM,iBAAiB;AAAA,EACnC;AACF;;;"}
@@ -1,50 +0,0 @@
1
- import { contentTypes, async } from "@strapi/utils";
2
- async function* getBatchToDiscard({
3
- db,
4
- trx,
5
- uid,
6
- batchSize = 1e3
7
- }) {
8
- let offset = 0;
9
- let hasMore = true;
10
- while (hasMore) {
11
- const batch = await db.queryBuilder(uid).select(["id", "documentId", "locale"]).where({ publishedAt: { $ne: null } }).limit(batchSize).offset(offset).orderBy("id").transacting(trx).execute();
12
- if (batch.length < batchSize) {
13
- hasMore = false;
14
- }
15
- offset += batchSize;
16
- yield batch;
17
- }
18
- }
19
- const migrateUp = async (trx, db) => {
20
- for (const meta of db.metadata.values()) {
21
- const hasTable = await trx.schema.hasTable(meta.tableName);
22
- if (!hasTable) {
23
- continue;
24
- }
25
- const uid = meta.uid;
26
- const model = strapi.getModel(uid);
27
- const hasDP = contentTypes.hasDraftAndPublish(model);
28
- if (!hasDP) {
29
- continue;
30
- }
31
- const discardDraft = async (entry) => strapi.documents(uid).discardDraft({ documentId: entry.documentId, locale: entry.locale });
32
- for await (const batch of getBatchToDiscard({ db, trx, uid: meta.uid })) {
33
- await async.map(batch, discardDraft, { concurrency: 10 });
34
- }
35
- }
36
- };
37
- const discardDocumentDrafts = {
38
- name: "core::5.0.0-discard-drafts",
39
- async up(trx, db) {
40
- await migrateUp(trx, db);
41
- },
42
- async down() {
43
- throw new Error("not implemented");
44
- }
45
- };
46
- export {
47
- discardDocumentDrafts,
48
- getBatchToDiscard
49
- };
50
- //# sourceMappingURL=5.0.0-discard-drafts.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"5.0.0-discard-drafts.mjs","sources":["../../../src/migrations/database/5.0.0-discard-drafts.ts"],"sourcesContent":["/* eslint-disable no-continue */\nimport type { UID } from '@strapi/types';\nimport type { Database, Migration } from '@strapi/database';\nimport { async, contentTypes } from '@strapi/utils';\n\ntype DocumentVersion = { documentId: string; locale: string };\ntype Knex = Parameters<Migration['up']>[0];\n\n/**\n * Load a batch of versions to discard.\n *\n * Versions with only a draft version will be ignored.\n * Only versions with a published version (which always have a draft version) will be discarded.\n */\nexport async function* getBatchToDiscard({\n db,\n trx,\n uid,\n batchSize = 1000,\n}: {\n db: Database;\n trx: Knex;\n uid: string;\n batchSize?: number;\n}) {\n let offset = 0;\n let hasMore = true;\n\n while (hasMore) {\n // Look for the published entries to discard\n const batch: DocumentVersion[] = await db\n .queryBuilder(uid)\n .select(['id', 'documentId', 'locale'])\n .where({ publishedAt: { $ne: null } })\n .limit(batchSize)\n .offset(offset)\n .orderBy('id')\n .transacting(trx)\n .execute();\n\n if (batch.length < batchSize) {\n hasMore = false;\n }\n\n offset += batchSize;\n yield batch;\n }\n}\n\nconst migrateUp = async (trx: Knex, db: Database) => {\n for (const meta of db.metadata.values()) {\n const hasTable = await trx.schema.hasTable(meta.tableName);\n\n if (!hasTable) {\n continue;\n }\n\n const uid = meta.uid as UID.ContentType;\n const model = strapi.getModel(uid);\n const hasDP = contentTypes.hasDraftAndPublish(model);\n if (!hasDP) {\n continue;\n }\n\n const discardDraft = async (entry: DocumentVersion) =>\n strapi\n .documents(uid)\n // Discard draft by referencing the documentId and locale\n .discardDraft({ documentId: entry.documentId, locale: entry.locale });\n\n /**\n * Load a batch of entries (batched to prevent loading millions of rows at once ),\n * and discard them using the document service.\n */\n for await (const batch of getBatchToDiscard({ db, trx, uid: meta.uid })) {\n await async.map(batch, discardDraft, { concurrency: 10 });\n }\n }\n};\n\n/**\n * On V4 there was no concept of document, and an entry could be in a draft or published state.\n * But not both at the same time.\n *\n * On V5 we introduced the concept of document, and an entry can be in a draft or published state,\n * with the requirement that a document must always have a draft.\n *\n * This migration creates the document draft counterpart for all the entries that were in a published state.\n */\nexport const discardDocumentDrafts: Migration = {\n name: 'core::5.0.0-discard-drafts',\n async up(trx, db) {\n // TODO: Log to inform the user that the migration is running in the background\n await migrateUp(trx, db);\n },\n async down() {\n throw new Error('not implemented');\n },\n};\n"],"names":[],"mappings":";AAcA,gBAAuB,kBAAkB;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AACd,GAKG;AACD,MAAI,SAAS;AACb,MAAI,UAAU;AAEd,SAAO,SAAS;AAEd,UAAM,QAA2B,MAAM,GACpC,aAAa,GAAG,EAChB,OAAO,CAAC,MAAM,cAAc,QAAQ,CAAC,EACrC,MAAM,EAAE,aAAa,EAAE,KAAK,KAAO,EAAA,CAAC,EACpC,MAAM,SAAS,EACf,OAAO,MAAM,EACb,QAAQ,IAAI,EACZ,YAAY,GAAG,EACf,QAAQ;AAEP,QAAA,MAAM,SAAS,WAAW;AAClB,gBAAA;AAAA,IACZ;AAEU,cAAA;AACJ,UAAA;AAAA,EACR;AACF;AAEA,MAAM,YAAY,OAAO,KAAW,OAAiB;AACnD,aAAW,QAAQ,GAAG,SAAS,OAAA,GAAU;AACvC,UAAM,WAAW,MAAM,IAAI,OAAO,SAAS,KAAK,SAAS;AAEzD,QAAI,CAAC,UAAU;AACb;AAAA,IACF;AAEA,UAAM,MAAM,KAAK;AACX,UAAA,QAAQ,OAAO,SAAS,GAAG;AAC3B,UAAA,QAAQ,aAAa,mBAAmB,KAAK;AACnD,QAAI,CAAC,OAAO;AACV;AAAA,IACF;AAEA,UAAM,eAAe,OAAO,UAC1B,OACG,UAAU,GAAG,EAEb,aAAa,EAAE,YAAY,MAAM,YAAY,QAAQ,MAAM,QAAQ;AAMvD,qBAAA,SAAS,kBAAkB,EAAE,IAAI,KAAK,KAAK,KAAK,IAAI,CAAC,GAAG;AACvE,YAAM,MAAM,IAAI,OAAO,cAAc,EAAE,aAAa,IAAI;AAAA,IAC1D;AAAA,EACF;AACF;AAWO,MAAM,wBAAmC;AAAA,EAC9C,MAAM;AAAA,EACN,MAAM,GAAG,KAAK,IAAI;AAEV,UAAA,UAAU,KAAK,EAAE;AAAA,EACzB;AAAA,EACA,MAAM,OAAO;AACL,UAAA,IAAI,MAAM,iBAAiB;AAAA,EACnC;AACF;"}
@@ -1,42 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const strapiUtils = require("@strapi/utils");
4
- const _5_0_0DiscardDrafts = require("./database/5.0.0-discard-drafts.js");
5
- const enableDraftAndPublish = async ({ oldContentTypes, contentTypes }) => {
6
- if (!oldContentTypes) {
7
- return;
8
- }
9
- return strapi.db.transaction(async (trx) => {
10
- for (const uid in contentTypes) {
11
- if (!oldContentTypes[uid]) {
12
- continue;
13
- }
14
- const oldContentType = oldContentTypes[uid];
15
- const contentType = contentTypes[uid];
16
- if (!strapiUtils.contentTypes.hasDraftAndPublish(oldContentType) && strapiUtils.contentTypes.hasDraftAndPublish(contentType)) {
17
- const discardDraft = async (entry) => strapi.documents(uid).discardDraft({ documentId: entry.documentId, locale: entry.locale });
18
- for await (const batch of _5_0_0DiscardDrafts.getBatchToDiscard({ db: strapi.db, trx, uid })) {
19
- await strapiUtils.async.map(batch, discardDraft, { concurrency: 10 });
20
- }
21
- }
22
- }
23
- });
24
- };
25
- const disableDraftAndPublish = async ({ oldContentTypes, contentTypes }) => {
26
- if (!oldContentTypes) {
27
- return;
28
- }
29
- for (const uid in contentTypes) {
30
- if (!oldContentTypes[uid]) {
31
- continue;
32
- }
33
- const oldContentType = oldContentTypes[uid];
34
- const contentType = contentTypes[uid];
35
- if (strapiUtils.contentTypes.hasDraftAndPublish(oldContentType) && !strapiUtils.contentTypes.hasDraftAndPublish(contentType)) {
36
- await strapi.db?.queryBuilder(uid).delete().where({ published_at: null }).execute();
37
- }
38
- }
39
- };
40
- exports.disable = disableDraftAndPublish;
41
- exports.enable = enableDraftAndPublish;
42
- //# sourceMappingURL=draft-publish.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"draft-publish.js","sources":["../../src/migrations/draft-publish.ts"],"sourcesContent":["import { contentTypes as contentTypesUtils, async } from '@strapi/utils';\nimport { Schema } from '@strapi/types';\n\nimport { getBatchToDiscard } from './database/5.0.0-discard-drafts';\n\ninterface Input {\n oldContentTypes: Record<string, Schema.ContentType>;\n contentTypes: Record<string, Schema.ContentType>;\n}\n\n/**\n * Enable draft and publish for content types.\n *\n * Draft and publish disabled content types will have their entries published,\n * this migration clones those entries as drafts.\n *\n * TODO: Clone components, dynamic zones and relations\n */\nconst enableDraftAndPublish = async ({ oldContentTypes, contentTypes }: Input) => {\n if (!oldContentTypes) {\n return;\n }\n\n // run the after content types migrations\n return strapi.db.transaction(async (trx) => {\n for (const uid in contentTypes) {\n if (!oldContentTypes[uid]) {\n continue;\n }\n\n const oldContentType = oldContentTypes[uid];\n const contentType = contentTypes[uid];\n\n // if d&p was enabled set publishedAt to eq createdAt\n if (\n !contentTypesUtils.hasDraftAndPublish(oldContentType) &&\n contentTypesUtils.hasDraftAndPublish(contentType)\n ) {\n const discardDraft = async (entry: { documentId: string; locale: string }) =>\n strapi\n .documents(uid as any)\n // Discard draft by referencing the documentId and locale\n .discardDraft({ documentId: entry.documentId, locale: entry.locale });\n\n /**\n * Load a batch of entries (batched to prevent loading millions of rows at once ),\n * and discard them using the document service.\n */\n for await (const batch of getBatchToDiscard({ db: strapi.db, trx, uid })) {\n await async.map(batch, discardDraft, { concurrency: 10 });\n }\n }\n }\n });\n};\n\nconst disableDraftAndPublish = async ({ oldContentTypes, contentTypes }: Input) => {\n if (!oldContentTypes) {\n return;\n }\n\n for (const uid in contentTypes) {\n if (!oldContentTypes[uid]) {\n continue;\n }\n\n const oldContentType = oldContentTypes[uid];\n const contentType = contentTypes[uid];\n\n // if d&p was disabled remove unpublish content before sync\n if (\n contentTypesUtils.hasDraftAndPublish(oldContentType) &&\n !contentTypesUtils.hasDraftAndPublish(contentType)\n ) {\n await strapi.db?.queryBuilder(uid).delete().where({ published_at: null }).execute();\n }\n }\n};\n\nexport { enableDraftAndPublish as enable, disableDraftAndPublish as disable };\n"],"names":["contentTypesUtils","getBatchToDiscard","async"],"mappings":";;;;AAkBA,MAAM,wBAAwB,OAAO,EAAE,iBAAiB,mBAA0B;AAChF,MAAI,CAAC,iBAAiB;AACpB;AAAA,EACF;AAGA,SAAO,OAAO,GAAG,YAAY,OAAO,QAAQ;AAC1C,eAAW,OAAO,cAAc;AAC1B,UAAA,CAAC,gBAAgB,GAAG,GAAG;AACzB;AAAA,MACF;AAEM,YAAA,iBAAiB,gBAAgB,GAAG;AACpC,YAAA,cAAc,aAAa,GAAG;AAIlC,UAAA,CAACA,yBAAkB,mBAAmB,cAAc,KACpDA,yBAAkB,mBAAmB,WAAW,GAChD;AACA,cAAM,eAAe,OAAO,UAC1B,OACG,UAAU,GAAU,EAEpB,aAAa,EAAE,YAAY,MAAM,YAAY,QAAQ,MAAM,QAAQ;AAMvD,yBAAA,SAASC,sCAAkB,EAAE,IAAI,OAAO,IAAI,KAAK,IAAI,CAAC,GAAG;AACxE,gBAAMC,YAAAA,MAAM,IAAI,OAAO,cAAc,EAAE,aAAa,IAAI;AAAA,QAC1D;AAAA,MACF;AAAA,IACF;AAAA,EAAA,CACD;AACH;AAEA,MAAM,yBAAyB,OAAO,EAAE,iBAAiB,mBAA0B;AACjF,MAAI,CAAC,iBAAiB;AACpB;AAAA,EACF;AAEA,aAAW,OAAO,cAAc;AAC1B,QAAA,CAAC,gBAAgB,GAAG,GAAG;AACzB;AAAA,IACF;AAEM,UAAA,iBAAiB,gBAAgB,GAAG;AACpC,UAAA,cAAc,aAAa,GAAG;AAIlC,QAAAF,YAAAA,aAAkB,mBAAmB,cAAc,KACnD,CAACA,yBAAkB,mBAAmB,WAAW,GACjD;AACA,YAAM,OAAO,IAAI,aAAa,GAAG,EAAE,OAAA,EAAS,MAAM,EAAE,cAAc,MAAM,EAAE,QAAQ;AAAA,IACpF;AAAA,EACF;AACF;;;"}
@@ -1,42 +0,0 @@
1
- import { contentTypes, async } from "@strapi/utils";
2
- import { getBatchToDiscard } from "./database/5.0.0-discard-drafts.mjs";
3
- const enableDraftAndPublish = async ({ oldContentTypes, contentTypes: contentTypes$1 }) => {
4
- if (!oldContentTypes) {
5
- return;
6
- }
7
- return strapi.db.transaction(async (trx) => {
8
- for (const uid in contentTypes$1) {
9
- if (!oldContentTypes[uid]) {
10
- continue;
11
- }
12
- const oldContentType = oldContentTypes[uid];
13
- const contentType = contentTypes$1[uid];
14
- if (!contentTypes.hasDraftAndPublish(oldContentType) && contentTypes.hasDraftAndPublish(contentType)) {
15
- const discardDraft = async (entry) => strapi.documents(uid).discardDraft({ documentId: entry.documentId, locale: entry.locale });
16
- for await (const batch of getBatchToDiscard({ db: strapi.db, trx, uid })) {
17
- await async.map(batch, discardDraft, { concurrency: 10 });
18
- }
19
- }
20
- }
21
- });
22
- };
23
- const disableDraftAndPublish = async ({ oldContentTypes, contentTypes: contentTypes$1 }) => {
24
- if (!oldContentTypes) {
25
- return;
26
- }
27
- for (const uid in contentTypes$1) {
28
- if (!oldContentTypes[uid]) {
29
- continue;
30
- }
31
- const oldContentType = oldContentTypes[uid];
32
- const contentType = contentTypes$1[uid];
33
- if (contentTypes.hasDraftAndPublish(oldContentType) && !contentTypes.hasDraftAndPublish(contentType)) {
34
- await strapi.db?.queryBuilder(uid).delete().where({ published_at: null }).execute();
35
- }
36
- }
37
- };
38
- export {
39
- disableDraftAndPublish as disable,
40
- enableDraftAndPublish as enable
41
- };
42
- //# sourceMappingURL=draft-publish.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"draft-publish.mjs","sources":["../../src/migrations/draft-publish.ts"],"sourcesContent":["import { contentTypes as contentTypesUtils, async } from '@strapi/utils';\nimport { Schema } from '@strapi/types';\n\nimport { getBatchToDiscard } from './database/5.0.0-discard-drafts';\n\ninterface Input {\n oldContentTypes: Record<string, Schema.ContentType>;\n contentTypes: Record<string, Schema.ContentType>;\n}\n\n/**\n * Enable draft and publish for content types.\n *\n * Draft and publish disabled content types will have their entries published,\n * this migration clones those entries as drafts.\n *\n * TODO: Clone components, dynamic zones and relations\n */\nconst enableDraftAndPublish = async ({ oldContentTypes, contentTypes }: Input) => {\n if (!oldContentTypes) {\n return;\n }\n\n // run the after content types migrations\n return strapi.db.transaction(async (trx) => {\n for (const uid in contentTypes) {\n if (!oldContentTypes[uid]) {\n continue;\n }\n\n const oldContentType = oldContentTypes[uid];\n const contentType = contentTypes[uid];\n\n // if d&p was enabled set publishedAt to eq createdAt\n if (\n !contentTypesUtils.hasDraftAndPublish(oldContentType) &&\n contentTypesUtils.hasDraftAndPublish(contentType)\n ) {\n const discardDraft = async (entry: { documentId: string; locale: string }) =>\n strapi\n .documents(uid as any)\n // Discard draft by referencing the documentId and locale\n .discardDraft({ documentId: entry.documentId, locale: entry.locale });\n\n /**\n * Load a batch of entries (batched to prevent loading millions of rows at once ),\n * and discard them using the document service.\n */\n for await (const batch of getBatchToDiscard({ db: strapi.db, trx, uid })) {\n await async.map(batch, discardDraft, { concurrency: 10 });\n }\n }\n }\n });\n};\n\nconst disableDraftAndPublish = async ({ oldContentTypes, contentTypes }: Input) => {\n if (!oldContentTypes) {\n return;\n }\n\n for (const uid in contentTypes) {\n if (!oldContentTypes[uid]) {\n continue;\n }\n\n const oldContentType = oldContentTypes[uid];\n const contentType = contentTypes[uid];\n\n // if d&p was disabled remove unpublish content before sync\n if (\n contentTypesUtils.hasDraftAndPublish(oldContentType) &&\n !contentTypesUtils.hasDraftAndPublish(contentType)\n ) {\n await strapi.db?.queryBuilder(uid).delete().where({ published_at: null }).execute();\n }\n }\n};\n\nexport { enableDraftAndPublish as enable, disableDraftAndPublish as disable };\n"],"names":["contentTypes","contentTypesUtils"],"mappings":";;AAkBA,MAAM,wBAAwB,OAAO,EAAE,iBAAiBA,cAAAA,qBAA0B;AAChF,MAAI,CAAC,iBAAiB;AACpB;AAAA,EACF;AAGA,SAAO,OAAO,GAAG,YAAY,OAAO,QAAQ;AAC1C,eAAW,OAAOA,gBAAc;AAC1B,UAAA,CAAC,gBAAgB,GAAG,GAAG;AACzB;AAAA,MACF;AAEM,YAAA,iBAAiB,gBAAgB,GAAG;AACpC,YAAA,cAAcA,eAAa,GAAG;AAIlC,UAAA,CAACC,aAAkB,mBAAmB,cAAc,KACpDA,aAAkB,mBAAmB,WAAW,GAChD;AACA,cAAM,eAAe,OAAO,UAC1B,OACG,UAAU,GAAU,EAEpB,aAAa,EAAE,YAAY,MAAM,YAAY,QAAQ,MAAM,QAAQ;AAMvD,yBAAA,SAAS,kBAAkB,EAAE,IAAI,OAAO,IAAI,KAAK,IAAI,CAAC,GAAG;AACxE,gBAAM,MAAM,IAAI,OAAO,cAAc,EAAE,aAAa,IAAI;AAAA,QAC1D;AAAA,MACF;AAAA,IACF;AAAA,EAAA,CACD;AACH;AAEA,MAAM,yBAAyB,OAAO,EAAE,iBAAiBD,cAAAA,qBAA0B;AACjF,MAAI,CAAC,iBAAiB;AACpB;AAAA,EACF;AAEA,aAAW,OAAOA,gBAAc;AAC1B,QAAA,CAAC,gBAAgB,GAAG,GAAG;AACzB;AAAA,IACF;AAEM,UAAA,iBAAiB,gBAAgB,GAAG;AACpC,UAAA,cAAcA,eAAa,GAAG;AAIlC,QAAAC,aAAkB,mBAAmB,cAAc,KACnD,CAACA,aAAkB,mBAAmB,WAAW,GACjD;AACA,YAAM,OAAO,IAAI,aAAa,GAAG,EAAE,OAAA,EAAS,MAAM,EAAE,cAAc,MAAM,EAAE,QAAQ;AAAA,IACpF;AAAA,EACF;AACF;"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- const provider = require("./provider.js");
3
- const admin$1 = require("../loaders/admin.js");
4
- const admin = provider.defineProvider({
5
- init(strapi) {
6
- strapi.add("admin", () => require("@strapi/admin/strapi-server"));
7
- },
8
- async register(strapi) {
9
- await admin$1(strapi);
10
- await strapi.get("admin")?.register({ strapi });
11
- },
12
- async bootstrap(strapi) {
13
- await strapi.get("admin")?.bootstrap({ strapi });
14
- },
15
- async destroy(strapi) {
16
- await strapi.get("admin")?.destroy({ strapi });
17
- }
18
- });
19
- module.exports = admin;
20
- //# sourceMappingURL=admin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"admin.js","sources":["../../src/providers/admin.ts"],"sourcesContent":["import { defineProvider } from './provider';\nimport loadAdmin from '../loaders/admin';\n\nexport default defineProvider({\n init(strapi) {\n strapi.add('admin', () => require('@strapi/admin/strapi-server'));\n },\n\n async register(strapi) {\n await loadAdmin(strapi);\n\n await strapi.get('admin')?.register({ strapi });\n },\n\n async bootstrap(strapi) {\n await strapi.get('admin')?.bootstrap({ strapi });\n },\n\n async destroy(strapi) {\n await strapi.get('admin')?.destroy({ strapi });\n },\n});\n"],"names":["defineProvider","loadAdmin"],"mappings":";;;AAGA,MAAA,QAAeA,wBAAe;AAAA,EAC5B,KAAK,QAAQ;AACX,WAAO,IAAI,SAAS,MAAM,QAAQ,6BAA6B,CAAC;AAAA,EAClE;AAAA,EAEA,MAAM,SAAS,QAAQ;AACrB,UAAMC,QAAU,MAAM;AAEtB,UAAM,OAAO,IAAI,OAAO,GAAG,SAAS,EAAE,QAAQ;AAAA,EAChD;AAAA,EAEA,MAAM,UAAU,QAAQ;AACtB,UAAM,OAAO,IAAI,OAAO,GAAG,UAAU,EAAE,QAAQ;AAAA,EACjD;AAAA,EAEA,MAAM,QAAQ,QAAQ;AACpB,UAAM,OAAO,IAAI,OAAO,GAAG,QAAQ,EAAE,QAAQ;AAAA,EAC/C;AACF,CAAC;;"}
@@ -1,21 +0,0 @@
1
- import { defineProvider } from "./provider.mjs";
2
- import loadAdmin from "../loaders/admin.mjs";
3
- const admin = defineProvider({
4
- init(strapi) {
5
- strapi.add("admin", () => require("@strapi/admin/strapi-server"));
6
- },
7
- async register(strapi) {
8
- await loadAdmin(strapi);
9
- await strapi.get("admin")?.register({ strapi });
10
- },
11
- async bootstrap(strapi) {
12
- await strapi.get("admin")?.bootstrap({ strapi });
13
- },
14
- async destroy(strapi) {
15
- await strapi.get("admin")?.destroy({ strapi });
16
- }
17
- });
18
- export {
19
- admin as default
20
- };
21
- //# sourceMappingURL=admin.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"admin.mjs","sources":["../../src/providers/admin.ts"],"sourcesContent":["import { defineProvider } from './provider';\nimport loadAdmin from '../loaders/admin';\n\nexport default defineProvider({\n init(strapi) {\n strapi.add('admin', () => require('@strapi/admin/strapi-server'));\n },\n\n async register(strapi) {\n await loadAdmin(strapi);\n\n await strapi.get('admin')?.register({ strapi });\n },\n\n async bootstrap(strapi) {\n await strapi.get('admin')?.bootstrap({ strapi });\n },\n\n async destroy(strapi) {\n await strapi.get('admin')?.destroy({ strapi });\n },\n});\n"],"names":[],"mappings":";;AAGA,MAAA,QAAe,eAAe;AAAA,EAC5B,KAAK,QAAQ;AACX,WAAO,IAAI,SAAS,MAAM,QAAQ,6BAA6B,CAAC;AAAA,EAClE;AAAA,EAEA,MAAM,SAAS,QAAQ;AACrB,UAAM,UAAU,MAAM;AAEtB,UAAM,OAAO,IAAI,OAAO,GAAG,SAAS,EAAE,QAAQ;AAAA,EAChD;AAAA,EAEA,MAAM,UAAU,QAAQ;AACtB,UAAM,OAAO,IAAI,OAAO,GAAG,UAAU,EAAE,QAAQ;AAAA,EACjD;AAAA,EAEA,MAAM,QAAQ,QAAQ;AACpB,UAAM,OAAO,IAAI,OAAO,GAAG,QAAQ,EAAE,QAAQ;AAAA,EAC/C;AACF,CAAC;"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- const provider = require("./provider.js");
3
- const coreStore$1 = require("../services/core-store.js");
4
- const coreStore = provider.defineProvider({
5
- init(strapi) {
6
- strapi.get("models").add(coreStore$1.coreStoreModel);
7
- strapi.add("coreStore", () => coreStore$1.createCoreStore({ db: strapi.db }));
8
- }
9
- });
10
- module.exports = coreStore;
11
- //# sourceMappingURL=coreStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"coreStore.js","sources":["../../src/providers/coreStore.ts"],"sourcesContent":["import { defineProvider } from './provider';\nimport { createCoreStore, coreStoreModel } from '../services/core-store';\n\nexport default defineProvider({\n init(strapi) {\n strapi.get('models').add(coreStoreModel);\n strapi.add('coreStore', () => createCoreStore({ db: strapi.db }));\n },\n});\n"],"names":["defineProvider","coreStoreModel","createCoreStore"],"mappings":";;;AAGA,MAAA,YAAeA,wBAAe;AAAA,EAC5B,KAAK,QAAQ;AACX,WAAO,IAAI,QAAQ,EAAE,IAAIC,YAAc,cAAA;AAChC,WAAA,IAAI,aAAa,MAAMC,YAAA,gBAAgB,EAAE,IAAI,OAAO,GAAI,CAAA,CAAC;AAAA,EAClE;AACF,CAAC;;"}
@@ -1,12 +0,0 @@
1
- import { defineProvider } from "./provider.mjs";
2
- import { coreStoreModel, createCoreStore } from "../services/core-store.mjs";
3
- const coreStore = defineProvider({
4
- init(strapi) {
5
- strapi.get("models").add(coreStoreModel);
6
- strapi.add("coreStore", () => createCoreStore({ db: strapi.db }));
7
- }
8
- });
9
- export {
10
- coreStore as default
11
- };
12
- //# sourceMappingURL=coreStore.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"coreStore.mjs","sources":["../../src/providers/coreStore.ts"],"sourcesContent":["import { defineProvider } from './provider';\nimport { createCoreStore, coreStoreModel } from '../services/core-store';\n\nexport default defineProvider({\n init(strapi) {\n strapi.get('models').add(coreStoreModel);\n strapi.add('coreStore', () => createCoreStore({ db: strapi.db }));\n },\n});\n"],"names":[],"mappings":";;AAGA,MAAA,YAAe,eAAe;AAAA,EAC5B,KAAK,QAAQ;AACX,WAAO,IAAI,QAAQ,EAAE,IAAI,cAAc;AAChC,WAAA,IAAI,aAAa,MAAM,gBAAgB,EAAE,IAAI,OAAO,GAAI,CAAA,CAAC;AAAA,EAClE;AACF,CAAC;"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- const provider = require("./provider.js");
3
- const cron$1 = require("../services/cron.js");
4
- const cron = provider.defineProvider({
5
- init(strapi) {
6
- strapi.add("cron", () => cron$1());
7
- },
8
- async bootstrap(strapi) {
9
- if (strapi.config.get("server.cron.enabled", true)) {
10
- const cronTasks = strapi.config.get("server.cron.tasks", {});
11
- strapi.get("cron").add(cronTasks);
12
- }
13
- strapi.get("cron").start();
14
- },
15
- async destroy(strapi) {
16
- strapi.get("cron").destroy();
17
- }
18
- });
19
- module.exports = cron;
20
- //# sourceMappingURL=cron.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cron.js","sources":["../../src/providers/cron.ts"],"sourcesContent":["import { defineProvider } from './provider';\nimport createCronService from '../services/cron';\n\nexport default defineProvider({\n init(strapi) {\n strapi.add('cron', () => createCronService());\n },\n async bootstrap(strapi) {\n if (strapi.config.get('server.cron.enabled', true)) {\n const cronTasks = strapi.config.get('server.cron.tasks', {});\n strapi.get('cron').add(cronTasks);\n }\n\n strapi.get('cron').start();\n },\n async destroy(strapi) {\n strapi.get('cron').destroy();\n },\n});\n"],"names":["defineProvider","createCronService"],"mappings":";;;AAGA,MAAA,OAAeA,wBAAe;AAAA,EAC5B,KAAK,QAAQ;AACX,WAAO,IAAI,QAAQ,MAAMC,OAAmB,CAAA;AAAA,EAC9C;AAAA,EACA,MAAM,UAAU,QAAQ;AACtB,QAAI,OAAO,OAAO,IAAI,uBAAuB,IAAI,GAAG;AAClD,YAAM,YAAY,OAAO,OAAO,IAAI,qBAAqB,CAAA,CAAE;AAC3D,aAAO,IAAI,MAAM,EAAE,IAAI,SAAS;AAAA,IAClC;AAEO,WAAA,IAAI,MAAM,EAAE,MAAM;AAAA,EAC3B;AAAA,EACA,MAAM,QAAQ,QAAQ;AACb,WAAA,IAAI,MAAM,EAAE,QAAQ;AAAA,EAC7B;AACF,CAAC;;"}
@@ -1,21 +0,0 @@
1
- import { defineProvider } from "./provider.mjs";
2
- import createCronService from "../services/cron.mjs";
3
- const cron = defineProvider({
4
- init(strapi) {
5
- strapi.add("cron", () => createCronService());
6
- },
7
- async bootstrap(strapi) {
8
- if (strapi.config.get("server.cron.enabled", true)) {
9
- const cronTasks = strapi.config.get("server.cron.tasks", {});
10
- strapi.get("cron").add(cronTasks);
11
- }
12
- strapi.get("cron").start();
13
- },
14
- async destroy(strapi) {
15
- strapi.get("cron").destroy();
16
- }
17
- });
18
- export {
19
- cron as default
20
- };
21
- //# sourceMappingURL=cron.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cron.mjs","sources":["../../src/providers/cron.ts"],"sourcesContent":["import { defineProvider } from './provider';\nimport createCronService from '../services/cron';\n\nexport default defineProvider({\n init(strapi) {\n strapi.add('cron', () => createCronService());\n },\n async bootstrap(strapi) {\n if (strapi.config.get('server.cron.enabled', true)) {\n const cronTasks = strapi.config.get('server.cron.tasks', {});\n strapi.get('cron').add(cronTasks);\n }\n\n strapi.get('cron').start();\n },\n async destroy(strapi) {\n strapi.get('cron').destroy();\n },\n});\n"],"names":[],"mappings":";;AAGA,MAAA,OAAe,eAAe;AAAA,EAC5B,KAAK,QAAQ;AACX,WAAO,IAAI,QAAQ,MAAM,kBAAmB,CAAA;AAAA,EAC9C;AAAA,EACA,MAAM,UAAU,QAAQ;AACtB,QAAI,OAAO,OAAO,IAAI,uBAAuB,IAAI,GAAG;AAClD,YAAM,YAAY,OAAO,OAAO,IAAI,qBAAqB,CAAA,CAAE;AAC3D,aAAO,IAAI,MAAM,EAAE,IAAI,SAAS;AAAA,IAClC;AAEO,WAAA,IAAI,MAAM,EAAE,MAAM;AAAA,EAC3B;AAAA,EACA,MAAM,QAAQ,QAAQ;AACb,WAAA,IAAI,MAAM,EAAE,QAAQ;AAAA,EAC7B;AACF,CAAC;"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const admin = require("./admin.js");
4
- const coreStore = require("./coreStore.js");
5
- const cron = require("./cron.js");
6
- const registries = require("./registries.js");
7
- const telemetry = require("./telemetry.js");
8
- const webhooks = require("./webhooks.js");
9
- const providers = [registries, admin, coreStore, webhooks, telemetry, cron];
10
- exports.providers = providers;
11
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/providers/index.ts"],"sourcesContent":["import admin from './admin';\nimport coreStore from './coreStore';\nimport cron from './cron';\nimport registries from './registries';\nimport telemetry from './telemetry';\nimport webhooks from './webhooks';\n\nimport type { Provider } from './provider';\n\nexport const providers: Provider[] = [registries, admin, coreStore, webhooks, telemetry, cron];\n"],"names":[],"mappings":";;;;;;;;AASO,MAAM,YAAwB,CAAC,YAAY,OAAO,WAAW,UAAU,WAAW,IAAI;;"}