@walkeros/cli 0.7.0-next.0 → 0.8.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 (269) hide show
  1. package/README.md +123 -37
  2. package/dist/examples/flow-order-complete.json +0 -1
  3. package/dist/examples/flow-simple.json +0 -3
  4. package/dist/examples/flow.json +0 -1
  5. package/dist/index.d.ts +23 -13
  6. package/dist/index.js +882 -846
  7. package/dist/index.js.map +1 -1
  8. package/dist/runtime/main.d.ts +2 -0
  9. package/dist/runtime/main.js +271 -0
  10. package/dist/runtime/main.js.map +1 -0
  11. package/dist/walker.js +1 -1
  12. package/examples/flow-order-complete.json +0 -1
  13. package/examples/flow-simple.json +0 -3
  14. package/examples/flow.json +0 -1
  15. package/package.json +10 -7
  16. package/CHANGELOG.md +0 -159
  17. package/dist/__tests__/bundle/bundler-helpers.test.d.ts +0 -2
  18. package/dist/__tests__/bundle/bundler-helpers.test.d.ts.map +0 -1
  19. package/dist/__tests__/bundle/bundler-helpers.test.js +0 -151
  20. package/dist/__tests__/bundle/bundler-helpers.test.js.map +0 -1
  21. package/dist/__tests__/bundle/bundler.test.d.ts +0 -2
  22. package/dist/__tests__/bundle/bundler.test.d.ts.map +0 -1
  23. package/dist/__tests__/bundle/bundler.test.js +0 -353
  24. package/dist/__tests__/bundle/bundler.test.js.map +0 -1
  25. package/dist/__tests__/bundle/programmatic.test.d.ts +0 -2
  26. package/dist/__tests__/bundle/programmatic.test.d.ts.map +0 -1
  27. package/dist/__tests__/bundle/programmatic.test.js +0 -148
  28. package/dist/__tests__/bundle/programmatic.test.js.map +0 -1
  29. package/dist/__tests__/cli-e2e.test.d.ts +0 -8
  30. package/dist/__tests__/cli-e2e.test.d.ts.map +0 -1
  31. package/dist/__tests__/cli-e2e.test.js +0 -130
  32. package/dist/__tests__/cli-e2e.test.js.map +0 -1
  33. package/dist/__tests__/cli.test.d.ts +0 -2
  34. package/dist/__tests__/cli.test.d.ts.map +0 -1
  35. package/dist/__tests__/cli.test.js +0 -180
  36. package/dist/__tests__/cli.test.js.map +0 -1
  37. package/dist/__tests__/config-loader.test.d.ts +0 -7
  38. package/dist/__tests__/config-loader.test.d.ts.map +0 -1
  39. package/dist/__tests__/config-loader.test.js +0 -414
  40. package/dist/__tests__/config-loader.test.js.map +0 -1
  41. package/dist/__tests__/core/asset-resolver.test.d.ts +0 -2
  42. package/dist/__tests__/core/asset-resolver.test.d.ts.map +0 -1
  43. package/dist/__tests__/core/asset-resolver.test.js +0 -14
  44. package/dist/__tests__/core/asset-resolver.test.js.map +0 -1
  45. package/dist/__tests__/core/build-cache.test.d.ts +0 -2
  46. package/dist/__tests__/core/build-cache.test.d.ts.map +0 -1
  47. package/dist/__tests__/core/build-cache.test.js +0 -55
  48. package/dist/__tests__/core/build-cache.test.js.map +0 -1
  49. package/dist/__tests__/core/cache-utils.test.d.ts +0 -2
  50. package/dist/__tests__/core/cache-utils.test.d.ts.map +0 -1
  51. package/dist/__tests__/core/cache-utils.test.js +0 -70
  52. package/dist/__tests__/core/cache-utils.test.js.map +0 -1
  53. package/dist/__tests__/core/config.test.d.ts +0 -2
  54. package/dist/__tests__/core/config.test.d.ts.map +0 -1
  55. package/dist/__tests__/core/config.test.js +0 -72
  56. package/dist/__tests__/core/config.test.js.map +0 -1
  57. package/dist/__tests__/core/docker-url.test.d.ts +0 -2
  58. package/dist/__tests__/core/docker-url.test.d.ts.map +0 -1
  59. package/dist/__tests__/core/docker-url.test.js +0 -54
  60. package/dist/__tests__/core/docker-url.test.js.map +0 -1
  61. package/dist/__tests__/core/logger.test.d.ts +0 -2
  62. package/dist/__tests__/core/logger.test.d.ts.map +0 -1
  63. package/dist/__tests__/core/logger.test.js +0 -53
  64. package/dist/__tests__/core/logger.test.js.map +0 -1
  65. package/dist/__tests__/integration/bundle-run.integration.test.d.ts +0 -8
  66. package/dist/__tests__/integration/bundle-run.integration.test.d.ts.map +0 -1
  67. package/dist/__tests__/integration/bundle-run.integration.test.js +0 -54
  68. package/dist/__tests__/integration/bundle-run.integration.test.js.map +0 -1
  69. package/dist/__tests__/push/push.test.d.ts +0 -7
  70. package/dist/__tests__/push/push.test.d.ts.map +0 -1
  71. package/dist/__tests__/push/push.test.js +0 -197
  72. package/dist/__tests__/push/push.test.js.map +0 -1
  73. package/dist/__tests__/simulate/env-loader.test.d.ts +0 -2
  74. package/dist/__tests__/simulate/env-loader.test.d.ts.map +0 -1
  75. package/dist/__tests__/simulate/env-loader.test.js +0 -47
  76. package/dist/__tests__/simulate/env-loader.test.js.map +0 -1
  77. package/dist/__tests__/simulate/node-executor.test.d.ts +0 -5
  78. package/dist/__tests__/simulate/node-executor.test.d.ts.map +0 -1
  79. package/dist/__tests__/simulate/node-executor.test.js +0 -25
  80. package/dist/__tests__/simulate/node-executor.test.js.map +0 -1
  81. package/dist/__tests__/simulate/server-simulate.integration.test.d.ts +0 -5
  82. package/dist/__tests__/simulate/server-simulate.integration.test.d.ts.map +0 -1
  83. package/dist/__tests__/simulate/server-simulate.integration.test.js +0 -58
  84. package/dist/__tests__/simulate/server-simulate.integration.test.js.map +0 -1
  85. package/dist/__tests__/smoke/production.smoke.test.d.ts +0 -8
  86. package/dist/__tests__/smoke/production.smoke.test.d.ts.map +0 -1
  87. package/dist/__tests__/smoke/production.smoke.test.js +0 -65
  88. package/dist/__tests__/smoke/production.smoke.test.js.map +0 -1
  89. package/dist/commands/bundle/bundler.d.ts +0 -32
  90. package/dist/commands/bundle/bundler.d.ts.map +0 -1
  91. package/dist/commands/bundle/bundler.js +0 -583
  92. package/dist/commands/bundle/bundler.js.map +0 -1
  93. package/dist/commands/bundle/index.d.ts +0 -57
  94. package/dist/commands/bundle/index.d.ts.map +0 -1
  95. package/dist/commands/bundle/index.js +0 -200
  96. package/dist/commands/bundle/index.js.map +0 -1
  97. package/dist/commands/bundle/package-manager.d.ts +0 -8
  98. package/dist/commands/bundle/package-manager.d.ts.map +0 -1
  99. package/dist/commands/bundle/package-manager.js +0 -197
  100. package/dist/commands/bundle/package-manager.js.map +0 -1
  101. package/dist/commands/bundle/stats.d.ts +0 -23
  102. package/dist/commands/bundle/stats.d.ts.map +0 -1
  103. package/dist/commands/bundle/stats.js +0 -52
  104. package/dist/commands/bundle/stats.js.map +0 -1
  105. package/dist/commands/cache.d.ts +0 -3
  106. package/dist/commands/cache.d.ts.map +0 -1
  107. package/dist/commands/cache.js +0 -44
  108. package/dist/commands/cache.js.map +0 -1
  109. package/dist/commands/push/index.d.ts +0 -7
  110. package/dist/commands/push/index.d.ts.map +0 -1
  111. package/dist/commands/push/index.js +0 -257
  112. package/dist/commands/push/index.js.map +0 -1
  113. package/dist/commands/push/types.d.ts +0 -21
  114. package/dist/commands/push/types.d.ts.map +0 -1
  115. package/dist/commands/push/types.js +0 -2
  116. package/dist/commands/push/types.js.map +0 -1
  117. package/dist/commands/run/__tests__/run.integration.test.d.ts +0 -8
  118. package/dist/commands/run/__tests__/run.integration.test.d.ts.map +0 -1
  119. package/dist/commands/run/__tests__/run.integration.test.js +0 -52
  120. package/dist/commands/run/__tests__/run.integration.test.js.map +0 -1
  121. package/dist/commands/run/__tests__/validators.test.d.ts +0 -2
  122. package/dist/commands/run/__tests__/validators.test.d.ts.map +0 -1
  123. package/dist/commands/run/__tests__/validators.test.js +0 -80
  124. package/dist/commands/run/__tests__/validators.test.js.map +0 -1
  125. package/dist/commands/run/execution.d.ts +0 -14
  126. package/dist/commands/run/execution.d.ts.map +0 -1
  127. package/dist/commands/run/execution.js +0 -41
  128. package/dist/commands/run/execution.js.map +0 -1
  129. package/dist/commands/run/index.d.ts +0 -39
  130. package/dist/commands/run/index.d.ts.map +0 -1
  131. package/dist/commands/run/index.js +0 -191
  132. package/dist/commands/run/index.js.map +0 -1
  133. package/dist/commands/run/types.d.ts +0 -60
  134. package/dist/commands/run/types.d.ts.map +0 -1
  135. package/dist/commands/run/types.js +0 -7
  136. package/dist/commands/run/types.js.map +0 -1
  137. package/dist/commands/run/utils.d.ts +0 -29
  138. package/dist/commands/run/utils.d.ts.map +0 -1
  139. package/dist/commands/run/utils.js +0 -52
  140. package/dist/commands/run/utils.js.map +0 -1
  141. package/dist/commands/run/validators.d.ts +0 -33
  142. package/dist/commands/run/validators.d.ts.map +0 -1
  143. package/dist/commands/run/validators.js +0 -58
  144. package/dist/commands/run/validators.js.map +0 -1
  145. package/dist/commands/simulate/env-loader.d.ts +0 -19
  146. package/dist/commands/simulate/env-loader.d.ts.map +0 -1
  147. package/dist/commands/simulate/env-loader.js +0 -46
  148. package/dist/commands/simulate/env-loader.js.map +0 -1
  149. package/dist/commands/simulate/index.d.ts +0 -48
  150. package/dist/commands/simulate/index.d.ts.map +0 -1
  151. package/dist/commands/simulate/index.js +0 -116
  152. package/dist/commands/simulate/index.js.map +0 -1
  153. package/dist/commands/simulate/jsdom-executor.d.ts +0 -37
  154. package/dist/commands/simulate/jsdom-executor.d.ts.map +0 -1
  155. package/dist/commands/simulate/jsdom-executor.js +0 -137
  156. package/dist/commands/simulate/jsdom-executor.js.map +0 -1
  157. package/dist/commands/simulate/node-executor.d.ts +0 -28
  158. package/dist/commands/simulate/node-executor.d.ts.map +0 -1
  159. package/dist/commands/simulate/node-executor.js +0 -94
  160. package/dist/commands/simulate/node-executor.js.map +0 -1
  161. package/dist/commands/simulate/simulator.d.ts +0 -14
  162. package/dist/commands/simulate/simulator.d.ts.map +0 -1
  163. package/dist/commands/simulate/simulator.js +0 -162
  164. package/dist/commands/simulate/simulator.js.map +0 -1
  165. package/dist/commands/simulate/tracker.d.ts +0 -30
  166. package/dist/commands/simulate/tracker.d.ts.map +0 -1
  167. package/dist/commands/simulate/tracker.js +0 -96
  168. package/dist/commands/simulate/tracker.js.map +0 -1
  169. package/dist/commands/simulate/types.d.ts +0 -18
  170. package/dist/commands/simulate/types.d.ts.map +0 -1
  171. package/dist/commands/simulate/types.js +0 -2
  172. package/dist/commands/simulate/types.js.map +0 -1
  173. package/dist/config/build-defaults.d.ts +0 -49
  174. package/dist/config/build-defaults.d.ts.map +0 -1
  175. package/dist/config/build-defaults.js +0 -70
  176. package/dist/config/build-defaults.js.map +0 -1
  177. package/dist/config/index.d.ts +0 -13
  178. package/dist/config/index.d.ts.map +0 -1
  179. package/dist/config/index.js +0 -15
  180. package/dist/config/index.js.map +0 -1
  181. package/dist/config/loader.d.ts +0 -81
  182. package/dist/config/loader.d.ts.map +0 -1
  183. package/dist/config/loader.js +0 -155
  184. package/dist/config/loader.js.map +0 -1
  185. package/dist/config/utils.d.ts +0 -114
  186. package/dist/config/utils.d.ts.map +0 -1
  187. package/dist/config/utils.js +0 -257
  188. package/dist/config/utils.js.map +0 -1
  189. package/dist/config/validators.d.ts +0 -52
  190. package/dist/config/validators.d.ts.map +0 -1
  191. package/dist/config/validators.js +0 -85
  192. package/dist/config/validators.js.map +0 -1
  193. package/dist/core/asset-resolver.d.ts +0 -34
  194. package/dist/core/asset-resolver.d.ts.map +0 -1
  195. package/dist/core/asset-resolver.js +0 -70
  196. package/dist/core/asset-resolver.js.map +0 -1
  197. package/dist/core/build-cache.d.ts +0 -23
  198. package/dist/core/build-cache.d.ts.map +0 -1
  199. package/dist/core/build-cache.js +0 -43
  200. package/dist/core/build-cache.js.map +0 -1
  201. package/dist/core/cache-utils.d.ts +0 -27
  202. package/dist/core/cache-utils.d.ts.map +0 -1
  203. package/dist/core/cache-utils.js +0 -60
  204. package/dist/core/cache-utils.js.map +0 -1
  205. package/dist/core/docker.d.ts +0 -102
  206. package/dist/core/docker.d.ts.map +0 -1
  207. package/dist/core/docker.js +0 -278
  208. package/dist/core/docker.js.map +0 -1
  209. package/dist/core/execution.d.ts +0 -34
  210. package/dist/core/execution.d.ts.map +0 -1
  211. package/dist/core/execution.js +0 -64
  212. package/dist/core/execution.js.map +0 -1
  213. package/dist/core/index.d.ts +0 -10
  214. package/dist/core/index.d.ts.map +0 -1
  215. package/dist/core/index.js +0 -10
  216. package/dist/core/index.js.map +0 -1
  217. package/dist/core/local-packages.d.ts +0 -19
  218. package/dist/core/local-packages.d.ts.map +0 -1
  219. package/dist/core/local-packages.js +0 -60
  220. package/dist/core/local-packages.js.map +0 -1
  221. package/dist/core/logger.d.ts +0 -28
  222. package/dist/core/logger.d.ts.map +0 -1
  223. package/dist/core/logger.js +0 -88
  224. package/dist/core/logger.js.map +0 -1
  225. package/dist/core/output.d.ts +0 -30
  226. package/dist/core/output.d.ts.map +0 -1
  227. package/dist/core/output.js +0 -46
  228. package/dist/core/output.js.map +0 -1
  229. package/dist/core/temp-manager.d.ts +0 -51
  230. package/dist/core/temp-manager.d.ts.map +0 -1
  231. package/dist/core/temp-manager.js +0 -73
  232. package/dist/core/temp-manager.js.map +0 -1
  233. package/dist/core/timer.d.ts +0 -14
  234. package/dist/core/timer.d.ts.map +0 -1
  235. package/dist/core/timer.js +0 -29
  236. package/dist/core/timer.js.map +0 -1
  237. package/dist/core/utils.d.ts +0 -10
  238. package/dist/core/utils.d.ts.map +0 -1
  239. package/dist/core/utils.js +0 -12
  240. package/dist/core/utils.js.map +0 -1
  241. package/dist/index.d.ts.map +0 -1
  242. package/dist/schemas/index.d.ts +0 -9
  243. package/dist/schemas/index.d.ts.map +0 -1
  244. package/dist/schemas/index.js +0 -9
  245. package/dist/schemas/index.js.map +0 -1
  246. package/dist/schemas/primitives.d.ts +0 -37
  247. package/dist/schemas/primitives.d.ts.map +0 -1
  248. package/dist/schemas/primitives.js +0 -43
  249. package/dist/schemas/primitives.js.map +0 -1
  250. package/dist/schemas/run.d.ts +0 -23
  251. package/dist/schemas/run.d.ts.map +0 -1
  252. package/dist/schemas/run.js +0 -20
  253. package/dist/schemas/run.js.map +0 -1
  254. package/dist/types/bundle.d.ts +0 -141
  255. package/dist/types/bundle.d.ts.map +0 -1
  256. package/dist/types/bundle.js +0 -10
  257. package/dist/types/bundle.js.map +0 -1
  258. package/dist/types/global.d.ts +0 -51
  259. package/dist/types/global.d.ts.map +0 -1
  260. package/dist/types/global.js +0 -30
  261. package/dist/types/global.js.map +0 -1
  262. package/dist/types/index.d.ts +0 -8
  263. package/dist/types/index.d.ts.map +0 -1
  264. package/dist/types/index.js +0 -8
  265. package/dist/types/index.js.map +0 -1
  266. package/dist/version.d.ts +0 -3
  267. package/dist/version.d.ts.map +0 -1
  268. package/dist/version.js +0 -27
  269. package/dist/version.js.map +0 -1
