codevf 1.0.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 (78) hide show
  1. package/ARCHITECTURE.md +285 -0
  2. package/BUILD_SUMMARY.md +340 -0
  3. package/LICENSE +21 -0
  4. package/QUICKSTART.md +180 -0
  5. package/README.md +104 -0
  6. package/dist/commands/fix.d.ts +2 -0
  7. package/dist/commands/fix.d.ts.map +1 -0
  8. package/dist/commands/fix.js +118 -0
  9. package/dist/commands/fix.js.map +1 -0
  10. package/dist/commands/init.d.ts +2 -0
  11. package/dist/commands/init.d.ts.map +1 -0
  12. package/dist/commands/init.js +270 -0
  13. package/dist/commands/init.js.map +1 -0
  14. package/dist/commands/login.d.ts +2 -0
  15. package/dist/commands/login.d.ts.map +1 -0
  16. package/dist/commands/login.js +62 -0
  17. package/dist/commands/login.js.map +1 -0
  18. package/dist/commands/logout.d.ts +2 -0
  19. package/dist/commands/logout.d.ts.map +1 -0
  20. package/dist/commands/logout.js +14 -0
  21. package/dist/commands/logout.js.map +1 -0
  22. package/dist/commands/sync.d.ts +4 -0
  23. package/dist/commands/sync.d.ts.map +1 -0
  24. package/dist/commands/sync.js +93 -0
  25. package/dist/commands/sync.js.map +1 -0
  26. package/dist/commands/tasks.d.ts +2 -0
  27. package/dist/commands/tasks.d.ts.map +1 -0
  28. package/dist/commands/tasks.js +41 -0
  29. package/dist/commands/tasks.js.map +1 -0
  30. package/dist/index.d.ts +3 -0
  31. package/dist/index.d.ts.map +1 -0
  32. package/dist/index.js +248 -0
  33. package/dist/index.js.map +1 -0
  34. package/dist/modules/api.d.ts +36 -0
  35. package/dist/modules/api.d.ts.map +1 -0
  36. package/dist/modules/api.js +107 -0
  37. package/dist/modules/api.js.map +1 -0
  38. package/dist/modules/auth.d.ts +13 -0
  39. package/dist/modules/auth.d.ts.map +1 -0
  40. package/dist/modules/auth.js +80 -0
  41. package/dist/modules/auth.js.map +1 -0
  42. package/dist/modules/config.d.ts +17 -0
  43. package/dist/modules/config.d.ts.map +1 -0
  44. package/dist/modules/config.js +76 -0
  45. package/dist/modules/config.js.map +1 -0
  46. package/dist/modules/git.d.ts +13 -0
  47. package/dist/modules/git.d.ts.map +1 -0
  48. package/dist/modules/git.js +78 -0
  49. package/dist/modules/git.js.map +1 -0
  50. package/dist/modules/permissions.d.ts +5 -0
  51. package/dist/modules/permissions.d.ts.map +1 -0
  52. package/dist/modules/permissions.js +42 -0
  53. package/dist/modules/permissions.js.map +1 -0
  54. package/dist/modules/websocket.d.ts +17 -0
  55. package/dist/modules/websocket.d.ts.map +1 -0
  56. package/dist/modules/websocket.js +80 -0
  57. package/dist/modules/websocket.js.map +1 -0
  58. package/dist/types/index.d.ts +186 -0
  59. package/dist/types/index.d.ts.map +1 -0
  60. package/dist/types/index.js +40 -0
  61. package/dist/types/index.js.map +1 -0
  62. package/dist/ui/LiveSession.d.ts +13 -0
  63. package/dist/ui/LiveSession.d.ts.map +1 -0
  64. package/dist/ui/LiveSession.js +451 -0
  65. package/dist/ui/LiveSession.js.map +1 -0
  66. package/dist/utils/detect.d.ts +3 -0
  67. package/dist/utils/detect.d.ts.map +1 -0
  68. package/dist/utils/detect.js +78 -0
  69. package/dist/utils/detect.js.map +1 -0
  70. package/dist/utils/errors.d.ts +3 -0
  71. package/dist/utils/errors.d.ts.map +1 -0
  72. package/dist/utils/errors.js +36 -0
  73. package/dist/utils/errors.js.map +1 -0
  74. package/dist/utils/upload.d.ts +3 -0
  75. package/dist/utils/upload.d.ts.map +1 -0
  76. package/dist/utils/upload.js +75 -0
  77. package/dist/utils/upload.js.map +1 -0
  78. package/package.json +76 -0
