draken 0.1.0 → 0.1.3
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.
- package/README.md +9 -1
- package/dist/db/schema.d.ts +6 -0
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js +19 -5
- package/dist/db/schema.js.map +1 -1
- package/dist/docker/dockerfile.d.ts +46 -1
- package/dist/docker/dockerfile.d.ts.map +1 -1
- package/dist/docker/dockerfile.js +130 -2
- package/dist/docker/dockerfile.js.map +1 -1
- package/dist/docker/manager.d.ts.map +1 -1
- package/dist/docker/manager.js +116 -6
- package/dist/docker/manager.js.map +1 -1
- package/dist/git/status.d.ts +40 -0
- package/dist/git/status.d.ts.map +1 -1
- package/dist/git/status.js +127 -8
- package/dist/git/status.js.map +1 -1
- package/dist/routes/git.d.ts +6 -0
- package/dist/routes/git.d.ts.map +1 -1
- package/dist/routes/git.js +218 -15
- package/dist/routes/git.js.map +1 -1
- package/dist/routes/projects.d.ts.map +1 -1
- package/dist/routes/projects.js +74 -3
- package/dist/routes/projects.js.map +1 -1
- package/package.json +1 -1
- package/public/assets/index-3ngsG5kF.css +1 -0
- package/public/assets/index-B3YSD0ee.js +252 -0
- package/public/favicon.png +0 -0
- package/public/index.html +3 -3
- package/public/assets/index-B_sRrhlE.css +0 -1
- package/public/assets/index-DHRickdD.js +0 -235
package/dist/git/status.js
CHANGED
|
@@ -4,6 +4,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.isGitRepo = isGitRepo;
|
|
7
|
+
exports.listBranches = listBranches;
|
|
8
|
+
exports.createBranch = createBranch;
|
|
9
|
+
exports.checkoutBranch = checkoutBranch;
|
|
10
|
+
exports.stageFiles = stageFiles;
|
|
11
|
+
exports.stageAll = stageAll;
|
|
12
|
+
exports.unstageFiles = unstageFiles;
|
|
13
|
+
exports.unstageAll = unstageAll;
|
|
14
|
+
exports.commit = commit;
|
|
7
15
|
exports.getGitStatus = getGitStatus;
|
|
8
16
|
exports.getGitDiff = getGitDiff;
|
|
9
17
|
exports.getGitDiffs = getGitDiffs;
|
|
@@ -12,12 +20,124 @@ const simple_git_1 = __importDefault(require("simple-git"));
|
|
|
12
20
|
const path_1 = __importDefault(require("path"));
|
|
13
21
|
const fs_1 = __importDefault(require("fs"));
|
|
14
22
|
function isGitRepo(projectPath) {
|
|
15
|
-
|
|
16
|
-
|
|
23
|
+
try {
|
|
24
|
+
const gitDir = path_1.default.join(projectPath, '.git');
|
|
25
|
+
if (!fs_1.default.existsSync(gitDir)) {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
// Check if it's a directory (normal repo) or file (worktree/submodule)
|
|
29
|
+
const stat = fs_1.default.statSync(gitDir);
|
|
30
|
+
return stat.isDirectory() || stat.isFile();
|
|
31
|
+
}
|
|
32
|
+
catch {
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
17
35
|
}
|
|
18
36
|
function createGit(projectPath) {
|
|
19
37
|
return (0, simple_git_1.default)(projectPath, { binary: 'git', maxConcurrentProcesses: 6 });
|
|
20
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* List all local branches
|
|
41
|
+
*/
|
|
42
|
+
async function listBranches(projectPath) {
|
|
43
|
+
if (!isGitRepo(projectPath)) {
|
|
44
|
+
return [];
|
|
45
|
+
}
|
|
46
|
+
try {
|
|
47
|
+
const git = createGit(projectPath);
|
|
48
|
+
const branchSummary = await git.branchLocal();
|
|
49
|
+
return branchSummary.all.map(name => ({
|
|
50
|
+
name,
|
|
51
|
+
current: name === branchSummary.current,
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
54
|
+
catch {
|
|
55
|
+
// Not a valid git repo - return empty
|
|
56
|
+
return [];
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Create a new branch
|
|
61
|
+
*/
|
|
62
|
+
async function createBranch(projectPath, branchName, checkout = true) {
|
|
63
|
+
if (!isGitRepo(projectPath)) {
|
|
64
|
+
throw new Error('Not a git repository');
|
|
65
|
+
}
|
|
66
|
+
const git = createGit(projectPath);
|
|
67
|
+
if (checkout) {
|
|
68
|
+
await git.checkoutLocalBranch(branchName);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
await git.branch([branchName]);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Checkout an existing branch
|
|
76
|
+
*/
|
|
77
|
+
async function checkoutBranch(projectPath, branchName) {
|
|
78
|
+
if (!isGitRepo(projectPath)) {
|
|
79
|
+
throw new Error('Not a git repository');
|
|
80
|
+
}
|
|
81
|
+
const git = createGit(projectPath);
|
|
82
|
+
await git.checkout(branchName);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Stage files for commit
|
|
86
|
+
*/
|
|
87
|
+
async function stageFiles(projectPath, files) {
|
|
88
|
+
if (!isGitRepo(projectPath)) {
|
|
89
|
+
throw new Error('Not a git repository');
|
|
90
|
+
}
|
|
91
|
+
const git = createGit(projectPath);
|
|
92
|
+
await git.add(files);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Stage all changes
|
|
96
|
+
*/
|
|
97
|
+
async function stageAll(projectPath) {
|
|
98
|
+
if (!isGitRepo(projectPath)) {
|
|
99
|
+
throw new Error('Not a git repository');
|
|
100
|
+
}
|
|
101
|
+
const git = createGit(projectPath);
|
|
102
|
+
await git.add('-A');
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Unstage files
|
|
106
|
+
*/
|
|
107
|
+
async function unstageFiles(projectPath, files) {
|
|
108
|
+
if (!isGitRepo(projectPath)) {
|
|
109
|
+
throw new Error('Not a git repository');
|
|
110
|
+
}
|
|
111
|
+
const git = createGit(projectPath);
|
|
112
|
+
await git.reset(['HEAD', '--', ...files]);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Unstage all files
|
|
116
|
+
*/
|
|
117
|
+
async function unstageAll(projectPath) {
|
|
118
|
+
if (!isGitRepo(projectPath)) {
|
|
119
|
+
throw new Error('Not a git repository');
|
|
120
|
+
}
|
|
121
|
+
const git = createGit(projectPath);
|
|
122
|
+
await git.reset(['HEAD']);
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Commit staged changes
|
|
126
|
+
*/
|
|
127
|
+
async function commit(projectPath, message) {
|
|
128
|
+
if (!isGitRepo(projectPath)) {
|
|
129
|
+
throw new Error('Not a git repository');
|
|
130
|
+
}
|
|
131
|
+
if (!message.trim()) {
|
|
132
|
+
throw new Error('Commit message cannot be empty');
|
|
133
|
+
}
|
|
134
|
+
const git = createGit(projectPath);
|
|
135
|
+
const result = await git.commit(message);
|
|
136
|
+
return {
|
|
137
|
+
hash: result.commit,
|
|
138
|
+
message: message,
|
|
139
|
+
};
|
|
140
|
+
}
|
|
21
141
|
async function getGitStatus(projectPath) {
|
|
22
142
|
if (!isGitRepo(projectPath)) {
|
|
23
143
|
return {
|
|
@@ -100,8 +220,8 @@ async function getGitStatus(projectPath) {
|
|
|
100
220
|
hasUntrackedFiles,
|
|
101
221
|
};
|
|
102
222
|
}
|
|
103
|
-
catch
|
|
104
|
-
|
|
223
|
+
catch {
|
|
224
|
+
// Not a valid git repo or git error - return as non-repo
|
|
105
225
|
return {
|
|
106
226
|
isRepo: false,
|
|
107
227
|
branch: null,
|
|
@@ -122,8 +242,7 @@ async function getGitDiff(projectPath, staged = false) {
|
|
|
122
242
|
const options = staged ? ['--cached'] : [];
|
|
123
243
|
return await git.diff(options);
|
|
124
244
|
}
|
|
125
|
-
catch
|
|
126
|
-
console.error('Error getting git diff:', err);
|
|
245
|
+
catch {
|
|
127
246
|
return '';
|
|
128
247
|
}
|
|
129
248
|
}
|
|
@@ -200,8 +319,8 @@ async function getFileDiffContent(projectPath, filePath, staged) {
|
|
|
200
319
|
}
|
|
201
320
|
}
|
|
202
321
|
}
|
|
203
|
-
catch
|
|
204
|
-
|
|
322
|
+
catch {
|
|
323
|
+
// Git error - return empty content
|
|
205
324
|
}
|
|
206
325
|
return {
|
|
207
326
|
oldContent,
|
package/dist/git/status.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/git/status.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/git/status.ts"],"names":[],"mappings":"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"}
|
package/dist/routes/git.d.ts
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
import { GitStatus } from '../git/status';
|
|
1
2
|
declare const router: import("express-serve-static-core").Router;
|
|
3
|
+
export interface MultiRepoGitStatus {
|
|
4
|
+
mount: string;
|
|
5
|
+
path: string;
|
|
6
|
+
status: GitStatus;
|
|
7
|
+
}
|
|
2
8
|
export default router;
|
|
3
9
|
//# sourceMappingURL=git.d.ts.map
|
package/dist/routes/git.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/routes/git.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/routes/git.ts"],"names":[],"mappings":"AAKA,OAAO,EAcL,SAAS,EACV,MAAM,eAAe,CAAC;AAEvB,QAAA,MAAM,MAAM,4CAAW,CAAC;AA0CxB,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,CAAC;CACnB;AA+UD,eAAe,MAAM,CAAC"}
|
package/dist/routes/git.js
CHANGED
|
@@ -7,57 +7,115 @@ const express_1 = require("express");
|
|
|
7
7
|
const fs_1 = __importDefault(require("fs"));
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
9
|
const queries_1 = require("../db/queries");
|
|
10
|
+
const dockerfile_1 = require("../docker/dockerfile");
|
|
10
11
|
const status_1 = require("../git/status");
|
|
11
12
|
const router = (0, express_1.Router)();
|
|
12
13
|
// Max file size to read (100KB)
|
|
13
14
|
const MAX_FILE_SIZE = 100 * 1024;
|
|
14
|
-
|
|
15
|
+
/**
|
|
16
|
+
* Helper to get repo paths for a project
|
|
17
|
+
* Returns array of { alias, path } for all mounts, or single entry with project path
|
|
18
|
+
*/
|
|
19
|
+
function getRepoPaths(projectPath) {
|
|
20
|
+
const mounts = (0, dockerfile_1.getProjectMounts)(projectPath);
|
|
21
|
+
if (mounts.length > 0) {
|
|
22
|
+
return mounts;
|
|
23
|
+
}
|
|
24
|
+
// Backward compatibility: single repo mode
|
|
25
|
+
return [{ alias: 'main', path: projectPath }];
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Helper to resolve repo path from project and optional mount alias
|
|
29
|
+
*/
|
|
30
|
+
function resolveRepoPath(projectPath, mountAlias) {
|
|
31
|
+
const mounts = (0, dockerfile_1.getProjectMounts)(projectPath);
|
|
32
|
+
if (mounts.length === 0) {
|
|
33
|
+
// Single repo mode - always use project path
|
|
34
|
+
return projectPath;
|
|
35
|
+
}
|
|
36
|
+
if (!mountAlias) {
|
|
37
|
+
// Multi-repo mode but no alias specified - error
|
|
38
|
+
throw new Error('Mount alias is required for multi-repo projects');
|
|
39
|
+
}
|
|
40
|
+
const mount = mounts.find(m => m.alias === mountAlias);
|
|
41
|
+
if (!mount) {
|
|
42
|
+
throw new Error(`Mount "${mountAlias}" not found`);
|
|
43
|
+
}
|
|
44
|
+
return mount.path;
|
|
45
|
+
}
|
|
46
|
+
// Get git status for all repos in a project
|
|
15
47
|
router.get('/:projectId/status', async (req, res) => {
|
|
16
48
|
try {
|
|
17
49
|
const projectId = parseInt(req.params.projectId, 10);
|
|
50
|
+
const mountAlias = req.query.mount;
|
|
18
51
|
const project = (0, queries_1.getProjectById)(projectId);
|
|
19
52
|
if (!project) {
|
|
20
53
|
return res.status(404).json({ error: 'Project not found' });
|
|
21
54
|
}
|
|
22
|
-
const
|
|
23
|
-
|
|
55
|
+
const mounts = getRepoPaths(project.path);
|
|
56
|
+
// If specific mount requested, return only that
|
|
57
|
+
if (mountAlias) {
|
|
58
|
+
const mount = mounts.find(m => m.alias === mountAlias);
|
|
59
|
+
if (!mount) {
|
|
60
|
+
return res.status(404).json({ error: `Mount "${mountAlias}" not found` });
|
|
61
|
+
}
|
|
62
|
+
const status = await (0, status_1.getGitStatus)(mount.path);
|
|
63
|
+
return res.json(status);
|
|
64
|
+
}
|
|
65
|
+
// Return status for all mounts
|
|
66
|
+
const results = await Promise.all(mounts.map(async (mount) => ({
|
|
67
|
+
mount: mount.alias,
|
|
68
|
+
path: mount.path,
|
|
69
|
+
status: await (0, status_1.getGitStatus)(mount.path),
|
|
70
|
+
})));
|
|
71
|
+
// For backward compatibility, if single repo, return just the status
|
|
72
|
+
if (results.length === 1 && mounts[0].alias === 'main' && (0, dockerfile_1.getProjectMounts)(project.path).length === 0) {
|
|
73
|
+
return res.json(results[0].status);
|
|
74
|
+
}
|
|
75
|
+
res.json(results);
|
|
24
76
|
}
|
|
25
77
|
catch (err) {
|
|
26
78
|
console.error('Error getting git status:', err);
|
|
27
79
|
res.status(500).json({ error: 'Failed to get git status' });
|
|
28
80
|
}
|
|
29
81
|
});
|
|
30
|
-
// Get git diff for a project
|
|
82
|
+
// Get git diff for a project/mount
|
|
31
83
|
router.get('/:projectId/diff', async (req, res) => {
|
|
32
84
|
try {
|
|
33
85
|
const projectId = parseInt(req.params.projectId, 10);
|
|
34
86
|
const staged = req.query.staged === 'true';
|
|
87
|
+
const mountAlias = req.query.mount;
|
|
35
88
|
const project = (0, queries_1.getProjectById)(projectId);
|
|
36
89
|
if (!project) {
|
|
37
90
|
return res.status(404).json({ error: 'Project not found' });
|
|
38
91
|
}
|
|
39
|
-
const
|
|
92
|
+
const repoPath = resolveRepoPath(project.path, mountAlias);
|
|
93
|
+
const diff = await (0, status_1.getGitDiff)(repoPath, staged);
|
|
40
94
|
res.json({ diff });
|
|
41
95
|
}
|
|
42
96
|
catch (err) {
|
|
43
97
|
console.error('Error getting git diff:', err);
|
|
44
|
-
|
|
98
|
+
const message = err instanceof Error ? err.message : 'Failed to get git diff';
|
|
99
|
+
res.status(500).json({ error: message });
|
|
45
100
|
}
|
|
46
101
|
});
|
|
47
102
|
// Get both staged and unstaged diffs
|
|
48
103
|
router.get('/:projectId/diffs', async (req, res) => {
|
|
49
104
|
try {
|
|
50
105
|
const projectId = parseInt(req.params.projectId, 10);
|
|
106
|
+
const mountAlias = req.query.mount;
|
|
51
107
|
const project = (0, queries_1.getProjectById)(projectId);
|
|
52
108
|
if (!project) {
|
|
53
109
|
return res.status(404).json({ error: 'Project not found' });
|
|
54
110
|
}
|
|
55
|
-
const
|
|
111
|
+
const repoPath = resolveRepoPath(project.path, mountAlias);
|
|
112
|
+
const diffs = await (0, status_1.getGitDiffs)(repoPath);
|
|
56
113
|
res.json(diffs);
|
|
57
114
|
}
|
|
58
115
|
catch (err) {
|
|
59
116
|
console.error('Error getting git diffs:', err);
|
|
60
|
-
|
|
117
|
+
const message = err instanceof Error ? err.message : 'Failed to get git diffs';
|
|
118
|
+
res.status(500).json({ error: message });
|
|
61
119
|
}
|
|
62
120
|
});
|
|
63
121
|
// Get old/new content for file diff comparison
|
|
@@ -66,6 +124,7 @@ router.get('/:projectId/file-diff', async (req, res) => {
|
|
|
66
124
|
const projectId = parseInt(req.params.projectId, 10);
|
|
67
125
|
const filePath = req.query.path;
|
|
68
126
|
const staged = req.query.staged === 'true';
|
|
127
|
+
const mountAlias = req.query.mount;
|
|
69
128
|
if (!filePath) {
|
|
70
129
|
return res.status(400).json({ error: 'File path is required' });
|
|
71
130
|
}
|
|
@@ -73,17 +132,19 @@ router.get('/:projectId/file-diff', async (req, res) => {
|
|
|
73
132
|
if (!project) {
|
|
74
133
|
return res.status(404).json({ error: 'Project not found' });
|
|
75
134
|
}
|
|
135
|
+
const repoPath = resolveRepoPath(project.path, mountAlias);
|
|
76
136
|
// Prevent path traversal
|
|
77
|
-
const fullPath = path_1.default.join(
|
|
78
|
-
if (!fullPath.startsWith(
|
|
137
|
+
const fullPath = path_1.default.join(repoPath, filePath);
|
|
138
|
+
if (!fullPath.startsWith(repoPath)) {
|
|
79
139
|
return res.status(403).json({ error: 'Access denied' });
|
|
80
140
|
}
|
|
81
|
-
const diffContent = await (0, status_1.getFileDiffContent)(
|
|
141
|
+
const diffContent = await (0, status_1.getFileDiffContent)(repoPath, filePath, staged);
|
|
82
142
|
res.json(diffContent);
|
|
83
143
|
}
|
|
84
144
|
catch (err) {
|
|
85
145
|
console.error('Error getting file diff content:', err);
|
|
86
|
-
|
|
146
|
+
const message = err instanceof Error ? err.message : 'Failed to get file diff content';
|
|
147
|
+
res.status(500).json({ error: message });
|
|
87
148
|
}
|
|
88
149
|
});
|
|
89
150
|
// Get content of a specific file (for untracked files)
|
|
@@ -91,6 +152,7 @@ router.get('/:projectId/file', (req, res) => {
|
|
|
91
152
|
try {
|
|
92
153
|
const projectId = parseInt(req.params.projectId, 10);
|
|
93
154
|
const filePath = req.query.path;
|
|
155
|
+
const mountAlias = req.query.mount;
|
|
94
156
|
if (!filePath) {
|
|
95
157
|
return res.status(400).json({ error: 'File path is required' });
|
|
96
158
|
}
|
|
@@ -98,9 +160,10 @@ router.get('/:projectId/file', (req, res) => {
|
|
|
98
160
|
if (!project) {
|
|
99
161
|
return res.status(404).json({ error: 'Project not found' });
|
|
100
162
|
}
|
|
163
|
+
const repoPath = resolveRepoPath(project.path, mountAlias);
|
|
101
164
|
// Prevent path traversal
|
|
102
|
-
const fullPath = path_1.default.join(
|
|
103
|
-
if (!fullPath.startsWith(
|
|
165
|
+
const fullPath = path_1.default.join(repoPath, filePath);
|
|
166
|
+
if (!fullPath.startsWith(repoPath)) {
|
|
104
167
|
return res.status(403).json({ error: 'Access denied' });
|
|
105
168
|
}
|
|
106
169
|
// Check if file exists and is not too large
|
|
@@ -128,7 +191,147 @@ router.get('/:projectId/file', (req, res) => {
|
|
|
128
191
|
}
|
|
129
192
|
catch (err) {
|
|
130
193
|
console.error('Error reading file:', err);
|
|
131
|
-
|
|
194
|
+
const message = err instanceof Error ? err.message : 'Failed to read file';
|
|
195
|
+
res.status(500).json({ error: message });
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
// List all branches
|
|
199
|
+
router.get('/:projectId/branches', async (req, res) => {
|
|
200
|
+
try {
|
|
201
|
+
const projectId = parseInt(req.params.projectId, 10);
|
|
202
|
+
const mountAlias = req.query.mount;
|
|
203
|
+
const project = (0, queries_1.getProjectById)(projectId);
|
|
204
|
+
if (!project) {
|
|
205
|
+
return res.status(404).json({ error: 'Project not found' });
|
|
206
|
+
}
|
|
207
|
+
const repoPath = resolveRepoPath(project.path, mountAlias);
|
|
208
|
+
const branches = await (0, status_1.listBranches)(repoPath);
|
|
209
|
+
res.json(branches);
|
|
210
|
+
}
|
|
211
|
+
catch (err) {
|
|
212
|
+
console.error('Error listing branches:', err);
|
|
213
|
+
const message = err instanceof Error ? err.message : 'Failed to list branches';
|
|
214
|
+
res.status(500).json({ error: message });
|
|
215
|
+
}
|
|
216
|
+
});
|
|
217
|
+
// Create a new branch
|
|
218
|
+
router.post('/:projectId/branch', async (req, res) => {
|
|
219
|
+
try {
|
|
220
|
+
const projectId = parseInt(req.params.projectId, 10);
|
|
221
|
+
const { name, checkout = true, mount: mountAlias } = req.body;
|
|
222
|
+
if (!name) {
|
|
223
|
+
return res.status(400).json({ error: 'Branch name is required' });
|
|
224
|
+
}
|
|
225
|
+
const project = (0, queries_1.getProjectById)(projectId);
|
|
226
|
+
if (!project) {
|
|
227
|
+
return res.status(404).json({ error: 'Project not found' });
|
|
228
|
+
}
|
|
229
|
+
const repoPath = resolveRepoPath(project.path, mountAlias);
|
|
230
|
+
await (0, status_1.createBranch)(repoPath, name, checkout);
|
|
231
|
+
res.json({ success: true, branch: name });
|
|
232
|
+
}
|
|
233
|
+
catch (err) {
|
|
234
|
+
console.error('Error creating branch:', err);
|
|
235
|
+
const message = err instanceof Error ? err.message : 'Failed to create branch';
|
|
236
|
+
res.status(500).json({ error: message });
|
|
237
|
+
}
|
|
238
|
+
});
|
|
239
|
+
// Checkout a branch
|
|
240
|
+
router.post('/:projectId/checkout', async (req, res) => {
|
|
241
|
+
try {
|
|
242
|
+
const projectId = parseInt(req.params.projectId, 10);
|
|
243
|
+
const { branch, mount: mountAlias } = req.body;
|
|
244
|
+
if (!branch) {
|
|
245
|
+
return res.status(400).json({ error: 'Branch name is required' });
|
|
246
|
+
}
|
|
247
|
+
const project = (0, queries_1.getProjectById)(projectId);
|
|
248
|
+
if (!project) {
|
|
249
|
+
return res.status(404).json({ error: 'Project not found' });
|
|
250
|
+
}
|
|
251
|
+
const repoPath = resolveRepoPath(project.path, mountAlias);
|
|
252
|
+
await (0, status_1.checkoutBranch)(repoPath, branch);
|
|
253
|
+
res.json({ success: true, branch });
|
|
254
|
+
}
|
|
255
|
+
catch (err) {
|
|
256
|
+
console.error('Error checking out branch:', err);
|
|
257
|
+
const message = err instanceof Error ? err.message : 'Failed to checkout branch';
|
|
258
|
+
res.status(500).json({ error: message });
|
|
259
|
+
}
|
|
260
|
+
});
|
|
261
|
+
// Stage files
|
|
262
|
+
router.post('/:projectId/stage', async (req, res) => {
|
|
263
|
+
try {
|
|
264
|
+
const projectId = parseInt(req.params.projectId, 10);
|
|
265
|
+
const { files, all = false, mount: mountAlias } = req.body;
|
|
266
|
+
const project = (0, queries_1.getProjectById)(projectId);
|
|
267
|
+
if (!project) {
|
|
268
|
+
return res.status(404).json({ error: 'Project not found' });
|
|
269
|
+
}
|
|
270
|
+
const repoPath = resolveRepoPath(project.path, mountAlias);
|
|
271
|
+
if (all) {
|
|
272
|
+
await (0, status_1.stageAll)(repoPath);
|
|
273
|
+
}
|
|
274
|
+
else if (files && files.length > 0) {
|
|
275
|
+
await (0, status_1.stageFiles)(repoPath, files);
|
|
276
|
+
}
|
|
277
|
+
else {
|
|
278
|
+
return res.status(400).json({ error: 'No files specified' });
|
|
279
|
+
}
|
|
280
|
+
res.json({ success: true });
|
|
281
|
+
}
|
|
282
|
+
catch (err) {
|
|
283
|
+
console.error('Error staging files:', err);
|
|
284
|
+
const message = err instanceof Error ? err.message : 'Failed to stage files';
|
|
285
|
+
res.status(500).json({ error: message });
|
|
286
|
+
}
|
|
287
|
+
});
|
|
288
|
+
// Unstage files
|
|
289
|
+
router.post('/:projectId/unstage', async (req, res) => {
|
|
290
|
+
try {
|
|
291
|
+
const projectId = parseInt(req.params.projectId, 10);
|
|
292
|
+
const { files, all = false, mount: mountAlias } = req.body;
|
|
293
|
+
const project = (0, queries_1.getProjectById)(projectId);
|
|
294
|
+
if (!project) {
|
|
295
|
+
return res.status(404).json({ error: 'Project not found' });
|
|
296
|
+
}
|
|
297
|
+
const repoPath = resolveRepoPath(project.path, mountAlias);
|
|
298
|
+
if (all) {
|
|
299
|
+
await (0, status_1.unstageAll)(repoPath);
|
|
300
|
+
}
|
|
301
|
+
else if (files && files.length > 0) {
|
|
302
|
+
await (0, status_1.unstageFiles)(repoPath, files);
|
|
303
|
+
}
|
|
304
|
+
else {
|
|
305
|
+
return res.status(400).json({ error: 'No files specified' });
|
|
306
|
+
}
|
|
307
|
+
res.json({ success: true });
|
|
308
|
+
}
|
|
309
|
+
catch (err) {
|
|
310
|
+
console.error('Error unstaging files:', err);
|
|
311
|
+
const message = err instanceof Error ? err.message : 'Failed to unstage files';
|
|
312
|
+
res.status(500).json({ error: message });
|
|
313
|
+
}
|
|
314
|
+
});
|
|
315
|
+
// Commit staged changes
|
|
316
|
+
router.post('/:projectId/commit', async (req, res) => {
|
|
317
|
+
try {
|
|
318
|
+
const projectId = parseInt(req.params.projectId, 10);
|
|
319
|
+
const { message, mount: mountAlias } = req.body;
|
|
320
|
+
if (!message) {
|
|
321
|
+
return res.status(400).json({ error: 'Commit message is required' });
|
|
322
|
+
}
|
|
323
|
+
const project = (0, queries_1.getProjectById)(projectId);
|
|
324
|
+
if (!project) {
|
|
325
|
+
return res.status(404).json({ error: 'Project not found' });
|
|
326
|
+
}
|
|
327
|
+
const repoPath = resolveRepoPath(project.path, mountAlias);
|
|
328
|
+
const result = await (0, status_1.commit)(repoPath, message);
|
|
329
|
+
res.json(result);
|
|
330
|
+
}
|
|
331
|
+
catch (err) {
|
|
332
|
+
console.error('Error committing:', err);
|
|
333
|
+
const message = err instanceof Error ? err.message : 'Failed to commit';
|
|
334
|
+
res.status(500).json({ error: message });
|
|
132
335
|
}
|
|
133
336
|
});
|
|
134
337
|
exports.default = router;
|
package/dist/routes/git.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/routes/git.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/routes/git.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/routes/projects.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/routes/projects.ts"],"names":[],"mappings":"AAuBA,QAAA,MAAM,MAAM,4CAAW,CAAC;AAiPxB,eAAe,MAAM,CAAC"}
|