@tramvai/cli 5.53.80 → 6.62.0

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 (401) hide show
  1. package/bin/spawn.js +8 -2
  2. package/lib/api/start/application.experimental.d.ts +7 -0
  3. package/lib/api/start/application.experimental.d.ts.map +1 -0
  4. package/lib/api/start/application.experimental.js +275 -0
  5. package/lib/api/start/application.experimental.js.map +1 -0
  6. package/lib/api/start/index.d.ts +1 -0
  7. package/lib/api/start/index.d.ts.map +1 -1
  8. package/lib/api/start/index.js +17 -6
  9. package/lib/api/start/index.js.map +1 -1
  10. package/lib/builder/webpack/devServer/setup.d.ts.map +1 -1
  11. package/lib/builder/webpack/devServer/setup.js +3 -1
  12. package/lib/builder/webpack/devServer/setup.js.map +1 -1
  13. package/lib/builder/webpack/providers/analyze/shared.d.ts.map +1 -1
  14. package/lib/builder/webpack/providers/analyze/shared.js +5 -9
  15. package/lib/builder/webpack/providers/analyze/shared.js.map +1 -1
  16. package/lib/builder/webpack/providers/client.d.ts.map +1 -1
  17. package/lib/builder/webpack/providers/client.js +10 -9
  18. package/lib/builder/webpack/providers/client.js.map +1 -1
  19. package/lib/builder/webpack/providers/server.d.ts.map +1 -1
  20. package/lib/builder/webpack/providers/server.js +10 -9
  21. package/lib/builder/webpack/providers/server.js.map +1 -1
  22. package/lib/cli/CLI.d.ts +1 -1
  23. package/lib/cli/CLI.d.ts.map +1 -1
  24. package/lib/cli/CLI.js.map +1 -1
  25. package/lib/cli/bin-init.js +0 -2
  26. package/lib/cli/bin-init.js.map +1 -1
  27. package/lib/cli/index.d.ts.map +1 -1
  28. package/lib/cli/index.js +1 -12
  29. package/lib/cli/index.js.map +1 -1
  30. package/lib/cli/runCLI.d.ts.map +1 -1
  31. package/lib/cli/runCLI.js.map +1 -1
  32. package/lib/commands/add/command.d.ts +1 -4
  33. package/lib/commands/add/command.d.ts.map +1 -1
  34. package/lib/commands/add/command.js +3 -2
  35. package/lib/commands/add/command.js.map +1 -1
  36. package/lib/commands/analyze/command.d.ts +1 -1
  37. package/lib/commands/analyze/command.d.ts.map +1 -1
  38. package/lib/commands/analyze/command.js +11 -13
  39. package/lib/commands/analyze/command.js.map +1 -1
  40. package/lib/commands/benchmark/command.d.ts +1 -1
  41. package/lib/commands/benchmark/command.d.ts.map +1 -1
  42. package/lib/commands/benchmark/command.js +8 -9
  43. package/lib/commands/benchmark/command.js.map +1 -1
  44. package/lib/commands/build/build.d.ts.map +1 -1
  45. package/lib/commands/build/build.js +1 -0
  46. package/lib/commands/build/build.js.map +1 -1
  47. package/lib/commands/build/command.d.ts +1 -1
  48. package/lib/commands/build/command.d.ts.map +1 -1
  49. package/lib/commands/build/command.js +12 -15
  50. package/lib/commands/build/command.js.map +1 -1
  51. package/lib/commands/generate/command.d.ts +1 -1
  52. package/lib/commands/generate/command.d.ts.map +1 -1
  53. package/lib/commands/generate/command.js +3 -2
  54. package/lib/commands/generate/command.js.map +1 -1
  55. package/lib/commands/lint/command.d.ts +1 -1
  56. package/lib/commands/lint/command.d.ts.map +1 -1
  57. package/lib/commands/lint/command.js +3 -2
  58. package/lib/commands/lint/command.js.map +1 -1
  59. package/lib/commands/new/command.d.ts +0 -1
  60. package/lib/commands/new/command.d.ts.map +1 -1
  61. package/lib/commands/new/command.js +0 -1
  62. package/lib/commands/new/command.js.map +1 -1
  63. package/lib/commands/new/steps/installDependencies.js +3 -3
  64. package/lib/commands/new/steps/installDependencies.js.map +1 -1
  65. package/lib/commands/start/command.d.ts +1 -1
  66. package/lib/commands/start/command.d.ts.map +1 -1
  67. package/lib/commands/start/command.js +18 -15
  68. package/lib/commands/start/command.js.map +1 -1
  69. package/lib/commands/start-prod/command.d.ts +1 -1
  70. package/lib/commands/start-prod/command.d.ts.map +1 -1
  71. package/lib/commands/start-prod/command.js +11 -13
  72. package/lib/commands/start-prod/command.js.map +1 -1
  73. package/lib/commands/static/command.d.ts +1 -1
  74. package/lib/commands/static/command.d.ts.map +1 -1
  75. package/lib/commands/static/command.js +7 -3
  76. package/lib/commands/static/command.js.map +1 -1
  77. package/lib/commands/update/command.d.ts +1 -4
  78. package/lib/commands/update/command.d.ts.map +1 -1
  79. package/lib/commands/update/command.js +3 -2
  80. package/lib/commands/update/command.js.map +1 -1
  81. package/lib/external/config.d.ts.map +1 -1
  82. package/lib/external/config.js.map +1 -1
  83. package/lib/library/babel/index.d.ts +3 -9
  84. package/lib/library/babel/index.d.ts.map +1 -1
  85. package/lib/library/babel/index.js +3 -132
  86. package/lib/library/babel/index.js.map +1 -1
  87. package/lib/library/swc/index.d.ts +3 -3
  88. package/lib/library/swc/index.d.ts.map +1 -1
  89. package/lib/library/swc/index.js +4 -114
  90. package/lib/library/swc/index.js.map +1 -1
  91. package/lib/library/webpack/application/client/common.d.ts.map +1 -1
  92. package/lib/library/webpack/application/client/common.js +10 -9
  93. package/lib/library/webpack/application/client/common.js.map +1 -1
  94. package/lib/library/webpack/application/common.d.ts.map +1 -1
  95. package/lib/library/webpack/application/common.js +3 -4
  96. package/lib/library/webpack/application/common.js.map +1 -1
  97. package/lib/library/webpack/blocks/pwa/client.d.ts.map +1 -1
  98. package/lib/library/webpack/blocks/pwa/client.js +9 -58
  99. package/lib/library/webpack/blocks/pwa/client.js.map +1 -1
  100. package/lib/library/webpack/blocks/resolve.d.ts.map +1 -1
  101. package/lib/library/webpack/blocks/resolve.js +1 -0
  102. package/lib/library/webpack/blocks/resolve.js.map +1 -1
  103. package/lib/library/webpack/child-app/client/common.d.ts.map +1 -1
  104. package/lib/library/webpack/child-app/client/common.js +2 -2
  105. package/lib/library/webpack/child-app/client/common.js.map +1 -1
  106. package/lib/library/webpack/child-app/common.d.ts.map +1 -1
  107. package/lib/library/webpack/child-app/common.js +3 -4
  108. package/lib/library/webpack/child-app/common.js.map +1 -1
  109. package/lib/library/webpack/utils/threadLoader.d.ts.map +1 -1
  110. package/lib/library/webpack/utils/threadLoader.js +20 -3
  111. package/lib/library/webpack/utils/threadLoader.js.map +1 -1
  112. package/lib/library/webpack/utils/transpiler.js +1 -1
  113. package/lib/library/webpack/utils/transpiler.js.map +1 -1
  114. package/lib/models/analytics/utils.d.ts +2 -1
  115. package/lib/models/analytics/utils.d.ts.map +1 -1
  116. package/lib/models/analytics/utils.js +3 -0
  117. package/lib/models/analytics/utils.js.map +1 -1
  118. package/lib/models/command.d.ts +1 -1
  119. package/lib/models/command.d.ts.map +1 -1
  120. package/lib/models/command.js +1 -1
  121. package/lib/models/command.js.map +1 -1
  122. package/lib/models/context.d.ts +1 -1
  123. package/lib/models/context.d.ts.map +1 -1
  124. package/lib/models/logger.d.ts +0 -1
  125. package/lib/models/logger.d.ts.map +1 -1
  126. package/lib/models/logger.js +2 -3
  127. package/lib/models/logger.js.map +1 -1
  128. package/lib/schema/autogeneratedSchema.json +15 -15
  129. package/lib/typings/configEntry/application.d.ts +1 -1
  130. package/lib/typings/configEntry/application.d.ts.map +1 -1
  131. package/lib/typings/public.d.ts +0 -1
  132. package/lib/typings/public.d.ts.map +1 -1
  133. package/lib/typings/public.js +0 -2
  134. package/lib/typings/public.js.map +1 -1
  135. package/lib/utils/cpu-profile.d.ts.map +1 -1
  136. package/lib/utils/cpu-profile.js +0 -1
  137. package/lib/utils/cpu-profile.js.map +1 -1
  138. package/package.json +23 -27
  139. package/schema.json +15 -15
  140. package/src/api/start/__integration__/start.test.ts +8 -0
  141. package/src/api/start/application.experimental.ts +305 -0
  142. package/src/api/start/index.ts +20 -4
  143. package/src/builder/webpack/devServer/setup.ts +1 -0
  144. package/src/builder/webpack/providers/analyze/shared.ts +6 -10
  145. package/src/builder/webpack/providers/client.ts +15 -10
  146. package/src/builder/webpack/providers/server.ts +15 -10
  147. package/src/cli/CLI.ts +1 -1
  148. package/src/cli/bin-init.ts +0 -2
  149. package/src/cli/index.ts +4 -11
  150. package/src/cli/runCLI.ts +0 -1
  151. package/src/commands/add/command.ts +3 -2
  152. package/src/commands/analyze/command.ts +12 -14
  153. package/src/commands/benchmark/command.ts +9 -10
  154. package/src/commands/build/build.ts +2 -0
  155. package/src/commands/build/command.ts +13 -16
  156. package/src/commands/generate/command.ts +3 -2
  157. package/src/commands/lint/command.ts +3 -2
  158. package/src/commands/new/command.ts +0 -2
  159. package/src/commands/new/steps/installDependencies.ts +3 -3
  160. package/src/commands/new/templates/shared/_prettierrc.js.hbs +1 -1
  161. package/src/commands/start/command.ts +20 -16
  162. package/src/commands/start-prod/command.ts +12 -14
  163. package/src/commands/static/command.ts +7 -3
  164. package/src/commands/update/command.ts +3 -2
  165. package/src/external/config.ts +1 -0
  166. package/src/library/babel/index.ts +3 -160
  167. package/src/library/swc/__integration__/__snapshots__/swc.build.test.ts.snap +46 -28
  168. package/src/library/swc/__integration__/__snapshots__/swc.start.test.ts.snap +12 -8
  169. package/src/library/swc/__integration__/swc.start.test.ts +4 -4
  170. package/src/library/swc/index.ts +3 -139
  171. package/src/library/webpack/application/client/common.ts +12 -7
  172. package/src/library/webpack/application/common.ts +8 -4
  173. package/src/library/webpack/blocks/pwa/client.ts +13 -64
  174. package/src/library/webpack/blocks/resolve.ts +1 -0
  175. package/src/library/webpack/child-app/client/common.ts +2 -2
  176. package/src/library/webpack/child-app/common.ts +7 -5
  177. package/src/library/webpack/utils/threadLoader.ts +21 -0
  178. package/src/library/webpack/utils/transpiler.ts +2 -2
  179. package/src/models/analytics/utils.ts +6 -2
  180. package/src/models/command.ts +3 -4
  181. package/src/models/context.ts +1 -1
  182. package/src/models/logger.ts +1 -3
  183. package/src/schema/autogeneratedSchema.json +15 -15
  184. package/src/typings/configEntry/application.ts +5 -1
  185. package/src/typings/public.ts +0 -2
  186. package/src/utils/cpu-profile.ts +0 -1
  187. package/lib/library/babel/plugins/create-token-pure.d.ts +0 -7
  188. package/lib/library/babel/plugins/create-token-pure.d.ts.map +0 -1
  189. package/lib/library/babel/plugins/create-token-pure.js +0 -39
  190. package/lib/library/babel/plugins/create-token-pure.js.map +0 -1
  191. package/lib/library/babel/plugins/fill-action-name.d.ts +0 -3
  192. package/lib/library/babel/plugins/fill-action-name.d.ts.map +0 -1
  193. package/lib/library/babel/plugins/fill-action-name.js +0 -107
  194. package/lib/library/babel/plugins/fill-action-name.js.map +0 -1
  195. package/lib/library/babel/plugins/fill-declare-action-name.d.ts +0 -6
  196. package/lib/library/babel/plugins/fill-declare-action-name.d.ts.map +0 -1
  197. package/lib/library/babel/plugins/fill-declare-action-name.js +0 -94
  198. package/lib/library/babel/plugins/fill-declare-action-name.js.map +0 -1
  199. package/lib/library/babel/plugins/lazy-component/lazy-component.d.ts +0 -7
  200. package/lib/library/babel/plugins/lazy-component/lazy-component.d.ts.map +0 -1
  201. package/lib/library/babel/plugins/lazy-component/lazy-component.js +0 -75
  202. package/lib/library/babel/plugins/lazy-component/lazy-component.js.map +0 -1
  203. package/lib/library/babel/plugins/lazy-component/legacy-universal-replace.d.ts +0 -14
  204. package/lib/library/babel/plugins/lazy-component/legacy-universal-replace.d.ts.map +0 -1
  205. package/lib/library/babel/plugins/lazy-component/legacy-universal-replace.js +0 -53
  206. package/lib/library/babel/plugins/lazy-component/legacy-universal-replace.js.map +0 -1
  207. package/lib/library/babel/plugins/lazy-component/properties/chunkName.d.ts +0 -3
  208. package/lib/library/babel/plugins/lazy-component/properties/chunkName.d.ts.map +0 -1
  209. package/lib/library/babel/plugins/lazy-component/properties/chunkName.js +0 -133
  210. package/lib/library/babel/plugins/lazy-component/properties/chunkName.js.map +0 -1
  211. package/lib/library/babel/plugins/lazy-component/properties/importAsync.d.ts +0 -3
  212. package/lib/library/babel/plugins/lazy-component/properties/importAsync.d.ts.map +0 -1
  213. package/lib/library/babel/plugins/lazy-component/properties/importAsync.js +0 -11
  214. package/lib/library/babel/plugins/lazy-component/properties/importAsync.js.map +0 -1
  215. package/lib/library/babel/plugins/lazy-component/properties/isReady.d.ts +0 -3
  216. package/lib/library/babel/plugins/lazy-component/properties/isReady.d.ts.map +0 -1
  217. package/lib/library/babel/plugins/lazy-component/properties/isReady.js +0 -14
  218. package/lib/library/babel/plugins/lazy-component/properties/isReady.js.map +0 -1
  219. package/lib/library/babel/plugins/lazy-component/properties/requireAsync.d.ts +0 -3
  220. package/lib/library/babel/plugins/lazy-component/properties/requireAsync.d.ts.map +0 -1
  221. package/lib/library/babel/plugins/lazy-component/properties/requireAsync.js +0 -15
  222. package/lib/library/babel/plugins/lazy-component/properties/requireAsync.js.map +0 -1
  223. package/lib/library/babel/plugins/lazy-component/properties/requireSync.d.ts +0 -3
  224. package/lib/library/babel/plugins/lazy-component/properties/requireSync.d.ts.map +0 -1
  225. package/lib/library/babel/plugins/lazy-component/properties/requireSync.js +0 -16
  226. package/lib/library/babel/plugins/lazy-component/properties/requireSync.js.map +0 -1
  227. package/lib/library/babel/plugins/lazy-component/properties/resolve.d.ts +0 -3
  228. package/lib/library/babel/plugins/lazy-component/properties/resolve.d.ts.map +0 -1
  229. package/lib/library/babel/plugins/lazy-component/properties/resolve.js +0 -14
  230. package/lib/library/babel/plugins/lazy-component/properties/resolve.js.map +0 -1
  231. package/lib/library/babel/plugins/lazy-component/properties/types.d.ts +0 -14
  232. package/lib/library/babel/plugins/lazy-component/properties/types.d.ts.map +0 -1
  233. package/lib/library/babel/plugins/lazy-component/properties/types.js +0 -3
  234. package/lib/library/babel/plugins/lazy-component/properties/types.js.map +0 -1
  235. package/lib/library/babel/plugins/lazy-component/properties/utils/webpackComments.d.ts +0 -14
  236. package/lib/library/babel/plugins/lazy-component/properties/utils/webpackComments.d.ts.map +0 -1
  237. package/lib/library/babel/plugins/lazy-component/properties/utils/webpackComments.js +0 -57
  238. package/lib/library/babel/plugins/lazy-component/properties/utils/webpackComments.js.map +0 -1
  239. package/lib/library/babel/plugins/provider-stack.d.ts +0 -4
  240. package/lib/library/babel/plugins/provider-stack.d.ts.map +0 -1
  241. package/lib/library/babel/plugins/provider-stack.js +0 -63
  242. package/lib/library/babel/plugins/provider-stack.js.map +0 -1
  243. package/lib/library/babel/plugins/react-compiler.d.ts +0 -13
  244. package/lib/library/babel/plugins/react-compiler.d.ts.map +0 -1
  245. package/lib/library/babel/plugins/react-compiler.js +0 -27
  246. package/lib/library/babel/plugins/react-compiler.js.map +0 -1
  247. package/lib/library/babel/plugins/react-element-info-unique.d.ts +0 -26
  248. package/lib/library/babel/plugins/react-element-info-unique.d.ts.map +0 -1
  249. package/lib/library/babel/plugins/react-element-info-unique.js +0 -112
  250. package/lib/library/babel/plugins/react-element-info-unique.js.map +0 -1
  251. package/lib/library/babel/plugins/types.h.d.ts +0 -7
  252. package/lib/library/babel/plugins/types.h.d.ts.map +0 -1
  253. package/lib/library/babel/plugins/types.h.js +0 -3
  254. package/lib/library/babel/plugins/types.h.js.map +0 -1
  255. package/lib/library/webpack/plugins/AssetsIntegritiesPlugin.d.ts +0 -8
  256. package/lib/library/webpack/plugins/AssetsIntegritiesPlugin.d.ts.map +0 -1
  257. package/lib/library/webpack/plugins/AssetsIntegritiesPlugin.js +0 -29
  258. package/lib/library/webpack/plugins/AssetsIntegritiesPlugin.js.map +0 -1
  259. package/lib/library/webpack/plugins/AutoPublicPathPlugin.d.ts +0 -4
  260. package/lib/library/webpack/plugins/AutoPublicPathPlugin.d.ts.map +0 -1
  261. package/lib/library/webpack/plugins/AutoPublicPathPlugin.js +0 -23
  262. package/lib/library/webpack/plugins/AutoPublicPathPlugin.js.map +0 -1
  263. package/lib/library/webpack/plugins/ModuleFederationFixRange.d.ts +0 -24
  264. package/lib/library/webpack/plugins/ModuleFederationFixRange.d.ts.map +0 -1
  265. package/lib/library/webpack/plugins/ModuleFederationFixRange.js +0 -127
  266. package/lib/library/webpack/plugins/ModuleFederationFixRange.js.map +0 -1
  267. package/lib/library/webpack/plugins/ModuleFederationIgnoreEntries.d.ts +0 -15
  268. package/lib/library/webpack/plugins/ModuleFederationIgnoreEntries.d.ts.map +0 -1
  269. package/lib/library/webpack/plugins/ModuleFederationIgnoreEntries.js +0 -49
  270. package/lib/library/webpack/plugins/ModuleFederationIgnoreEntries.js.map +0 -1
  271. package/lib/library/webpack/plugins/PolyfillCondition.d.ts +0 -8
  272. package/lib/library/webpack/plugins/PolyfillCondition.d.ts.map +0 -1
  273. package/lib/library/webpack/plugins/PolyfillCondition.js +0 -46
  274. package/lib/library/webpack/plugins/PolyfillCondition.js.map +0 -1
  275. package/lib/library/webpack/plugins/PurifyStatsPlugin.d.ts +0 -15
  276. package/lib/library/webpack/plugins/PurifyStatsPlugin.d.ts.map +0 -1
  277. package/lib/library/webpack/plugins/PurifyStatsPlugin.js +0 -47
  278. package/lib/library/webpack/plugins/PurifyStatsPlugin.js.map +0 -1
  279. package/lib/library/webpack/plugins/PwaIconsPlugin.d.ts +0 -12
  280. package/lib/library/webpack/plugins/PwaIconsPlugin.d.ts.map +0 -1
  281. package/lib/library/webpack/plugins/PwaIconsPlugin.js +0 -78
  282. package/lib/library/webpack/plugins/PwaIconsPlugin.js.map +0 -1
  283. package/lib/library/webpack/plugins/WebManifestPlugin.d.ts +0 -13
  284. package/lib/library/webpack/plugins/WebManifestPlugin.d.ts.map +0 -1
  285. package/lib/library/webpack/plugins/WebManifestPlugin.js +0 -47
  286. package/lib/library/webpack/plugins/WebManifestPlugin.js.map +0 -1
  287. package/lib/library/webpack/utils/polyfills/const.d.ts +0 -3
  288. package/lib/library/webpack/utils/polyfills/const.d.ts.map +0 -1
  289. package/lib/library/webpack/utils/polyfills/const.js +0 -49
  290. package/lib/library/webpack/utils/polyfills/const.js.map +0 -1
  291. package/lib/library/webpack/utils/polyfills/polyfillCondition.d.ts +0 -8
  292. package/lib/library/webpack/utils/polyfills/polyfillCondition.d.ts.map +0 -1
  293. package/lib/library/webpack/utils/polyfills/polyfillCondition.js +0 -51
  294. package/lib/library/webpack/utils/polyfills/polyfillCondition.js.map +0 -1
  295. package/lib/library/webpack/utils/polyfills/specToFeature.d.ts +0 -7
  296. package/lib/library/webpack/utils/polyfills/specToFeature.d.ts.map +0 -1
  297. package/lib/library/webpack/utils/polyfills/specToFeature.js +0 -207
  298. package/lib/library/webpack/utils/polyfills/specToFeature.js.map +0 -1
  299. package/lib/models/analytics/analytics.d.ts +0 -156
  300. package/lib/models/analytics/analytics.d.ts.map +0 -1
  301. package/lib/models/analytics/analytics.js +0 -259
  302. package/lib/models/analytics/analytics.js.map +0 -1
  303. package/lib/models/analytics/analytics.worker.d.ts +0 -5
  304. package/lib/models/analytics/analytics.worker.d.ts.map +0 -1
  305. package/lib/models/analytics/analytics.worker.js +0 -87
  306. package/lib/models/analytics/analytics.worker.js.map +0 -1
  307. package/lib/typings/pwa/index.d.ts +0 -80
  308. package/lib/typings/pwa/index.d.ts.map +0 -1
  309. package/lib/typings/pwa/index.js +0 -3
  310. package/lib/typings/pwa/index.js.map +0 -1
  311. package/lib/utils/errors.d.ts +0 -7
  312. package/lib/utils/errors.d.ts.map +0 -1
  313. package/lib/utils/errors.js +0 -43
  314. package/lib/utils/errors.js.map +0 -1
  315. package/lib/utils/memoryUsage.d.ts +0 -20
  316. package/lib/utils/memoryUsage.d.ts.map +0 -1
  317. package/lib/utils/memoryUsage.js +0 -51
  318. package/lib/utils/memoryUsage.js.map +0 -1
  319. package/lib/utils/sentry.d.ts +0 -2
  320. package/lib/utils/sentry.d.ts.map +0 -1
  321. package/lib/utils/sentry.js +0 -27
  322. package/lib/utils/sentry.js.map +0 -1
  323. package/src/library/babel/plugins/__fixtures__/create-token-pure/already-has-comment.ts +0 -5
  324. package/src/library/babel/plugins/__fixtures__/create-token-pure/do-nothing.ts +0 -10
  325. package/src/library/babel/plugins/__fixtures__/create-token-pure/from-core.ts +0 -5
  326. package/src/library/babel/plugins/__fixtures__/create-token-pure/from-dippy.ts +0 -5
  327. package/src/library/babel/plugins/__fixtures__/create-token-pure/many-imports.ts +0 -9
  328. package/src/library/babel/plugins/__fixtures__/fill-declare-action-name/import-mixed.ts +0 -17
  329. package/src/library/babel/plugins/__fixtures__/fill-declare-action-name/import-with-name.ts +0 -28
  330. package/src/library/babel/plugins/__fixtures__/fill-declare-action-name/import-without-name.ts +0 -25
  331. package/src/library/babel/plugins/__fixtures__/fill-declare-action-name/require-with-name.ts +0 -21
  332. package/src/library/babel/plugins/__fixtures__/fill-declare-action-name/require-without-name.ts +0 -19
  333. package/src/library/babel/plugins/__fixtures__/lazy-component/base.ts +0 -3
  334. package/src/library/babel/plugins/__fixtures__/lazy-component/cmp.tsx +0 -7
  335. package/src/library/babel/plugins/__fixtures__/lazy-component/comments.ts +0 -7
  336. package/src/library/babel/plugins/__fixtures__/lazy-component/dynamic.ts +0 -3
  337. package/src/library/babel/plugins/__fixtures__/lazy-component/inner/first.tsx +0 -7
  338. package/src/library/babel/plugins/__fixtures__/lazy-component/inner/path/cmp.tsx +0 -7
  339. package/src/library/babel/plugins/__fixtures__/lazy-component/inner/second.tsx +0 -7
  340. package/src/library/babel/plugins/__fixtures__/lazy-component/inner/third.tsx +0 -7
  341. package/src/library/babel/plugins/__fixtures__/lazy-component/lazy+hmr.ts +0 -3
  342. package/src/library/babel/plugins/__fixtures__/lazy-component/long-import.ts +0 -3
  343. package/src/library/babel/plugins/__fixtures__/lazy-component/not-lazy-import.ts +0 -7
  344. package/src/library/babel/plugins/__fixtures__/lazy-component/not-lazy.ts +0 -8
  345. package/src/library/babel/plugins/__fixtures__/legacy-universal-replace/cmp.tsx +0 -7
  346. package/src/library/babel/plugins/__fixtures__/legacy-universal-replace/not-universal.ts +0 -8
  347. package/src/library/babel/plugins/__fixtures__/legacy-universal-replace/platform-legacy.ts +0 -5
  348. package/src/library/babel/plugins/__fixtures__/legacy-universal-replace/react-universal.ts +0 -3
  349. package/src/library/babel/plugins/__fixtures__/legacy-universal-replace/tramvai/react/index.es.ts +0 -3
  350. package/src/library/babel/plugins/__fixtures__/provider-stack/add-stack.ts +0 -22
  351. package/src/library/babel/plugins/__fixtures__/provider-stack/check-function-name.ts +0 -10
  352. package/src/library/babel/plugins/__fixtures__/provider-stack/do-nothing.ts +0 -16
  353. package/src/library/babel/plugins/__fixtures__/provider-stack/error-in-scope.ts +0 -24
  354. package/src/library/babel/plugins/__fixtures__/provider-stack/inside-await.ts +0 -12
  355. package/src/library/babel/plugins/__fixtures__/provider-stack/module-decorator.ts +0 -27
  356. package/src/library/babel/plugins/__snapshots__/create-token-pure.spec.ts.snap +0 -108
  357. package/src/library/babel/plugins/__snapshots__/fill-declare-action-name.spec.ts.snap +0 -264
  358. package/src/library/babel/plugins/__snapshots__/provider-stack.spec.ts.snap +0 -362
  359. package/src/library/babel/plugins/create-token-pure.spec.ts +0 -39
  360. package/src/library/babel/plugins/create-token-pure.ts +0 -47
  361. package/src/library/babel/plugins/fill-action-name.ts +0 -126
  362. package/src/library/babel/plugins/fill-declare-action-name.spec.ts +0 -37
  363. package/src/library/babel/plugins/fill-declare-action-name.ts +0 -110
  364. package/src/library/babel/plugins/lazy-component/__snapshots__/lazy-component.spec.ts.snap +0 -313
  365. package/src/library/babel/plugins/lazy-component/__snapshots__/legacy-universal-replace.spec.ts.snap +0 -114
  366. package/src/library/babel/plugins/lazy-component/lazy-component.spec.ts +0 -46
  367. package/src/library/babel/plugins/lazy-component/lazy-component.ts +0 -91
  368. package/src/library/babel/plugins/lazy-component/legacy-universal-replace.spec.ts +0 -33
  369. package/src/library/babel/plugins/lazy-component/legacy-universal-replace.ts +0 -88
  370. package/src/library/babel/plugins/lazy-component/properties/chunkName.ts +0 -185
  371. package/src/library/babel/plugins/lazy-component/properties/importAsync.ts +0 -8
  372. package/src/library/babel/plugins/lazy-component/properties/isReady.ts +0 -19
  373. package/src/library/babel/plugins/lazy-component/properties/requireAsync.ts +0 -20
  374. package/src/library/babel/plugins/lazy-component/properties/requireSync.ts +0 -21
  375. package/src/library/babel/plugins/lazy-component/properties/resolve.ts +0 -21
  376. package/src/library/babel/plugins/lazy-component/properties/types.ts +0 -20
  377. package/src/library/babel/plugins/lazy-component/properties/utils/webpackComments.ts +0 -61
  378. package/src/library/babel/plugins/provider-stack.spec.ts +0 -55
  379. package/src/library/babel/plugins/provider-stack.ts +0 -88
  380. package/src/library/babel/plugins/react-compiler.ts +0 -39
  381. package/src/library/babel/plugins/react-element-info-unique.ts +0 -144
  382. package/src/library/babel/plugins/types.h.ts +0 -8
  383. package/src/library/webpack/plugins/AssetsIntegritiesPlugin.ts +0 -34
  384. package/src/library/webpack/plugins/AutoPublicPathPlugin.ts +0 -23
  385. package/src/library/webpack/plugins/ModuleFederationFixRange.ts +0 -181
  386. package/src/library/webpack/plugins/ModuleFederationIgnoreEntries.ts +0 -59
  387. package/src/library/webpack/plugins/PolyfillCondition.ts +0 -62
  388. package/src/library/webpack/plugins/PurifyStatsPlugin.ts +0 -57
  389. package/src/library/webpack/plugins/PwaIconsPlugin.ts +0 -94
  390. package/src/library/webpack/plugins/WebManifestPlugin.ts +0 -62
  391. package/src/library/webpack/utils/polyfills/__integration__/__snapshots__/condition.test.ts.snap +0 -1348
  392. package/src/library/webpack/utils/polyfills/__integration__/condition.test.ts +0 -128
  393. package/src/library/webpack/utils/polyfills/const.ts +0 -46
  394. package/src/library/webpack/utils/polyfills/polyfillCondition.ts +0 -63
  395. package/src/library/webpack/utils/polyfills/specToFeature.ts +0 -243
  396. package/src/models/analytics/analytics.ts +0 -488
  397. package/src/models/analytics/analytics.worker.ts +0 -102
  398. package/src/typings/pwa/index.ts +0 -83
  399. package/src/utils/errors.ts +0 -39
  400. package/src/utils/memoryUsage.ts +0 -58
  401. package/src/utils/sentry.ts +0 -25
