@walkeros/cli 0.4.0 → 0.4.2

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 (297) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +112 -42
  3. package/dist/__tests__/bundle/bundler-helpers.test.d.ts +2 -0
  4. package/dist/__tests__/bundle/bundler-helpers.test.d.ts.map +1 -0
  5. package/dist/__tests__/bundle/bundler-helpers.test.js +285 -0
  6. package/dist/__tests__/bundle/bundler-helpers.test.js.map +1 -0
  7. package/dist/__tests__/bundle/bundler.test.js +176 -166
  8. package/dist/__tests__/bundle/bundler.test.js.map +1 -1
  9. package/dist/__tests__/bundle/programmatic.test.js +77 -54
  10. package/dist/__tests__/bundle/programmatic.test.js.map +1 -1
  11. package/dist/__tests__/bundle/serializer.test.js +1 -1
  12. package/dist/__tests__/bundle/serializer.test.js.map +1 -1
  13. package/dist/__tests__/bundle/template-engine.test.js +1 -1
  14. package/dist/__tests__/bundle/template-engine.test.js.map +1 -1
  15. package/dist/__tests__/cli-e2e.test.js +1 -1
  16. package/dist/__tests__/cli-e2e.test.js.map +1 -1
  17. package/dist/__tests__/cli.test.js +60 -117
  18. package/dist/__tests__/cli.test.js.map +1 -1
  19. package/dist/__tests__/config-loader.test.d.ts +1 -1
  20. package/dist/__tests__/config-loader.test.js +234 -212
  21. package/dist/__tests__/config-loader.test.js.map +1 -1
  22. package/dist/__tests__/core/build-cache.test.d.ts +2 -0
  23. package/dist/__tests__/core/build-cache.test.d.ts.map +1 -0
  24. package/dist/__tests__/core/build-cache.test.js +55 -0
  25. package/dist/__tests__/core/build-cache.test.js.map +1 -0
  26. package/dist/__tests__/core/cache-utils.test.d.ts +2 -0
  27. package/dist/__tests__/core/cache-utils.test.d.ts.map +1 -0
  28. package/dist/__tests__/core/cache-utils.test.js +70 -0
  29. package/dist/__tests__/core/cache-utils.test.js.map +1 -0
  30. package/dist/__tests__/core/config.test.js +1 -1
  31. package/dist/__tests__/core/config.test.js.map +1 -1
  32. package/dist/__tests__/core/logger.test.js +1 -1
  33. package/dist/__tests__/core/logger.test.js.map +1 -1
  34. package/dist/__tests__/integration/bundle-run.integration.test.d.ts +8 -0
  35. package/dist/__tests__/integration/bundle-run.integration.test.d.ts.map +1 -0
  36. package/dist/__tests__/integration/bundle-run.integration.test.js +54 -0
  37. package/dist/__tests__/integration/bundle-run.integration.test.js.map +1 -0
  38. package/dist/__tests__/push/push.test.d.ts +7 -0
  39. package/dist/__tests__/push/push.test.d.ts.map +1 -0
  40. package/dist/__tests__/push/push.test.js +197 -0
  41. package/dist/__tests__/push/push.test.js.map +1 -0
  42. package/dist/__tests__/simulate/env-loader.test.d.ts +2 -0
  43. package/dist/__tests__/simulate/env-loader.test.d.ts.map +1 -0
  44. package/dist/__tests__/simulate/env-loader.test.js +47 -0
  45. package/dist/__tests__/simulate/env-loader.test.js.map +1 -0
  46. package/dist/__tests__/simulate/node-executor.test.d.ts +5 -0
  47. package/dist/__tests__/simulate/node-executor.test.d.ts.map +1 -0
  48. package/dist/__tests__/simulate/node-executor.test.js +25 -0
  49. package/dist/__tests__/simulate/node-executor.test.js.map +1 -0
  50. package/dist/__tests__/simulate/server-simulate.integration.test.d.ts +5 -0
  51. package/dist/__tests__/simulate/server-simulate.integration.test.d.ts.map +1 -0
  52. package/dist/__tests__/simulate/server-simulate.integration.test.js +59 -0
  53. package/dist/__tests__/simulate/server-simulate.integration.test.js.map +1 -0
  54. package/dist/__tests__/smoke/production.smoke.test.d.ts +8 -0
  55. package/dist/__tests__/smoke/production.smoke.test.d.ts.map +1 -0
  56. package/dist/__tests__/smoke/production.smoke.test.js +65 -0
  57. package/dist/__tests__/smoke/production.smoke.test.js.map +1 -0
  58. package/dist/commands/bundle/bundler.d.ts +2 -2
  59. package/dist/commands/bundle/bundler.d.ts.map +1 -1
  60. package/dist/commands/bundle/bundler.js +156 -54
  61. package/dist/commands/bundle/bundler.js.map +1 -1
  62. package/dist/commands/bundle/index.d.ts +17 -11
  63. package/dist/commands/bundle/index.d.ts.map +1 -1
  64. package/dist/commands/bundle/index.js +53 -53
  65. package/dist/commands/bundle/index.js.map +1 -1
  66. package/dist/commands/bundle/package-manager.d.ts +3 -2
  67. package/dist/commands/bundle/package-manager.d.ts.map +1 -1
  68. package/dist/commands/bundle/package-manager.js +34 -7
  69. package/dist/commands/bundle/package-manager.js.map +1 -1
  70. package/dist/commands/bundle/serializer.d.ts +1 -1
  71. package/dist/commands/bundle/serializer.d.ts.map +1 -1
  72. package/dist/commands/bundle/serializer.js +1 -1
  73. package/dist/commands/bundle/serializer.js.map +1 -1
  74. package/dist/commands/bundle/stats.d.ts +2 -2
  75. package/dist/commands/bundle/stats.d.ts.map +1 -1
  76. package/dist/commands/bundle/stats.js +1 -1
  77. package/dist/commands/bundle/stats.js.map +1 -1
  78. package/dist/commands/bundle/template-engine.d.ts +1 -1
  79. package/dist/commands/bundle/template-engine.d.ts.map +1 -1
  80. package/dist/commands/bundle/template-engine.js +2 -2
  81. package/dist/commands/bundle/template-engine.js.map +1 -1
  82. package/dist/commands/cache.d.ts +3 -0
  83. package/dist/commands/cache.d.ts.map +1 -0
  84. package/dist/commands/cache.js +44 -0
  85. package/dist/commands/cache.js.map +1 -0
  86. package/dist/commands/push/index.d.ts +7 -0
  87. package/dist/commands/push/index.d.ts.map +1 -0
  88. package/dist/commands/push/index.js +257 -0
  89. package/dist/commands/push/index.js.map +1 -0
  90. package/dist/commands/push/types.d.ts +21 -0
  91. package/dist/commands/push/types.d.ts.map +1 -0
  92. package/dist/commands/push/types.js +2 -0
  93. package/dist/commands/push/types.js.map +1 -0
  94. package/dist/commands/run/__tests__/run.integration.test.js +15 -16
  95. package/dist/commands/run/__tests__/run.integration.test.js.map +1 -1
  96. package/dist/commands/run/__tests__/validators.test.js +1 -1
  97. package/dist/commands/run/__tests__/validators.test.js.map +1 -1
  98. package/dist/commands/run/execution.d.ts +14 -0
  99. package/dist/commands/run/execution.d.ts.map +1 -0
  100. package/dist/commands/run/execution.js +37 -0
  101. package/dist/commands/run/execution.js.map +1 -0
  102. package/dist/commands/run/index.d.ts +1 -1
  103. package/dist/commands/run/index.d.ts.map +1 -1
  104. package/dist/commands/run/index.js +33 -107
  105. package/dist/commands/run/index.js.map +1 -1
  106. package/dist/commands/run/types.d.ts +1 -1
  107. package/dist/commands/run/types.d.ts.map +1 -1
  108. package/dist/commands/run/utils.d.ts +29 -0
  109. package/dist/commands/run/utils.d.ts.map +1 -0
  110. package/dist/commands/run/utils.js +52 -0
  111. package/dist/commands/run/utils.js.map +1 -0
  112. package/dist/commands/run/validators.d.ts +9 -5
  113. package/dist/commands/run/validators.d.ts.map +1 -1
  114. package/dist/commands/run/validators.js +15 -12
  115. package/dist/commands/run/validators.js.map +1 -1
  116. package/dist/commands/simulate/env-loader.d.ts +19 -0
  117. package/dist/commands/simulate/env-loader.d.ts.map +1 -0
  118. package/dist/commands/simulate/env-loader.js +46 -0
  119. package/dist/commands/simulate/env-loader.js.map +1 -0
  120. package/dist/commands/simulate/index.d.ts +4 -3
  121. package/dist/commands/simulate/index.d.ts.map +1 -1
  122. package/dist/commands/simulate/index.js +11 -19
  123. package/dist/commands/simulate/index.js.map +1 -1
  124. package/dist/commands/simulate/jsdom-executor.d.ts +13 -8
  125. package/dist/commands/simulate/jsdom-executor.d.ts.map +1 -1
  126. package/dist/commands/simulate/jsdom-executor.js +26 -49
  127. package/dist/commands/simulate/jsdom-executor.js.map +1 -1
  128. package/dist/commands/simulate/node-executor.d.ts +28 -0
  129. package/dist/commands/simulate/node-executor.d.ts.map +1 -0
  130. package/dist/commands/simulate/node-executor.js +94 -0
  131. package/dist/commands/simulate/node-executor.js.map +1 -0
  132. package/dist/commands/simulate/simulator.d.ts +1 -1
  133. package/dist/commands/simulate/simulator.d.ts.map +1 -1
  134. package/dist/commands/simulate/simulator.js +44 -36
  135. package/dist/commands/simulate/simulator.js.map +1 -1
  136. package/dist/commands/simulate/types.d.ts +2 -2
  137. package/dist/commands/simulate/types.d.ts.map +1 -1
  138. package/dist/config/build-defaults.d.ts +49 -0
  139. package/dist/config/build-defaults.d.ts.map +1 -0
  140. package/dist/config/build-defaults.js +72 -0
  141. package/dist/config/build-defaults.js.map +1 -0
  142. package/dist/config/index.d.ts +8 -9
  143. package/dist/config/index.d.ts.map +1 -1
  144. package/dist/config/index.js +7 -8
  145. package/dist/config/index.js.map +1 -1
  146. package/dist/config/loader.d.ts +35 -28
  147. package/dist/config/loader.d.ts.map +1 -1
  148. package/dist/config/loader.js +108 -89
  149. package/dist/config/loader.js.map +1 -1
  150. package/dist/config/utils.d.ts.map +1 -1
  151. package/dist/config/utils.js +3 -2
  152. package/dist/config/utils.js.map +1 -1
  153. package/dist/config/validators.d.ts +36 -7
  154. package/dist/config/validators.d.ts.map +1 -1
  155. package/dist/config/validators.js +61 -21
  156. package/dist/config/validators.js.map +1 -1
  157. package/dist/core/asset-resolver.d.ts +8 -15
  158. package/dist/core/asset-resolver.d.ts.map +1 -1
  159. package/dist/core/asset-resolver.js +30 -30
  160. package/dist/core/asset-resolver.js.map +1 -1
  161. package/dist/core/build-cache.d.ts +23 -0
  162. package/dist/core/build-cache.d.ts.map +1 -0
  163. package/dist/core/build-cache.js +43 -0
  164. package/dist/core/build-cache.js.map +1 -0
  165. package/dist/core/cache-utils.d.ts +27 -0
  166. package/dist/core/cache-utils.d.ts.map +1 -0
  167. package/dist/core/cache-utils.js +60 -0
  168. package/dist/core/cache-utils.js.map +1 -0
  169. package/dist/core/docker.d.ts +17 -1
  170. package/dist/core/docker.d.ts.map +1 -1
  171. package/dist/core/docker.js +30 -26
  172. package/dist/core/docker.js.map +1 -1
  173. package/dist/core/execution.d.ts +2 -2
  174. package/dist/core/execution.d.ts.map +1 -1
  175. package/dist/core/execution.js +1 -1
  176. package/dist/core/execution.js.map +1 -1
  177. package/dist/core/index.d.ts +9 -6
  178. package/dist/core/index.d.ts.map +1 -1
  179. package/dist/core/index.js +9 -6
  180. package/dist/core/index.js.map +1 -1
  181. package/dist/core/local-packages.d.ts +19 -0
  182. package/dist/core/local-packages.d.ts.map +1 -0
  183. package/dist/core/local-packages.js +60 -0
  184. package/dist/core/local-packages.js.map +1 -0
  185. package/dist/core/logger.d.ts +11 -0
  186. package/dist/core/logger.d.ts.map +1 -1
  187. package/dist/core/logger.js +14 -0
  188. package/dist/core/logger.js.map +1 -1
  189. package/dist/core/temp-manager.d.ts +51 -0
  190. package/dist/core/temp-manager.d.ts.map +1 -0
  191. package/dist/core/temp-manager.js +73 -0
  192. package/dist/core/temp-manager.js.map +1 -0
  193. package/dist/core/utils.d.ts +10 -0
  194. package/dist/core/utils.d.ts.map +1 -0
  195. package/dist/core/utils.js +12 -0
  196. package/dist/core/utils.js.map +1 -0
  197. package/dist/examples/.npm-cache/content-v2/sha512/0d/2d/7581c288670eaf8538ddd9df145b78756ce3be0791c6e0b9cd33429b3bae894525b9bda287a3cedffbcdd2c7b3107bafc03f2b0367eea489eee1cc042abb +1 -0
  198. package/dist/examples/.npm-cache/content-v2/sha512/12/20/bc4f5acca143809f7e07da1fdafb38137d93243de4d5b403e6e10b92d0d3a6e51eab24fe9dbc9d3ed1cd72e8f7a406085e99c422bb2c7d1166cf9f1f564e +0 -0
  199. package/dist/examples/.npm-cache/content-v2/sha512/22/ee/fb2695b01871c1d36946bdcfb49f1b520a57200d0a0b221b1e7d5f047ab38a8b2ab0e5f0e25a00acde1f3f2f9d24430a18f1092d438bc1a9e9891cc45f75 +0 -0
  200. package/dist/examples/.npm-cache/content-v2/sha512/24/89/da1ce6a61bca6de7e132f241a675c01c83738bf6b78af25b5cce01d3030361332b3fe938571e2b721f1555da9ddf930fdcf8c02f0471556071590e68cc09 +0 -0
  201. package/dist/examples/.npm-cache/content-v2/sha512/47/fd/c6be997da99228c3e279b95d4a46d6913947078a178f54ac71795a159f3513b1483232f4c2d0a1f403178bf9f96bb19615de32a9e2133e949880c6bc15e2 +0 -0
  202. package/dist/examples/.npm-cache/content-v2/sha512/4b/1c/c1cb7f8b32102071a89fef97158daa32080ebaedfbbd596880d2213d84e305abc76d2a95a412ded55c1c3d487adcb1ceff87fc2c85d7e2856ebd9d3f16f3 +0 -0
  203. package/dist/examples/.npm-cache/content-v2/sha512/6e/53/ff864769671f44f39d8a3bf904cd646535b745cc4824a8bb3189193b474678049f43b5178ba15cad7f0289046105e70f1565afc84e907120b35a466690fd +1 -0
  204. package/dist/examples/.npm-cache/content-v2/sha512/70/4c/4c8837d446965c5551b4ea527e95fa011744fb727581d82cf35bb5599ea0b57d18baa490f7af93ef9a16e8e45e5c0802737da20575f4056a4a5c9a3cd288 +0 -0
  205. package/dist/examples/.npm-cache/content-v2/sha512/96/ad/05de3bbb12d7de8ea353f962bdaea7d2eb44f707f2973462a6635daf537c67b46cca7764fed7d464fe62152c3f783a07aba1ceb35e09ad446bff05a4b466 +1 -0
  206. package/dist/examples/.npm-cache/content-v2/sha512/b5/20/52dde94e6cef7170f6089c64a4843e57be18be450d956f4e455905aed047ae6a368451c93035e6ac3ee59576b600f03f815afba0836b3a16e10a9aaca4ba +1 -0
  207. package/dist/examples/.npm-cache/content-v2/sha512/c7/a9/d166a1c39f97df312c59261319ba1cf9aac178bda0a0cb697d5ddd78bd8dd38ef1bf40017bcc8633c2049896c2d70696d9bff9280851f270792ff38bb3a0 +1 -0
  208. package/dist/examples/.npm-cache/content-v2/sha512/e0/d0/8c14083b633e6adbd3c6a93da5fc0f6bbd456c5512ef276920bedd8d85d551052adff992de977aff326616a211aaa2d6ddcc801149e9b7f914f566359b6a +1 -0
  209. package/dist/examples/.npm-cache/content-v2/sha512/e7/c5/06ad3fd79ac4f1031fe0b16ea5e54e232ca397bbcd7592c679021cbfb027276099f8c848f3f7a7691f0102ad53aa64f9141e61d729b037a678bd60440d17 +1 -0
  210. package/dist/examples/.npm-cache/content-v2/sha512/f3/28/d5d32329604ed7d471a4949105daa2cc98858cf24f45b0b97c41d0eb0d5a9fe7bf1f69c792161cc6693e4fc1b52e886ac41875ebfb8fe47fafe417ca3e6e +0 -0
  211. package/dist/examples/.npm-cache/index-v5/04/5a/2b5d7a7c407d85d746baa0f5c9388a333e35a717a8a0a81943daa6cb1364 +3 -0
  212. package/dist/examples/.npm-cache/index-v5/12/9a/eba560cbace295d8ee04cf283015377bd77b379e70968fb6bc407c7fc410 +15 -0
  213. package/dist/examples/.npm-cache/index-v5/2f/a2/7b047564b0ee21ac835ec609e89153dd6549be554d098584d5bfd19fe043 +15 -0
  214. package/dist/examples/.npm-cache/index-v5/32/8e/322d58dd8d1e000be248ada51385bf96288e56039de9feec1a4c6a467653 +3 -0
  215. package/dist/examples/.npm-cache/index-v5/57/93/d1d7cd1402e3e26468db03f2870822bb2c9018a506cdfb3b405f38cd3e1c +3 -0
  216. package/dist/examples/.npm-cache/index-v5/5d/f8/0a1f4fa7149e4ff33e09eb6aea41ac8d1730c868a5d3ace91f762698acff +3 -0
  217. package/dist/examples/.npm-cache/index-v5/69/a4/a92c72d838259b051cdf8e0acfb2bc680b6d4cfc642314a7836c3f7b2c50 +15 -0
  218. package/dist/examples/.npm-cache/index-v5/71/31/6da3423bb203f3de5eb16c942431073f89be2cfcb40058ec91dcb5ce0abc +15 -0
  219. package/dist/examples/.npm-cache/index-v5/7b/94/72b6bffa050d9ef52a558dd220663695bc606f756be0dfa196ef4f3913ba +3 -0
  220. package/dist/examples/.npm-cache/index-v5/85/9e/99e97fdd562517e56285337db91d1a8f2f416b8d631cf4d7d754fa671299 +15 -0
  221. package/dist/examples/.npm-cache/index-v5/92/4c/9416ada81a9b3c679539fd1ab53f8de3d41ff268f35eba7a194389a85b06 +3 -0
  222. package/dist/examples/.npm-cache/index-v5/c1/5a/13df76b218deed8a6ef12961116af5183db98c53fad1b922fd9edc075247 +3 -0
  223. package/dist/examples/.npm-cache/index-v5/cb/11/253c55410a8ab7c4a9ea9d6e1bf8ef1450a581da64c478074dfd82c8bff6 +3 -0
  224. package/dist/examples/.npm-cache/index-v5/d5/ae/b57fad3a62b5ba2dbdf24b042a9e7b70820f3db00e5a630f02e1fea020dc +3 -0
  225. package/dist/examples/.npm-cache/index-v5/d6/32/2f620f83c7d14451de98de8298c2408e05a16cc0829bd16c891ac19d7a67 +3 -0
  226. package/dist/examples/.npm-cache/index-v5/dd/b5/01dc7a3cd8b6a03a69aee9af500d51ae19cb0aa12631a4aafd152148b8e5 +15 -0
  227. package/dist/examples/.npm-cache/index-v5/e0/cf/6b862c15d74630d3871cd813d305210ab741311deb10baf8813014e0bc30 +3 -0
  228. package/dist/examples/.npm-cache/index-v5/e2/be/e880ccd35950a814d3c1dded34d3938ac61b15a195321dc51357f801aad4 +15 -0
  229. package/dist/examples/.npm-cache/index-v5/e5/1f/f4affe0b392cd03288f23cc03abcb274ff11a2c8f8965299de681914abb2 +3 -0
  230. package/dist/examples/.npm-cache/index-v5/f3/5b/9ebe450958ff0d7cc44ab0a00080cb8a3ff1389744b5eab5f97b68a6a6af +3 -0
  231. package/dist/examples/.npm-cache/index-v5/fb/c1/0de405e902866d53e7c30cf36a97dc2578838622b261816f44dc377c9a80 +3 -0
  232. package/dist/examples/README.md +343 -0
  233. package/dist/examples/event.json +53 -0
  234. package/dist/examples/flow-order-complete.json +68 -0
  235. package/dist/examples/flow-simple.json +32 -0
  236. package/dist/examples/flow.json +82 -0
  237. package/dist/examples/server-collect.json +60 -0
  238. package/dist/examples/server-collect.mjs +13540 -0
  239. package/dist/examples/test.html +43 -0
  240. package/dist/examples/web-serve.js +25503 -0
  241. package/dist/examples/web-serve.json +74 -0
  242. package/dist/index.d.ts +98 -200
  243. package/dist/index.d.ts.map +1 -1
  244. package/dist/index.js +2783 -120
  245. package/dist/index.js.map +1 -1
  246. package/dist/schemas/index.d.ts +9 -0
  247. package/dist/schemas/index.d.ts.map +1 -0
  248. package/dist/schemas/index.js +9 -0
  249. package/dist/schemas/index.js.map +1 -0
  250. package/dist/schemas/primitives.d.ts +37 -0
  251. package/dist/schemas/primitives.d.ts.map +1 -0
  252. package/dist/schemas/primitives.js +43 -0
  253. package/dist/schemas/primitives.js.map +1 -0
  254. package/dist/schemas/run.d.ts +23 -0
  255. package/dist/schemas/run.d.ts.map +1 -0
  256. package/dist/schemas/run.js +20 -0
  257. package/dist/schemas/run.js.map +1 -0
  258. package/dist/templates/server.hbs +29 -0
  259. package/dist/templates/web.hbs +45 -0
  260. package/dist/types/bundle.d.ts +68 -190
  261. package/dist/types/bundle.d.ts.map +1 -1
  262. package/dist/types/bundle.js +2 -2
  263. package/dist/types/index.d.ts +2 -2
  264. package/dist/types/index.d.ts.map +1 -1
  265. package/dist/types/index.js +2 -2
  266. package/dist/types/index.js.map +1 -1
  267. package/dist/walker.js +1 -0
  268. package/examples/README.md +42 -29
  269. package/examples/event.json +1 -1
  270. package/examples/flow-order-complete.json +57 -57
  271. package/examples/flow-simple.json +25 -25
  272. package/examples/flow.json +69 -69
  273. package/examples/server-collect.json +51 -44
  274. package/examples/server-collect.mjs +1360 -1190
  275. package/examples/web-serve.js +25469 -11
  276. package/examples/web-serve.json +62 -63
  277. package/package.json +3 -2
  278. package/dist/__tests__/bundle/bundler-integration.test.d.ts +0 -2
  279. package/dist/__tests__/bundle/bundler-integration.test.d.ts.map +0 -1
  280. package/dist/__tests__/bundle/bundler-integration.test.js +0 -106
  281. package/dist/__tests__/bundle/bundler-integration.test.js.map +0 -1
  282. package/dist/__tests__/simulate/programmatic.test.d.ts +0 -2
  283. package/dist/__tests__/simulate/programmatic.test.d.ts.map +0 -1
  284. package/dist/__tests__/simulate/programmatic.test.js +0 -51
  285. package/dist/__tests__/simulate/programmatic.test.js.map +0 -1
  286. package/dist/__tests__/simulate/simulator.test.d.ts +0 -2
  287. package/dist/__tests__/simulate/simulator.test.d.ts.map +0 -1
  288. package/dist/__tests__/simulate/simulator.test.js +0 -29
  289. package/dist/__tests__/simulate/simulator.test.js.map +0 -1
  290. package/dist/config/defaults.d.ts +0 -33
  291. package/dist/config/defaults.d.ts.map +0 -1
  292. package/dist/config/defaults.js +0 -69
  293. package/dist/config/defaults.js.map +0 -1
  294. package/dist/config/parser.d.ts +0 -64
  295. package/dist/config/parser.d.ts.map +0 -1
  296. package/dist/config/parser.js +0 -151
  297. package/dist/config/parser.js.map +0 -1
