@strapi/core 0.0.0-next.896eb4438c1f4d64f28d9d2ddcf1eeb53b6d0851 → 0.0.0-next.8b11c0eca020d4c84f17c9f06f36fb9c87fb3266

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

Potentially problematic release.


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

Files changed (799) hide show
  1. package/dist/Strapi.d.ts +1 -0
  2. package/dist/Strapi.d.ts.map +1 -1
  3. package/dist/Strapi.js +476 -0
  4. package/dist/Strapi.js.map +1 -0
  5. package/dist/Strapi.mjs +455 -0
  6. package/dist/Strapi.mjs.map +1 -0
  7. package/dist/compile.js +27 -0
  8. package/dist/compile.js.map +1 -0
  9. package/dist/compile.mjs +25 -0
  10. package/dist/compile.mjs.map +1 -0
  11. package/dist/configuration/config-loader.js +119 -0
  12. package/dist/configuration/config-loader.js.map +1 -0
  13. package/dist/configuration/config-loader.mjs +117 -0
  14. package/dist/configuration/config-loader.mjs.map +1 -0
  15. package/dist/configuration/get-dirs.js +33 -0
  16. package/dist/configuration/get-dirs.js.map +1 -0
  17. package/dist/configuration/get-dirs.mjs +31 -0
  18. package/dist/configuration/get-dirs.mjs.map +1 -0
  19. package/dist/configuration/index.d.ts +1 -0
  20. package/dist/configuration/index.d.ts.map +1 -1
  21. package/dist/configuration/index.js +92 -0
  22. package/dist/configuration/index.js.map +1 -0
  23. package/dist/configuration/index.mjs +90 -0
  24. package/dist/configuration/index.mjs.map +1 -0
  25. package/dist/configuration/urls.d.ts.map +1 -1
  26. package/dist/configuration/urls.js +81 -0
  27. package/dist/configuration/urls.js.map +1 -0
  28. package/dist/configuration/urls.mjs +77 -0
  29. package/dist/configuration/urls.mjs.map +1 -0
  30. package/dist/constants.d.ts +3 -0
  31. package/dist/constants.d.ts.map +1 -0
  32. package/dist/constants.js +6 -0
  33. package/dist/constants.js.map +1 -0
  34. package/dist/constants.mjs +4 -0
  35. package/dist/constants.mjs.map +1 -0
  36. package/dist/container.js +34 -0
  37. package/dist/container.js.map +1 -0
  38. package/dist/container.mjs +32 -0
  39. package/dist/container.mjs.map +1 -0
  40. package/dist/core-api/controller/collection-type.js +85 -0
  41. package/dist/core-api/controller/collection-type.js.map +1 -0
  42. package/dist/core-api/controller/collection-type.mjs +83 -0
  43. package/dist/core-api/controller/collection-type.mjs.map +1 -0
  44. package/dist/core-api/controller/index.d.ts.map +1 -1
  45. package/dist/core-api/controller/index.js +68 -0
  46. package/dist/core-api/controller/index.js.map +1 -0
  47. package/dist/core-api/controller/index.mjs +66 -0
  48. package/dist/core-api/controller/index.mjs.map +1 -0
  49. package/dist/core-api/controller/single-type.js +47 -0
  50. package/dist/core-api/controller/single-type.js.map +1 -0
  51. package/dist/core-api/controller/single-type.mjs +45 -0
  52. package/dist/core-api/controller/single-type.mjs.map +1 -0
  53. package/dist/core-api/controller/transform.d.ts +3 -2
  54. package/dist/core-api/controller/transform.d.ts.map +1 -1
  55. package/dist/core-api/controller/transform.js +95 -0
  56. package/dist/core-api/controller/transform.js.map +1 -0
  57. package/dist/core-api/controller/transform.mjs +93 -0
  58. package/dist/core-api/controller/transform.mjs.map +1 -0
  59. package/dist/core-api/routes/index.d.ts +4 -22
  60. package/dist/core-api/routes/index.d.ts.map +1 -1
  61. package/dist/core-api/routes/index.js +211 -0
  62. package/dist/core-api/routes/index.js.map +1 -0
  63. package/dist/core-api/routes/index.mjs +190 -0
  64. package/dist/core-api/routes/index.mjs.map +1 -0
  65. package/dist/core-api/routes/validation/attributes.d.ts +244 -0
  66. package/dist/core-api/routes/validation/attributes.d.ts.map +1 -0
  67. package/dist/core-api/routes/validation/attributes.js +560 -0
  68. package/dist/core-api/routes/validation/attributes.js.map +1 -0
  69. package/dist/core-api/routes/validation/attributes.mjs +521 -0
  70. package/dist/core-api/routes/validation/attributes.mjs.map +1 -0
  71. package/dist/core-api/routes/validation/common.d.ts +105 -0
  72. package/dist/core-api/routes/validation/common.d.ts.map +1 -0
  73. package/dist/core-api/routes/validation/common.js +116 -0
  74. package/dist/core-api/routes/validation/common.js.map +1 -0
  75. package/dist/core-api/routes/validation/common.mjs +95 -0
  76. package/dist/core-api/routes/validation/common.mjs.map +1 -0
  77. package/dist/core-api/routes/validation/component.d.ts +34 -0
  78. package/dist/core-api/routes/validation/component.d.ts.map +1 -0
  79. package/dist/core-api/routes/validation/component.js +45 -0
  80. package/dist/core-api/routes/validation/component.js.map +1 -0
  81. package/dist/core-api/routes/validation/component.mjs +43 -0
  82. package/dist/core-api/routes/validation/component.mjs.map +1 -0
  83. package/dist/core-api/routes/validation/constants.d.ts +8 -0
  84. package/dist/core-api/routes/validation/constants.d.ts.map +1 -0
  85. package/dist/core-api/routes/validation/constants.js +18 -0
  86. package/dist/core-api/routes/validation/constants.js.map +1 -0
  87. package/dist/core-api/routes/validation/constants.mjs +16 -0
  88. package/dist/core-api/routes/validation/constants.mjs.map +1 -0
  89. package/dist/core-api/routes/validation/content-type.d.ts +128 -0
  90. package/dist/core-api/routes/validation/content-type.d.ts.map +1 -0
  91. package/dist/core-api/routes/validation/content-type.js +201 -0
  92. package/dist/core-api/routes/validation/content-type.js.map +1 -0
  93. package/dist/core-api/routes/validation/content-type.mjs +180 -0
  94. package/dist/core-api/routes/validation/content-type.mjs.map +1 -0
  95. package/dist/core-api/routes/validation/index.d.ts +5 -0
  96. package/dist/core-api/routes/validation/index.d.ts.map +1 -0
  97. package/dist/core-api/routes/validation/mappers.d.ts +105 -0
  98. package/dist/core-api/routes/validation/mappers.d.ts.map +1 -0
  99. package/dist/core-api/routes/validation/mappers.js +273 -0
  100. package/dist/core-api/routes/validation/mappers.js.map +1 -0
  101. package/dist/core-api/routes/validation/mappers.mjs +249 -0
  102. package/dist/core-api/routes/validation/mappers.mjs.map +1 -0
  103. package/dist/core-api/routes/validation/utils.d.ts +47 -0
  104. package/dist/core-api/routes/validation/utils.d.ts.map +1 -0
  105. package/dist/core-api/routes/validation/utils.js +128 -0
  106. package/dist/core-api/routes/validation/utils.js.map +1 -0
  107. package/dist/core-api/routes/validation/utils.mjs +106 -0
  108. package/dist/core-api/routes/validation/utils.mjs.map +1 -0
  109. package/dist/core-api/service/collection-type.js +80 -0
  110. package/dist/core-api/service/collection-type.js.map +1 -0
  111. package/dist/core-api/service/collection-type.mjs +77 -0
  112. package/dist/core-api/service/collection-type.mjs.map +1 -0
  113. package/dist/core-api/service/core-service.js +13 -0
  114. package/dist/core-api/service/core-service.js.map +1 -0
  115. package/dist/core-api/service/core-service.mjs +11 -0
  116. package/dist/core-api/service/core-service.mjs.map +1 -0
  117. package/dist/core-api/service/index.js +16 -0
  118. package/dist/core-api/service/index.js.map +1 -0
  119. package/dist/core-api/service/index.mjs +14 -0
  120. package/dist/core-api/service/index.mjs.map +1 -0
  121. package/dist/core-api/service/pagination.js +78 -0
  122. package/dist/core-api/service/pagination.js.map +1 -0
  123. package/dist/core-api/service/pagination.mjs +73 -0
  124. package/dist/core-api/service/pagination.mjs.map +1 -0
  125. package/dist/core-api/service/single-type.js +50 -0
  126. package/dist/core-api/service/single-type.js.map +1 -0
  127. package/dist/core-api/service/single-type.mjs +47 -0
  128. package/dist/core-api/service/single-type.mjs.map +1 -0
  129. package/dist/domain/content-type/index.d.ts.map +1 -1
  130. package/dist/domain/content-type/index.js +122 -0
  131. package/dist/domain/content-type/index.js.map +1 -0
  132. package/dist/domain/content-type/index.mjs +119 -0
  133. package/dist/domain/content-type/index.mjs.map +1 -0
  134. package/dist/domain/content-type/validator.js +92 -0
  135. package/dist/domain/content-type/validator.js.map +1 -0
  136. package/dist/domain/content-type/validator.mjs +90 -0
  137. package/dist/domain/content-type/validator.mjs.map +1 -0
  138. package/dist/domain/module/index.d.ts.map +1 -1
  139. package/dist/domain/module/index.js +119 -0
  140. package/dist/domain/module/index.js.map +1 -0
  141. package/dist/domain/module/index.mjs +117 -0
  142. package/dist/domain/module/index.mjs.map +1 -0
  143. package/dist/domain/module/validation.js +30 -0
  144. package/dist/domain/module/validation.js.map +1 -0
  145. package/dist/domain/module/validation.mjs +28 -0
  146. package/dist/domain/module/validation.mjs.map +1 -0
  147. package/dist/ee/index.d.ts +7 -0
  148. package/dist/ee/index.d.ts.map +1 -1
  149. package/dist/ee/index.js +218 -0
  150. package/dist/ee/index.js.map +1 -0
  151. package/dist/ee/index.mjs +216 -0
  152. package/dist/ee/index.mjs.map +1 -0
  153. package/dist/ee/license.d.ts +3 -1
  154. package/dist/ee/license.d.ts.map +1 -1
  155. package/dist/ee/license.js +121 -0
  156. package/dist/ee/license.js.map +1 -0
  157. package/dist/ee/license.mjs +115 -0
  158. package/dist/ee/license.mjs.map +1 -0
  159. package/dist/factories.d.ts +3 -1
  160. package/dist/factories.d.ts.map +1 -1
  161. package/dist/factories.js +93 -0
  162. package/dist/factories.js.map +1 -0
  163. package/dist/factories.mjs +87 -0
  164. package/dist/factories.mjs.map +1 -0
  165. package/dist/index.js +19 -10099
  166. package/dist/index.js.map +1 -1
  167. package/dist/index.mjs +17 -10076
  168. package/dist/index.mjs.map +1 -1
  169. package/dist/loaders/admin.d.ts.map +1 -1
  170. package/dist/loaders/admin.js +27 -0
  171. package/dist/loaders/admin.js.map +1 -0
  172. package/dist/loaders/admin.mjs +25 -0
  173. package/dist/loaders/admin.mjs.map +1 -0
  174. package/dist/loaders/apis.js +160 -0
  175. package/dist/loaders/apis.js.map +1 -0
  176. package/dist/loaders/apis.mjs +158 -0
  177. package/dist/loaders/apis.mjs.map +1 -0
  178. package/dist/loaders/components.js +37 -0
  179. package/dist/loaders/components.js.map +1 -0
  180. package/dist/loaders/components.mjs +35 -0
  181. package/dist/loaders/components.mjs.map +1 -0
  182. package/dist/loaders/index.js +26 -0
  183. package/dist/loaders/index.js.map +1 -0
  184. package/dist/loaders/index.mjs +24 -0
  185. package/dist/loaders/index.mjs.map +1 -0
  186. package/dist/loaders/middlewares.js +35 -0
  187. package/dist/loaders/middlewares.js.map +1 -0
  188. package/dist/loaders/middlewares.mjs +33 -0
  189. package/dist/loaders/middlewares.mjs.map +1 -0
  190. package/dist/loaders/plugins/get-enabled-plugins.js +136 -0
  191. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -0
  192. package/dist/loaders/plugins/get-enabled-plugins.mjs +134 -0
  193. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -0
  194. package/dist/loaders/plugins/get-user-plugins-config.js +28 -0
  195. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -0
  196. package/dist/loaders/plugins/get-user-plugins-config.mjs +26 -0
  197. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -0
  198. package/dist/loaders/plugins/index.js +155 -0
  199. package/dist/loaders/plugins/index.js.map +1 -0
  200. package/dist/loaders/plugins/index.mjs +134 -0
  201. package/dist/loaders/plugins/index.mjs.map +1 -0
  202. package/dist/loaders/policies.js +29 -0
  203. package/dist/loaders/policies.js.map +1 -0
  204. package/dist/loaders/policies.mjs +27 -0
  205. package/dist/loaders/policies.mjs.map +1 -0
  206. package/dist/loaders/sanitizers.js +12 -0
  207. package/dist/loaders/sanitizers.js.map +1 -0
  208. package/dist/loaders/sanitizers.mjs +10 -0
  209. package/dist/loaders/sanitizers.mjs.map +1 -0
  210. package/dist/loaders/src-index.js +41 -0
  211. package/dist/loaders/src-index.js.map +1 -0
  212. package/dist/loaders/src-index.mjs +39 -0
  213. package/dist/loaders/src-index.mjs.map +1 -0
  214. package/dist/loaders/validators.js +11 -0
  215. package/dist/loaders/validators.js.map +1 -0
  216. package/dist/loaders/validators.mjs +9 -0
  217. package/dist/loaders/validators.mjs.map +1 -0
  218. package/dist/middlewares/body.js +69 -0
  219. package/dist/middlewares/body.js.map +1 -0
  220. package/dist/middlewares/body.mjs +67 -0
  221. package/dist/middlewares/body.mjs.map +1 -0
  222. package/dist/middlewares/compression.js +8 -0
  223. package/dist/middlewares/compression.js.map +1 -0
  224. package/dist/middlewares/compression.mjs +6 -0
  225. package/dist/middlewares/compression.mjs.map +1 -0
  226. package/dist/middlewares/cors.d.ts +9 -1
  227. package/dist/middlewares/cors.d.ts.map +1 -1
  228. package/dist/middlewares/cors.js +86 -0
  229. package/dist/middlewares/cors.js.map +1 -0
  230. package/dist/middlewares/cors.mjs +83 -0
  231. package/dist/middlewares/cors.mjs.map +1 -0
  232. package/dist/middlewares/errors.js +35 -0
  233. package/dist/middlewares/errors.js.map +1 -0
  234. package/dist/middlewares/errors.mjs +33 -0
  235. package/dist/middlewares/errors.mjs.map +1 -0
  236. package/dist/middlewares/favicon.js +32 -0
  237. package/dist/middlewares/favicon.js.map +1 -0
  238. package/dist/middlewares/favicon.mjs +30 -0
  239. package/dist/middlewares/favicon.mjs.map +1 -0
  240. package/dist/middlewares/index.js +36 -0
  241. package/dist/middlewares/index.js.map +1 -0
  242. package/dist/middlewares/index.mjs +34 -0
  243. package/dist/middlewares/index.mjs.map +1 -0
  244. package/dist/middlewares/ip.js +8 -0
  245. package/dist/middlewares/ip.js.map +1 -0
  246. package/dist/middlewares/ip.mjs +6 -0
  247. package/dist/middlewares/ip.mjs.map +1 -0
  248. package/dist/middlewares/logger.js +13 -0
  249. package/dist/middlewares/logger.js.map +1 -0
  250. package/dist/middlewares/logger.mjs +11 -0
  251. package/dist/middlewares/logger.mjs.map +1 -0
  252. package/dist/middlewares/powered-by.js +18 -0
  253. package/dist/middlewares/powered-by.js.map +1 -0
  254. package/dist/middlewares/powered-by.mjs +16 -0
  255. package/dist/middlewares/powered-by.mjs.map +1 -0
  256. package/dist/middlewares/public.js +38 -0
  257. package/dist/middlewares/public.js.map +1 -0
  258. package/dist/middlewares/public.mjs +36 -0
  259. package/dist/middlewares/public.mjs.map +1 -0
  260. package/dist/middlewares/query.js +43 -0
  261. package/dist/middlewares/query.js.map +1 -0
  262. package/dist/middlewares/query.mjs +41 -0
  263. package/dist/middlewares/query.mjs.map +1 -0
  264. package/dist/middlewares/response-time.js +13 -0
  265. package/dist/middlewares/response-time.js.map +1 -0
  266. package/dist/middlewares/response-time.mjs +11 -0
  267. package/dist/middlewares/response-time.mjs.map +1 -0
  268. package/dist/middlewares/responses.js +17 -0
  269. package/dist/middlewares/responses.js.map +1 -0
  270. package/dist/middlewares/responses.mjs +15 -0
  271. package/dist/middlewares/responses.mjs.map +1 -0
  272. package/dist/middlewares/security.js +116 -0
  273. package/dist/middlewares/security.js.map +1 -0
  274. package/dist/middlewares/security.mjs +114 -0
  275. package/dist/middlewares/security.mjs.map +1 -0
  276. package/dist/middlewares/session.js +31 -0
  277. package/dist/middlewares/session.js.map +1 -0
  278. package/dist/middlewares/session.mjs +29 -0
  279. package/dist/middlewares/session.mjs.map +1 -0
  280. package/dist/migrations/database/5.0.0-discard-drafts.js +168 -0
  281. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -0
  282. package/dist/migrations/database/5.0.0-discard-drafts.mjs +165 -0
  283. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -0
  284. package/dist/migrations/draft-publish.js +69 -0
  285. package/dist/migrations/draft-publish.js.map +1 -0
  286. package/dist/migrations/draft-publish.mjs +66 -0
  287. package/dist/migrations/draft-publish.mjs.map +1 -0
  288. package/dist/migrations/first-published-at.d.ts +4 -0
  289. package/dist/migrations/first-published-at.d.ts.map +1 -0
  290. package/dist/migrations/first-published-at.js +51 -0
  291. package/dist/migrations/first-published-at.js.map +1 -0
  292. package/dist/migrations/first-published-at.mjs +49 -0
  293. package/dist/migrations/first-published-at.mjs.map +1 -0
  294. package/dist/migrations/i18n.js +71 -0
  295. package/dist/migrations/i18n.js.map +1 -0
  296. package/dist/migrations/i18n.mjs +68 -0
  297. package/dist/migrations/i18n.mjs.map +1 -0
  298. package/dist/migrations/index.d.ts.map +1 -1
  299. package/dist/migrations/index.js +34 -0
  300. package/dist/migrations/index.js.map +1 -0
  301. package/dist/migrations/index.mjs +31 -0
  302. package/dist/migrations/index.mjs.map +1 -0
  303. package/dist/package.json.js +187 -0
  304. package/dist/package.json.js.map +1 -0
  305. package/dist/package.json.mjs +164 -0
  306. package/dist/package.json.mjs.map +1 -0
  307. package/dist/providers/admin.js +30 -0
  308. package/dist/providers/admin.js.map +1 -0
  309. package/dist/providers/admin.mjs +28 -0
  310. package/dist/providers/admin.mjs.map +1 -0
  311. package/dist/providers/coreStore.js +16 -0
  312. package/dist/providers/coreStore.js.map +1 -0
  313. package/dist/providers/coreStore.mjs +14 -0
  314. package/dist/providers/coreStore.mjs.map +1 -0
  315. package/dist/providers/cron.js +23 -0
  316. package/dist/providers/cron.js.map +1 -0
  317. package/dist/providers/cron.mjs +21 -0
  318. package/dist/providers/cron.mjs.map +1 -0
  319. package/dist/providers/index.d.ts.map +1 -1
  320. package/dist/providers/index.js +22 -0
  321. package/dist/providers/index.js.map +1 -0
  322. package/dist/providers/index.mjs +20 -0
  323. package/dist/providers/index.mjs.map +1 -0
  324. package/dist/providers/provider.js +6 -0
  325. package/dist/providers/provider.js.map +1 -0
  326. package/dist/providers/provider.mjs +4 -0
  327. package/dist/providers/provider.mjs.map +1 -0
  328. package/dist/providers/registries.js +40 -0
  329. package/dist/providers/registries.js.map +1 -0
  330. package/dist/providers/registries.mjs +38 -0
  331. package/dist/providers/registries.mjs.map +1 -0
  332. package/dist/providers/session-manager.d.ts +3 -0
  333. package/dist/providers/session-manager.d.ts.map +1 -0
  334. package/dist/providers/session-manager.js +23 -0
  335. package/dist/providers/session-manager.js.map +1 -0
  336. package/dist/providers/session-manager.mjs +21 -0
  337. package/dist/providers/session-manager.mjs.map +1 -0
  338. package/dist/providers/telemetry.js +22 -0
  339. package/dist/providers/telemetry.js.map +1 -0
  340. package/dist/providers/telemetry.mjs +20 -0
  341. package/dist/providers/telemetry.mjs.map +1 -0
  342. package/dist/providers/webhooks.js +32 -0
  343. package/dist/providers/webhooks.js.map +1 -0
  344. package/dist/providers/webhooks.mjs +30 -0
  345. package/dist/providers/webhooks.mjs.map +1 -0
  346. package/dist/registries/apis.js +26 -0
  347. package/dist/registries/apis.js.map +1 -0
  348. package/dist/registries/apis.mjs +24 -0
  349. package/dist/registries/apis.mjs.map +1 -0
  350. package/dist/registries/components.js +43 -0
  351. package/dist/registries/components.js.map +1 -0
  352. package/dist/registries/components.mjs +41 -0
  353. package/dist/registries/components.mjs.map +1 -0
  354. package/dist/registries/content-types.js +65 -0
  355. package/dist/registries/content-types.js.map +1 -0
  356. package/dist/registries/content-types.mjs +63 -0
  357. package/dist/registries/content-types.mjs.map +1 -0
  358. package/dist/registries/controllers.js +79 -0
  359. package/dist/registries/controllers.js.map +1 -0
  360. package/dist/registries/controllers.mjs +77 -0
  361. package/dist/registries/controllers.mjs.map +1 -0
  362. package/dist/registries/custom-fields.js +81 -0
  363. package/dist/registries/custom-fields.js.map +1 -0
  364. package/dist/registries/custom-fields.mjs +79 -0
  365. package/dist/registries/custom-fields.mjs.map +1 -0
  366. package/dist/registries/hooks.js +55 -0
  367. package/dist/registries/hooks.js.map +1 -0
  368. package/dist/registries/hooks.mjs +53 -0
  369. package/dist/registries/hooks.mjs.map +1 -0
  370. package/dist/registries/middlewares.js +58 -0
  371. package/dist/registries/middlewares.js.map +1 -0
  372. package/dist/registries/middlewares.mjs +56 -0
  373. package/dist/registries/middlewares.mjs.map +1 -0
  374. package/dist/registries/models.js +17 -0
  375. package/dist/registries/models.js.map +1 -0
  376. package/dist/registries/models.mjs +15 -0
  377. package/dist/registries/models.mjs.map +1 -0
  378. package/dist/registries/modules.js +42 -0
  379. package/dist/registries/modules.js.map +1 -0
  380. package/dist/registries/modules.mjs +40 -0
  381. package/dist/registries/modules.mjs.map +1 -0
  382. package/dist/registries/namespace.js +28 -0
  383. package/dist/registries/namespace.js.map +1 -0
  384. package/dist/registries/namespace.mjs +24 -0
  385. package/dist/registries/namespace.mjs.map +1 -0
  386. package/dist/registries/plugins.js +26 -0
  387. package/dist/registries/plugins.js.map +1 -0
  388. package/dist/registries/plugins.mjs +24 -0
  389. package/dist/registries/plugins.mjs.map +1 -0
  390. package/dist/registries/policies.js +115 -0
  391. package/dist/registries/policies.js.map +1 -0
  392. package/dist/registries/policies.mjs +113 -0
  393. package/dist/registries/policies.mjs.map +1 -0
  394. package/dist/registries/sanitizers.js +26 -0
  395. package/dist/registries/sanitizers.js.map +1 -0
  396. package/dist/registries/sanitizers.mjs +24 -0
  397. package/dist/registries/sanitizers.mjs.map +1 -0
  398. package/dist/registries/services.js +80 -0
  399. package/dist/registries/services.js.map +1 -0
  400. package/dist/registries/services.mjs +78 -0
  401. package/dist/registries/services.mjs.map +1 -0
  402. package/dist/registries/validators.js +26 -0
  403. package/dist/registries/validators.js.map +1 -0
  404. package/dist/registries/validators.mjs +24 -0
  405. package/dist/registries/validators.mjs.map +1 -0
  406. package/dist/services/auth/index.js +81 -0
  407. package/dist/services/auth/index.js.map +1 -0
  408. package/dist/services/auth/index.mjs +79 -0
  409. package/dist/services/auth/index.mjs.map +1 -0
  410. package/dist/services/config.js +51 -0
  411. package/dist/services/config.js.map +1 -0
  412. package/dist/services/config.mjs +49 -0
  413. package/dist/services/config.mjs.map +1 -0
  414. package/dist/services/content-api/index.d.ts +1 -1
  415. package/dist/services/content-api/index.d.ts.map +1 -1
  416. package/dist/services/content-api/index.js +86 -0
  417. package/dist/services/content-api/index.js.map +1 -0
  418. package/dist/services/content-api/index.mjs +84 -0
  419. package/dist/services/content-api/index.mjs.map +1 -0
  420. package/dist/services/content-api/permissions/engine.js +10 -0
  421. package/dist/services/content-api/permissions/engine.js.map +1 -0
  422. package/dist/services/content-api/permissions/engine.mjs +8 -0
  423. package/dist/services/content-api/permissions/engine.mjs.map +1 -0
  424. package/dist/services/content-api/permissions/index.js +107 -0
  425. package/dist/services/content-api/permissions/index.js.map +1 -0
  426. package/dist/services/content-api/permissions/index.mjs +105 -0
  427. package/dist/services/content-api/permissions/index.mjs.map +1 -0
  428. package/dist/services/content-api/permissions/providers/action.js +19 -0
  429. package/dist/services/content-api/permissions/providers/action.js.map +1 -0
  430. package/dist/services/content-api/permissions/providers/action.mjs +17 -0
  431. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -0
  432. package/dist/services/content-api/permissions/providers/condition.js +19 -0
  433. package/dist/services/content-api/permissions/providers/condition.js.map +1 -0
  434. package/dist/services/content-api/permissions/providers/condition.mjs +17 -0
  435. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -0
  436. package/dist/services/content-source-maps.d.ts +13 -0
  437. package/dist/services/content-source-maps.d.ts.map +1 -0
  438. package/dist/services/content-source-maps.js +108 -0
  439. package/dist/services/content-source-maps.js.map +1 -0
  440. package/dist/services/content-source-maps.mjs +106 -0
  441. package/dist/services/content-source-maps.mjs.map +1 -0
  442. package/dist/services/core-store.d.ts +2 -2
  443. package/dist/services/core-store.d.ts.map +1 -1
  444. package/dist/services/core-store.js +127 -0
  445. package/dist/services/core-store.js.map +1 -0
  446. package/dist/services/core-store.mjs +124 -0
  447. package/dist/services/core-store.mjs.map +1 -0
  448. package/dist/services/cron.js +77 -0
  449. package/dist/services/cron.js.map +1 -0
  450. package/dist/services/cron.mjs +75 -0
  451. package/dist/services/cron.mjs.map +1 -0
  452. package/dist/services/custom-fields.js +12 -0
  453. package/dist/services/custom-fields.js.map +1 -0
  454. package/dist/services/custom-fields.mjs +10 -0
  455. package/dist/services/custom-fields.mjs.map +1 -0
  456. package/dist/services/document-service/attributes/index.js +27 -0
  457. package/dist/services/document-service/attributes/index.js.map +1 -0
  458. package/dist/services/document-service/attributes/index.mjs +25 -0
  459. package/dist/services/document-service/attributes/index.mjs.map +1 -0
  460. package/dist/services/document-service/attributes/transforms.js +21 -0
  461. package/dist/services/document-service/attributes/transforms.js.map +1 -0
  462. package/dist/services/document-service/attributes/transforms.mjs +19 -0
  463. package/dist/services/document-service/attributes/transforms.mjs.map +1 -0
  464. package/dist/services/document-service/common.js +8 -0
  465. package/dist/services/document-service/common.js.map +1 -0
  466. package/dist/services/document-service/common.mjs +6 -0
  467. package/dist/services/document-service/common.mjs.map +1 -0
  468. package/dist/services/document-service/components.d.ts +31 -1
  469. package/dist/services/document-service/components.d.ts.map +1 -1
  470. package/dist/services/document-service/components.js +395 -0
  471. package/dist/services/document-service/components.js.map +1 -0
  472. package/dist/services/document-service/components.mjs +384 -0
  473. package/dist/services/document-service/components.mjs.map +1 -0
  474. package/dist/services/document-service/draft-and-publish.js +109 -0
  475. package/dist/services/document-service/draft-and-publish.js.map +1 -0
  476. package/dist/services/document-service/draft-and-publish.mjs +102 -0
  477. package/dist/services/document-service/draft-and-publish.mjs.map +1 -0
  478. package/dist/services/document-service/entries.d.ts.map +1 -1
  479. package/dist/services/document-service/entries.js +155 -0
  480. package/dist/services/document-service/entries.js.map +1 -0
  481. package/dist/services/document-service/entries.mjs +153 -0
  482. package/dist/services/document-service/entries.mjs.map +1 -0
  483. package/dist/services/document-service/events.js +59 -0
  484. package/dist/services/document-service/events.js.map +1 -0
  485. package/dist/services/document-service/events.mjs +57 -0
  486. package/dist/services/document-service/events.mjs.map +1 -0
  487. package/dist/services/document-service/first-published-at.d.ts +7 -0
  488. package/dist/services/document-service/first-published-at.d.ts.map +1 -0
  489. package/dist/services/document-service/first-published-at.js +31 -0
  490. package/dist/services/document-service/first-published-at.js.map +1 -0
  491. package/dist/services/document-service/first-published-at.mjs +28 -0
  492. package/dist/services/document-service/first-published-at.mjs.map +1 -0
  493. package/dist/services/document-service/index.js +56 -0
  494. package/dist/services/document-service/index.js.map +1 -0
  495. package/dist/services/document-service/index.mjs +54 -0
  496. package/dist/services/document-service/index.mjs.map +1 -0
  497. package/dist/services/document-service/internationalization.d.ts +6 -1
  498. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  499. package/dist/services/document-service/internationalization.js +111 -0
  500. package/dist/services/document-service/internationalization.js.map +1 -0
  501. package/dist/services/document-service/internationalization.mjs +105 -0
  502. package/dist/services/document-service/internationalization.mjs.map +1 -0
  503. package/dist/services/document-service/middlewares/errors.js +29 -0
  504. package/dist/services/document-service/middlewares/errors.js.map +1 -0
  505. package/dist/services/document-service/middlewares/errors.mjs +27 -0
  506. package/dist/services/document-service/middlewares/errors.mjs.map +1 -0
  507. package/dist/services/document-service/middlewares/middleware-manager.js +51 -0
  508. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -0
  509. package/dist/services/document-service/middlewares/middleware-manager.mjs +49 -0
  510. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -0
  511. package/dist/services/document-service/params.js +14 -0
  512. package/dist/services/document-service/params.js.map +1 -0
  513. package/dist/services/document-service/params.mjs +12 -0
  514. package/dist/services/document-service/params.mjs.map +1 -0
  515. package/dist/services/document-service/repository.d.ts.map +1 -1
  516. package/dist/services/document-service/repository.js +372 -0
  517. package/dist/services/document-service/repository.js.map +1 -0
  518. package/dist/services/document-service/repository.mjs +370 -0
  519. package/dist/services/document-service/repository.mjs.map +1 -0
  520. package/dist/services/document-service/transform/data.js +25 -0
  521. package/dist/services/document-service/transform/data.js.map +1 -0
  522. package/dist/services/document-service/transform/data.mjs +23 -0
  523. package/dist/services/document-service/transform/data.mjs.map +1 -0
  524. package/dist/services/document-service/transform/fields.js +33 -0
  525. package/dist/services/document-service/transform/fields.js.map +1 -0
  526. package/dist/services/document-service/transform/fields.mjs +31 -0
  527. package/dist/services/document-service/transform/fields.mjs.map +1 -0
  528. package/dist/services/document-service/transform/id-map.js +125 -0
  529. package/dist/services/document-service/transform/id-map.js.map +1 -0
  530. package/dist/services/document-service/transform/id-map.mjs +123 -0
  531. package/dist/services/document-service/transform/id-map.mjs.map +1 -0
  532. package/dist/services/document-service/transform/id-transform.js +41 -0
  533. package/dist/services/document-service/transform/id-transform.js.map +1 -0
  534. package/dist/services/document-service/transform/id-transform.mjs +39 -0
  535. package/dist/services/document-service/transform/id-transform.mjs.map +1 -0
  536. package/dist/services/document-service/transform/populate.js +26 -0
  537. package/dist/services/document-service/transform/populate.js.map +1 -0
  538. package/dist/services/document-service/transform/populate.mjs +24 -0
  539. package/dist/services/document-service/transform/populate.mjs.map +1 -0
  540. package/dist/services/document-service/transform/query.js +14 -0
  541. package/dist/services/document-service/transform/query.js.map +1 -0
  542. package/dist/services/document-service/transform/query.mjs +12 -0
  543. package/dist/services/document-service/transform/query.mjs.map +1 -0
  544. package/dist/services/document-service/transform/relations/extract/data-ids.js +80 -0
  545. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -0
  546. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +78 -0
  547. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -0
  548. package/dist/services/document-service/transform/relations/transform/data-ids.js +110 -0
  549. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -0
  550. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +108 -0
  551. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -0
  552. package/dist/services/document-service/transform/relations/transform/default-locale.js +50 -0
  553. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -0
  554. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +48 -0
  555. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -0
  556. package/dist/services/document-service/transform/relations/utils/dp.js +56 -0
  557. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -0
  558. package/dist/services/document-service/transform/relations/utils/dp.mjs +54 -0
  559. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -0
  560. package/dist/services/document-service/transform/relations/utils/i18n.js +27 -0
  561. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -0
  562. package/dist/services/document-service/transform/relations/utils/i18n.mjs +23 -0
  563. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -0
  564. package/dist/services/document-service/transform/relations/utils/map-relation.js +130 -0
  565. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -0
  566. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +127 -0
  567. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -0
  568. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  569. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  570. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  571. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  572. package/dist/services/document-service/utils/clean-component-join-table.d.ts +7 -0
  573. package/dist/services/document-service/utils/clean-component-join-table.d.ts.map +1 -0
  574. package/dist/services/document-service/utils/populate.js +71 -0
  575. package/dist/services/document-service/utils/populate.js.map +1 -0
  576. package/dist/services/document-service/utils/populate.mjs +69 -0
  577. package/dist/services/document-service/utils/populate.mjs.map +1 -0
  578. package/dist/services/document-service/utils/unidirectional-relations.d.ts +19 -2
  579. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  580. package/dist/services/document-service/utils/unidirectional-relations.js +131 -0
  581. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -0
  582. package/dist/services/document-service/utils/unidirectional-relations.mjs +128 -0
  583. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -0
  584. package/dist/services/entity-service/index.js +238 -0
  585. package/dist/services/entity-service/index.js.map +1 -0
  586. package/dist/services/entity-service/index.mjs +236 -0
  587. package/dist/services/entity-service/index.mjs.map +1 -0
  588. package/dist/services/entity-validator/blocks-validator.js +160 -0
  589. package/dist/services/entity-validator/blocks-validator.js.map +1 -0
  590. package/dist/services/entity-validator/blocks-validator.mjs +158 -0
  591. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -0
  592. package/dist/services/entity-validator/index.d.ts.map +1 -1
  593. package/dist/services/entity-validator/index.js +393 -0
  594. package/dist/services/entity-validator/index.js.map +1 -0
  595. package/dist/services/entity-validator/index.mjs +391 -0
  596. package/dist/services/entity-validator/index.mjs.map +1 -0
  597. package/dist/services/entity-validator/validators.d.ts +1 -0
  598. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  599. package/dist/services/entity-validator/validators.js +302 -0
  600. package/dist/services/entity-validator/validators.js.map +1 -0
  601. package/dist/services/entity-validator/validators.mjs +293 -0
  602. package/dist/services/entity-validator/validators.mjs.map +1 -0
  603. package/dist/services/errors.js +76 -0
  604. package/dist/services/errors.js.map +1 -0
  605. package/dist/services/errors.mjs +72 -0
  606. package/dist/services/errors.mjs.map +1 -0
  607. package/dist/services/event-hub.js +85 -0
  608. package/dist/services/event-hub.js.map +1 -0
  609. package/dist/services/event-hub.mjs +83 -0
  610. package/dist/services/event-hub.mjs.map +1 -0
  611. package/dist/services/features.js +22 -0
  612. package/dist/services/features.js.map +1 -0
  613. package/dist/services/features.mjs +20 -0
  614. package/dist/services/features.mjs.map +1 -0
  615. package/dist/services/fs.js +52 -0
  616. package/dist/services/fs.js.map +1 -0
  617. package/dist/services/fs.mjs +50 -0
  618. package/dist/services/fs.mjs.map +1 -0
  619. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  620. package/dist/services/metrics/admin-user-hash.js +16 -0
  621. package/dist/services/metrics/admin-user-hash.js.map +1 -0
  622. package/dist/services/metrics/admin-user-hash.mjs +14 -0
  623. package/dist/services/metrics/admin-user-hash.mjs.map +1 -0
  624. package/dist/services/metrics/index.d.ts +1 -1
  625. package/dist/services/metrics/index.d.ts.map +1 -1
  626. package/dist/services/metrics/index.js +53 -0
  627. package/dist/services/metrics/index.js.map +1 -0
  628. package/dist/services/metrics/index.mjs +51 -0
  629. package/dist/services/metrics/index.mjs.map +1 -0
  630. package/dist/services/metrics/is-truthy.js +16 -0
  631. package/dist/services/metrics/is-truthy.js.map +1 -0
  632. package/dist/services/metrics/is-truthy.mjs +14 -0
  633. package/dist/services/metrics/is-truthy.mjs.map +1 -0
  634. package/dist/services/metrics/middleware.d.ts +2 -1
  635. package/dist/services/metrics/middleware.d.ts.map +1 -1
  636. package/dist/services/metrics/middleware.js +40 -0
  637. package/dist/services/metrics/middleware.js.map +1 -0
  638. package/dist/services/metrics/middleware.mjs +38 -0
  639. package/dist/services/metrics/middleware.mjs.map +1 -0
  640. package/dist/services/metrics/rate-limiter.js +26 -0
  641. package/dist/services/metrics/rate-limiter.js.map +1 -0
  642. package/dist/services/metrics/rate-limiter.mjs +24 -0
  643. package/dist/services/metrics/rate-limiter.mjs.map +1 -0
  644. package/dist/services/metrics/sender.d.ts.map +1 -1
  645. package/dist/services/metrics/sender.js +86 -0
  646. package/dist/services/metrics/sender.js.map +1 -0
  647. package/dist/services/metrics/sender.mjs +84 -0
  648. package/dist/services/metrics/sender.mjs.map +1 -0
  649. package/dist/services/query-params.js +15 -0
  650. package/dist/services/query-params.js.map +1 -0
  651. package/dist/services/query-params.mjs +13 -0
  652. package/dist/services/query-params.mjs.map +1 -0
  653. package/dist/services/reloader.js +39 -0
  654. package/dist/services/reloader.js.map +1 -0
  655. package/dist/services/reloader.mjs +37 -0
  656. package/dist/services/reloader.mjs.map +1 -0
  657. package/dist/services/request-context.js +16 -0
  658. package/dist/services/request-context.js.map +1 -0
  659. package/dist/services/request-context.mjs +14 -0
  660. package/dist/services/request-context.mjs.map +1 -0
  661. package/dist/services/server/admin-api.js +14 -0
  662. package/dist/services/server/admin-api.js.map +1 -0
  663. package/dist/services/server/admin-api.mjs +12 -0
  664. package/dist/services/server/admin-api.mjs.map +1 -0
  665. package/dist/services/server/api.js +36 -0
  666. package/dist/services/server/api.js.map +1 -0
  667. package/dist/services/server/api.mjs +34 -0
  668. package/dist/services/server/api.mjs.map +1 -0
  669. package/dist/services/server/compose-endpoint.js +128 -0
  670. package/dist/services/server/compose-endpoint.js.map +1 -0
  671. package/dist/services/server/compose-endpoint.mjs +126 -0
  672. package/dist/services/server/compose-endpoint.mjs.map +1 -0
  673. package/dist/services/server/content-api.js +14 -0
  674. package/dist/services/server/content-api.js.map +1 -0
  675. package/dist/services/server/content-api.mjs +12 -0
  676. package/dist/services/server/content-api.mjs.map +1 -0
  677. package/dist/services/server/http-server.js +54 -0
  678. package/dist/services/server/http-server.js.map +1 -0
  679. package/dist/services/server/http-server.mjs +52 -0
  680. package/dist/services/server/http-server.mjs.map +1 -0
  681. package/dist/services/server/index.js +90 -0
  682. package/dist/services/server/index.js.map +1 -0
  683. package/dist/services/server/index.mjs +88 -0
  684. package/dist/services/server/index.mjs.map +1 -0
  685. package/dist/services/server/koa.js +54 -0
  686. package/dist/services/server/koa.js.map +1 -0
  687. package/dist/services/server/koa.mjs +52 -0
  688. package/dist/services/server/koa.mjs.map +1 -0
  689. package/dist/services/server/middleware.js +96 -0
  690. package/dist/services/server/middleware.js.map +1 -0
  691. package/dist/services/server/middleware.mjs +93 -0
  692. package/dist/services/server/middleware.mjs.map +1 -0
  693. package/dist/services/server/policy.js +27 -0
  694. package/dist/services/server/policy.js.map +1 -0
  695. package/dist/services/server/policy.mjs +25 -0
  696. package/dist/services/server/policy.mjs.map +1 -0
  697. package/dist/services/server/register-middlewares.js +79 -0
  698. package/dist/services/server/register-middlewares.js.map +1 -0
  699. package/dist/services/server/register-middlewares.mjs +77 -0
  700. package/dist/services/server/register-middlewares.mjs.map +1 -0
  701. package/dist/services/server/register-routes.js +119 -0
  702. package/dist/services/server/register-routes.js.map +1 -0
  703. package/dist/services/server/register-routes.mjs +117 -0
  704. package/dist/services/server/register-routes.mjs.map +1 -0
  705. package/dist/services/server/routing.d.ts +10 -0
  706. package/dist/services/server/routing.d.ts.map +1 -1
  707. package/dist/services/server/routing.js +110 -0
  708. package/dist/services/server/routing.js.map +1 -0
  709. package/dist/services/server/routing.mjs +107 -0
  710. package/dist/services/server/routing.mjs.map +1 -0
  711. package/dist/services/session-manager.d.ts +167 -0
  712. package/dist/services/session-manager.d.ts.map +1 -0
  713. package/dist/services/session-manager.js +529 -0
  714. package/dist/services/session-manager.js.map +1 -0
  715. package/dist/services/session-manager.mjs +526 -0
  716. package/dist/services/session-manager.mjs.map +1 -0
  717. package/dist/services/utils/conditional-fields.d.ts +3 -0
  718. package/dist/services/utils/conditional-fields.d.ts.map +1 -0
  719. package/dist/services/utils/conditional-fields.js +22 -0
  720. package/dist/services/utils/conditional-fields.js.map +1 -0
  721. package/dist/services/utils/conditional-fields.mjs +20 -0
  722. package/dist/services/utils/conditional-fields.mjs.map +1 -0
  723. package/dist/services/utils/dynamic-zones.js +16 -0
  724. package/dist/services/utils/dynamic-zones.js.map +1 -0
  725. package/dist/services/utils/dynamic-zones.mjs +14 -0
  726. package/dist/services/utils/dynamic-zones.mjs.map +1 -0
  727. package/dist/services/webhook-runner.js +135 -0
  728. package/dist/services/webhook-runner.js.map +1 -0
  729. package/dist/services/webhook-runner.mjs +133 -0
  730. package/dist/services/webhook-runner.mjs.map +1 -0
  731. package/dist/services/webhook-store.js +143 -0
  732. package/dist/services/webhook-store.js.map +1 -0
  733. package/dist/services/webhook-store.mjs +140 -0
  734. package/dist/services/webhook-store.mjs.map +1 -0
  735. package/dist/services/worker-queue.js +51 -0
  736. package/dist/services/worker-queue.js.map +1 -0
  737. package/dist/services/worker-queue.mjs +49 -0
  738. package/dist/services/worker-queue.mjs.map +1 -0
  739. package/dist/utils/convert-custom-field-type.js +21 -0
  740. package/dist/utils/convert-custom-field-type.js.map +1 -0
  741. package/dist/utils/convert-custom-field-type.mjs +19 -0
  742. package/dist/utils/convert-custom-field-type.mjs.map +1 -0
  743. package/dist/utils/cron.js +72 -0
  744. package/dist/utils/cron.js.map +1 -0
  745. package/dist/utils/cron.mjs +70 -0
  746. package/dist/utils/cron.mjs.map +1 -0
  747. package/dist/utils/fetch.d.ts +5 -1
  748. package/dist/utils/fetch.d.ts.map +1 -1
  749. package/dist/utils/fetch.js +31 -0
  750. package/dist/utils/fetch.js.map +1 -0
  751. package/dist/utils/fetch.mjs +29 -0
  752. package/dist/utils/fetch.mjs.map +1 -0
  753. package/dist/utils/filepath-to-prop-path.js +25 -0
  754. package/dist/utils/filepath-to-prop-path.js.map +1 -0
  755. package/dist/utils/filepath-to-prop-path.mjs +23 -0
  756. package/dist/utils/filepath-to-prop-path.mjs.map +1 -0
  757. package/dist/utils/is-initialized.js +25 -0
  758. package/dist/utils/is-initialized.js.map +1 -0
  759. package/dist/utils/is-initialized.mjs +23 -0
  760. package/dist/utils/is-initialized.mjs.map +1 -0
  761. package/dist/utils/lifecycles.js +10 -0
  762. package/dist/utils/lifecycles.js.map +1 -0
  763. package/dist/utils/lifecycles.mjs +8 -0
  764. package/dist/utils/lifecycles.mjs.map +1 -0
  765. package/dist/utils/load-config-file.js +47 -0
  766. package/dist/utils/load-config-file.js.map +1 -0
  767. package/dist/utils/load-config-file.mjs +45 -0
  768. package/dist/utils/load-config-file.mjs.map +1 -0
  769. package/dist/utils/load-files.js +44 -0
  770. package/dist/utils/load-files.js.map +1 -0
  771. package/dist/utils/load-files.mjs +42 -0
  772. package/dist/utils/load-files.mjs.map +1 -0
  773. package/dist/utils/open-browser.js +11 -0
  774. package/dist/utils/open-browser.js.map +1 -0
  775. package/dist/utils/open-browser.mjs +9 -0
  776. package/dist/utils/open-browser.mjs.map +1 -0
  777. package/dist/utils/resolve-working-dirs.js +26 -0
  778. package/dist/utils/resolve-working-dirs.js.map +1 -0
  779. package/dist/utils/resolve-working-dirs.mjs +24 -0
  780. package/dist/utils/resolve-working-dirs.mjs.map +1 -0
  781. package/dist/utils/signals.js +23 -0
  782. package/dist/utils/signals.js.map +1 -0
  783. package/dist/utils/signals.mjs +21 -0
  784. package/dist/utils/signals.mjs.map +1 -0
  785. package/dist/utils/startup-logger.js +110 -0
  786. package/dist/utils/startup-logger.js.map +1 -0
  787. package/dist/utils/startup-logger.mjs +108 -0
  788. package/dist/utils/startup-logger.mjs.map +1 -0
  789. package/dist/utils/transform-content-types-to-models.d.ts +197 -0
  790. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  791. package/dist/utils/transform-content-types-to-models.js +377 -0
  792. package/dist/utils/transform-content-types-to-models.js.map +1 -0
  793. package/dist/utils/transform-content-types-to-models.mjs +365 -0
  794. package/dist/utils/transform-content-types-to-models.mjs.map +1 -0
  795. package/dist/utils/update-notifier/index.js +80 -0
  796. package/dist/utils/update-notifier/index.js.map +1 -0
  797. package/dist/utils/update-notifier/index.mjs +78 -0
  798. package/dist/utils/update-notifier/index.mjs.map +1 -0
  799. package/package.json +19 -14