@@ -1,57 +0,0 @@
1
- /**
2
- * Bundle Command
3
- *
4
- * Supports both single-flow and multi-flow builds.
5
- */
6
- import type { GlobalOptions } from '../../types/index.js';
7
- import type { BuildOptions } from '../../types/bundle.js';
8
- export interface BundleCommandOptions extends GlobalOptions {
9
- config: string;
10
- flow?: string;
11
- all?: boolean;
12
- stats?: boolean;
13
- json?: boolean;
14
- cache?: boolean;
15
- }
16
- export declare function bundleCommand(options: BundleCommandOptions): Promise<void>;
17
- /**
18
- * High-level bundle function for programmatic usage.
19
- *
20
- * Handles configuration loading, parsing, and logger creation internally.
21
- *
22
- * @param configOrPath - Bundle configuration (Flow.Setup) or path to config file
23
- * @param options - Bundle options
24
- * @param options.silent - Suppress all output (default: false)
25
- * @param options.verbose - Enable verbose logging (default: false)
26
- * @param options.stats - Collect and return bundle statistics (default: false)
27
- * @param options.cache - Enable package caching (default: true)
28
- * @param options.flowName - Flow to use (required for multi-flow configs)
29
- * @returns Bundle statistics if stats option is true, otherwise void
30
- *
31
- * @example
32
- * ```typescript
33
- * // With Flow.Setup config object
34
- * await bundle({
35
- * version: 1,
36
- * flows: {
37
- * default: {
38
- * web: {},
39
- * packages: { '@walkeros/collector': { imports: ['startFlow'] } },
40
- * destinations: { api: { code: 'destinationApi' } },
41
- * }
42
- * }
43
- * });
44
- *
45
- * // With config file
46
- * await bundle('./walker.config.json', { stats: true });
47
- * ```
48
- */
49
- export declare function bundle(configOrPath: unknown, options?: {
50
- silent?: boolean;
51
- verbose?: boolean;
52
- stats?: boolean;
53
- cache?: boolean;
54
- flowName?: string;
55
- buildOverrides?: Partial<BuildOptions>;
56
- }): Promise<import('./bundler').BundleStats | void>;
57
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/bundle/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAoBH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAI1D,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAsB,aAAa,CACjC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAqKf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,MAAM,CAC1B,YAAY,EAAE,OAAO,EACrB,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;CACnC,GACL,OAAO,CAAC,OAAO,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC,CAmCjD"}
@@ -1,200 +0,0 @@
1
- /**
2
- * Bundle Command
3
- *
4
- * Supports both single-flow and multi-flow builds.
5
- */
6
- import path from 'path';
7
- import { createCommandLogger, createLogger, createTimer, createSuccessOutput, createErrorOutput, executeCommand, getErrorMessage, buildCommonDockerArgs, resolveAsset, } from '../../core/index.js';
8
- import { loadJsonConfig, loadBundleConfig, loadAllFlows, } from '../../config/index.js';
9
- import { bundleCore } from './bundler.js';
10
- import { displayStats } from './stats.js';
11
- export async function bundleCommand(options) {
12
- const timer = createTimer();
13
- timer.start();
14
- const logger = createCommandLogger(options);
15
- // Build Docker args - start with common flags
16
- const dockerArgs = buildCommonDockerArgs(options);
17
- // Add bundle-specific flags
18
- if (options.flow)
19
- dockerArgs.push('--flow', options.flow);
20
- if (options.all)
21
- dockerArgs.push('--all');
22
- if (options.stats)
23
- dockerArgs.push('--stats');
24
- if (options.cache === false)
25
- dockerArgs.push('--no-cache');
26
- await executeCommand(async () => {
27
- try {
28
- // Validate flag combination
29
- if (options.flow && options.all) {
30
- throw new Error('Cannot use both --flow and --all flags together');
31
- }
32
- // Step 1: Read configuration file
33
- logger.info('šŸ“¦ Reading configuration...');
34
- // Resolve bare names to examples directory, keep paths/URLs as-is
35
- const configPath = resolveAsset(options.config, 'config');
36
- const rawConfig = await loadJsonConfig(configPath);
37
- // Step 2: Load configuration(s) based on flags
38
- const configsToBundle = options.all
39
- ? loadAllFlows(rawConfig, { configPath, logger })
40
- : [
41
- loadBundleConfig(rawConfig, {
42
- configPath,
43
- flowName: options.flow,
44
- logger,
45
- }),
46
- ];
47
- // Step 3: Bundle each configuration
48
- const results = [];
49
- for (const { flowConfig, buildOptions, flowName, isMultiFlow, } of configsToBundle) {
50
- try {
51
- // Override cache setting from CLI if provided
52
- if (options.cache !== undefined) {
53
- buildOptions.cache = options.cache;
54
- }
55
- // Log flow being built (for multi-flow setups)
56
- if (isMultiFlow || options.all) {
57
- logger.info(`\nšŸ”§ Building flow: ${flowName}`);
58
- }
59
- else {
60
- logger.info('šŸ”§ Starting bundle process...');
61
- }
62
- // Run bundler
63
- const shouldCollectStats = options.stats || options.json;
64
- const stats = await bundleCore(flowConfig, buildOptions, logger, shouldCollectStats);
65
- results.push({
66
- flowName,
67
- success: true,
68
- stats,
69
- });
70
- // Show stats if requested (for non-JSON, non-multi builds)
71
- if (!options.json && !options.all && options.stats && stats) {
72
- displayStats(stats, logger);
73
- }
74
- }
75
- catch (error) {
76
- const errorMessage = getErrorMessage(error);
77
- results.push({
78
- flowName,
79
- success: false,
80
- error: errorMessage,
81
- });
82
- if (!options.all) {
83
- throw error; // Re-throw for single flow builds
84
- }
85
- }
86
- }
87
- // Step 4: Report results
88
- const duration = timer.end() / 1000;
89
- const successCount = results.filter((r) => r.success).length;
90
- const failureCount = results.filter((r) => !r.success).length;
91
- if (options.json) {
92
- // JSON output for CI/CD
93
- const outputLogger = createLogger({ silent: false, json: false });
94
- const output = failureCount === 0
95
- ? createSuccessOutput({
96
- flows: results,
97
- summary: {
98
- total: results.length,
99
- success: successCount,
100
- failed: failureCount,
101
- },
102
- }, duration)
103
- : createErrorOutput(`${failureCount} flow(s) failed to build`, duration);
104
- outputLogger.log('white', JSON.stringify(output, null, 2));
105
- }
106
- else {
107
- if (options.all) {
108
- logger.info(`\nšŸ“Š Build Summary:`);
109
- logger.info(` Total: ${results.length}`);
110
- logger.success(` āœ… Success: ${successCount}`);
111
- if (failureCount > 0) {
112
- logger.error(` āŒ Failed: ${failureCount}`);
113
- }
114
- }
115
- if (failureCount === 0) {
116
- logger.success(`\nāœ… Bundle created successfully in ${timer.format()}`);
117
- }
118
- else {
119
- throw new Error(`${failureCount} flow(s) failed to build`);
120
- }
121
- }
122
- }
123
- catch (error) {
124
- const duration = timer.getElapsed() / 1000;
125
- const errorMessage = getErrorMessage(error);
126
- if (options.json) {
127
- // JSON error output for CI/CD
128
- const outputLogger = createLogger({ silent: false, json: false });
129
- const output = createErrorOutput(errorMessage, duration);
130
- outputLogger.log('white', JSON.stringify(output, null, 2));
131
- }
132
- else {
133
- logger.error('āŒ Bundle failed:');
134
- logger.error(errorMessage);
135
- }
136
- process.exit(1);
137
- }
138
- }, 'bundle', dockerArgs, options, logger, options.config);
139
- }
140
- /**
141
- * High-level bundle function for programmatic usage.
142
- *
143
- * Handles configuration loading, parsing, and logger creation internally.
144
- *
145
- * @param configOrPath - Bundle configuration (Flow.Setup) or path to config file
146
- * @param options - Bundle options
147
- * @param options.silent - Suppress all output (default: false)
148
- * @param options.verbose - Enable verbose logging (default: false)
149
- * @param options.stats - Collect and return bundle statistics (default: false)
150
- * @param options.cache - Enable package caching (default: true)
151
- * @param options.flowName - Flow to use (required for multi-flow configs)
152
- * @returns Bundle statistics if stats option is true, otherwise void
153
- *
154
- * @example
155
- * ```typescript
156
- * // With Flow.Setup config object
157
- * await bundle({
158
- * version: 1,
159
- * flows: {
160
- * default: {
161
- * web: {},
162
- * packages: { '@walkeros/collector': { imports: ['startFlow'] } },
163
- * destinations: { api: { code: 'destinationApi' } },
164
- * }
165
- * }
166
- * });
167
- *
168
- * // With config file
169
- * await bundle('./walker.config.json', { stats: true });
170
- * ```
171
- */
172
- export async function bundle(configOrPath, options = {}) {
173
- // 1. Load config if path provided
174
- let rawConfig;
175
- // Use current working directory as base when config is passed as object
176
- let configPath = path.resolve(process.cwd(), 'walkeros.config.json');
177
- if (typeof configOrPath === 'string') {
178
- // Resolve bare names to examples directory, keep paths as-is
179
- configPath = resolveAsset(configOrPath, 'config');
180
- rawConfig = await loadJsonConfig(configPath);
181
- }
182
- else {
183
- rawConfig = configOrPath;
184
- }
185
- // 2. Load and resolve config using Flow.Setup format
186
- const { flowConfig, buildOptions } = loadBundleConfig(rawConfig, {
187
- configPath,
188
- flowName: options.flowName,
189
- buildOverrides: options.buildOverrides,
190
- });
191
- // 3. Handle cache option
192
- if (options.cache !== undefined) {
193
- buildOptions.cache = options.cache;
194
- }
195
- // 4. Create logger internally
196
- const logger = createCommandLogger(options);
197
- // 5. Call core bundler
198
- return await bundleCore(flowConfig, buildOptions, logger, options.stats ?? false);
199
- }
200
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/bundle/index.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import { Logger } from '../../core/index.js';
2
- export interface Package {
3
- name: string;
4
- version: string;
5
- path?: string;
6
- }
7
- export declare function downloadPackages(packages: Package[], targetDir: string, logger: Logger, useCache?: boolean, configDir?: string): Promise<Map<string, string>>;
8
- //# sourceMappingURL=package-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../../../src/commands/bundle/package-manager.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,MAAM,EAGP,MAAM,qBAAqB,CAAC;AAG7B,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AA+GD,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,OAAO,EAAE,EACnB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,UAAO,EACf,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAuI9B"}
@@ -1,197 +0,0 @@
1
- import pacote from 'pacote';
2
- import path from 'path';
3
- import fs from 'fs-extra';
4
- import { resolveLocalPackage, copyLocalPackage, } from '../../core/index.js';
5
- import { getPackageCacheKey } from '../../core/cache-utils.js';
6
- /**
7
- * Gets the proper node_modules directory path for a package.
8
- * Creates standard npm structure: node_modules/@scope/package or node_modules/package
9
- * Supports multiple versions by appending version to non-scoped packages if needed.
10
- *
11
- * @example
12
- * getPackageDirectory('node_modules', '@walkeros/core', '0.2.0')
13
- * // → 'node_modules/@walkeros/core'
14
- *
15
- * getPackageDirectory('node_modules', 'lodash', '4.17.21')
16
- * // → 'node_modules/lodash'
17
- */
18
- function getPackageDirectory(baseDir, packageName, version) {
19
- // For scoped packages like @walkeros/core, preserve the scope structure
20
- // This creates: node_modules/@walkeros/core (standard npm structure)
21
- return path.join(baseDir, 'node_modules', packageName);
22
- }
23
- async function getCachedPackagePath(pkg, tempDir) {
24
- const cacheDir = path.join('.tmp', 'cache', 'packages');
25
- const cacheKey = await getPackageCacheKey(pkg.name, pkg.version);
26
- return path.join(cacheDir, cacheKey);
27
- }
28
- async function isPackageCached(pkg, tempDir) {
29
- const cachedPath = await getCachedPackagePath(pkg, tempDir);
30
- return fs.pathExists(cachedPath);
31
- }
32
- function validateNoDuplicatePackages(packages) {
33
- const packageMap = new Map();
34
- // Group packages by name and collect their versions
35
- for (const pkg of packages) {
36
- if (!packageMap.has(pkg.name)) {
37
- packageMap.set(pkg.name, []);
38
- }
39
- packageMap.get(pkg.name).push(pkg.version);
40
- }
41
- // Check for duplicate packages with different versions
42
- const conflicts = [];
43
- for (const [name, versions] of packageMap.entries()) {
44
- const uniqueVersions = [...new Set(versions)];
45
- if (uniqueVersions.length > 1) {
46
- conflicts.push(`${name}: [${uniqueVersions.join(', ')}]`);
47
- }
48
- }
49
- if (conflicts.length > 0) {
50
- throw new Error(`Version conflicts detected:\n${conflicts.map((c) => ` - ${c}`).join('\n')}\n\n` +
51
- 'Each package must use the same version across all declarations. ' +
52
- 'Please update your configuration to use consistent versions.');
53
- }
54
- }
55
- /**
56
- * Recursively resolve and download package dependencies
57
- */
58
- async function resolveDependencies(pkg, packageDir, logger, visited = new Set()) {
59
- const dependencies = [];
60
- const pkgKey = `${pkg.name}@${pkg.version}`;
61
- if (visited.has(pkgKey)) {
62
- return dependencies;
63
- }
64
- visited.add(pkgKey);
65
- try {
66
- const packageJsonPath = path.join(packageDir, 'package.json');
67
- if (await fs.pathExists(packageJsonPath)) {
68
- const packageJson = await fs.readJson(packageJsonPath);
69
- const deps = {
70
- ...packageJson.dependencies,
71
- ...packageJson.peerDependencies,
72
- };
73
- for (const [name, versionSpec] of Object.entries(deps)) {
74
- if (typeof versionSpec === 'string') {
75
- // Use the version spec as-is (pacote will resolve it)
76
- // This respects the package.json dependency requirements
77
- dependencies.push({ name, version: versionSpec });
78
- }
79
- }
80
- }
81
- }
82
- catch (error) {
83
- logger.debug(`Failed to read dependencies for ${pkgKey}: ${error}`);
84
- }
85
- return dependencies;
86
- }
87
- export async function downloadPackages(packages, targetDir, logger, useCache = true, configDir) {
88
- const packagePaths = new Map();
89
- const downloadQueue = [...packages];
90
- const processed = new Set();
91
- // Track packages that should use local paths (to prevent npm overwriting them)
92
- const localPackageMap = new Map();
93
- for (const pkg of packages) {
94
- if (pkg.path) {
95
- localPackageMap.set(pkg.name, pkg.path);
96
- }
97
- }
98
- // Validate no duplicate packages with different versions in initial list
99
- validateNoDuplicatePackages(packages);
100
- // Ensure target directory exists
101
- await fs.ensureDir(targetDir);
102
- while (downloadQueue.length > 0) {
103
- const pkg = downloadQueue.shift();
104
- const pkgKey = `${pkg.name}@${pkg.version}`;
105
- if (processed.has(pkgKey)) {
106
- continue;
107
- }
108
- processed.add(pkgKey);
109
- // If this package was specified with a local path, use it even if discovered as a dependency
110
- if (!pkg.path && localPackageMap.has(pkg.name)) {
111
- pkg.path = localPackageMap.get(pkg.name);
112
- }
113
- // Handle local packages first
114
- if (pkg.path) {
115
- const localPkg = await resolveLocalPackage(pkg.name, pkg.path, configDir || process.cwd(), logger);
116
- const installedPath = await copyLocalPackage(localPkg, targetDir, logger);
117
- packagePaths.set(pkg.name, installedPath);
118
- // Resolve dependencies from local package
119
- const deps = await resolveDependencies(pkg, installedPath, logger);
120
- for (const dep of deps) {
121
- const depKey = `${dep.name}@${dep.version}`;
122
- if (!processed.has(depKey)) {
123
- downloadQueue.push(dep);
124
- }
125
- }
126
- continue;
127
- }
128
- const packageSpec = `${pkg.name}@${pkg.version}`;
129
- // Use proper node_modules structure: node_modules/@scope/package
130
- const packageDir = getPackageDirectory(targetDir, pkg.name, pkg.version);
131
- const cachedPath = await getCachedPackagePath(pkg, targetDir);
132
- if (useCache && (await isPackageCached(pkg, targetDir))) {
133
- logger.debug(`Using cached ${packageSpec}...`);
134
- try {
135
- // Ensure parent directories exist for scoped packages (@scope/package)
136
- await fs.ensureDir(path.dirname(packageDir));
137
- await fs.copy(cachedPath, packageDir);
138
- packagePaths.set(pkg.name, packageDir);
139
- // Resolve and queue dependencies for cached package too
140
- const deps = await resolveDependencies(pkg, packageDir, logger);
141
- for (const dep of deps) {
142
- const depKey = `${dep.name}@${dep.version}`;
143
- if (!processed.has(depKey)) {
144
- downloadQueue.push(dep);
145
- }
146
- }
147
- continue;
148
- }
149
- catch (error) {
150
- logger.debug(`Failed to use cache for ${packageSpec}, downloading fresh: ${error}`);
151
- }
152
- }
153
- logger.debug(`Downloading ${packageSpec}...`);
154
- try {
155
- // Ensure parent directories exist for scoped packages (@scope/package)
156
- await fs.ensureDir(path.dirname(packageDir));
157
- // Extract package to proper node_modules structure
158
- // Use environment variable for cache location (Docker-friendly)
159
- const cacheDir = process.env.NPM_CACHE_DIR || path.join(process.cwd(), '.npm-cache');
160
- await pacote.extract(packageSpec, packageDir, {
161
- // Force npm registry download, prevent workspace resolution
162
- registry: 'https://registry.npmjs.org',
163
- // Force online fetching from registry (don't use cached workspace packages)
164
- preferOnline: true,
165
- // Cache for performance
166
- cache: cacheDir,
167
- // Don't resolve relative to workspace context
168
- where: undefined,
169
- });
170
- // Cache the downloaded package for future use
171
- if (useCache) {
172
- try {
173
- await fs.ensureDir(path.dirname(cachedPath));
174
- await fs.copy(packageDir, cachedPath);
175
- logger.debug(`Cached ${packageSpec} for future use`);
176
- }
177
- catch (cacheError) {
178
- logger.debug(`Failed to cache ${packageSpec}: ${cacheError}`);
179
- }
180
- }
181
- packagePaths.set(pkg.name, packageDir);
182
- // Resolve and queue dependencies
183
- const deps = await resolveDependencies(pkg, packageDir, logger);
184
- for (const dep of deps) {
185
- const depKey = `${dep.name}@${dep.version}`;
186
- if (!processed.has(depKey)) {
187
- downloadQueue.push(dep);
188
- }
189
- }
190
- }
191
- catch (error) {
192
- throw new Error(`Failed to download ${packageSpec}: ${error}`);
193
- }
194
- }
195
- return packagePaths;
196
- }
197
- //# sourceMappingURL=package-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-manager.js","sourceRoot":"","sources":["../../../src/commands/bundle/package-manager.ts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- import type { BundleStats } from './bundler.js';
2
- import type { Logger } from '../../core/index.js';
3
- /**
4
- * Display detailed bundle statistics to console
5
- */
6
- export declare function displayStats(stats: BundleStats, logger: Logger): void;
7
- /**
8
- * Create stats summary for JSON output
9
- */
10
- export declare function createStatsSummary(stats: BundleStats): {
11
- totalSize: number;
12
- totalSizeFormatted: string;
13
- buildTime: number;
14
- buildTimeFormatted: string;
15
- treeshakingEffective: boolean;
16
- packageCount: number;
17
- packages: {
18
- name: string;
19
- size: number;
20
- sizeFormatted: string;
21
- }[];
22
- };
23
- //# sourceMappingURL=stats.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../src/commands/bundle/stats.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CA8BrE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW;;;;;;;;;;;;EAcpD"}
@@ -1,52 +0,0 @@
1
- /**
2
- * Bundle statistics display utilities
3
- */
4
- import { formatBytes } from '../../core/index.js';
5
- /**
6
- * Display detailed bundle statistics to console
7
- */
8
- export function displayStats(stats, logger) {
9
- logger.info('\nšŸ“Š Bundle Statistics');
10
- logger.info('─'.repeat(50));
11
- // Total size
12
- const sizeKB = formatBytes(stats.totalSize);
13
- logger.info(`Total Size: ${sizeKB} KB`);
14
- // Build time
15
- const timeSeconds = (stats.buildTime / 1000).toFixed(2);
16
- logger.info(`Build Time: ${timeSeconds}s`);
17
- // Tree-shaking effectiveness
18
- const treeshakingStatus = stats.treeshakingEffective
19
- ? 'āœ… Effective'
20
- : 'āš ļø Not optimal (consider using named imports)';
21
- logger.info(`Tree-shaking: ${treeshakingStatus}`);
22
- // Package breakdown
23
- if (stats.packages.length > 0) {
24
- logger.info(`\nPackage Breakdown:`);
25
- stats.packages.forEach((pkg) => {
26
- if (pkg.size > 0) {
27
- const pkgSizeKB = formatBytes(pkg.size);
28
- logger.info(` • ${pkg.name}: ${pkgSizeKB} KB`);
29
- }
30
- });
31
- }
32
- logger.info('─'.repeat(50));
33
- }
34
- /**
35
- * Create stats summary for JSON output
36
- */
37
- export function createStatsSummary(stats) {
38
- return {
39
- totalSize: stats.totalSize,
40
- totalSizeFormatted: `${formatBytes(stats.totalSize)} KB`,
41
- buildTime: stats.buildTime,
42
- buildTimeFormatted: `${(stats.buildTime / 1000).toFixed(2)}s`,
43
- treeshakingEffective: stats.treeshakingEffective,
44
- packageCount: stats.packages.length,
45
- packages: stats.packages.map((pkg) => ({
46
- name: pkg.name,
47
- size: pkg.size,
48
- sizeFormatted: `${formatBytes(pkg.size)} KB`,
49
- })),
50
- };
51
- }
52
- //# sourceMappingURL=stats.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stats.js","sourceRoot":"","sources":["../../../src/commands/bundle/stats.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAIlD;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,KAAkB,EAAE,MAAc;IAC7D,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IACtC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAE5B,aAAa;IACb,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC5C,MAAM,CAAC,IAAI,CAAC,eAAe,MAAM,KAAK,CAAC,CAAC;IAExC,aAAa;IACb,MAAM,WAAW,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,CAAC,eAAe,WAAW,GAAG,CAAC,CAAC;IAE3C,6BAA6B;IAC7B,MAAM,iBAAiB,GAAG,KAAK,CAAC,oBAAoB;QAClD,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,gDAAgD,CAAC;IACrD,MAAM,CAAC,IAAI,CAAC,iBAAiB,iBAAiB,EAAE,CAAC,CAAC;IAElD,oBAAoB;IACpB,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACpC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAC7B,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,KAAK,SAAS,KAAK,CAAC,CAAC;YAClD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAkB;IACnD,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,kBAAkB,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK;QACxD,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,kBAAkB,EAAE,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;QAC7D,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;QAChD,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;QACnC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACrC,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,aAAa,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK;SAC7C,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC"}
@@ -1,3 +0,0 @@
1
- import { Command } from 'commander';
2
- export declare function registerCacheCommand(program: Command): void;
3
- //# sourceMappingURL=cache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/commands/cache.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmC3D"}
@@ -1,44 +0,0 @@
1
- import fs from 'fs-extra';
2
- import path from 'path';
3
- const CACHE_DIR = path.join('.tmp', 'cache');
4
- export function registerCacheCommand(program) {
5
- const cache = program.command('cache').description('Manage the CLI cache');
6
- cache
7
- .command('clear')
8
- .description('Clear all cached packages and builds')
9
- .option('--packages', 'Clear only package cache')
10
- .option('--builds', 'Clear only build cache')
11
- .action(async (options) => {
12
- if (options.packages) {
13
- await fs.remove(path.join(CACHE_DIR, 'packages'));
14
- console.log('Package cache cleared');
15
- }
16
- else if (options.builds) {
17
- await fs.remove(path.join(CACHE_DIR, 'builds'));
18
- console.log('Build cache cleared');
19
- }
20
- else {
21
- await fs.remove(CACHE_DIR);
22
- console.log('All caches cleared');
23
- }
24
- });
25
- cache
26
- .command('info')
27
- .description('Show cache statistics')
28
- .action(async () => {
29
- const packagesDir = path.join(CACHE_DIR, 'packages');
30
- const buildsDir = path.join(CACHE_DIR, 'builds');
31
- const packageCount = await countEntries(packagesDir);
32
- const buildCount = await countEntries(buildsDir);
33
- console.log(`Cache directory: ${CACHE_DIR}`);
34
- console.log(`Cached packages: ${packageCount}`);
35
- console.log(`Cached builds: ${buildCount}`);
36
- });
37
- }
38
- async function countEntries(dir) {
39
- if (!(await fs.pathExists(dir)))
40
- return 0;
41
- const entries = await fs.readdir(dir);
42
- return entries.length;
43
- }
44
- //# sourceMappingURL=cache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/commands/cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE7C,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACnD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC;IAE3E,KAAK;SACF,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,sCAAsC,CAAC;SACnD,MAAM,CAAC,YAAY,EAAE,0BAA0B,CAAC;SAChD,MAAM,CAAC,UAAU,EAAE,wBAAwB,CAAC;SAC5C,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACvC,CAAC;aAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QACpC,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,KAAK;SACF,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,uBAAuB,CAAC;SACpC,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAEjD,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,CAAC;QACrD,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,CAAC;QAEjD,OAAO,CAAC,GAAG,CAAC,oBAAoB,SAAS,EAAE,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,oBAAoB,YAAY,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,kBAAkB,UAAU,EAAE,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,GAAW;IACrC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACtC,OAAO,OAAO,CAAC,MAAM,CAAC;AACxB,CAAC"}
@@ -1,7 +0,0 @@
1
- import type { PushCommandOptions, PushResult } from './types.js';
2
- /**
3
- * CLI command handler for push command
4
- */
5
- export declare function pushCommand(options: PushCommandOptions): Promise<void>;
6
- export type { PushCommandOptions, PushResult };
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/push/index.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAEjE;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4L5E;AA0KD,YAAY,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAC"}