@@ -5,7 +5,7 @@
5
5
  * with env-based mocking from destination examples.
6
6
  */
7
7
  import type { Elb } from '@walkeros/core';
8
- import type { CallTracker, ApiCall } from './tracker';
8
+ import type { CallTracker, ApiCall } from './tracker.js';
9
9
  export interface ExecutionResult {
10
10
  collector: unknown;
11
11
  elb: unknown;
@@ -13,20 +13,25 @@ export interface ExecutionResult {
13
13
  usage: Record<string, ApiCall[]>;
14
14
  duration: number;
15
15
  }
16
+ interface DestinationEnv {
17
+ init?: Record<string, unknown>;
18
+ push: Record<string, unknown>;
19
+ simulation?: string[];
20
+ }
16
21
  /**
17
22
  * Execute production IIFE bundle in JSDOM with env-based mocking
18
23
  *
19
24
  * Main orchestration function that:
20
25
  * 1. Creates JSDOM virtual DOM
21
- * 2. Loads bundle and extracts examples
22
- * 3. Builds sandbox from destination examples
23
- * 4. Executes IIFE in JSDOM
24
- * 5. Waits for window.collector/elb assignment
25
- * 6. Runs event through elb
26
- * 7. Returns tracked API calls
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
27
31
  */
28
32
  export declare function executeInJSDOM(bundlePath: string, destinations: Record<string, unknown>, event: {
29
33
  name: string;
30
34
  data?: unknown;
31
- }, tracker: CallTracker, timeout?: number): Promise<ExecutionResult>;
35
+ }, tracker: CallTracker, envs: Record<string, DestinationEnv>, timeout?: number): Promise<ExecutionResult>;
36
+ export {};
32
37
  //# sourceMappingURL=jsdom-executor.d.ts.map
