react-scanner-ui 0.0.15 → 0.0.17

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/README.md +5 -6
  2. package/dist/commands/build.d.ts.map +1 -1
  3. package/dist/commands/build.js +25 -17
  4. package/dist/commands/build.js.map +1 -1
  5. package/dist/commands/info.d.ts.map +1 -1
  6. package/dist/commands/info.js +2 -1
  7. package/dist/commands/info.js.map +1 -1
  8. package/dist/commands/init.d.ts.map +1 -1
  9. package/dist/commands/init.js +26 -5
  10. package/dist/commands/init.js.map +1 -1
  11. package/dist/commands/start.d.ts.map +1 -1
  12. package/dist/commands/start.js +14 -20
  13. package/dist/commands/start.js.map +1 -1
  14. package/dist/server/index.d.ts.map +1 -1
  15. package/dist/server/index.js +11 -5
  16. package/dist/server/index.js.map +1 -1
  17. package/dist/utils/config.d.ts +9 -1
  18. package/dist/utils/config.d.ts.map +1 -1
  19. package/dist/utils/config.js +76 -8
  20. package/dist/utils/config.js.map +1 -1
  21. package/dist/utils/dependencies.d.ts +1 -1
  22. package/dist/utils/dependencies.d.ts.map +1 -1
  23. package/dist/utils/dependencies.js +67 -38
  24. package/dist/utils/dependencies.js.map +1 -1
  25. package/dist/utils/index.d.ts +4 -1
  26. package/dist/utils/index.d.ts.map +1 -1
  27. package/dist/utils/index.js +3 -1
  28. package/dist/utils/index.js.map +1 -1
  29. package/dist/utils/logger.d.ts +111 -0
  30. package/dist/utils/logger.d.ts.map +1 -0
  31. package/dist/utils/logger.js +276 -0
  32. package/dist/utils/logger.js.map +1 -0
  33. package/dist/utils/port.d.ts.map +1 -1
  34. package/dist/utils/port.js +3 -2
  35. package/dist/utils/port.js.map +1 -1
  36. package/dist/utils/scannerConfig.d.ts +1 -0
  37. package/dist/utils/scannerConfig.d.ts.map +1 -1
  38. package/dist/utils/scannerConfig.js +22 -6
  39. package/dist/utils/scannerConfig.js.map +1 -1
  40. package/package.json +5 -1
@@ -1,12 +1,13 @@
1
1
  import { existsSync, readFileSync } from 'fs';
2
2
  import { join, resolve } from 'path';
3
+ import * as logger from './logger.js';
3
4
  /**
4
5
  * Read and parse the react-scanner.config.js file
5
6
  */
6
7
  export async function readScannerConfig() {
7
8
  const configPath = join(process.cwd(), 'react-scanner.config.js');
8
9
  if (!existsSync(configPath)) {
9
- console.error('react-scanner.config.js not found. Run `react-scanner-ui init` first.');
10
+ logger.errorBox('Configuration Not Found', `${logger.bold('react-scanner.config.js')} not found.\nRun ${logger.bold('react-scanner-ui init')} first to create the configuration.`);
10
11
  return null;
11
12
  }
12
13
  try {
@@ -15,7 +16,7 @@ export async function readScannerConfig() {
15
16
  return config.default || config;
16
17
  }
17
18
  catch (error) {
18
- console.error('Failed to read react-scanner.config.js:', error);
19
+ logger.errorBox('Configuration Error', `Failed to read react-scanner.config.js\n${error}`);
19
20
  return null;
20
21
  }
21
22
  }
@@ -35,22 +36,37 @@ export function getOutputFile(config) {
35
36
  }
36
37
  return null;
37
38
  }
39
+ /**
40
+ * Check if the parsed data is in wrapped format { data, error }
41
+ */
42
+ function isWrappedFormat(parsed) {
43
+ return (typeof parsed === 'object' &&
44
+ parsed !== null &&
45
+ 'data' in parsed &&
46
+ 'error' in parsed);
47
+ }
38
48
  /**
39
49
  * Read and parse the scan data from a JSON file
50
+ * Handles both raw format (from react-scanner) and wrapped format (from build)
40
51
  */
41
52
  export function readScanData(filePath) {
42
53
  const absolutePath = resolve(process.cwd(), filePath);
43
54
  if (!existsSync(absolutePath)) {
44
- console.error(`Scan data file not found: ${absolutePath}`);
45
- console.error('Run react-scanner first to generate scan data.');
55
+ logger.errorBox('Scan Data Not Found', `Scan data file not found: ${logger.bold(absolutePath)}\n\nRun ${logger.bold('npx react-scanner')} first to generate the scan data.`);
46
56
  return null;
47
57
  }
48
58
  try {
49
59
  const content = readFileSync(absolutePath, 'utf-8');
50
- return JSON.parse(content);
60
+ const parsed = JSON.parse(content);
61
+ // Handle wrapped format { data, error } from build command
62
+ if (isWrappedFormat(parsed)) {
63
+ return parsed.data;
64
+ }
65
+ // Handle raw format from react-scanner
66
+ return parsed;
51
67
  }
52
68
  catch (error) {
53
- console.error('Failed to read scan data:', error);
69
+ logger.errorBox('Parse Error', `Failed to read scan data: ${error}`);
54
70
  return null;
55
71
  }
56
72
  }
@@ -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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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "react-scanner-ui",
3
3
  "type": "module",
4
- "version": "0.0.15",
4
+ "version": "0.0.17",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
7
7
  "react-scanner-ui": "dist/index.js"
@@ -35,9 +35,13 @@
35
35
  "format:check": "prettier --check ."
36
36
  },
37
37
  "dependencies": {
38
+ "@inquirer/prompts": "^8.1.0",
38
39
  "@vitejs/plugin-react": "^4.3.4",
40
+ "boxen": "^8.0.1",
39
41
  "commander": "^14.0.2",
40
42
  "detect-port": "^1.6.1",
43
+ "ora": "^9.0.0",
44
+ "picocolors": "^1.1.1",
41
45
  "react": "^18.3.1",
42
46
  "react-dom": "^18.3.1",
43
47
  "vite": "^5.4.19"