@@ -1,207 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getSpecToFeatureDict = void 0;
4
- const tslib_1 = require("tslib");
5
- const node_path_1 = tslib_1.__importDefault(require("node:path"));
6
- const camelCaseName_1 = tslib_1.__importDefault(require("@tinkoff/utils/string/camelCaseName"));
7
- const const_1 = require("./const");
8
- // built-in-definitions.js file is not listed in the package.json exports of package, so it cannot be imported
9
- // workaround this by using require with an absolute path to file
10
- const pathToDep = require.resolve('babel-plugin-polyfill-corejs3/package.json');
11
- const definitions = require(node_path_1.default.join(node_path_1.default.dirname(pathToDep), '/lib/built-in-definitions.js'));
12
- // A list of new primitives, their support in browsers was added recently
13
- const newPrimitivies = {
14
- 'weak-map': 'window.WeakMap',
15
- 'weak-set': 'window.WeakSet',
16
- 'async-disposable-stack': 'window.AsyncDisposableStack',
17
- 'disposable-stack': 'window.DisposableStack',
18
- 'suppressed-error': 'window.SuppressedError',
19
- 'web.immediate': 'window.setImmediate',
20
- observable: 'window.Observable',
21
- };
22
- // A list of primitives for which there are no polyfills, but they are needed as a base for methods like JSON.stringify
23
- const missingBuiltIns = {
24
- ...newPrimitivies,
25
- 'typed-array': 'window.Int8Array',
26
- 'uint8-array': 'window.Uint8Array',
27
- string: 'window.String',
28
- array: 'window.Array',
29
- object: 'window.Object',
30
- math: 'window.Math',
31
- function: 'window.Function',
32
- json: 'window.JSON',
33
- };
34
- // Exclude fetch builtin, because its treated as object.constructor
35
- const excludedBuiltIns = ['fetch'];
36
- const isBuiltInExcluded = (builtInName) => excludedBuiltIns.includes(builtInName);
37
- // Exclude iterators
38
- // we do not provide polyfills for them and their support check is much more complicated
39
- // es.iterator, es.async-iterator, esnext.async-iterator, esnext.iterator
40
- const isSpecExcluded = (specName) => /(es(next)?)?\.(async-)?iterator/.test(specName) || const_1.ignoredPolyfills.includes(specName);
41
- const specToFeatureDict = {};
42
- function _addFeature(specName, primitive, method, isInstance) {
43
- if (specToFeatureDict[specName]) {
44
- return;
45
- }
46
- let checkExpression = isInstance
47
- ? `'${method}' in ${primitive}.prototype`
48
- : `${primitive}.${method}`;
49
- // For new primitives, we add a check for the existence of the primitive itself.
50
- // for example WeakMap && WeakMap.from
51
- // since WeakMap itself may not be supported in the browser, WeakMap check support may also be required
52
- const isPrimitiveNew = Boolean(Object.values(newPrimitivies).includes(primitive));
53
- if (isPrimitiveNew) {
54
- checkExpression = `${primitive} && ${checkExpression}`;
55
- }
56
- specToFeatureDict[specName] = checkExpression;
57
- specToFeatureDict[specName.replace('es.', 'esnext.')] = checkExpression;
58
- }
59
- const addStaticFeature = (specName, primitive, method) => _addFeature(specName, primitive, method, false);
60
- const addInstanceFeature = (specName, primitive, method) => _addFeature(specName, primitive, method, true);
61
- const methods = {};
62
- function addMethod(specName, expression) {
63
- methods[specName] = expression;
64
- }
65
- const instanceMethods = new Set(['web.url.to-json']);
66
- const globals = new Set();
67
- function _addGlobal(globalList, isInstance) {
68
- globalList.forEach((globalSpecName) => {
69
- globals.add(globalSpecName);
70
- if (isInstance) {
71
- instanceMethods.add(globalSpecName);
72
- }
73
- });
74
- }
75
- const addInstanceGlobal = (globalList) => _addGlobal(globalList, true);
76
- const addGlobal = (globalList) => _addGlobal(globalList, false);
77
- /**
78
- * For conversion, a dictionary of the form `spec: feature` needs to be created
79
- * we use a file from babel-plugin-polyfill-corejs3 for this - https://github.com/babel/babel-polyfills/blob/main/packages/babel-plugin-polyfill-corejs3/src/built-in-definitions.ts
80
- * as a result we get dictinary like { 'es.array.at: 'Array.prototype.at', 'es.object.assign': 'Object.assign' }
81
- */
82
- function getSpecToFeatureDict() {
83
- const { BuiltIns, InstanceProperties, StaticProperties } = definitions;
84
- // JS primitives: Number, Reflect, Set, Map...
85
- const builtIns = Object.keys(BuiltIns).reduce((acc, builtInKey) => {
86
- const { name: builtInName, global } = BuiltIns[builtInKey];
87
- if (isBuiltInExcluded(builtInKey))
88
- return acc;
89
- addGlobal(global);
90
- const removeBaseMethodNames = (builtInName) => builtInName.replace('.constructor', '').replace('.to-string', '');
91
- acc[removeBaseMethodNames(builtInName)] = `window.${builtInKey}`;
92
- acc[removeBaseMethodNames(builtInName).replace('es.', 'esnext.')] = `window.${builtInKey}`;
93
- return acc;
94
- }, {});
95
- // Some primitives are missing, so we add them manually
96
- Object.keys(missingBuiltIns).forEach((missingBuiltInName) => {
97
- builtIns[`es.${missingBuiltInName}`] = `${missingBuiltIns[missingBuiltInName]}`;
98
- builtIns[`esnext.${missingBuiltInName}`] = `${missingBuiltIns[missingBuiltInName]}`;
99
- });
100
- function parseSpec(spec) {
101
- // es.string.push
102
- const splitName = spec.split('.');
103
- // es.string
104
- const builtInName = splitName.slice(0, -1).join('.');
105
- // String
106
- const primitiveExpr = builtIns[builtInName];
107
- // push
108
- const methodName = splitName.at(-1);
109
- return {
110
- builtInName,
111
- primitiveExpr,
112
- methodName,
113
- };
114
- }
115
- // Instance methods, for example [1, 2, 3].at(), 'some_string'.toLowerCase()...
116
- Object.keys(InstanceProperties).forEach((instancePropertyName) => {
117
- const { name: instanceSpecName, global } = InstanceProperties[instancePropertyName];
118
- if (isSpecExcluded(instanceSpecName))
119
- return;
120
- const { primitiveExpr, methodName } = parseSpec(instanceSpecName);
121
- addMethod(methodName, instancePropertyName);
122
- addInstanceGlobal(global);
123
- // Some instance methods have no parent
124
- // for example Symbol.constructor is es.Symbol
125
- if (!primitiveExpr)
126
- return;
127
- addInstanceFeature(instanceSpecName, primitiveExpr, instancePropertyName);
128
- });
129
- // Static methods for example Object.assign(), RegExp.escape()...
130
- Object.keys(StaticProperties).forEach((primitiveName) => {
131
- const staticPrimitiveProperties = StaticProperties[primitiveName];
132
- Object.keys(staticPrimitiveProperties).forEach((staticPropertyName) => {
133
- const { name: staticSpecName, global } = staticPrimitiveProperties[staticPropertyName];
134
- if (isSpecExcluded(staticSpecName))
135
- return;
136
- const { methodName } = parseSpec(staticSpecName);
137
- addGlobal(global);
138
- addMethod(methodName, staticPropertyName);
139
- // For some reason, several static properties have names that match a builtin
140
- // we ignore such properties since their support in browsers appeared at the same time as the builtin itself
141
- // for example Promise and Promise.all
142
- if (builtIns[staticSpecName])
143
- return;
144
- addStaticFeature(staticSpecName, primitiveName, staticPropertyName);
145
- });
146
- });
147
- function isFeatureExists(specName) {
148
- return Boolean(builtIns[specName]) || Boolean(specToFeatureDict[specName]);
149
- }
150
- // Each spec has a list of globals, which also need to be converted into an expression for support check
151
- // but not all globals can have their method name determined unambiguously
152
- [...globals].forEach((globalSpecName) => {
153
- if (!isFeatureExists(globalSpecName)) {
154
- if (isSpecExcluded(globalSpecName))
155
- return;
156
- const { methodName, primitiveExpr, builtInName } = parseSpec(globalSpecName);
157
- // es.array-buffer.from
158
- const globalNameSplit = globalSpecName.split('.');
159
- // Trying to find a support check expression for a method from the already bypassed spec
160
- // for example, array and typed-array have the findLastIndex method, but typed-array is listed in global
161
- const featureMethod = methodName === 'constructor' ? 'constructor' : methods[methodName];
162
- // We consider a method to be simple if its name does not contain a '-'
163
- // every, filter, map can be left as it is, the method in the language is called the same way
164
- const isMethodSimple = !/-/.test(methodName);
165
- // Primitives don't have a method, so its length is 2
166
- // for example es.symbol или es.string
167
- const isPrimitive = globalNameSplit.length === 2;
168
- if (isPrimitive) {
169
- builtIns[globalSpecName] = `${BuiltIns[globalSpecName]}`;
170
- return;
171
- }
172
- // Trying to determine the type of method from global static or instance
173
- const globalInstancePrimitives = [
174
- 'es.array-buffer',
175
- 'es.typed-array',
176
- 'es.symbol',
177
- 'web.url-search-params',
178
- 'esnext.weak-map',
179
- 'esnext.weak-set',
180
- 'uint8-array',
181
- ];
182
- const isInstanceMethod = globalInstancePrimitives.includes(builtInName) || instanceMethods.has(globalSpecName);
183
- let method;
184
- if (featureMethod) {
185
- method = featureMethod;
186
- }
187
- else if (isMethodSimple) {
188
- method = methodName;
189
- }
190
- else if (primitiveExpr) {
191
- // couldn't find a similar method in the original list and it contains '-'
192
- // speculatively translating it to camelCase web.url.can-parse => URL.canParse
193
- method = (0, camelCaseName_1.default)(methodName);
194
- }
195
- isInstanceMethod
196
- ? addInstanceFeature(globalSpecName, primitiveExpr, method)
197
- : addStaticFeature(globalSpecName, primitiveExpr, method);
198
- }
199
- });
200
- return fixBrokenSpec({ ...builtIns, ...specToFeatureDict });
201
- }
202
- exports.getSpecToFeatureDict = getSpecToFeatureDict;
203
- function fixBrokenSpec(specs) {
204
- specs['es.string.italics'] = "'italics' in window.String.prototype";
205
- return specs;
206
- }
207
- //# sourceMappingURL=specToFeature.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"specToFeature.js","sourceRoot":"","sources":["../../../../../src/library/webpack/utils/polyfills/specToFeature.ts"],"names":[],"mappings":"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"}
@@ -1,156 +0,0 @@
1
- import { PackageManager } from '@tinkoff/package-manager-wrapper';
2
- import { Logger } from '../logger';
3
- import { createMemoryMonitor } from '../../utils/memoryUsage';
4
- declare global {
5
- var __TRAMVAI_EXIT_HANDLERS__: Array<() => Promise<any>>;
6
- }
7
- export type LEVEL = 'INFO' | 'WARN' | 'ERROR';
8
- export type COMMANDS = 'start' | 'build' | 'start-prod' | 'static' | 'analyze' | 'new' | 'add' | 'update';
9
- export type Event = {
10
- /**
11
- * @description ISO-8601 + timezone
12
- */
13
- timestamp: string;
14
- /**
15
- * @description Unique identifier for the current cli execution
16
- */
17
- 'x-command-id': string;
18
- level: LEVEL;
19
- event: string;
20
- message: string;
21
- system: string;
22
- tramvai: TramvaiProperties;
23
- os: SystemProperties;
24
- vcs?: VcsProperties;
25
- };
26
- export type ProjectProperties = {
27
- name: string;
28
- type?: 'application' | 'child-app' | 'module' | 'package' | 'unknown';
29
- };
30
- export type TramvaiProperties = {
31
- name: '@tramvai/cli';
32
- version: string;
33
- };
34
- export type DependenciesProperties = {
35
- react?: string;
36
- webpack?: string;
37
- babel?: string;
38
- swc?: string;
39
- };
40
- export type SystemProperties = {
41
- nodeVersion: string;
42
- packageManager: {
43
- name: string;
44
- };
45
- platform: string;
46
- arch: string;
47
- cpus: {
48
- model: string;
49
- count: number;
50
- };
51
- };
52
- export type FeaturesProperties = {
53
- swc?: boolean;
54
- fileSystemRouting?: boolean;
55
- reactCompiler?: boolean;
56
- devTools?: boolean;
57
- moduleImage?: boolean;
58
- modulePwa?: boolean;
59
- viewTransitions?: boolean;
60
- transitionsRouterProvider?: boolean;
61
- };
62
- export type VcsProperties = {
63
- tenant?: string;
64
- repository?: string;
65
- pipelineUrl?: string;
66
- jobUrl?: string;
67
- };
68
- export type MemoryUsageProperties = {
69
- maxHeapTotal: number;
70
- maxHeapUsed: number;
71
- maxRss: number;
72
- };
73
- export type AnalyticsEvents = {
74
- 'cli:init': {
75
- event: 'cli:init';
76
- level: 'INFO';
77
- message: string;
78
- arguments: string[];
79
- /**
80
- * @description CLI uptime in milliseconds before the AnalyticsService was initialized
81
- */
82
- uptime: number;
83
- dependencies: DependenciesProperties;
84
- };
85
- 'cli:error': {
86
- event: 'cli:error';
87
- level: 'ERROR';
88
- message: string;
89
- arguments: string[];
90
- error: Error;
91
- /**
92
- * @description CLI uptime in milliseconds before the AnalyticsService was initialized
93
- */
94
- uptime: number;
95
- };
96
- 'cli:command:start': {
97
- event: 'cli:command:start';
98
- level: 'INFO';
99
- message: string;
100
- command: COMMANDS;
101
- parameters: Record<string, any>;
102
- project?: ProjectProperties;
103
- features?: FeaturesProperties;
104
- };
105
- 'cli:command:end': {
106
- event: 'cli:command:end';
107
- level: 'INFO';
108
- message: string;
109
- command: COMMANDS;
110
- /**
111
- * @description duration in milliseconds
112
- */
113
- duration: number;
114
- memoryUsage?: MemoryUsageProperties;
115
- parameters: Record<string, any>;
116
- project: ProjectProperties;
117
- };
118
- 'cli:command:build:stats': {
119
- event: 'cli:command:build:stats';
120
- level: 'INFO';
121
- message: string;
122
- command: 'build';
123
- parameters: Record<string, any>;
124
- project: ProjectProperties;
125
- };
126
- 'cli:command:error': {
127
- event: 'cli:command:error';
128
- level: 'ERROR';
129
- message: string;
130
- command: COMMANDS;
131
- /**
132
- * @description duration in milliseconds
133
- */
134
- duration: number;
135
- memoryUsage?: MemoryUsageProperties;
136
- error: Error;
137
- parameters: Record<string, any>;
138
- project?: ProjectProperties;
139
- };
140
- };
141
- export declare class AnalyticsService {
142
- #private;
143
- memoryMonitor: ReturnType<typeof createMemoryMonitor> | null;
144
- constructor({ enabled, endpoint, system, logger, packageManager, }: {
145
- enabled?: boolean;
146
- endpoint?: string;
147
- system?: string;
148
- logger: Logger;
149
- packageManager: PackageManager;
150
- });
151
- init(): Promise<void>;
152
- send<E extends keyof AnalyticsEvents>(event: AnalyticsEvents[E]): Promise<void>;
153
- sendRawEvent(rawEvent: Pick<Event, 'event' | 'message' | 'level'> & Record<string, any>): Promise<void>;
154
- }
155
- export declare function resolveDependenciesProperties(): DependenciesProperties;
156
- //# sourceMappingURL=analytics.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../../src/models/analytics/analytics.ts"],"names":[],"mappings":"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"}
@@ -1,259 +0,0 @@
1
- "use strict";
2
- var _AnalyticsService_instances, _AnalyticsService_enabled, _AnalyticsService_endpoint, _AnalyticsService_system, _AnalyticsService_debug, _AnalyticsService_dryRun, _AnalyticsService_logger, _AnalyticsService_packageManager, _AnalyticsService_xCommandId, _AnalyticsService_worker, _AnalyticsService_initMemoryMonitor, _AnalyticsService_initErrorHandlers, _AnalyticsService_spawnWorker;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.resolveDependenciesProperties = exports.AnalyticsService = void 0;
5
- const tslib_1 = require("tslib");
6
- const node_os_1 = tslib_1.__importDefault(require("node:os"));
7
- const node_path_1 = tslib_1.__importDefault(require("node:path"));
8
- const node_crypto_1 = tslib_1.__importDefault(require("node:crypto"));
9
- const node_worker_threads_1 = require("node:worker_threads");
10
- const memoryUsage_1 = require("../../utils/memoryUsage");
11
- const errors_1 = require("../../utils/errors");
12
- class AnalyticsService {
13
- constructor({ enabled = true, endpoint = '', system, logger, packageManager, }) {
14
- _AnalyticsService_instances.add(this);
15
- _AnalyticsService_enabled.set(this, void 0);
16
- _AnalyticsService_endpoint.set(this, void 0);
17
- _AnalyticsService_system.set(this, void 0);
18
- _AnalyticsService_debug.set(this, void 0);
19
- _AnalyticsService_dryRun.set(this, void 0);
20
- _AnalyticsService_logger.set(this, void 0);
21
- _AnalyticsService_packageManager.set(this, void 0);
22
- _AnalyticsService_xCommandId.set(this, void 0);
23
- _AnalyticsService_worker.set(this, null);
24
- this.memoryMonitor = null;
25
- tslib_1.__classPrivateFieldSet(this, _AnalyticsService_enabled, process.env.TRAMVAI_ANALYTICS_DISABLED
26
- ? process.env.TRAMVAI_ANALYTICS_DISABLED !== 'true'
27
- : enabled, "f");
28
- tslib_1.__classPrivateFieldSet(this, _AnalyticsService_endpoint, process.env.TRAMVAI_ANALYTICS_ENDPOINT ?? endpoint, "f");
29
- tslib_1.__classPrivateFieldSet(this, _AnalyticsService_system, process.env.TRAMVAI_ANALYTICS_SYSTEM ?? system ?? 'tramvai-cli', "f");
30
- tslib_1.__classPrivateFieldSet(this, _AnalyticsService_debug, process.env.TRAMVAI_ANALYTICS_DEBUG === 'true', "f");
31
- tslib_1.__classPrivateFieldSet(this, _AnalyticsService_dryRun, process.env.TRAMVAI_ANALYTICS_DRY_RUN === 'true', "f");
32
- tslib_1.__classPrivateFieldSet(this, _AnalyticsService_logger, logger, "f");
33
- tslib_1.__classPrivateFieldSet(this, _AnalyticsService_packageManager, packageManager, "f");
34
- tslib_1.__classPrivateFieldSet(this, _AnalyticsService_xCommandId, node_crypto_1.default.randomUUID(), "f");
35
- }
36
- async init() {
37
- if (!tslib_1.__classPrivateFieldGet(this, _AnalyticsService_worker, "f") && tslib_1.__classPrivateFieldGet(this, _AnalyticsService_enabled, "f") && tslib_1.__classPrivateFieldGet(this, _AnalyticsService_endpoint, "f")) {
38
- await tslib_1.__classPrivateFieldGet(this, _AnalyticsService_instances, "m", _AnalyticsService_spawnWorker).call(this);
39
- }
40
- if (!this.memoryMonitor) {
41
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_instances, "m", _AnalyticsService_initMemoryMonitor).call(this);
42
- }
43
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_instances, "m", _AnalyticsService_initErrorHandlers).call(this);
44
- }
45
- async send(event) {
46
- return this.sendRawEvent(event);
47
- }
48
- async sendRawEvent(rawEvent) {
49
- if (!tslib_1.__classPrivateFieldGet(this, _AnalyticsService_enabled, "f") || !tslib_1.__classPrivateFieldGet(this, _AnalyticsService_endpoint, "f")) {
50
- return;
51
- }
52
- try {
53
- const event = {
54
- ...rawEvent,
55
- timestamp: new Date().toISOString(),
56
- 'x-command-id': tslib_1.__classPrivateFieldGet(this, _AnalyticsService_xCommandId, "f"),
57
- system: tslib_1.__classPrivateFieldGet(this, _AnalyticsService_system, "f"),
58
- tramvai: getTramvaiProperties(),
59
- os: getOsProperties({ packageManager: tslib_1.__classPrivateFieldGet(this, _AnalyticsService_packageManager, "f") }),
60
- };
61
- if (process.env.CI) {
62
- event.vcs = getVcsProperties();
63
- }
64
- if ('error' in event && event.error instanceof Error) {
65
- (0, errors_1.enumerateErrorProperties)(event.error);
66
- }
67
- if (!tslib_1.__classPrivateFieldGet(this, _AnalyticsService_worker, "f")) {
68
- await tslib_1.__classPrivateFieldGet(this, _AnalyticsService_instances, "m", _AnalyticsService_spawnWorker).call(this);
69
- }
70
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_worker, "f")?.postMessage({
71
- event: 'SEND_EVENT',
72
- payload: event,
73
- });
74
- }
75
- catch (error) {
76
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_logger, "f").event({
77
- type: 'error',
78
- event: 'analytics-send-failed',
79
- message: `Error sending analytics data: ${error instanceof Error ? error.message : String(error)}`,
80
- });
81
- }
82
- }
83
- }
84
- exports.AnalyticsService = AnalyticsService;
85
- _AnalyticsService_enabled = new WeakMap(), _AnalyticsService_endpoint = new WeakMap(), _AnalyticsService_system = new WeakMap(), _AnalyticsService_debug = new WeakMap(), _AnalyticsService_dryRun = new WeakMap(), _AnalyticsService_logger = new WeakMap(), _AnalyticsService_packageManager = new WeakMap(), _AnalyticsService_xCommandId = new WeakMap(), _AnalyticsService_worker = new WeakMap(), _AnalyticsService_instances = new WeakSet(), _AnalyticsService_initMemoryMonitor = function _AnalyticsService_initMemoryMonitor() {
86
- this.memoryMonitor = (0, memoryUsage_1.createMemoryMonitor)({ sampleInterval: 250 });
87
- this.memoryMonitor.start();
88
- // CLI will wait for this handlers before exiting
89
- // @reference `packages/cli/src/cli/runCLI.ts`
90
- if (!global.__TRAMVAI_EXIT_HANDLERS__) {
91
- global.__TRAMVAI_EXIT_HANDLERS__ = [];
92
- }
93
- global.__TRAMVAI_EXIT_HANDLERS__.push(async () => {
94
- this.memoryMonitor?.stop();
95
- });
96
- }, _AnalyticsService_initErrorHandlers = function _AnalyticsService_initErrorHandlers() {
97
- const sendErrorEvent = async (message, error) => {
98
- await this?.send({
99
- event: 'cli:error',
100
- message,
101
- level: 'ERROR',
102
- arguments: process.argv.slice(2),
103
- error,
104
- uptime: performance.now(),
105
- });
106
- };
107
- process.on('uncaughtException', (error) => {
108
- sendErrorEvent('uncaughtException', error);
109
- });
110
- process.on('unhandledRejection', (error) => {
111
- sendErrorEvent('unhandledRejection', error);
112
- });
113
- }, _AnalyticsService_spawnWorker = async function _AnalyticsService_spawnWorker() {
114
- tslib_1.__classPrivateFieldSet(this, _AnalyticsService_worker, new node_worker_threads_1.Worker(node_path_1.default.resolve(__dirname, './analytics.worker.js'), {
115
- workerData: {
116
- endpoint: tslib_1.__classPrivateFieldGet(this, _AnalyticsService_endpoint, "f"),
117
- debug: tslib_1.__classPrivateFieldGet(this, _AnalyticsService_debug, "f"),
118
- dryRun: tslib_1.__classPrivateFieldGet(this, _AnalyticsService_dryRun, "f"),
119
- },
120
- name: 'analytics-worker',
121
- }), "f");
122
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_worker, "f").on('error', (err) => {
123
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_logger, "f").event({
124
- type: `error`,
125
- event: 'analytics-worker-error',
126
- message: `[analytics] worker error: ${err instanceof Error ? err.message : String(err)}`,
127
- });
128
- });
129
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_worker, "f").on('exit', (code) => {
130
- if (code !== 0) {
131
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_logger, "f").event({
132
- type: `error`,
133
- event: 'analytics-worker-exit',
134
- message: `[analytics] worker exit with code: ${code}`,
135
- });
136
- }
137
- });
138
- // CLI will wait for this handlers before exiting
139
- // @reference `packages/cli/src/cli/runCLI.ts`
140
- if (!global.__TRAMVAI_EXIT_HANDLERS__) {
141
- global.__TRAMVAI_EXIT_HANDLERS__ = [];
142
- }
143
- // We need to ensure that the analytics is sent before the process exits.
144
- // To ensure that, we implement a graceful worker shutdown:
145
- // - send `EXIT` message to the worker
146
- // - wait for the worker to respond with `SHUTDOWN_COMPLETE` message
147
- // - worker will wait for all pending requests, send `SHUTDOWN_COMPLETE` to the parent and exit
148
- global.__TRAMVAI_EXIT_HANDLERS__.push(async () => {
149
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_logger, "f").event({
150
- type: 'info',
151
- event: 'analytics-worker-exit',
152
- message: 'Process shutting down, waiting for pending analytics to be sent',
153
- });
154
- const promise = new Promise((resolve) => {
155
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_worker, "f")?.on('message', async (message) => {
156
- if (message.event === 'SHUTDOWN_COMPLETE') {
157
- tslib_1.__classPrivateFieldSet(this, _AnalyticsService_worker, null, "f");
158
- resolve();
159
- }
160
- });
161
- });
162
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_worker, "f")?.postMessage({
163
- event: 'EXIT',
164
- });
165
- await Promise.race([promise, new Promise((resolve) => setTimeout(resolve, 5000))]);
166
- });
167
- await new Promise((resolve) => {
168
- tslib_1.__classPrivateFieldGet(this, _AnalyticsService_worker, "f")?.once('online', resolve);
169
- });
170
- };
171
- const cache = {};
172
- function getTramvaiProperties() {
173
- if (cache.tramvaiProperties) {
174
- return cache.tramvaiProperties;
175
- }
176
- const packageJson = require(node_path_1.default.resolve(__dirname, '../../../package.json'));
177
- const tramvaiProperties = {
178
- name: '@tramvai/cli',
179
- version: packageJson.version,
180
- };
181
- cache.tramvaiProperties = tramvaiProperties;
182
- return tramvaiProperties;
183
- }
184
- function getOsProperties({ packageManager }) {
185
- if (cache.osProperties) {
186
- return cache.osProperties;
187
- }
188
- const osProperties = {
189
- nodeVersion: process.version,
190
- packageManager: {
191
- name: packageManager.name,
192
- },
193
- platform: node_os_1.default.platform(),
194
- arch: node_os_1.default.arch(),
195
- cpus: {
196
- model: node_os_1.default.cpus()[0].model,
197
- count: node_os_1.default.cpus().length,
198
- },
199
- };
200
- cache.osProperties = osProperties;
201
- return osProperties;
202
- }
203
- function getVcsProperties() {
204
- if (cache.vcsProperties) {
205
- return cache.vcsProperties;
206
- }
207
- const vcsProperties = {};
208
- if (process.env.CI_PROJECT_NAMESPACE) {
209
- vcsProperties.tenant = process.env.CI_PROJECT_NAMESPACE;
210
- }
211
- if (process.env.CI_PROJECT_NAME) {
212
- vcsProperties.repository = process.env.CI_PROJECT_NAME;
213
- }
214
- if (process.env.CI_PIPELINE_URL) {
215
- vcsProperties.pipelineUrl = process.env.CI_PIPELINE_URL;
216
- }
217
- if (process.env.CI_JOB_URL) {
218
- vcsProperties.jobUrl = process.env.CI_JOB_URL;
219
- }
220
- cache.vcsProperties = vcsProperties;
221
- return vcsProperties;
222
- }
223
- function resolveDependenciesProperties() {
224
- if (cache.dependenciesProperties) {
225
- return cache.dependenciesProperties;
226
- }
227
- const dependencies = {};
228
- try {
229
- dependencies.react = require('react/package.json').version;
230
- }
231
- catch (e) {
232
- // do nothing
233
- }
234
- try {
235
- // eslint-disable-next-line import/no-extraneous-dependencies
236
- dependencies.webpack = require('webpack/package.json').version;
237
- }
238
- catch (e) {
239
- // do nothing
240
- }
241
- try {
242
- // eslint-disable-next-line import/no-extraneous-dependencies
243
- dependencies.babel = require('@babel/core/package.json').version;
244
- }
245
- catch (e) {
246
- // do nothing
247
- }
248
- try {
249
- // eslint-disable-next-line import/no-extraneous-dependencies
250
- dependencies.swc = require('@swc/core/package.json').version;
251
- }
252
- catch (e) {
253
- // do nothing
254
- }
255
- cache.dependenciesProperties = dependencies;
256
- return dependencies;
257
- }
258
- exports.resolveDependenciesProperties = resolveDependenciesProperties;
259
- //# sourceMappingURL=analytics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../../src/models/analytics/analytics.ts"],"names":[],"mappings":"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"}