@@ -1 +1 @@
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;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEtD,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;AA2FD;;;;;;;;;;;GAWG;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,OAAO,GAAE,MAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CA4F1B"}
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"}
@@ -6,13 +6,14 @@
6
6
  */
7
7
  import { JSDOM, VirtualConsole } from 'jsdom';
8
8
  import fs from 'fs-extra';
9
+ import { getErrorMessage } from '../../core/index.js';
9
10
  /**
10
- * Build sandbox from destination-provided examples
11
+ * Build sandbox from destination-provided envs
11
12
  *
12
- * Merges env mocks from each destination's examples, wrapping
13
+ * Merges env mocks from each destination's envs, wrapping
13
14
  * specified paths with CallTracker for API call tracking.
14
15
  */
15
- function buildSandboxFromExamples(examples, destinations, tracker) {
16
+ function buildSandboxFromEnvs(envs, destinations, tracker) {
16
17
  // Base browser APIs (not provided by destinations)
17
18
  const baseBrowserMocks = {
18
19
  Image: class MockImage {
@@ -30,11 +31,11 @@ function buildSandboxFromExamples(examples, destinations, tracker) {
30
31
  };
31
32
  // Add destination-specific env mocks
32
33
  for (const [destKey, destConfig] of Object.entries(destinations)) {
33
- const destExamples = examples[destKey];
34
- if (!destExamples?.env?.push)
34
+ const destEnv = envs[destKey];
35
+ if (!destEnv?.push)
35
36
  continue;
36
- const mockEnv = destExamples.env.push;
37
- const trackPaths = destExamples.env.simulation || [];
37
+ const mockEnv = destEnv.push;
38
+ const trackPaths = destEnv.simulation || [];
38
39
  // Use existing CallTracker to wrap env
39
40
  const trackedEnv = tracker.wrapEnv(mockEnv, trackPaths.map((p) => `${destKey}:${p}`));
40
41
  // Merge window properties
@@ -77,14 +78,13 @@ function waitForWindowProperty(window, prop, timeout = 5000) {
77
78
  *
78
79
  * Main orchestration function that:
79
80
  * 1. Creates JSDOM virtual DOM
80
- * 2. Loads bundle and extracts examples
81
- * 3. Builds sandbox from destination examples
82
- * 4. Executes IIFE in JSDOM
83
- * 5. Waits for window.collector/elb assignment
84
- * 6. Runs event through elb
85
- * 7. Returns tracked API calls
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
86
  */
87
- export async function executeInJSDOM(bundlePath, destinations, event, tracker, timeout = 10000) {
87
+ export async function executeInJSDOM(bundlePath, destinations, event, tracker, envs, timeout = 10000) {
88
88
  const start = Date.now();
89
89
  // 1. Create JSDOM virtual DOM with console suppression
90
90
  const virtualConsole = new VirtualConsole();
@@ -96,59 +96,36 @@ export async function executeInJSDOM(bundlePath, destinations, event, tracker, t
96
96
  virtualConsole,
97
97
  });
98
98
  const { window } = dom;
99
- // 2. Load bundle code
100
- const bundleCode = await fs.readFile(bundlePath, 'utf8');
101
- // 3. Split bundle into setup (examples) and IIFE parts
102
- // Look for the IIFE pattern: (async () => {
103
- const iifeMatch = bundleCode.match(/(\(async\s*\(\)\s*=>\s*\{[\s\S]*\}\)\(\);?)/);
104
- if (!iifeMatch) {
105
- throw new Error('Could not find IIFE pattern in bundle');
106
- }
107
- const iifeStart = iifeMatch.index;
108
- const setupPart = bundleCode.substring(0, iifeStart);
109
- const iifePart = bundleCode.substring(iifeStart);
110
- // 4. Execute setup part to get examples
111
- const setupScript = window.document.createElement('script');
112
- setupScript.textContent = setupPart;
113
- try {
114
- window.document.body.appendChild(setupScript);
115
- }
116
- catch (error) {
117
- throw new Error(`Failed to execute bundle setup: ${error instanceof Error ? error.message : String(error)}`);
118
- }
119
- // 5. Extract examples from window (should be set by setup part)
120
- const examples = window.__walkerOS_examples || {};
121
- // 6. Build sandbox from examples and inject into window
122
- const sandbox = buildSandboxFromExamples(examples, destinations, tracker);
99
+ // 2. Build sandbox from dynamically loaded envs and inject into window
100
+ const sandbox = buildSandboxFromEnvs(envs, destinations, tracker);
123
101
  Object.assign(window, sandbox.window);
124
102
  Object.assign(window.document, sandbox.document);
125
- // 7. Execute IIFE part with sandbox in place
126
- const iifeScript = window.document.createElement('script');
127
- iifeScript.textContent = iifePart;
103
+ // 3. Load and execute bundle code
104
+ const bundleCode = await fs.readFile(bundlePath, 'utf8');
128
105
  try {
129
- window.document.body.appendChild(iifeScript);
106
+ window.eval(bundleCode);
130
107
  }
131
108
  catch (error) {
132
- throw new Error(`Failed to execute IIFE: ${error instanceof Error ? error.message : String(error)}`);
109
+ throw new Error(`Bundle execution failed: ${getErrorMessage(error)}`);
133
110
  }
134
- // 8. Wait for window.collector and window.elb assignments
111
+ // 4. Wait for window.collector and window.elb assignments
135
112
  try {
136
113
  await waitForWindowProperty(window, 'collector', timeout);
137
114
  await waitForWindowProperty(window, 'elb', timeout);
138
115
  }
139
116
  catch (error) {
140
- throw new Error(`Window property assignment failed: ${error instanceof Error ? error.message : String(error)}`);
117
+ throw new Error(`Window property assignment failed: ${getErrorMessage(error)}`);
141
118
  }
142
119
  const { collector, elb } = window;
143
- // 9. Run event through elb
120
+ // 5. Run event through elb
144
121
  let elbResult;
145
122
  try {
146
- elbResult = await elb(event.name, event.data);
123
+ elbResult = (await elb(event.name, event.data));
147
124
  }
148
125
  catch (error) {
149
- throw new Error(`Event execution failed: ${error instanceof Error ? error.message : String(error)}`);
126
+ throw new Error(`Event execution failed: ${getErrorMessage(error)}`);
150
127
  }
151
- // 10. Return results with tracked calls
128
+ // 6. Return results with tracked calls
152
129
  return {
153
130
  collector,
154
131
  elb,
@@ -1 +1 @@
1
- {"version":3,"file":"jsdom-executor.js","sourceRoot":"","sources":["../../../src/commands/simulate/jsdom-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jsdom-executor.js","sourceRoot":"","sources":["../../../src/commands/simulate/jsdom-executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
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
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,94 @@
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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-executor.js","sourceRoot":"","sources":["../../../src/commands/simulate/node-executor.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { SimulateCommandOptions, SimulationResult } from './types';
1
+ import type { SimulateCommandOptions, SimulationResult } from './types.js';
2
2
  /**
3
3
  * Main simulation orchestrator
4
4
  */
@@ -1 +1 @@
1
- {"version":3,"file":"simulator.d.ts","sourceRoot":"","sources":["../../../src/commands/simulate/simulator.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AASxE;;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,CAsH3B"}
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"}
@@ -1,11 +1,13 @@
1
1
  import path from 'path';
2
2
  import fs from 'fs-extra';
3
- import { createLogger } from '../../core';
4
- import { loadJsonConfig, getTempDir, isObject, parseBundleConfig, } from '../../config';
5
- import { bundleCore } from '../bundle/bundler';
6
- import { downloadPackages } from '../bundle/package-manager';
7
- import { CallTracker } from './tracker';
8
- import { executeInJSDOM } from './jsdom-executor';
3
+ import { getPlatform } from '@walkeros/core';
4
+ import { createLogger, getErrorMessage } from '../../core/index.js';
5
+ import { loadJsonConfig, loadBundleConfig, getTempDir, isObject, } from '../../config/index.js';
6
+ import { bundleCore } from '../bundle/bundler.js';
7
+ import { CallTracker } from './tracker.js';
8
+ import { executeInJSDOM } from './jsdom-executor.js';
9
+ import { executeInNode } from './node-executor.js';
10
+ import { loadDestinationEnvs } from './env-loader.js';
9
11
  /**
10
12
  * Generate a unique ID for temp files
11
13
  */
@@ -27,7 +29,7 @@ export async function simulateCore(configPath, event, options = {}) {
27
29
  logger.info('📦 Loading bundle configuration...');
28
30
  const fullConfigPath = path.resolve(configPath);
29
31
  const rawConfig = await loadJsonConfig(fullConfigPath);
30
- parseBundleConfig(rawConfig); // Validate config format
32
+ loadBundleConfig(rawConfig, { configPath: fullConfigPath });
31
33
  // Execute simulation
32
34
  logger.info(`🚀 Executing simulation with event: ${JSON.stringify(event)}`);
33
35
  const result = await executeSimulation(event, fullConfigPath);
@@ -41,7 +43,7 @@ export async function simulateCore(configPath, event, options = {}) {
41
43
  return result;
42
44
  }
43
45
  catch (error) {
44
- const errorMessage = error instanceof Error ? error.message : String(error);
46
+ const errorMessage = getErrorMessage(error);
45
47
  logger.error(`💥 Simulation error: ${errorMessage}`);
46
48
  return {
47
49
  success: false,
@@ -87,41 +89,47 @@ export async function executeSimulation(event, configPath) {
87
89
  await fs.ensureDir(tempDir);
88
90
  // 1. Load config
89
91
  const rawConfig = await loadJsonConfig(configPath);
90
- const { flowConfig, buildOptions } = parseBundleConfig(rawConfig);
91
- // 2. Download packages to temp directory
92
- // This ensures we use clean npm packages, not workspace packages
93
- const packagesArray = Object.entries(buildOptions.packages).map(([name, packageConfig]) => ({
94
- name,
95
- version: (typeof packageConfig === 'object' &&
96
- packageConfig !== null &&
97
- 'version' in packageConfig &&
98
- typeof packageConfig.version === 'string'
99
- ? packageConfig.version
100
- : undefined) || 'latest',
101
- }));
102
- const packagePaths = await downloadPackages(packagesArray, tempDir, // downloadPackages will add 'node_modules' subdirectory itself
103
- createLogger({ silent: true }), buildOptions.cache);
104
- // 3. Create tracker
92
+ const { flowConfig, buildOptions } = loadBundleConfig(rawConfig, {
93
+ configPath,
94
+ });
95
+ // Detect platform from flowConfig
96
+ const platform = getPlatform(flowConfig);
97
+ // 2. Create tracker
105
98
  const tracker = new CallTracker();
106
- // 4. Create temporary bundle as production IIFE (not ESM!)
107
- const tempOutput = path.join(tempDir, `simulation-bundle-${generateId()}.js`);
99
+ // 3. Create temporary bundle
100
+ const tempOutput = path.join(tempDir, `simulation-bundle-${generateId()}.${platform === 'web' ? 'js' : 'mjs'}`);
108
101
  const destinations = flowConfig.destinations;
109
- // Create build options for simulation - bundle as IIFE to test actual production code
102
+ // Create build options for simulation - platform-aware bundling
110
103
  const simulationBuildOptions = {
111
104
  ...buildOptions,
112
- code: buildOptions.code || '', // No code modification - use original
105
+ code: buildOptions.code || '',
113
106
  output: tempOutput,
114
- tempDir, // Use same temp dir for bundle
115
- format: 'iife', // ← Test actual production format!
116
- platform: 'browser', // ← Browser platform for IIFE
117
- windowCollector: 'collector', // ← Ensure window assignment
118
- windowElb: 'elb',
107
+ tempDir,
108
+ ...(platform === 'web'
109
+ ? {
110
+ format: 'iife',
111
+ platform: 'browser',
112
+ windowCollector: 'collector',
113
+ windowElb: 'elb',
114
+ }
115
+ : {
116
+ format: 'esm',
117
+ platform: 'node',
118
+ }),
119
119
  };
120
- // 5. Bundle with downloaded packages (they're already in tempDir/node_modules)
120
+ // 4. Bundle (downloads packages internally)
121
121
  await bundleCore(flowConfig, simulationBuildOptions, createLogger({ silent: true }), false);
122
122
  bundlePath = tempOutput;
123
- // 6. Execute IIFE in JSDOM with env-based mocking
124
- const result = await executeInJSDOM(tempOutput, destinations || {}, typedEvent, tracker, 10000);
123
+ // 5. Load env examples dynamically from destination packages
124
+ const envs = await loadDestinationEnvs(destinations || {});
125
+ // 6. Execute based on platform
126
+ let result;
127
+ if (platform === 'web') {
128
+ result = await executeInJSDOM(tempOutput, destinations || {}, typedEvent, tracker, envs, 10000);
129
+ }
130
+ else {
131
+ result = await executeInNode(tempOutput, destinations || {}, typedEvent, tracker, envs, 30000);
132
+ }
125
133
  const elbResult = result.elbResult;
126
134
  const usage = result.usage;
127
135
  const duration = Date.now() - startTime;
@@ -137,7 +145,7 @@ export async function executeSimulation(event, configPath) {
137
145
  const duration = Date.now() - startTime;
138
146
  return {
139
147
  success: false,
140
- error: error instanceof Error ? error.message : String(error),
148
+ error: getErrorMessage(error),
141
149
  duration,
142
150
  };
143
151
  }
@@ -1 +1 @@
1
- {"version":3,"file":"simulator.js","sourceRoot":"","sources":["../../../src/commands/simulate/simulator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulator.js","sourceRoot":"","sources":["../../../src/commands/simulate/simulator.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { Elb } from '@walkeros/core';
2
- import type { GlobalOptions } from '../../types';
3
- import type { ApiCall } from './tracker';
2
+ import type { GlobalOptions } from '../../types/index.js';
3
+ import type { ApiCall } from './tracker.js';
4
4
  export interface SimulateCommandOptions extends GlobalOptions {
5
5
  config: string;
6
6
  event?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/simulate/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,WAAW,sBAAuB,SAAQ,aAAa;IAC3D,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/simulate/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,WAAW,sBAAuB,SAAQ,aAAa;IAC3D,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Static Build Defaults
3
+ *
4
+ * Platform-specific build defaults for CLI bundling.
5
+ * Build options are CLI concerns, separate from Flow configuration.
6
+ */
7
+ import type { BuildOptions } from '../types/bundle.js';
8
+ /**
9
+ * Build defaults for web platform (browser bundles).
10
+ *
11
+ * @remarks
12
+ * These settings produce browser-compatible IIFE bundles.
13
+ */
14
+ export declare const WEB_BUILD_DEFAULTS: Omit<BuildOptions, 'output' | 'packages'>;
15
+ /**
16
+ * Build defaults for server platform (Node.js bundles).
17
+ *
18
+ * @remarks
19
+ * These settings produce Node.js-compatible ESM bundles.
20
+ */
21
+ export declare const SERVER_BUILD_DEFAULTS: Omit<BuildOptions, 'output' | 'packages'>;
22
+ /**
23
+ * Default output paths by platform.
24
+ */
25
+ export declare const DEFAULT_OUTPUT_PATHS: {
26
+ readonly web: "./dist/walker.js";
27
+ readonly server: "./dist/bundle.mjs";
28
+ };
29
+ /**
30
+ * Get build defaults for a platform.
31
+ *
32
+ * @param platform - Target platform ('web' or 'server')
33
+ * @returns Platform-specific build defaults
34
+ *
35
+ * @example
36
+ * ```typescript
37
+ * const defaults = getBuildDefaults('web');
38
+ * // { format: 'iife', platform: 'browser', ... }
39
+ * ```
40
+ */
41
+ export declare function getBuildDefaults(platform: 'web' | 'server'): Omit<BuildOptions, 'output' | 'packages'>;
42
+ /**
43
+ * Get default output path for a platform.
44
+ *
45
+ * @param platform - Target platform ('web' or 'server')
46
+ * @returns Default output file path
47
+ */
48
+ export declare function getDefaultOutput(platform: 'web' | 'server'): string;
49
+ //# sourceMappingURL=build-defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-defaults.d.ts","sourceRoot":"","sources":["../../src/config/build-defaults.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,UAAU,CAWxE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,UAAU,CAUzE,CAAC;AAEJ;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;CAGvB,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,KAAK,GAAG,QAAQ,GACzB,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,UAAU,CAAC,CAE3C;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAEnE"}