@walkeros/cli 0.4.2 → 0.5.1-next.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 (350) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +140 -9
  3. package/dist/examples/README.md +13 -1
  4. package/dist/examples/flow-order-complete.json +1 -2
  5. package/dist/examples/flow-simple.json +1 -2
  6. package/dist/examples/server-collect.json +4 -4
  7. package/dist/index.d.ts +1 -114
  8. package/dist/index.js +322 -387
  9. package/dist/index.js.map +1 -1
  10. package/examples/README.md +13 -1
  11. package/examples/flow-order-complete.json +1 -2
  12. package/examples/flow-simple.json +1 -2
  13. package/examples/server-collect.json +4 -4
  14. package/package.json +14 -16
  15. package/dist/__tests__/bundle/bundler-helpers.test.d.ts +0 -2
  16. package/dist/__tests__/bundle/bundler-helpers.test.d.ts.map +0 -1
  17. package/dist/__tests__/bundle/bundler-helpers.test.js +0 -285
  18. package/dist/__tests__/bundle/bundler-helpers.test.js.map +0 -1
  19. package/dist/__tests__/bundle/bundler.test.d.ts +0 -2
  20. package/dist/__tests__/bundle/bundler.test.d.ts.map +0 -1
  21. package/dist/__tests__/bundle/bundler.test.js +0 -293
  22. package/dist/__tests__/bundle/bundler.test.js.map +0 -1
  23. package/dist/__tests__/bundle/programmatic.test.d.ts +0 -2
  24. package/dist/__tests__/bundle/programmatic.test.d.ts.map +0 -1
  25. package/dist/__tests__/bundle/programmatic.test.js +0 -150
  26. package/dist/__tests__/bundle/programmatic.test.js.map +0 -1
  27. package/dist/__tests__/bundle/serializer.test.d.ts +0 -2
  28. package/dist/__tests__/bundle/serializer.test.d.ts.map +0 -1
  29. package/dist/__tests__/bundle/serializer.test.js +0 -173
  30. package/dist/__tests__/bundle/serializer.test.js.map +0 -1
  31. package/dist/__tests__/bundle/template-engine.test.d.ts +0 -2
  32. package/dist/__tests__/bundle/template-engine.test.d.ts.map +0 -1
  33. package/dist/__tests__/bundle/template-engine.test.js +0 -107
  34. package/dist/__tests__/bundle/template-engine.test.js.map +0 -1
  35. package/dist/__tests__/cli-e2e.test.d.ts +0 -8
  36. package/dist/__tests__/cli-e2e.test.d.ts.map +0 -1
  37. package/dist/__tests__/cli-e2e.test.js +0 -130
  38. package/dist/__tests__/cli-e2e.test.js.map +0 -1
  39. package/dist/__tests__/cli.test.d.ts +0 -2
  40. package/dist/__tests__/cli.test.d.ts.map +0 -1
  41. package/dist/__tests__/cli.test.js +0 -180
  42. package/dist/__tests__/cli.test.js.map +0 -1
  43. package/dist/__tests__/config-loader.test.d.ts +0 -7
  44. package/dist/__tests__/config-loader.test.d.ts.map +0 -1
  45. package/dist/__tests__/config-loader.test.js +0 -416
  46. package/dist/__tests__/config-loader.test.js.map +0 -1
  47. package/dist/__tests__/core/build-cache.test.d.ts +0 -2
  48. package/dist/__tests__/core/build-cache.test.d.ts.map +0 -1
  49. package/dist/__tests__/core/build-cache.test.js +0 -55
  50. package/dist/__tests__/core/build-cache.test.js.map +0 -1
  51. package/dist/__tests__/core/cache-utils.test.d.ts +0 -2
  52. package/dist/__tests__/core/cache-utils.test.d.ts.map +0 -1
  53. package/dist/__tests__/core/cache-utils.test.js +0 -70
  54. package/dist/__tests__/core/cache-utils.test.js.map +0 -1
  55. package/dist/__tests__/core/config.test.d.ts +0 -2
  56. package/dist/__tests__/core/config.test.d.ts.map +0 -1
  57. package/dist/__tests__/core/config.test.js +0 -72
  58. package/dist/__tests__/core/config.test.js.map +0 -1
  59. package/dist/__tests__/core/logger.test.d.ts +0 -2
  60. package/dist/__tests__/core/logger.test.d.ts.map +0 -1
  61. package/dist/__tests__/core/logger.test.js +0 -53
  62. package/dist/__tests__/core/logger.test.js.map +0 -1
  63. package/dist/__tests__/integration/bundle-run.integration.test.d.ts +0 -8
  64. package/dist/__tests__/integration/bundle-run.integration.test.d.ts.map +0 -1
  65. package/dist/__tests__/integration/bundle-run.integration.test.js +0 -54
  66. package/dist/__tests__/integration/bundle-run.integration.test.js.map +0 -1
  67. package/dist/__tests__/push/push.test.d.ts +0 -7
  68. package/dist/__tests__/push/push.test.d.ts.map +0 -1
  69. package/dist/__tests__/push/push.test.js +0 -197
  70. package/dist/__tests__/push/push.test.js.map +0 -1
  71. package/dist/__tests__/simulate/env-loader.test.d.ts +0 -2
  72. package/dist/__tests__/simulate/env-loader.test.d.ts.map +0 -1
  73. package/dist/__tests__/simulate/env-loader.test.js +0 -47
  74. package/dist/__tests__/simulate/env-loader.test.js.map +0 -1
  75. package/dist/__tests__/simulate/node-executor.test.d.ts +0 -5
  76. package/dist/__tests__/simulate/node-executor.test.d.ts.map +0 -1
  77. package/dist/__tests__/simulate/node-executor.test.js +0 -25
  78. package/dist/__tests__/simulate/node-executor.test.js.map +0 -1
  79. package/dist/__tests__/simulate/server-simulate.integration.test.d.ts +0 -5
  80. package/dist/__tests__/simulate/server-simulate.integration.test.d.ts.map +0 -1
  81. package/dist/__tests__/simulate/server-simulate.integration.test.js +0 -59
  82. package/dist/__tests__/simulate/server-simulate.integration.test.js.map +0 -1
  83. package/dist/__tests__/smoke/production.smoke.test.d.ts +0 -8
  84. package/dist/__tests__/smoke/production.smoke.test.d.ts.map +0 -1
  85. package/dist/__tests__/smoke/production.smoke.test.js +0 -65
  86. package/dist/__tests__/smoke/production.smoke.test.js.map +0 -1
  87. package/dist/commands/bundle/bundler.d.ts +0 -14
  88. package/dist/commands/bundle/bundler.d.ts.map +0 -1
  89. package/dist/commands/bundle/bundler.js +0 -467
  90. package/dist/commands/bundle/bundler.js.map +0 -1
  91. package/dist/commands/bundle/index.d.ts +0 -57
  92. package/dist/commands/bundle/index.d.ts.map +0 -1
  93. package/dist/commands/bundle/index.js +0 -200
  94. package/dist/commands/bundle/index.js.map +0 -1
  95. package/dist/commands/bundle/package-manager.d.ts +0 -8
  96. package/dist/commands/bundle/package-manager.d.ts.map +0 -1
  97. package/dist/commands/bundle/package-manager.js +0 -197
  98. package/dist/commands/bundle/package-manager.js.map +0 -1
  99. package/dist/commands/bundle/serializer.d.ts +0 -23
  100. package/dist/commands/bundle/serializer.d.ts.map +0 -1
  101. package/dist/commands/bundle/serializer.js +0 -127
  102. package/dist/commands/bundle/serializer.js.map +0 -1
  103. package/dist/commands/bundle/stats.d.ts +0 -23
  104. package/dist/commands/bundle/stats.d.ts.map +0 -1
  105. package/dist/commands/bundle/stats.js +0 -52
  106. package/dist/commands/bundle/stats.js.map +0 -1
  107. package/dist/commands/bundle/template-engine.d.ts +0 -20
  108. package/dist/commands/bundle/template-engine.d.ts.map +0 -1
  109. package/dist/commands/bundle/template-engine.js +0 -54
  110. package/dist/commands/bundle/template-engine.js.map +0 -1
  111. package/dist/commands/cache.d.ts +0 -3
  112. package/dist/commands/cache.d.ts.map +0 -1
  113. package/dist/commands/cache.js +0 -44
  114. package/dist/commands/cache.js.map +0 -1
  115. package/dist/commands/push/index.d.ts +0 -7
  116. package/dist/commands/push/index.d.ts.map +0 -1
  117. package/dist/commands/push/index.js +0 -257
  118. package/dist/commands/push/index.js.map +0 -1
  119. package/dist/commands/push/types.d.ts +0 -21
  120. package/dist/commands/push/types.d.ts.map +0 -1
  121. package/dist/commands/push/types.js +0 -2
  122. package/dist/commands/push/types.js.map +0 -1
  123. package/dist/commands/run/__tests__/run.integration.test.d.ts +0 -8
  124. package/dist/commands/run/__tests__/run.integration.test.d.ts.map +0 -1
  125. package/dist/commands/run/__tests__/run.integration.test.js +0 -52
  126. package/dist/commands/run/__tests__/run.integration.test.js.map +0 -1
  127. package/dist/commands/run/__tests__/validators.test.d.ts +0 -2
  128. package/dist/commands/run/__tests__/validators.test.d.ts.map +0 -1
  129. package/dist/commands/run/__tests__/validators.test.js +0 -80
  130. package/dist/commands/run/__tests__/validators.test.js.map +0 -1
  131. package/dist/commands/run/execution.d.ts +0 -14
  132. package/dist/commands/run/execution.d.ts.map +0 -1
  133. package/dist/commands/run/execution.js +0 -37
  134. package/dist/commands/run/execution.js.map +0 -1
  135. package/dist/commands/run/index.d.ts +0 -39
  136. package/dist/commands/run/index.d.ts.map +0 -1
  137. package/dist/commands/run/index.js +0 -191
  138. package/dist/commands/run/index.js.map +0 -1
  139. package/dist/commands/run/types.d.ts +0 -60
  140. package/dist/commands/run/types.d.ts.map +0 -1
  141. package/dist/commands/run/types.js +0 -7
  142. package/dist/commands/run/types.js.map +0 -1
  143. package/dist/commands/run/utils.d.ts +0 -29
  144. package/dist/commands/run/utils.d.ts.map +0 -1
  145. package/dist/commands/run/utils.js +0 -52
  146. package/dist/commands/run/utils.js.map +0 -1
  147. package/dist/commands/run/validators.d.ts +0 -33
  148. package/dist/commands/run/validators.d.ts.map +0 -1
  149. package/dist/commands/run/validators.js +0 -58
  150. package/dist/commands/run/validators.js.map +0 -1
  151. package/dist/commands/simulate/env-loader.d.ts +0 -19
  152. package/dist/commands/simulate/env-loader.d.ts.map +0 -1
  153. package/dist/commands/simulate/env-loader.js +0 -46
  154. package/dist/commands/simulate/env-loader.js.map +0 -1
  155. package/dist/commands/simulate/index.d.ts +0 -48
  156. package/dist/commands/simulate/index.d.ts.map +0 -1
  157. package/dist/commands/simulate/index.js +0 -116
  158. package/dist/commands/simulate/index.js.map +0 -1
  159. package/dist/commands/simulate/jsdom-executor.d.ts +0 -37
  160. package/dist/commands/simulate/jsdom-executor.d.ts.map +0 -1
  161. package/dist/commands/simulate/jsdom-executor.js +0 -137
  162. package/dist/commands/simulate/jsdom-executor.js.map +0 -1
  163. package/dist/commands/simulate/node-executor.d.ts +0 -28
  164. package/dist/commands/simulate/node-executor.d.ts.map +0 -1
  165. package/dist/commands/simulate/node-executor.js +0 -94
  166. package/dist/commands/simulate/node-executor.js.map +0 -1
  167. package/dist/commands/simulate/simulator.d.ts +0 -14
  168. package/dist/commands/simulate/simulator.d.ts.map +0 -1
  169. package/dist/commands/simulate/simulator.js +0 -162
  170. package/dist/commands/simulate/simulator.js.map +0 -1
  171. package/dist/commands/simulate/tracker.d.ts +0 -30
  172. package/dist/commands/simulate/tracker.d.ts.map +0 -1
  173. package/dist/commands/simulate/tracker.js +0 -96
  174. package/dist/commands/simulate/tracker.js.map +0 -1
  175. package/dist/commands/simulate/types.d.ts +0 -18
  176. package/dist/commands/simulate/types.d.ts.map +0 -1
  177. package/dist/commands/simulate/types.js +0 -2
  178. package/dist/commands/simulate/types.js.map +0 -1
  179. package/dist/config/build-defaults.d.ts +0 -49
  180. package/dist/config/build-defaults.d.ts.map +0 -1
  181. package/dist/config/build-defaults.js +0 -72
  182. package/dist/config/build-defaults.js.map +0 -1
  183. package/dist/config/index.d.ts +0 -13
  184. package/dist/config/index.d.ts.map +0 -1
  185. package/dist/config/index.js +0 -15
  186. package/dist/config/index.js.map +0 -1
  187. package/dist/config/loader.d.ts +0 -81
  188. package/dist/config/loader.d.ts.map +0 -1
  189. package/dist/config/loader.js +0 -155
  190. package/dist/config/loader.js.map +0 -1
  191. package/dist/config/utils.d.ts +0 -114
  192. package/dist/config/utils.d.ts.map +0 -1
  193. package/dist/config/utils.js +0 -257
  194. package/dist/config/utils.js.map +0 -1
  195. package/dist/config/validators.d.ts +0 -52
  196. package/dist/config/validators.d.ts.map +0 -1
  197. package/dist/config/validators.js +0 -85
  198. package/dist/config/validators.js.map +0 -1
  199. package/dist/core/asset-resolver.d.ts +0 -34
  200. package/dist/core/asset-resolver.d.ts.map +0 -1
  201. package/dist/core/asset-resolver.js +0 -69
  202. package/dist/core/asset-resolver.js.map +0 -1
  203. package/dist/core/build-cache.d.ts +0 -23
  204. package/dist/core/build-cache.d.ts.map +0 -1
  205. package/dist/core/build-cache.js +0 -43
  206. package/dist/core/build-cache.js.map +0 -1
  207. package/dist/core/cache-utils.d.ts +0 -27
  208. package/dist/core/cache-utils.d.ts.map +0 -1
  209. package/dist/core/cache-utils.js +0 -60
  210. package/dist/core/cache-utils.js.map +0 -1
  211. package/dist/core/docker.d.ts +0 -99
  212. package/dist/core/docker.d.ts.map +0 -1
  213. package/dist/core/docker.js +0 -249
  214. package/dist/core/docker.js.map +0 -1
  215. package/dist/core/execution.d.ts +0 -34
  216. package/dist/core/execution.d.ts.map +0 -1
  217. package/dist/core/execution.js +0 -64
  218. package/dist/core/execution.js.map +0 -1
  219. package/dist/core/index.d.ts +0 -10
  220. package/dist/core/index.d.ts.map +0 -1
  221. package/dist/core/index.js +0 -10
  222. package/dist/core/index.js.map +0 -1
  223. package/dist/core/local-packages.d.ts +0 -19
  224. package/dist/core/local-packages.d.ts.map +0 -1
  225. package/dist/core/local-packages.js +0 -60
  226. package/dist/core/local-packages.js.map +0 -1
  227. package/dist/core/logger.d.ts +0 -28
  228. package/dist/core/logger.d.ts.map +0 -1
  229. package/dist/core/logger.js +0 -88
  230. package/dist/core/logger.js.map +0 -1
  231. package/dist/core/output.d.ts +0 -30
  232. package/dist/core/output.d.ts.map +0 -1
  233. package/dist/core/output.js +0 -46
  234. package/dist/core/output.js.map +0 -1
  235. package/dist/core/temp-manager.d.ts +0 -51
  236. package/dist/core/temp-manager.d.ts.map +0 -1
  237. package/dist/core/temp-manager.js +0 -73
  238. package/dist/core/temp-manager.js.map +0 -1
  239. package/dist/core/timer.d.ts +0 -14
  240. package/dist/core/timer.d.ts.map +0 -1
  241. package/dist/core/timer.js +0 -29
  242. package/dist/core/timer.js.map +0 -1
  243. package/dist/core/utils.d.ts +0 -10
  244. package/dist/core/utils.d.ts.map +0 -1
  245. package/dist/core/utils.js +0 -12
  246. package/dist/core/utils.js.map +0 -1
  247. package/dist/examples/.npm-cache/content-v2/sha512/0d/2d/7581c288670eaf8538ddd9df145b78756ce3be0791c6e0b9cd33429b3bae894525b9bda287a3cedffbcdd2c7b3107bafc03f2b0367eea489eee1cc042abb +0 -1
  248. package/dist/examples/.npm-cache/content-v2/sha512/12/20/bc4f5acca143809f7e07da1fdafb38137d93243de4d5b403e6e10b92d0d3a6e51eab24fe9dbc9d3ed1cd72e8f7a406085e99c422bb2c7d1166cf9f1f564e +0 -0
  249. package/dist/examples/.npm-cache/content-v2/sha512/22/ee/fb2695b01871c1d36946bdcfb49f1b520a57200d0a0b221b1e7d5f047ab38a8b2ab0e5f0e25a00acde1f3f2f9d24430a18f1092d438bc1a9e9891cc45f75 +0 -0
  250. package/dist/examples/.npm-cache/content-v2/sha512/24/89/da1ce6a61bca6de7e132f241a675c01c83738bf6b78af25b5cce01d3030361332b3fe938571e2b721f1555da9ddf930fdcf8c02f0471556071590e68cc09 +0 -0
  251. package/dist/examples/.npm-cache/content-v2/sha512/47/fd/c6be997da99228c3e279b95d4a46d6913947078a178f54ac71795a159f3513b1483232f4c2d0a1f403178bf9f96bb19615de32a9e2133e949880c6bc15e2 +0 -0
  252. package/dist/examples/.npm-cache/content-v2/sha512/4b/1c/c1cb7f8b32102071a89fef97158daa32080ebaedfbbd596880d2213d84e305abc76d2a95a412ded55c1c3d487adcb1ceff87fc2c85d7e2856ebd9d3f16f3 +0 -0
  253. package/dist/examples/.npm-cache/content-v2/sha512/6e/53/ff864769671f44f39d8a3bf904cd646535b745cc4824a8bb3189193b474678049f43b5178ba15cad7f0289046105e70f1565afc84e907120b35a466690fd +0 -1
  254. package/dist/examples/.npm-cache/content-v2/sha512/70/4c/4c8837d446965c5551b4ea527e95fa011744fb727581d82cf35bb5599ea0b57d18baa490f7af93ef9a16e8e45e5c0802737da20575f4056a4a5c9a3cd288 +0 -0
  255. package/dist/examples/.npm-cache/content-v2/sha512/96/ad/05de3bbb12d7de8ea353f962bdaea7d2eb44f707f2973462a6635daf537c67b46cca7764fed7d464fe62152c3f783a07aba1ceb35e09ad446bff05a4b466 +0 -1
  256. package/dist/examples/.npm-cache/content-v2/sha512/b5/20/52dde94e6cef7170f6089c64a4843e57be18be450d956f4e455905aed047ae6a368451c93035e6ac3ee59576b600f03f815afba0836b3a16e10a9aaca4ba +0 -1
  257. package/dist/examples/.npm-cache/content-v2/sha512/c7/a9/d166a1c39f97df312c59261319ba1cf9aac178bda0a0cb697d5ddd78bd8dd38ef1bf40017bcc8633c2049896c2d70696d9bff9280851f270792ff38bb3a0 +0 -1
  258. package/dist/examples/.npm-cache/content-v2/sha512/e0/d0/8c14083b633e6adbd3c6a93da5fc0f6bbd456c5512ef276920bedd8d85d551052adff992de977aff326616a211aaa2d6ddcc801149e9b7f914f566359b6a +0 -1
  259. package/dist/examples/.npm-cache/content-v2/sha512/e7/c5/06ad3fd79ac4f1031fe0b16ea5e54e232ca397bbcd7592c679021cbfb027276099f8c848f3f7a7691f0102ad53aa64f9141e61d729b037a678bd60440d17 +0 -1
  260. package/dist/examples/.npm-cache/content-v2/sha512/f3/28/d5d32329604ed7d471a4949105daa2cc98858cf24f45b0b97c41d0eb0d5a9fe7bf1f69c792161cc6693e4fc1b52e886ac41875ebfb8fe47fafe417ca3e6e +0 -0
  261. package/dist/examples/.npm-cache/index-v5/04/5a/2b5d7a7c407d85d746baa0f5c9388a333e35a717a8a0a81943daa6cb1364 +0 -3
  262. package/dist/examples/.npm-cache/index-v5/12/9a/eba560cbace295d8ee04cf283015377bd77b379e70968fb6bc407c7fc410 +0 -15
  263. package/dist/examples/.npm-cache/index-v5/2f/a2/7b047564b0ee21ac835ec609e89153dd6549be554d098584d5bfd19fe043 +0 -15
  264. package/dist/examples/.npm-cache/index-v5/32/8e/322d58dd8d1e000be248ada51385bf96288e56039de9feec1a4c6a467653 +0 -3
  265. package/dist/examples/.npm-cache/index-v5/57/93/d1d7cd1402e3e26468db03f2870822bb2c9018a506cdfb3b405f38cd3e1c +0 -3
  266. package/dist/examples/.npm-cache/index-v5/5d/f8/0a1f4fa7149e4ff33e09eb6aea41ac8d1730c868a5d3ace91f762698acff +0 -3
  267. package/dist/examples/.npm-cache/index-v5/69/a4/a92c72d838259b051cdf8e0acfb2bc680b6d4cfc642314a7836c3f7b2c50 +0 -15
  268. package/dist/examples/.npm-cache/index-v5/71/31/6da3423bb203f3de5eb16c942431073f89be2cfcb40058ec91dcb5ce0abc +0 -15
  269. package/dist/examples/.npm-cache/index-v5/7b/94/72b6bffa050d9ef52a558dd220663695bc606f756be0dfa196ef4f3913ba +0 -3
  270. package/dist/examples/.npm-cache/index-v5/85/9e/99e97fdd562517e56285337db91d1a8f2f416b8d631cf4d7d754fa671299 +0 -15
  271. package/dist/examples/.npm-cache/index-v5/92/4c/9416ada81a9b3c679539fd1ab53f8de3d41ff268f35eba7a194389a85b06 +0 -3
  272. package/dist/examples/.npm-cache/index-v5/c1/5a/13df76b218deed8a6ef12961116af5183db98c53fad1b922fd9edc075247 +0 -3
  273. package/dist/examples/.npm-cache/index-v5/cb/11/253c55410a8ab7c4a9ea9d6e1bf8ef1450a581da64c478074dfd82c8bff6 +0 -3
  274. package/dist/examples/.npm-cache/index-v5/d5/ae/b57fad3a62b5ba2dbdf24b042a9e7b70820f3db00e5a630f02e1fea020dc +0 -3
  275. package/dist/examples/.npm-cache/index-v5/d6/32/2f620f83c7d14451de98de8298c2408e05a16cc0829bd16c891ac19d7a67 +0 -3
  276. package/dist/examples/.npm-cache/index-v5/dd/b5/01dc7a3cd8b6a03a69aee9af500d51ae19cb0aa12631a4aafd152148b8e5 +0 -15
  277. package/dist/examples/.npm-cache/index-v5/e0/cf/6b862c15d74630d3871cd813d305210ab741311deb10baf8813014e0bc30 +0 -3
  278. package/dist/examples/.npm-cache/index-v5/e2/be/e880ccd35950a814d3c1dded34d3938ac61b15a195321dc51357f801aad4 +0 -15
  279. package/dist/examples/.npm-cache/index-v5/e5/1f/f4affe0b392cd03288f23cc03abcb274ff11a2c8f8965299de681914abb2 +0 -3
  280. package/dist/examples/.npm-cache/index-v5/f3/5b/9ebe450958ff0d7cc44ab0a00080cb8a3ff1389744b5eab5f97b68a6a6af +0 -3
  281. package/dist/examples/.npm-cache/index-v5/fb/c1/0de405e902866d53e7c30cf36a97dc2578838622b261816f44dc377c9a80 +0 -3
  282. package/dist/index.d.ts.map +0 -1
  283. package/dist/schemas/index.d.ts +0 -9
  284. package/dist/schemas/index.d.ts.map +0 -1
  285. package/dist/schemas/index.js +0 -9
  286. package/dist/schemas/index.js.map +0 -1
  287. package/dist/schemas/primitives.d.ts +0 -37
  288. package/dist/schemas/primitives.d.ts.map +0 -1
  289. package/dist/schemas/primitives.js +0 -43
  290. package/dist/schemas/primitives.js.map +0 -1
  291. package/dist/schemas/run.d.ts +0 -23
  292. package/dist/schemas/run.d.ts.map +0 -1
  293. package/dist/schemas/run.js +0 -20
  294. package/dist/schemas/run.js.map +0 -1
  295. package/dist/templates/server.hbs +0 -29
  296. package/dist/templates/web.hbs +0 -45
  297. package/dist/types/bundle.d.ts +0 -146
  298. package/dist/types/bundle.d.ts.map +0 -1
  299. package/dist/types/bundle.js +0 -10
  300. package/dist/types/bundle.js.map +0 -1
  301. package/dist/types/global.d.ts +0 -51
  302. package/dist/types/global.d.ts.map +0 -1
  303. package/dist/types/global.js +0 -30
  304. package/dist/types/global.js.map +0 -1
  305. package/dist/types/index.d.ts +0 -8
  306. package/dist/types/index.d.ts.map +0 -1
  307. package/dist/types/index.js +0 -8
  308. package/dist/types/index.js.map +0 -1
  309. package/dist/types/template.d.ts +0 -108
  310. package/dist/types/template.d.ts.map +0 -1
  311. package/dist/types/template.js +0 -10
  312. package/dist/types/template.js.map +0 -1
  313. package/dist/walker.js +0 -1
  314. package/examples/.npm-cache/content-v2/sha512/0d/2d/7581c288670eaf8538ddd9df145b78756ce3be0791c6e0b9cd33429b3bae894525b9bda287a3cedffbcdd2c7b3107bafc03f2b0367eea489eee1cc042abb +0 -1
  315. package/examples/.npm-cache/content-v2/sha512/12/20/bc4f5acca143809f7e07da1fdafb38137d93243de4d5b403e6e10b92d0d3a6e51eab24fe9dbc9d3ed1cd72e8f7a406085e99c422bb2c7d1166cf9f1f564e +0 -0
  316. package/examples/.npm-cache/content-v2/sha512/22/ee/fb2695b01871c1d36946bdcfb49f1b520a57200d0a0b221b1e7d5f047ab38a8b2ab0e5f0e25a00acde1f3f2f9d24430a18f1092d438bc1a9e9891cc45f75 +0 -0
  317. package/examples/.npm-cache/content-v2/sha512/24/89/da1ce6a61bca6de7e132f241a675c01c83738bf6b78af25b5cce01d3030361332b3fe938571e2b721f1555da9ddf930fdcf8c02f0471556071590e68cc09 +0 -0
  318. package/examples/.npm-cache/content-v2/sha512/47/fd/c6be997da99228c3e279b95d4a46d6913947078a178f54ac71795a159f3513b1483232f4c2d0a1f403178bf9f96bb19615de32a9e2133e949880c6bc15e2 +0 -0
  319. package/examples/.npm-cache/content-v2/sha512/4b/1c/c1cb7f8b32102071a89fef97158daa32080ebaedfbbd596880d2213d84e305abc76d2a95a412ded55c1c3d487adcb1ceff87fc2c85d7e2856ebd9d3f16f3 +0 -0
  320. package/examples/.npm-cache/content-v2/sha512/6e/53/ff864769671f44f39d8a3bf904cd646535b745cc4824a8bb3189193b474678049f43b5178ba15cad7f0289046105e70f1565afc84e907120b35a466690fd +0 -1
  321. package/examples/.npm-cache/content-v2/sha512/70/4c/4c8837d446965c5551b4ea527e95fa011744fb727581d82cf35bb5599ea0b57d18baa490f7af93ef9a16e8e45e5c0802737da20575f4056a4a5c9a3cd288 +0 -0
  322. package/examples/.npm-cache/content-v2/sha512/96/ad/05de3bbb12d7de8ea353f962bdaea7d2eb44f707f2973462a6635daf537c67b46cca7764fed7d464fe62152c3f783a07aba1ceb35e09ad446bff05a4b466 +0 -1
  323. package/examples/.npm-cache/content-v2/sha512/b5/20/52dde94e6cef7170f6089c64a4843e57be18be450d956f4e455905aed047ae6a368451c93035e6ac3ee59576b600f03f815afba0836b3a16e10a9aaca4ba +0 -1
  324. package/examples/.npm-cache/content-v2/sha512/c7/a9/d166a1c39f97df312c59261319ba1cf9aac178bda0a0cb697d5ddd78bd8dd38ef1bf40017bcc8633c2049896c2d70696d9bff9280851f270792ff38bb3a0 +0 -1
  325. package/examples/.npm-cache/content-v2/sha512/e0/d0/8c14083b633e6adbd3c6a93da5fc0f6bbd456c5512ef276920bedd8d85d551052adff992de977aff326616a211aaa2d6ddcc801149e9b7f914f566359b6a +0 -1
  326. package/examples/.npm-cache/content-v2/sha512/e7/c5/06ad3fd79ac4f1031fe0b16ea5e54e232ca397bbcd7592c679021cbfb027276099f8c848f3f7a7691f0102ad53aa64f9141e61d729b037a678bd60440d17 +0 -1
  327. package/examples/.npm-cache/content-v2/sha512/f3/28/d5d32329604ed7d471a4949105daa2cc98858cf24f45b0b97c41d0eb0d5a9fe7bf1f69c792161cc6693e4fc1b52e886ac41875ebfb8fe47fafe417ca3e6e +0 -0
  328. package/examples/.npm-cache/index-v5/04/5a/2b5d7a7c407d85d746baa0f5c9388a333e35a717a8a0a81943daa6cb1364 +0 -3
  329. package/examples/.npm-cache/index-v5/12/9a/eba560cbace295d8ee04cf283015377bd77b379e70968fb6bc407c7fc410 +0 -15
  330. package/examples/.npm-cache/index-v5/2f/a2/7b047564b0ee21ac835ec609e89153dd6549be554d098584d5bfd19fe043 +0 -15
  331. package/examples/.npm-cache/index-v5/32/8e/322d58dd8d1e000be248ada51385bf96288e56039de9feec1a4c6a467653 +0 -3
  332. package/examples/.npm-cache/index-v5/57/93/d1d7cd1402e3e26468db03f2870822bb2c9018a506cdfb3b405f38cd3e1c +0 -3
  333. package/examples/.npm-cache/index-v5/5d/f8/0a1f4fa7149e4ff33e09eb6aea41ac8d1730c868a5d3ace91f762698acff +0 -3
  334. package/examples/.npm-cache/index-v5/69/a4/a92c72d838259b051cdf8e0acfb2bc680b6d4cfc642314a7836c3f7b2c50 +0 -15
  335. package/examples/.npm-cache/index-v5/71/31/6da3423bb203f3de5eb16c942431073f89be2cfcb40058ec91dcb5ce0abc +0 -15
  336. package/examples/.npm-cache/index-v5/7b/94/72b6bffa050d9ef52a558dd220663695bc606f756be0dfa196ef4f3913ba +0 -3
  337. package/examples/.npm-cache/index-v5/85/9e/99e97fdd562517e56285337db91d1a8f2f416b8d631cf4d7d754fa671299 +0 -15
  338. package/examples/.npm-cache/index-v5/92/4c/9416ada81a9b3c679539fd1ab53f8de3d41ff268f35eba7a194389a85b06 +0 -3
  339. package/examples/.npm-cache/index-v5/c1/5a/13df76b218deed8a6ef12961116af5183db98c53fad1b922fd9edc075247 +0 -3
  340. package/examples/.npm-cache/index-v5/cb/11/253c55410a8ab7c4a9ea9d6e1bf8ef1450a581da64c478074dfd82c8bff6 +0 -3
  341. package/examples/.npm-cache/index-v5/d5/ae/b57fad3a62b5ba2dbdf24b042a9e7b70820f3db00e5a630f02e1fea020dc +0 -3
  342. package/examples/.npm-cache/index-v5/d6/32/2f620f83c7d14451de98de8298c2408e05a16cc0829bd16c891ac19d7a67 +0 -3
  343. package/examples/.npm-cache/index-v5/dd/b5/01dc7a3cd8b6a03a69aee9af500d51ae19cb0aa12631a4aafd152148b8e5 +0 -15
  344. package/examples/.npm-cache/index-v5/e0/cf/6b862c15d74630d3871cd813d305210ab741311deb10baf8813014e0bc30 +0 -3
  345. package/examples/.npm-cache/index-v5/e2/be/e880ccd35950a814d3c1dded34d3938ac61b15a195321dc51357f801aad4 +0 -15
  346. package/examples/.npm-cache/index-v5/e5/1f/f4affe0b392cd03288f23cc03abcb274ff11a2c8f8965299de681914abb2 +0 -3
  347. package/examples/.npm-cache/index-v5/f3/5b/9ebe450958ff0d7cc44ab0a00080cb8a3ff1389744b5eab5f97b68a6a6af +0 -3
  348. package/examples/.npm-cache/index-v5/fb/c1/0de405e902866d53e7c30cf36a97dc2578838622b261816f44dc377c9a80 +0 -3
  349. package/templates/server.hbs +0 -29
  350. package/templates/web.hbs +0 -45
