react-scanner-ui 0.0.8 → 0.0.10

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 (40) hide show
  1. package/.husky/commit-msg +3 -0
  2. package/.husky/pre-commit +1 -0
  3. package/.prettierignore +34 -0
  4. package/.prettierrc +15 -0
  5. package/dist/commands/start.d.ts +1 -1
  6. package/dist/commands/start.js +18 -18
  7. package/dist/commands/start.js.map +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/server/index.d.ts.map +1 -1
  10. package/dist/server/index.js +29 -32
  11. package/dist/server/index.js.map +1 -1
  12. package/dist/utils/config.js +1 -1
  13. package/dist/utils/dependencies.d.ts.map +1 -1
  14. package/dist/utils/dependencies.js +3 -3
  15. package/dist/utils/dependencies.js.map +1 -1
  16. package/dist/utils/index.d.ts +5 -5
  17. package/dist/utils/index.d.ts.map +1 -1
  18. package/dist/utils/index.js +1 -3
  19. package/dist/utils/index.js.map +1 -1
  20. package/dist/utils/port.js +1 -1
  21. package/dist/utils/scannerConfig.d.ts +6 -10
  22. package/dist/utils/scannerConfig.d.ts.map +1 -1
  23. package/dist/utils/scannerConfig.js +57 -50
  24. package/dist/utils/scannerConfig.js.map +1 -1
  25. package/docs/.vitepress/config.ts +44 -0
  26. package/docs/README.md +23 -0
  27. package/docs/api/index.md +11 -0
  28. package/docs/guide/index.md +14 -0
  29. package/docs/guide/installation.md +19 -0
  30. package/docs/guide/usage.md +14 -0
  31. package/docs/index.md +23 -0
  32. package/eslint.config.js +90 -0
  33. package/package.json +33 -4
  34. package/ui/components/App.tsx +11 -11
  35. package/ui/components/ComponentTable.css +88 -0
  36. package/ui/components/ComponentTable.tsx +85 -33
  37. package/ui/index.css +6 -2
  38. package/ui/index.html +9 -9
  39. package/ui/main.tsx +6 -6
  40. package/ui/vite.config.ts +6 -6
@@ -0,0 +1,3 @@
1
+ # Optional: Add commit message validation
2
+ # Uncomment the lines below to enforce conventional commit messages
3
+ # npx --no -- commitlint --edit $1
@@ -0,0 +1 @@
1
+ npx lint-staged
@@ -0,0 +1,34 @@
1
+ # Dependencies
2
+ node_modules/
3
+
4
+ # Build outputs
5
+ dist/
6
+ build/
7
+ coverage/
8
+
9
+ # VitePress
10
+ docs/.vitepress/dist/
11
+ docs/.vitepress/cache/
12
+
13
+ # Logs
14
+ *.log
15
+ npm-debug.log*
16
+ yarn-debug.log*
17
+ yarn-error.log*
18
+
19
+ # Package files
20
+ package-lock.json
21
+ yarn.lock
22
+
23
+ # Generated files
24
+ *.min.js
25
+ *.min.css
26
+
27
+ # Documentation
28
+ README.md
29
+ CHANGELOG.md
30
+
31
+ # Config files that should not be formatted
32
+ .env*
33
+ .gitignore
34
+ .npmignore
package/.prettierrc ADDED
@@ -0,0 +1,15 @@
1
+ {
2
+ "semi": true,
3
+ "trailingComma": "es5",
4
+ "singleQuote": true,
5
+ "printWidth": 80,
6
+ "tabWidth": 2,
7
+ "useTabs": false,
8
+ "bracketSpacing": true,
9
+ "bracketSameLine": false,
10
+ "arrowParens": "avoid",
11
+ "endOfLine": "lf",
12
+ "quoteProps": "as-needed",
13
+ "jsxSingleQuote": true,
14
+ "proseWrap": "preserve"
15
+ }
@@ -1,3 +1,3 @@
1
- import { Command } from "commander";
1
+ import { Command } from 'commander';
2
2
  export declare function startCommand(program: Command): void;
3
3
  //# sourceMappingURL=start.d.ts.map
@@ -47,14 +47,14 @@ async function promptForPortChange(requestedPort, availablePort) {
47
47
  input: process.stdin,
48
48
  output: process.stdout,
49
49
  });
