@strapi/core 0.0.0-experimental.9df68962083938acba06546a7901c68a63266aec → 0.0.0-experimental.9f12de545908a77b10196617c93b8db59a9151c1

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