@strapi/core 0.0.0-next.39c0188c3aa01bec7b64b948211571d5159e811d → 0.0.0-next.3a1d87a9c3b1d4d89f741c6ecd7f501230fd8d76

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 (678) hide show
  1. package/dist/Strapi.js +437 -0
  2. package/dist/Strapi.js.map +1 -0
  3. package/dist/Strapi.mjs +416 -0
  4. package/dist/Strapi.mjs.map +1 -0
  5. package/dist/compile.js +18 -0
  6. package/dist/compile.js.map +1 -0
  7. package/dist/compile.mjs +17 -0
  8. package/dist/compile.mjs.map +1 -0
  9. package/dist/configuration/config-loader.js +105 -0
  10. package/dist/configuration/config-loader.js.map +1 -0
  11. package/dist/configuration/config-loader.mjs +103 -0
  12. package/dist/configuration/config-loader.mjs.map +1 -0
  13. package/dist/configuration/get-dirs.js +31 -0
  14. package/dist/configuration/get-dirs.js.map +1 -0
  15. package/dist/configuration/get-dirs.mjs +31 -0
  16. package/dist/configuration/get-dirs.mjs.map +1 -0
  17. package/dist/configuration/index.d.ts.map +1 -1
  18. package/dist/configuration/index.js +85 -0
  19. package/dist/configuration/index.js.map +1 -0
  20. package/dist/configuration/index.mjs +80 -0
  21. package/dist/configuration/index.mjs.map +1 -0
  22. package/dist/configuration/urls.js +68 -0
  23. package/dist/configuration/urls.js.map +1 -0
  24. package/dist/configuration/urls.mjs +66 -0
  25. package/dist/configuration/urls.mjs.map +1 -0
  26. package/dist/container.js +30 -0
  27. package/dist/container.js.map +1 -0
  28. package/dist/container.mjs +30 -0
  29. package/dist/container.mjs.map +1 -0
  30. package/dist/core-api/controller/collection-type.js +84 -0
  31. package/dist/core-api/controller/collection-type.js.map +1 -0
  32. package/dist/core-api/controller/collection-type.mjs +84 -0
  33. package/dist/core-api/controller/collection-type.mjs.map +1 -0
  34. package/dist/core-api/controller/index.js +52 -0
  35. package/dist/core-api/controller/index.js.map +1 -0
  36. package/dist/core-api/controller/index.mjs +52 -0
  37. package/dist/core-api/controller/index.mjs.map +1 -0
  38. package/dist/core-api/controller/single-type.js +46 -0
  39. package/dist/core-api/controller/single-type.js.map +1 -0
  40. package/dist/core-api/controller/single-type.mjs +46 -0
  41. package/dist/core-api/controller/single-type.mjs.map +1 -0
  42. package/dist/core-api/controller/transform.js +76 -0
  43. package/dist/core-api/controller/transform.js.map +1 -0
  44. package/dist/core-api/controller/transform.mjs +76 -0
  45. package/dist/core-api/controller/transform.mjs.map +1 -0
  46. package/dist/core-api/routes/index.js +67 -0
  47. package/dist/core-api/routes/index.js.map +1 -0
  48. package/dist/core-api/routes/index.mjs +67 -0
  49. package/dist/core-api/routes/index.mjs.map +1 -0
  50. package/dist/core-api/service/collection-type.js +67 -0
  51. package/dist/core-api/service/collection-type.js.map +1 -0
  52. package/dist/core-api/service/collection-type.mjs +67 -0
  53. package/dist/core-api/service/collection-type.mjs.map +1 -0
  54. package/dist/core-api/service/core-service.js +12 -0
  55. package/dist/core-api/service/core-service.js.map +1 -0
  56. package/dist/core-api/service/core-service.mjs +12 -0
  57. package/dist/core-api/service/core-service.mjs.map +1 -0
  58. package/dist/core-api/service/index.js +16 -0
  59. package/dist/core-api/service/index.js.map +1 -0
  60. package/dist/core-api/service/index.mjs +16 -0
  61. package/dist/core-api/service/index.mjs.map +1 -0
  62. package/dist/core-api/service/pagination.js +52 -0
  63. package/dist/core-api/service/pagination.js.map +1 -0
  64. package/dist/core-api/service/pagination.mjs +52 -0
  65. package/dist/core-api/service/pagination.mjs.map +1 -0
  66. package/dist/core-api/service/single-type.js +45 -0
  67. package/dist/core-api/service/single-type.js.map +1 -0
  68. package/dist/core-api/service/single-type.mjs +45 -0
  69. package/dist/core-api/service/single-type.mjs.map +1 -0
  70. package/dist/domain/content-type/index.js +111 -0
  71. package/dist/domain/content-type/index.js.map +1 -0
  72. package/dist/domain/content-type/index.mjs +109 -0
  73. package/dist/domain/content-type/index.mjs.map +1 -0
  74. package/dist/domain/content-type/validator.js +77 -0
  75. package/dist/domain/content-type/validator.js.map +1 -0
  76. package/dist/domain/content-type/validator.mjs +75 -0
  77. package/dist/domain/content-type/validator.mjs.map +1 -0
  78. package/dist/domain/module/index.js +107 -0
  79. package/dist/domain/module/index.js.map +1 -0
  80. package/dist/domain/module/index.mjs +105 -0
  81. package/dist/domain/module/index.mjs.map +1 -0
  82. package/dist/domain/module/validation.js +25 -0
  83. package/dist/domain/module/validation.js.map +1 -0
  84. package/dist/domain/module/validation.mjs +25 -0
  85. package/dist/domain/module/validation.mjs.map +1 -0
  86. package/dist/ee/index.js +158 -0
  87. package/dist/ee/index.js.map +1 -0
  88. package/dist/ee/index.mjs +159 -0
  89. package/dist/ee/index.mjs.map +1 -0
  90. package/dist/ee/license.js +91 -0
  91. package/dist/ee/license.js.map +1 -0
  92. package/dist/ee/license.mjs +88 -0
  93. package/dist/ee/license.mjs.map +1 -0
  94. package/dist/factories.js +80 -0
  95. package/dist/factories.js.map +1 -0
  96. package/dist/factories.mjs +80 -0
  97. package/dist/factories.mjs.map +1 -0
  98. package/dist/index.js +27 -9954
  99. package/dist/index.js.map +1 -1
  100. package/dist/index.mjs +29 -9932
  101. package/dist/index.mjs.map +1 -1
  102. package/dist/loaders/admin.js +26 -0
  103. package/dist/loaders/admin.js.map +1 -0
  104. package/dist/loaders/admin.mjs +25 -0
  105. package/dist/loaders/admin.mjs.map +1 -0
  106. package/dist/loaders/apis.js +137 -0
  107. package/dist/loaders/apis.js.map +1 -0
  108. package/dist/loaders/apis.mjs +135 -0
  109. package/dist/loaders/apis.mjs.map +1 -0
  110. package/dist/loaders/components.js +38 -0
  111. package/dist/loaders/components.js.map +1 -0
  112. package/dist/loaders/components.mjs +37 -0
  113. package/dist/loaders/components.mjs.map +1 -0
  114. package/dist/loaders/index.js +24 -0
  115. package/dist/loaders/index.js.map +1 -0
  116. package/dist/loaders/index.mjs +24 -0
  117. package/dist/loaders/index.mjs.map +1 -0
  118. package/dist/loaders/middlewares.js +31 -0
  119. package/dist/loaders/middlewares.js.map +1 -0
  120. package/dist/loaders/middlewares.mjs +30 -0
  121. package/dist/loaders/middlewares.mjs.map +1 -0
  122. package/dist/loaders/plugins/get-enabled-plugins.js +141 -0
  123. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -0
  124. package/dist/loaders/plugins/get-enabled-plugins.mjs +117 -0
  125. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -0
  126. package/dist/loaders/plugins/get-user-plugins-config.js +27 -0
  127. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -0
  128. package/dist/loaders/plugins/get-user-plugins-config.mjs +25 -0
  129. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -0
  130. package/dist/loaders/plugins/index.js +144 -0
  131. package/dist/loaders/plugins/index.js.map +1 -0
  132. package/dist/loaders/plugins/index.mjs +125 -0
  133. package/dist/loaders/plugins/index.mjs.map +1 -0
  134. package/dist/loaders/policies.js +25 -0
  135. package/dist/loaders/policies.js.map +1 -0
  136. package/dist/loaders/policies.mjs +24 -0
  137. package/dist/loaders/policies.mjs.map +1 -0
  138. package/dist/loaders/sanitizers.js +6 -0
  139. package/dist/loaders/sanitizers.js.map +1 -0
  140. package/dist/loaders/sanitizers.mjs +7 -0
  141. package/dist/loaders/sanitizers.mjs.map +1 -0
  142. package/dist/loaders/src-index.js +33 -0
  143. package/dist/loaders/src-index.js.map +1 -0
  144. package/dist/loaders/src-index.mjs +34 -0
  145. package/dist/loaders/src-index.mjs.map +1 -0
  146. package/dist/loaders/validators.js +6 -0
  147. package/dist/loaders/validators.js.map +1 -0
  148. package/dist/loaders/validators.mjs +7 -0
  149. package/dist/loaders/validators.mjs.map +1 -0
  150. package/dist/middlewares/body.d.ts.map +1 -1
  151. package/dist/middlewares/body.js +65 -0
  152. package/dist/middlewares/body.js.map +1 -0
  153. package/dist/middlewares/body.mjs +61 -0
  154. package/dist/middlewares/body.mjs.map +1 -0
  155. package/dist/middlewares/compression.js +8 -0
  156. package/dist/middlewares/compression.js.map +1 -0
  157. package/dist/middlewares/compression.mjs +6 -0
  158. package/dist/middlewares/compression.mjs.map +1 -0
  159. package/dist/middlewares/cors.js +53 -0
  160. package/dist/middlewares/cors.js.map +1 -0
  161. package/dist/middlewares/cors.mjs +51 -0
  162. package/dist/middlewares/cors.mjs.map +1 -0
  163. package/dist/middlewares/errors.js +33 -0
  164. package/dist/middlewares/errors.js.map +1 -0
  165. package/dist/middlewares/errors.mjs +33 -0
  166. package/dist/middlewares/errors.mjs.map +1 -0
  167. package/dist/middlewares/favicon.js +22 -0
  168. package/dist/middlewares/favicon.js.map +1 -0
  169. package/dist/middlewares/favicon.mjs +20 -0
  170. package/dist/middlewares/favicon.mjs.map +1 -0
  171. package/dist/middlewares/index.js +34 -0
  172. package/dist/middlewares/index.js.map +1 -0
  173. package/dist/middlewares/index.mjs +34 -0
  174. package/dist/middlewares/index.mjs.map +1 -0
  175. package/dist/middlewares/ip.js +8 -0
  176. package/dist/middlewares/ip.js.map +1 -0
  177. package/dist/middlewares/ip.mjs +6 -0
  178. package/dist/middlewares/ip.mjs.map +1 -0
  179. package/dist/middlewares/logger.js +12 -0
  180. package/dist/middlewares/logger.js.map +1 -0
  181. package/dist/middlewares/logger.mjs +12 -0
  182. package/dist/middlewares/logger.mjs.map +1 -0
  183. package/dist/middlewares/powered-by.js +14 -0
  184. package/dist/middlewares/powered-by.js.map +1 -0
  185. package/dist/middlewares/powered-by.mjs +14 -0
  186. package/dist/middlewares/powered-by.mjs.map +1 -0
  187. package/dist/middlewares/public.js +34 -0
  188. package/dist/middlewares/public.js.map +1 -0
  189. package/dist/middlewares/public.mjs +32 -0
  190. package/dist/middlewares/public.mjs.map +1 -0
  191. package/dist/middlewares/query.js +40 -0
  192. package/dist/middlewares/query.js.map +1 -0
  193. package/dist/middlewares/query.mjs +38 -0
  194. package/dist/middlewares/query.mjs.map +1 -0
  195. package/dist/middlewares/response-time.js +12 -0
  196. package/dist/middlewares/response-time.js.map +1 -0
  197. package/dist/middlewares/response-time.mjs +12 -0
  198. package/dist/middlewares/response-time.mjs.map +1 -0
  199. package/dist/middlewares/responses.js +15 -0
  200. package/dist/middlewares/responses.js.map +1 -0
  201. package/dist/middlewares/responses.mjs +15 -0
  202. package/dist/middlewares/responses.mjs.map +1 -0
  203. package/dist/middlewares/security.js +78 -0
  204. package/dist/middlewares/security.js.map +1 -0
  205. package/dist/middlewares/security.mjs +76 -0
  206. package/dist/middlewares/security.mjs.map +1 -0
  207. package/dist/middlewares/session.js +30 -0
  208. package/dist/middlewares/session.js.map +1 -0
  209. package/dist/middlewares/session.mjs +28 -0
  210. package/dist/middlewares/session.mjs.map +1 -0
  211. package/dist/migrations/database/5.0.0-discard-drafts.js +109 -0
  212. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -0
  213. package/dist/migrations/database/5.0.0-discard-drafts.mjs +109 -0
  214. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -0
  215. package/dist/migrations/draft-publish.d.ts +1 -1
  216. package/dist/migrations/draft-publish.d.ts.map +1 -1
  217. package/dist/migrations/draft-publish.js +42 -0
  218. package/dist/migrations/draft-publish.js.map +1 -0
  219. package/dist/migrations/draft-publish.mjs +42 -0
  220. package/dist/migrations/draft-publish.mjs.map +1 -0
  221. package/dist/migrations/i18n.js +54 -0
  222. package/dist/migrations/i18n.js.map +1 -0
  223. package/dist/migrations/i18n.mjs +54 -0
  224. package/dist/migrations/i18n.mjs.map +1 -0
  225. package/dist/migrations/index.js +15 -0
  226. package/dist/migrations/index.js.map +1 -0
  227. package/dist/migrations/index.mjs +15 -0
  228. package/dist/migrations/index.mjs.map +1 -0
  229. package/dist/providers/admin.js +20 -0
  230. package/dist/providers/admin.js.map +1 -0
  231. package/dist/providers/admin.mjs +21 -0
  232. package/dist/providers/admin.mjs.map +1 -0
  233. package/dist/providers/coreStore.js +11 -0
  234. package/dist/providers/coreStore.js.map +1 -0
  235. package/dist/providers/coreStore.mjs +12 -0
  236. package/dist/providers/coreStore.mjs.map +1 -0
  237. package/dist/providers/cron.js +20 -0
  238. package/dist/providers/cron.js.map +1 -0
  239. package/dist/providers/cron.mjs +21 -0
  240. package/dist/providers/cron.mjs.map +1 -0
  241. package/dist/providers/index.js +11 -0
  242. package/dist/providers/index.js.map +1 -0
  243. package/dist/providers/index.mjs +11 -0
  244. package/dist/providers/index.mjs.map +1 -0
  245. package/dist/providers/provider.js +5 -0
  246. package/dist/providers/provider.js.map +1 -0
  247. package/dist/providers/provider.mjs +5 -0
  248. package/dist/providers/provider.mjs.map +1 -0
  249. package/dist/providers/registries.js +35 -0
  250. package/dist/providers/registries.js.map +1 -0
  251. package/dist/providers/registries.mjs +36 -0
  252. package/dist/providers/registries.mjs.map +1 -0
  253. package/dist/providers/telemetry.js +19 -0
  254. package/dist/providers/telemetry.js.map +1 -0
  255. package/dist/providers/telemetry.mjs +20 -0
  256. package/dist/providers/telemetry.mjs.map +1 -0
  257. package/dist/providers/webhooks.js +30 -0
  258. package/dist/providers/webhooks.js.map +1 -0
  259. package/dist/providers/webhooks.mjs +31 -0
  260. package/dist/providers/webhooks.mjs.map +1 -0
  261. package/dist/registries/apis.js +23 -0
  262. package/dist/registries/apis.js.map +1 -0
  263. package/dist/registries/apis.mjs +24 -0
  264. package/dist/registries/apis.mjs.map +1 -0
  265. package/dist/registries/components.js +45 -0
  266. package/dist/registries/components.js.map +1 -0
  267. package/dist/registries/components.mjs +46 -0
  268. package/dist/registries/components.mjs.map +1 -0
  269. package/dist/registries/content-types.js +70 -0
  270. package/dist/registries/content-types.js.map +1 -0
  271. package/dist/registries/content-types.mjs +71 -0
  272. package/dist/registries/content-types.mjs.map +1 -0
  273. package/dist/registries/controllers.js +80 -0
  274. package/dist/registries/controllers.js.map +1 -0
  275. package/dist/registries/controllers.mjs +81 -0
  276. package/dist/registries/controllers.mjs.map +1 -0
  277. package/dist/registries/custom-fields.js +71 -0
  278. package/dist/registries/custom-fields.js.map +1 -0
  279. package/dist/registries/custom-fields.mjs +72 -0
  280. package/dist/registries/custom-fields.mjs.map +1 -0
  281. package/dist/registries/hooks.js +58 -0
  282. package/dist/registries/hooks.js.map +1 -0
  283. package/dist/registries/hooks.mjs +59 -0
  284. package/dist/registries/hooks.mjs.map +1 -0
  285. package/dist/registries/middlewares.js +60 -0
  286. package/dist/registries/middlewares.js.map +1 -0
  287. package/dist/registries/middlewares.mjs +61 -0
  288. package/dist/registries/middlewares.mjs.map +1 -0
  289. package/dist/registries/models.js +16 -0
  290. package/dist/registries/models.js.map +1 -0
  291. package/dist/registries/models.mjs +16 -0
  292. package/dist/registries/models.mjs.map +1 -0
  293. package/dist/registries/modules.js +39 -0
  294. package/dist/registries/modules.js.map +1 -0
  295. package/dist/registries/modules.mjs +40 -0
  296. package/dist/registries/modules.mjs.map +1 -0
  297. package/dist/registries/namespace.js +27 -0
  298. package/dist/registries/namespace.js.map +1 -0
  299. package/dist/registries/namespace.mjs +27 -0
  300. package/dist/registries/namespace.mjs.map +1 -0
  301. package/dist/registries/plugins.js +23 -0
  302. package/dist/registries/plugins.js.map +1 -0
  303. package/dist/registries/plugins.mjs +24 -0
  304. package/dist/registries/plugins.mjs.map +1 -0
  305. package/dist/registries/policies.js +108 -0
  306. package/dist/registries/policies.js.map +1 -0
  307. package/dist/registries/policies.mjs +109 -0
  308. package/dist/registries/policies.mjs.map +1 -0
  309. package/dist/registries/sanitizers.js +25 -0
  310. package/dist/registries/sanitizers.js.map +1 -0
  311. package/dist/registries/sanitizers.mjs +24 -0
  312. package/dist/registries/sanitizers.mjs.map +1 -0
  313. package/dist/registries/services.js +80 -0
  314. package/dist/registries/services.js.map +1 -0
  315. package/dist/registries/services.mjs +81 -0
  316. package/dist/registries/services.mjs.map +1 -0
  317. package/dist/registries/validators.js +25 -0
  318. package/dist/registries/validators.js.map +1 -0
  319. package/dist/registries/validators.mjs +24 -0
  320. package/dist/registries/validators.mjs.map +1 -0
  321. package/dist/services/auth/index.js +81 -0
  322. package/dist/services/auth/index.js.map +1 -0
  323. package/dist/services/auth/index.mjs +80 -0
  324. package/dist/services/auth/index.mjs.map +1 -0
  325. package/dist/services/config.js +47 -0
  326. package/dist/services/config.js.map +1 -0
  327. package/dist/services/config.mjs +47 -0
  328. package/dist/services/config.mjs.map +1 -0
  329. package/dist/services/content-api/index.js +85 -0
  330. package/dist/services/content-api/index.js.map +1 -0
  331. package/dist/services/content-api/index.mjs +84 -0
  332. package/dist/services/content-api/index.mjs.map +1 -0
  333. package/dist/services/content-api/permissions/engine.js +7 -0
  334. package/dist/services/content-api/permissions/engine.js.map +1 -0
  335. package/dist/services/content-api/permissions/engine.mjs +6 -0
  336. package/dist/services/content-api/permissions/engine.mjs.map +1 -0
  337. package/dist/services/content-api/permissions/index.js +87 -0
  338. package/dist/services/content-api/permissions/index.js.map +1 -0
  339. package/dist/services/content-api/permissions/index.mjs +86 -0
  340. package/dist/services/content-api/permissions/index.mjs.map +1 -0
  341. package/dist/services/content-api/permissions/providers/action.js +16 -0
  342. package/dist/services/content-api/permissions/providers/action.js.map +1 -0
  343. package/dist/services/content-api/permissions/providers/action.mjs +17 -0
  344. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -0
  345. package/dist/services/content-api/permissions/providers/condition.js +16 -0
  346. package/dist/services/content-api/permissions/providers/condition.js.map +1 -0
  347. package/dist/services/content-api/permissions/providers/condition.mjs +17 -0
  348. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -0
  349. package/dist/services/core-store.js +107 -0
  350. package/dist/services/core-store.js.map +1 -0
  351. package/dist/services/core-store.mjs +107 -0
  352. package/dist/services/core-store.mjs.map +1 -0
  353. package/dist/services/cron.js +67 -0
  354. package/dist/services/cron.js.map +1 -0
  355. package/dist/services/cron.mjs +68 -0
  356. package/dist/services/cron.mjs.map +1 -0
  357. package/dist/services/custom-fields.js +10 -0
  358. package/dist/services/custom-fields.js.map +1 -0
  359. package/dist/services/custom-fields.mjs +11 -0
  360. package/dist/services/custom-fields.mjs.map +1 -0
  361. package/dist/services/document-service/attributes/index.js +22 -0
  362. package/dist/services/document-service/attributes/index.js.map +1 -0
  363. package/dist/services/document-service/attributes/index.mjs +22 -0
  364. package/dist/services/document-service/attributes/index.mjs.map +1 -0
  365. package/dist/services/document-service/attributes/transforms.js +20 -0
  366. package/dist/services/document-service/attributes/transforms.js.map +1 -0
  367. package/dist/services/document-service/attributes/transforms.mjs +19 -0
  368. package/dist/services/document-service/attributes/transforms.mjs.map +1 -0
  369. package/dist/services/document-service/common.js +7 -0
  370. package/dist/services/document-service/common.js.map +1 -0
  371. package/dist/services/document-service/common.mjs +7 -0
  372. package/dist/services/document-service/common.mjs.map +1 -0
  373. package/dist/services/document-service/components.js +288 -0
  374. package/dist/services/document-service/components.js.map +1 -0
  375. package/dist/services/document-service/components.mjs +286 -0
  376. package/dist/services/document-service/components.mjs.map +1 -0
  377. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  378. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  379. package/dist/services/document-service/draft-and-publish.js +69 -0
  380. package/dist/services/document-service/draft-and-publish.js.map +1 -0
  381. package/dist/services/document-service/draft-and-publish.mjs +69 -0
  382. package/dist/services/document-service/draft-and-publish.mjs.map +1 -0
  383. package/dist/services/document-service/entries.js +95 -0
  384. package/dist/services/document-service/entries.js.map +1 -0
  385. package/dist/services/document-service/entries.mjs +95 -0
  386. package/dist/services/document-service/entries.mjs.map +1 -0
  387. package/dist/services/document-service/events.d.ts +1 -1
  388. package/dist/services/document-service/events.d.ts.map +1 -1
  389. package/dist/services/document-service/events.js +47 -0
  390. package/dist/services/document-service/events.js.map +1 -0
  391. package/dist/services/document-service/events.mjs +47 -0
  392. package/dist/services/document-service/events.mjs.map +1 -0
  393. package/dist/services/document-service/index.js +36 -0
  394. package/dist/services/document-service/index.js.map +1 -0
  395. package/dist/services/document-service/index.mjs +36 -0
  396. package/dist/services/document-service/index.mjs.map +1 -0
  397. package/dist/services/document-service/internationalization.js +63 -0
  398. package/dist/services/document-service/internationalization.js.map +1 -0
  399. package/dist/services/document-service/internationalization.mjs +63 -0
  400. package/dist/services/document-service/internationalization.mjs.map +1 -0
  401. package/dist/services/document-service/middlewares/errors.js +25 -0
  402. package/dist/services/document-service/middlewares/errors.js.map +1 -0
  403. package/dist/services/document-service/middlewares/errors.mjs +25 -0
  404. package/dist/services/document-service/middlewares/errors.mjs.map +1 -0
  405. package/dist/services/document-service/middlewares/middleware-manager.js +49 -0
  406. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -0
  407. package/dist/services/document-service/middlewares/middleware-manager.mjs +49 -0
  408. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -0
  409. package/dist/services/document-service/params.js +8 -0
  410. package/dist/services/document-service/params.js.map +1 -0
  411. package/dist/services/document-service/params.mjs +8 -0
  412. package/dist/services/document-service/params.mjs.map +1 -0
  413. package/dist/services/document-service/repository.js +332 -0
  414. package/dist/services/document-service/repository.js.map +1 -0
  415. package/dist/services/document-service/repository.mjs +332 -0
  416. package/dist/services/document-service/repository.mjs.map +1 -0
  417. package/dist/services/document-service/transform/data.js +15 -0
  418. package/dist/services/document-service/transform/data.js.map +1 -0
  419. package/dist/services/document-service/transform/data.mjs +15 -0
  420. package/dist/services/document-service/transform/data.mjs.map +1 -0
  421. package/dist/services/document-service/transform/fields.js +24 -0
  422. package/dist/services/document-service/transform/fields.js.map +1 -0
  423. package/dist/services/document-service/transform/fields.mjs +24 -0
  424. package/dist/services/document-service/transform/fields.mjs.map +1 -0
  425. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  426. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  427. package/dist/services/document-service/transform/id-map.js +85 -0
  428. package/dist/services/document-service/transform/id-map.js.map +1 -0
  429. package/dist/services/document-service/transform/id-map.mjs +85 -0
  430. package/dist/services/document-service/transform/id-map.mjs.map +1 -0
  431. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  432. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  433. package/dist/services/document-service/transform/id-transform.js +33 -0
  434. package/dist/services/document-service/transform/id-transform.js.map +1 -0
  435. package/dist/services/document-service/transform/id-transform.mjs +33 -0
  436. package/dist/services/document-service/transform/id-transform.mjs.map +1 -0
  437. package/dist/services/document-service/transform/populate.js +21 -0
  438. package/dist/services/document-service/transform/populate.js.map +1 -0
  439. package/dist/services/document-service/transform/populate.mjs +21 -0
  440. package/dist/services/document-service/transform/populate.mjs.map +1 -0
  441. package/dist/services/document-service/transform/query.js +9 -0
  442. package/dist/services/document-service/transform/query.js.map +1 -0
  443. package/dist/services/document-service/transform/query.mjs +9 -0
  444. package/dist/services/document-service/transform/query.mjs.map +1 -0
  445. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  446. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  447. package/dist/services/document-service/transform/relations/extract/data-ids.js +64 -0
  448. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -0
  449. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +64 -0
  450. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -0
  451. package/dist/services/document-service/transform/relations/transform/data-ids.js +85 -0
  452. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -0
  453. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +85 -0
  454. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -0
  455. package/dist/services/document-service/transform/relations/transform/default-locale.js +32 -0
  456. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -0
  457. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +32 -0
  458. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -0
  459. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  460. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  461. package/dist/services/document-service/transform/relations/utils/dp.js +30 -0
  462. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -0
  463. package/dist/services/document-service/transform/relations/utils/dp.mjs +30 -0
  464. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -0
  465. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  466. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  467. package/dist/services/document-service/transform/relations/utils/i18n.js +25 -0
  468. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -0
  469. package/dist/services/document-service/transform/relations/utils/i18n.mjs +25 -0
  470. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -0
  471. package/dist/services/document-service/transform/relations/utils/map-relation.js +84 -0
  472. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -0
  473. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +84 -0
  474. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -0
  475. package/dist/services/document-service/utils/populate.d.ts +1 -1
  476. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  477. package/dist/services/document-service/utils/populate.js +47 -0
  478. package/dist/services/document-service/utils/populate.js.map +1 -0
  479. package/dist/services/document-service/utils/populate.mjs +47 -0
  480. package/dist/services/document-service/utils/populate.mjs.map +1 -0
  481. package/dist/services/document-service/utils/unidirectional-relations.d.ts +1 -1
  482. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  483. package/dist/services/document-service/utils/unidirectional-relations.js +68 -0
  484. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -0
  485. package/dist/services/document-service/utils/unidirectional-relations.mjs +68 -0
  486. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -0
  487. package/dist/services/entity-service/index.js +169 -0
  488. package/dist/services/entity-service/index.js.map +1 -0
  489. package/dist/services/entity-service/index.mjs +167 -0
  490. package/dist/services/entity-service/index.mjs.map +1 -0
  491. package/dist/services/entity-validator/blocks-validator.js +128 -0
  492. package/dist/services/entity-validator/blocks-validator.js.map +1 -0
  493. package/dist/services/entity-validator/blocks-validator.mjs +128 -0
  494. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -0
  495. package/dist/services/entity-validator/index.d.ts +1 -1
  496. package/dist/services/entity-validator/index.d.ts.map +1 -1
  497. package/dist/services/entity-validator/index.js +389 -0
  498. package/dist/services/entity-validator/index.js.map +1 -0
  499. package/dist/services/entity-validator/index.mjs +388 -0
  500. package/dist/services/entity-validator/index.mjs.map +1 -0
  501. package/dist/services/entity-validator/validators.js +241 -0
  502. package/dist/services/entity-validator/validators.js.map +1 -0
  503. package/dist/services/entity-validator/validators.mjs +239 -0
  504. package/dist/services/entity-validator/validators.mjs.map +1 -0
  505. package/dist/services/errors.js +76 -0
  506. package/dist/services/errors.js.map +1 -0
  507. package/dist/services/errors.mjs +74 -0
  508. package/dist/services/errors.mjs.map +1 -0
  509. package/dist/services/event-hub.js +72 -0
  510. package/dist/services/event-hub.js.map +1 -0
  511. package/dist/services/event-hub.mjs +73 -0
  512. package/dist/services/event-hub.mjs.map +1 -0
  513. package/dist/services/features.js +17 -0
  514. package/dist/services/features.js.map +1 -0
  515. package/dist/services/features.mjs +17 -0
  516. package/dist/services/features.mjs.map +1 -0
  517. package/dist/services/fs.js +51 -0
  518. package/dist/services/fs.js.map +1 -0
  519. package/dist/services/fs.mjs +49 -0
  520. package/dist/services/fs.mjs.map +1 -0
  521. package/dist/services/metrics/admin-user-hash.js +14 -0
  522. package/dist/services/metrics/admin-user-hash.js.map +1 -0
  523. package/dist/services/metrics/admin-user-hash.mjs +12 -0
  524. package/dist/services/metrics/admin-user-hash.mjs.map +1 -0
  525. package/dist/services/metrics/index.js +44 -0
  526. package/dist/services/metrics/index.js.map +1 -0
  527. package/dist/services/metrics/index.mjs +45 -0
  528. package/dist/services/metrics/index.mjs.map +1 -0
  529. package/dist/services/metrics/is-truthy.js +9 -0
  530. package/dist/services/metrics/is-truthy.js.map +1 -0
  531. package/dist/services/metrics/is-truthy.mjs +8 -0
  532. package/dist/services/metrics/is-truthy.mjs.map +1 -0
  533. package/dist/services/metrics/middleware.js +27 -0
  534. package/dist/services/metrics/middleware.js.map +1 -0
  535. package/dist/services/metrics/middleware.mjs +28 -0
  536. package/dist/services/metrics/middleware.mjs.map +1 -0
  537. package/dist/services/metrics/rate-limiter.js +24 -0
  538. package/dist/services/metrics/rate-limiter.js.map +1 -0
  539. package/dist/services/metrics/rate-limiter.mjs +25 -0
  540. package/dist/services/metrics/rate-limiter.mjs.map +1 -0
  541. package/dist/services/metrics/sender.js +76 -0
  542. package/dist/services/metrics/sender.js.map +1 -0
  543. package/dist/services/metrics/sender.mjs +70 -0
  544. package/dist/services/metrics/sender.mjs.map +1 -0
  545. package/dist/services/query-params.js +12 -0
  546. package/dist/services/query-params.js.map +1 -0
  547. package/dist/services/query-params.mjs +13 -0
  548. package/dist/services/query-params.mjs.map +1 -0
  549. package/dist/services/reloader.js +36 -0
  550. package/dist/services/reloader.js.map +1 -0
  551. package/dist/services/reloader.mjs +36 -0
  552. package/dist/services/reloader.mjs.map +1 -0
  553. package/dist/services/request-context.js +13 -0
  554. package/dist/services/request-context.js.map +1 -0
  555. package/dist/services/request-context.mjs +14 -0
  556. package/dist/services/request-context.mjs.map +1 -0
  557. package/dist/services/server/admin-api.js +13 -0
  558. package/dist/services/server/admin-api.js.map +1 -0
  559. package/dist/services/server/admin-api.mjs +13 -0
  560. package/dist/services/server/admin-api.mjs.map +1 -0
  561. package/dist/services/server/api.js +30 -0
  562. package/dist/services/server/api.js.map +1 -0
  563. package/dist/services/server/api.mjs +28 -0
  564. package/dist/services/server/api.mjs.map +1 -0
  565. package/dist/services/server/compose-endpoint.js +117 -0
  566. package/dist/services/server/compose-endpoint.js.map +1 -0
  567. package/dist/services/server/compose-endpoint.mjs +116 -0
  568. package/dist/services/server/compose-endpoint.mjs.map +1 -0
  569. package/dist/services/server/content-api.js +12 -0
  570. package/dist/services/server/content-api.js.map +1 -0
  571. package/dist/services/server/content-api.mjs +12 -0
  572. package/dist/services/server/content-api.mjs.map +1 -0
  573. package/dist/services/server/http-server.js +50 -0
  574. package/dist/services/server/http-server.js.map +1 -0
  575. package/dist/services/server/http-server.mjs +48 -0
  576. package/dist/services/server/http-server.mjs.map +1 -0
  577. package/dist/services/server/index.js +87 -0
  578. package/dist/services/server/index.js.map +1 -0
  579. package/dist/services/server/index.mjs +85 -0
  580. package/dist/services/server/index.mjs.map +1 -0
  581. package/dist/services/server/koa.js +52 -0
  582. package/dist/services/server/koa.js.map +1 -0
  583. package/dist/services/server/koa.mjs +48 -0
  584. package/dist/services/server/koa.mjs.map +1 -0
  585. package/dist/services/server/middleware.js +92 -0
  586. package/dist/services/server/middleware.js.map +1 -0
  587. package/dist/services/server/middleware.mjs +90 -0
  588. package/dist/services/server/middleware.mjs.map +1 -0
  589. package/dist/services/server/policy.js +20 -0
  590. package/dist/services/server/policy.js.map +1 -0
  591. package/dist/services/server/policy.mjs +20 -0
  592. package/dist/services/server/policy.mjs.map +1 -0
  593. package/dist/services/server/register-middlewares.js +72 -0
  594. package/dist/services/server/register-middlewares.js.map +1 -0
  595. package/dist/services/server/register-middlewares.mjs +73 -0
  596. package/dist/services/server/register-middlewares.mjs.map +1 -0
  597. package/dist/services/server/register-routes.js +76 -0
  598. package/dist/services/server/register-routes.js.map +1 -0
  599. package/dist/services/server/register-routes.mjs +75 -0
  600. package/dist/services/server/register-routes.mjs.map +1 -0
  601. package/dist/services/server/routing.js +91 -0
  602. package/dist/services/server/routing.js.map +1 -0
  603. package/dist/services/server/routing.mjs +89 -0
  604. package/dist/services/server/routing.mjs.map +1 -0
  605. package/dist/services/utils/dynamic-zones.js +17 -0
  606. package/dist/services/utils/dynamic-zones.js.map +1 -0
  607. package/dist/services/utils/dynamic-zones.mjs +18 -0
  608. package/dist/services/utils/dynamic-zones.mjs.map +1 -0
  609. package/dist/services/webhook-runner.js +133 -0
  610. package/dist/services/webhook-runner.js.map +1 -0
  611. package/dist/services/webhook-runner.mjs +131 -0
  612. package/dist/services/webhook-runner.mjs.map +1 -0
  613. package/dist/services/webhook-store.js +110 -0
  614. package/dist/services/webhook-store.js.map +1 -0
  615. package/dist/services/webhook-store.mjs +110 -0
  616. package/dist/services/webhook-store.mjs.map +1 -0
  617. package/dist/services/worker-queue.js +56 -0
  618. package/dist/services/worker-queue.js.map +1 -0
  619. package/dist/services/worker-queue.mjs +55 -0
  620. package/dist/services/worker-queue.mjs.map +1 -0
  621. package/dist/utils/convert-custom-field-type.js +24 -0
  622. package/dist/utils/convert-custom-field-type.js.map +1 -0
  623. package/dist/utils/convert-custom-field-type.mjs +24 -0
  624. package/dist/utils/convert-custom-field-type.mjs.map +1 -0
  625. package/dist/utils/cron.js +38 -0
  626. package/dist/utils/cron.js.map +1 -0
  627. package/dist/utils/cron.mjs +38 -0
  628. package/dist/utils/cron.mjs.map +1 -0
  629. package/dist/utils/fetch.js +21 -0
  630. package/dist/utils/fetch.js.map +1 -0
  631. package/dist/utils/fetch.mjs +21 -0
  632. package/dist/utils/fetch.mjs.map +1 -0
  633. package/dist/utils/filepath-to-prop-path.js +33 -0
  634. package/dist/utils/filepath-to-prop-path.js.map +1 -0
  635. package/dist/utils/filepath-to-prop-path.mjs +30 -0
  636. package/dist/utils/filepath-to-prop-path.mjs.map +1 -0
  637. package/dist/utils/is-initialized.js +16 -0
  638. package/dist/utils/is-initialized.js.map +1 -0
  639. package/dist/utils/is-initialized.mjs +16 -0
  640. package/dist/utils/is-initialized.mjs.map +1 -0
  641. package/dist/utils/lifecycles.js +9 -0
  642. package/dist/utils/lifecycles.js.map +1 -0
  643. package/dist/utils/lifecycles.mjs +9 -0
  644. package/dist/utils/lifecycles.mjs.map +1 -0
  645. package/dist/utils/load-config-file.js +45 -0
  646. package/dist/utils/load-config-file.js.map +1 -0
  647. package/dist/utils/load-config-file.mjs +42 -0
  648. package/dist/utils/load-config-file.mjs.map +1 -0
  649. package/dist/utils/load-files.js +38 -0
  650. package/dist/utils/load-files.js.map +1 -0
  651. package/dist/utils/load-files.mjs +34 -0
  652. package/dist/utils/load-files.mjs.map +1 -0
  653. package/dist/utils/open-browser.js +11 -0
  654. package/dist/utils/open-browser.js.map +1 -0
  655. package/dist/utils/open-browser.mjs +9 -0
  656. package/dist/utils/open-browser.mjs.map +1 -0
  657. package/dist/utils/resolve-working-dirs.js +13 -0
  658. package/dist/utils/resolve-working-dirs.js.map +1 -0
  659. package/dist/utils/resolve-working-dirs.mjs +11 -0
  660. package/dist/utils/resolve-working-dirs.mjs.map +1 -0
  661. package/dist/utils/signals.js +17 -0
  662. package/dist/utils/signals.js.map +1 -0
  663. package/dist/utils/signals.mjs +17 -0
  664. package/dist/utils/signals.mjs.map +1 -0
  665. package/dist/utils/startup-logger.js +86 -0
  666. package/dist/utils/startup-logger.js.map +1 -0
  667. package/dist/utils/startup-logger.mjs +82 -0
  668. package/dist/utils/startup-logger.mjs.map +1 -0
  669. package/dist/utils/transform-content-types-to-models.js +288 -0
  670. package/dist/utils/transform-content-types-to-models.js.map +1 -0
  671. package/dist/utils/transform-content-types-to-models.mjs +285 -0
  672. package/dist/utils/transform-content-types-to-models.mjs.map +1 -0
  673. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  674. package/dist/utils/update-notifier/index.js +85 -0
  675. package/dist/utils/update-notifier/index.js.map +1 -0
  676. package/dist/utils/update-notifier/index.mjs +78 -0
  677. package/dist/utils/update-notifier/index.mjs.map +1 -0
  678. package/package.json +22 -22