50
- return new Promise((resolve) => {
51
- rl.question(`Port ${requestedPort} is not available. Would you like to run on port ${availablePort} instead? (Y/n): `, (answer) => {
50
+ return new Promise(resolve => {
51
+ rl.question(`Port ${requestedPort} is not available. Would you like to run on port ${availablePort} instead? (Y/n): `, answer => {
52
52
  rl.close();
53
53
  const normalizedAnswer = answer.trim().toLowerCase();
54
54
  // Default to yes if user just presses enter
55
- resolve(normalizedAnswer === "" ||
56
- normalizedAnswer === "y" ||
57
- normalizedAnswer === "yes");
55
+ resolve(normalizedAnswer === '' ||
56
+ normalizedAnswer === 'y' ||
57
+ normalizedAnswer === 'yes');
58
58
  });
59
59
  });
60
60
  }
@@ -64,19 +64,19 @@ async function promptForPortChange(requestedPort, availablePort) {
64
64
  async function openBrowser(url) {
65
65
  const { platform } = process;
66
66
  try {
67
- const { exec } = await Promise.resolve().then(() => __importStar(require("child_process")));
67
+ const { exec } = await Promise.resolve().then(() => __importStar(require('child_process')));
68
68
  let command;
69
- if (platform === "darwin") {
69
+ if (platform === 'darwin') {
70
70
  command = `open "${url}"`;
71
71
  }
72
- else if (platform === "win32") {
72
+ else if (platform === 'win32') {
73
73
  command = `start "" "${url}"`;
74
74
  }
75
75
  else {
76
76
  // Linux and other platforms
77
77
  command = `xdg-open "${url}"`;
78
78
  }
79
- exec(command, (error) => {
79
+ exec(command, error => {
80
80
  if (error) {
81
81
  console.log(`Could not open browser automatically. Please visit: ${url}`);
82
82
  }
@@ -88,17 +88,17 @@ async function openBrowser(url) {
88
88
  }
89
89
  function startCommand(program) {
90
90
  program
91
- .command("start")
92
- .description("Start the React Scanner UI server")
93
- .option("-p, --port <number>", "Port to run the server on", String(DEFAULT_PORT))
94
- .option("--exact-port", "Exit if the specified port is not available", false)
95
- .option("--ci", "Run in CI mode (no interactive prompts)", false)
96
- .option("--open", "Open the browser automatically", false)
91
+ .command('start')
92
+ .description('Start the React Scanner UI server')
93
+ .option('-p, --port <number>', 'Port to run the server on', String(DEFAULT_PORT))
94
+ .option('--exact-port', 'Exit if the specified port is not available', false)
95
+ .option('--ci', 'Run in CI mode (no interactive prompts)', false)
96
+ .option('--open', 'Open the browser automatically', false)
97
97
  .action(async (options) => {
98
98
  (0, dependencies_1.checkPeerDependency)();
99
99
  const requestedPort = parseInt(options.port, 10);
100
100
  if (isNaN(requestedPort) || requestedPort < 1 || requestedPort > 65535) {
101
- console.error("Error: Invalid port number. Please specify a port between 1 and 65535.");
101
+ console.error('Error: Invalid port number. Please specify a port between 1 and 65535.');
102
102
  process.exit(1);
103
103
  }
104
104
  // Use detect-port to find an available port
@@ -111,7 +111,7 @@ function startCommand(program) {
111
111
  !options.exactPort) {
112
112
  const shouldChangePort = await promptForPortChange(requestedPort, availablePort);
113
113
  if (!shouldChangePort) {
114
- console.log("Exiting.");
114
+ console.log('Exiting.');
115
115
  process.exit(1);
116
116
  }
117
117
  }
@@ -128,7 +128,7 @@ function startCommand(program) {
128
128
  }
129
129
  }
130
130
  catch (error) {
131
- console.error("Failed to start server:", error);
131
+ console.error('Failed to start server:', error);
132
132
  process.exit(1);
133
133
  }
134
134
  });
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAEA,yCAAoC;AACpC,yCAAkF;AAElF,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,kBAAkB,CAAC;KACxB,WAAW,CAAC,2CAA2C,CAAC;KACxD,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,oBAAoB;AACpB,IAAA,sBAAW,EAAC,OAAO,CAAC,CAAC;AACrB,IAAA,sBAAW,EAAC,OAAO,CAAC,CAAC;AACrB,IAAA,uBAAY,EAAC,OAAO,CAAC,CAAC;AACtB,IAAA,uBAAY,EAAC,OAAO,CAAC,CAAC;AAEtB,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAEA,yCAAoC;AACpC,yCAKoB;AAEpB,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,kBAAkB,CAAC;KACxB,WAAW,CAAC,2CAA2C,CAAC;KACxD,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,oBAAoB;AACpB,IAAA,sBAAW,EAAC,OAAO,CAAC,CAAC;AACrB,IAAA,sBAAW,EAAC,OAAO,CAAC,CAAC;AACrB,IAAA,uBAAY,EAAC,OAAO,CAAC,CAAC;AACtB,IAAA,uBAAY,EAAC,OAAO,CAAC,CAAC;AAEtB,OAAO,CAAC,KAAK,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAuBA;;;GAGG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAmE7D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAqBA;;;GAGG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgE7D"}
@@ -32,14 +32,10 @@ var __importStar = (this && this.__importStar) || (function () {
32
32
  return result;
33
33
  };
34
34
  })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
35
  Object.defineProperty(exports, "__esModule", { value: true });
39
36
  exports.startServer = startServer;
40
37
  const http_1 = require("http");
41
38
  const path_1 = require("path");
42
- const polka_1 = __importDefault(require("polka"));
43
39
  const scannerConfig_1 = require("../utils/scannerConfig");
44
40
  /**
45
41
  * Get the path to the UI directory.
@@ -50,59 +46,60 @@ function getUiRoot() {
50
46
  // UI is always at project-root/ui
51
47
  const currentDir = __dirname;
52
48
  // Go up from server/ to src/ or dist/, then up to project root, then into ui/
53
- return (0, path_1.resolve)(currentDir, "../../ui");
49
+ return (0, path_1.resolve)(currentDir, '../../ui');
54
50
  }
55
51
  /**
56
52
  * Start the HTTP server using Polka with Vite middleware mode
57
53
  * (similar approach to Storybook's builder-vite)
58
54
  */
59
55
  async function startServer(port) {
60
- const server = (0, http_1.createServer)();
61
- const app = (0, polka_1.default)({ server });
62
- // API endpoint to get scan data (served before Vite middleware)
63
- app.get("/api/scan-data", (_req, res) => {
64
- res.setHeader("Content-Type", "application/json");
65
- const result = (0, scannerConfig_1.getScanData)();
66
- res.end(JSON.stringify(result));
67
- });
68
56
  // Dynamically import Vite to create dev server in middleware mode
69
- const { createServer: createViteServer } = await Promise.resolve().then(() => __importStar(require("vite")));
57
+ const { createServer: createViteServer } = await Promise.resolve().then(() => __importStar(require('vite')));
70
58
  const uiRoot = getUiRoot();
71
59
  const vite = await createViteServer({
72
60
  root: uiRoot,
73
- configFile: (0, path_1.resolve)(uiRoot, "vite.config.ts"),
61
+ configFile: (0, path_1.resolve)(uiRoot, 'vite.config.ts'),
74
62
  server: {
75
63
  middlewareMode: true,
76
- hmr: {
77
- server,
78
- },
79
64
  },
80
- appType: "spa",
65
+ appType: 'spa',
66
+ });
67
+ // Create HTTP server with manual routing
68
+ const server = (0, http_1.createServer)(async (req, res) => {
69
+ const url = req.url || '';
70
+ // Handle API routes FIRST - before Vite middleware
71
+ if (url === '/api/scan-data' || url.startsWith('/api/scan-data?')) {
72
+ res.setHeader('Content-Type', 'application/json');
73
+ res.setHeader('Cache-Control', 'no-cache');
74
+ const result = await (0, scannerConfig_1.getScanData)();
75
+ res.end(JSON.stringify(result));
76
+ return;
77
+ }
78
+ // Pass everything else to Vite
79
+ vite.middlewares(req, res);
81
80
  });
82
- // Use Vite's connect instance as middleware
83
- app.use(vite.middlewares);
84
81
  // Handle server errors
85
- server.on("error", (err) => {
86
- console.error("Server error:", err);
82
+ server.on('error', (err) => {
83
+ console.error('Server error:', err);
87
84
  vite.close();
88
85
  process.exit(1);
89
86
  });
90
87
  // Handle graceful shutdown
91
88
  const shutdown = async () => {
92
- console.log("\nShutting down...");
89
+ console.log('\nShutting down...');
93
90
  await vite.close();
94
91
  server.close();
95
92
  process.exit(0);
96
93
  };
97
- process.on("SIGINT", shutdown);
98
- process.on("SIGTERM", shutdown);
99
- return new Promise((resolve, reject) => {
100
- server.on("error", reject);
101
- app.listen({ port, host: "127.0.0.1" }, () => {
94
+ process.on('SIGINT', shutdown);
95
+ process.on('SIGTERM', shutdown);
96
+ return new Promise((resolvePromise, reject) => {
97
+ server.on('error', reject);
98
+ server.listen(port, '127.0.0.1', () => {
102
99
  console.log(`\n🚀 React Scanner UI is running at http://localhost:${port}\n`);
103
- console.log(" ➜ Hot Module Replacement enabled");
104
- console.log(" ➜ Press Ctrl+C to stop the server.\n");
105
- resolve();
100
+ console.log(' ➜ Hot Module Replacement enabled');
101
+ console.log(' ➜ Press Ctrl+C to stop the server.\n');
102
+ resolvePromise();
106
103
  });
107
104
  });
108
105
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,kCAmEC;AA9FD,+BAIc;AACd,+BAAwC;AAExC,kDAA0B;AAC1B,0DAAqD;AAErD;;;GAGG;AACH,SAAS,SAAS;IAChB,qDAAqD;IACrD,kCAAkC;IAClC,MAAM,UAAU,GAAG,SAAS,CAAC;IAE7B,8EAA8E;IAC9E,OAAO,IAAA,cAAO,EAAC,UAAU,EAAE,UAAU,CAAC,CAAC;AACzC,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,WAAW,CAAC,IAAY;IAC5C,MAAM,MAAM,GAAG,IAAA,mBAAgB,GAAE,CAAC;IAClC,MAAM,GAAG,GAAG,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAE9B,gEAAgE;IAChE,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,IAAqB,EAAE,GAAmB,EAAE,EAAE;QACvE,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAA,2BAAW,GAAE,CAAC;QAC7B,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,kEAAkE;IAClE,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,GAAG,wDAAa,MAAM,GAAC,CAAC;IAEhE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC;QAClC,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE,IAAA,cAAO,EAAC,MAAM,EAAE,gBAAgB,CAAC;QAC7C,MAAM,EAAE;YACN,cAAc,EAAE,IAAI;YACpB,GAAG,EAAE;gBACH,MAAM;aACP;SACF;QACD,OAAO,EAAE,KAAK;KACf,CAAC,CAAC;IAEH,4CAA4C;IAC5C,GAAG,CAAC,GAAG,CACL,IAAI,CAAC,WAII,CACV,CAAC;IAEF,uBAAuB;IACvB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAA0B,EAAE,EAAE;QAChD,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,2BAA2B;IAC3B,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;QAC1B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAEhC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAE3B,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE;YAC3C,OAAO,CAAC,GAAG,CACT,wDAAwD,IAAI,IAAI,CACjE,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;YACpD,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACxD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ function createReactScannerConfig() {
14
14
  includeSubComponents: true,
15
15
  importedFrom: 'PLACEHOLDER_FOR_IMPORTED_FROM',
16
16
  processors: [
17
- ['raw-report', { outputDir: './.scans' }],
17
+ ['count-components-and-props', { outputTo: './.react-scanner-ui/scan-report.json' }],
18
18
  ],
19
19
  };
20
20
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../src/utils/dependencies.ts"],"names":[],"mappings":"AAIA,wBAAgB,uBAAuB,IAAI,OAAO,CAOjD;AAED,wBAAgB,mBAAmB,IAAI,OAAO,CAU7C;AAED,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,OAAO,CAAC,CAYlE;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CA2B1C"}
1
+ {"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../src/utils/dependencies.ts"],"names":[],"mappings":"AAIA,wBAAgB,uBAAuB,IAAI,OAAO,CAOjD;AAED,wBAAgB,mBAAmB,IAAI,OAAO,CAU7C;AAED,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,OAAO,CAAC,CAelE;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CA6B1C"}
@@ -32,8 +32,8 @@ async function promptInstallReactScanner() {
32
32
  input: process.stdin,
33
33
  output: process.stdout,
34
34
  });
35
- return new Promise((resolve) => {
36
- rl.question('react-scanner is required. Would you like to install it? (y/n): ', (answer) => {
35
+ return new Promise(resolve => {
36
+ rl.question('react-scanner is required. Would you like to install it? (y/n): ', answer => {
37
37
  rl.close();
38
38
  resolve(answer.toLowerCase() === 'y' || answer.toLowerCase() === 'yes');
39
39
  });
@@ -61,7 +61,7 @@ function installReactScanner() {
61
61
  (0, child_process_1.execSync)(command, { stdio: 'inherit' });
62
62
  console.log('react-scanner installed successfully!');
63
63
  }
64
- catch (error) {
64
+ catch {
65
65
  console.error('Failed to install react-scanner. Please install it manually.');
66
66
  process.exit(1);
67
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../src/utils/dependencies.ts"],"names":[],"mappings":";;AAIA,0DAOC;AAED,kDAUC;AAED,8DAYC;AAED,kDA2BC;AAlED,2BAA8C;AAC9C,iDAAyC;AACzC,uCAA2C;AAE3C,SAAgB,uBAAuB;IACrC,IAAI,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAgB,mBAAmB;IACjC,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QACxD,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC/C,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC7C,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAEM,KAAK,UAAU,yBAAyB;IAC7C,MAAM,EAAE,GAAG,IAAA,0BAAe,EAAC;QACzB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,EAAE,CAAC,QAAQ,CAAC,kEAAkE,EAAE,CAAC,MAAM,EAAE,EAAE;YACzF,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,mBAAmB;IACjC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,eAAU,EAAC,WAAW,CAAC,CAAC;QACxC,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,IAAI,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,MAAM,cAAc,GAAG,IAAA,iBAAY,EAAC,cAAc,EAAE,OAAO,CAAC,CAAC;YAC7D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC/C,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;gBAC3B,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC;QACZ,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,GAAG,gDAAgD,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACvF,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,sCAAsC,CAAC;QACnD,CAAC;QAED,IAAA,wBAAQ,EAAC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;IACvD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAC9E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../src/utils/dependencies.ts"],"names":[],"mappings":";;AAIA,0DAOC;AAED,kDAUC;AAED,8DAeC;AAED,kDA6BC;AAvED,2BAA8C;AAC9C,iDAAyC;AACzC,uCAA2C;AAE3C,SAAgB,uBAAuB;IACrC,IAAI,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAgB,mBAAmB;IACjC,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QACxD,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC/C,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC7C,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAEM,KAAK,UAAU,yBAAyB;IAC7C,MAAM,EAAE,GAAG,IAAA,0BAAe,EAAC;QACzB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;QAC3B,EAAE,CAAC,QAAQ,CACT,kEAAkE,EAClE,MAAM,CAAC,EAAE;YACP,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,CAAC;QAC1E,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,mBAAmB;IACjC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,eAAU,EAAC,WAAW,CAAC,CAAC;QACxC,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,IAAI,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,MAAM,cAAc,GAAG,IAAA,iBAAY,EAAC,cAAc,EAAE,OAAO,CAAC,CAAC;YAC7D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC/C,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;gBAC3B,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC;QACZ,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,GAAG,gDAAgD,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACvF,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,sCAAsC,CAAC;QACnD,CAAC;QAED,IAAA,wBAAQ,EAAC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,KAAK,CACX,8DAA8D,CAC/D,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -1,6 +1,6 @@
1
- export { isReactScannerInstalled, checkPeerDependency, promptInstallReactScanner, installReactScanner, } from "./dependencies";
2
- export { createReactScannerConfig } from "./config";
3
- export { getServerPort, isPortAvailable } from "./port";
4
- export type { PortOptions } from "./port";
5
- export { readScannerConfig, getOutputDir, getLatestScanFile, readScanData, getScanData, } from "./scannerConfig";
1
+ export { isReactScannerInstalled, checkPeerDependency, promptInstallReactScanner, installReactScanner, } from './dependencies';
2
+ export { createReactScannerConfig } from './config';
3
+ export { getServerPort, isPortAvailable } from './port';
4
+ export type { PortOptions } from './port';
5
+ export { readScannerConfig, readScanData, getScanData } from './scannerConfig';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACxD,YAAY,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,WAAW,GACZ,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACxD,YAAY,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getScanData = exports.readScanData = exports.getLatestScanFile = exports.getOutputDir = exports.readScannerConfig = exports.isPortAvailable = exports.getServerPort = exports.createReactScannerConfig = exports.installReactScanner = exports.promptInstallReactScanner = exports.checkPeerDependency = exports.isReactScannerInstalled = void 0;
3
+ exports.getScanData = exports.readScanData = exports.readScannerConfig = exports.isPortAvailable = exports.getServerPort = exports.createReactScannerConfig = exports.installReactScanner = exports.promptInstallReactScanner = exports.checkPeerDependency = exports.isReactScannerInstalled = void 0;
4
4
  var dependencies_1 = require("./dependencies");
5
5
  Object.defineProperty(exports, "isReactScannerInstalled", { enumerable: true, get: function () { return dependencies_1.isReactScannerInstalled; } });
6
6
  Object.defineProperty(exports, "checkPeerDependency", { enumerable: true, get: function () { return dependencies_1.checkPeerDependency; } });
@@ -13,8 +13,6 @@ Object.defineProperty(exports, "getServerPort", { enumerable: true, get: functio
13
13
  Object.defineProperty(exports, "isPortAvailable", { enumerable: true, get: function () { return port_1.isPortAvailable; } });
14
14
  var scannerConfig_1 = require("./scannerConfig");
15
15
  Object.defineProperty(exports, "readScannerConfig", { enumerable: true, get: function () { return scannerConfig_1.readScannerConfig; } });
16
- Object.defineProperty(exports, "getOutputDir", { enumerable: true, get: function () { return scannerConfig_1.getOutputDir; } });
17
- Object.defineProperty(exports, "getLatestScanFile", { enumerable: true, get: function () { return scannerConfig_1.getLatestScanFile; } });
18
16
  Object.defineProperty(exports, "readScanData", { enumerable: true, get: function () { return scannerConfig_1.readScanData; } });
19
17
  Object.defineProperty(exports, "getScanData", { enumerable: true, get: function () { return scannerConfig_1.getScanData; } });
20
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,+CAKwB;AAJtB,uHAAA,uBAAuB,OAAA;AACvB,mHAAA,mBAAmB,OAAA;AACnB,yHAAA,yBAAyB,OAAA;AACzB,mHAAA,mBAAmB,OAAA;AAErB,mCAAoD;AAA3C,kHAAA,wBAAwB,OAAA;AACjC,+BAAwD;AAA/C,qGAAA,aAAa,OAAA;AAAE,uGAAA,eAAe,OAAA;AAEvC,iDAMyB;AALvB,kHAAA,iBAAiB,OAAA;AACjB,6GAAA,YAAY,OAAA;AACZ,kHAAA,iBAAiB,OAAA;AACjB,6GAAA,YAAY,OAAA;AACZ,4GAAA,WAAW,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,+CAKwB;AAJtB,uHAAA,uBAAuB,OAAA;AACvB,mHAAA,mBAAmB,OAAA;AACnB,yHAAA,yBAAyB,OAAA;AACzB,mHAAA,mBAAmB,OAAA;AAErB,mCAAoD;AAA3C,kHAAA,wBAAwB,OAAA;AACjC,+BAAwD;AAA/C,qGAAA,aAAa,OAAA;AAAE,uGAAA,eAAe,OAAA;AAEvC,iDAA+E;AAAtE,kHAAA,iBAAiB,OAAA;AAAE,6GAAA,YAAY,OAAA;AAAE,4GAAA,WAAW,OAAA"}
@@ -21,7 +21,7 @@ async function getServerPort(port = 3000, { exactPort } = {}) {
21
21
  return freePort;
22
22
  }
23
23
  catch (error) {
24
- console.error("Error detecting available port:", error);
24
+ console.error('Error detecting available port:', error);
25
25
  process.exit(1);
26
26
  }
27
27
  }
@@ -3,7 +3,7 @@ export interface ScannerConfig {
3
3
  includeSubComponents?: boolean;
4
4
  importedFrom?: string;
5
5
  processors?: Array<[string, {
6
- outputDir?: string;
6
+ outputTo?: string;
7
7
  }]>;
8
8
  }
9
9
  export interface ScanData {
@@ -15,15 +15,11 @@ export interface ScanData {
15
15
  /**
16
16
  * Read and parse the react-scanner.config.js file
17
17
  */
18
- export declare function readScannerConfig(): ScannerConfig | null;
18
+ export declare function readScannerConfig(): Promise<ScannerConfig | null>;
19
19
  /**
20
- * Get the output directory from the scanner config
20
+ * Get the output file path from the scanner config
21
21
  */
22
- export declare function getOutputDir(config: ScannerConfig): string | null;
23
- /**
24
- * Get the latest scan file from the output directory
25
- */
26
- export declare function getLatestScanFile(outputDir: string): string | null;
22
+ export declare function getOutputFile(config: ScannerConfig): string | null;
27
23
  /**
28
24
  * Read and parse the scan data from a JSON file
29
25
  */
@@ -31,8 +27,8 @@ export declare function readScanData(filePath: string): ScanData | null;
31
27
  /**
32
28
  * Get the scan data from the react-scanner output
33
29
  */
34
- export declare function getScanData(): {
30
+ export declare function getScanData(): Promise<{
35
31
  data: ScanData | null;
36
32
  error: string | null;
37
- };
33
+ }>;
38
34
  //# sourceMappingURL=scannerConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scannerConfig.d.ts","sourceRoot":"","sources":["../../src/utils/scannerConfig.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,QAAQ;IACvB,CAAC,aAAa,EAAE,MAAM,GAAG;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAChC,CAAC;CACH;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,aAAa,GAAG,IAAI,CAiBxD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAYjE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA8BlE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAQ9D;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI;IAAE,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAsB7E"}
1
+ {"version":3,"file":"scannerConfig.d.ts","sourceRoot":"","sources":["../../src/utils/scannerConfig.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,QAAQ;IACvB,CAAC,aAAa,EAAE,MAAM,GAAG;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAChC,CAAC;CACH;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAkBvE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAgBlE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAgB9D;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC;IAC3C,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC,CAqBD"}
@@ -1,8 +1,40 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  Object.defineProperty(exports, "__esModule", { value: true });
3
36
  exports.readScannerConfig = readScannerConfig;
4
- exports.getOutputDir = getOutputDir;
5
- exports.getLatestScanFile = getLatestScanFile;
37
+ exports.getOutputFile = getOutputFile;
6
38
  exports.readScanData = readScanData;
7
39
  exports.getScanData = getScanData;
8
40
  const fs_1 = require("fs");
@@ -10,17 +42,16 @@ const path_1 = require("path");
10
42
  /**
11
43
  * Read and parse the react-scanner.config.js file
12
44
  */
13
- function readScannerConfig() {
45
+ async function readScannerConfig() {
14
46
  const configPath = (0, path_1.join)(process.cwd(), 'react-scanner.config.js');
15
47
  if (!(0, fs_1.existsSync)(configPath)) {
16
48
  console.error('react-scanner.config.js not found. Run `react-scanner-ui init` first.');
17
49
  return null;
18
50
  }
19
51
  try {
20
- // Clear require cache to get fresh config
21
- delete require.cache[require.resolve(configPath)];
22
- const config = require(configPath);
23
- return config;
52
+ // Use dynamic import for ES modules
53
+ const config = await Promise.resolve(`${configPath}`).then(s => __importStar(require(s)));
54
+ return config.default || config;
24
55
  }
25
56
  catch (error) {
26
57
  console.error('Failed to read react-scanner.config.js:', error);
@@ -28,56 +59,33 @@ function readScannerConfig() {
28
59
  }
29
60
  }
30
61
  /**
31
- * Get the output directory from the scanner config
62
+ * Get the output file path from the scanner config
32
63
  */
33
- function getOutputDir(config) {
64
+ function getOutputFile(config) {
34
65
  if (!config.processors || !Array.isArray(config.processors)) {
35
66
  return null;
36
67
  }
37
68
  for (const processor of config.processors) {
38
- if (Array.isArray(processor) && processor[0] === 'raw-report' && processor[1]?.outputDir) {
39
- return processor[1].outputDir;
69
+ if (Array.isArray(processor) &&
70
+ processor[0] === 'count-components-and-props' &&
71
+ processor[1]?.outputTo) {
72
+ return processor[1].outputTo;
40
73
  }
41
74
  }
42
75
  return null;
43
76
  }
44
77
  /**
45
- * Get the latest scan file from the output directory
78
+ * Read and parse the scan data from a JSON file
46
79
  */
47
- function getLatestScanFile(outputDir) {
48
- const absoluteOutputDir = (0, path_1.resolve)(process.cwd(), outputDir);
49
- if (!(0, fs_1.existsSync)(absoluteOutputDir)) {
50
- console.error(`Scan output directory not found: ${absoluteOutputDir}`);
80
+ function readScanData(filePath) {
81
+ const absolutePath = (0, path_1.resolve)(process.cwd(), filePath);
82
+ if (!(0, fs_1.existsSync)(absolutePath)) {
83
+ console.error(`Scan data file not found: ${absolutePath}`);
51
84
  console.error('Run react-scanner first to generate scan data.');
52
85
  return null;
53
86
  }
54
87
  try {
55
- const files = (0, fs_1.readdirSync)(absoluteOutputDir)
56
- .filter((file) => file.endsWith('.json'))
57
- .map((file) => ({
58
- name: file,
59
- path: (0, path_1.join)(absoluteOutputDir, file),
60
- mtime: (0, fs_1.statSync)((0, path_1.join)(absoluteOutputDir, file)).mtime,
61
- }))
62
- .sort((a, b) => b.mtime.getTime() - a.mtime.getTime());
63
- if (files.length === 0) {
64
- console.error('No scan files found in output directory.');
65
- console.error('Run react-scanner first to generate scan data.');
66
- return null;
67
- }
68
- return files[0].path;
69
- }
70
- catch (error) {
71
- console.error('Failed to read scan output directory:', error);
72
- return null;
73
- }
74
- }
75
- /**
76
- * Read and parse the scan data from a JSON file
77
- */
78
- function readScanData(filePath) {
79
- try {
80
- const content = (0, fs_1.readFileSync)(filePath, 'utf-8');
88
+ const content = (0, fs_1.readFileSync)(absolutePath, 'utf-8');
81
89
  return JSON.parse(content);
82
90
  }
83
91
  catch (error) {
@@ -88,18 +96,17 @@ function readScanData(filePath) {
88
96
  /**
89
97
  * Get the scan data from the react-scanner output
90
98
  */
91
- function getScanData() {
92
- const config = readScannerConfig();
99
+ async function getScanData() {
100
+ const config = await readScannerConfig();
93
101
  if (!config) {
94
102
  return { data: null, error: 'Could not read react-scanner.config.js' };
95
103
  }
96
- const outputDir = getOutputDir(config);
97
- if (!outputDir) {
98
- return { data: null, error: 'Could not find output directory in config. Make sure you have a raw-report processor configured.' };
99
- }
100
- const scanFile = getLatestScanFile(outputDir);
104
+ const scanFile = getOutputFile(config);
101
105
  if (!scanFile) {
102
- return { data: null, error: 'No scan data found. Run react-scanner first.' };
106
+ return {
107
+ data: null,
108
+ error: 'Could not find output file in config. Make sure you have a count-components-and-props processor configured with outputTo.',
109
+ };
103
110
  }
104
111
  const data = readScanData(scanFile);
105
112
  if (!data) {
@@ -1 +1 @@
1
- {"version":3,"file":"scannerConfig.js","sourceRoot":"","sources":["../../src/utils/scannerConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scannerConfig.js","sourceRoot":"","sources":["../../src/utils/scannerConfig.ts"],"names":[],"mappings":"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"}