@strapi/core 0.0.0-next.ee56af7ae29770097422de95c0d5500908dce15c → 0.0.0-next.ef9237644b07791c05e1b7edc54d1921e59565ae

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 (692) hide show
  1. package/dist/Strapi.d.ts.map +1 -1
  2. package/dist/configuration/index.d.ts.map +1 -1
  3. package/dist/index.js +10101 -27
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.mjs +10079 -29
  6. package/dist/index.mjs.map +1 -1
  7. package/dist/middlewares/body.d.ts.map +1 -1
  8. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +2 -2
  9. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  10. package/dist/migrations/draft-publish.d.ts +1 -1
  11. package/dist/migrations/draft-publish.d.ts.map +1 -1
  12. package/dist/services/document-service/components.d.ts.map +1 -1
  13. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  14. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  15. package/dist/services/document-service/events.d.ts +1 -1
  16. package/dist/services/document-service/events.d.ts.map +1 -1
  17. package/dist/services/document-service/repository.d.ts.map +1 -1
  18. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  19. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  20. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  21. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  22. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  23. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  24. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  25. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  26. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  27. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  28. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  29. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  30. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  31. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  32. package/dist/services/document-service/utils/populate.d.ts +1 -1
  33. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  34. package/dist/services/document-service/utils/unidirectional-relations.d.ts +1 -1
  35. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  36. package/dist/services/entity-validator/index.d.ts +1 -1
  37. package/dist/services/entity-validator/index.d.ts.map +1 -1
  38. package/dist/services/metrics/middleware.d.ts.map +1 -1
  39. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  40. package/dist/utils/startup-logger.d.ts.map +1 -1
  41. package/dist/utils/transform-content-types-to-models.d.ts +28 -0
  42. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  43. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  44. package/package.json +25 -26
  45. package/dist/Strapi.js +0 -431
  46. package/dist/Strapi.js.map +0 -1
  47. package/dist/Strapi.mjs +0 -410
  48. package/dist/Strapi.mjs.map +0 -1
  49. package/dist/compile.js +0 -18
  50. package/dist/compile.js.map +0 -1
  51. package/dist/compile.mjs +0 -17
  52. package/dist/compile.mjs.map +0 -1
  53. package/dist/configuration/config-loader.js +0 -106
  54. package/dist/configuration/config-loader.js.map +0 -1
  55. package/dist/configuration/config-loader.mjs +0 -104
  56. package/dist/configuration/config-loader.mjs.map +0 -1
  57. package/dist/configuration/get-dirs.js +0 -31
  58. package/dist/configuration/get-dirs.js.map +0 -1
  59. package/dist/configuration/get-dirs.mjs +0 -31
  60. package/dist/configuration/get-dirs.mjs.map +0 -1
  61. package/dist/configuration/index.js +0 -80
  62. package/dist/configuration/index.js.map +0 -1
  63. package/dist/configuration/index.mjs +0 -75
  64. package/dist/configuration/index.mjs.map +0 -1
  65. package/dist/configuration/urls.js +0 -68
  66. package/dist/configuration/urls.js.map +0 -1
  67. package/dist/configuration/urls.mjs +0 -66
  68. package/dist/configuration/urls.mjs.map +0 -1
  69. package/dist/container.js +0 -30
  70. package/dist/container.js.map +0 -1
  71. package/dist/container.mjs +0 -30
  72. package/dist/container.mjs.map +0 -1
  73. package/dist/core-api/controller/collection-type.js +0 -84
  74. package/dist/core-api/controller/collection-type.js.map +0 -1
  75. package/dist/core-api/controller/collection-type.mjs +0 -84
  76. package/dist/core-api/controller/collection-type.mjs.map +0 -1
  77. package/dist/core-api/controller/index.js +0 -52
  78. package/dist/core-api/controller/index.js.map +0 -1
  79. package/dist/core-api/controller/index.mjs +0 -52
  80. package/dist/core-api/controller/index.mjs.map +0 -1
  81. package/dist/core-api/controller/single-type.js +0 -46
  82. package/dist/core-api/controller/single-type.js.map +0 -1
  83. package/dist/core-api/controller/single-type.mjs +0 -46
  84. package/dist/core-api/controller/single-type.mjs.map +0 -1
  85. package/dist/core-api/controller/transform.js +0 -76
  86. package/dist/core-api/controller/transform.js.map +0 -1
  87. package/dist/core-api/controller/transform.mjs +0 -76
  88. package/dist/core-api/controller/transform.mjs.map +0 -1
  89. package/dist/core-api/routes/index.js +0 -67
  90. package/dist/core-api/routes/index.js.map +0 -1
  91. package/dist/core-api/routes/index.mjs +0 -67
  92. package/dist/core-api/routes/index.mjs.map +0 -1
  93. package/dist/core-api/service/collection-type.js +0 -67
  94. package/dist/core-api/service/collection-type.js.map +0 -1
  95. package/dist/core-api/service/collection-type.mjs +0 -67
  96. package/dist/core-api/service/collection-type.mjs.map +0 -1
  97. package/dist/core-api/service/core-service.js +0 -12
  98. package/dist/core-api/service/core-service.js.map +0 -1
  99. package/dist/core-api/service/core-service.mjs +0 -12
  100. package/dist/core-api/service/core-service.mjs.map +0 -1
  101. package/dist/core-api/service/index.js +0 -16
  102. package/dist/core-api/service/index.js.map +0 -1
  103. package/dist/core-api/service/index.mjs +0 -16
  104. package/dist/core-api/service/index.mjs.map +0 -1
  105. package/dist/core-api/service/pagination.js +0 -52
  106. package/dist/core-api/service/pagination.js.map +0 -1
  107. package/dist/core-api/service/pagination.mjs +0 -52
  108. package/dist/core-api/service/pagination.mjs.map +0 -1
  109. package/dist/core-api/service/single-type.js +0 -46
  110. package/dist/core-api/service/single-type.js.map +0 -1
  111. package/dist/core-api/service/single-type.mjs +0 -46
  112. package/dist/core-api/service/single-type.mjs.map +0 -1
  113. package/dist/domain/content-type/index.js +0 -111
  114. package/dist/domain/content-type/index.js.map +0 -1
  115. package/dist/domain/content-type/index.mjs +0 -109
  116. package/dist/domain/content-type/index.mjs.map +0 -1
  117. package/dist/domain/content-type/validator.js +0 -77
  118. package/dist/domain/content-type/validator.js.map +0 -1
  119. package/dist/domain/content-type/validator.mjs +0 -75
  120. package/dist/domain/content-type/validator.mjs.map +0 -1
  121. package/dist/domain/module/index.js +0 -107
  122. package/dist/domain/module/index.js.map +0 -1
  123. package/dist/domain/module/index.mjs +0 -105
  124. package/dist/domain/module/index.mjs.map +0 -1
  125. package/dist/domain/module/validation.js +0 -25
  126. package/dist/domain/module/validation.js.map +0 -1
  127. package/dist/domain/module/validation.mjs +0 -25
  128. package/dist/domain/module/validation.mjs.map +0 -1
  129. package/dist/ee/index.js +0 -158
  130. package/dist/ee/index.js.map +0 -1
  131. package/dist/ee/index.mjs +0 -159
  132. package/dist/ee/index.mjs.map +0 -1
  133. package/dist/ee/license.js +0 -91
  134. package/dist/ee/license.js.map +0 -1
  135. package/dist/ee/license.mjs +0 -88
  136. package/dist/ee/license.mjs.map +0 -1
  137. package/dist/factories.js +0 -80
  138. package/dist/factories.js.map +0 -1
  139. package/dist/factories.mjs +0 -80
  140. package/dist/factories.mjs.map +0 -1
  141. package/dist/loaders/admin.js +0 -26
  142. package/dist/loaders/admin.js.map +0 -1
  143. package/dist/loaders/admin.mjs +0 -25
  144. package/dist/loaders/admin.mjs.map +0 -1
  145. package/dist/loaders/apis.js +0 -137
  146. package/dist/loaders/apis.js.map +0 -1
  147. package/dist/loaders/apis.mjs +0 -135
  148. package/dist/loaders/apis.mjs.map +0 -1
  149. package/dist/loaders/components.js +0 -38
  150. package/dist/loaders/components.js.map +0 -1
  151. package/dist/loaders/components.mjs +0 -37
  152. package/dist/loaders/components.mjs.map +0 -1
  153. package/dist/loaders/index.js +0 -24
  154. package/dist/loaders/index.js.map +0 -1
  155. package/dist/loaders/index.mjs +0 -24
  156. package/dist/loaders/index.mjs.map +0 -1
  157. package/dist/loaders/middlewares.js +0 -31
  158. package/dist/loaders/middlewares.js.map +0 -1
  159. package/dist/loaders/middlewares.mjs +0 -30
  160. package/dist/loaders/middlewares.mjs.map +0 -1
  161. package/dist/loaders/plugins/get-enabled-plugins.js +0 -141
  162. package/dist/loaders/plugins/get-enabled-plugins.js.map +0 -1
  163. package/dist/loaders/plugins/get-enabled-plugins.mjs +0 -117
  164. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +0 -1
  165. package/dist/loaders/plugins/get-user-plugins-config.js +0 -27
  166. package/dist/loaders/plugins/get-user-plugins-config.js.map +0 -1
  167. package/dist/loaders/plugins/get-user-plugins-config.mjs +0 -25
  168. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +0 -1
  169. package/dist/loaders/plugins/index.js +0 -145
  170. package/dist/loaders/plugins/index.js.map +0 -1
  171. package/dist/loaders/plugins/index.mjs +0 -125
  172. package/dist/loaders/plugins/index.mjs.map +0 -1
  173. package/dist/loaders/policies.js +0 -25
  174. package/dist/loaders/policies.js.map +0 -1
  175. package/dist/loaders/policies.mjs +0 -24
  176. package/dist/loaders/policies.mjs.map +0 -1
  177. package/dist/loaders/sanitizers.js +0 -6
  178. package/dist/loaders/sanitizers.js.map +0 -1
  179. package/dist/loaders/sanitizers.mjs +0 -7
  180. package/dist/loaders/sanitizers.mjs.map +0 -1
  181. package/dist/loaders/src-index.js +0 -33
  182. package/dist/loaders/src-index.js.map +0 -1
  183. package/dist/loaders/src-index.mjs +0 -34
  184. package/dist/loaders/src-index.mjs.map +0 -1
  185. package/dist/loaders/validators.js +0 -6
  186. package/dist/loaders/validators.js.map +0 -1
  187. package/dist/loaders/validators.mjs +0 -7
  188. package/dist/loaders/validators.mjs.map +0 -1
  189. package/dist/middlewares/body.js +0 -65
  190. package/dist/middlewares/body.js.map +0 -1
  191. package/dist/middlewares/body.mjs +0 -61
  192. package/dist/middlewares/body.mjs.map +0 -1
  193. package/dist/middlewares/compression.js +0 -8
  194. package/dist/middlewares/compression.js.map +0 -1
  195. package/dist/middlewares/compression.mjs +0 -6
  196. package/dist/middlewares/compression.mjs.map +0 -1
  197. package/dist/middlewares/cors.js +0 -53
  198. package/dist/middlewares/cors.js.map +0 -1
  199. package/dist/middlewares/cors.mjs +0 -51
  200. package/dist/middlewares/cors.mjs.map +0 -1
  201. package/dist/middlewares/errors.js +0 -33
  202. package/dist/middlewares/errors.js.map +0 -1
  203. package/dist/middlewares/errors.mjs +0 -33
  204. package/dist/middlewares/errors.mjs.map +0 -1
  205. package/dist/middlewares/favicon.js +0 -22
  206. package/dist/middlewares/favicon.js.map +0 -1
  207. package/dist/middlewares/favicon.mjs +0 -20
  208. package/dist/middlewares/favicon.mjs.map +0 -1
  209. package/dist/middlewares/index.js +0 -34
  210. package/dist/middlewares/index.js.map +0 -1
  211. package/dist/middlewares/index.mjs +0 -34
  212. package/dist/middlewares/index.mjs.map +0 -1
  213. package/dist/middlewares/ip.js +0 -8
  214. package/dist/middlewares/ip.js.map +0 -1
  215. package/dist/middlewares/ip.mjs +0 -6
  216. package/dist/middlewares/ip.mjs.map +0 -1
  217. package/dist/middlewares/logger.js +0 -12
  218. package/dist/middlewares/logger.js.map +0 -1
  219. package/dist/middlewares/logger.mjs +0 -12
  220. package/dist/middlewares/logger.mjs.map +0 -1
  221. package/dist/middlewares/powered-by.js +0 -14
  222. package/dist/middlewares/powered-by.js.map +0 -1
  223. package/dist/middlewares/powered-by.mjs +0 -14
  224. package/dist/middlewares/powered-by.mjs.map +0 -1
  225. package/dist/middlewares/public.js +0 -34
  226. package/dist/middlewares/public.js.map +0 -1
  227. package/dist/middlewares/public.mjs +0 -32
  228. package/dist/middlewares/public.mjs.map +0 -1
  229. package/dist/middlewares/query.js +0 -40
  230. package/dist/middlewares/query.js.map +0 -1
  231. package/dist/middlewares/query.mjs +0 -38
  232. package/dist/middlewares/query.mjs.map +0 -1
  233. package/dist/middlewares/response-time.js +0 -12
  234. package/dist/middlewares/response-time.js.map +0 -1
  235. package/dist/middlewares/response-time.mjs +0 -12
  236. package/dist/middlewares/response-time.mjs.map +0 -1
  237. package/dist/middlewares/responses.js +0 -15
  238. package/dist/middlewares/responses.js.map +0 -1
  239. package/dist/middlewares/responses.mjs +0 -15
  240. package/dist/middlewares/responses.mjs.map +0 -1
  241. package/dist/middlewares/security.js +0 -78
  242. package/dist/middlewares/security.js.map +0 -1
  243. package/dist/middlewares/security.mjs +0 -76
  244. package/dist/middlewares/security.mjs.map +0 -1
  245. package/dist/middlewares/session.js +0 -30
  246. package/dist/middlewares/session.js.map +0 -1
  247. package/dist/middlewares/session.mjs +0 -28
  248. package/dist/middlewares/session.mjs.map +0 -1
  249. package/dist/migrations/database/5.0.0-discard-drafts.js +0 -106
  250. package/dist/migrations/database/5.0.0-discard-drafts.js.map +0 -1
  251. package/dist/migrations/database/5.0.0-discard-drafts.mjs +0 -106
  252. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +0 -1
  253. package/dist/migrations/draft-publish.js +0 -42
  254. package/dist/migrations/draft-publish.js.map +0 -1
  255. package/dist/migrations/draft-publish.mjs +0 -42
  256. package/dist/migrations/draft-publish.mjs.map +0 -1
  257. package/dist/migrations/i18n.js +0 -54
  258. package/dist/migrations/i18n.js.map +0 -1
  259. package/dist/migrations/i18n.mjs +0 -54
  260. package/dist/migrations/i18n.mjs.map +0 -1
  261. package/dist/migrations/index.js +0 -15
  262. package/dist/migrations/index.js.map +0 -1
  263. package/dist/migrations/index.mjs +0 -15
  264. package/dist/migrations/index.mjs.map +0 -1
  265. package/dist/providers/admin.js +0 -20
  266. package/dist/providers/admin.js.map +0 -1
  267. package/dist/providers/admin.mjs +0 -21
  268. package/dist/providers/admin.mjs.map +0 -1
  269. package/dist/providers/coreStore.js +0 -11
  270. package/dist/providers/coreStore.js.map +0 -1
  271. package/dist/providers/coreStore.mjs +0 -12
  272. package/dist/providers/coreStore.mjs.map +0 -1
  273. package/dist/providers/cron.js +0 -20
  274. package/dist/providers/cron.js.map +0 -1
  275. package/dist/providers/cron.mjs +0 -21
  276. package/dist/providers/cron.mjs.map +0 -1
  277. package/dist/providers/index.js +0 -11
  278. package/dist/providers/index.js.map +0 -1
  279. package/dist/providers/index.mjs +0 -11
  280. package/dist/providers/index.mjs.map +0 -1
  281. package/dist/providers/provider.js +0 -5
  282. package/dist/providers/provider.js.map +0 -1
  283. package/dist/providers/provider.mjs +0 -5
  284. package/dist/providers/provider.mjs.map +0 -1
  285. package/dist/providers/registries.js +0 -35
  286. package/dist/providers/registries.js.map +0 -1
  287. package/dist/providers/registries.mjs +0 -36
  288. package/dist/providers/registries.mjs.map +0 -1
  289. package/dist/providers/telemetry.js +0 -19
  290. package/dist/providers/telemetry.js.map +0 -1
  291. package/dist/providers/telemetry.mjs +0 -20
  292. package/dist/providers/telemetry.mjs.map +0 -1
  293. package/dist/providers/webhooks.js +0 -30
  294. package/dist/providers/webhooks.js.map +0 -1
  295. package/dist/providers/webhooks.mjs +0 -31
  296. package/dist/providers/webhooks.mjs.map +0 -1
  297. package/dist/registries/apis.js +0 -23
  298. package/dist/registries/apis.js.map +0 -1
  299. package/dist/registries/apis.mjs +0 -24
  300. package/dist/registries/apis.mjs.map +0 -1
  301. package/dist/registries/components.js +0 -45
  302. package/dist/registries/components.js.map +0 -1
  303. package/dist/registries/components.mjs +0 -46
  304. package/dist/registries/components.mjs.map +0 -1
  305. package/dist/registries/content-types.js +0 -70
  306. package/dist/registries/content-types.js.map +0 -1
  307. package/dist/registries/content-types.mjs +0 -71
  308. package/dist/registries/content-types.mjs.map +0 -1
  309. package/dist/registries/controllers.js +0 -80
  310. package/dist/registries/controllers.js.map +0 -1
  311. package/dist/registries/controllers.mjs +0 -81
  312. package/dist/registries/controllers.mjs.map +0 -1
  313. package/dist/registries/custom-fields.js +0 -71
  314. package/dist/registries/custom-fields.js.map +0 -1
  315. package/dist/registries/custom-fields.mjs +0 -72
  316. package/dist/registries/custom-fields.mjs.map +0 -1
  317. package/dist/registries/hooks.js +0 -58
  318. package/dist/registries/hooks.js.map +0 -1
  319. package/dist/registries/hooks.mjs +0 -59
  320. package/dist/registries/hooks.mjs.map +0 -1
  321. package/dist/registries/middlewares.js +0 -60
  322. package/dist/registries/middlewares.js.map +0 -1
  323. package/dist/registries/middlewares.mjs +0 -61
  324. package/dist/registries/middlewares.mjs.map +0 -1
  325. package/dist/registries/models.js +0 -16
  326. package/dist/registries/models.js.map +0 -1
  327. package/dist/registries/models.mjs +0 -16
  328. package/dist/registries/models.mjs.map +0 -1
  329. package/dist/registries/modules.js +0 -39
  330. package/dist/registries/modules.js.map +0 -1
  331. package/dist/registries/modules.mjs +0 -40
  332. package/dist/registries/modules.mjs.map +0 -1
  333. package/dist/registries/namespace.js +0 -27
  334. package/dist/registries/namespace.js.map +0 -1
  335. package/dist/registries/namespace.mjs +0 -27
  336. package/dist/registries/namespace.mjs.map +0 -1
  337. package/dist/registries/plugins.js +0 -23
  338. package/dist/registries/plugins.js.map +0 -1
  339. package/dist/registries/plugins.mjs +0 -24
  340. package/dist/registries/plugins.mjs.map +0 -1
  341. package/dist/registries/policies.js +0 -108
  342. package/dist/registries/policies.js.map +0 -1
  343. package/dist/registries/policies.mjs +0 -109
  344. package/dist/registries/policies.mjs.map +0 -1
  345. package/dist/registries/sanitizers.js +0 -25
  346. package/dist/registries/sanitizers.js.map +0 -1
  347. package/dist/registries/sanitizers.mjs +0 -24
  348. package/dist/registries/sanitizers.mjs.map +0 -1
  349. package/dist/registries/services.js +0 -80
  350. package/dist/registries/services.js.map +0 -1
  351. package/dist/registries/services.mjs +0 -81
  352. package/dist/registries/services.mjs.map +0 -1
  353. package/dist/registries/validators.js +0 -25
  354. package/dist/registries/validators.js.map +0 -1
  355. package/dist/registries/validators.mjs +0 -24
  356. package/dist/registries/validators.mjs.map +0 -1
  357. package/dist/services/auth/index.js +0 -81
  358. package/dist/services/auth/index.js.map +0 -1
  359. package/dist/services/auth/index.mjs +0 -80
  360. package/dist/services/auth/index.mjs.map +0 -1
  361. package/dist/services/config.js +0 -47
  362. package/dist/services/config.js.map +0 -1
  363. package/dist/services/config.mjs +0 -47
  364. package/dist/services/config.mjs.map +0 -1
  365. package/dist/services/content-api/index.js +0 -85
  366. package/dist/services/content-api/index.js.map +0 -1
  367. package/dist/services/content-api/index.mjs +0 -84
  368. package/dist/services/content-api/index.mjs.map +0 -1
  369. package/dist/services/content-api/permissions/engine.js +0 -7
  370. package/dist/services/content-api/permissions/engine.js.map +0 -1
  371. package/dist/services/content-api/permissions/engine.mjs +0 -6
  372. package/dist/services/content-api/permissions/engine.mjs.map +0 -1
  373. package/dist/services/content-api/permissions/index.js +0 -87
  374. package/dist/services/content-api/permissions/index.js.map +0 -1
  375. package/dist/services/content-api/permissions/index.mjs +0 -86
  376. package/dist/services/content-api/permissions/index.mjs.map +0 -1
  377. package/dist/services/content-api/permissions/providers/action.js +0 -16
  378. package/dist/services/content-api/permissions/providers/action.js.map +0 -1
  379. package/dist/services/content-api/permissions/providers/action.mjs +0 -17
  380. package/dist/services/content-api/permissions/providers/action.mjs.map +0 -1
  381. package/dist/services/content-api/permissions/providers/condition.js +0 -16
  382. package/dist/services/content-api/permissions/providers/condition.js.map +0 -1
  383. package/dist/services/content-api/permissions/providers/condition.mjs +0 -17
  384. package/dist/services/content-api/permissions/providers/condition.mjs.map +0 -1
  385. package/dist/services/core-store.js +0 -107
  386. package/dist/services/core-store.js.map +0 -1
  387. package/dist/services/core-store.mjs +0 -107
  388. package/dist/services/core-store.mjs.map +0 -1
  389. package/dist/services/cron.js +0 -68
  390. package/dist/services/cron.js.map +0 -1
  391. package/dist/services/cron.mjs +0 -69
  392. package/dist/services/cron.mjs.map +0 -1
  393. package/dist/services/custom-fields.js +0 -10
  394. package/dist/services/custom-fields.js.map +0 -1
  395. package/dist/services/custom-fields.mjs +0 -11
  396. package/dist/services/custom-fields.mjs.map +0 -1
  397. package/dist/services/document-service/attributes/index.js +0 -22
  398. package/dist/services/document-service/attributes/index.js.map +0 -1
  399. package/dist/services/document-service/attributes/index.mjs +0 -22
  400. package/dist/services/document-service/attributes/index.mjs.map +0 -1
  401. package/dist/services/document-service/attributes/transforms.js +0 -20
  402. package/dist/services/document-service/attributes/transforms.js.map +0 -1
  403. package/dist/services/document-service/attributes/transforms.mjs +0 -19
  404. package/dist/services/document-service/attributes/transforms.mjs.map +0 -1
  405. package/dist/services/document-service/common.js +0 -7
  406. package/dist/services/document-service/common.js.map +0 -1
  407. package/dist/services/document-service/common.mjs +0 -7
  408. package/dist/services/document-service/common.mjs.map +0 -1
  409. package/dist/services/document-service/components.js +0 -288
  410. package/dist/services/document-service/components.js.map +0 -1
  411. package/dist/services/document-service/components.mjs +0 -286
  412. package/dist/services/document-service/components.mjs.map +0 -1
  413. package/dist/services/document-service/draft-and-publish.js +0 -69
  414. package/dist/services/document-service/draft-and-publish.js.map +0 -1
  415. package/dist/services/document-service/draft-and-publish.mjs +0 -69
  416. package/dist/services/document-service/draft-and-publish.mjs.map +0 -1
  417. package/dist/services/document-service/entries.js +0 -95
  418. package/dist/services/document-service/entries.js.map +0 -1
  419. package/dist/services/document-service/entries.mjs +0 -95
  420. package/dist/services/document-service/entries.mjs.map +0 -1
  421. package/dist/services/document-service/events.js +0 -47
  422. package/dist/services/document-service/events.js.map +0 -1
  423. package/dist/services/document-service/events.mjs +0 -47
  424. package/dist/services/document-service/events.mjs.map +0 -1
  425. package/dist/services/document-service/index.js +0 -36
  426. package/dist/services/document-service/index.js.map +0 -1
  427. package/dist/services/document-service/index.mjs +0 -36
  428. package/dist/services/document-service/index.mjs.map +0 -1
  429. package/dist/services/document-service/internationalization.js +0 -63
  430. package/dist/services/document-service/internationalization.js.map +0 -1
  431. package/dist/services/document-service/internationalization.mjs +0 -63
  432. package/dist/services/document-service/internationalization.mjs.map +0 -1
  433. package/dist/services/document-service/middlewares/errors.js +0 -25
  434. package/dist/services/document-service/middlewares/errors.js.map +0 -1
  435. package/dist/services/document-service/middlewares/errors.mjs +0 -25
  436. package/dist/services/document-service/middlewares/errors.mjs.map +0 -1
  437. package/dist/services/document-service/middlewares/middleware-manager.js +0 -49
  438. package/dist/services/document-service/middlewares/middleware-manager.js.map +0 -1
  439. package/dist/services/document-service/middlewares/middleware-manager.mjs +0 -49
  440. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +0 -1
  441. package/dist/services/document-service/params.js +0 -8
  442. package/dist/services/document-service/params.js.map +0 -1
  443. package/dist/services/document-service/params.mjs +0 -8
  444. package/dist/services/document-service/params.mjs.map +0 -1
  445. package/dist/services/document-service/repository.js +0 -329
  446. package/dist/services/document-service/repository.js.map +0 -1
  447. package/dist/services/document-service/repository.mjs +0 -329
  448. package/dist/services/document-service/repository.mjs.map +0 -1
  449. package/dist/services/document-service/transform/data.js +0 -15
  450. package/dist/services/document-service/transform/data.js.map +0 -1
  451. package/dist/services/document-service/transform/data.mjs +0 -15
  452. package/dist/services/document-service/transform/data.mjs.map +0 -1
  453. package/dist/services/document-service/transform/fields.js +0 -24
  454. package/dist/services/document-service/transform/fields.js.map +0 -1
  455. package/dist/services/document-service/transform/fields.mjs +0 -24
  456. package/dist/services/document-service/transform/fields.mjs.map +0 -1
  457. package/dist/services/document-service/transform/id-map.js +0 -87
  458. package/dist/services/document-service/transform/id-map.js.map +0 -1
  459. package/dist/services/document-service/transform/id-map.mjs +0 -87
  460. package/dist/services/document-service/transform/id-map.mjs.map +0 -1
  461. package/dist/services/document-service/transform/id-transform.js +0 -33
  462. package/dist/services/document-service/transform/id-transform.js.map +0 -1
  463. package/dist/services/document-service/transform/id-transform.mjs +0 -33
  464. package/dist/services/document-service/transform/id-transform.mjs.map +0 -1
  465. package/dist/services/document-service/transform/populate.js +0 -21
  466. package/dist/services/document-service/transform/populate.js.map +0 -1
  467. package/dist/services/document-service/transform/populate.mjs +0 -21
  468. package/dist/services/document-service/transform/populate.mjs.map +0 -1
  469. package/dist/services/document-service/transform/query.js +0 -9
  470. package/dist/services/document-service/transform/query.js.map +0 -1
  471. package/dist/services/document-service/transform/query.mjs +0 -9
  472. package/dist/services/document-service/transform/query.mjs.map +0 -1
  473. package/dist/services/document-service/transform/relations/extract/data-ids.js +0 -57
  474. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +0 -1
  475. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +0 -57
  476. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +0 -1
  477. package/dist/services/document-service/transform/relations/transform/data-ids.js +0 -76
  478. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +0 -1
  479. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +0 -76
  480. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +0 -1
  481. package/dist/services/document-service/transform/relations/transform/default-locale.js +0 -32
  482. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +0 -1
  483. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +0 -32
  484. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +0 -1
  485. package/dist/services/document-service/transform/relations/utils/dp.js +0 -30
  486. package/dist/services/document-service/transform/relations/utils/dp.js.map +0 -1
  487. package/dist/services/document-service/transform/relations/utils/dp.mjs +0 -30
  488. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +0 -1
  489. package/dist/services/document-service/transform/relations/utils/i18n.js +0 -25
  490. package/dist/services/document-service/transform/relations/utils/i18n.js.map +0 -1
  491. package/dist/services/document-service/transform/relations/utils/i18n.mjs +0 -25
  492. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +0 -1
  493. package/dist/services/document-service/transform/relations/utils/map-relation.js +0 -91
  494. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +0 -1
  495. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +0 -91
  496. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +0 -1
  497. package/dist/services/document-service/utils/populate.js +0 -47
  498. package/dist/services/document-service/utils/populate.js.map +0 -1
  499. package/dist/services/document-service/utils/populate.mjs +0 -47
  500. package/dist/services/document-service/utils/populate.mjs.map +0 -1
  501. package/dist/services/document-service/utils/unidirectional-relations.js +0 -69
  502. package/dist/services/document-service/utils/unidirectional-relations.js.map +0 -1
  503. package/dist/services/document-service/utils/unidirectional-relations.mjs +0 -69
  504. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +0 -1
  505. package/dist/services/entity-service/index.js +0 -169
  506. package/dist/services/entity-service/index.js.map +0 -1
  507. package/dist/services/entity-service/index.mjs +0 -167
  508. package/dist/services/entity-service/index.mjs.map +0 -1
  509. package/dist/services/entity-validator/blocks-validator.js +0 -128
  510. package/dist/services/entity-validator/blocks-validator.js.map +0 -1
  511. package/dist/services/entity-validator/blocks-validator.mjs +0 -128
  512. package/dist/services/entity-validator/blocks-validator.mjs.map +0 -1
  513. package/dist/services/entity-validator/index.js +0 -389
  514. package/dist/services/entity-validator/index.js.map +0 -1
  515. package/dist/services/entity-validator/index.mjs +0 -388
  516. package/dist/services/entity-validator/index.mjs.map +0 -1
  517. package/dist/services/entity-validator/validators.js +0 -241
  518. package/dist/services/entity-validator/validators.js.map +0 -1
  519. package/dist/services/entity-validator/validators.mjs +0 -239
  520. package/dist/services/entity-validator/validators.mjs.map +0 -1
  521. package/dist/services/errors.js +0 -76
  522. package/dist/services/errors.js.map +0 -1
  523. package/dist/services/errors.mjs +0 -74
  524. package/dist/services/errors.mjs.map +0 -1
  525. package/dist/services/event-hub.js +0 -72
  526. package/dist/services/event-hub.js.map +0 -1
  527. package/dist/services/event-hub.mjs +0 -73
  528. package/dist/services/event-hub.mjs.map +0 -1
  529. package/dist/services/features.js +0 -17
  530. package/dist/services/features.js.map +0 -1
  531. package/dist/services/features.mjs +0 -17
  532. package/dist/services/features.mjs.map +0 -1
  533. package/dist/services/fs.js +0 -51
  534. package/dist/services/fs.js.map +0 -1
  535. package/dist/services/fs.mjs +0 -49
  536. package/dist/services/fs.mjs.map +0 -1
  537. package/dist/services/metrics/admin-user-hash.js +0 -14
  538. package/dist/services/metrics/admin-user-hash.js.map +0 -1
  539. package/dist/services/metrics/admin-user-hash.mjs +0 -12
  540. package/dist/services/metrics/admin-user-hash.mjs.map +0 -1
  541. package/dist/services/metrics/index.js +0 -45
  542. package/dist/services/metrics/index.js.map +0 -1
  543. package/dist/services/metrics/index.mjs +0 -46
  544. package/dist/services/metrics/index.mjs.map +0 -1
  545. package/dist/services/metrics/is-truthy.js +0 -9
  546. package/dist/services/metrics/is-truthy.js.map +0 -1
  547. package/dist/services/metrics/is-truthy.mjs +0 -8
  548. package/dist/services/metrics/is-truthy.mjs.map +0 -1
  549. package/dist/services/metrics/middleware.js +0 -25
  550. package/dist/services/metrics/middleware.js.map +0 -1
  551. package/dist/services/metrics/middleware.mjs +0 -26
  552. package/dist/services/metrics/middleware.mjs.map +0 -1
  553. package/dist/services/metrics/rate-limiter.js +0 -21
  554. package/dist/services/metrics/rate-limiter.js.map +0 -1
  555. package/dist/services/metrics/rate-limiter.mjs +0 -22
  556. package/dist/services/metrics/rate-limiter.mjs.map +0 -1
  557. package/dist/services/metrics/sender.js +0 -76
  558. package/dist/services/metrics/sender.js.map +0 -1
  559. package/dist/services/metrics/sender.mjs +0 -70
  560. package/dist/services/metrics/sender.mjs.map +0 -1
  561. package/dist/services/query-params.js +0 -12
  562. package/dist/services/query-params.js.map +0 -1
  563. package/dist/services/query-params.mjs +0 -13
  564. package/dist/services/query-params.mjs.map +0 -1
  565. package/dist/services/reloader.js +0 -36
  566. package/dist/services/reloader.js.map +0 -1
  567. package/dist/services/reloader.mjs +0 -36
  568. package/dist/services/reloader.mjs.map +0 -1
  569. package/dist/services/request-context.js +0 -13
  570. package/dist/services/request-context.js.map +0 -1
  571. package/dist/services/request-context.mjs +0 -14
  572. package/dist/services/request-context.mjs.map +0 -1
  573. package/dist/services/server/admin-api.js +0 -13
  574. package/dist/services/server/admin-api.js.map +0 -1
  575. package/dist/services/server/admin-api.mjs +0 -13
  576. package/dist/services/server/admin-api.mjs.map +0 -1
  577. package/dist/services/server/api.js +0 -30
  578. package/dist/services/server/api.js.map +0 -1
  579. package/dist/services/server/api.mjs +0 -28
  580. package/dist/services/server/api.mjs.map +0 -1
  581. package/dist/services/server/compose-endpoint.js +0 -117
  582. package/dist/services/server/compose-endpoint.js.map +0 -1
  583. package/dist/services/server/compose-endpoint.mjs +0 -116
  584. package/dist/services/server/compose-endpoint.mjs.map +0 -1
  585. package/dist/services/server/content-api.js +0 -12
  586. package/dist/services/server/content-api.js.map +0 -1
  587. package/dist/services/server/content-api.mjs +0 -12
  588. package/dist/services/server/content-api.mjs.map +0 -1
  589. package/dist/services/server/http-server.js +0 -50
  590. package/dist/services/server/http-server.js.map +0 -1
  591. package/dist/services/server/http-server.mjs +0 -48
  592. package/dist/services/server/http-server.mjs.map +0 -1
  593. package/dist/services/server/index.js +0 -87
  594. package/dist/services/server/index.js.map +0 -1
  595. package/dist/services/server/index.mjs +0 -85
  596. package/dist/services/server/index.mjs.map +0 -1
  597. package/dist/services/server/koa.js +0 -52
  598. package/dist/services/server/koa.js.map +0 -1
  599. package/dist/services/server/koa.mjs +0 -48
  600. package/dist/services/server/koa.mjs.map +0 -1
  601. package/dist/services/server/middleware.js +0 -92
  602. package/dist/services/server/middleware.js.map +0 -1
  603. package/dist/services/server/middleware.mjs +0 -90
  604. package/dist/services/server/middleware.mjs.map +0 -1
  605. package/dist/services/server/policy.js +0 -20
  606. package/dist/services/server/policy.js.map +0 -1
  607. package/dist/services/server/policy.mjs +0 -20
  608. package/dist/services/server/policy.mjs.map +0 -1
  609. package/dist/services/server/register-middlewares.js +0 -72
  610. package/dist/services/server/register-middlewares.js.map +0 -1
  611. package/dist/services/server/register-middlewares.mjs +0 -73
  612. package/dist/services/server/register-middlewares.mjs.map +0 -1
  613. package/dist/services/server/register-routes.js +0 -76
  614. package/dist/services/server/register-routes.js.map +0 -1
  615. package/dist/services/server/register-routes.mjs +0 -75
  616. package/dist/services/server/register-routes.mjs.map +0 -1
  617. package/dist/services/server/routing.js +0 -91
  618. package/dist/services/server/routing.js.map +0 -1
  619. package/dist/services/server/routing.mjs +0 -89
  620. package/dist/services/server/routing.mjs.map +0 -1
  621. package/dist/services/utils/dynamic-zones.js +0 -17
  622. package/dist/services/utils/dynamic-zones.js.map +0 -1
  623. package/dist/services/utils/dynamic-zones.mjs +0 -18
  624. package/dist/services/utils/dynamic-zones.mjs.map +0 -1
  625. package/dist/services/webhook-runner.js +0 -133
  626. package/dist/services/webhook-runner.js.map +0 -1
  627. package/dist/services/webhook-runner.mjs +0 -131
  628. package/dist/services/webhook-runner.mjs.map +0 -1
  629. package/dist/services/webhook-store.js +0 -110
  630. package/dist/services/webhook-store.js.map +0 -1
  631. package/dist/services/webhook-store.mjs +0 -110
  632. package/dist/services/webhook-store.mjs.map +0 -1
  633. package/dist/services/worker-queue.js +0 -56
  634. package/dist/services/worker-queue.js.map +0 -1
  635. package/dist/services/worker-queue.mjs +0 -55
  636. package/dist/services/worker-queue.mjs.map +0 -1
  637. package/dist/utils/convert-custom-field-type.js +0 -24
  638. package/dist/utils/convert-custom-field-type.js.map +0 -1
  639. package/dist/utils/convert-custom-field-type.mjs +0 -24
  640. package/dist/utils/convert-custom-field-type.mjs.map +0 -1
  641. package/dist/utils/cron.js +0 -38
  642. package/dist/utils/cron.js.map +0 -1
  643. package/dist/utils/cron.mjs +0 -38
  644. package/dist/utils/cron.mjs.map +0 -1
  645. package/dist/utils/fetch.js +0 -21
  646. package/dist/utils/fetch.js.map +0 -1
  647. package/dist/utils/fetch.mjs +0 -21
  648. package/dist/utils/fetch.mjs.map +0 -1
  649. package/dist/utils/filepath-to-prop-path.js +0 -33
  650. package/dist/utils/filepath-to-prop-path.js.map +0 -1
  651. package/dist/utils/filepath-to-prop-path.mjs +0 -30
  652. package/dist/utils/filepath-to-prop-path.mjs.map +0 -1
  653. package/dist/utils/is-initialized.js +0 -16
  654. package/dist/utils/is-initialized.js.map +0 -1
  655. package/dist/utils/is-initialized.mjs +0 -16
  656. package/dist/utils/is-initialized.mjs.map +0 -1
  657. package/dist/utils/lifecycles.js +0 -9
  658. package/dist/utils/lifecycles.js.map +0 -1
  659. package/dist/utils/lifecycles.mjs +0 -9
  660. package/dist/utils/lifecycles.mjs.map +0 -1
  661. package/dist/utils/load-config-file.js +0 -45
  662. package/dist/utils/load-config-file.js.map +0 -1
  663. package/dist/utils/load-config-file.mjs +0 -42
  664. package/dist/utils/load-config-file.mjs.map +0 -1
  665. package/dist/utils/load-files.js +0 -39
  666. package/dist/utils/load-files.js.map +0 -1
  667. package/dist/utils/load-files.mjs +0 -35
  668. package/dist/utils/load-files.mjs.map +0 -1
  669. package/dist/utils/open-browser.js +0 -11
  670. package/dist/utils/open-browser.js.map +0 -1
  671. package/dist/utils/open-browser.mjs +0 -9
  672. package/dist/utils/open-browser.mjs.map +0 -1
  673. package/dist/utils/resolve-working-dirs.js +0 -13
  674. package/dist/utils/resolve-working-dirs.js.map +0 -1
  675. package/dist/utils/resolve-working-dirs.mjs +0 -11
  676. package/dist/utils/resolve-working-dirs.mjs.map +0 -1
  677. package/dist/utils/signals.js +0 -17
  678. package/dist/utils/signals.js.map +0 -1
  679. package/dist/utils/signals.mjs +0 -17
  680. package/dist/utils/signals.mjs.map +0 -1
  681. package/dist/utils/startup-logger.js +0 -81
  682. package/dist/utils/startup-logger.js.map +0 -1
  683. package/dist/utils/startup-logger.mjs +0 -77
  684. package/dist/utils/startup-logger.mjs.map +0 -1
  685. package/dist/utils/transform-content-types-to-models.js +0 -288
  686. package/dist/utils/transform-content-types-to-models.js.map +0 -1
  687. package/dist/utils/transform-content-types-to-models.mjs +0 -285
  688. package/dist/utils/transform-content-types-to-models.mjs.map +0 -1
  689. package/dist/utils/update-notifier/index.js +0 -85
  690. package/dist/utils/update-notifier/index.js.map +0 -1
  691. package/dist/utils/update-notifier/index.mjs +0 -78
  692. package/dist/utils/update-notifier/index.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-hub.mjs","sources":["../../src/services/event-hub.ts"],"sourcesContent":["export type Subscriber = (eventName: string, ...args: any[]) => Promise<void>;\nexport type Listener = (...args: any[]) => Promise<void>;\n\nexport interface EventHub {\n emit(eventName: string, ...args: unknown[]): Promise<void>;\n subscribe(subscriber: Subscriber): () => void;\n unsubscribe(subscriber: Subscriber): void;\n on(eventName: string, listener: Listener): () => void;\n off(eventName: string, listener: Listener): void;\n once(eventName: string, listener: Listener): () => void;\n destroy(): EventHub;\n removeListener(eventName: string, listener: Listener): void;\n removeAllListeners(): EventHub;\n removeAllSubscribers(): EventHub;\n addListener(eventName: string, listener: Listener): () => void;\n}\n\n/**\n * The event hub is Strapi's event control center.\n */\nexport default function createEventHub(): EventHub {\n const listeners = new Map();\n\n // Default subscriber to easily add listeners with the on() method\n const defaultSubscriber = async (eventName: string, ...args: unknown[]) => {\n if (listeners.has(eventName)) {\n for (const listener of listeners.get(eventName)) {\n await listener(...args);\n }\n }\n };\n\n // Store of subscribers that will be called when an event is emitted\n const subscribers = [defaultSubscriber];\n\n const eventHub: EventHub = {\n async emit(eventName, ...args) {\n for (const subscriber of subscribers) {\n await subscriber(eventName, ...args);\n }\n },\n\n subscribe(subscriber) {\n subscribers.push(subscriber);\n\n // Return a function to remove the subscriber\n return () => {\n eventHub.unsubscribe(subscriber);\n };\n },\n\n unsubscribe(subscriber) {\n const subscriberIndex = subscribers.indexOf(subscriber);\n\n // Only remove the subscriber if it exists\n if (subscriberIndex >= 0) {\n subscribers.splice(subscriberIndex, 1);\n }\n },\n\n on(eventName, listener) {\n if (!listeners.has(eventName)) {\n listeners.set(eventName, [listener]);\n } else {\n listeners.get(eventName).push(listener);\n }\n\n // Return a function to remove the listener\n return () => {\n eventHub.off(eventName, listener);\n };\n },\n\n off(eventName, listener) {\n listeners.get(eventName)?.splice(listeners.get(eventName).indexOf(listener), 1);\n },\n\n once(eventName, listener) {\n return eventHub.on(eventName, async (...args) => {\n eventHub.off(eventName, listener);\n return listener(...args);\n });\n },\n\n destroy() {\n this.removeAllListeners();\n this.removeAllSubscribers();\n return this;\n },\n\n removeListener(eventName, listener) {\n return eventHub.off(eventName, listener);\n },\n\n removeAllListeners() {\n listeners.clear();\n return this;\n },\n\n removeAllSubscribers() {\n subscribers.length = 0;\n return this;\n },\n\n addListener(eventName, listener) {\n return eventHub.on(eventName, listener);\n },\n };\n\n return eventHub;\n}\n"],"names":[],"mappings":"AAoBA,SAAwB,iBAA2B;AAC3C,QAAA,gCAAgB;AAGhB,QAAA,oBAAoB,OAAO,cAAsB,SAAoB;AACrE,QAAA,UAAU,IAAI,SAAS,GAAG;AAC5B,iBAAW,YAAY,UAAU,IAAI,SAAS,GAAG;AACzC,cAAA,SAAS,GAAG,IAAI;AAAA,MACxB;AAAA,IACF;AAAA,EAAA;AAII,QAAA,cAAc,CAAC,iBAAiB;AAEtC,QAAM,WAAqB;AAAA,IACzB,MAAM,KAAK,cAAc,MAAM;AAC7B,iBAAW,cAAc,aAAa;AAC9B,cAAA,WAAW,WAAW,GAAG,IAAI;AAAA,MACrC;AAAA,IACF;AAAA,IAEA,UAAU,YAAY;AACpB,kBAAY,KAAK,UAAU;AAG3B,aAAO,MAAM;AACX,iBAAS,YAAY,UAAU;AAAA,MAAA;AAAA,IAEnC;AAAA,IAEA,YAAY,YAAY;AAChB,YAAA,kBAAkB,YAAY,QAAQ,UAAU;AAGtD,UAAI,mBAAmB,GAAG;AACZ,oBAAA,OAAO,iBAAiB,CAAC;AAAA,MACvC;AAAA,IACF;AAAA,IAEA,GAAG,WAAW,UAAU;AACtB,UAAI,CAAC,UAAU,IAAI,SAAS,GAAG;AAC7B,kBAAU,IAAI,WAAW,CAAC,QAAQ,CAAC;AAAA,MAAA,OAC9B;AACL,kBAAU,IAAI,SAAS,EAAE,KAAK,QAAQ;AAAA,MACxC;AAGA,aAAO,MAAM;AACF,iBAAA,IAAI,WAAW,QAAQ;AAAA,MAAA;AAAA,IAEpC;AAAA,IAEA,IAAI,WAAW,UAAU;AACb,gBAAA,IAAI,SAAS,GAAG,OAAO,UAAU,IAAI,SAAS,EAAE,QAAQ,QAAQ,GAAG,CAAC;AAAA,IAChF;AAAA,IAEA,KAAK,WAAW,UAAU;AACxB,aAAO,SAAS,GAAG,WAAW,UAAU,SAAS;AACtC,iBAAA,IAAI,WAAW,QAAQ;AACzB,eAAA,SAAS,GAAG,IAAI;AAAA,MAAA,CACxB;AAAA,IACH;AAAA,IAEA,UAAU;AACR,WAAK,mBAAmB;AACxB,WAAK,qBAAqB;AACnB,aAAA;AAAA,IACT;AAAA,IAEA,eAAe,WAAW,UAAU;AAC3B,aAAA,SAAS,IAAI,WAAW,QAAQ;AAAA,IACzC;AAAA,IAEA,qBAAqB;AACnB,gBAAU,MAAM;AACT,aAAA;AAAA,IACT;AAAA,IAEA,uBAAuB;AACrB,kBAAY,SAAS;AACd,aAAA;AAAA,IACT;AAAA,IAEA,YAAY,WAAW,UAAU;AACxB,aAAA,SAAS,GAAG,WAAW,QAAQ;AAAA,IACxC;AAAA,EAAA;AAGK,SAAA;AACT;"}
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const createFeaturesService = (strapi) => {
4
- const service = {
5
- get config() {
6
- return strapi.config.get("features");
7
- },
8
- future: {
9
- isEnabled(futureFlagName) {
10
- return service.config?.future?.[futureFlagName] === true;
11
- }
12
- }
13
- };
14
- return service;
15
- };
16
- exports.createFeaturesService = createFeaturesService;
17
- //# sourceMappingURL=features.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"features.js","sources":["../../src/services/features.ts"],"sourcesContent":["/**\n * The features service is responsible for managing features within strapi,\n * including interacting with the feature configuration file to know\n * which are enabled and disabled.\n */\n\nimport type { Core, Modules } from '@strapi/types';\n\ntype FeatureName = keyof Modules.Features.FeaturesConfig['future'];\n\nconst createFeaturesService = (strapi: Core.Strapi): Modules.Features.FeaturesService => {\n const service: Modules.Features.FeaturesService = {\n get config() {\n return strapi.config.get<Modules.Features.FeaturesService['config']>('features');\n },\n future: {\n isEnabled(futureFlagName: string): boolean {\n return service.config?.future?.[futureFlagName as FeatureName] === true;\n },\n },\n };\n\n return service;\n};\n\nexport { createFeaturesService };\nexport type FeaturesService = Modules.Features.FeaturesService;\n"],"names":[],"mappings":";;AAUM,MAAA,wBAAwB,CAAC,WAA0D;AACvF,QAAM,UAA4C;AAAA,IAChD,IAAI,SAAS;AACJ,aAAA,OAAO,OAAO,IAAgD,UAAU;AAAA,IACjF;AAAA,IACA,QAAQ;AAAA,MACN,UAAU,gBAAiC;AACzC,eAAO,QAAQ,QAAQ,SAAS,cAA6B,MAAM;AAAA,MACrE;AAAA,IACF;AAAA,EAAA;AAGK,SAAA;AACT;;"}
@@ -1,17 +0,0 @@
1
- const createFeaturesService = (strapi) => {
2
- const service = {
3
- get config() {
4
- return strapi.config.get("features");
5
- },
6
- future: {
7
- isEnabled(futureFlagName) {
8
- return service.config?.future?.[futureFlagName] === true;
9
- }
10
- }
11
- };
12
- return service;
13
- };
14
- export {
15
- createFeaturesService
16
- };
17
- //# sourceMappingURL=features.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"features.mjs","sources":["../../src/services/features.ts"],"sourcesContent":["/**\n * The features service is responsible for managing features within strapi,\n * including interacting with the feature configuration file to know\n * which are enabled and disabled.\n */\n\nimport type { Core, Modules } from '@strapi/types';\n\ntype FeatureName = keyof Modules.Features.FeaturesConfig['future'];\n\nconst createFeaturesService = (strapi: Core.Strapi): Modules.Features.FeaturesService => {\n const service: Modules.Features.FeaturesService = {\n get config() {\n return strapi.config.get<Modules.Features.FeaturesService['config']>('features');\n },\n future: {\n isEnabled(futureFlagName: string): boolean {\n return service.config?.future?.[futureFlagName as FeatureName] === true;\n },\n },\n };\n\n return service;\n};\n\nexport { createFeaturesService };\nexport type FeaturesService = Modules.Features.FeaturesService;\n"],"names":[],"mappings":"AAUM,MAAA,wBAAwB,CAAC,WAA0D;AACvF,QAAM,UAA4C;AAAA,IAChD,IAAI,SAAS;AACJ,aAAA,OAAO,OAAO,IAAgD,UAAU;AAAA,IACjF;AAAA,IACA,QAAQ;AAAA,MACN,UAAU,gBAAiC;AACzC,eAAO,QAAQ,QAAQ,SAAS,cAA6B,MAAM;AAAA,MACrE;AAAA,IACF;AAAA,EAAA;AAGK,SAAA;AACT;"}
@@ -1,51 +0,0 @@
1
- "use strict";
2
- const path = require("path");
3
- const fse = require("fs-extra");
4
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
5
- const path__default = /* @__PURE__ */ _interopDefault(path);
6
- const fse__default = /* @__PURE__ */ _interopDefault(fse);
7
- const createStrapiFs = (strapi) => {
8
- function normalizePath(optPath) {
9
- const filePath = Array.isArray(optPath) ? optPath.join("/") : optPath;
10
- const normalizedPath = path__default.default.normalize(filePath).replace(/^\/?(\.\/|\.\.\/)+/, "");
11
- return path__default.default.resolve(strapi.dirs.app.root, normalizedPath);
12
- }
13
- const strapiFS = {
14
- /**
15
- * Writes a file in a strapi app
16
- * @param {Array|string} optPath - file path
17
- * @param {string} data - content
18
- */
19
- writeAppFile(optPath, data) {
20
- const writePath = normalizePath(optPath);
21
- return fse__default.default.ensureFile(writePath).then(() => fse__default.default.writeFile(writePath, data));
22
- },
23
- /**
24
- * Writes a file in a plugin extensions folder
25
- * @param {string} plugin - plugin name
26
- * @param {Array|string} optPath - path to file
27
- * @param {string} data - content
28
- */
29
- writePluginFile(plugin, optPath, data) {
30
- const newPath = ["extensions", plugin].concat(optPath).join("/");
31
- return strapiFS.writeAppFile(newPath, data);
32
- },
33
- /**
34
- * Removes a file in strapi app
35
- */
36
- removeAppFile(optPath) {
37
- const removePath = normalizePath(optPath);
38
- return fse__default.default.remove(removePath);
39
- },
40
- /**
41
- * Appends a file in strapi app
42
- */
43
- appendFile(optPath, data) {
44
- const writePath = normalizePath(optPath);
45
- return fse__default.default.appendFileSync(writePath, data);
46
- }
47
- };
48
- return strapiFS;
49
- };
50
- module.exports = createStrapiFs;
51
- //# sourceMappingURL=fs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs.js","sources":["../../src/services/fs.ts"],"sourcesContent":["import path from 'path';\nimport fse from 'fs-extra';\n\nimport type { Core } from '@strapi/types';\n\ninterface StrapiFS {\n writeAppFile(optPath: string | string[], data: string): Promise<void>;\n writePluginFile(plugin: string, optPath: string | string[], data: string): Promise<void>;\n removeAppFile(optPath: string | string[]): Promise<void>;\n appendFile(optPath: string | string[], data: string): void;\n}\n\n/**\n * create strapi fs layer\n */\nexport default (strapi: Core.Strapi) => {\n function normalizePath(optPath: string | string[]) {\n const filePath = Array.isArray(optPath) ? optPath.join('/') : optPath;\n\n const normalizedPath = path.normalize(filePath).replace(/^\\/?(\\.\\/|\\.\\.\\/)+/, '');\n\n return path.resolve(strapi.dirs.app.root, normalizedPath);\n }\n\n const strapiFS: StrapiFS = {\n /**\n * Writes a file in a strapi app\n * @param {Array|string} optPath - file path\n * @param {string} data - content\n */\n writeAppFile(optPath, data) {\n const writePath = normalizePath(optPath);\n return fse.ensureFile(writePath).then(() => fse.writeFile(writePath, data));\n },\n\n /**\n * Writes a file in a plugin extensions folder\n * @param {string} plugin - plugin name\n * @param {Array|string} optPath - path to file\n * @param {string} data - content\n */\n writePluginFile(plugin, optPath, data) {\n const newPath = ['extensions', plugin].concat(optPath).join('/');\n return strapiFS.writeAppFile(newPath, data);\n },\n\n /**\n * Removes a file in strapi app\n */\n removeAppFile(optPath) {\n const removePath = normalizePath(optPath);\n return fse.remove(removePath);\n },\n\n /**\n * Appends a file in strapi app\n */\n appendFile(optPath, data) {\n const writePath = normalizePath(optPath);\n return fse.appendFileSync(writePath, data);\n },\n };\n\n return strapiFS;\n};\n"],"names":["path","fse"],"mappings":";;;;;;AAeA,MAAe,iBAAA,CAAC,WAAwB;AACtC,WAAS,cAAc,SAA4B;AAC3C,UAAA,WAAW,MAAM,QAAQ,OAAO,IAAI,QAAQ,KAAK,GAAG,IAAI;AAE9D,UAAM,iBAAiBA,cAAK,QAAA,UAAU,QAAQ,EAAE,QAAQ,sBAAsB,EAAE;AAEhF,WAAOA,cAAAA,QAAK,QAAQ,OAAO,KAAK,IAAI,MAAM,cAAc;AAAA,EAC1D;AAEA,QAAM,WAAqB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMzB,aAAa,SAAS,MAAM;AACpB,YAAA,YAAY,cAAc,OAAO;AAChC,aAAAC,qBAAI,WAAW,SAAS,EAAE,KAAK,MAAMA,aAAI,QAAA,UAAU,WAAW,IAAI,CAAC;AAAA,IAC5E;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,gBAAgB,QAAQ,SAAS,MAAM;AAC/B,YAAA,UAAU,CAAC,cAAc,MAAM,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AACxD,aAAA,SAAS,aAAa,SAAS,IAAI;AAAA,IAC5C;AAAA;AAAA;AAAA;AAAA,IAKA,cAAc,SAAS;AACf,YAAA,aAAa,cAAc,OAAO;AACjC,aAAAA,aAAA,QAAI,OAAO,UAAU;AAAA,IAC9B;AAAA;AAAA;AAAA;AAAA,IAKA,WAAW,SAAS,MAAM;AAClB,YAAA,YAAY,cAAc,OAAO;AAChC,aAAAA,qBAAI,eAAe,WAAW,IAAI;AAAA,IAC3C;AAAA,EAAA;AAGK,SAAA;AACT;;"}
@@ -1,49 +0,0 @@
1
- import path from "path";
2
- import fse from "fs-extra";
3
- const createStrapiFs = (strapi) => {
4
- function normalizePath(optPath) {
5
- const filePath = Array.isArray(optPath) ? optPath.join("/") : optPath;
6
- const normalizedPath = path.normalize(filePath).replace(/^\/?(\.\/|\.\.\/)+/, "");
7
- return path.resolve(strapi.dirs.app.root, normalizedPath);
8
- }
9
- const strapiFS = {
10
- /**
11
- * Writes a file in a strapi app
12
- * @param {Array|string} optPath - file path
13
- * @param {string} data - content
14
- */
15
- writeAppFile(optPath, data) {
16
- const writePath = normalizePath(optPath);
17
- return fse.ensureFile(writePath).then(() => fse.writeFile(writePath, data));
18
- },
19
- /**
20
- * Writes a file in a plugin extensions folder
21
- * @param {string} plugin - plugin name
22
- * @param {Array|string} optPath - path to file
23
- * @param {string} data - content
24
- */
25
- writePluginFile(plugin, optPath, data) {
26
- const newPath = ["extensions", plugin].concat(optPath).join("/");
27
- return strapiFS.writeAppFile(newPath, data);
28
- },
29
- /**
30
- * Removes a file in strapi app
31
- */
32
- removeAppFile(optPath) {
33
- const removePath = normalizePath(optPath);
34
- return fse.remove(removePath);
35
- },
36
- /**
37
- * Appends a file in strapi app
38
- */
39
- appendFile(optPath, data) {
40
- const writePath = normalizePath(optPath);
41
- return fse.appendFileSync(writePath, data);
42
- }
43
- };
44
- return strapiFS;
45
- };
46
- export {
47
- createStrapiFs as default
48
- };
49
- //# sourceMappingURL=fs.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs.mjs","sources":["../../src/services/fs.ts"],"sourcesContent":["import path from 'path';\nimport fse from 'fs-extra';\n\nimport type { Core } from '@strapi/types';\n\ninterface StrapiFS {\n writeAppFile(optPath: string | string[], data: string): Promise<void>;\n writePluginFile(plugin: string, optPath: string | string[], data: string): Promise<void>;\n removeAppFile(optPath: string | string[]): Promise<void>;\n appendFile(optPath: string | string[], data: string): void;\n}\n\n/**\n * create strapi fs layer\n */\nexport default (strapi: Core.Strapi) => {\n function normalizePath(optPath: string | string[]) {\n const filePath = Array.isArray(optPath) ? optPath.join('/') : optPath;\n\n const normalizedPath = path.normalize(filePath).replace(/^\\/?(\\.\\/|\\.\\.\\/)+/, '');\n\n return path.resolve(strapi.dirs.app.root, normalizedPath);\n }\n\n const strapiFS: StrapiFS = {\n /**\n * Writes a file in a strapi app\n * @param {Array|string} optPath - file path\n * @param {string} data - content\n */\n writeAppFile(optPath, data) {\n const writePath = normalizePath(optPath);\n return fse.ensureFile(writePath).then(() => fse.writeFile(writePath, data));\n },\n\n /**\n * Writes a file in a plugin extensions folder\n * @param {string} plugin - plugin name\n * @param {Array|string} optPath - path to file\n * @param {string} data - content\n */\n writePluginFile(plugin, optPath, data) {\n const newPath = ['extensions', plugin].concat(optPath).join('/');\n return strapiFS.writeAppFile(newPath, data);\n },\n\n /**\n * Removes a file in strapi app\n */\n removeAppFile(optPath) {\n const removePath = normalizePath(optPath);\n return fse.remove(removePath);\n },\n\n /**\n * Appends a file in strapi app\n */\n appendFile(optPath, data) {\n const writePath = normalizePath(optPath);\n return fse.appendFileSync(writePath, data);\n },\n };\n\n return strapiFS;\n};\n"],"names":[],"mappings":";;AAeA,MAAe,iBAAA,CAAC,WAAwB;AACtC,WAAS,cAAc,SAA4B;AAC3C,UAAA,WAAW,MAAM,QAAQ,OAAO,IAAI,QAAQ,KAAK,GAAG,IAAI;AAE9D,UAAM,iBAAiB,KAAK,UAAU,QAAQ,EAAE,QAAQ,sBAAsB,EAAE;AAEhF,WAAO,KAAK,QAAQ,OAAO,KAAK,IAAI,MAAM,cAAc;AAAA,EAC1D;AAEA,QAAM,WAAqB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMzB,aAAa,SAAS,MAAM;AACpB,YAAA,YAAY,cAAc,OAAO;AAChC,aAAA,IAAI,WAAW,SAAS,EAAE,KAAK,MAAM,IAAI,UAAU,WAAW,IAAI,CAAC;AAAA,IAC5E;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,gBAAgB,QAAQ,SAAS,MAAM;AAC/B,YAAA,UAAU,CAAC,cAAc,MAAM,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AACxD,aAAA,SAAS,aAAa,SAAS,IAAI;AAAA,IAC5C;AAAA;AAAA;AAAA;AAAA,IAKA,cAAc,SAAS;AACf,YAAA,aAAa,cAAc,OAAO;AACjC,aAAA,IAAI,OAAO,UAAU;AAAA,IAC9B;AAAA;AAAA;AAAA;AAAA,IAKA,WAAW,SAAS,MAAM;AAClB,YAAA,YAAY,cAAc,OAAO;AAChC,aAAA,IAAI,eAAe,WAAW,IAAI;AAAA,IAC3C;AAAA,EAAA;AAGK,SAAA;AACT;"}
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const crypto = require("crypto");
4
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
5
- const crypto__default = /* @__PURE__ */ _interopDefault(crypto);
6
- const generateAdminUserHash = (strapi) => {
7
- const ctx = strapi?.requestContext?.get();
8
- if (!ctx?.state?.user?.email) {
9
- return "";
10
- }
11
- return crypto__default.default.createHash("sha256").update(ctx.state.user.email).digest("hex");
12
- };
13
- exports.generateAdminUserHash = generateAdminUserHash;
14
- //# sourceMappingURL=admin-user-hash.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"admin-user-hash.js","sources":["../../../src/services/metrics/admin-user-hash.ts"],"sourcesContent":["import crypto from 'crypto';\nimport type { Core } from '@strapi/types';\n\n/**\n * Generate an admin user hash\n */\nconst generateAdminUserHash = (strapi: Core.Strapi) => {\n const ctx = strapi?.requestContext?.get();\n if (!ctx?.state?.user?.email) {\n return '';\n }\n return crypto.createHash('sha256').update(ctx.state.user.email).digest('hex');\n};\n\nexport { generateAdminUserHash };\n"],"names":["crypto"],"mappings":";;;;;AAMM,MAAA,wBAAwB,CAAC,WAAwB;AAC/C,QAAA,MAAM,QAAQ,gBAAgB,IAAI;AACxC,MAAI,CAAC,KAAK,OAAO,MAAM,OAAO;AACrB,WAAA;AAAA,EACT;AACO,SAAAA,wBAAO,WAAW,QAAQ,EAAE,OAAO,IAAI,MAAM,KAAK,KAAK,EAAE,OAAO,KAAK;AAC9E;;"}
@@ -1,12 +0,0 @@
1
- import crypto from "crypto";
2
- const generateAdminUserHash = (strapi) => {
3
- const ctx = strapi?.requestContext?.get();
4
- if (!ctx?.state?.user?.email) {
5
- return "";
6
- }
7
- return crypto.createHash("sha256").update(ctx.state.user.email).digest("hex");
8
- };
9
- export {
10
- generateAdminUserHash
11
- };
12
- //# sourceMappingURL=admin-user-hash.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"admin-user-hash.mjs","sources":["../../../src/services/metrics/admin-user-hash.ts"],"sourcesContent":["import crypto from 'crypto';\nimport type { Core } from '@strapi/types';\n\n/**\n * Generate an admin user hash\n */\nconst generateAdminUserHash = (strapi: Core.Strapi) => {\n const ctx = strapi?.requestContext?.get();\n if (!ctx?.state?.user?.email) {\n return '';\n }\n return crypto.createHash('sha256').update(ctx.state.user.email).digest('hex');\n};\n\nexport { generateAdminUserHash };\n"],"names":[],"mappings":";AAMM,MAAA,wBAAwB,CAAC,WAAwB;AAC/C,QAAA,MAAM,QAAQ,gBAAgB,IAAI;AACxC,MAAI,CAAC,KAAK,OAAO,MAAM,OAAO;AACrB,WAAA;AAAA,EACT;AACO,SAAA,OAAO,WAAW,QAAQ,EAAE,OAAO,IAAI,MAAM,KAAK,KAAK,EAAE,OAAO,KAAK;AAC9E;"}
@@ -1,45 +0,0 @@
1
- "use strict";
2
- const nodeSchedule = require("node-schedule");
3
- const rateLimiter = require("./rate-limiter.js");
4
- const sender = require("./sender.js");
5
- const middleware = require("./middleware.js");
6
- const isTruthy = require("./is-truthy.js");
7
- const LIMITED_EVENTS = [
8
- "didSaveMediaWithAlternativeText",
9
- "didSaveMediaWithCaption",
10
- "didDisableResponsiveDimensions",
11
- "didEnableResponsiveDimensions",
12
- "didInitializePluginUpload"
13
- ];
14
- const createTelemetryInstance = (strapi) => {
15
- const uuid = strapi.config.get("uuid");
16
- const telemetryDisabled = strapi.config.get("packageJsonStrapi.telemetryDisabled");
17
- const isDisabled = !uuid || isTruthy(process.env.STRAPI_TELEMETRY_DISABLED) || isTruthy(telemetryDisabled);
18
- const crons = [];
19
- const sender$1 = sender(strapi);
20
- const sendEvent = rateLimiter(sender$1, { limitedEvents: LIMITED_EVENTS });
21
- return {
22
- get isDisabled() {
23
- return isDisabled;
24
- },
25
- register() {
26
- if (!isDisabled) {
27
- const pingCron = nodeSchedule.scheduleJob("0 0 12 * * *", () => sendEvent("ping"));
28
- crons.push(pingCron);
29
- strapi.server.use(middleware({ sendEvent }));
30
- }
31
- },
32
- bootstrap() {
33
- },
34
- destroy() {
35
- crons.forEach((cron) => cron.cancel());
36
- },
37
- async send(event, payload = {}) {
38
- if (isDisabled)
39
- return true;
40
- return sendEvent(event, payload);
41
- }
42
- };
43
- };
44
- module.exports = createTelemetryInstance;
45
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/services/metrics/index.ts"],"sourcesContent":["/**\n * Strapi telemetry package.\n * You can learn more at https://docs.strapi.io/developer-docs/latest/getting-started/usage-information.html\n */\n\nimport { Job, scheduleJob } from 'node-schedule';\nimport type { Core } from '@strapi/types';\n\nimport wrapWithRateLimit from './rate-limiter';\nimport createSender from './sender';\nimport createMiddleware from './middleware';\nimport isTruthy from './is-truthy';\n\nconst LIMITED_EVENTS = [\n 'didSaveMediaWithAlternativeText',\n 'didSaveMediaWithCaption',\n 'didDisableResponsiveDimensions',\n 'didEnableResponsiveDimensions',\n 'didInitializePluginUpload',\n];\n\nconst createTelemetryInstance = (strapi: Core.Strapi) => {\n const uuid = strapi.config.get('uuid');\n const telemetryDisabled = strapi.config.get('packageJsonStrapi.telemetryDisabled');\n const isDisabled =\n !uuid || isTruthy(process.env.STRAPI_TELEMETRY_DISABLED) || isTruthy(telemetryDisabled);\n\n const crons: Job[] = [];\n const sender = createSender(strapi);\n const sendEvent = wrapWithRateLimit(sender, { limitedEvents: LIMITED_EVENTS });\n\n return {\n get isDisabled() {\n return isDisabled;\n },\n\n register() {\n if (!isDisabled) {\n const pingCron = scheduleJob('0 0 12 * * *', () => sendEvent('ping'));\n crons.push(pingCron);\n\n strapi.server.use(createMiddleware({ sendEvent }));\n }\n },\n\n bootstrap() {},\n\n destroy() {\n // Clear open handles\n crons.forEach((cron) => cron.cancel());\n },\n\n async send(event: string, payload: Record<string, unknown> = {}) {\n if (isDisabled) return true;\n return sendEvent(event, payload);\n },\n };\n};\n\nexport default createTelemetryInstance;\n"],"names":["sender","createSender","wrapWithRateLimit","scheduleJob","createMiddleware"],"mappings":";;;;;;AAaA,MAAM,iBAAiB;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEM,MAAA,0BAA0B,CAAC,WAAwB;AACvD,QAAM,OAAO,OAAO,OAAO,IAAI,MAAM;AACrC,QAAM,oBAAoB,OAAO,OAAO,IAAI,qCAAqC;AAC3E,QAAA,aACJ,CAAC,QAAQ,SAAS,QAAQ,IAAI,yBAAyB,KAAK,SAAS,iBAAiB;AAExF,QAAM,QAAe,CAAA;AACf,QAAAA,WAASC,OAAa,MAAM;AAClC,QAAM,YAAYC,YAAkBF,UAAQ,EAAE,eAAe,gBAAgB;AAEtE,SAAA;AAAA,IACL,IAAI,aAAa;AACR,aAAA;AAAA,IACT;AAAA,IAEA,WAAW;AACT,UAAI,CAAC,YAAY;AACf,cAAM,WAAWG,aAAAA,YAAY,gBAAgB,MAAM,UAAU,MAAM,CAAC;AACpE,cAAM,KAAK,QAAQ;AAEnB,eAAO,OAAO,IAAIC,WAAiB,EAAE,UAAW,CAAA,CAAC;AAAA,MACnD;AAAA,IACF;AAAA,IAEA,YAAY;AAAA,IAAC;AAAA,IAEb,UAAU;AAER,YAAM,QAAQ,CAAC,SAAS,KAAK,OAAQ,CAAA;AAAA,IACvC;AAAA,IAEA,MAAM,KAAK,OAAe,UAAmC,IAAI;AAC3D,UAAA;AAAmB,eAAA;AAChB,aAAA,UAAU,OAAO,OAAO;AAAA,IACjC;AAAA,EAAA;AAEJ;;"}
@@ -1,46 +0,0 @@
1
- import { scheduleJob } from "node-schedule";
2
- import wrapWithRateLimit from "./rate-limiter.mjs";
3
- import createSender from "./sender.mjs";
4
- import createMiddleware from "./middleware.mjs";
5
- import isTruthy from "./is-truthy.mjs";
6
- const LIMITED_EVENTS = [
7
- "didSaveMediaWithAlternativeText",
8
- "didSaveMediaWithCaption",
9
- "didDisableResponsiveDimensions",
10
- "didEnableResponsiveDimensions",
11
- "didInitializePluginUpload"
12
- ];
13
- const createTelemetryInstance = (strapi) => {
14
- const uuid = strapi.config.get("uuid");
15
- const telemetryDisabled = strapi.config.get("packageJsonStrapi.telemetryDisabled");
16
- const isDisabled = !uuid || isTruthy(process.env.STRAPI_TELEMETRY_DISABLED) || isTruthy(telemetryDisabled);
17
- const crons = [];
18
- const sender = createSender(strapi);
19
- const sendEvent = wrapWithRateLimit(sender, { limitedEvents: LIMITED_EVENTS });
20
- return {
21
- get isDisabled() {
22
- return isDisabled;
23
- },
24
- register() {
25
- if (!isDisabled) {
26
- const pingCron = scheduleJob("0 0 12 * * *", () => sendEvent("ping"));
27
- crons.push(pingCron);
28
- strapi.server.use(createMiddleware({ sendEvent }));
29
- }
30
- },
31
- bootstrap() {
32
- },
33
- destroy() {
34
- crons.forEach((cron) => cron.cancel());
35
- },
36
- async send(event, payload = {}) {
37
- if (isDisabled)
38
- return true;
39
- return sendEvent(event, payload);
40
- }
41
- };
42
- };
43
- export {
44
- createTelemetryInstance as default
45
- };
46
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/services/metrics/index.ts"],"sourcesContent":["/**\n * Strapi telemetry package.\n * You can learn more at https://docs.strapi.io/developer-docs/latest/getting-started/usage-information.html\n */\n\nimport { Job, scheduleJob } from 'node-schedule';\nimport type { Core } from '@strapi/types';\n\nimport wrapWithRateLimit from './rate-limiter';\nimport createSender from './sender';\nimport createMiddleware from './middleware';\nimport isTruthy from './is-truthy';\n\nconst LIMITED_EVENTS = [\n 'didSaveMediaWithAlternativeText',\n 'didSaveMediaWithCaption',\n 'didDisableResponsiveDimensions',\n 'didEnableResponsiveDimensions',\n 'didInitializePluginUpload',\n];\n\nconst createTelemetryInstance = (strapi: Core.Strapi) => {\n const uuid = strapi.config.get('uuid');\n const telemetryDisabled = strapi.config.get('packageJsonStrapi.telemetryDisabled');\n const isDisabled =\n !uuid || isTruthy(process.env.STRAPI_TELEMETRY_DISABLED) || isTruthy(telemetryDisabled);\n\n const crons: Job[] = [];\n const sender = createSender(strapi);\n const sendEvent = wrapWithRateLimit(sender, { limitedEvents: LIMITED_EVENTS });\n\n return {\n get isDisabled() {\n return isDisabled;\n },\n\n register() {\n if (!isDisabled) {\n const pingCron = scheduleJob('0 0 12 * * *', () => sendEvent('ping'));\n crons.push(pingCron);\n\n strapi.server.use(createMiddleware({ sendEvent }));\n }\n },\n\n bootstrap() {},\n\n destroy() {\n // Clear open handles\n crons.forEach((cron) => cron.cancel());\n },\n\n async send(event: string, payload: Record<string, unknown> = {}) {\n if (isDisabled) return true;\n return sendEvent(event, payload);\n },\n };\n};\n\nexport default createTelemetryInstance;\n"],"names":[],"mappings":";;;;;AAaA,MAAM,iBAAiB;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEM,MAAA,0BAA0B,CAAC,WAAwB;AACvD,QAAM,OAAO,OAAO,OAAO,IAAI,MAAM;AACrC,QAAM,oBAAoB,OAAO,OAAO,IAAI,qCAAqC;AAC3E,QAAA,aACJ,CAAC,QAAQ,SAAS,QAAQ,IAAI,yBAAyB,KAAK,SAAS,iBAAiB;AAExF,QAAM,QAAe,CAAA;AACf,QAAA,SAAS,aAAa,MAAM;AAClC,QAAM,YAAY,kBAAkB,QAAQ,EAAE,eAAe,gBAAgB;AAEtE,SAAA;AAAA,IACL,IAAI,aAAa;AACR,aAAA;AAAA,IACT;AAAA,IAEA,WAAW;AACT,UAAI,CAAC,YAAY;AACf,cAAM,WAAW,YAAY,gBAAgB,MAAM,UAAU,MAAM,CAAC;AACpE,cAAM,KAAK,QAAQ;AAEnB,eAAO,OAAO,IAAI,iBAAiB,EAAE,UAAW,CAAA,CAAC;AAAA,MACnD;AAAA,IACF;AAAA,IAEA,YAAY;AAAA,IAAC;AAAA,IAEb,UAAU;AAER,YAAM,QAAQ,CAAC,SAAS,KAAK,OAAQ,CAAA;AAAA,IACvC;AAAA,IAEA,MAAM,KAAK,OAAe,UAAmC,IAAI;AAC3D,UAAA;AAAmB,eAAA;AAChB,aAAA,UAAU,OAAO,OAAO;AAAA,IACjC;AAAA,EAAA;AAEJ;"}
@@ -1,9 +0,0 @@
1
- "use strict";
2
- const _ = require("lodash");
3
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
4
- const ___default = /* @__PURE__ */ _interopDefault(_);
5
- const isTruthy = (val) => {
6
- return [1, true].includes(val) || ["true", "1"].includes(___default.default.toLower(val));
7
- };
8
- module.exports = isTruthy;
9
- //# sourceMappingURL=is-truthy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"is-truthy.js","sources":["../../../src/services/metrics/is-truthy.ts"],"sourcesContent":["import _ from 'lodash';\n\nconst isTruthy = (val: any) => {\n return [1, true].includes(val) || ['true', '1'].includes(_.toLower(val));\n};\n\nexport default isTruthy;\n"],"names":["_"],"mappings":";;;;AAEM,MAAA,WAAW,CAAC,QAAa;AAC7B,SAAO,CAAC,GAAG,IAAI,EAAE,SAAS,GAAG,KAAK,CAAC,QAAQ,GAAG,EAAE,SAASA,WAAAA,QAAE,QAAQ,GAAG,CAAC;AACzE;;"}
@@ -1,8 +0,0 @@
1
- import _ from "lodash";
2
- const isTruthy = (val) => {
3
- return [1, true].includes(val) || ["true", "1"].includes(_.toLower(val));
4
- };
5
- export {
6
- isTruthy as default
7
- };
8
- //# sourceMappingURL=is-truthy.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"is-truthy.mjs","sources":["../../../src/services/metrics/is-truthy.ts"],"sourcesContent":["import _ from 'lodash';\n\nconst isTruthy = (val: any) => {\n return [1, true].includes(val) || ['true', '1'].includes(_.toLower(val));\n};\n\nexport default isTruthy;\n"],"names":[],"mappings":";AAEM,MAAA,WAAW,CAAC,QAAa;AAC7B,SAAO,CAAC,GAAG,IAAI,EAAE,SAAS,GAAG,KAAK,CAAC,QAAQ,GAAG,EAAE,SAAS,EAAE,QAAQ,GAAG,CAAC;AACzE;"}
@@ -1,25 +0,0 @@
1
- "use strict";
2
- const createMiddleware = ({ sendEvent }) => {
3
- const state = {
4
- currentDay: null,
5
- counter: 0
6
- };
7
- const middleware = async (ctx, next) => {
8
- const { url, method } = ctx.request;
9
- if (!url.includes(".") && ["GET", "PUT", "POST", "DELETE"].includes(method)) {
10
- const dayOfMonth = (/* @__PURE__ */ new Date()).getDate();
11
- if (dayOfMonth !== state.currentDay) {
12
- state.currentDay = dayOfMonth;
13
- state.counter = 0;
14
- }
15
- if (state.counter < 1e3) {
16
- sendEvent("didReceiveRequest", { eventProperties: { url: ctx.request.url } });
17
- state.counter += 1;
18
- }
19
- }
20
- await next();
21
- };
22
- return middleware;
23
- };
24
- module.exports = createMiddleware;
25
- //# sourceMappingURL=middleware.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"middleware.js","sources":["../../../src/services/metrics/middleware.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport type { Sender } from './sender';\n\ninterface State {\n currentDay: number | null;\n counter: number;\n}\n\nconst createMiddleware = ({ sendEvent }: { sendEvent: Sender }) => {\n const state: State = {\n currentDay: null,\n counter: 0,\n };\n\n const middleware: Core.MiddlewareHandler = async (ctx, next) => {\n const { url, method } = ctx.request;\n\n if (!url.includes('.') && ['GET', 'PUT', 'POST', 'DELETE'].includes(method)) {\n const dayOfMonth = new Date().getDate();\n\n if (dayOfMonth !== state.currentDay) {\n state.currentDay = dayOfMonth;\n state.counter = 0;\n }\n\n // Send max. 1000 events per day.\n if (state.counter < 1000) {\n sendEvent('didReceiveRequest', { eventProperties: { url: ctx.request.url } });\n\n // Increase counter.\n state.counter += 1;\n }\n }\n\n await next();\n };\n\n return middleware;\n};\n\nexport default createMiddleware;\n"],"names":[],"mappings":";AAQA,MAAM,mBAAmB,CAAC,EAAE,gBAAuC;AACjE,QAAM,QAAe;AAAA,IACnB,YAAY;AAAA,IACZ,SAAS;AAAA,EAAA;AAGL,QAAA,aAAqC,OAAO,KAAK,SAAS;AAC9D,UAAM,EAAE,KAAK,WAAW,IAAI;AAE5B,QAAI,CAAC,IAAI,SAAS,GAAG,KAAK,CAAC,OAAO,OAAO,QAAQ,QAAQ,EAAE,SAAS,MAAM,GAAG;AAC3E,YAAM,cAAa,oBAAI,KAAK,GAAE,QAAQ;AAElC,UAAA,eAAe,MAAM,YAAY;AACnC,cAAM,aAAa;AACnB,cAAM,UAAU;AAAA,MAClB;AAGI,UAAA,MAAM,UAAU,KAAM;AACd,kBAAA,qBAAqB,EAAE,iBAAiB,EAAE,KAAK,IAAI,QAAQ,IAAI,EAAA,CAAG;AAG5E,cAAM,WAAW;AAAA,MACnB;AAAA,IACF;AAEA,UAAM,KAAK;AAAA,EAAA;AAGN,SAAA;AACT;;"}
@@ -1,26 +0,0 @@
1
- const createMiddleware = ({ sendEvent }) => {
2
- const state = {
3
- currentDay: null,
4
- counter: 0
5
- };
6
- const middleware = async (ctx, next) => {
7
- const { url, method } = ctx.request;
8
- if (!url.includes(".") && ["GET", "PUT", "POST", "DELETE"].includes(method)) {
9
- const dayOfMonth = (/* @__PURE__ */ new Date()).getDate();
10
- if (dayOfMonth !== state.currentDay) {
11
- state.currentDay = dayOfMonth;
12
- state.counter = 0;
13
- }
14
- if (state.counter < 1e3) {
15
- sendEvent("didReceiveRequest", { eventProperties: { url: ctx.request.url } });
16
- state.counter += 1;
17
- }
18
- }
19
- await next();
20
- };
21
- return middleware;
22
- };
23
- export {
24
- createMiddleware as default
25
- };
26
- //# sourceMappingURL=middleware.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"middleware.mjs","sources":["../../../src/services/metrics/middleware.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport type { Sender } from './sender';\n\ninterface State {\n currentDay: number | null;\n counter: number;\n}\n\nconst createMiddleware = ({ sendEvent }: { sendEvent: Sender }) => {\n const state: State = {\n currentDay: null,\n counter: 0,\n };\n\n const middleware: Core.MiddlewareHandler = async (ctx, next) => {\n const { url, method } = ctx.request;\n\n if (!url.includes('.') && ['GET', 'PUT', 'POST', 'DELETE'].includes(method)) {\n const dayOfMonth = new Date().getDate();\n\n if (dayOfMonth !== state.currentDay) {\n state.currentDay = dayOfMonth;\n state.counter = 0;\n }\n\n // Send max. 1000 events per day.\n if (state.counter < 1000) {\n sendEvent('didReceiveRequest', { eventProperties: { url: ctx.request.url } });\n\n // Increase counter.\n state.counter += 1;\n }\n }\n\n await next();\n };\n\n return middleware;\n};\n\nexport default createMiddleware;\n"],"names":[],"mappings":"AAQA,MAAM,mBAAmB,CAAC,EAAE,gBAAuC;AACjE,QAAM,QAAe;AAAA,IACnB,YAAY;AAAA,IACZ,SAAS;AAAA,EAAA;AAGL,QAAA,aAAqC,OAAO,KAAK,SAAS;AAC9D,UAAM,EAAE,KAAK,WAAW,IAAI;AAE5B,QAAI,CAAC,IAAI,SAAS,GAAG,KAAK,CAAC,OAAO,OAAO,QAAQ,QAAQ,EAAE,SAAS,MAAM,GAAG;AAC3E,YAAM,cAAa,oBAAI,KAAK,GAAE,QAAQ;AAElC,UAAA,eAAe,MAAM,YAAY;AACnC,cAAM,aAAa;AACnB,cAAM,UAAU;AAAA,MAClB;AAGI,UAAA,MAAM,UAAU,KAAM;AACd,kBAAA,qBAAqB,EAAE,iBAAiB,EAAE,KAAK,IAAI,QAAQ,IAAI,EAAA,CAAG;AAG5E,cAAM,WAAW;AAAA,MACnB;AAAA,IACF;AAEA,UAAM,KAAK;AAAA,EAAA;AAGN,SAAA;AACT;"}
@@ -1,21 +0,0 @@
1
- "use strict";
2
- const wrapWithRateLimit = (sender, { limitedEvents = [] } = {}) => {
3
- let currentDay = (/* @__PURE__ */ new Date()).getDate();
4
- const eventCache = /* @__PURE__ */ new Map();
5
- return async (event, ...args) => {
6
- if (!limitedEvents.includes(event)) {
7
- return sender(event, ...args);
8
- }
9
- if ((/* @__PURE__ */ new Date()).getDate() !== currentDay) {
10
- eventCache.clear();
11
- currentDay = (/* @__PURE__ */ new Date()).getDate();
12
- }
13
- if (eventCache.has(event)) {
14
- return false;
15
- }
16
- eventCache.set(event, true);
17
- return sender(event, ...args);
18
- };
19
- };
20
- module.exports = wrapWithRateLimit;
21
- //# sourceMappingURL=rate-limiter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rate-limiter.js","sources":["../../../src/services/metrics/rate-limiter.ts"],"sourcesContent":["import type { Sender } from './sender';\n\ninterface Options {\n limitedEvents?: string[];\n}\n\ntype TailParams<T extends (...args: any[]) => any> =\n Parameters<T> extends [unknown, ...infer U] ? U : never;\n\nexport default (sender: Sender, { limitedEvents = [] }: Options = {}) => {\n let currentDay = new Date().getDate();\n const eventCache = new Map();\n\n return async (event: string, ...args: TailParams<Sender>) => {\n if (!limitedEvents.includes(event)) {\n return sender(event, ...args);\n }\n\n if (new Date().getDate() !== currentDay) {\n eventCache.clear();\n currentDay = new Date().getDate();\n }\n\n if (eventCache.has(event)) {\n return false;\n }\n\n eventCache.set(event, true);\n return sender(event, ...args);\n };\n};\n"],"names":[],"mappings":";AASA,MAAe,oBAAA,CAAC,QAAgB,EAAE,gBAAgB,CAAG,EAAA,IAAa,CAAA,MAAO;AACvE,MAAI,cAAa,oBAAI,KAAK,GAAE,QAAQ;AAC9B,QAAA,iCAAiB;AAEhB,SAAA,OAAO,UAAkB,SAA6B;AAC3D,QAAI,CAAC,cAAc,SAAS,KAAK,GAAG;AAC3B,aAAA,OAAO,OAAO,GAAG,IAAI;AAAA,IAC9B;AAEA,SAAQ,oBAAA,KAAA,GAAO,QAAA,MAAc,YAAY;AACvC,iBAAW,MAAM;AACJ,oBAAA,oBAAI,KAAK,GAAE,QAAQ;AAAA,IAClC;AAEI,QAAA,WAAW,IAAI,KAAK,GAAG;AAClB,aAAA;AAAA,IACT;AAEW,eAAA,IAAI,OAAO,IAAI;AACnB,WAAA,OAAO,OAAO,GAAG,IAAI;AAAA,EAAA;AAEhC;;"}
@@ -1,22 +0,0 @@
1
- const wrapWithRateLimit = (sender, { limitedEvents = [] } = {}) => {
2
- let currentDay = (/* @__PURE__ */ new Date()).getDate();
3
- const eventCache = /* @__PURE__ */ new Map();
4
- return async (event, ...args) => {
5
- if (!limitedEvents.includes(event)) {
6
- return sender(event, ...args);
7
- }
8
- if ((/* @__PURE__ */ new Date()).getDate() !== currentDay) {
9
- eventCache.clear();
10
- currentDay = (/* @__PURE__ */ new Date()).getDate();
11
- }
12
- if (eventCache.has(event)) {
13
- return false;
14
- }
15
- eventCache.set(event, true);
16
- return sender(event, ...args);
17
- };
18
- };
19
- export {
20
- wrapWithRateLimit as default
21
- };
22
- //# sourceMappingURL=rate-limiter.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rate-limiter.mjs","sources":["../../../src/services/metrics/rate-limiter.ts"],"sourcesContent":["import type { Sender } from './sender';\n\ninterface Options {\n limitedEvents?: string[];\n}\n\ntype TailParams<T extends (...args: any[]) => any> =\n Parameters<T> extends [unknown, ...infer U] ? U : never;\n\nexport default (sender: Sender, { limitedEvents = [] }: Options = {}) => {\n let currentDay = new Date().getDate();\n const eventCache = new Map();\n\n return async (event: string, ...args: TailParams<Sender>) => {\n if (!limitedEvents.includes(event)) {\n return sender(event, ...args);\n }\n\n if (new Date().getDate() !== currentDay) {\n eventCache.clear();\n currentDay = new Date().getDate();\n }\n\n if (eventCache.has(event)) {\n return false;\n }\n\n eventCache.set(event, true);\n return sender(event, ...args);\n };\n};\n"],"names":[],"mappings":"AASA,MAAe,oBAAA,CAAC,QAAgB,EAAE,gBAAgB,CAAG,EAAA,IAAa,CAAA,MAAO;AACvE,MAAI,cAAa,oBAAI,KAAK,GAAE,QAAQ;AAC9B,QAAA,iCAAiB;AAEhB,SAAA,OAAO,UAAkB,SAA6B;AAC3D,QAAI,CAAC,cAAc,SAAS,KAAK,GAAG;AAC3B,aAAA,OAAO,OAAO,GAAG,IAAI;AAAA,IAC9B;AAEA,SAAQ,oBAAA,KAAA,GAAO,QAAA,MAAc,YAAY;AACvC,iBAAW,MAAM;AACJ,oBAAA,oBAAI,KAAK,GAAE,QAAQ;AAAA,IAClC;AAEI,QAAA,WAAW,IAAI,KAAK,GAAG;AAClB,aAAA;AAAA,IACT;AAEW,eAAA,IAAI,OAAO,IAAI;AACnB,WAAA,OAAO,OAAO,GAAG,IAAI;AAAA,EAAA;AAEhC;"}
@@ -1,76 +0,0 @@
1
- "use strict";
2
- const os = require("os");
3
- const path = require("path");
4
- const _ = require("lodash");
5
- const isDocker = require("is-docker");
6
- const ciEnv = require("ci-info");
7
- const tsUtils = require("@strapi/typescript-utils");
8
- const strapiUtils = require("@strapi/utils");
9
- const adminUserHash = require("./admin-user-hash.js");
10
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
11
- const os__default = /* @__PURE__ */ _interopDefault(os);
12
- const path__default = /* @__PURE__ */ _interopDefault(path);
13
- const ___default = /* @__PURE__ */ _interopDefault(_);
14
- const isDocker__default = /* @__PURE__ */ _interopDefault(isDocker);
15
- const ciEnv__default = /* @__PURE__ */ _interopDefault(ciEnv);
16
- const tsUtils__default = /* @__PURE__ */ _interopDefault(tsUtils);
17
- const defaultQueryOpts = {
18
- timeout: 1e3,
19
- headers: { "Content-Type": "application/json" }
20
- };
21
- const ANALYTICS_URI = "https://analytics.strapi.io";
22
- const addPackageJsonStrapiMetadata = (metadata, strapi) => {
23
- const { packageJsonStrapi = {} } = strapi.config;
24
- ___default.default.defaults(metadata, packageJsonStrapi);
25
- };
26
- const createSender = (strapi) => {
27
- const { uuid } = strapi.config;
28
- const deviceId = strapiUtils.machineID();
29
- const serverRootPath = strapi.dirs.app.root;
30
- const adminRootPath = path__default.default.join(strapi.dirs.app.root, "src", "admin");
31
- const anonymousUserProperties = {
32
- environment: strapi.config.environment,
33
- os: os__default.default.type(),
34
- osPlatform: os__default.default.platform(),
35
- osArch: os__default.default.arch(),
36
- osRelease: os__default.default.release(),
37
- nodeVersion: process.versions.node
38
- };
39
- const anonymousGroupProperties = {
40
- docker: process.env.DOCKER || isDocker__default.default(),
41
- isCI: ciEnv__default.default.isCI,
42
- version: strapi.config.get("info.strapi"),
43
- useTypescriptOnServer: tsUtils__default.default.isUsingTypeScriptSync(serverRootPath),
44
- useTypescriptOnAdmin: tsUtils__default.default.isUsingTypeScriptSync(adminRootPath),
45
- projectId: uuid,
46
- isHostedOnStrapiCloud: strapiUtils.env("STRAPI_HOSTING", null) === "strapi.cloud"
47
- };
48
- addPackageJsonStrapiMetadata(anonymousGroupProperties, strapi);
49
- return async (event, payload = {}, opts = {}) => {
50
- const userId = adminUserHash.generateAdminUserHash(strapi);
51
- const reqParams = {
52
- method: "POST",
53
- body: JSON.stringify({
54
- event,
55
- userId,
56
- deviceId,
57
- eventProperties: payload.eventProperties,
58
- userProperties: userId ? { ...anonymousUserProperties, ...payload.userProperties } : {},
59
- groupProperties: {
60
- ...anonymousGroupProperties,
61
- projectType: strapi.EE ? "Enterprise" : "Community",
62
- ...payload.groupProperties
63
- }
64
- }),
65
- ...___default.default.merge({ headers: { "X-Strapi-Event": event } }, defaultQueryOpts, opts)
66
- };
67
- try {
68
- const res = await strapi.fetch(`${ANALYTICS_URI}/api/v2/track`, reqParams);
69
- return res.ok;
70
- } catch (err) {
71
- return false;
72
- }
73
- };
74
- };
75
- module.exports = createSender;
76
- //# sourceMappingURL=sender.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sender.js","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":["_","machineID","path","os","isDocker","ciEnv","tsUtils","env","generateAdminUserHash"],"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,CAAA,MAAO,OAAO;AAExCA,aAAAA,QAAA,SAAS,UAAU,iBAAiB;AACxC;AAKA,MAAe,eAAA,CAAC,WAAgC;AACxC,QAAA,EAAE,KAAK,IAAI,OAAO;AACxB,QAAM,WAAWC,YAAAA;AAEX,QAAA,iBAAiB,OAAO,KAAK,IAAI;AACjC,QAAA,gBAAgBC,sBAAK,KAAK,OAAO,KAAK,IAAI,MAAM,OAAO,OAAO;AAEpE,QAAM,0BAA0B;AAAA,IAC9B,aAAa,OAAO,OAAO;AAAA,IAC3B,IAAIC,oBAAG,KAAK;AAAA,IACZ,YAAYA,oBAAG,SAAS;AAAA,IACxB,QAAQA,oBAAG,KAAK;AAAA,IAChB,WAAWA,oBAAG,QAAQ;AAAA,IACtB,aAAa,QAAQ,SAAS;AAAA,EAAA;AAGhC,QAAM,2BAA2B;AAAA,IAC/B,QAAQ,QAAQ,IAAI,UAAUC,kBAAAA,QAAS;AAAA,IACvC,MAAMC,eAAM,QAAA;AAAA,IACZ,SAAS,OAAO,OAAO,IAAI,aAAa;AAAA,IACxC,uBAAuBC,iBAAAA,QAAQ,sBAAsB,cAAc;AAAA,IACnE,sBAAsBA,iBAAAA,QAAQ,sBAAsB,aAAa;AAAA,IACjE,WAAW;AAAA,IACX,uBAAuBC,YAAA,IAAI,kBAAkB,IAAI,MAAM;AAAA,EAAA;AAGzD,+BAA6B,0BAA0B,MAAM;AAE7D,SAAO,OAAO,OAAe,UAAmB,CAAA,GAAI,OAAO,CAAA,MAAO;AAC1D,UAAA,SAASC,oCAAsB,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,QACb;AAAA,MAAA,CACD;AAAA,MACD,GAAGR,WAAE,QAAA,MAAM,EAAE,SAAS,EAAE,kBAAkB,MAAM,EAAA,GAAK,kBAAkB,IAAI;AAAA,IAAA;AAGzE,QAAA;AACF,YAAM,MAAM,MAAM,OAAO,MAAM,GAAG,aAAa,iBAAiB,SAAS;AACzE,aAAO,IAAI;AAAA,aACJ,KAAK;AACL,aAAA;AAAA,IACT;AAAA,EAAA;AAEJ;;"}