@@ -0,0 +1,70 @@
1
+ import os from "os";
2
+ import path from "path";
3
+ import _ from "lodash";
4
+ import isDocker from "is-docker";
5
+ import ciEnv from "ci-info";
6
+ import tsUtils from "@strapi/typescript-utils";
7
+ import { machineID, env } from "@strapi/utils";
8
+ import { generateAdminUserHash } from "./admin-user-hash.mjs";
9
+ const defaultQueryOpts = {
10
+ timeout: 1e3,
11
+ headers: { "Content-Type": "application/json" }
12
+ };
13
+ const ANALYTICS_URI = "https://analytics.strapi.io";
14
+ const addPackageJsonStrapiMetadata = (metadata, strapi) => {
15
+ const { packageJsonStrapi = {} } = strapi.config;
16
+ _.defaults(metadata, packageJsonStrapi);
17
+ };
18
+ const createSender = (strapi) => {
19
+ const { uuid } = strapi.config;
20
+ const deviceId = machineID();
21
+ const serverRootPath = strapi.dirs.app.root;
22
+ const adminRootPath = path.join(strapi.dirs.app.root, "src", "admin");
23
+ const anonymousUserProperties = {
24
+ environment: strapi.config.environment,
25
+ os: os.type(),
26
+ osPlatform: os.platform(),
27
+ osArch: os.arch(),
28
+ osRelease: os.release(),
29
+ nodeVersion: process.versions.node
30
+ };
31
+ const anonymousGroupProperties = {
32
+ docker: process.env.DOCKER || isDocker(),
33
+ isCI: ciEnv.isCI,
34
+ version: strapi.config.get("info.strapi"),
35
+ useTypescriptOnServer: tsUtils.isUsingTypeScriptSync(serverRootPath),
36
+ useTypescriptOnAdmin: tsUtils.isUsingTypeScriptSync(adminRootPath),
37
+ projectId: uuid,
38
+ isHostedOnStrapiCloud: env("STRAPI_HOSTING", null) === "strapi.cloud"
39
+ };
40
+ addPackageJsonStrapiMetadata(anonymousGroupProperties, strapi);
41
+ return async (event, payload = {}, opts = {}) => {
42
+ const userId = generateAdminUserHash(strapi);
43
+ const reqParams = {
44
+ method: "POST",
45
+ body: JSON.stringify({
46
+ event,
47
+ userId,
48
+ deviceId,
49
+ eventProperties: payload.eventProperties,
50
+ userProperties: userId ? { ...anonymousUserProperties, ...payload.userProperties } : {},
51
+ groupProperties: {
52
+ ...anonymousGroupProperties,
53
+ projectType: strapi.EE ? "Enterprise" : "Community",
54
+ ...payload.groupProperties
55
+ }
56
+ }),
57
+ ..._.merge({ headers: { "X-Strapi-Event": event } }, defaultQueryOpts, opts)
58
+ };
59
+ try {
60
+ const res = await strapi.fetch(`${ANALYTICS_URI}/api/v2/track`, reqParams);
61
+ return res.ok;
62
+ } catch (err) {
63
+ return false;
64
+ }
65
+ };
66
+ };
67
+ export {
68
+ createSender as default
69
+ };
70
+ //# sourceMappingURL=sender.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sender.mjs","sources":["../../../src/services/metrics/sender.ts"],"sourcesContent":["import os from 'os';\nimport path from 'path';\nimport _ from 'lodash';\nimport isDocker from 'is-docker';\nimport ciEnv from 'ci-info';\nimport tsUtils from '@strapi/typescript-utils';\nimport { env, machineID } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { generateAdminUserHash } from './admin-user-hash';\n\nexport interface Payload {\n eventProperties?: Record<string, unknown>;\n userProperties?: Record<string, unknown>;\n groupProperties?: Record<string, unknown>;\n}\n\nexport type Sender = (\n event: string,\n payload?: Payload,\n opts?: Record<string, unknown>\n) => Promise<boolean>;\n\nconst defaultQueryOpts = {\n timeout: 1000,\n headers: { 'Content-Type': 'application/json' },\n};\n\nconst ANALYTICS_URI = 'https://analytics.strapi.io';\n\n/**\n * Add properties from the package.json strapi key in the metadata\n */\nconst addPackageJsonStrapiMetadata = (metadata: Record<string, unknown>, strapi: Core.Strapi) => {\n const { packageJsonStrapi = {} } = strapi.config;\n\n _.defaults(metadata, packageJsonStrapi);\n};\n\n/**\n * Create a send function for event with all the necessary metadata\n */\nexport default (strapi: Core.Strapi): Sender => {\n const { uuid } = strapi.config;\n const deviceId = machineID();\n\n const serverRootPath = strapi.dirs.app.root;\n const adminRootPath = path.join(strapi.dirs.app.root, 'src', 'admin');\n\n const anonymousUserProperties = {\n environment: strapi.config.environment,\n os: os.type(),\n osPlatform: os.platform(),\n osArch: os.arch(),\n osRelease: os.release(),\n nodeVersion: process.versions.node,\n };\n\n const anonymousGroupProperties = {\n docker: process.env.DOCKER || isDocker(),\n isCI: ciEnv.isCI,\n version: strapi.config.get('info.strapi'),\n useTypescriptOnServer: tsUtils.isUsingTypeScriptSync(serverRootPath),\n useTypescriptOnAdmin: tsUtils.isUsingTypeScriptSync(adminRootPath),\n projectId: uuid,\n isHostedOnStrapiCloud: env('STRAPI_HOSTING', null) === 'strapi.cloud',\n };\n\n addPackageJsonStrapiMetadata(anonymousGroupProperties, strapi);\n\n return async (event: string, payload: Payload = {}, opts = {}) => {\n const userId = generateAdminUserHash(strapi);\n\n const reqParams = {\n method: 'POST',\n body: JSON.stringify({\n event,\n userId,\n deviceId,\n eventProperties: payload.eventProperties,\n userProperties: userId ? { ...anonymousUserProperties, ...payload.userProperties } : {},\n groupProperties: {\n ...anonymousGroupProperties,\n projectType: strapi.EE ? 'Enterprise' : 'Community',\n ...payload.groupProperties,\n },\n }),\n ..._.merge({ headers: { 'X-Strapi-Event': event } }, defaultQueryOpts, opts),\n };\n\n try {\n const res = await strapi.fetch(`${ANALYTICS_URI}/api/v2/track`, reqParams);\n return res.ok;\n } catch (err) {\n return false;\n }\n };\n};\n"],"names":[],"mappings":";;;;;;;;AAsBA,MAAM,mBAAmB;AAAA,EACvB,SAAS;AAAA,EACT,SAAS,EAAE,gBAAgB,mBAAmB;AAChD;AAEA,MAAM,gBAAgB;AAKtB,MAAM,+BAA+B,CAAC,UAAmC,WAAwB;AAC/F,QAAM,EAAE,oBAAoB,OAAO,OAAO;AAExC,IAAA,SAAS,UAAU,iBAAiB;AACxC;AAKA,MAAe,eAAA,CAAC,WAAgC;AACxC,QAAA,EAAE,SAAS,OAAO;AACxB,QAAM,WAAW,UAAU;AAErB,QAAA,iBAAiB,OAAO,KAAK,IAAI;AACjC,QAAA,gBAAgB,KAAK,KAAK,OAAO,KAAK,IAAI,MAAM,OAAO,OAAO;AAEpE,QAAM,0BAA0B;AAAA,IAC9B,aAAa,OAAO,OAAO;AAAA,IAC3B,IAAI,GAAG,KAAK;AAAA,IACZ,YAAY,GAAG,SAAS;AAAA,IACxB,QAAQ,GAAG,KAAK;AAAA,IAChB,WAAW,GAAG,QAAQ;AAAA,IACtB,aAAa,QAAQ,SAAS;AAAA,EAChC;AAEA,QAAM,2BAA2B;AAAA,IAC/B,QAAQ,QAAQ,IAAI,UAAU,SAAS;AAAA,IACvC,MAAM,MAAM;AAAA,IACZ,SAAS,OAAO,OAAO,IAAI,aAAa;AAAA,IACxC,uBAAuB,QAAQ,sBAAsB,cAAc;AAAA,IACnE,sBAAsB,QAAQ,sBAAsB,aAAa;AAAA,IACjE,WAAW;AAAA,IACX,uBAAuB,IAAI,kBAAkB,IAAI,MAAM;AAAA,EACzD;AAEA,+BAA6B,0BAA0B,MAAM;AAE7D,SAAO,OAAO,OAAe,UAAmB,CAAA,GAAI,OAAO,CAAA,MAAO;AAC1D,UAAA,SAAS,sBAAsB,MAAM;AAE3C,UAAM,YAAY;AAAA,MAChB,QAAQ;AAAA,MACR,MAAM,KAAK,UAAU;AAAA,QACnB;AAAA,QACA;AAAA,QACA;AAAA,QACA,iBAAiB,QAAQ;AAAA,QACzB,gBAAgB,SAAS,EAAE,GAAG,yBAAyB,GAAG,QAAQ,eAAe,IAAI,CAAC;AAAA,QACtF,iBAAiB;AAAA,UACf,GAAG;AAAA,UACH,aAAa,OAAO,KAAK,eAAe;AAAA,UACxC,GAAG,QAAQ;AAAA,QAAA;AAAA,MACb,CACD;AAAA,MACD,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,kBAAkB,MAAM,KAAK,kBAAkB,IAAI;AAAA,IAC7E;AAEI,QAAA;AACF,YAAM,MAAM,MAAM,OAAO,MAAM,GAAG,aAAa,iBAAiB,SAAS;AACzE,aAAO,IAAI;AAAA,aACJ,KAAK;AACL,aAAA;AAAA,IAAA;AAAA,EAEX;AACF;"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ const strapiUtils = require("@strapi/utils");
3
+ const createQueryParamService = (strapi) => {
4
+ const { transformQueryParams } = strapiUtils.queryParams.createTransformer({
5
+ getModel: (uid) => strapi.getModel(uid)
6
+ });
7
+ return {
8
+ transform: transformQueryParams
9
+ };
10
+ };
11
+ module.exports = createQueryParamService;
12
+ //# sourceMappingURL=query-params.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-params.js","sources":["../../src/services/query-params.ts"],"sourcesContent":["import { queryParams } from '@strapi/utils';\nimport type { Core, UID } from '@strapi/types';\n\nexport default (strapi: Core.Strapi) => {\n const { transformQueryParams } = queryParams.createTransformer({\n getModel: (uid: string) => strapi.getModel(uid as UID.Schema),\n });\n\n return {\n transform: transformQueryParams,\n };\n};\n"],"names":["queryParams"],"mappings":";;AAGA,MAAe,0BAAA,CAAC,WAAwB;AACtC,QAAM,EAAE,qBAAA,IAAyBA,YAAA,YAAY,kBAAkB;AAAA,IAC7D,UAAU,CAAC,QAAgB,OAAO,SAAS,GAAiB;AAAA,EAAA,CAC7D;AAEM,SAAA;AAAA,IACL,WAAW;AAAA,EACb;AACF;;"}
@@ -0,0 +1,13 @@
1
+ import { queryParams } from "@strapi/utils";
2
+ const createQueryParamService = (strapi) => {
3
+ const { transformQueryParams } = queryParams.createTransformer({
4
+ getModel: (uid) => strapi.getModel(uid)
5
+ });
6
+ return {
7
+ transform: transformQueryParams
8
+ };
9
+ };
10
+ export {
11
+ createQueryParamService as default
12
+ };
13
+ //# sourceMappingURL=query-params.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-params.mjs","sources":["../../src/services/query-params.ts"],"sourcesContent":["import { queryParams } from '@strapi/utils';\nimport type { Core, UID } from '@strapi/types';\n\nexport default (strapi: Core.Strapi) => {\n const { transformQueryParams } = queryParams.createTransformer({\n getModel: (uid: string) => strapi.getModel(uid as UID.Schema),\n });\n\n return {\n transform: transformQueryParams,\n };\n};\n"],"names":[],"mappings":";AAGA,MAAe,0BAAA,CAAC,WAAwB;AACtC,QAAM,EAAE,qBAAA,IAAyB,YAAY,kBAAkB;AAAA,IAC7D,UAAU,CAAC,QAAgB,OAAO,SAAS,GAAiB;AAAA,EAAA,CAC7D;AAEM,SAAA;AAAA,IACL,WAAW;AAAA,EACb;AACF;"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const createReloader = (strapi) => {
4
+ const state = {
5
+ shouldReload: 0,
6
+ isWatching: true
7
+ };
8
+ function reload() {
9
+ if (state.shouldReload > 0) {
10
+ state.shouldReload -= 1;
11
+ reload.isReloading = false;
12
+ return;
13
+ }
14
+ if (strapi.config.get("autoReload")) {
15
+ process.send?.("reload");
16
+ }
17
+ }
18
+ Object.defineProperty(reload, "isWatching", {
19
+ configurable: true,
20
+ enumerable: true,
21
+ set(value) {
22
+ if (state.isWatching === false && value === true) {
23
+ state.shouldReload += 1;
24
+ }
25
+ state.isWatching = value;
26
+ },
27
+ get() {
28
+ return state.isWatching;
29
+ }
30
+ });
31
+ reload.isReloading = false;
32
+ reload.isWatching = true;
33
+ return reload;
34
+ };
35
+ exports.createReloader = createReloader;
36
+ //# sourceMappingURL=reloader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reloader.js","sources":["../../src/services/reloader.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nexport const createReloader = (strapi: Core.Strapi) => {\n const state = {\n shouldReload: 0,\n isWatching: true,\n };\n\n function reload() {\n if (state.shouldReload > 0) {\n // Reset the reloading state\n state.shouldReload -= 1;\n reload.isReloading = false;\n return;\n }\n\n if (strapi.config.get('autoReload')) {\n process.send?.('reload');\n }\n }\n\n Object.defineProperty(reload, 'isWatching', {\n configurable: true,\n enumerable: true,\n set(value) {\n // Special state when the reloader is disabled temporarly (see GraphQL plugin example).\n if (state.isWatching === false && value === true) {\n state.shouldReload += 1;\n }\n state.isWatching = value;\n },\n get() {\n return state.isWatching;\n },\n });\n\n reload.isReloading = false;\n reload.isWatching = true;\n\n return reload;\n};\n"],"names":[],"mappings":";;AAEa,MAAA,iBAAiB,CAAC,WAAwB;AACrD,QAAM,QAAQ;AAAA,IACZ,cAAc;AAAA,IACd,YAAY;AAAA,EACd;AAEA,WAAS,SAAS;AACZ,QAAA,MAAM,eAAe,GAAG;AAE1B,YAAM,gBAAgB;AACtB,aAAO,cAAc;AACrB;AAAA,IAAA;AAGF,QAAI,OAAO,OAAO,IAAI,YAAY,GAAG;AACnC,cAAQ,OAAO,QAAQ;AAAA,IAAA;AAAA,EACzB;AAGK,SAAA,eAAe,QAAQ,cAAc;AAAA,IAC1C,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,IAAI,OAAO;AAET,UAAI,MAAM,eAAe,SAAS,UAAU,MAAM;AAChD,cAAM,gBAAgB;AAAA,MAAA;AAExB,YAAM,aAAa;AAAA,IACrB;AAAA,IACA,MAAM;AACJ,aAAO,MAAM;AAAA,IAAA;AAAA,EACf,CACD;AAED,SAAO,cAAc;AACrB,SAAO,aAAa;AAEb,SAAA;AACT;;"}
@@ -0,0 +1,36 @@
1
+ const createReloader = (strapi) => {
2
+ const state = {
3
+ shouldReload: 0,
4
+ isWatching: true
5
+ };
6
+ function reload() {
7
+ if (state.shouldReload > 0) {
8
+ state.shouldReload -= 1;
9
+ reload.isReloading = false;
10
+ return;
11
+ }
12
+ if (strapi.config.get("autoReload")) {
13
+ process.send?.("reload");
14
+ }
15
+ }
16
+ Object.defineProperty(reload, "isWatching", {
17
+ configurable: true,
18
+ enumerable: true,
19
+ set(value) {
20
+ if (state.isWatching === false && value === true) {
21
+ state.shouldReload += 1;
22
+ }
23
+ state.isWatching = value;
24
+ },
25
+ get() {
26
+ return state.isWatching;
27
+ }
28
+ });
29
+ reload.isReloading = false;
30
+ reload.isWatching = true;
31
+ return reload;
32
+ };
33
+ export {
34
+ createReloader
35
+ };
36
+ //# sourceMappingURL=reloader.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reloader.mjs","sources":["../../src/services/reloader.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nexport const createReloader = (strapi: Core.Strapi) => {\n const state = {\n shouldReload: 0,\n isWatching: true,\n };\n\n function reload() {\n if (state.shouldReload > 0) {\n // Reset the reloading state\n state.shouldReload -= 1;\n reload.isReloading = false;\n return;\n }\n\n if (strapi.config.get('autoReload')) {\n process.send?.('reload');\n }\n }\n\n Object.defineProperty(reload, 'isWatching', {\n configurable: true,\n enumerable: true,\n set(value) {\n // Special state when the reloader is disabled temporarly (see GraphQL plugin example).\n if (state.isWatching === false && value === true) {\n state.shouldReload += 1;\n }\n state.isWatching = value;\n },\n get() {\n return state.isWatching;\n },\n });\n\n reload.isReloading = false;\n reload.isWatching = true;\n\n return reload;\n};\n"],"names":[],"mappings":"AAEa,MAAA,iBAAiB,CAAC,WAAwB;AACrD,QAAM,QAAQ;AAAA,IACZ,cAAc;AAAA,IACd,YAAY;AAAA,EACd;AAEA,WAAS,SAAS;AACZ,QAAA,MAAM,eAAe,GAAG;AAE1B,YAAM,gBAAgB;AACtB,aAAO,cAAc;AACrB;AAAA,IAAA;AAGF,QAAI,OAAO,OAAO,IAAI,YAAY,GAAG;AACnC,cAAQ,OAAO,QAAQ;AAAA,IAAA;AAAA,EACzB;AAGK,SAAA,eAAe,QAAQ,cAAc;AAAA,IAC1C,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,IAAI,OAAO;AAET,UAAI,MAAM,eAAe,SAAS,UAAU,MAAM;AAChD,cAAM,gBAAgB;AAAA,MAAA;AAExB,YAAM,aAAa;AAAA,IACrB;AAAA,IACA,MAAM;AACJ,aAAO,MAAM;AAAA,IAAA;AAAA,EACf,CACD;AAED,SAAO,cAAc;AACrB,SAAO,aAAa;AAEb,SAAA;AACT;"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ const async_hooks = require("async_hooks");
3
+ const storage = new async_hooks.AsyncLocalStorage();
4
+ const requestCtx = {
5
+ async run(store, cb) {
6
+ return storage.run(store, cb);
7
+ },
8
+ get() {
9
+ return storage.getStore();
10
+ }
11
+ };
12
+ module.exports = requestCtx;
13
+ //# sourceMappingURL=request-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-context.js","sources":["../../src/services/request-context.ts"],"sourcesContent":["import { AsyncLocalStorage } from 'async_hooks';\nimport type { ParameterizedContext } from 'koa';\n\nconst storage = new AsyncLocalStorage<ParameterizedContext>();\n\nconst requestCtx = {\n async run(store: ParameterizedContext, cb: () => Promise<void>) {\n return storage.run(store, cb);\n },\n\n get() {\n return storage.getStore();\n },\n};\n\nexport default requestCtx;\n"],"names":["AsyncLocalStorage"],"mappings":";;AAGA,MAAM,UAAU,IAAIA,YAAAA,kBAAwC;AAE5D,MAAM,aAAa;AAAA,EACjB,MAAM,IAAI,OAA6B,IAAyB;AACvD,WAAA,QAAQ,IAAI,OAAO,EAAE;AAAA,EAC9B;AAAA,EAEA,MAAM;AACJ,WAAO,QAAQ,SAAS;AAAA,EAAA;AAE5B;;"}
@@ -0,0 +1,14 @@
1
+ import { AsyncLocalStorage } from "async_hooks";
2
+ const storage = new AsyncLocalStorage();
3
+ const requestCtx = {
4
+ async run(store, cb) {
5
+ return storage.run(store, cb);
6
+ },
7
+ get() {
8
+ return storage.getStore();
9
+ }
10
+ };
11
+ export {
12
+ requestCtx as default
13
+ };
14
+ //# sourceMappingURL=request-context.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-context.mjs","sources":["../../src/services/request-context.ts"],"sourcesContent":["import { AsyncLocalStorage } from 'async_hooks';\nimport type { ParameterizedContext } from 'koa';\n\nconst storage = new AsyncLocalStorage<ParameterizedContext>();\n\nconst requestCtx = {\n async run(store: ParameterizedContext, cb: () => Promise<void>) {\n return storage.run(store, cb);\n },\n\n get() {\n return storage.getStore();\n },\n};\n\nexport default requestCtx;\n"],"names":[],"mappings":";AAGA,MAAM,UAAU,IAAI,kBAAwC;AAE5D,MAAM,aAAa;AAAA,EACjB,MAAM,IAAI,OAA6B,IAAyB;AACvD,WAAA,QAAQ,IAAI,OAAO,EAAE;AAAA,EAC9B;AAAA,EAEA,MAAM;AACJ,WAAO,QAAQ,SAAS;AAAA,EAAA;AAE5B;"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const api = require("./api.js");
4
+ const createAdminAPI = (strapi) => {
5
+ const opts = {
6
+ prefix: "",
7
+ // '/admin';
8
+ type: "admin"
9
+ };
10
+ return api.createAPI(strapi, opts);
11
+ };
12
+ exports.createAdminAPI = createAdminAPI;
13
+ //# sourceMappingURL=admin-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-api.js","sources":["../../../src/services/server/admin-api.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport { createAPI } from './api';\n\nconst createAdminAPI = (strapi: Core.Strapi) => {\n const opts = {\n prefix: '', // '/admin';\n type: 'admin',\n };\n\n return createAPI(strapi, opts);\n};\n\nexport { createAdminAPI };\n"],"names":["createAPI"],"mappings":";;;AAGM,MAAA,iBAAiB,CAAC,WAAwB;AAC9C,QAAM,OAAO;AAAA,IACX,QAAQ;AAAA;AAAA,IACR,MAAM;AAAA,EACR;AAEO,SAAAA,IAAA,UAAU,QAAQ,IAAI;AAC/B;;"}
@@ -0,0 +1,13 @@
1
+ import { createAPI } from "./api.mjs";
2
+ const createAdminAPI = (strapi) => {
3
+ const opts = {
4
+ prefix: "",
5
+ // '/admin';
6
+ type: "admin"
7
+ };
8
+ return createAPI(strapi, opts);
9
+ };
10
+ export {
11
+ createAdminAPI
12
+ };
13
+ //# sourceMappingURL=admin-api.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-api.mjs","sources":["../../../src/services/server/admin-api.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport { createAPI } from './api';\n\nconst createAdminAPI = (strapi: Core.Strapi) => {\n const opts = {\n prefix: '', // '/admin';\n type: 'admin',\n };\n\n return createAPI(strapi, opts);\n};\n\nexport { createAdminAPI };\n"],"names":[],"mappings":";AAGM,MAAA,iBAAiB,CAAC,WAAwB;AAC9C,QAAM,OAAO;AAAA,IACX,QAAQ;AAAA;AAAA,IACR,MAAM;AAAA,EACR;AAEO,SAAA,UAAU,QAAQ,IAAI;AAC/B;"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const Router = require("@koa/router");
4
+ const routing = require("./routing.js");
5
+ const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
6
+ const Router__default = /* @__PURE__ */ _interopDefault(Router);
7
+ const createAPI = (strapi, opts = {}) => {
8
+ const { prefix, type } = opts;
9
+ const api = new Router__default.default({ prefix });
10
+ const routeManager = routing.createRouteManager(strapi, { type });
11
+ return {
12
+ listRoutes() {
13
+ return [...api.stack];
14
+ },
15
+ use(fn) {
16
+ api.use(fn);
17
+ return this;
18
+ },
19
+ routes(routes) {
20
+ routeManager.addRoutes(routes, api);
21
+ return this;
22
+ },
23
+ mount(router) {
24
+ router.use(api.routes(), api.allowedMethods());
25
+ return this;
26
+ }
27
+ };
28
+ };
29
+ exports.createAPI = createAPI;
30
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sources":["../../../src/services/server/api.ts"],"sourcesContent":["import Router from '@koa/router';\nimport type { Core } from '@strapi/types';\n\nimport { createRouteManager } from './routing';\n\ninterface Options {\n prefix?: string;\n type?: string;\n}\n\nconst createAPI = (strapi: Core.Strapi, opts: Options = {}) => {\n const { prefix, type } = opts;\n\n const api = new Router({ prefix });\n\n const routeManager = createRouteManager(strapi, { type });\n\n return {\n listRoutes() {\n return [...api.stack];\n },\n\n use(fn: Router.Middleware) {\n api.use(fn);\n return this;\n },\n\n routes(routes: Core.Router | Core.Route[]) {\n routeManager.addRoutes(routes, api);\n return this;\n },\n\n mount(router: Router) {\n router.use(api.routes(), api.allowedMethods());\n return this;\n },\n };\n};\n\nexport { createAPI };\n"],"names":["Router","createRouteManager"],"mappings":";;;;;;AAUA,MAAM,YAAY,CAAC,QAAqB,OAAgB,OAAO;AACvD,QAAA,EAAE,QAAQ,KAAA,IAAS;AAEzB,QAAM,MAAM,IAAIA,wBAAO,EAAE,QAAQ;AAEjC,QAAM,eAAeC,QAAA,mBAAmB,QAAQ,EAAE,MAAM;AAEjD,SAAA;AAAA,IACL,aAAa;AACJ,aAAA,CAAC,GAAG,IAAI,KAAK;AAAA,IACtB;AAAA,IAEA,IAAI,IAAuB;AACzB,UAAI,IAAI,EAAE;AACH,aAAA;AAAA,IACT;AAAA,IAEA,OAAO,QAAoC;AAC5B,mBAAA,UAAU,QAAQ,GAAG;AAC3B,aAAA;AAAA,IACT;AAAA,IAEA,MAAM,QAAgB;AACpB,aAAO,IAAI,IAAI,OAAA,GAAU,IAAI,gBAAgB;AACtC,aAAA;AAAA,IAAA;AAAA,EAEX;AACF;;"}
@@ -0,0 +1,28 @@
1
+ import Router from "@koa/router";
2
+ import { createRouteManager } from "./routing.mjs";
3
+ const createAPI = (strapi, opts = {}) => {
4
+ const { prefix, type } = opts;
5
+ const api = new Router({ prefix });
6
+ const routeManager = createRouteManager(strapi, { type });
7
+ return {
8
+ listRoutes() {
9
+ return [...api.stack];
10
+ },
11
+ use(fn) {
12
+ api.use(fn);
13
+ return this;
14
+ },
15
+ routes(routes) {
16
+ routeManager.addRoutes(routes, api);
17
+ return this;
18
+ },
19
+ mount(router) {
20
+ router.use(api.routes(), api.allowedMethods());
21
+ return this;
22
+ }
23
+ };
24
+ };
25
+ export {
26
+ createAPI
27
+ };
28
+ //# sourceMappingURL=api.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.mjs","sources":["../../../src/services/server/api.ts"],"sourcesContent":["import Router from '@koa/router';\nimport type { Core } from '@strapi/types';\n\nimport { createRouteManager } from './routing';\n\ninterface Options {\n prefix?: string;\n type?: string;\n}\n\nconst createAPI = (strapi: Core.Strapi, opts: Options = {}) => {\n const { prefix, type } = opts;\n\n const api = new Router({ prefix });\n\n const routeManager = createRouteManager(strapi, { type });\n\n return {\n listRoutes() {\n return [...api.stack];\n },\n\n use(fn: Router.Middleware) {\n api.use(fn);\n return this;\n },\n\n routes(routes: Core.Router | Core.Route[]) {\n routeManager.addRoutes(routes, api);\n return this;\n },\n\n mount(router: Router) {\n router.use(api.routes(), api.allowedMethods());\n return this;\n },\n };\n};\n\nexport { createAPI };\n"],"names":[],"mappings":";;AAUA,MAAM,YAAY,CAAC,QAAqB,OAAgB,OAAO;AACvD,QAAA,EAAE,QAAQ,KAAA,IAAS;AAEzB,QAAM,MAAM,IAAI,OAAO,EAAE,QAAQ;AAEjC,QAAM,eAAe,mBAAmB,QAAQ,EAAE,MAAM;AAEjD,SAAA;AAAA,IACL,aAAa;AACJ,aAAA,CAAC,GAAG,IAAI,KAAK;AAAA,IACtB;AAAA,IAEA,IAAI,IAAuB;AACzB,UAAI,IAAI,EAAE;AACH,aAAA;AAAA,IACT;AAAA,IAEA,OAAO,QAAoC;AAC5B,mBAAA,UAAU,QAAQ,GAAG;AAC3B,aAAA;AAAA,IACT;AAAA,IAEA,MAAM,QAAgB;AACpB,aAAO,IAAI,IAAI,OAAA,GAAU,IAAI,gBAAgB;AACtC,aAAA;AAAA,IAAA;AAAA,EAEX;AACF;"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ const fp = require("lodash/fp");
3
+ const strapiUtils = require("@strapi/utils");
4
+ const compose = require("koa-compose");
5
+ const middleware = require("./middleware.js");
6
+ const policy = require("./policy.js");
7
+ const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
8
+ const compose__default = /* @__PURE__ */ _interopDefault(compose);
9
+ const getMethod = (route) => {
10
+ return fp.trim(fp.toLower(route.method));
11
+ };
12
+ const getPath = (route) => fp.trim(route.path);
13
+ const createRouteInfoMiddleware = (routeInfo) => (ctx, next) => {
14
+ const route = {
15
+ ...routeInfo,
16
+ config: routeInfo.config || {}
17
+ };
18
+ ctx.state.route = route;
19
+ return next();
20
+ };
21
+ const getAuthConfig = fp.prop("config.auth");
22
+ const createAuthorizeMiddleware = (strapi) => async (ctx, next) => {
23
+ const { auth, route } = ctx.state;
24
+ const authService = strapi.get("auth");
25
+ try {
26
+ await authService.verify(auth, getAuthConfig(route));
27
+ return await next();
28
+ } catch (error) {
29
+ if (error instanceof strapiUtils.errors.UnauthorizedError) {
30
+ return ctx.unauthorized();
31
+ }
32
+ if (error instanceof strapiUtils.errors.ForbiddenError) {
33
+ if (error instanceof strapiUtils.errors.PolicyError) {
34
+ throw error;
35
+ }
36
+ return ctx.forbidden();
37
+ }
38
+ throw error;
39
+ }
40
+ };
41
+ const createAuthenticateMiddleware = (strapi) => async (ctx, next) => {
42
+ return strapi.get("auth").authenticate(ctx, next);
43
+ };
44
+ const returnBodyMiddleware = async (ctx, next) => {
45
+ const values = await next();
46
+ if (fp.isNil(ctx.body) && !fp.isNil(values)) {
47
+ ctx.body = values;
48
+ }
49
+ };
50
+ const createEndpointComposer = (strapi) => {
51
+ const authenticate = createAuthenticateMiddleware(strapi);
52
+ const authorize = createAuthorizeMiddleware(strapi);
53
+ return (route, { router }) => {
54
+ try {
55
+ const method = getMethod(route);
56
+ const path = getPath(route);
57
+ const middlewares = middleware.resolveRouteMiddlewares(route, strapi);
58
+ const action = getAction(route, strapi);
59
+ const routeHandler = compose__default.default([
60
+ createRouteInfoMiddleware(route),
61
+ authenticate,
62
+ authorize,
63
+ policy.createPolicicesMiddleware(route, strapi),
64
+ ...middlewares,
65
+ returnBodyMiddleware,
66
+ ...fp.castArray(action)
67
+ ]);
68
+ router[method](path, routeHandler);
69
+ } catch (error) {
70
+ if (error instanceof Error) {
71
+ error.message = `Error creating endpoint ${route.method} ${route.path}: ${error.message}`;
72
+ }
73
+ throw error;
74
+ }
75
+ };
76
+ };
77
+ const getController = (name, { pluginName, apiName }, strapi) => {
78
+ let ctrl;
79
+ if (pluginName) {
80
+ if (pluginName === "admin") {
81
+ ctrl = strapi.controller(`admin::${name}`);
82
+ } else {
83
+ ctrl = strapi.plugin(pluginName).controller(name);
84
+ }
85
+ } else if (apiName) {
86
+ ctrl = strapi.controller(`api::${apiName}.${name}`);
87
+ }
88
+ if (!ctrl) {
89
+ return strapi.controller(name);
90
+ }
91
+ return ctrl;
92
+ };
93
+ const extractHandlerParts = (name) => {
94
+ const controllerName = name.slice(0, name.lastIndexOf("."));
95
+ const actionName = name.slice(name.lastIndexOf(".") + 1);
96
+ return { controllerName, actionName };
97
+ };
98
+ const getAction = (route, strapi) => {
99
+ const { handler, info } = route;
100
+ const { pluginName, apiName, type } = info ?? {};
101
+ if (Array.isArray(handler) || typeof handler === "function") {
102
+ return handler;
103
+ }
104
+ const { controllerName, actionName } = extractHandlerParts(fp.trim(handler));
105
+ const controller = getController(controllerName, { pluginName, apiName, type }, strapi);
106
+ if (typeof controller[actionName] !== "function") {
107
+ throw new Error(`Handler not found "${handler}"`);
108
+ }
109
+ if (Symbol.for("__type__") in controller[actionName]) {
110
+ controller[actionName][Symbol.for("__type__")].push(type);
111
+ } else {
112
+ controller[actionName][Symbol.for("__type__")] = [type];
113
+ }
114
+ return controller[actionName].bind(controller);
115
+ };
116
+ module.exports = createEndpointComposer;
117
+ //# sourceMappingURL=compose-endpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose-endpoint.js","sources":["../../../src/services/server/compose-endpoint.ts"],"sourcesContent":["import { toLower, castArray, trim, prop, isNil } from 'lodash/fp';\nimport type { Core, UID } from '@strapi/types';\nimport { errors } from '@strapi/utils';\nimport Router from '@koa/router';\n\nimport compose from 'koa-compose';\nimport { resolveRouteMiddlewares } from './middleware';\nimport { createPolicicesMiddleware } from './policy';\n\nconst getMethod = (route: Core.Route) => {\n return trim(toLower(route.method)) as Lowercase<Core.Route['method']>;\n};\n\nconst getPath = (route: Core.Route) => trim(route.path);\n\nconst createRouteInfoMiddleware =\n (routeInfo: Core.Route): Core.MiddlewareHandler =>\n (ctx, next) => {\n const route = {\n ...routeInfo,\n config: routeInfo.config || {},\n };\n\n ctx.state.route = route;\n return next();\n };\n\nconst getAuthConfig = prop('config.auth');\n\nconst createAuthorizeMiddleware =\n (strapi: Core.Strapi): Core.MiddlewareHandler =>\n async (ctx, next) => {\n const { auth, route } = ctx.state;\n\n const authService = strapi.get('auth');\n\n try {\n await authService.verify(auth, getAuthConfig(route));\n\n return await next();\n } catch (error) {\n if (error instanceof errors.UnauthorizedError) {\n return ctx.unauthorized();\n }\n\n if (error instanceof errors.ForbiddenError) {\n // allow PolicyError as an exception to throw a publicly visible message in the API\n if (error instanceof errors.PolicyError) {\n throw error;\n }\n return ctx.forbidden();\n }\n\n throw error;\n }\n };\n\nconst createAuthenticateMiddleware =\n (strapi: Core.Strapi): Core.MiddlewareHandler =>\n async (ctx, next) => {\n return strapi.get('auth').authenticate(ctx, next);\n };\n\nconst returnBodyMiddleware: Core.MiddlewareHandler = async (ctx, next) => {\n const values = await next();\n\n if (isNil(ctx.body) && !isNil(values)) {\n ctx.body = values;\n }\n};\n\nexport default (strapi: Core.Strapi) => {\n const authenticate = createAuthenticateMiddleware(strapi);\n const authorize = createAuthorizeMiddleware(strapi);\n\n return (route: Core.Route, { router }: { router: Router }) => {\n try {\n const method = getMethod(route);\n const path = getPath(route);\n\n const middlewares = resolveRouteMiddlewares(route, strapi);\n\n const action = getAction(route, strapi);\n\n const routeHandler = compose([\n createRouteInfoMiddleware(route),\n authenticate,\n authorize,\n createPolicicesMiddleware(route, strapi),\n ...middlewares,\n returnBodyMiddleware,\n ...castArray(action),\n ]);\n\n router[method](path, routeHandler);\n } catch (error) {\n if (error instanceof Error) {\n error.message = `Error creating endpoint ${route.method} ${route.path}: ${error.message}`;\n }\n\n throw error;\n }\n };\n};\n\nconst getController = (\n name: string,\n { pluginName, apiName }: Core.RouteInfo,\n strapi: Core.Strapi\n) => {\n let ctrl: Core.Controller | undefined;\n\n if (pluginName) {\n if (pluginName === 'admin') {\n ctrl = strapi.controller(`admin::${name}`);\n } else {\n ctrl = strapi.plugin(pluginName).controller(name);\n }\n } else if (apiName) {\n ctrl = strapi.controller(`api::${apiName}.${name}`);\n }\n\n if (!ctrl) {\n return strapi.controller(name as UID.Controller);\n }\n\n return ctrl;\n};\n\nconst extractHandlerParts = (name: string) => {\n const controllerName = name.slice(0, name.lastIndexOf('.'));\n const actionName = name.slice(name.lastIndexOf('.') + 1);\n\n return { controllerName, actionName };\n};\n\nconst getAction = (route: Core.Route, strapi: Core.Strapi) => {\n const { handler, info } = route;\n const { pluginName, apiName, type } = info ?? {};\n\n if (Array.isArray(handler) || typeof handler === 'function') {\n return handler;\n }\n\n const { controllerName, actionName } = extractHandlerParts(trim(handler));\n\n const controller = getController(controllerName, { pluginName, apiName, type }, strapi);\n\n if (typeof controller[actionName] !== 'function') {\n throw new Error(`Handler not found \"${handler}\"`);\n }\n\n if (Symbol.for('__type__') in controller[actionName]) {\n (controller[actionName] as any)[Symbol.for('__type__')].push(type);\n } else {\n (controller[actionName] as any)[Symbol.for('__type__')] = [type];\n }\n\n return controller[actionName].bind(controller);\n};\n"],"names":["trim","toLower","prop","errors","isNil","resolveRouteMiddlewares","compose","createPolicicesMiddleware","castArray"],"mappings":"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"}
@@ -0,0 +1,116 @@
1
+ import { prop, castArray, trim, toLower, isNil } from "lodash/fp";
2
+ import { errors } from "@strapi/utils";
3
+ import compose from "koa-compose";
4
+ import { resolveRouteMiddlewares } from "./middleware.mjs";
5
+ import { createPolicicesMiddleware } from "./policy.mjs";
6
+ const getMethod = (route) => {
7
+ return trim(toLower(route.method));
8
+ };
9
+ const getPath = (route) => trim(route.path);
10
+ const createRouteInfoMiddleware = (routeInfo) => (ctx, next) => {
11
+ const route = {
12
+ ...routeInfo,
13
+ config: routeInfo.config || {}
14
+ };
15
+ ctx.state.route = route;
16
+ return next();
17
+ };
18
+ const getAuthConfig = prop("config.auth");
19
+ const createAuthorizeMiddleware = (strapi) => async (ctx, next) => {
20
+ const { auth, route } = ctx.state;
21
+ const authService = strapi.get("auth");
22
+ try {
23
+ await authService.verify(auth, getAuthConfig(route));
24
+ return await next();
25
+ } catch (error) {
26
+ if (error instanceof errors.UnauthorizedError) {
27
+ return ctx.unauthorized();
28
+ }
29
+ if (error instanceof errors.ForbiddenError) {
30
+ if (error instanceof errors.PolicyError) {
31
+ throw error;
32
+ }
33
+ return ctx.forbidden();
34
+ }
35
+ throw error;
36
+ }
37
+ };
38
+ const createAuthenticateMiddleware = (strapi) => async (ctx, next) => {
39
+ return strapi.get("auth").authenticate(ctx, next);
40
+ };
41
+ const returnBodyMiddleware = async (ctx, next) => {
42
+ const values = await next();
43
+ if (isNil(ctx.body) && !isNil(values)) {
44
+ ctx.body = values;
45
+ }
46
+ };
47
+ const createEndpointComposer = (strapi) => {
48
+ const authenticate = createAuthenticateMiddleware(strapi);
49
+ const authorize = createAuthorizeMiddleware(strapi);
50
+ return (route, { router }) => {
51
+ try {
52
+ const method = getMethod(route);
53
+ const path = getPath(route);
54
+ const middlewares = resolveRouteMiddlewares(route, strapi);
55
+ const action = getAction(route, strapi);
56
+ const routeHandler = compose([
57
+ createRouteInfoMiddleware(route),
58
+ authenticate,
59
+ authorize,
60
+ createPolicicesMiddleware(route, strapi),
61
+ ...middlewares,
62
+ returnBodyMiddleware,
63
+ ...castArray(action)
64
+ ]);
65
+ router[method](path, routeHandler);
66
+ } catch (error) {
67
+ if (error instanceof Error) {
68
+ error.message = `Error creating endpoint ${route.method} ${route.path}: ${error.message}`;
69
+ }
70
+ throw error;
71
+ }
72
+ };
73
+ };
74
+ const getController = (name, { pluginName, apiName }, strapi) => {
75
+ let ctrl;
76
+ if (pluginName) {
77
+ if (pluginName === "admin") {
78
+ ctrl = strapi.controller(`admin::${name}`);
79
+ } else {
80
+ ctrl = strapi.plugin(pluginName).controller(name);
81
+ }
82
+ } else if (apiName) {
83
+ ctrl = strapi.controller(`api::${apiName}.${name}`);
84
+ }
85
+ if (!ctrl) {
86
+ return strapi.controller(name);
87
+ }
88
+ return ctrl;
89
+ };
90
+ const extractHandlerParts = (name) => {
91
+ const controllerName = name.slice(0, name.lastIndexOf("."));
92
+ const actionName = name.slice(name.lastIndexOf(".") + 1);
93
+ return { controllerName, actionName };
94
+ };
95
+ const getAction = (route, strapi) => {
96
+ const { handler, info } = route;
97
+ const { pluginName, apiName, type } = info ?? {};
98
+ if (Array.isArray(handler) || typeof handler === "function") {
99
+ return handler;
100
+ }
101
+ const { controllerName, actionName } = extractHandlerParts(trim(handler));
102
+ const controller = getController(controllerName, { pluginName, apiName, type }, strapi);
103
+ if (typeof controller[actionName] !== "function") {
104
+ throw new Error(`Handler not found "${handler}"`);
105
+ }
106
+ if (Symbol.for("__type__") in controller[actionName]) {
107
+ controller[actionName][Symbol.for("__type__")].push(type);
108
+ } else {
109
+ controller[actionName][Symbol.for("__type__")] = [type];
110
+ }
111
+ return controller[actionName].bind(controller);
112
+ };
113
+ export {
114
+ createEndpointComposer as default
115
+ };
116
+ //# sourceMappingURL=compose-endpoint.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose-endpoint.mjs","sources":["../../../src/services/server/compose-endpoint.ts"],"sourcesContent":["import { toLower, castArray, trim, prop, isNil } from 'lodash/fp';\nimport type { Core, UID } from '@strapi/types';\nimport { errors } from '@strapi/utils';\nimport Router from '@koa/router';\n\nimport compose from 'koa-compose';\nimport { resolveRouteMiddlewares } from './middleware';\nimport { createPolicicesMiddleware } from './policy';\n\nconst getMethod = (route: Core.Route) => {\n return trim(toLower(route.method)) as Lowercase<Core.Route['method']>;\n};\n\nconst getPath = (route: Core.Route) => trim(route.path);\n\nconst createRouteInfoMiddleware =\n (routeInfo: Core.Route): Core.MiddlewareHandler =>\n (ctx, next) => {\n const route = {\n ...routeInfo,\n config: routeInfo.config || {},\n };\n\n ctx.state.route = route;\n return next();\n };\n\nconst getAuthConfig = prop('config.auth');\n\nconst createAuthorizeMiddleware =\n (strapi: Core.Strapi): Core.MiddlewareHandler =>\n async (ctx, next) => {\n const { auth, route } = ctx.state;\n\n const authService = strapi.get('auth');\n\n try {\n await authService.verify(auth, getAuthConfig(route));\n\n return await next();\n } catch (error) {\n if (error instanceof errors.UnauthorizedError) {\n return ctx.unauthorized();\n }\n\n if (error instanceof errors.ForbiddenError) {\n // allow PolicyError as an exception to throw a publicly visible message in the API\n if (error instanceof errors.PolicyError) {\n throw error;\n }\n return ctx.forbidden();\n }\n\n throw error;\n }\n };\n\nconst createAuthenticateMiddleware =\n (strapi: Core.Strapi): Core.MiddlewareHandler =>\n async (ctx, next) => {\n return strapi.get('auth').authenticate(ctx, next);\n };\n\nconst returnBodyMiddleware: Core.MiddlewareHandler = async (ctx, next) => {\n const values = await next();\n\n if (isNil(ctx.body) && !isNil(values)) {\n ctx.body = values;\n }\n};\n\nexport default (strapi: Core.Strapi) => {\n const authenticate = createAuthenticateMiddleware(strapi);\n const authorize = createAuthorizeMiddleware(strapi);\n\n return (route: Core.Route, { router }: { router: Router }) => {\n try {\n const method = getMethod(route);\n const path = getPath(route);\n\n const middlewares = resolveRouteMiddlewares(route, strapi);\n\n const action = getAction(route, strapi);\n\n const routeHandler = compose([\n createRouteInfoMiddleware(route),\n authenticate,\n authorize,\n createPolicicesMiddleware(route, strapi),\n ...middlewares,\n returnBodyMiddleware,\n ...castArray(action),\n ]);\n\n router[method](path, routeHandler);\n } catch (error) {\n if (error instanceof Error) {\n error.message = `Error creating endpoint ${route.method} ${route.path}: ${error.message}`;\n }\n\n throw error;\n }\n };\n};\n\nconst getController = (\n name: string,\n { pluginName, apiName }: Core.RouteInfo,\n strapi: Core.Strapi\n) => {\n let ctrl: Core.Controller | undefined;\n\n if (pluginName) {\n if (pluginName === 'admin') {\n ctrl = strapi.controller(`admin::${name}`);\n } else {\n ctrl = strapi.plugin(pluginName).controller(name);\n }\n } else if (apiName) {\n ctrl = strapi.controller(`api::${apiName}.${name}`);\n }\n\n if (!ctrl) {\n return strapi.controller(name as UID.Controller);\n }\n\n return ctrl;\n};\n\nconst extractHandlerParts = (name: string) => {\n const controllerName = name.slice(0, name.lastIndexOf('.'));\n const actionName = name.slice(name.lastIndexOf('.') + 1);\n\n return { controllerName, actionName };\n};\n\nconst getAction = (route: Core.Route, strapi: Core.Strapi) => {\n const { handler, info } = route;\n const { pluginName, apiName, type } = info ?? {};\n\n if (Array.isArray(handler) || typeof handler === 'function') {\n return handler;\n }\n\n const { controllerName, actionName } = extractHandlerParts(trim(handler));\n\n const controller = getController(controllerName, { pluginName, apiName, type }, strapi);\n\n if (typeof controller[actionName] !== 'function') {\n throw new Error(`Handler not found \"${handler}\"`);\n }\n\n if (Symbol.for('__type__') in controller[actionName]) {\n (controller[actionName] as any)[Symbol.for('__type__')].push(type);\n } else {\n (controller[actionName] as any)[Symbol.for('__type__')] = [type];\n }\n\n return controller[actionName].bind(controller);\n};\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const api = require("./api.js");
4
+ const createContentAPI = (strapi) => {
5
+ const opts = {
6
+ prefix: strapi.config.get("api.rest.prefix", "/api"),
7
+ type: "content-api"
8
+ };
9
+ return api.createAPI(strapi, opts);
10
+ };
11
+ exports.createContentAPI = createContentAPI;
12
+ //# sourceMappingURL=content-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-api.js","sources":["../../../src/services/server/content-api.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport { createAPI } from './api';\n\nconst createContentAPI = (strapi: Core.Strapi) => {\n const opts = {\n prefix: strapi.config.get('api.rest.prefix', '/api'),\n type: 'content-api',\n };\n\n return createAPI(strapi, opts);\n};\n\nexport { createContentAPI };\n"],"names":["createAPI"],"mappings":";;;AAGM,MAAA,mBAAmB,CAAC,WAAwB;AAChD,QAAM,OAAO;AAAA,IACX,QAAQ,OAAO,OAAO,IAAI,mBAAmB,MAAM;AAAA,IACnD,MAAM;AAAA,EACR;AAEO,SAAAA,IAAA,UAAU,QAAQ,IAAI;AAC/B;;"}