@@ -0,0 +1,105 @@
1
+ import _ from 'lodash';
2
+ import createActionProvider from './providers/action.mjs';
3
+ import createConditionProvider from './providers/condition.mjs';
4
+ import createPermissionEngine from './engine.mjs';
5
+
6
+ const typeSymbol = Symbol.for('__type__');
7
+ /**
8
+ * Creates a handler that checks if the permission's action exists in the action registry
9
+ */ const createValidatePermissionHandler = (actionProvider)=>({ permission })=>{
10
+ const action = actionProvider.get(permission.action);
11
+ // If the action isn't registered into the action provider, then ignore the permission and warn the user
12
+ if (!action) {
13
+ strapi.log.debug(`Unknown action "${permission.action}" supplied when registering a new permission`);
14
+ return false;
15
+ }
16
+ return true;
17
+ };
18
+ /**
19
+ * Create instances of providers and permission engine for the core content-API service.
20
+ * Also, expose utilities to get information about available actions and such.
21
+ */ var instantiatePermissionsUtilities = ((strapi1)=>{
22
+ // NOTE: Here we define both an action and condition provider,
23
+ // but at the moment, we're only using the action one.
24
+ const providers = {
25
+ action: createActionProvider(),
26
+ condition: createConditionProvider()
27
+ };
28
+ /**
29
+ * Get a tree representation of the available Content API actions
30
+ * based on the methods of the Content API controllers.
31
+ *
32
+ * @note Only actions bound to a content-API route are returned.
33
+ */ const getActionsMap = ()=>{
34
+ const actionMap = {};
35
+ /**
36
+ * Check if a controller's action is bound to the
37
+ * content-api by looking at a potential __type__ symbol
38
+ */ const isContentApi = (action)=>{
39
+ if (!_.has(action, typeSymbol)) {
40
+ return false;
41
+ }
42
+ return action[typeSymbol].includes('content-api');
43
+ };
44
+ /**
45
+ * Register actions from a specific API source into the result tree
46
+ */ const registerAPIsActions = (apis, source)=>{
47
+ _.forEach(apis, (api, apiName)=>{
48
+ const controllers = _.reduce(api.controllers, (acc, controller, controllerName)=>{
49
+ const contentApiActions = _.pickBy(controller, isContentApi);
50
+ if (_.isEmpty(contentApiActions)) {
51
+ return acc;
52
+ }
53
+ acc[controllerName] = Object.keys(contentApiActions);
54
+ return acc;
55
+ }, {});
56
+ if (!_.isEmpty(controllers)) {
57
+ actionMap[`${source}::${apiName}`] = {
58
+ controllers
59
+ };
60
+ }
61
+ });
62
+ };
63
+ registerAPIsActions(strapi1.apis, 'api');
64
+ registerAPIsActions(strapi1.plugins, 'plugin');
65
+ return actionMap;
66
+ };
67
+ /**
68
+ * Register all the content-API controllers actions into the action provider.
69
+ * This method make use of the {@link getActionsMap} to generate the list of actions to register.
70
+ */ const registerActions = async ()=>{
71
+ const actionsMap = getActionsMap();
72
+ // For each API
73
+ for (const [api, value] of Object.entries(actionsMap)){
74
+ const { controllers } = value;
75
+ // Register controllers methods as actions
76
+ for (const [controller, actions] of Object.entries(controllers)){
77
+ // Register each action individually
78
+ await Promise.all(actions.map((action)=>{
79
+ const actionUID = `${api}.${controller}.${action}`;
80
+ return providers.action.register(actionUID, {
81
+ api,
82
+ controller,
83
+ action,
84
+ uid: actionUID
85
+ });
86
+ }));
87
+ }
88
+ }
89
+ };
90
+ // Create an instance of a content-API permission engine
91
+ // and binds a custom validation handler to it
92
+ const engine = createPermissionEngine({
93
+ providers
94
+ });
95
+ engine.on('before-format::validate.permission', createValidatePermissionHandler(providers.action));
96
+ return {
97
+ engine,
98
+ providers,
99
+ registerActions,
100
+ getActionsMap
101
+ };
102
+ });
103
+
104
+ export { instantiatePermissionsUtilities as default };
105
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../src/services/content-api/permissions/index.ts"],"sourcesContent":["import _ from 'lodash';\nimport type { Core } from '@strapi/types';\nimport { createActionProvider, createConditionProvider } from './providers';\nimport createPermissionEngine from './engine';\n\nconst typeSymbol = Symbol.for('__type__');\n\ninterface ValidatePermissionHandler {\n (params: { permission: { action: string } }): boolean;\n}\n\n/**\n * Creates a handler that checks if the permission's action exists in the action registry\n */\nconst createValidatePermissionHandler =\n (actionProvider: ReturnType<typeof createActionProvider>): ValidatePermissionHandler =>\n ({ permission }) => {\n const action = actionProvider.get(permission.action);\n\n // If the action isn't registered into the action provider, then ignore the permission and warn the user\n if (!action) {\n strapi.log.debug(\n `Unknown action \"${permission.action}\" supplied when registering a new permission`\n );\n\n return false;\n }\n\n return true;\n };\n\n/**\n * Create instances of providers and permission engine for the core content-API service.\n * Also, expose utilities to get information about available actions and such.\n */\nexport default (strapi: Core.Strapi) => {\n // NOTE: Here we define both an action and condition provider,\n // but at the moment, we're only using the action one.\n const providers = {\n action: createActionProvider(),\n condition: createConditionProvider(),\n };\n\n /**\n * Get a tree representation of the available Content API actions\n * based on the methods of the Content API controllers.\n *\n * @note Only actions bound to a content-API route are returned.\n */\n const getActionsMap = () => {\n const actionMap: Record<\n string,\n {\n controllers: Record<string, string[]>;\n }\n > = {};\n\n /**\n * Check if a controller's action is bound to the\n * content-api by looking at a potential __type__ symbol\n */\n const isContentApi = (action: Core.ControllerHandler & { [s: symbol]: any }) => {\n if (!_.has(action, typeSymbol)) {\n return false;\n }\n\n return action[typeSymbol].includes('content-api');\n };\n\n /**\n * Register actions from a specific API source into the result tree\n */\n const registerAPIsActions = (\n apis: Record<string, Core.Plugin | Core.Module>,\n source: 'api' | 'plugin'\n ) => {\n _.forEach(apis, (api, apiName) => {\n const controllers = _.reduce(\n api.controllers,\n (acc, controller, controllerName) => {\n const contentApiActions = _.pickBy(controller, isContentApi);\n\n if (_.isEmpty(contentApiActions)) {\n return acc;\n }\n\n acc[controllerName] = Object.keys(contentApiActions);\n\n return acc;\n },\n {} as Record<string, string[]>\n );\n\n if (!_.isEmpty(controllers)) {\n actionMap[`${source}::${apiName}`] = { controllers };\n }\n });\n };\n\n registerAPIsActions(strapi.apis, 'api');\n registerAPIsActions(strapi.plugins, 'plugin');\n\n return actionMap;\n };\n\n /**\n * Register all the content-API controllers actions into the action provider.\n * This method make use of the {@link getActionsMap} to generate the list of actions to register.\n */\n const registerActions = async () => {\n const actionsMap = getActionsMap();\n\n // For each API\n for (const [api, value] of Object.entries(actionsMap)) {\n const { controllers } = value;\n\n // Register controllers methods as actions\n for (const [controller, actions] of Object.entries(controllers)) {\n // Register each action individually\n await Promise.all(\n actions.map((action) => {\n const actionUID = `${api}.${controller}.${action}`;\n\n return providers.action.register(actionUID, {\n api,\n controller,\n action,\n uid: actionUID,\n });\n })\n );\n }\n }\n };\n\n // Create an instance of a content-API permission engine\n // and binds a custom validation handler to it\n const engine = createPermissionEngine({ providers });\n\n engine.on(\n 'before-format::validate.permission',\n createValidatePermissionHandler(providers.action)\n );\n\n return {\n engine,\n providers,\n registerActions,\n getActionsMap,\n };\n};\n"],"names":["typeSymbol","Symbol","for","createValidatePermissionHandler","actionProvider","permission","action","get","strapi","log","debug","providers","createActionProvider","condition","createConditionProvider","getActionsMap","actionMap","isContentApi","_","has","includes","registerAPIsActions","apis","source","forEach","api","apiName","controllers","reduce","acc","controller","controllerName","contentApiActions","pickBy","isEmpty","Object","keys","plugins","registerActions","actionsMap","value","entries","actions","Promise","all","map","actionUID","register","uid","engine","createPermissionEngine","on"],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ var strapiUtils = require('@strapi/utils');
4
+
5
+ var createActionProvider = ((options = {})=>{
6
+ const provider = strapiUtils.providerFactory(options);
7
+ return {
8
+ ...provider,
9
+ async register (action, payload) {
10
+ if (strapi.isLoaded) {
11
+ throw new Error(`You can't register new actions outside the bootstrap function.`);
12
+ }
13
+ return provider.register(action, payload);
14
+ }
15
+ };
16
+ });
17
+
18
+ module.exports = createActionProvider;
19
+ //# sourceMappingURL=action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.js","sources":["../../../../../src/services/content-api/permissions/providers/action.ts"],"sourcesContent":["import { providerFactory } from '@strapi/utils';\n\nexport default (options = {}) => {\n const provider = providerFactory(options);\n\n return {\n ...provider,\n\n async register(action: string, payload: Record<string, unknown>) {\n if (strapi.isLoaded) {\n throw new Error(`You can't register new actions outside the bootstrap function.`);\n }\n\n return provider.register(action, payload);\n },\n };\n};\n"],"names":["options","provider","providerFactory","register","action","payload","strapi","isLoaded","Error"],"mappings":";;;;AAEA,2BAAe,CAAA,CAACA,OAAU,GAAA,EAAE,GAAA;AAC1B,IAAA,MAAMC,WAAWC,2BAAgBF,CAAAA,OAAAA,CAAAA;IAEjC,OAAO;AACL,QAAA,GAAGC,QAAQ;QAEX,MAAME,QAAAA,CAAAA,CAASC,MAAc,EAAEC,OAAgC,EAAA;YAC7D,IAAIC,MAAAA,CAAOC,QAAQ,EAAE;AACnB,gBAAA,MAAM,IAAIC,KAAAA,CAAM,CAAC,8DAA8D,CAAC,CAAA;AAClF;YAEA,OAAOP,QAAAA,CAASE,QAAQ,CAACC,MAAQC,EAAAA,OAAAA,CAAAA;AACnC;AACF,KAAA;AACF,CAAA;;;;"}
@@ -0,0 +1,17 @@
1
+ import { providerFactory } from '@strapi/utils';
2
+
3
+ var createActionProvider = ((options = {})=>{
4
+ const provider = providerFactory(options);
5
+ return {
6
+ ...provider,
7
+ async register (action, payload) {
8
+ if (strapi.isLoaded) {
9
+ throw new Error(`You can't register new actions outside the bootstrap function.`);
10
+ }
11
+ return provider.register(action, payload);
12
+ }
13
+ };
14
+ });
15
+
16
+ export { createActionProvider as default };
17
+ //# sourceMappingURL=action.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.mjs","sources":["../../../../../src/services/content-api/permissions/providers/action.ts"],"sourcesContent":["import { providerFactory } from '@strapi/utils';\n\nexport default (options = {}) => {\n const provider = providerFactory(options);\n\n return {\n ...provider,\n\n async register(action: string, payload: Record<string, unknown>) {\n if (strapi.isLoaded) {\n throw new Error(`You can't register new actions outside the bootstrap function.`);\n }\n\n return provider.register(action, payload);\n },\n };\n};\n"],"names":["options","provider","providerFactory","register","action","payload","strapi","isLoaded","Error"],"mappings":";;AAEA,2BAAe,CAAA,CAACA,OAAU,GAAA,EAAE,GAAA;AAC1B,IAAA,MAAMC,WAAWC,eAAgBF,CAAAA,OAAAA,CAAAA;IAEjC,OAAO;AACL,QAAA,GAAGC,QAAQ;QAEX,MAAME,QAAAA,CAAAA,CAASC,MAAc,EAAEC,OAAgC,EAAA;YAC7D,IAAIC,MAAAA,CAAOC,QAAQ,EAAE;AACnB,gBAAA,MAAM,IAAIC,KAAAA,CAAM,CAAC,8DAA8D,CAAC,CAAA;AAClF;YAEA,OAAOP,QAAAA,CAASE,QAAQ,CAACC,MAAQC,EAAAA,OAAAA,CAAAA;AACnC;AACF,KAAA;AACF,CAAA;;;;"}
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ var strapiUtils = require('@strapi/utils');
4
+
5
+ var createConditionProvider = ((options = {})=>{
6
+ const provider = strapiUtils.providerFactory(options);
7
+ return {
8
+ ...provider,
9
+ async register (condition) {
10
+ if (strapi.isLoaded) {
11
+ throw new Error(`You can't register new conditions outside the bootstrap function.`);
12
+ }
13
+ return provider.register(condition.name, condition);
14
+ }
15
+ };
16
+ });
17
+
18
+ module.exports = createConditionProvider;
19
+ //# sourceMappingURL=condition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"condition.js","sources":["../../../../../src/services/content-api/permissions/providers/condition.ts"],"sourcesContent":["import { providerFactory } from '@strapi/utils';\n\nexport interface Condition {\n name: string;\n [key: string]: unknown;\n}\n\nexport default (options = {}) => {\n const provider = providerFactory(options);\n\n return {\n ...provider,\n\n async register(condition: Condition) {\n if (strapi.isLoaded) {\n throw new Error(`You can't register new conditions outside the bootstrap function.`);\n }\n\n return provider.register(condition.name, condition);\n },\n };\n};\n"],"names":["options","provider","providerFactory","register","condition","strapi","isLoaded","Error","name"],"mappings":";;;;AAOA,8BAAe,CAAA,CAACA,OAAU,GAAA,EAAE,GAAA;AAC1B,IAAA,MAAMC,WAAWC,2BAAgBF,CAAAA,OAAAA,CAAAA;IAEjC,OAAO;AACL,QAAA,GAAGC,QAAQ;AAEX,QAAA,MAAME,UAASC,SAAoB,EAAA;YACjC,IAAIC,MAAAA,CAAOC,QAAQ,EAAE;AACnB,gBAAA,MAAM,IAAIC,KAAAA,CAAM,CAAC,iEAAiE,CAAC,CAAA;AACrF;AAEA,YAAA,OAAON,QAASE,CAAAA,QAAQ,CAACC,SAAAA,CAAUI,IAAI,EAAEJ,SAAAA,CAAAA;AAC3C;AACF,KAAA;AACF,CAAA;;;;"}
@@ -0,0 +1,17 @@
1
+ import { providerFactory } from '@strapi/utils';
2
+
3
+ var createConditionProvider = ((options = {})=>{
4
+ const provider = providerFactory(options);
5
+ return {
6
+ ...provider,
7
+ async register (condition) {
8
+ if (strapi.isLoaded) {
9
+ throw new Error(`You can't register new conditions outside the bootstrap function.`);
10
+ }
11
+ return provider.register(condition.name, condition);
12
+ }
13
+ };
14
+ });
15
+
16
+ export { createConditionProvider as default };
17
+ //# sourceMappingURL=condition.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"condition.mjs","sources":["../../../../../src/services/content-api/permissions/providers/condition.ts"],"sourcesContent":["import { providerFactory } from '@strapi/utils';\n\nexport interface Condition {\n name: string;\n [key: string]: unknown;\n}\n\nexport default (options = {}) => {\n const provider = providerFactory(options);\n\n return {\n ...provider,\n\n async register(condition: Condition) {\n if (strapi.isLoaded) {\n throw new Error(`You can't register new conditions outside the bootstrap function.`);\n }\n\n return provider.register(condition.name, condition);\n },\n };\n};\n"],"names":["options","provider","providerFactory","register","condition","strapi","isLoaded","Error","name"],"mappings":";;AAOA,8BAAe,CAAA,CAACA,OAAU,GAAA,EAAE,GAAA;AAC1B,IAAA,MAAMC,WAAWC,eAAgBF,CAAAA,OAAAA,CAAAA;IAEjC,OAAO;AACL,QAAA,GAAGC,QAAQ;AAEX,QAAA,MAAME,UAASC,SAAoB,EAAA;YACjC,IAAIC,MAAAA,CAAOC,QAAQ,EAAE;AACnB,gBAAA,MAAM,IAAIC,KAAAA,CAAM,CAAC,iEAAiE,CAAC,CAAA;AACrF;AAEA,YAAA,OAAON,QAASE,CAAAA,QAAQ,CAACC,SAAAA,CAAUI,IAAI,EAAEJ,SAAAA,CAAAA;AAC3C;AACF,KAAA;AACF,CAAA;;;;"}
@@ -0,0 +1,13 @@
1
+ import type { Core, Struct } from '@strapi/types';
2
+ import type { FieldContentSourceMap } from '@strapi/admin/strapi-admin';
3
+ interface EncodingInfo {
4
+ data: any;
5
+ schema: Struct.Schema;
6
+ }
7
+ declare const createContentSourceMapsService: (strapi: Core.Strapi) => {
8
+ encodeField(text: string, { kind, model, documentId, type, path, locale }: FieldContentSourceMap): string;
9
+ encodeEntry({ data, schema }: EncodingInfo): Promise<any>;
10
+ encodeSourceMaps({ data, schema }: EncodingInfo): Promise<any>;
11
+ };
12
+ export { createContentSourceMapsService };
13
+ //# sourceMappingURL=content-source-maps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-source-maps.d.ts","sourceRoot":"","sources":["../../src/services/content-source-maps.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAO,MAAM,eAAe,CAAC;AAEvD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAwCxE,UAAU,YAAY;IACpB,IAAI,EAAE,GAAG,CAAC;IACV,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;CACvB;AAMD,QAAA,MAAM,8BAA8B,WAAY,KAAK,MAAM;sBAG/C,MAAM,mDACqC,qBAAqB;kCAyBpC,YAAY,GAAG,QAAQ,GAAG,CAAC;uCAiCtB,YAAY,GAAG,QAAQ,GAAG,CAAC;CAmBvE,CAAC;AAEF,OAAO,EAAE,8BAA8B,EAAE,CAAC"}
@@ -0,0 +1,108 @@
1
+ 'use strict';
2
+
3
+ var stega = require('@vercel/stega');
4
+ var strapiUtils = require('@strapi/utils');
5
+
6
+ const ENCODABLE_TYPES = [
7
+ 'string',
8
+ 'text',
9
+ 'richtext',
10
+ 'biginteger',
11
+ 'date',
12
+ 'time',
13
+ 'datetime',
14
+ 'timestamp',
15
+ 'boolean',
16
+ 'enumeration',
17
+ 'json',
18
+ 'media',
19
+ 'email',
20
+ 'password'
21
+ ];
22
+ // TODO: use a centralized store for these fields that would be shared with the CM and CTB
23
+ const EXCLUDED_FIELDS = [
24
+ 'id',
25
+ 'documentId',
26
+ 'locale',
27
+ 'localizations',
28
+ 'created_by',
29
+ 'updated_by',
30
+ 'created_at',
31
+ 'updated_at',
32
+ 'publishedAt'
33
+ ];
34
+ const isObject = (value)=>{
35
+ return typeof value === 'object' && value !== null;
36
+ };
37
+ const createContentSourceMapsService = (strapi)=>{
38
+ return {
39
+ encodeField (text, { kind, model, documentId, type, path, locale }) {
40
+ /**
41
+ * Combine all metadata into into a one string so we only have to deal with one data-atribute
42
+ * on the frontend. Make it human readable because that data-attribute may be set manually by
43
+ * users for fields that don't support sourcemap encoding.
44
+ */ const strapiSource = new URLSearchParams();
45
+ strapiSource.set('documentId', documentId);
46
+ strapiSource.set('type', type);
47
+ strapiSource.set('path', path);
48
+ if (model) {
49
+ strapiSource.set('model', model);
50
+ }
51
+ if (kind) {
52
+ strapiSource.set('kind', kind);
53
+ }
54
+ if (locale) {
55
+ strapiSource.set('locale', locale);
56
+ }
57
+ return stega.vercelStegaCombine(text, {
58
+ strapiSource: strapiSource.toString()
59
+ });
60
+ },
61
+ async encodeEntry ({ data, schema }) {
62
+ if (!isObject(data) || data === undefined) {
63
+ return data;
64
+ }
65
+ return strapiUtils.traverseEntity(({ key, value, attribute, schema, path }, { set })=>{
66
+ if (!attribute || EXCLUDED_FIELDS.includes(key)) {
67
+ return;
68
+ }
69
+ if (ENCODABLE_TYPES.includes(attribute.type) && typeof value === 'string') {
70
+ set(key, this.encodeField(value, {
71
+ path: path.rawWithIndices,
72
+ type: attribute.type,
73
+ kind: schema.kind,
74
+ model: schema.uid,
75
+ locale: data.locale,
76
+ documentId: data.documentId
77
+ }));
78
+ }
79
+ }, {
80
+ schema,
81
+ getModel: (uid)=>strapi.getModel(uid)
82
+ }, data);
83
+ },
84
+ async encodeSourceMaps ({ data, schema }) {
85
+ try {
86
+ if (Array.isArray(data)) {
87
+ return await Promise.all(data.map((item)=>this.encodeSourceMaps({
88
+ data: item,
89
+ schema
90
+ })));
91
+ }
92
+ if (!isObject(data)) {
93
+ return data;
94
+ }
95
+ return await this.encodeEntry({
96
+ data,
97
+ schema
98
+ });
99
+ } catch (error) {
100
+ strapi.log.error('Error encoding source maps:', error);
101
+ return data;
102
+ }
103
+ }
104
+ };
105
+ };
106
+
107
+ exports.createContentSourceMapsService = createContentSourceMapsService;
108
+ //# sourceMappingURL=content-source-maps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-source-maps.js","sources":["../../src/services/content-source-maps.ts"],"sourcesContent":["import { vercelStegaCombine } from '@vercel/stega';\nimport type { Core, Struct, UID } from '@strapi/types';\nimport { traverseEntity } from '@strapi/utils';\nimport type { FieldContentSourceMap } from '@strapi/admin/strapi-admin';\n\nconst ENCODABLE_TYPES = [\n 'string',\n 'text',\n 'richtext',\n 'biginteger',\n 'date',\n 'time',\n 'datetime',\n 'timestamp',\n 'boolean',\n 'enumeration',\n 'json',\n 'media',\n 'email',\n 'password',\n /**\n * We cannot modify the response shape, so types that aren't based on string cannot be encoded:\n * - json: object\n * - blocks: object, will require a custom implementation in a dedicated PR\n * - integer, float and decimal: number\n * - boolean: boolean (believe it or not)\n * - uid: can be stringified but would mess up URLs\n */\n];\n\n// TODO: use a centralized store for these fields that would be shared with the CM and CTB\nconst EXCLUDED_FIELDS = [\n 'id',\n 'documentId',\n 'locale',\n 'localizations',\n 'created_by',\n 'updated_by',\n 'created_at',\n 'updated_at',\n 'publishedAt',\n];\n\ninterface EncodingInfo {\n data: any;\n schema: Struct.Schema;\n}\n\nconst isObject = (value: unknown): value is Record<string, any> => {\n return typeof value === 'object' && value !== null;\n};\n\nconst createContentSourceMapsService = (strapi: Core.Strapi) => {\n return {\n encodeField(\n text: string,\n { kind, model, documentId, type, path, locale }: FieldContentSourceMap\n ) {\n /**\n * Combine all metadata into into a one string so we only have to deal with one data-atribute\n * on the frontend. Make it human readable because that data-attribute may be set manually by\n * users for fields that don't support sourcemap encoding.\n */\n const strapiSource = new URLSearchParams();\n strapiSource.set('documentId', documentId);\n strapiSource.set('type', type);\n strapiSource.set('path', path);\n\n if (model) {\n strapiSource.set('model', model);\n }\n if (kind) {\n strapiSource.set('kind', kind);\n }\n if (locale) {\n strapiSource.set('locale', locale);\n }\n\n return vercelStegaCombine(text, { strapiSource: strapiSource.toString() });\n },\n\n async encodeEntry({ data, schema }: EncodingInfo): Promise<any> {\n if (!isObject(data) || data === undefined) {\n return data;\n }\n\n return traverseEntity(\n ({ key, value, attribute, schema, path }, { set }) => {\n if (!attribute || EXCLUDED_FIELDS.includes(key)) {\n return;\n }\n\n if (ENCODABLE_TYPES.includes(attribute.type) && typeof value === 'string') {\n set(\n key,\n this.encodeField(value, {\n path: path.rawWithIndices!,\n type: attribute.type,\n kind: schema.kind,\n model: schema.uid as UID.Schema,\n locale: data.locale,\n documentId: data.documentId,\n }) as any\n );\n }\n },\n {\n schema,\n getModel: (uid) => strapi.getModel(uid as UID.Schema),\n },\n data\n );\n },\n\n async encodeSourceMaps({ data, schema }: EncodingInfo): Promise<any> {\n try {\n if (Array.isArray(data)) {\n return await Promise.all(\n data.map((item) => this.encodeSourceMaps({ data: item, schema }))\n );\n }\n\n if (!isObject(data)) {\n return data;\n }\n\n return await this.encodeEntry({ data, schema });\n } catch (error) {\n strapi.log.error('Error encoding source maps:', error);\n return data;\n }\n },\n };\n};\n\nexport { createContentSourceMapsService };\n"],"names":["ENCODABLE_TYPES","EXCLUDED_FIELDS","isObject","value","createContentSourceMapsService","strapi","encodeField","text","kind","model","documentId","type","path","locale","strapiSource","URLSearchParams","set","vercelStegaCombine","toString","encodeEntry","data","schema","undefined","traverseEntity","key","attribute","includes","rawWithIndices","uid","getModel","encodeSourceMaps","Array","isArray","Promise","all","map","item","error","log"],"mappings":"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"}
@@ -0,0 +1,106 @@
1
+ import { vercelStegaCombine } from '@vercel/stega';
2
+ import { traverseEntity } from '@strapi/utils';
3
+
4
+ const ENCODABLE_TYPES = [
5
+ 'string',
6
+ 'text',
7
+ 'richtext',
8
+ 'biginteger',
9
+ 'date',
10
+ 'time',
11
+ 'datetime',
12
+ 'timestamp',
13
+ 'boolean',
14
+ 'enumeration',
15
+ 'json',
16
+ 'media',
17
+ 'email',
18
+ 'password'
19
+ ];
20
+ // TODO: use a centralized store for these fields that would be shared with the CM and CTB
21
+ const EXCLUDED_FIELDS = [
22
+ 'id',
23
+ 'documentId',
24
+ 'locale',
25
+ 'localizations',
26
+ 'created_by',
27
+ 'updated_by',
28
+ 'created_at',
29
+ 'updated_at',
30
+ 'publishedAt'
31
+ ];
32
+ const isObject = (value)=>{
33
+ return typeof value === 'object' && value !== null;
34
+ };
35
+ const createContentSourceMapsService = (strapi)=>{
36
+ return {
37
+ encodeField (text, { kind, model, documentId, type, path, locale }) {
38
+ /**
39
+ * Combine all metadata into into a one string so we only have to deal with one data-atribute
40
+ * on the frontend. Make it human readable because that data-attribute may be set manually by
41
+ * users for fields that don't support sourcemap encoding.
42
+ */ const strapiSource = new URLSearchParams();
43
+ strapiSource.set('documentId', documentId);
44
+ strapiSource.set('type', type);
45
+ strapiSource.set('path', path);
46
+ if (model) {
47
+ strapiSource.set('model', model);
48
+ }
49
+ if (kind) {
50
+ strapiSource.set('kind', kind);
51
+ }
52
+ if (locale) {
53
+ strapiSource.set('locale', locale);
54
+ }
55
+ return vercelStegaCombine(text, {
56
+ strapiSource: strapiSource.toString()
57
+ });
58
+ },
59
+ async encodeEntry ({ data, schema }) {
60
+ if (!isObject(data) || data === undefined) {
61
+ return data;
62
+ }
63
+ return traverseEntity(({ key, value, attribute, schema, path }, { set })=>{
64
+ if (!attribute || EXCLUDED_FIELDS.includes(key)) {
65
+ return;
66
+ }
67
+ if (ENCODABLE_TYPES.includes(attribute.type) && typeof value === 'string') {
68
+ set(key, this.encodeField(value, {
69
+ path: path.rawWithIndices,
70
+ type: attribute.type,
71
+ kind: schema.kind,
72
+ model: schema.uid,
73
+ locale: data.locale,
74
+ documentId: data.documentId
75
+ }));
76
+ }
77
+ }, {
78
+ schema,
79
+ getModel: (uid)=>strapi.getModel(uid)
80
+ }, data);
81
+ },
82
+ async encodeSourceMaps ({ data, schema }) {
83
+ try {
84
+ if (Array.isArray(data)) {
85
+ return await Promise.all(data.map((item)=>this.encodeSourceMaps({
86
+ data: item,
87
+ schema
88
+ })));
89
+ }
90
+ if (!isObject(data)) {
91
+ return data;
92
+ }
93
+ return await this.encodeEntry({
94
+ data,
95
+ schema
96
+ });
97
+ } catch (error) {
98
+ strapi.log.error('Error encoding source maps:', error);
99
+ return data;
100
+ }
101
+ }
102
+ };
103
+ };
104
+
105
+ export { createContentSourceMapsService };
106
+ //# sourceMappingURL=content-source-maps.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-source-maps.mjs","sources":["../../src/services/content-source-maps.ts"],"sourcesContent":["import { vercelStegaCombine } from '@vercel/stega';\nimport type { Core, Struct, UID } from '@strapi/types';\nimport { traverseEntity } from '@strapi/utils';\nimport type { FieldContentSourceMap } from '@strapi/admin/strapi-admin';\n\nconst ENCODABLE_TYPES = [\n 'string',\n 'text',\n 'richtext',\n 'biginteger',\n 'date',\n 'time',\n 'datetime',\n 'timestamp',\n 'boolean',\n 'enumeration',\n 'json',\n 'media',\n 'email',\n 'password',\n /**\n * We cannot modify the response shape, so types that aren't based on string cannot be encoded:\n * - json: object\n * - blocks: object, will require a custom implementation in a dedicated PR\n * - integer, float and decimal: number\n * - boolean: boolean (believe it or not)\n * - uid: can be stringified but would mess up URLs\n */\n];\n\n// TODO: use a centralized store for these fields that would be shared with the CM and CTB\nconst EXCLUDED_FIELDS = [\n 'id',\n 'documentId',\n 'locale',\n 'localizations',\n 'created_by',\n 'updated_by',\n 'created_at',\n 'updated_at',\n 'publishedAt',\n];\n\ninterface EncodingInfo {\n data: any;\n schema: Struct.Schema;\n}\n\nconst isObject = (value: unknown): value is Record<string, any> => {\n return typeof value === 'object' && value !== null;\n};\n\nconst createContentSourceMapsService = (strapi: Core.Strapi) => {\n return {\n encodeField(\n text: string,\n { kind, model, documentId, type, path, locale }: FieldContentSourceMap\n ) {\n /**\n * Combine all metadata into into a one string so we only have to deal with one data-atribute\n * on the frontend. Make it human readable because that data-attribute may be set manually by\n * users for fields that don't support sourcemap encoding.\n */\n const strapiSource = new URLSearchParams();\n strapiSource.set('documentId', documentId);\n strapiSource.set('type', type);\n strapiSource.set('path', path);\n\n if (model) {\n strapiSource.set('model', model);\n }\n if (kind) {\n strapiSource.set('kind', kind);\n }\n if (locale) {\n strapiSource.set('locale', locale);\n }\n\n return vercelStegaCombine(text, { strapiSource: strapiSource.toString() });\n },\n\n async encodeEntry({ data, schema }: EncodingInfo): Promise<any> {\n if (!isObject(data) || data === undefined) {\n return data;\n }\n\n return traverseEntity(\n ({ key, value, attribute, schema, path }, { set }) => {\n if (!attribute || EXCLUDED_FIELDS.includes(key)) {\n return;\n }\n\n if (ENCODABLE_TYPES.includes(attribute.type) && typeof value === 'string') {\n set(\n key,\n this.encodeField(value, {\n path: path.rawWithIndices!,\n type: attribute.type,\n kind: schema.kind,\n model: schema.uid as UID.Schema,\n locale: data.locale,\n documentId: data.documentId,\n }) as any\n );\n }\n },\n {\n schema,\n getModel: (uid) => strapi.getModel(uid as UID.Schema),\n },\n data\n );\n },\n\n async encodeSourceMaps({ data, schema }: EncodingInfo): Promise<any> {\n try {\n if (Array.isArray(data)) {\n return await Promise.all(\n data.map((item) => this.encodeSourceMaps({ data: item, schema }))\n );\n }\n\n if (!isObject(data)) {\n return data;\n }\n\n return await this.encodeEntry({ data, schema });\n } catch (error) {\n strapi.log.error('Error encoding source maps:', error);\n return data;\n }\n },\n };\n};\n\nexport { createContentSourceMapsService };\n"],"names":["ENCODABLE_TYPES","EXCLUDED_FIELDS","isObject","value","createContentSourceMapsService","strapi","encodeField","text","kind","model","documentId","type","path","locale","strapiSource","URLSearchParams","set","vercelStegaCombine","toString","encodeEntry","data","schema","undefined","traverseEntity","key","attribute","includes","rawWithIndices","uid","getModel","encodeSourceMaps","Array","isArray","Promise","all","map","item","error","log"],"mappings":"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"}
@@ -18,11 +18,11 @@ type GetParams = {
18
18
  type Params = SetParams & GetParams;
19
19
  interface CoreStore {
20
20
  (defaultParams: Partial<Params>): {
21
- get(params: Partial<GetParams>): Promise<unknown>;
21
+ get<T = unknown>(params: Partial<GetParams>): Promise<T>;
22
22
  set(params: Partial<SetParams>): Promise<void>;
23
23
  delete(params: Partial<GetParams>): Promise<void>;
24
24
  };
25
- get(params: GetParams): Promise<unknown>;
25
+ get<T = unknown>(params: GetParams): Promise<T>;
26
26
  set(params: SetParams): Promise<void>;
27
27
  delete(params: GetParams): Promise<void>;
28
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"core-store.d.ts","sourceRoot":"","sources":["../../src/services/core-store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAExD,QAAA,MAAM,cAAc,EAAE,KAwBrB,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,KAAK,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAEpC,UAAU,SAAS;IACjB,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG;QAChC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAClD,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,CAAC;IACF,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzC,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1C;AAED,QAAA,MAAM,eAAe,WAAY;IAAE,EAAE,EAAE,QAAQ,CAAA;CAAE,cA+GhD,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"core-store.d.ts","sourceRoot":"","sources":["../../src/services/core-store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAExD,QAAA,MAAM,cAAc,EAAE,KAwBrB,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,KAAK,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAEpC,UAAU,SAAS;IACjB,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG;QAChC,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,CAAC;IACF,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAChD,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1C;AAED,QAAA,MAAM,eAAe,WAAY;IAAE,EAAE,EAAE,QAAQ,CAAA;CAAE,cA+GhD,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,127 @@
1
+ 'use strict';
2
+
3
+ var fp = require('lodash/fp');
4
+
5
+ const coreStoreModel = {
6
+ uid: 'strapi::core-store',
7
+ singularName: 'strapi_core_store_settings',
8
+ tableName: 'strapi_core_store_settings',
9
+ attributes: {
10
+ id: {
11
+ type: 'increments'
12
+ },
13
+ key: {
14
+ type: 'string'
15
+ },
16
+ value: {
17
+ type: 'text'
18
+ },
19
+ type: {
20
+ type: 'string'
21
+ },
22
+ environment: {
23
+ type: 'string'
24
+ },
25
+ tag: {
26
+ type: 'string'
27
+ }
28
+ }
29
+ };
30
+ const createCoreStore = ({ db })=>{
31
+ const mergeParams = (defaultParams, params)=>{
32
+ return {
33
+ ...defaultParams,
34
+ ...params
35
+ };
36
+ };
37
+ const store = function(defaultParams) {
38
+ return {
39
+ get: (params)=>store.get(mergeParams(defaultParams, params)),
40
+ set: (params)=>store.set(mergeParams(defaultParams, params)),
41
+ delete: (params)=>store.delete(mergeParams(defaultParams, params))
42
+ };
43
+ };
44
+ /**
45
+ * Get value from the core store
46
+ */ store.get = async (params)=>{
47
+ const { key, type = 'core', environment, name, tag } = params;
48
+ const prefix = `${type}${name ? `_${name}` : ''}`;
49
+ const where = {
50
+ key: `${prefix}_${key}`,
51
+ environment: environment || null,
52
+ tag: tag || null
53
+ };
54
+ const data = await db.query('strapi::core-store').findOne({
55
+ where
56
+ });
57
+ if (!data) {
58
+ return null;
59
+ }
60
+ if (data.type === 'object' || data.type === 'array' || data.type === 'boolean' || data.type === 'string') {
61
+ try {
62
+ return JSON.parse(data.value);
63
+ } catch (err) {
64
+ return new Date(data.value);
65
+ }
66
+ } else if (data.type === 'number') {
67
+ return Number(data.value);
68
+ } else {
69
+ return null;
70
+ }
71
+ };
72
+ /**
73
+ * Set value in the core store
74
+ * @param {Object} params
75
+ * @returns {*}
76
+ */ store.set = async (params)=>{
77
+ const { key, value, type, environment, name, tag } = params;
78
+ const prefix = `${type}${name ? `_${name}` : ''}`;
79
+ const where = {
80
+ key: `${prefix}_${key}`,
81
+ environment: environment || null,
82
+ tag: tag || null
83
+ };
84
+ const data = await db.query('strapi::core-store').findOne({
85
+ where
86
+ });
87
+ if (data) {
88
+ return db.query('strapi::core-store').update({
89
+ where: {
90
+ id: data.id
91
+ },
92
+ data: {
93
+ value: JSON.stringify(value) || fp.toString(value),
94
+ type: typeof value
95
+ }
96
+ });
97
+ }
98
+ return db.query('strapi::core-store').create({
99
+ data: {
100
+ ...where,
101
+ value: JSON.stringify(value) || fp.toString(value),
102
+ type: typeof value
103
+ }
104
+ });
105
+ };
106
+ /**
107
+ * Deletes a value from the core store
108
+ * @param {Object} params
109
+ * @returns {*}
110
+ */ store.delete = async (params)=>{
111
+ const { key, environment, type, name, tag } = params;
112
+ const prefix = `${type}${name ? `_${name}` : ''}`;
113
+ const where = {
114
+ key: `${prefix}_${key}`,
115
+ environment: environment || null,
116
+ tag: tag || null
117
+ };
118
+ return db.query('strapi::core-store').delete({
119
+ where
120
+ });
121
+ };
122
+ return store;
123
+ };
124
+
125
+ exports.coreStoreModel = coreStoreModel;
126
+ exports.createCoreStore = createCoreStore;
127
+ //# sourceMappingURL=core-store.js.map