@@ -0,0 +1,75 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ import archiver from 'archiver';
4
+ import ignore from 'ignore';
5
+ const DEFAULT_IGNORE_PATTERNS = [
6
+ 'node_modules/',
7
+ '.git/',
8
+ 'dist/',
9
+ 'build/',
10
+ 'coverage/',
11
+ '.codevf/',
12
+ '*.log',
13
+ '.env',
14
+ '.env.local',
15
+ '.DS_Store',
16
+ 'Thumbs.db',
17
+ ];
18
+ export async function createRepoZip(cwd) {
19
+ return new Promise((resolve, reject) => {
20
+ const chunks = [];
21
+ const archive = archiver('zip', {
22
+ zlib: { level: 9 },
23
+ });
24
+ archive.on('data', (chunk) => chunks.push(chunk));
25
+ archive.on('end', () => resolve(Buffer.concat(chunks)));
26
+ archive.on('error', reject);
27
+ // Load .gitignore patterns
28
+ const ig = ignore().add(DEFAULT_IGNORE_PATTERNS);
29
+ const gitignorePath = path.join(cwd, '.gitignore');
30
+ if (fs.existsSync(gitignorePath)) {
31
+ const gitignoreContent = fs.readFileSync(gitignorePath, 'utf-8');
32
+ ig.add(gitignoreContent);
33
+ }
34
+ // Add files to archive
35
+ const addDirectory = (dirPath, basePath = '') => {
36
+ const files = fs.readdirSync(dirPath);
37
+ for (const file of files) {
38
+ const filePath = path.join(dirPath, file);
39
+ const relativePath = path.join(basePath, file);
40
+ // Skip ignored files
41
+ if (ig.ignores(relativePath)) {
42
+ continue;
43
+ }
44
+ const stat = fs.statSync(filePath);
45
+ if (stat.isDirectory()) {
46
+ addDirectory(filePath, relativePath);
47
+ }
48
+ else if (stat.isFile()) {
49
+ // Skip large files (> 10MB)
50
+ if (stat.size > 10 * 1024 * 1024) {
51
+ continue;
52
+ }
53
+ archive.file(filePath, { name: relativePath });
54
+ }
55
+ }
56
+ };
57
+ addDirectory(cwd);
58
+ archive.finalize();
59
+ });
60
+ }
61
+ export function shouldWarnAboutFile(filePath) {
62
+ const sensitivePatterns = [
63
+ /\.env$/i,
64
+ /\.env\./i,
65
+ /credentials/i,
66
+ /secret/i,
67
+ /password/i,
68
+ /auth\.json$/i,
69
+ /id_rsa$/i,
70
+ /\.pem$/i,
71
+ /\.key$/i,
72
+ ];
73
+ return sensitivePatterns.some((pattern) => pattern.test(filePath));
74
+ }
75
+ //# sourceMappingURL=upload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/utils/upload.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,76 @@
1
+ {
2
+ "name": "codevf",
3
+ "version": "1.0.0",
4
+ "description": "CodeVF CLI - Live debugging with vetted engineers",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "bin": {
8
+ "codevf": "./dist/index.js"
9
+ },
10
+ "files": [
11
+ "dist",
12
+ "LICENSE",
13
+ "README.md",
14
+ "QUICKSTART.md",
15
+ "BUILD_SUMMARY.md",
16
+ "ARCHITECTURE.md"
17
+ ],
18
+ "scripts": {
19
+ "build": "tsc",
20
+ "dev": "tsx src/index.ts",
21
+ "start": "node dist/index.js",
22
+ "test": "jest",
23
+ "lint": "eslint src --ext .ts,.tsx",
24
+ "format": "prettier --write \"src/**/*.{ts,tsx}\"",
25
+ "prepublishOnly": "npm run build"
26
+ },
27
+ "keywords": [
28
+ "cli",
29
+ "debugging",
30
+ "code-review",
31
+ "live-support"
32
+ ],
33
+ "author": "CodeVF",
34
+ "license": "MIT",
35
+ "dependencies": {
36
+ "yargs": "^17.7.2",
37
+ "ink": "^4.4.1",
38
+ "react": "^18.2.0",
39
+ "ws": "^8.16.0",
40
+ "axios": "^1.6.7",
41
+ "ora": "^8.0.1",
42
+ "chalk": "^5.3.0",
43
+ "prompts": "^2.4.2",
44
+ "archiver": "^6.0.1",
45
+ "open": "^10.0.3",
46
+ "dotenv": "^16.4.1",
47
+ "uuid": "^9.0.1",
48
+ "date-fns": "^3.3.1",
49
+ "simple-git": "^3.22.0",
50
+ "ignore": "^5.3.0"
51
+ },
52
+ "devDependencies": {
53
+ "@types/react": "^18.2.55",
54
+ "@types/react-dom": "^18.2.19",
55
+ "@types/node": "^20.11.16",
56
+ "@types/ws": "^8.5.10",
57
+ "@types/prompts": "^2.4.9",
58
+ "@types/archiver": "^6.0.2",
59
+ "@types/uuid": "^9.0.7",
60
+ "@types/yargs": "^17.0.32",
61
+ "typescript": "^5.3.3",
62
+ "tsx": "^4.7.1",
63
+ "@typescript-eslint/eslint-plugin": "^6.20.0",
64
+ "@typescript-eslint/parser": "^6.20.0",
65
+ "eslint": "^8.56.0",
66
+ "prettier": "^3.2.5",
67
+ "jest": "^29.7.0",
68
+ "@types/jest": "^29.5.12",
69
+ "ts-jest": "^29.1.2",
70
+ "ink-testing-library": "^3.0.0",
71
+ "react-devtools-core": "^4.28.5"
72
+ },
73
+ "engines": {
74
+ "node": ">=18.0.0"
75
+ }
76
+ }