@@ -1 +0,0 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/commands/run/validators.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EACL,aAAa,EACb,UAAU,GAEX,MAAM,wBAAwB,CAAC;AAEhC;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,kBAAkB,IAAI,KAAK;YACzB,kCAAkC;YAClC,8CAA8C,CACjD,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,8EAA8E;IAC9E,MAAM,YAAY,GAAG,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAEtD,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,wBAAwB,QAAQ,IAAI;YAClC,qBAAqB,YAAY,IAAI;YACrC,sDAAsD,CACzD,CAAC;IACJ,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,iBAAiB,IAAI,IAAI;YACvB,kDAAkD;YAClD,yBAAyB,CAC5B,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -1,19 +0,0 @@
1
- interface DestinationEnv {
2
- init?: Record<string, unknown>;
3
- push: Record<string, unknown>;
4
- simulation?: string[];
5
- }
6
- /**
7
- * Dynamically loads env examples from destination packages.
8
- *
9
- * Imports from `/dev` subpath (e.g., '@walkeros/web-destination-gtag/dev')
10
- * and extracts the `env` object which contains:
11
- * - push: Mock environment with API functions (gtag, fbq, etc.)
12
- * - simulation: Array of tracking paths for call verification
13
- *
14
- * @param destinations - Destination configuration from flow config
15
- * @returns Map of destination key to env object
16
- */
17
- export declare function loadDestinationEnvs(destinations: Record<string, unknown>): Promise<Record<string, DestinationEnv>>;
18
- export {};
19
- //# sourceMappingURL=env-loader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"env-loader.d.ts","sourceRoot":"","sources":["../../../src/commands/simulate/env-loader.ts"],"names":[],"mappings":"AAAA,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAOD;;;;;;;;;;GAUG;AACH,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAyCzC"}
@@ -1,46 +0,0 @@
1
- /**
2
- * Dynamically loads env examples from destination packages.
3
- *
4
- * Imports from `/dev` subpath (e.g., '@walkeros/web-destination-gtag/dev')
5
- * and extracts the `env` object which contains:
6
- * - push: Mock environment with API functions (gtag, fbq, etc.)
7
- * - simulation: Array of tracking paths for call verification
8
- *
9
- * @param destinations - Destination configuration from flow config
10
- * @returns Map of destination key to env object
11
- */
12
- export async function loadDestinationEnvs(destinations) {
13
- const envs = {};
14
- for (const [destKey, destConfig] of Object.entries(destinations)) {
15
- const typedConfig = destConfig;
16
- // Skip if no package field
17
- if (!typedConfig.package) {
18
- continue;
19
- }
20
- try {
21
- // Determine import path
22
- const packageName = typedConfig.package;
23
- const isDemoPackage = packageName.includes('-demo');
24
- const importPath = isDemoPackage ? packageName : `${packageName}/dev`;
25
- // Dynamic import
26
- const module = await import(importPath);
27
- // Extract env from examples
28
- const examplesModule = module.examples || module.default?.examples;
29
- const envModule = examplesModule?.env;
30
- if (envModule?.push) {
31
- envs[destKey] = {
32
- init: envModule.init,
33
- push: envModule.push,
34
- simulation: envModule.simulation || [],
35
- };
36
- }
37
- }
38
- catch (error) {
39
- // Silently skip destinations without env or invalid packages
40
- // eslint-disable-next-line no-console
41
- console.warn(`Warning: Could not load env for destination "${destKey}": ${error instanceof Error ? error.message : String(error)}`);
42
- }
43
- }
44
- return envs;
45
- }
46
- //# sourceMappingURL=env-loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"env-loader.js","sourceRoot":"","sources":["../../../src/commands/simulate/env-loader.ts"],"names":[],"mappings":"AAWA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,YAAqC;IAErC,MAAM,IAAI,GAAmC,EAAE,CAAC;IAEhD,KAAK,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QACjE,MAAM,WAAW,GAAG,UAA+B,CAAC;QAEpD,2BAA2B;QAC3B,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,SAAS;QACX,CAAC;QAED,IAAI,CAAC;YACH,wBAAwB;YACxB,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC;YACxC,MAAM,aAAa,GAAG,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACpD,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,MAAM,CAAC;YAEtE,iBAAiB;YACjB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;YAExC,4BAA4B;YAC5B,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC;YACnE,MAAM,SAAS,GAAG,cAAc,EAAE,GAAG,CAAC;YAEtC,IAAI,SAAS,EAAE,IAAI,EAAE,CAAC;gBACpB,IAAI,CAAC,OAAO,CAAC,GAAG;oBACd,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,EAAE;iBACvC,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,6DAA6D;YAC7D,sCAAsC;YACtC,OAAO,CAAC,IAAI,CACV,gDAAgD,OAAO,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACtH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,48 +0,0 @@
1
- import type { SimulateCommandOptions } from './types.js';
2
- /**
3
- * CLI command handler for simulate command
4
- */
5
- export declare function simulateCommand(options: SimulateCommandOptions): Promise<void>;
6
- /**
7
- * High-level simulate function for programmatic usage.
8
- *
9
- * Handles configuration loading internally and returns structured results.
10
- *
11
- * @param configOrPath - Bundle configuration object or path to config file
12
- * @param event - Event object to simulate
13
- * @param options - Simulation options
14
- * @param options.silent - Suppress all output (default: false)
15
- * @param options.verbose - Enable verbose logging (default: false)
16
- * @param options.json - Format output as JSON (default: false)
17
- * @returns Simulation result with success status, elb result, and usage data
18
- *
19
- * @example
20
- * ```typescript
21
- * // With config file
22
- * const result = await simulate('./walker.config.json', {
23
- * name: 'page view',
24
- * data: { title: 'Home Page', path: '/', url: 'https://example.com' }
25
- * });
26
- *
27
- * // With config object
28
- * const result = await simulate(
29
- * {
30
- * platform: 'web',
31
- * packages: { '@walkeros/collector': { imports: ['startFlow'] } },
32
- * code: '...',
33
- * output: './bundle.js'
34
- * },
35
- * { name: 'page view' },
36
- * { silent: true }
37
- * );
38
- * ```
39
- */
40
- export declare function simulate(configOrPath: string | unknown, event: unknown, options?: {
41
- silent?: boolean;
42
- verbose?: boolean;
43
- json?: boolean;
44
- }): Promise<import('./types').SimulationResult>;
45
- export * from './types.js';
46
- export * from './simulator.js';
47
- export { executeInNode } from './node-executor.js';
48
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/simulate/index.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEzD;;GAEG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAyEf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAsB,QAAQ,CAC5B,YAAY,EAAE,MAAM,GAAG,OAAO,EAC9B,KAAK,EAAE,OAAO,EACd,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;CACX,GACL,OAAO,CAAC,OAAO,SAAS,EAAE,gBAAgB,CAAC,CAgB7C;AAGD,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,116 +0,0 @@
1
- import { simulateCore, formatSimulationResult } from './simulator.js';
2
- import { createCommandLogger, createLogger, executeCommand, getErrorMessage, buildCommonDockerArgs, } from '../../core/index.js';
3
- import { loadJsonFromSource } from '../../config/index.js';
4
- /**
5
- * CLI command handler for simulate command
6
- */
7
- export async function simulateCommand(options) {
8
- const logger = createCommandLogger(options);
9
- // Build Docker args - start with common flags
10
- const dockerArgs = buildCommonDockerArgs(options);
11
- // Add simulate-specific flag
12
- if (options.event)
13
- dockerArgs.push('--event', options.event);
14
- await executeCommand(async () => {
15
- const startTime = Date.now();
16
- try {
17
- // Load event from inline JSON, file path, or URL
18
- const event = await loadJsonFromSource(options.event, {
19
- name: 'event',
20
- });
21
- // Execute simulation
22
- const result = await simulateCore(options.config, event, {
23
- json: options.json,
24
- verbose: options.verbose,
25
- silent: options.silent,
26
- });
27
- // Add duration to result
28
- const resultWithDuration = {
29
- ...result,
30
- duration: (Date.now() - startTime) / 1000,
31
- };
32
- // Output results - create output logger that always logs
33
- const outputLogger = createLogger({ silent: false, json: false });
34
- const output = formatSimulationResult(resultWithDuration, {
35
- json: options.json,
36
- });
37
- outputLogger.log('white', output);
38
- // Exit with error code if simulation failed
39
- if (!result.success) {
40
- process.exit(1);
41
- }
42
- }
43
- catch (error) {
44
- const errorMessage = getErrorMessage(error);
45
- if (options.json) {
46
- // JSON error output - create output logger that always logs
47
- const outputLogger = createLogger({ silent: false, json: false });
48
- const errorOutput = JSON.stringify({
49
- success: false,
50
- error: errorMessage,
51
- duration: (Date.now() - startTime) / 1000,
52
- }, null, 2);
53
- outputLogger.log('white', errorOutput);
54
- }
55
- else {
56
- // Error output - create error logger that always logs
57
- const errorLogger = createLogger({ silent: false, json: false });
58
- errorLogger.error(`❌ Simulate command failed: ${errorMessage}`);
59
- }
60
- process.exit(1);
61
- }
62
- }, 'simulate', dockerArgs, options, logger, options.config);
63
- }
64
- /**
65
- * High-level simulate function for programmatic usage.
66
- *
67
- * Handles configuration loading internally and returns structured results.
68
- *
69
- * @param configOrPath - Bundle configuration object or path to config file
70
- * @param event - Event object to simulate
71
- * @param options - Simulation options
72
- * @param options.silent - Suppress all output (default: false)
73
- * @param options.verbose - Enable verbose logging (default: false)
74
- * @param options.json - Format output as JSON (default: false)
75
- * @returns Simulation result with success status, elb result, and usage data
76
- *
77
- * @example
78
- * ```typescript
79
- * // With config file
80
- * const result = await simulate('./walker.config.json', {
81
- * name: 'page view',
82
- * data: { title: 'Home Page', path: '/', url: 'https://example.com' }
83
- * });
84
- *
85
- * // With config object
86
- * const result = await simulate(
87
- * {
88
- * platform: 'web',
89
- * packages: { '@walkeros/collector': { imports: ['startFlow'] } },
90
- * code: '...',
91
- * output: './bundle.js'
92
- * },
93
- * { name: 'page view' },
94
- * { silent: true }
95
- * );
96
- * ```
97
- */
98
- export async function simulate(configOrPath, event, options = {}) {
99
- // simulateCore currently only accepts file paths, so we need to handle that
100
- // For now, if configOrPath is not a string, throw an error with guidance
101
- if (typeof configOrPath !== 'string') {
102
- throw new Error('simulate() currently only supports config file paths. ' +
103
- 'Config object support will be added in a future version. ' +
104
- 'Please provide a path to a configuration file.');
105
- }
106
- // Call core simulator
107
- return await simulateCore(configOrPath, event, {
108
- json: options.json ?? false,
109
- verbose: options.verbose ?? false,
110
- });
111
- }
112
- // Re-export types and utilities for testing
113
- export * from './types.js';
114
- export * from './simulator.js';
115
- export { executeInNode } from './node-executor.js';
116
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/simulate/index.ts"],"names":[],"mappings":"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"}
@@ -1,37 +0,0 @@
1
- /**
2
- * JSDOM-based executor for simulating IIFE bundles
3
- *
4
- * Executes actual production IIFE bundles in a virtual DOM environment
5
- * with env-based mocking from destination examples.
6
- */
7
- import type { Elb } from '@walkeros/core';
8
- import type { CallTracker, ApiCall } from './tracker.js';
9
- export interface ExecutionResult {
10
- collector: unknown;
11
- elb: unknown;
12
- elbResult: Elb.PushResult | undefined;
13
- usage: Record<string, ApiCall[]>;
14
- duration: number;
15
- }
16
- interface DestinationEnv {
17
- init?: Record<string, unknown>;
18
- push: Record<string, unknown>;
19
- simulation?: string[];
20
- }
21
- /**
22
- * Execute production IIFE bundle in JSDOM with env-based mocking
23
- *
24
- * Main orchestration function that:
25
- * 1. Creates JSDOM virtual DOM
26
- * 2. Builds sandbox from dynamically loaded envs
27
- * 3. Executes IIFE in JSDOM
28
- * 4. Waits for window.collector/elb assignment
29
- * 5. Runs event through elb
30
- * 6. Returns tracked API calls
31
- */
32
- export declare function executeInJSDOM(bundlePath: string, destinations: Record<string, unknown>, event: {
33
- name: string;
34
- data?: unknown;
35
- }, tracker: CallTracker, envs: Record<string, DestinationEnv>, timeout?: number): Promise<ExecutionResult>;
36
- export {};
37
- //# sourceMappingURL=jsdom-executor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jsdom-executor.d.ts","sourceRoot":"","sources":["../../../src/commands/simulate/jsdom-executor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEzD,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,EAAE,OAAO,CAAC;IACb,SAAS,EAAE,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC;IACtC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AA2FD;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,EACvC,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,EACpC,OAAO,GAAE,MAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CAsE1B"}
@@ -1,137 +0,0 @@
1
- /**
2
- * JSDOM-based executor for simulating IIFE bundles
3
- *
4
- * Executes actual production IIFE bundles in a virtual DOM environment
5
- * with env-based mocking from destination examples.
6
- */
7
- import { JSDOM, VirtualConsole } from 'jsdom';
8
- import fs from 'fs-extra';
9
- import { getErrorMessage } from '../../core/index.js';
10
- /**
11
- * Build sandbox from destination-provided envs
12
- *
13
- * Merges env mocks from each destination's envs, wrapping
14
- * specified paths with CallTracker for API call tracking.
15
- */
16
- function buildSandboxFromEnvs(envs, destinations, tracker) {
17
- // Base browser APIs (not provided by destinations)
18
- const baseBrowserMocks = {
19
- Image: class MockImage {
20
- src = '';
21
- onload = (() => { });
22
- onerror = (() => { });
23
- },
24
- fetch: async () => ({ ok: true, json: async () => ({}) }),
25
- location: { href: 'http://localhost' },
26
- navigator: { userAgent: 'Mozilla/5.0 (walkerOS Simulation)' },
27
- };
28
- const sandbox = {
29
- window: { ...baseBrowserMocks },
30
- document: {},
31
- };
32
- // Add destination-specific env mocks
33
- for (const [destKey, destConfig] of Object.entries(destinations)) {
34
- const destEnv = envs[destKey];
35
- if (!destEnv?.push)
36
- continue;
37
- const mockEnv = destEnv.push;
38
- const trackPaths = destEnv.simulation || [];
39
- // Use existing CallTracker to wrap env
40
- const trackedEnv = tracker.wrapEnv(mockEnv, trackPaths.map((p) => `${destKey}:${p}`));
41
- // Merge window properties
42
- if (trackedEnv.window && typeof trackedEnv.window === 'object') {
43
- Object.assign(sandbox.window, trackedEnv.window);
44
- }
45
- // Merge document properties
46
- if (trackedEnv.document && typeof trackedEnv.document === 'object') {
47
- Object.assign(sandbox.document, trackedEnv.document);
48
- }
49
- }
50
- return sandbox;
51
- }
52
- /**
53
- * Wait for async window property assignment
54
- *
55
- * IIFE bundles execute asynchronously and assign to window.
56
- * This helper polls until the property appears or timeout occurs.
57
- */
58
- function waitForWindowProperty(window, prop, timeout = 5000) {
59
- return new Promise((resolve, reject) => {
60
- const start = Date.now();
61
- const check = () => {
62
- if (window[prop] !== undefined) {
63
- resolve();
64
- }
65
- else if (Date.now() - start > timeout) {
66
- reject(new Error(`Timeout waiting for window.${prop}. ` +
67
- `IIFE may have failed to execute or assign to window.`));
68
- }
69
- else {
70
- setImmediate(check);
71
- }
72
- };
73
- check();
74
- });
75
- }
76
- /**
77
- * Execute production IIFE bundle in JSDOM with env-based mocking
78
- *
79
- * Main orchestration function that:
80
- * 1. Creates JSDOM virtual DOM
81
- * 2. Builds sandbox from dynamically loaded envs
82
- * 3. Executes IIFE in JSDOM
83
- * 4. Waits for window.collector/elb assignment
84
- * 5. Runs event through elb
85
- * 6. Returns tracked API calls
86
- */
87
- export async function executeInJSDOM(bundlePath, destinations, event, tracker, envs, timeout = 10000) {
88
- const start = Date.now();
89
- // 1. Create JSDOM virtual DOM with console suppression
90
- const virtualConsole = new VirtualConsole();
91
- // Silent mode - don't pipe console output to process stdout/stderr
92
- const dom = new JSDOM('<!DOCTYPE html><html><body></body></html>', {
93
- url: 'http://localhost',
94
- runScripts: 'dangerously', // Allow script execution
95
- resources: 'usable',
96
- virtualConsole,
97
- });
98
- const { window } = dom;
99
- // 2. Build sandbox from dynamically loaded envs and inject into window
100
- const sandbox = buildSandboxFromEnvs(envs, destinations, tracker);
101
- Object.assign(window, sandbox.window);
102
- Object.assign(window.document, sandbox.document);
103
- // 3. Load and execute bundle code
104
- const bundleCode = await fs.readFile(bundlePath, 'utf8');
105
- try {
106
- window.eval(bundleCode);
107
- }
108
- catch (error) {
109
- throw new Error(`Bundle execution failed: ${getErrorMessage(error)}`);
110
- }
111
- // 4. Wait for window.collector and window.elb assignments
112
- try {
113
- await waitForWindowProperty(window, 'collector', timeout);
114
- await waitForWindowProperty(window, 'elb', timeout);
115
- }
116
- catch (error) {
117
- throw new Error(`Window property assignment failed: ${getErrorMessage(error)}`);
118
- }
119
- const { collector, elb } = window;
120
- // 5. Run event through elb
121
- let elbResult;
122
- try {
123
- elbResult = (await elb(event.name, event.data));
124
- }
125
- catch (error) {
126
- throw new Error(`Event execution failed: ${getErrorMessage(error)}`);
127
- }
128
- // 6. Return results with tracked calls
129
- return {
130
- collector,
131
- elb,
132
- elbResult,
133
- usage: tracker.getCalls(),
134
- duration: Date.now() - start,
135
- };
136
- }
137
- //# sourceMappingURL=jsdom-executor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jsdom-executor.js","sourceRoot":"","sources":["../../../src/commands/simulate/jsdom-executor.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- /**
2
- * Node.js-based executor for simulating ESM server bundles
3
- *
4
- * Executes server bundles via dynamic import with env-based mocking.
5
- */
6
- import type { Elb } from '@walkeros/core';
7
- import type { CallTracker, ApiCall } from './tracker.js';
8
- export interface ExecutionResult {
9
- collector: unknown;
10
- elb: unknown;
11
- elbResult: Elb.PushResult | undefined;
12
- usage: Record<string, ApiCall[]>;
13
- duration: number;
14
- }
15
- interface DestinationEnv {
16
- init?: Record<string, unknown>;
17
- push: Record<string, unknown>;
18
- simulation?: string[];
19
- }
20
- /**
21
- * Execute server ESM bundle in Node.js with env-based mocking
22
- */
23
- export declare function executeInNode(bundlePath: string, destinations: Record<string, unknown>, event: {
24
- name: string;
25
- data?: unknown;
26
- }, tracker: CallTracker, envs: Record<string, DestinationEnv>, timeout?: number): Promise<ExecutionResult>;
27
- export {};
28
- //# sourceMappingURL=node-executor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node-executor.d.ts","sourceRoot":"","sources":["../../../src/commands/simulate/node-executor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEzD,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,EAAE,OAAO,CAAC;IACb,SAAS,EAAE,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC;IACtC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAoDD;;GAEG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,EACvC,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,EACpC,OAAO,GAAE,MAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CA6D1B"}
@@ -1,94 +0,0 @@
1
- /**
2
- * Node.js-based executor for simulating ESM server bundles
3
- *
4
- * Executes server bundles via dynamic import with env-based mocking.
5
- */
6
- import { pathToFileURL } from 'url';
7
- import { getErrorMessage } from '../../core/index.js';
8
- /**
9
- * Build global mocks from destination-provided envs
10
- */
11
- function buildGlobalMocksFromEnvs(envs, destinations, tracker) {
12
- const globalMocks = {};
13
- for (const [destKey] of Object.entries(destinations)) {
14
- const destEnv = envs[destKey];
15
- if (!destEnv?.push)
16
- continue;
17
- const mockEnv = destEnv.push;
18
- const trackPaths = destEnv.simulation || [];
19
- const trackedEnv = tracker.wrapEnv(mockEnv, trackPaths.map((p) => `${destKey}:${p}`));
20
- Object.assign(globalMocks, trackedEnv);
21
- }
22
- return globalMocks;
23
- }
24
- /**
25
- * Inject mocks into global scope and return cleanup function
26
- */
27
- function injectGlobalMocks(mocks) {
28
- const originalValues = {};
29
- for (const [key, value] of Object.entries(mocks)) {
30
- originalValues[key] = globalThis[key];
31
- globalThis[key] = value;
32
- }
33
- return () => {
34
- for (const [key, value] of Object.entries(originalValues)) {
35
- if (value === undefined) {
36
- delete globalThis[key];
37
- }
38
- else {
39
- globalThis[key] = value;
40
- }
41
- }
42
- };
43
- }
44
- /**
45
- * Execute server ESM bundle in Node.js with env-based mocking
46
- */
47
- export async function executeInNode(bundlePath, destinations, event, tracker, envs, timeout = 30000) {
48
- const start = Date.now();
49
- const globalMocks = buildGlobalMocksFromEnvs(envs, destinations, tracker);
50
- const cleanupMocks = injectGlobalMocks(globalMocks);
51
- try {
52
- const executeWithTimeout = async () => {
53
- // Jest has issues with file:// URLs in dynamic imports, use path directly
54
- // Outside Jest, use file:// URL with cache-busting to prevent module caching
55
- const importUrl = process.env.JEST_WORKER_ID
56
- ? bundlePath
57
- : `${pathToFileURL(bundlePath).href}?t=${Date.now()}`;
58
- const module = await import(importUrl);
59
- if (!module.default || typeof module.default !== 'function') {
60
- throw new Error('Bundle does not export default factory function');
61
- }
62
- const result = await module.default();
63
- if (!result || !result.elb || typeof result.elb !== 'function') {
64
- throw new Error('Factory function did not return valid result with elb');
65
- }
66
- const { collector, elb } = result;
67
- let elbResult;
68
- try {
69
- elbResult = (await elb(event.name, event.data));
70
- }
71
- catch (error) {
72
- throw new Error(`Event execution failed: ${getErrorMessage(error)}`);
73
- }
74
- return {
75
- collector,
76
- elb,
77
- elbResult,
78
- usage: tracker.getCalls(),
79
- duration: Date.now() - start,
80
- };
81
- };
82
- const timeoutPromise = new Promise((_, reject) => {
83
- setTimeout(() => reject(new Error(`Server simulation timeout after ${timeout}ms`)), timeout);
84
- });
85
- return await Promise.race([executeWithTimeout(), timeoutPromise]);
86
- }
87
- catch (error) {
88
- throw new Error(`Node execution failed: ${getErrorMessage(error)}`);
89
- }
90
- finally {
91
- cleanupMocks();
92
- }
93
- }
94
- //# sourceMappingURL=node-executor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node-executor.js","sourceRoot":"","sources":["../../../src/commands/simulate/node-executor.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import type { SimulateCommandOptions, SimulationResult } from './types.js';
2
- /**
3
- * Main simulation orchestrator
4
- */
5
- export declare function simulateCore(configPath: string, event: unknown, options?: Pick<SimulateCommandOptions, 'json' | 'verbose' | 'silent'>): Promise<SimulationResult>;
6
- /**
7
- * Simple result formatting
8
- */
9
- export declare function formatSimulationResult(result: SimulationResult, options?: Pick<SimulateCommandOptions, 'json'>): string;
10
- /**
11
- * Execute simulation using destination-provided mock environments
12
- */
13
- export declare function executeSimulation(event: unknown, configPath: string): Promise<SimulationResult>;
14
- //# sourceMappingURL=simulator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"simulator.d.ts","sourceRoot":"","sources":["../../../src/commands/simulate/simulator.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAS3E;;GAEG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,IAAI,CAAC,sBAAsB,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAM,GACxE,OAAO,CAAC,gBAAgB,CAAC,CAqC3B;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,gBAAgB,EACxB,OAAO,GAAE,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAM,GACjD,MAAM,CAeR;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,CAAC,CA6H3B"}