@backlog-md/core 0.1.0 → 0.1.2
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/core/Core.d.ts +63 -1
- package/dist/core/Core.d.ts.map +1 -1
- package/dist/core/Core.js +172 -2
- package/dist/core/Core.js.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/types/index.d.ts +33 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/sorting.d.ts +17 -0
- package/dist/utils/sorting.d.ts.map +1 -1
- package/dist/utils/sorting.js +38 -0
- package/dist/utils/sorting.js.map +1 -1
- package/package.json +1 -1
package/dist/core/Core.d.ts
CHANGED
|
@@ -5,7 +5,20 @@
|
|
|
5
5
|
* by accepting adapter implementations for I/O operations.
|
|
6
6
|
*/
|
|
7
7
|
import type { FileSystemAdapter } from "@principal-ai/repository-abstraction";
|
|
8
|
-
import type { Task, BacklogConfig, TaskListFilter } from "../types";
|
|
8
|
+
import type { Task, BacklogConfig, TaskListFilter, PaginationOptions, PaginatedResult, PaginatedTasksByStatus } from "../types";
|
|
9
|
+
/**
|
|
10
|
+
* Options for initializing a new Backlog.md project
|
|
11
|
+
*/
|
|
12
|
+
export interface InitProjectOptions {
|
|
13
|
+
/** Project name (defaults to directory name) */
|
|
14
|
+
projectName?: string;
|
|
15
|
+
/** Initial statuses (defaults to ["To Do", "In Progress", "Done"]) */
|
|
16
|
+
statuses?: string[];
|
|
17
|
+
/** Initial labels (defaults to []) */
|
|
18
|
+
labels?: string[];
|
|
19
|
+
/** Default status for new tasks (defaults to first status) */
|
|
20
|
+
defaultStatus?: string;
|
|
21
|
+
}
|
|
9
22
|
/**
|
|
10
23
|
* Options for creating a Core instance
|
|
11
24
|
*/
|
|
@@ -44,6 +57,31 @@ export declare class Core {
|
|
|
44
57
|
* Check if projectRoot contains a valid Backlog.md project
|
|
45
58
|
*/
|
|
46
59
|
isBacklogProject(): Promise<boolean>;
|
|
60
|
+
/**
|
|
61
|
+
* Initialize a new Backlog.md project in the projectRoot directory
|
|
62
|
+
*
|
|
63
|
+
* Creates the backlog/ directory and config.yml file.
|
|
64
|
+
* Task directories (tasks/, completed/) are created lazily when needed.
|
|
65
|
+
*
|
|
66
|
+
* @param options - Optional configuration for the new project
|
|
67
|
+
* @throws Error if project already exists
|
|
68
|
+
*
|
|
69
|
+
* @example
|
|
70
|
+
* ```typescript
|
|
71
|
+
* const core = new Core({ projectRoot: '/path/to/project', adapters: { fs } });
|
|
72
|
+
*
|
|
73
|
+
* // Initialize with defaults
|
|
74
|
+
* await core.initProject();
|
|
75
|
+
*
|
|
76
|
+
* // Or with custom options
|
|
77
|
+
* await core.initProject({
|
|
78
|
+
* projectName: 'My Project',
|
|
79
|
+
* statuses: ['Backlog', 'In Progress', 'Review', 'Done'],
|
|
80
|
+
* labels: ['bug', 'feature', 'docs']
|
|
81
|
+
* });
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
initProject(options?: InitProjectOptions): Promise<void>;
|
|
47
85
|
/**
|
|
48
86
|
* Initialize the Core instance
|
|
49
87
|
*
|
|
@@ -79,6 +117,29 @@ export declare class Core {
|
|
|
79
117
|
* @returns Task or undefined if not found
|
|
80
118
|
*/
|
|
81
119
|
getTask(id: string): Task | undefined;
|
|
120
|
+
/**
|
|
121
|
+
* List tasks with pagination
|
|
122
|
+
*
|
|
123
|
+
* @param filter - Filter and pagination options
|
|
124
|
+
* @returns Paginated result with tasks
|
|
125
|
+
*/
|
|
126
|
+
listTasksPaginated(filter?: TaskListFilter): PaginatedResult<Task>;
|
|
127
|
+
/**
|
|
128
|
+
* Get tasks by status with pagination per column
|
|
129
|
+
*
|
|
130
|
+
* @param pagination - Pagination options (applied per status)
|
|
131
|
+
* @returns Paginated tasks grouped by status
|
|
132
|
+
*/
|
|
133
|
+
getTasksByStatusPaginated(pagination?: PaginationOptions): PaginatedTasksByStatus;
|
|
134
|
+
/**
|
|
135
|
+
* Load more tasks for a specific status
|
|
136
|
+
*
|
|
137
|
+
* @param status - Status column to load more from
|
|
138
|
+
* @param currentOffset - Current offset (items already loaded)
|
|
139
|
+
* @param pagination - Pagination options (limit, sortBy, sortDirection)
|
|
140
|
+
* @returns Paginated result for the status
|
|
141
|
+
*/
|
|
142
|
+
loadMoreForStatus(status: string, currentOffset: number, pagination?: Omit<PaginationOptions, "offset">): PaginatedResult<Task>;
|
|
82
143
|
/**
|
|
83
144
|
* Reload all tasks from disk
|
|
84
145
|
*
|
|
@@ -86,6 +147,7 @@ export declare class Core {
|
|
|
86
147
|
*/
|
|
87
148
|
reload(): Promise<void>;
|
|
88
149
|
private ensureInitialized;
|
|
150
|
+
private applyFilters;
|
|
89
151
|
private loadTasksFromDirectory;
|
|
90
152
|
}
|
|
91
153
|
//# sourceMappingURL=Core.d.ts.map
|
package/dist/core/Core.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Core.d.ts","sourceRoot":"","sources":["../../src/core/Core.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Core.d.ts","sourceRoot":"","sources":["../../src/core/Core.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,KAAK,EACV,IAAI,EACJ,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,sBAAsB,EACvB,MAAM,UAAU,CAAC;AAKlB;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,8DAA8D;IAC9D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IAEpB,iDAAiD;IACjD,QAAQ,EAAE;QACR,oCAAoC;QACpC,EAAE,EAAE,iBAAiB,CAAC;KACvB,CAAC;CACH;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,IAAI;IACf,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IAEvC,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,KAAK,CAAgC;IAC7C,OAAO,CAAC,WAAW,CAAS;gBAEhB,OAAO,EAAE,WAAW;IAKhC;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;IAK1C;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiClE;;;;;OAKG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA+BjC;;;;OAIG;IACH,SAAS,IAAI,aAAa;IAK1B;;;;;OAKG;IACH,SAAS,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,EAAE;IAyB1C;;;;;;OAMG;IACH,gBAAgB,IAAI,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;IAMvC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAKrC;;;;;OAKG;IACH,kBAAkB,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC;IA4BlE;;;;;OAKG;IACH,yBAAyB,CACvB,UAAU,CAAC,EAAE,iBAAiB,GAC7B,sBAAsB;IA+CzB;;;;;;;OAOG;IACH,iBAAiB,CACf,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,GAC7C,eAAe,CAAC,IAAI,CAAC;IAwBxB;;;;OAIG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ7B,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,YAAY;YA0BN,sBAAsB;CAiCrC"}
|
package/dist/core/Core.js
CHANGED
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
* Provides a runtime-agnostic API for managing Backlog.md projects
|
|
5
5
|
* by accepting adapter implementations for I/O operations.
|
|
6
6
|
*/
|
|
7
|
-
import { parseBacklogConfig } from "./config-parser";
|
|
7
|
+
import { parseBacklogConfig, serializeBacklogConfig } from "./config-parser";
|
|
8
8
|
import { parseTaskMarkdown } from "../markdown";
|
|
9
|
-
import { sortTasks, groupTasksByStatus } from "../utils";
|
|
9
|
+
import { sortTasks, sortTasksBy, groupTasksByStatus } from "../utils";
|
|
10
10
|
/**
|
|
11
11
|
* Core class for Backlog.md operations
|
|
12
12
|
*
|
|
@@ -39,6 +39,56 @@ export class Core {
|
|
|
39
39
|
const configPath = this.fs.join(this.projectRoot, "backlog", "config.yml");
|
|
40
40
|
return this.fs.exists(configPath);
|
|
41
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* Initialize a new Backlog.md project in the projectRoot directory
|
|
44
|
+
*
|
|
45
|
+
* Creates the backlog/ directory and config.yml file.
|
|
46
|
+
* Task directories (tasks/, completed/) are created lazily when needed.
|
|
47
|
+
*
|
|
48
|
+
* @param options - Optional configuration for the new project
|
|
49
|
+
* @throws Error if project already exists
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```typescript
|
|
53
|
+
* const core = new Core({ projectRoot: '/path/to/project', adapters: { fs } });
|
|
54
|
+
*
|
|
55
|
+
* // Initialize with defaults
|
|
56
|
+
* await core.initProject();
|
|
57
|
+
*
|
|
58
|
+
* // Or with custom options
|
|
59
|
+
* await core.initProject({
|
|
60
|
+
* projectName: 'My Project',
|
|
61
|
+
* statuses: ['Backlog', 'In Progress', 'Review', 'Done'],
|
|
62
|
+
* labels: ['bug', 'feature', 'docs']
|
|
63
|
+
* });
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
async initProject(options = {}) {
|
|
67
|
+
// Check if already a backlog project
|
|
68
|
+
if (await this.isBacklogProject()) {
|
|
69
|
+
throw new Error(`Already a Backlog.md project: config.yml exists at ${this.fs.join(this.projectRoot, "backlog", "config.yml")}`);
|
|
70
|
+
}
|
|
71
|
+
// Derive project name from directory if not provided
|
|
72
|
+
const dirName = this.projectRoot.split("/").pop() || "Backlog";
|
|
73
|
+
const projectName = options.projectName || dirName;
|
|
74
|
+
// Build config with defaults
|
|
75
|
+
const statuses = options.statuses || ["To Do", "In Progress", "Done"];
|
|
76
|
+
const config = {
|
|
77
|
+
projectName,
|
|
78
|
+
statuses,
|
|
79
|
+
labels: options.labels || [],
|
|
80
|
+
milestones: [],
|
|
81
|
+
defaultStatus: options.defaultStatus || statuses[0],
|
|
82
|
+
dateFormat: "YYYY-MM-DD",
|
|
83
|
+
};
|
|
84
|
+
// Create backlog directory
|
|
85
|
+
const backlogDir = this.fs.join(this.projectRoot, "backlog");
|
|
86
|
+
await this.fs.createDir(backlogDir, { recursive: true });
|
|
87
|
+
// Write config.yml
|
|
88
|
+
const configPath = this.fs.join(backlogDir, "config.yml");
|
|
89
|
+
const configContent = serializeBacklogConfig(config);
|
|
90
|
+
await this.fs.writeFile(configPath, configContent);
|
|
91
|
+
}
|
|
42
92
|
/**
|
|
43
93
|
* Initialize the Core instance
|
|
44
94
|
*
|
|
@@ -125,6 +175,105 @@ export class Core {
|
|
|
125
175
|
this.ensureInitialized();
|
|
126
176
|
return this.tasks.get(id);
|
|
127
177
|
}
|
|
178
|
+
/**
|
|
179
|
+
* List tasks with pagination
|
|
180
|
+
*
|
|
181
|
+
* @param filter - Filter and pagination options
|
|
182
|
+
* @returns Paginated result with tasks
|
|
183
|
+
*/
|
|
184
|
+
listTasksPaginated(filter) {
|
|
185
|
+
this.ensureInitialized();
|
|
186
|
+
// Apply filters
|
|
187
|
+
let tasks = this.applyFilters(Array.from(this.tasks.values()), filter);
|
|
188
|
+
// Sort
|
|
189
|
+
const pagination = filter?.pagination ?? {};
|
|
190
|
+
const sortBy = pagination.sortBy ?? "title";
|
|
191
|
+
const sortDirection = pagination.sortDirection ?? "asc";
|
|
192
|
+
tasks = sortTasksBy(tasks, sortBy, sortDirection);
|
|
193
|
+
// Paginate
|
|
194
|
+
const limit = pagination.limit ?? 10;
|
|
195
|
+
const offset = pagination.offset ?? 0;
|
|
196
|
+
const total = tasks.length;
|
|
197
|
+
const items = tasks.slice(offset, offset + limit);
|
|
198
|
+
return {
|
|
199
|
+
items,
|
|
200
|
+
total,
|
|
201
|
+
hasMore: offset + limit < total,
|
|
202
|
+
offset,
|
|
203
|
+
limit,
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Get tasks by status with pagination per column
|
|
208
|
+
*
|
|
209
|
+
* @param pagination - Pagination options (applied per status)
|
|
210
|
+
* @returns Paginated tasks grouped by status
|
|
211
|
+
*/
|
|
212
|
+
getTasksByStatusPaginated(pagination) {
|
|
213
|
+
this.ensureInitialized();
|
|
214
|
+
const limit = pagination?.limit ?? 10;
|
|
215
|
+
const offset = pagination?.offset ?? 0;
|
|
216
|
+
const sortBy = pagination?.sortBy ?? "title";
|
|
217
|
+
const sortDirection = pagination?.sortDirection ?? "asc";
|
|
218
|
+
const byStatus = new Map();
|
|
219
|
+
// Group all tasks by status first (without sorting)
|
|
220
|
+
const allGrouped = new Map();
|
|
221
|
+
for (const status of this.config.statuses) {
|
|
222
|
+
allGrouped.set(status, []);
|
|
223
|
+
}
|
|
224
|
+
for (const task of this.tasks.values()) {
|
|
225
|
+
const list = allGrouped.get(task.status);
|
|
226
|
+
if (list) {
|
|
227
|
+
list.push(task);
|
|
228
|
+
}
|
|
229
|
+
else {
|
|
230
|
+
allGrouped.set(task.status, [task]);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
// Paginate each status column
|
|
234
|
+
for (const status of this.config.statuses) {
|
|
235
|
+
let tasks = allGrouped.get(status) ?? [];
|
|
236
|
+
tasks = sortTasksBy(tasks, sortBy, sortDirection);
|
|
237
|
+
const total = tasks.length;
|
|
238
|
+
const items = tasks.slice(offset, offset + limit);
|
|
239
|
+
byStatus.set(status, {
|
|
240
|
+
items,
|
|
241
|
+
total,
|
|
242
|
+
hasMore: offset + limit < total,
|
|
243
|
+
offset,
|
|
244
|
+
limit,
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
return {
|
|
248
|
+
byStatus,
|
|
249
|
+
statuses: this.config.statuses,
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Load more tasks for a specific status
|
|
254
|
+
*
|
|
255
|
+
* @param status - Status column to load more from
|
|
256
|
+
* @param currentOffset - Current offset (items already loaded)
|
|
257
|
+
* @param pagination - Pagination options (limit, sortBy, sortDirection)
|
|
258
|
+
* @returns Paginated result for the status
|
|
259
|
+
*/
|
|
260
|
+
loadMoreForStatus(status, currentOffset, pagination) {
|
|
261
|
+
this.ensureInitialized();
|
|
262
|
+
const limit = pagination?.limit ?? 10;
|
|
263
|
+
const sortBy = pagination?.sortBy ?? "title";
|
|
264
|
+
const sortDirection = pagination?.sortDirection ?? "asc";
|
|
265
|
+
let tasks = Array.from(this.tasks.values()).filter((t) => t.status === status);
|
|
266
|
+
tasks = sortTasksBy(tasks, sortBy, sortDirection);
|
|
267
|
+
const total = tasks.length;
|
|
268
|
+
const items = tasks.slice(currentOffset, currentOffset + limit);
|
|
269
|
+
return {
|
|
270
|
+
items,
|
|
271
|
+
total,
|
|
272
|
+
hasMore: currentOffset + limit < total,
|
|
273
|
+
offset: currentOffset,
|
|
274
|
+
limit,
|
|
275
|
+
};
|
|
276
|
+
}
|
|
128
277
|
/**
|
|
129
278
|
* Reload all tasks from disk
|
|
130
279
|
*
|
|
@@ -141,6 +290,27 @@ export class Core {
|
|
|
141
290
|
throw new Error("Core not initialized. Call initialize() first.");
|
|
142
291
|
}
|
|
143
292
|
}
|
|
293
|
+
applyFilters(tasks, filter) {
|
|
294
|
+
if (!filter)
|
|
295
|
+
return tasks;
|
|
296
|
+
let result = tasks;
|
|
297
|
+
if (filter.status) {
|
|
298
|
+
result = result.filter((t) => t.status === filter.status);
|
|
299
|
+
}
|
|
300
|
+
if (filter.assignee) {
|
|
301
|
+
result = result.filter((t) => t.assignee.includes(filter.assignee));
|
|
302
|
+
}
|
|
303
|
+
if (filter.priority) {
|
|
304
|
+
result = result.filter((t) => t.priority === filter.priority);
|
|
305
|
+
}
|
|
306
|
+
if (filter.labels && filter.labels.length > 0) {
|
|
307
|
+
result = result.filter((t) => filter.labels.some((label) => t.labels.includes(label)));
|
|
308
|
+
}
|
|
309
|
+
if (filter.parentTaskId) {
|
|
310
|
+
result = result.filter((t) => t.parentTaskId === filter.parentTaskId);
|
|
311
|
+
}
|
|
312
|
+
return result;
|
|
313
|
+
}
|
|
144
314
|
async loadTasksFromDirectory(dir, source) {
|
|
145
315
|
const entries = await this.fs.readDir(dir);
|
|
146
316
|
for (const entry of entries) {
|
package/dist/core/Core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Core.js","sourceRoot":"","sources":["../../src/core/Core.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"Core.js","sourceRoot":"","sources":["../../src/core/Core.ts"],"names":[],"mappings":"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"}
|
package/dist/core/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Core module exports
|
|
3
3
|
*/
|
|
4
|
-
export { Core, type CoreOptions } from "./Core";
|
|
4
|
+
export { Core, type CoreOptions, type InitProjectOptions } from "./Core";
|
|
5
5
|
export { parseBacklogConfig, serializeBacklogConfig } from "./config-parser";
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAA6C,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
* using the adapter pattern for I/O operations.
|
|
7
7
|
*/
|
|
8
8
|
export type { FileSystemAdapter, FileStats, GlobAdapter, GlobOptions, GitAdapter, GitExecResult, GitExecOptions, GitOperationsInterface, } from "./abstractions";
|
|
9
|
-
export type { Task, TaskStatus, TaskCreateInput, TaskUpdateInput, TaskListFilter, AcceptanceCriterion, AcceptanceCriterionInput, Document, Decision, SearchResult, SearchResultType, SearchOptions, SearchFilters, SearchMatch, SearchPriorityFilter, TaskSearchResult, DocumentSearchResult, DecisionSearchResult, Sequence, BacklogConfig, ParsedMarkdown, } from "./types";
|
|
9
|
+
export type { Task, TaskStatus, TaskCreateInput, TaskUpdateInput, TaskListFilter, AcceptanceCriterion, AcceptanceCriterionInput, PaginationOptions, PaginatedResult, PaginatedTasksByStatus, Document, Decision, SearchResult, SearchResultType, SearchOptions, SearchFilters, SearchMatch, SearchPriorityFilter, TaskSearchResult, DocumentSearchResult, DecisionSearchResult, Sequence, BacklogConfig, ParsedMarkdown, } from "./types";
|
|
10
10
|
export { isLocalEditableTask } from "./types";
|
|
11
11
|
export { parseTaskMarkdown, serializeTaskMarkdown, type TaskFrontmatter, } from "./markdown";
|
|
12
|
-
export { Core, type CoreOptions } from "./core";
|
|
12
|
+
export { Core, type CoreOptions, type InitProjectOptions } from "./core";
|
|
13
13
|
export { parseBacklogConfig, serializeBacklogConfig } from "./core";
|
|
14
|
-
export { sortTasks, groupTasksByStatus } from "./utils";
|
|
14
|
+
export { sortTasks, sortTasksByTitle, sortTasksBy, groupTasksByStatus, } from "./utils";
|
|
15
15
|
export { InMemoryFileSystemAdapter } from "@principal-ai/repository-abstraction";
|
|
16
16
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,YAAY,EACV,iBAAiB,EACjB,SAAS,EACT,WAAW,EACX,WAAW,EACX,UAAU,EACV,aAAa,EACb,cAAc,EACd,sBAAsB,GACvB,MAAM,gBAAgB,CAAC;AAMxB,YAAY,EAEV,IAAI,EACJ,UAAU,EACV,eAAe,EACf,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,wBAAwB,EAGxB,QAAQ,EACR,QAAQ,EAGR,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EAGpB,QAAQ,EACR,aAAa,EACb,cAAc,GACf,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAM9C,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC;AAMpB,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,YAAY,EACV,iBAAiB,EACjB,SAAS,EACT,WAAW,EACX,WAAW,EACX,UAAU,EACV,aAAa,EACb,cAAc,EACd,sBAAsB,GACvB,MAAM,gBAAgB,CAAC;AAMxB,YAAY,EAEV,IAAI,EACJ,UAAU,EACV,eAAe,EACf,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,wBAAwB,EAGxB,iBAAiB,EACjB,eAAe,EACf,sBAAsB,EAGtB,QAAQ,EACR,QAAQ,EAGR,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EAGpB,QAAQ,EACR,aAAa,EACb,cAAc,GACf,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAM9C,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC;AAMpB,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAMpE,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,kBAAkB,GACnB,MAAM,SAAS,CAAC;AAMjB,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -19,7 +19,7 @@ export { parseBacklogConfig, serializeBacklogConfig } from "./core";
|
|
|
19
19
|
// ============================================================================
|
|
20
20
|
// Utilities
|
|
21
21
|
// ============================================================================
|
|
22
|
-
export { sortTasks, groupTasksByStatus } from "./utils";
|
|
22
|
+
export { sortTasks, sortTasksByTitle, sortTasksBy, groupTasksByStatus, } from "./utils";
|
|
23
23
|
// ============================================================================
|
|
24
24
|
// Re-exports from repository-abstraction for convenience
|
|
25
25
|
// ============================================================================
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAyDH,0BAA0B;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,+EAA+E;AAC/E,mCAAmC;AACnC,+EAA+E;AAE/E,OAAO,EACL,iBAAiB,EACjB,qBAAqB,GAEtB,MAAM,YAAY,CAAC;AAEpB,+EAA+E;AAC/E,WAAW;AACX,+EAA+E;AAE/E,OAAO,EAAE,IAAI,EAA6C,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAEpE,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,kBAAkB,GACnB,MAAM,SAAS,CAAC;AAEjB,+EAA+E;AAC/E,yDAAyD;AACzD,+EAA+E;AAE/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -84,12 +84,45 @@ export interface TaskUpdateInput {
|
|
|
84
84
|
uncheckAcceptanceCriteria?: number[];
|
|
85
85
|
rawContent?: string;
|
|
86
86
|
}
|
|
87
|
+
/** Pagination options for task listing */
|
|
88
|
+
export interface PaginationOptions {
|
|
89
|
+
/** Number of items per page (default: 10) */
|
|
90
|
+
limit?: number;
|
|
91
|
+
/** Page offset (0-based, default: 0) */
|
|
92
|
+
offset?: number;
|
|
93
|
+
/** Sort field (default: 'title') */
|
|
94
|
+
sortBy?: "title" | "createdDate" | "priority" | "ordinal";
|
|
95
|
+
/** Sort direction (default: 'asc') */
|
|
96
|
+
sortDirection?: "asc" | "desc";
|
|
97
|
+
}
|
|
98
|
+
/** Paginated result wrapper */
|
|
99
|
+
export interface PaginatedResult<T> {
|
|
100
|
+
/** Items for current page */
|
|
101
|
+
items: T[];
|
|
102
|
+
/** Total count of items (before pagination) */
|
|
103
|
+
total: number;
|
|
104
|
+
/** Whether more items exist */
|
|
105
|
+
hasMore: boolean;
|
|
106
|
+
/** Current offset */
|
|
107
|
+
offset: number;
|
|
108
|
+
/** Current limit */
|
|
109
|
+
limit: number;
|
|
110
|
+
}
|
|
111
|
+
/** Paginated tasks grouped by status */
|
|
112
|
+
export interface PaginatedTasksByStatus {
|
|
113
|
+
/** Map of status -> paginated tasks */
|
|
114
|
+
byStatus: Map<string, PaginatedResult<Task>>;
|
|
115
|
+
/** Configured statuses (for column order) */
|
|
116
|
+
statuses: string[];
|
|
117
|
+
}
|
|
87
118
|
export interface TaskListFilter {
|
|
88
119
|
status?: string;
|
|
89
120
|
assignee?: string;
|
|
90
121
|
priority?: "high" | "medium" | "low";
|
|
91
122
|
parentTaskId?: string;
|
|
92
123
|
labels?: string[];
|
|
124
|
+
/** Pagination options */
|
|
125
|
+
pagination?: PaginationOptions;
|
|
93
126
|
}
|
|
94
127
|
export interface Decision {
|
|
95
128
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,kBAAkB,GACnB,MAAM,WAAW,CAAC"}
|
package/dist/utils/index.js
CHANGED
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,kBAAkB,GACnB,MAAM,WAAW,CAAC"}
|
package/dist/utils/sorting.d.ts
CHANGED
|
@@ -2,6 +2,23 @@
|
|
|
2
2
|
* Task sorting utilities
|
|
3
3
|
*/
|
|
4
4
|
import type { Task } from "../types";
|
|
5
|
+
/**
|
|
6
|
+
* Sort tasks alphabetically by title
|
|
7
|
+
*
|
|
8
|
+
* @param tasks - Tasks to sort
|
|
9
|
+
* @param direction - Sort direction ('asc' or 'desc')
|
|
10
|
+
* @returns New sorted array
|
|
11
|
+
*/
|
|
12
|
+
export declare function sortTasksByTitle(tasks: Task[], direction?: "asc" | "desc"): Task[];
|
|
13
|
+
/**
|
|
14
|
+
* Sort tasks by a specified field
|
|
15
|
+
*
|
|
16
|
+
* @param tasks - Tasks to sort
|
|
17
|
+
* @param sortBy - Field to sort by
|
|
18
|
+
* @param direction - Sort direction
|
|
19
|
+
* @returns New sorted array
|
|
20
|
+
*/
|
|
21
|
+
export declare function sortTasksBy(tasks: Task[], sortBy?: "title" | "createdDate" | "priority" | "ordinal", direction?: "asc" | "desc"): Task[];
|
|
5
22
|
/**
|
|
6
23
|
* Sort tasks by: ordinal → priority → createdDate
|
|
7
24
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sorting.d.ts","sourceRoot":"","sources":["../../src/utils/sorting.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAQrC;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,CAkB/C;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,IAAI,EAAE,EACb,QAAQ,EAAE,MAAM,EAAE,GACjB,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAyBrB"}
|
|
1
|
+
{"version":3,"file":"sorting.d.ts","sourceRoot":"","sources":["../../src/utils/sorting.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAQrC;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,IAAI,EAAE,EACb,SAAS,GAAE,KAAK,GAAG,MAAc,GAChC,IAAI,EAAE,CAKR;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,IAAI,EAAE,EACb,MAAM,GAAE,OAAO,GAAG,aAAa,GAAG,UAAU,GAAG,SAAmB,EAClE,SAAS,GAAE,KAAK,GAAG,MAAc,GAChC,IAAI,EAAE,CAgBR;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,CAkB/C;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,IAAI,EAAE,EACb,QAAQ,EAAE,MAAM,EAAE,GACjB,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAyBrB"}
|
package/dist/utils/sorting.js
CHANGED
|
@@ -6,6 +6,44 @@ const PRIORITY_ORDER = {
|
|
|
6
6
|
medium: 1,
|
|
7
7
|
low: 2,
|
|
8
8
|
};
|
|
9
|
+
/**
|
|
10
|
+
* Sort tasks alphabetically by title
|
|
11
|
+
*
|
|
12
|
+
* @param tasks - Tasks to sort
|
|
13
|
+
* @param direction - Sort direction ('asc' or 'desc')
|
|
14
|
+
* @returns New sorted array
|
|
15
|
+
*/
|
|
16
|
+
export function sortTasksByTitle(tasks, direction = "asc") {
|
|
17
|
+
return [...tasks].sort((a, b) => {
|
|
18
|
+
const cmp = a.title.localeCompare(b.title);
|
|
19
|
+
return direction === "asc" ? cmp : -cmp;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Sort tasks by a specified field
|
|
24
|
+
*
|
|
25
|
+
* @param tasks - Tasks to sort
|
|
26
|
+
* @param sortBy - Field to sort by
|
|
27
|
+
* @param direction - Sort direction
|
|
28
|
+
* @returns New sorted array
|
|
29
|
+
*/
|
|
30
|
+
export function sortTasksBy(tasks, sortBy = "title", direction = "asc") {
|
|
31
|
+
switch (sortBy) {
|
|
32
|
+
case "title":
|
|
33
|
+
return sortTasksByTitle(tasks, direction);
|
|
34
|
+
case "createdDate":
|
|
35
|
+
return [...tasks].sort((a, b) => {
|
|
36
|
+
const cmp = a.createdDate.localeCompare(b.createdDate);
|
|
37
|
+
return direction === "asc" ? cmp : -cmp;
|
|
38
|
+
});
|
|
39
|
+
case "priority":
|
|
40
|
+
case "ordinal":
|
|
41
|
+
default:
|
|
42
|
+
// Use existing sortTasks for priority/ordinal
|
|
43
|
+
const sorted = sortTasks(tasks);
|
|
44
|
+
return direction === "desc" ? sorted.reverse() : sorted;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
9
47
|
/**
|
|
10
48
|
* Sort tasks by: ordinal → priority → createdDate
|
|
11
49
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sorting.js","sourceRoot":"","sources":["../../src/utils/sorting.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,cAAc,GAA2B;IAC7C,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,GAAG,EAAE,CAAC;CACP,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC9B,+BAA+B;QAC/B,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACvD,OAAO,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;QAC/B,CAAC;QACD,+CAA+C;QAC/C,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS;YAAE,OAAO,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS;YAAE,OAAO,CAAC,CAAC;QAEtC,gDAAgD;QAChD,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,GAAG,IAAI,CAAC;QAEtC,iCAAiC;QACjC,OAAO,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAAa,EACb,QAAkB;IAElB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE1C,mEAAmE;IACnE,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,cAAc;IACd,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,sDAAsD;YACtD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,KAAK,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,OAAO,EAAE,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
1
|
+
{"version":3,"file":"sorting.js","sourceRoot":"","sources":["../../src/utils/sorting.ts"],"names":[],"mappings":"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"}
|