@sascha384/tic 1.2.2 → 1.4.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.
- package/dist/app.d.ts +4 -1
- package/dist/app.js +27 -2
- package/dist/app.js.map +1 -1
- package/dist/backends/ado/index.d.ts +15 -14
- package/dist/backends/ado/index.js +45 -14
- package/dist/backends/ado/index.js.map +1 -1
- package/dist/backends/factory.d.ts +2 -2
- package/dist/backends/factory.js +8 -6
- package/dist/backends/factory.js.map +1 -1
- package/dist/backends/github/index.d.ts +15 -14
- package/dist/backends/github/index.js +36 -16
- package/dist/backends/github/index.js.map +1 -1
- package/dist/backends/gitlab/index.d.ts +15 -14
- package/dist/backends/gitlab/index.js +40 -19
- package/dist/backends/gitlab/index.js.map +1 -1
- package/dist/backends/local/config.d.ts +3 -2
- package/dist/backends/local/config.js +18 -7
- package/dist/backends/local/config.js.map +1 -1
- package/dist/backends/local/index.d.ts +18 -16
- package/dist/backends/local/index.js +72 -47
- package/dist/backends/local/index.js.map +1 -1
- package/dist/backends/local/items.d.ts +4 -4
- package/dist/backends/local/items.js +22 -16
- package/dist/backends/local/items.js.map +1 -1
- package/dist/backends/types.d.ts +30 -28
- package/dist/backends/types.js.map +1 -1
- package/dist/cli/commands/config.d.ts +2 -2
- package/dist/cli/commands/config.js +5 -5
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/init.d.ts +1 -1
- package/dist/cli/commands/init.js +2 -2
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/item.d.ts +7 -7
- package/dist/cli/commands/item.js +14 -14
- package/dist/cli/commands/item.js.map +1 -1
- package/dist/cli/commands/iteration.d.ts +2 -2
- package/dist/cli/commands/iteration.js +5 -5
- package/dist/cli/commands/iteration.js.map +1 -1
- package/dist/cli/commands/mcp.d.ts +15 -15
- package/dist/cli/commands/mcp.js +74 -71
- package/dist/cli/commands/mcp.js.map +1 -1
- package/dist/cli/index.js +53 -39
- package/dist/cli/index.js.map +1 -1
- package/dist/components/AutocompleteInput.d.ts +10 -0
- package/dist/components/AutocompleteInput.js +40 -0
- package/dist/components/AutocompleteInput.js.map +1 -0
- package/dist/components/IterationPicker.js +9 -4
- package/dist/components/IterationPicker.js.map +1 -1
- package/dist/components/Settings.js +18 -4
- package/dist/components/Settings.js.map +1 -1
- package/dist/components/StatusScreen.d.ts +1 -0
- package/dist/components/StatusScreen.js +48 -0
- package/dist/components/StatusScreen.js.map +1 -0
- package/dist/components/WorkItemForm.js +185 -51
- package/dist/components/WorkItemForm.js.map +1 -1
- package/dist/components/WorkItemList.js +66 -46
- package/dist/components/WorkItemList.js.map +1 -1
- package/dist/hooks/useBackendData.d.ts +15 -0
- package/dist/hooks/useBackendData.js +67 -0
- package/dist/hooks/useBackendData.js.map +1 -0
- package/dist/hooks/useScrollViewport.d.ts +14 -0
- package/dist/hooks/useScrollViewport.js +20 -0
- package/dist/hooks/useScrollViewport.js.map +1 -0
- package/dist/hooks/useTerminalSize.d.ts +4 -0
- package/dist/hooks/useTerminalSize.js +23 -0
- package/dist/hooks/useTerminalSize.js.map +1 -0
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/sync/SyncManager.js +30 -32
- package/dist/sync/SyncManager.js.map +1 -1
- package/dist/sync/queue.d.ts +5 -5
- package/dist/sync/queue.js +17 -19
- package/dist/sync/queue.js.map +1 -1
- package/package.json +1 -1
|
@@ -35,27 +35,42 @@ export class GitLabBackend extends BaseBackend {
|
|
|
35
35
|
},
|
|
36
36
|
};
|
|
37
37
|
}
|
|
38
|
-
|
|
38
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
39
|
+
async getStatuses() {
|
|
39
40
|
return ['open', 'closed'];
|
|
40
41
|
}
|
|
41
|
-
|
|
42
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
43
|
+
async getWorkItemTypes() {
|
|
42
44
|
return ['epic', 'issue'];
|
|
43
45
|
}
|
|
44
|
-
|
|
46
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
47
|
+
async getAssignees() {
|
|
48
|
+
try {
|
|
49
|
+
const members = glab(['api', 'projects/:fullpath/members/all', '--paginate'], this.cwd);
|
|
50
|
+
return members.map((m) => m.username);
|
|
51
|
+
}
|
|
52
|
+
catch {
|
|
53
|
+
return [];
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
57
|
+
async getIterations() {
|
|
45
58
|
const iterations = this.fetchIterations();
|
|
46
59
|
return iterations.map((i) => i.title);
|
|
47
60
|
}
|
|
48
|
-
|
|
61
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
62
|
+
async getCurrentIteration() {
|
|
49
63
|
const iterations = this.fetchIterations();
|
|
50
64
|
const today = new Date().toISOString().split('T')[0];
|
|
51
65
|
const current = iterations.find((i) => i.start_date <= today && today <= i.due_date);
|
|
52
66
|
return current?.title ?? '';
|
|
53
67
|
}
|
|
54
68
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
55
|
-
setCurrentIteration(_name) {
|
|
69
|
+
async setCurrentIteration(_name) {
|
|
56
70
|
// No-op — current iteration is determined by date range
|
|
57
71
|
}
|
|
58
|
-
|
|
72
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
73
|
+
async listWorkItems(iteration) {
|
|
59
74
|
// Fetch issues
|
|
60
75
|
const issueArgs = [
|
|
61
76
|
'issue',
|
|
@@ -80,7 +95,8 @@ export class GitLabBackend extends BaseBackend {
|
|
|
80
95
|
allItems.sort((a, b) => b.updated.localeCompare(a.updated));
|
|
81
96
|
return allItems;
|
|
82
97
|
}
|
|
83
|
-
|
|
98
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
99
|
+
async getWorkItem(id) {
|
|
84
100
|
const { type, iid } = parseId(id);
|
|
85
101
|
if (type === 'issue') {
|
|
86
102
|
const issue = glab(['issue', 'view', iid, '-F', 'json'], this.cwd);
|
|
@@ -99,14 +115,14 @@ export class GitLabBackend extends BaseBackend {
|
|
|
99
115
|
item.comments = notes.map(mapNoteToComment);
|
|
100
116
|
return item;
|
|
101
117
|
}
|
|
102
|
-
createWorkItem(data) {
|
|
118
|
+
async createWorkItem(data) {
|
|
103
119
|
this.validateFields(data);
|
|
104
120
|
if (data.type === 'epic') {
|
|
105
121
|
return this.createEpic(data);
|
|
106
122
|
}
|
|
107
123
|
return this.createIssue(data);
|
|
108
124
|
}
|
|
109
|
-
updateWorkItem(id, data) {
|
|
125
|
+
async updateWorkItem(id, data) {
|
|
110
126
|
this.validateFields(data);
|
|
111
127
|
const { type, iid } = parseId(id);
|
|
112
128
|
if (type === 'issue') {
|
|
@@ -114,7 +130,8 @@ export class GitLabBackend extends BaseBackend {
|
|
|
114
130
|
}
|
|
115
131
|
return this.updateEpic(iid, data);
|
|
116
132
|
}
|
|
117
|
-
|
|
133
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
134
|
+
async deleteWorkItem(id) {
|
|
118
135
|
const { type, iid } = parseId(id);
|
|
119
136
|
if (type === 'issue') {
|
|
120
137
|
glabExec(['issue', 'delete', iid, '--yes'], this.cwd);
|
|
@@ -123,7 +140,8 @@ export class GitLabBackend extends BaseBackend {
|
|
|
123
140
|
const encodedGroup = encodeURIComponent(this.group);
|
|
124
141
|
glab(['api', `groups/${encodedGroup}/epics/${iid}`, '-X', 'DELETE'], this.cwd);
|
|
125
142
|
}
|
|
126
|
-
|
|
143
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
144
|
+
async addComment(workItemId, comment) {
|
|
127
145
|
const { type, iid } = parseId(workItemId);
|
|
128
146
|
if (type === 'issue') {
|
|
129
147
|
glabExec(['issue', 'note', iid, '-m', comment.body], this.cwd);
|
|
@@ -145,7 +163,8 @@ export class GitLabBackend extends BaseBackend {
|
|
|
145
163
|
body: comment.body,
|
|
146
164
|
};
|
|
147
165
|
}
|
|
148
|
-
|
|
166
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
167
|
+
async getChildren(id) {
|
|
149
168
|
const { type, iid } = parseId(id);
|
|
150
169
|
if (type === 'issue') {
|
|
151
170
|
return [];
|
|
@@ -154,8 +173,8 @@ export class GitLabBackend extends BaseBackend {
|
|
|
154
173
|
const issues = glab(['api', `groups/${encodedGroup}/epics/${iid}/issues`, '--paginate'], this.cwd);
|
|
155
174
|
return issues.map(mapIssueToWorkItem);
|
|
156
175
|
}
|
|
157
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
158
|
-
getDependents(_id) {
|
|
176
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/require-await
|
|
177
|
+
async getDependents(_id) {
|
|
159
178
|
return [];
|
|
160
179
|
}
|
|
161
180
|
getItemUrl(id) {
|
|
@@ -166,7 +185,8 @@ export class GitLabBackend extends BaseBackend {
|
|
|
166
185
|
}
|
|
167
186
|
return `https://gitlab.com/groups/${this.group}/-/epics/${iid}`;
|
|
168
187
|
}
|
|
169
|
-
|
|
188
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
189
|
+
async openItem(id) {
|
|
170
190
|
const { type, iid } = parseId(id);
|
|
171
191
|
if (type === 'issue') {
|
|
172
192
|
glabExec(['issue', 'view', iid, '--web'], this.cwd);
|
|
@@ -179,7 +199,7 @@ export class GitLabBackend extends BaseBackend {
|
|
|
179
199
|
const encodedGroup = encodeURIComponent(this.group);
|
|
180
200
|
return glab(['api', `groups/${encodedGroup}/iterations`, '--paginate'], this.cwd);
|
|
181
201
|
}
|
|
182
|
-
createIssue(data) {
|
|
202
|
+
async createIssue(data) {
|
|
183
203
|
const args = ['issue', 'create', '--title', data.title, '--yes'];
|
|
184
204
|
if (data.description) {
|
|
185
205
|
args.push('--description', data.description);
|
|
@@ -202,7 +222,8 @@ export class GitLabBackend extends BaseBackend {
|
|
|
202
222
|
const iid = match[1];
|
|
203
223
|
return this.getWorkItem(`issue-${iid}`);
|
|
204
224
|
}
|
|
205
|
-
|
|
225
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
226
|
+
async createEpic(data) {
|
|
206
227
|
const encodedGroup = encodeURIComponent(this.group);
|
|
207
228
|
const args = [
|
|
208
229
|
'api',
|
|
@@ -221,7 +242,7 @@ export class GitLabBackend extends BaseBackend {
|
|
|
221
242
|
const epic = glab(args, this.cwd);
|
|
222
243
|
return mapEpicToWorkItem(epic);
|
|
223
244
|
}
|
|
224
|
-
updateIssue(iid, data) {
|
|
245
|
+
async updateIssue(iid, data) {
|
|
225
246
|
// Handle status changes via close/reopen
|
|
226
247
|
if (data.status === 'closed') {
|
|
227
248
|
glabExec(['issue', 'close', iid], this.cwd);
|
|
@@ -266,7 +287,7 @@ export class GitLabBackend extends BaseBackend {
|
|
|
266
287
|
}
|
|
267
288
|
return this.getWorkItem(`issue-${iid}`);
|
|
268
289
|
}
|
|
269
|
-
updateEpic(iid, data) {
|
|
290
|
+
async updateEpic(iid, data) {
|
|
270
291
|
const encodedGroup = encodeURIComponent(this.group);
|
|
271
292
|
const args = ['api', `groups/${encodedGroup}/epics/${iid}`, '-X', 'PUT'];
|
|
272
293
|
let hasEdits = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/backends/gitlab/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/backends/gitlab/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,5 +8,6 @@ export interface Config {
|
|
|
8
8
|
branchMode: 'worktree' | 'branch';
|
|
9
9
|
}
|
|
10
10
|
export declare const defaultConfig: Config;
|
|
11
|
-
export declare function readConfig(root: string): Config
|
|
12
|
-
export declare function
|
|
11
|
+
export declare function readConfig(root: string): Promise<Config>;
|
|
12
|
+
export declare function readConfigSync(root: string): Config;
|
|
13
|
+
export declare function writeConfig(root: string, config: Config): Promise<void>;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import fs from 'node:fs';
|
|
1
|
+
import fs from 'node:fs/promises';
|
|
2
|
+
import fsSync from 'node:fs';
|
|
2
3
|
import path from 'node:path';
|
|
3
4
|
import yaml from 'yaml';
|
|
4
5
|
export const defaultConfig = {
|
|
@@ -13,16 +14,26 @@ export const defaultConfig = {
|
|
|
13
14
|
function configPath(root) {
|
|
14
15
|
return path.join(root, '.tic', 'config.yml');
|
|
15
16
|
}
|
|
16
|
-
export function readConfig(root) {
|
|
17
|
+
export async function readConfig(root) {
|
|
17
18
|
const p = configPath(root);
|
|
18
|
-
|
|
19
|
+
try {
|
|
20
|
+
const raw = await fs.readFile(p, 'utf-8');
|
|
21
|
+
return yaml.parse(raw);
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
19
24
|
return { ...defaultConfig };
|
|
20
|
-
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
export function readConfigSync(root) {
|
|
28
|
+
const p = configPath(root);
|
|
29
|
+
if (!fsSync.existsSync(p))
|
|
30
|
+
return { ...defaultConfig };
|
|
31
|
+
const raw = fsSync.readFileSync(p, 'utf-8');
|
|
21
32
|
return yaml.parse(raw);
|
|
22
33
|
}
|
|
23
|
-
export function writeConfig(root, config) {
|
|
34
|
+
export async function writeConfig(root, config) {
|
|
24
35
|
const dir = path.join(root, '.tic');
|
|
25
|
-
fs.
|
|
26
|
-
fs.
|
|
36
|
+
await fs.mkdir(dir, { recursive: true });
|
|
37
|
+
await fs.writeFile(configPath(root), yaml.stringify(config));
|
|
27
38
|
}
|
|
28
39
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/backends/local/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/backends/local/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,MAAM,MAAM,SAAS,CAAC;AAC7B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AAYxB,MAAM,CAAC,MAAM,aAAa,GAAW;IACnC,OAAO,EAAE,OAAO;IAChB,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;IAChC,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC;IAC9D,iBAAiB,EAAE,SAAS;IAC5B,UAAU,EAAE,CAAC,SAAS,CAAC;IACvB,OAAO,EAAE,CAAC;IACV,UAAU,EAAE,UAAU;CACvB,CAAC;AAEF,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAY;IAC3C,MAAM,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAW,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,GAAG,aAAa,EAAE,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,MAAM,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,GAAG,aAAa,EAAE,CAAC;IACvD,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAW,CAAC;AACnC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAY,EAAE,MAAc;IAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/D,CAAC"}
|
|
@@ -8,30 +8,32 @@ export declare class LocalBackend extends BaseBackend {
|
|
|
8
8
|
private root;
|
|
9
9
|
private config;
|
|
10
10
|
private tempIds;
|
|
11
|
-
constructor(
|
|
11
|
+
private constructor();
|
|
12
|
+
static create(root: string, options?: LocalBackendOptions): Promise<LocalBackend>;
|
|
12
13
|
getRoot(): string;
|
|
13
14
|
getCapabilities(): BackendCapabilities;
|
|
14
15
|
private save;
|
|
15
|
-
getStatuses(): string[]
|
|
16
|
-
getIterations(): string[]
|
|
17
|
-
getWorkItemTypes(): string[]
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
getStatuses(): Promise<string[]>;
|
|
17
|
+
getIterations(): Promise<string[]>;
|
|
18
|
+
getWorkItemTypes(): Promise<string[]>;
|
|
19
|
+
getAssignees(): Promise<string[]>;
|
|
20
|
+
getCurrentIteration(): Promise<string>;
|
|
21
|
+
setCurrentIteration(name: string): Promise<void>;
|
|
20
22
|
syncConfigFromRemote(remote: {
|
|
21
23
|
iterations: string[];
|
|
22
24
|
currentIteration: string;
|
|
23
25
|
statuses: string[];
|
|
24
26
|
types: string[];
|
|
25
|
-
}): void
|
|
27
|
+
}): Promise<void>;
|
|
26
28
|
private validateRelationships;
|
|
27
|
-
listWorkItems(iteration?: string): WorkItem[]
|
|
28
|
-
getWorkItem(id: string): WorkItem
|
|
29
|
-
createWorkItem(data: NewWorkItem): WorkItem
|
|
30
|
-
updateWorkItem(id: string, data: Partial<WorkItem>): WorkItem
|
|
31
|
-
deleteWorkItem(id: string): void
|
|
32
|
-
addComment(workItemId: string, comment: NewComment): Comment
|
|
33
|
-
getChildren(id: string): WorkItem[]
|
|
34
|
-
getDependents(id: string): WorkItem[]
|
|
29
|
+
listWorkItems(iteration?: string): Promise<WorkItem[]>;
|
|
30
|
+
getWorkItem(id: string): Promise<WorkItem>;
|
|
31
|
+
createWorkItem(data: NewWorkItem): Promise<WorkItem>;
|
|
32
|
+
updateWorkItem(id: string, data: Partial<WorkItem>): Promise<WorkItem>;
|
|
33
|
+
deleteWorkItem(id: string): Promise<void>;
|
|
34
|
+
addComment(workItemId: string, comment: NewComment): Promise<Comment>;
|
|
35
|
+
getChildren(id: string): Promise<WorkItem[]>;
|
|
36
|
+
getDependents(id: string): Promise<WorkItem[]>;
|
|
35
37
|
getItemUrl(id: string): string;
|
|
36
|
-
openItem(id: string): void
|
|
38
|
+
openItem(id: string): Promise<void>;
|
|
37
39
|
}
|
|
@@ -1,19 +1,23 @@
|
|
|
1
1
|
import { BaseBackend } from '../types.js';
|
|
2
2
|
import { readConfig, writeConfig } from './config.js';
|
|
3
3
|
import { readWorkItem, writeWorkItem, deleteWorkItem as removeWorkItemFile, listItemFiles, parseWorkItemFile, } from './items.js';
|
|
4
|
-
import {
|
|
5
|
-
import fs from 'node:fs';
|
|
4
|
+
import { spawn } from 'node:child_process';
|
|
5
|
+
import fs from 'node:fs/promises';
|
|
6
6
|
import path from 'node:path';
|
|
7
7
|
export class LocalBackend extends BaseBackend {
|
|
8
8
|
root;
|
|
9
9
|
config;
|
|
10
10
|
tempIds;
|
|
11
|
-
constructor(root, options) {
|
|
11
|
+
constructor(root, config, options) {
|
|
12
12
|
super();
|
|
13
13
|
this.root = root;
|
|
14
|
-
this.config =
|
|
14
|
+
this.config = config;
|
|
15
15
|
this.tempIds = options?.tempIds ?? false;
|
|
16
16
|
}
|
|
17
|
+
static async create(root, options) {
|
|
18
|
+
const config = await readConfig(root);
|
|
19
|
+
return new LocalBackend(root, config, options);
|
|
20
|
+
}
|
|
17
21
|
getRoot() {
|
|
18
22
|
return this.root;
|
|
19
23
|
}
|
|
@@ -33,37 +37,51 @@ export class LocalBackend extends BaseBackend {
|
|
|
33
37
|
},
|
|
34
38
|
};
|
|
35
39
|
}
|
|
36
|
-
save() {
|
|
37
|
-
writeConfig(this.root, this.config);
|
|
40
|
+
async save() {
|
|
41
|
+
await writeConfig(this.root, this.config);
|
|
38
42
|
}
|
|
39
|
-
|
|
43
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
44
|
+
async getStatuses() {
|
|
40
45
|
return this.config.statuses;
|
|
41
46
|
}
|
|
42
|
-
|
|
47
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
48
|
+
async getIterations() {
|
|
43
49
|
return this.config.iterations;
|
|
44
50
|
}
|
|
45
|
-
|
|
51
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
52
|
+
async getWorkItemTypes() {
|
|
46
53
|
return this.config.types;
|
|
47
54
|
}
|
|
48
|
-
|
|
55
|
+
async getAssignees() {
|
|
56
|
+
const items = await this.listWorkItems();
|
|
57
|
+
const assignees = new Set();
|
|
58
|
+
for (const item of items) {
|
|
59
|
+
if (item.assignee) {
|
|
60
|
+
assignees.add(item.assignee);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return [...assignees].sort();
|
|
64
|
+
}
|
|
65
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
66
|
+
async getCurrentIteration() {
|
|
49
67
|
return this.config.current_iteration;
|
|
50
68
|
}
|
|
51
|
-
setCurrentIteration(name) {
|
|
69
|
+
async setCurrentIteration(name) {
|
|
52
70
|
this.config.current_iteration = name;
|
|
53
71
|
if (!this.config.iterations.includes(name)) {
|
|
54
72
|
this.config.iterations.push(name);
|
|
55
73
|
}
|
|
56
|
-
this.save();
|
|
74
|
+
await this.save();
|
|
57
75
|
}
|
|
58
|
-
syncConfigFromRemote(remote) {
|
|
76
|
+
async syncConfigFromRemote(remote) {
|
|
59
77
|
this.config.iterations = remote.iterations;
|
|
60
78
|
this.config.current_iteration = remote.currentIteration;
|
|
61
79
|
this.config.statuses = remote.statuses;
|
|
62
80
|
this.config.types = remote.types;
|
|
63
|
-
this.save();
|
|
81
|
+
await this.save();
|
|
64
82
|
}
|
|
65
|
-
validateRelationships(id, parent, dependsOn) {
|
|
66
|
-
const all = this.listWorkItems();
|
|
83
|
+
async validateRelationships(id, parent, dependsOn) {
|
|
84
|
+
const all = await this.listWorkItems();
|
|
67
85
|
const allIds = new Set(all.map((item) => item.id));
|
|
68
86
|
// Validate parent
|
|
69
87
|
if (parent !== null && parent !== undefined) {
|
|
@@ -124,26 +142,26 @@ export class LocalBackend extends BaseBackend {
|
|
|
124
142
|
}
|
|
125
143
|
}
|
|
126
144
|
}
|
|
127
|
-
listWorkItems(iteration) {
|
|
128
|
-
const files = listItemFiles(this.root);
|
|
129
|
-
const items = files.map((f) => {
|
|
130
|
-
const raw = fs.
|
|
145
|
+
async listWorkItems(iteration) {
|
|
146
|
+
const files = await listItemFiles(this.root);
|
|
147
|
+
const items = await Promise.all(files.map(async (f) => {
|
|
148
|
+
const raw = await fs.readFile(f, 'utf-8');
|
|
131
149
|
return parseWorkItemFile(raw);
|
|
132
|
-
});
|
|
150
|
+
}));
|
|
133
151
|
if (iteration)
|
|
134
152
|
return items.filter((i) => i.iteration === iteration);
|
|
135
153
|
return items;
|
|
136
154
|
}
|
|
137
|
-
getWorkItem(id) {
|
|
138
|
-
return readWorkItem(this.root, id);
|
|
155
|
+
async getWorkItem(id) {
|
|
156
|
+
return await readWorkItem(this.root, id);
|
|
139
157
|
}
|
|
140
|
-
createWorkItem(data) {
|
|
158
|
+
async createWorkItem(data) {
|
|
141
159
|
this.validateFields(data);
|
|
142
160
|
const now = new Date().toISOString();
|
|
143
161
|
const id = this.tempIds
|
|
144
162
|
? `local-${this.config.next_id}`
|
|
145
163
|
: String(this.config.next_id);
|
|
146
|
-
this.validateRelationships(id, data.parent, data.dependsOn);
|
|
164
|
+
await this.validateRelationships(id, data.parent, data.dependsOn);
|
|
147
165
|
const item = {
|
|
148
166
|
...data,
|
|
149
167
|
id,
|
|
@@ -155,27 +173,27 @@ export class LocalBackend extends BaseBackend {
|
|
|
155
173
|
if (data.iteration && !this.config.iterations.includes(data.iteration)) {
|
|
156
174
|
this.config.iterations.push(data.iteration);
|
|
157
175
|
}
|
|
158
|
-
this.save();
|
|
159
|
-
writeWorkItem(this.root, item);
|
|
176
|
+
await this.save();
|
|
177
|
+
await writeWorkItem(this.root, item);
|
|
160
178
|
return item;
|
|
161
179
|
}
|
|
162
|
-
updateWorkItem(id, data) {
|
|
180
|
+
async updateWorkItem(id, data) {
|
|
163
181
|
this.validateFields(data);
|
|
164
|
-
const item = this.getWorkItem(id);
|
|
165
|
-
this.validateRelationships(id, data.parent, data.dependsOn);
|
|
182
|
+
const item = await this.getWorkItem(id);
|
|
183
|
+
await this.validateRelationships(id, data.parent, data.dependsOn);
|
|
166
184
|
const updated = {
|
|
167
185
|
...item,
|
|
168
186
|
...data,
|
|
169
187
|
id,
|
|
170
188
|
updated: new Date().toISOString(),
|
|
171
189
|
};
|
|
172
|
-
writeWorkItem(this.root, updated);
|
|
190
|
+
await writeWorkItem(this.root, updated);
|
|
173
191
|
return updated;
|
|
174
192
|
}
|
|
175
|
-
deleteWorkItem(id) {
|
|
176
|
-
removeWorkItemFile(this.root, id);
|
|
193
|
+
async deleteWorkItem(id) {
|
|
194
|
+
await removeWorkItemFile(this.root, id);
|
|
177
195
|
// Clean up references in other items
|
|
178
|
-
const all = this.listWorkItems();
|
|
196
|
+
const all = await this.listWorkItems();
|
|
179
197
|
for (const item of all) {
|
|
180
198
|
let changed = false;
|
|
181
199
|
if (item.parent === id) {
|
|
@@ -187,12 +205,12 @@ export class LocalBackend extends BaseBackend {
|
|
|
187
205
|
changed = true;
|
|
188
206
|
}
|
|
189
207
|
if (changed) {
|
|
190
|
-
writeWorkItem(this.root, item);
|
|
208
|
+
await writeWorkItem(this.root, item);
|
|
191
209
|
}
|
|
192
210
|
}
|
|
193
211
|
}
|
|
194
|
-
addComment(workItemId, comment) {
|
|
195
|
-
const item = this.getWorkItem(workItemId);
|
|
212
|
+
async addComment(workItemId, comment) {
|
|
213
|
+
const item = await this.getWorkItem(workItemId);
|
|
196
214
|
const newComment = {
|
|
197
215
|
author: comment.author,
|
|
198
216
|
date: new Date().toISOString(),
|
|
@@ -200,27 +218,34 @@ export class LocalBackend extends BaseBackend {
|
|
|
200
218
|
};
|
|
201
219
|
item.comments.push(newComment);
|
|
202
220
|
item.updated = new Date().toISOString();
|
|
203
|
-
writeWorkItem(this.root, item);
|
|
221
|
+
await writeWorkItem(this.root, item);
|
|
204
222
|
return newComment;
|
|
205
223
|
}
|
|
206
|
-
getChildren(id) {
|
|
207
|
-
const all = this.listWorkItems();
|
|
224
|
+
async getChildren(id) {
|
|
225
|
+
const all = await this.listWorkItems();
|
|
208
226
|
return all.filter((item) => item.parent === id);
|
|
209
227
|
}
|
|
210
|
-
getDependents(id) {
|
|
211
|
-
const all = this.listWorkItems();
|
|
228
|
+
async getDependents(id) {
|
|
229
|
+
const all = await this.listWorkItems();
|
|
212
230
|
return all.filter((item) => item.dependsOn.includes(id));
|
|
213
231
|
}
|
|
214
232
|
getItemUrl(id) {
|
|
215
233
|
return path.resolve(this.root, '.tic', 'items', `${id}.md`);
|
|
216
234
|
}
|
|
217
|
-
openItem(id) {
|
|
235
|
+
async openItem(id) {
|
|
218
236
|
const filePath = this.getItemUrl(id);
|
|
219
|
-
|
|
220
|
-
throw new Error(`Work item #${id} does not exist`);
|
|
221
|
-
}
|
|
237
|
+
await fs.access(filePath);
|
|
222
238
|
const editor = process.env['VISUAL'] || process.env['EDITOR'] || 'vi';
|
|
223
|
-
|
|
239
|
+
return new Promise((resolve, reject) => {
|
|
240
|
+
const child = spawn(editor, [filePath], { stdio: 'inherit' });
|
|
241
|
+
child.on('close', (code) => {
|
|
242
|
+
if (code === 0)
|
|
243
|
+
resolve();
|
|
244
|
+
else
|
|
245
|
+
reject(new Error(`Editor exited with code ${code}`));
|
|
246
|
+
});
|
|
247
|
+
child.on('error', reject);
|
|
248
|
+
});
|
|
224
249
|
}
|
|
225
250
|
}
|
|
226
251
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/backends/local/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAQ1C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAe,MAAM,aAAa,CAAC;AACnE,OAAO,EACL,YAAY,EACZ,aAAa,EACb,cAAc,IAAI,kBAAkB,EACpC,aAAa,EACb,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/backends/local/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { WorkItem } from '../../types.js';
|
|
2
|
-
export declare function listItemFiles(root: string): string[]
|
|
3
|
-
export declare function readWorkItem(root: string, id: string): WorkItem
|
|
2
|
+
export declare function listItemFiles(root: string): Promise<string[]>;
|
|
3
|
+
export declare function readWorkItem(root: string, id: string): Promise<WorkItem>;
|
|
4
4
|
export declare function parseWorkItemFile(raw: string): WorkItem;
|
|
5
|
-
export declare function writeWorkItem(root: string, item: WorkItem): void
|
|
6
|
-
export declare function deleteWorkItem(root: string, id: string): void
|
|
5
|
+
export declare function writeWorkItem(root: string, item: WorkItem): Promise<void>;
|
|
6
|
+
export declare function deleteWorkItem(root: string, id: string): Promise<void>;
|