@paca-ai/paca-mcp 0.1.0-rc.6
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/api/client.d.ts +53 -0
- package/api/client.d.ts.map +1 -0
- package/api/client.js +267 -0
- package/api/client.js.map +1 -0
- package/api/doc-client.d.ts +26 -0
- package/api/doc-client.d.ts.map +1 -0
- package/api/doc-client.js +109 -0
- package/api/doc-client.js.map +1 -0
- package/api/extended-client.d.ts +44 -0
- package/api/extended-client.d.ts.map +1 -0
- package/api/extended-client.js +167 -0
- package/api/extended-client.js.map +1 -0
- package/api/github-client.d.ts +21 -0
- package/api/github-client.d.ts.map +1 -0
- package/api/github-client.js +87 -0
- package/api/github-client.js.map +1 -0
- package/api/index.d.ts +7 -0
- package/api/index.d.ts.map +1 -0
- package/api/index.js +7 -0
- package/api/index.js.map +1 -0
- package/api/task-extended-client.d.ts +28 -0
- package/api/task-extended-client.d.ts.map +1 -0
- package/api/task-extended-client.js +123 -0
- package/api/task-extended-client.js.map +1 -0
- package/api/views-client.d.ts +36 -0
- package/api/views-client.d.ts.map +1 -0
- package/api/views-client.js +157 -0
- package/api/views-client.js.map +1 -0
- package/index.d.ts +3 -0
- package/index.d.ts.map +1 -0
- package/index.js +41 -0
- package/index.js.map +1 -0
- package/package.json +40 -0
- package/server.d.ts +9 -0
- package/server.d.ts.map +1 -0
- package/server.js +46 -0
- package/server.js.map +1 -0
- package/tools/attachment-tools.d.ts +15 -0
- package/tools/attachment-tools.d.ts.map +1 -0
- package/tools/attachment-tools.js +402 -0
- package/tools/attachment-tools.js.map +1 -0
- package/tools/doc-github-tools.d.ts +15 -0
- package/tools/doc-github-tools.d.ts.map +1 -0
- package/tools/doc-github-tools.js +520 -0
- package/tools/doc-github-tools.js.map +1 -0
- package/tools/document-tools.d.ts +16 -0
- package/tools/document-tools.d.ts.map +1 -0
- package/tools/document-tools.js +224 -0
- package/tools/document-tools.js.map +1 -0
- package/tools/index.d.ts +19 -0
- package/tools/index.d.ts.map +1 -0
- package/tools/index.js +171 -0
- package/tools/index.js.map +1 -0
- package/tools/member-tools.d.ts +15 -0
- package/tools/member-tools.d.ts.map +1 -0
- package/tools/member-tools.js +391 -0
- package/tools/member-tools.js.map +1 -0
- package/tools/project-tools.d.ts +16 -0
- package/tools/project-tools.d.ts.map +1 -0
- package/tools/project-tools.js +178 -0
- package/tools/project-tools.js.map +1 -0
- package/tools/sprint-tools.d.ts +16 -0
- package/tools/sprint-tools.d.ts.map +1 -0
- package/tools/sprint-tools.js +258 -0
- package/tools/sprint-tools.js.map +1 -0
- package/tools/task-activity-tools.d.ts +15 -0
- package/tools/task-activity-tools.d.ts.map +1 -0
- package/tools/task-activity-tools.js +425 -0
- package/tools/task-activity-tools.js.map +1 -0
- package/tools/task-tools.d.ts +16 -0
- package/tools/task-tools.d.ts.map +1 -0
- package/tools/task-tools.js +344 -0
- package/tools/task-tools.js.map +1 -0
- package/tools/task-type-tools.d.ts +12 -0
- package/tools/task-type-tools.d.ts.map +1 -0
- package/tools/task-type-tools.js +459 -0
- package/tools/task-type-tools.js.map +1 -0
- package/tools/view-tools.d.ts +15 -0
- package/tools/view-tools.d.ts.map +1 -0
- package/tools/view-tools.js +660 -0
- package/tools/view-tools.js.map +1 -0
- package/types/index.d.ts +564 -0
- package/types/index.d.ts.map +1 -0
- package/types/index.js +2 -0
- package/types/index.js.map +1 -0
- package/utils/converters.d.ts +13 -0
- package/utils/converters.d.ts.map +1 -0
- package/utils/converters.js +50 -0
- package/utils/converters.js.map +1 -0
- package/utils/formatters.d.ts +34 -0
- package/utils/formatters.d.ts.map +1 -0
- package/utils/formatters.js +87 -0
- package/utils/formatters.js.map +1 -0
- package/utils/index.d.ts +3 -0
- package/utils/index.d.ts.map +1 -0
- package/utils/index.js +3 -0
- package/utils/index.js.map +1 -0
package/api/client.d.ts
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { CompleteSprintInput, CreateDocumentInput, CreateProjectInput, CreateSprintInput, CreateTaskInput, Document, PacaConfig, Project, Sprint, Task, UpdateDocumentInput, UpdateProjectInput, UpdateSprintInput, UpdateTaskInput } from "../types/index.js";
|
|
2
|
+
/**
|
|
3
|
+
* Paca API client for interacting with the Paca backend.
|
|
4
|
+
* Handles authentication, HTTP requests, and format conversions.
|
|
5
|
+
*/
|
|
6
|
+
export declare class PacaAPIClient {
|
|
7
|
+
private config;
|
|
8
|
+
constructor(config: PacaConfig);
|
|
9
|
+
/**
|
|
10
|
+
* Makes an HTTP request to the Paca API.
|
|
11
|
+
* Handles SuccessEnvelope wrapper by extracting data.data.
|
|
12
|
+
* @param method - HTTP method
|
|
13
|
+
* @param path - API path
|
|
14
|
+
* @param body - Request body (optional)
|
|
15
|
+
* @returns Response data (extracted from SuccessEnvelope)
|
|
16
|
+
*/
|
|
17
|
+
private request;
|
|
18
|
+
private get;
|
|
19
|
+
private post;
|
|
20
|
+
private patch;
|
|
21
|
+
private delete;
|
|
22
|
+
listProjects(page?: number, pageSize?: number): Promise<Project[]>;
|
|
23
|
+
getProject(projectId: string): Promise<Project>;
|
|
24
|
+
createProject(input: CreateProjectInput): Promise<Project>;
|
|
25
|
+
updateProject(projectId: string, input: UpdateProjectInput): Promise<Project>;
|
|
26
|
+
deleteProject(projectId: string): Promise<void>;
|
|
27
|
+
listTasks(projectId: string, options?: {
|
|
28
|
+
sprintId?: string | null;
|
|
29
|
+
statusId?: string;
|
|
30
|
+
assigneeId?: string;
|
|
31
|
+
taskTypeIds?: string[];
|
|
32
|
+
parentTaskId?: string;
|
|
33
|
+
page?: number;
|
|
34
|
+
pageSize?: number;
|
|
35
|
+
}): Promise<Task[]>;
|
|
36
|
+
getTask(projectId: string, taskId: string): Promise<Task>;
|
|
37
|
+
getTaskByNumber(projectId: string, taskNumber: number): Promise<Task>;
|
|
38
|
+
createTask(input: CreateTaskInput): Promise<Task>;
|
|
39
|
+
updateTask(projectId: string, taskId: string, input: UpdateTaskInput): Promise<Task>;
|
|
40
|
+
deleteTask(projectId: string, taskId: string): Promise<void>;
|
|
41
|
+
listSprints(projectId: string): Promise<Sprint[]>;
|
|
42
|
+
getSprint(projectId: string, sprintId: string): Promise<Sprint>;
|
|
43
|
+
createSprint(input: CreateSprintInput): Promise<Sprint>;
|
|
44
|
+
updateSprint(projectId: string, sprintId: string, input: UpdateSprintInput): Promise<Sprint>;
|
|
45
|
+
deleteSprint(projectId: string, sprintId: string): Promise<void>;
|
|
46
|
+
completeSprint(projectId: string, sprintId: string, input?: CompleteSprintInput): Promise<Sprint>;
|
|
47
|
+
listDocuments(projectId: string, folderId?: string): Promise<Document[]>;
|
|
48
|
+
getDocument(projectId: string, docId: string): Promise<Document>;
|
|
49
|
+
createDocument(input: CreateDocumentInput): Promise<Document>;
|
|
50
|
+
updateDocument(projectId: string, docId: string, input: UpdateDocumentInput): Promise<Document>;
|
|
51
|
+
deleteDocument(projectId: string, docId: string): Promise<void>;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
|
package/api/client.js
ADDED
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
import { markdownToBlocknote } from "../utils/index.js";
|
|
2
|
+
/**
|
|
3
|
+
* Paca API client for interacting with the Paca backend.
|
|
4
|
+
* Handles authentication, HTTP requests, and format conversions.
|
|
5
|
+
*/
|
|
6
|
+
export class PacaAPIClient {
|
|
7
|
+
config;
|
|
8
|
+
constructor(config) {
|
|
9
|
+
this.config = config;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Makes an HTTP request to the Paca API.
|
|
13
|
+
* Handles SuccessEnvelope wrapper by extracting data.data.
|
|
14
|
+
* @param method - HTTP method
|
|
15
|
+
* @param path - API path
|
|
16
|
+
* @param body - Request body (optional)
|
|
17
|
+
* @returns Response data (extracted from SuccessEnvelope)
|
|
18
|
+
*/
|
|
19
|
+
async request(method, path, body) {
|
|
20
|
+
const url = `${this.config.baseURL}${path}`;
|
|
21
|
+
const headers = {
|
|
22
|
+
"Content-Type": "application/json",
|
|
23
|
+
"X-API-Key": this.config.apiKey,
|
|
24
|
+
};
|
|
25
|
+
const options = {
|
|
26
|
+
method,
|
|
27
|
+
headers,
|
|
28
|
+
};
|
|
29
|
+
if (body) {
|
|
30
|
+
options.body = JSON.stringify(body);
|
|
31
|
+
}
|
|
32
|
+
const response = await fetch(url, options);
|
|
33
|
+
if (!response.ok) {
|
|
34
|
+
const errorText = await response.text();
|
|
35
|
+
throw new Error(`API request failed: ${response.status} ${response.statusText} - ${errorText}`);
|
|
36
|
+
}
|
|
37
|
+
const jsonResponse = await response.json();
|
|
38
|
+
// Handle SuccessEnvelope wrapper
|
|
39
|
+
if (jsonResponse &&
|
|
40
|
+
typeof jsonResponse === "object" &&
|
|
41
|
+
"success" in jsonResponse) {
|
|
42
|
+
const envelope = jsonResponse;
|
|
43
|
+
if (envelope.success) {
|
|
44
|
+
return envelope.data;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
// Fallback for responses not wrapped in SuccessEnvelope
|
|
48
|
+
return jsonResponse;
|
|
49
|
+
}
|
|
50
|
+
async get(path) {
|
|
51
|
+
return this.request("GET", path);
|
|
52
|
+
}
|
|
53
|
+
async post(path, body) {
|
|
54
|
+
return this.request("POST", path, body);
|
|
55
|
+
}
|
|
56
|
+
async patch(path, body) {
|
|
57
|
+
return this.request("PATCH", path, body);
|
|
58
|
+
}
|
|
59
|
+
async delete(path) {
|
|
60
|
+
return this.request("DELETE", path);
|
|
61
|
+
}
|
|
62
|
+
// ==================== Project Methods ====================
|
|
63
|
+
async listProjects(page = 1, pageSize = 50) {
|
|
64
|
+
const response = await this.get(`/api/v1/projects?page=${page}&page_size=${pageSize}`);
|
|
65
|
+
if (Array.isArray(response)) {
|
|
66
|
+
return response;
|
|
67
|
+
}
|
|
68
|
+
return response.items || response.projects || response.data || [];
|
|
69
|
+
}
|
|
70
|
+
async getProject(projectId) {
|
|
71
|
+
return this.get(`/api/v1/projects/${projectId}`);
|
|
72
|
+
}
|
|
73
|
+
async createProject(input) {
|
|
74
|
+
return this.post("/api/v1/projects", input);
|
|
75
|
+
}
|
|
76
|
+
async updateProject(projectId, input) {
|
|
77
|
+
return this.patch(`/api/v1/projects/${projectId}`, input);
|
|
78
|
+
}
|
|
79
|
+
async deleteProject(projectId) {
|
|
80
|
+
await this.delete(`/api/v1/projects/${projectId}`);
|
|
81
|
+
}
|
|
82
|
+
// ==================== Task Methods ====================
|
|
83
|
+
async listTasks(projectId, options = {}) {
|
|
84
|
+
const params = [];
|
|
85
|
+
if (options.page !== undefined)
|
|
86
|
+
params.push(`page=${options.page}`);
|
|
87
|
+
if (options.pageSize !== undefined)
|
|
88
|
+
params.push(`page_size=${options.pageSize}`);
|
|
89
|
+
if (options.sprintId !== undefined)
|
|
90
|
+
params.push(`sprint_id=${options.sprintId}`);
|
|
91
|
+
if (options.statusId !== undefined)
|
|
92
|
+
params.push(`status_id=${options.statusId}`);
|
|
93
|
+
if (options.assigneeId !== undefined)
|
|
94
|
+
params.push(`assignee_id=${options.assigneeId}`);
|
|
95
|
+
if (options.taskTypeIds && options.taskTypeIds.length > 0)
|
|
96
|
+
params.push(`task_type_ids=${options.taskTypeIds.join(",")}`);
|
|
97
|
+
if (options.parentTaskId !== undefined)
|
|
98
|
+
params.push(`parent_task_id=${options.parentTaskId}`);
|
|
99
|
+
const queryString = params.length > 0 ? `?${params.join("&")}` : "";
|
|
100
|
+
const response = await this.get(`/api/v1/projects/${projectId}/tasks${queryString}`);
|
|
101
|
+
if (Array.isArray(response)) {
|
|
102
|
+
return response;
|
|
103
|
+
}
|
|
104
|
+
return response.items || response.tasks || response.data || [];
|
|
105
|
+
}
|
|
106
|
+
async getTask(projectId, taskId) {
|
|
107
|
+
return this.get(`/api/v1/projects/${projectId}/tasks/${taskId}`);
|
|
108
|
+
}
|
|
109
|
+
async getTaskByNumber(projectId, taskNumber) {
|
|
110
|
+
return this.get(`/api/v1/projects/${projectId}/tasks/by-number/${taskNumber}`);
|
|
111
|
+
}
|
|
112
|
+
async createTask(input) {
|
|
113
|
+
const descriptionBlocks = input.description
|
|
114
|
+
? markdownToBlocknote(input.description)
|
|
115
|
+
: null;
|
|
116
|
+
const body = {
|
|
117
|
+
project_id: input.project_id,
|
|
118
|
+
title: input.title,
|
|
119
|
+
description: descriptionBlocks,
|
|
120
|
+
};
|
|
121
|
+
if (input.status_id !== undefined)
|
|
122
|
+
body.status_id = input.status_id;
|
|
123
|
+
if (input.task_type_id !== undefined)
|
|
124
|
+
body.task_type_id = input.task_type_id;
|
|
125
|
+
if (input.sprint_id !== undefined)
|
|
126
|
+
body.sprint_id = input.sprint_id;
|
|
127
|
+
if (input.assignee_id !== undefined)
|
|
128
|
+
body.assignee_id = input.assignee_id;
|
|
129
|
+
if (input.parent_task_id !== undefined)
|
|
130
|
+
body.parent_task_id = input.parent_task_id;
|
|
131
|
+
if (input.importance !== undefined)
|
|
132
|
+
body.importance = input.importance;
|
|
133
|
+
if (input.tags)
|
|
134
|
+
body.tags = input.tags;
|
|
135
|
+
if (input.start_date !== undefined)
|
|
136
|
+
body.start_date = input.start_date;
|
|
137
|
+
if (input.due_date !== undefined)
|
|
138
|
+
body.due_date = input.due_date;
|
|
139
|
+
return this.post(`/api/v1/projects/${input.project_id}/tasks`, body);
|
|
140
|
+
}
|
|
141
|
+
async updateTask(projectId, taskId, input) {
|
|
142
|
+
const body = {};
|
|
143
|
+
if (input.title !== undefined)
|
|
144
|
+
body.title = input.title;
|
|
145
|
+
if (input.description !== undefined) {
|
|
146
|
+
body.description = input.description
|
|
147
|
+
? markdownToBlocknote(input.description)
|
|
148
|
+
: null;
|
|
149
|
+
}
|
|
150
|
+
if (input.status_id !== undefined)
|
|
151
|
+
body.status_id = input.status_id;
|
|
152
|
+
if (input.task_type_id !== undefined)
|
|
153
|
+
body.task_type_id = input.task_type_id;
|
|
154
|
+
if (input.sprint_id !== undefined)
|
|
155
|
+
body.sprint_id = input.sprint_id;
|
|
156
|
+
if (input.assignee_id !== undefined)
|
|
157
|
+
body.assignee_id = input.assignee_id;
|
|
158
|
+
if (input.reporter_id !== undefined)
|
|
159
|
+
body.reporter_id = input.reporter_id;
|
|
160
|
+
if (input.parent_task_id !== undefined)
|
|
161
|
+
body.parent_task_id = input.parent_task_id;
|
|
162
|
+
if (input.importance !== undefined)
|
|
163
|
+
body.importance = input.importance;
|
|
164
|
+
if (input.tags !== undefined)
|
|
165
|
+
body.tags = input.tags;
|
|
166
|
+
if (input.start_date !== undefined)
|
|
167
|
+
body.start_date = input.start_date;
|
|
168
|
+
if (input.due_date !== undefined)
|
|
169
|
+
body.due_date = input.due_date;
|
|
170
|
+
if (input.custom_fields !== undefined)
|
|
171
|
+
body.custom_fields = input.custom_fields;
|
|
172
|
+
return this.patch(`/api/v1/projects/${projectId}/tasks/${taskId}`, body);
|
|
173
|
+
}
|
|
174
|
+
async deleteTask(projectId, taskId) {
|
|
175
|
+
await this.delete(`/api/v1/projects/${projectId}/tasks/${taskId}`);
|
|
176
|
+
}
|
|
177
|
+
// ==================== Sprint Methods ====================
|
|
178
|
+
async listSprints(projectId) {
|
|
179
|
+
const response = await this.get(`/api/v1/projects/${projectId}/sprints`);
|
|
180
|
+
if (Array.isArray(response)) {
|
|
181
|
+
return response;
|
|
182
|
+
}
|
|
183
|
+
return response.items || response.sprints || response.data || [];
|
|
184
|
+
}
|
|
185
|
+
async getSprint(projectId, sprintId) {
|
|
186
|
+
return this.get(`/api/v1/projects/${projectId}/sprints/${sprintId}`);
|
|
187
|
+
}
|
|
188
|
+
async createSprint(input) {
|
|
189
|
+
const body = {
|
|
190
|
+
project_id: input.project_id,
|
|
191
|
+
name: input.name,
|
|
192
|
+
};
|
|
193
|
+
if (input.start_date !== undefined)
|
|
194
|
+
body.start_date = input.start_date;
|
|
195
|
+
if (input.end_date !== undefined)
|
|
196
|
+
body.end_date = input.end_date;
|
|
197
|
+
if (input.goal !== undefined)
|
|
198
|
+
body.goal = input.goal;
|
|
199
|
+
if (input.status !== undefined)
|
|
200
|
+
body.status = input.status;
|
|
201
|
+
return this.post(`/api/v1/projects/${input.project_id}/sprints`, body);
|
|
202
|
+
}
|
|
203
|
+
async updateSprint(projectId, sprintId, input) {
|
|
204
|
+
const body = {};
|
|
205
|
+
if (input.name !== undefined)
|
|
206
|
+
body.name = input.name;
|
|
207
|
+
if (input.start_date !== undefined)
|
|
208
|
+
body.start_date = input.start_date;
|
|
209
|
+
if (input.end_date !== undefined)
|
|
210
|
+
body.end_date = input.end_date;
|
|
211
|
+
if (input.goal !== undefined)
|
|
212
|
+
body.goal = input.goal;
|
|
213
|
+
if (input.status !== undefined)
|
|
214
|
+
body.status = input.status;
|
|
215
|
+
return this.patch(`/api/v1/projects/${projectId}/sprints/${sprintId}`, body);
|
|
216
|
+
}
|
|
217
|
+
async deleteSprint(projectId, sprintId) {
|
|
218
|
+
await this.delete(`/api/v1/projects/${projectId}/sprints/${sprintId}`);
|
|
219
|
+
}
|
|
220
|
+
async completeSprint(projectId, sprintId, input = {}) {
|
|
221
|
+
return this.post(`/api/v1/projects/${projectId}/sprints/${sprintId}/complete`, input);
|
|
222
|
+
}
|
|
223
|
+
// ==================== Document Methods ====================
|
|
224
|
+
async listDocuments(projectId, folderId) {
|
|
225
|
+
const queryString = folderId ? `?folder_id=${folderId}` : "";
|
|
226
|
+
const response = await this.get(`/api/v1/projects/${projectId}/docs${queryString}`);
|
|
227
|
+
if (Array.isArray(response)) {
|
|
228
|
+
return response;
|
|
229
|
+
}
|
|
230
|
+
return response.items || response.documents || response.data || [];
|
|
231
|
+
}
|
|
232
|
+
async getDocument(projectId, docId) {
|
|
233
|
+
return this.get(`/api/v1/projects/${projectId}/docs/${docId}`);
|
|
234
|
+
}
|
|
235
|
+
async createDocument(input) {
|
|
236
|
+
const contentBlocks = input.content
|
|
237
|
+
? markdownToBlocknote(input.content)
|
|
238
|
+
: null;
|
|
239
|
+
const body = {
|
|
240
|
+
project_id: input.project_id,
|
|
241
|
+
title: input.title,
|
|
242
|
+
content: contentBlocks,
|
|
243
|
+
};
|
|
244
|
+
if (input.folder_id !== undefined)
|
|
245
|
+
body.folder_id = input.folder_id;
|
|
246
|
+
if (input.position !== undefined)
|
|
247
|
+
body.position = input.position;
|
|
248
|
+
return this.post(`/api/v1/projects/${input.project_id}/docs`, body);
|
|
249
|
+
}
|
|
250
|
+
async updateDocument(projectId, docId, input) {
|
|
251
|
+
const body = {};
|
|
252
|
+
if (input.title !== undefined)
|
|
253
|
+
body.title = input.title;
|
|
254
|
+
if (input.content !== undefined) {
|
|
255
|
+
body.content = input.content ? markdownToBlocknote(input.content) : null;
|
|
256
|
+
}
|
|
257
|
+
if (input.folder_id !== undefined)
|
|
258
|
+
body.folder_id = input.folder_id;
|
|
259
|
+
if (input.position !== undefined)
|
|
260
|
+
body.position = input.position;
|
|
261
|
+
return this.patch(`/api/v1/projects/${projectId}/docs/${docId}`, body);
|
|
262
|
+
}
|
|
263
|
+
async deleteDocument(projectId, docId) {
|
|
264
|
+
await this.delete(`/api/v1/projects/${projectId}/docs/${docId}`);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { CreateFolderInput, DocumentActivity, DocumentComment, DocumentFolder, DocumentSnapshot, PacaConfig, UpdateFolderInput } from "../types/index.js";
|
|
2
|
+
/**
|
|
3
|
+
* Extended API client for Document features.
|
|
4
|
+
*/
|
|
5
|
+
export declare class PacaAPIDocClient {
|
|
6
|
+
private config;
|
|
7
|
+
constructor(config: PacaConfig);
|
|
8
|
+
private request;
|
|
9
|
+
private get;
|
|
10
|
+
private post;
|
|
11
|
+
private patch;
|
|
12
|
+
private delete;
|
|
13
|
+
listFolders(projectId: string): Promise<DocumentFolder[]>;
|
|
14
|
+
createFolder(projectId: string, input: CreateFolderInput): Promise<DocumentFolder>;
|
|
15
|
+
updateFolder(projectId: string, folderId: string, input: UpdateFolderInput): Promise<DocumentFolder>;
|
|
16
|
+
deleteFolder(projectId: string, folderId: string): Promise<void>;
|
|
17
|
+
listSnapshots(projectId: string, docId: string): Promise<DocumentSnapshot[]>;
|
|
18
|
+
getSnapshot(projectId: string, docId: string, snapshotId: string): Promise<DocumentSnapshot>;
|
|
19
|
+
listDocumentActivities(projectId: string, docId: string): Promise<DocumentActivity[]>;
|
|
20
|
+
addDocumentComment(projectId: string, docId: string, content: string): Promise<DocumentComment>;
|
|
21
|
+
updateDocumentComment(projectId: string, docId: string, commentId: string, content: string): Promise<DocumentComment>;
|
|
22
|
+
deleteDocumentComment(projectId: string, docId: string, commentId: string): Promise<void>;
|
|
23
|
+
getDocFileDownloadURL(projectId: string, docId: string, fileId: string): Promise<string>;
|
|
24
|
+
deleteDocFile(projectId: string, docId: string, fileId: string): Promise<void>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=doc-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doc-client.d.ts","sourceRoot":"","sources":["../../src/api/doc-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,UAAU,EAEV,iBAAiB,EACjB,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,qBAAa,gBAAgB;IAC5B,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;YAIhB,OAAO;YA+CP,GAAG;YAIH,IAAI;YAIJ,KAAK;YAIL,MAAM;IAMd,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAUzD,YAAY,CACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,iBAAiB,GACtB,OAAO,CAAC,cAAc,CAAC;IAIpB,YAAY,CACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,iBAAiB,GACtB,OAAO,CAAC,cAAc,CAAC;IAOpB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMhE,aAAa,CAClB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GACX,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAUxB,WAAW,CAChB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,GAChB,OAAO,CAAC,gBAAgB,CAAC;IAQtB,sBAAsB,CAC3B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GACX,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAYxB,kBAAkB,CACvB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,CAAC;IAMrB,qBAAqB,CAC1B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,CAAC;IAOrB,qBAAqB,CAC1B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;IAQV,qBAAqB,CAC1B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC;IAOZ,aAAa,CAClB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC;CAKhB"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Extended API client for Document features.
|
|
3
|
+
*/
|
|
4
|
+
export class PacaAPIDocClient {
|
|
5
|
+
config;
|
|
6
|
+
constructor(config) {
|
|
7
|
+
this.config = config;
|
|
8
|
+
}
|
|
9
|
+
async request(method, path, body) {
|
|
10
|
+
const url = `${this.config.baseURL}${path}`;
|
|
11
|
+
const headers = {
|
|
12
|
+
"Content-Type": "application/json",
|
|
13
|
+
"X-API-Key": this.config.apiKey,
|
|
14
|
+
};
|
|
15
|
+
const options = {
|
|
16
|
+
method,
|
|
17
|
+
headers,
|
|
18
|
+
};
|
|
19
|
+
if (body) {
|
|
20
|
+
options.body = JSON.stringify(body);
|
|
21
|
+
}
|
|
22
|
+
const response = await fetch(url, options);
|
|
23
|
+
if (!response.ok) {
|
|
24
|
+
const errorText = await response.text();
|
|
25
|
+
throw new Error(`API request failed: ${response.status} ${response.statusText} - ${errorText}`);
|
|
26
|
+
}
|
|
27
|
+
const jsonResponse = await response.json();
|
|
28
|
+
// Handle SuccessEnvelope wrapper
|
|
29
|
+
if (jsonResponse &&
|
|
30
|
+
typeof jsonResponse === "object" &&
|
|
31
|
+
"success" in jsonResponse) {
|
|
32
|
+
const envelope = jsonResponse;
|
|
33
|
+
if (envelope.success) {
|
|
34
|
+
return envelope.data;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
// Fallback for responses not wrapped in SuccessEnvelope
|
|
38
|
+
return jsonResponse;
|
|
39
|
+
}
|
|
40
|
+
async get(path) {
|
|
41
|
+
return this.request("GET", path);
|
|
42
|
+
}
|
|
43
|
+
async post(path, body) {
|
|
44
|
+
return this.request("POST", path, body);
|
|
45
|
+
}
|
|
46
|
+
async patch(path, body) {
|
|
47
|
+
return this.request("PATCH", path, body);
|
|
48
|
+
}
|
|
49
|
+
async delete(path) {
|
|
50
|
+
return this.request("DELETE", path);
|
|
51
|
+
}
|
|
52
|
+
// ==================== Document Folders ====================
|
|
53
|
+
async listFolders(projectId) {
|
|
54
|
+
const response = await this.get(`/api/v1/projects/${projectId}/docs/folders`);
|
|
55
|
+
if (Array.isArray(response)) {
|
|
56
|
+
return response;
|
|
57
|
+
}
|
|
58
|
+
return response.items || response.folders || response.data || [];
|
|
59
|
+
}
|
|
60
|
+
async createFolder(projectId, input) {
|
|
61
|
+
return this.post(`/api/v1/projects/${projectId}/docs/folders`, input);
|
|
62
|
+
}
|
|
63
|
+
async updateFolder(projectId, folderId, input) {
|
|
64
|
+
return this.patch(`/api/v1/projects/${projectId}/docs/folders/${folderId}`, input);
|
|
65
|
+
}
|
|
66
|
+
async deleteFolder(projectId, folderId) {
|
|
67
|
+
await this.delete(`/api/v1/projects/${projectId}/docs/folders/${folderId}`);
|
|
68
|
+
}
|
|
69
|
+
// ==================== Document Snapshots ====================
|
|
70
|
+
async listSnapshots(projectId, docId) {
|
|
71
|
+
const response = await this.get(`/api/v1/projects/${projectId}/docs/${docId}/snapshots`);
|
|
72
|
+
if (Array.isArray(response)) {
|
|
73
|
+
return response;
|
|
74
|
+
}
|
|
75
|
+
return response.items || response.snapshots || response.data || [];
|
|
76
|
+
}
|
|
77
|
+
async getSnapshot(projectId, docId, snapshotId) {
|
|
78
|
+
return this.get(`/api/v1/projects/${projectId}/docs/${docId}/snapshots/${snapshotId}`);
|
|
79
|
+
}
|
|
80
|
+
// ==================== Document Activities ====================
|
|
81
|
+
async listDocumentActivities(projectId, docId) {
|
|
82
|
+
const response = await this.get(`/api/v1/projects/${projectId}/docs/${docId}/activities`);
|
|
83
|
+
if (Array.isArray(response)) {
|
|
84
|
+
return response;
|
|
85
|
+
}
|
|
86
|
+
return response.items || response.activities || response.data || [];
|
|
87
|
+
}
|
|
88
|
+
// ==================== Document Comments ====================
|
|
89
|
+
async addDocumentComment(projectId, docId, content) {
|
|
90
|
+
return this.post(`/api/v1/projects/${projectId}/docs/${docId}/comments`, {
|
|
91
|
+
text: content,
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
async updateDocumentComment(projectId, docId, commentId, content) {
|
|
95
|
+
return this.patch(`/api/v1/projects/${projectId}/docs/${docId}/comments/${commentId}`, { text: content });
|
|
96
|
+
}
|
|
97
|
+
async deleteDocumentComment(projectId, docId, commentId) {
|
|
98
|
+
await this.delete(`/api/v1/projects/${projectId}/docs/${docId}/comments/${commentId}`);
|
|
99
|
+
}
|
|
100
|
+
// ==================== Document Files ====================
|
|
101
|
+
async getDocFileDownloadURL(projectId, docId, fileId) {
|
|
102
|
+
const response = await this.get(`/api/v1/projects/${projectId}/docs/${docId}/files/${fileId}/download-url`);
|
|
103
|
+
return response.url || response.downloadUrl || "";
|
|
104
|
+
}
|
|
105
|
+
async deleteDocFile(projectId, docId, fileId) {
|
|
106
|
+
await this.delete(`/api/v1/projects/${projectId}/docs/${docId}/files/${fileId}`);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=doc-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doc-client.js","sourceRoot":"","sources":["../../src/api/doc-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { AddMemberInput, CreateCustomFieldInput, CreateRoleInput, CreateTaskStatusInput, CreateTaskTypeInput, CustomFieldDefinition, PacaConfig, ProjectMember, ProjectRole, TaskStatus, TaskType, UpdateCustomFieldInput, UpdateMemberRoleInput, UpdateRoleInput, UpdateTaskStatusInput, UpdateTaskTypeInput } from "../types/index.js";
|
|
2
|
+
/**
|
|
3
|
+
* Extended API client methods for additional Paca endpoints.
|
|
4
|
+
* This extends the base PacaAPIClient with additional functionality.
|
|
5
|
+
*/
|
|
6
|
+
export declare class PacaAPIExtendedClient {
|
|
7
|
+
private config;
|
|
8
|
+
constructor(config: PacaConfig);
|
|
9
|
+
/**
|
|
10
|
+
* Makes an HTTP request to the Paca API.
|
|
11
|
+
* Handles SuccessEnvelope wrapper by extracting data.data.
|
|
12
|
+
*/
|
|
13
|
+
private request;
|
|
14
|
+
private get;
|
|
15
|
+
private post;
|
|
16
|
+
private patch;
|
|
17
|
+
private delete;
|
|
18
|
+
private put;
|
|
19
|
+
listProjectMembers(projectId: string): Promise<ProjectMember[]>;
|
|
20
|
+
addProjectMember(projectId: string, input: AddMemberInput): Promise<ProjectMember>;
|
|
21
|
+
getMyProjectPermissions(projectId: string): Promise<Record<string, boolean>>;
|
|
22
|
+
updateProjectMemberRole(projectId: string, userId: string, input: UpdateMemberRoleInput): Promise<ProjectMember>;
|
|
23
|
+
removeProjectMember(projectId: string, userId: string): Promise<void>;
|
|
24
|
+
listProjectRoles(projectId: string): Promise<ProjectRole[]>;
|
|
25
|
+
createProjectRole(projectId: string, input: CreateRoleInput): Promise<ProjectRole>;
|
|
26
|
+
updateProjectRole(projectId: string, roleId: string, input: UpdateRoleInput): Promise<ProjectRole>;
|
|
27
|
+
deleteProjectRole(projectId: string, roleId: string): Promise<void>;
|
|
28
|
+
listTaskTypes(projectId: string): Promise<TaskType[]>;
|
|
29
|
+
createTaskType(projectId: string, input: CreateTaskTypeInput): Promise<TaskType>;
|
|
30
|
+
updateTaskType(projectId: string, typeId: string, input: UpdateTaskTypeInput): Promise<TaskType>;
|
|
31
|
+
deleteTaskType(projectId: string, typeId: string): Promise<void>;
|
|
32
|
+
setDefaultTaskType(projectId: string, typeId: string): Promise<TaskType>;
|
|
33
|
+
listTaskStatuses(projectId: string): Promise<TaskStatus[]>;
|
|
34
|
+
createTaskStatus(projectId: string, input: CreateTaskStatusInput): Promise<TaskStatus>;
|
|
35
|
+
updateTaskStatus(projectId: string, statusId: string, input: UpdateTaskStatusInput): Promise<TaskStatus>;
|
|
36
|
+
deleteTaskStatus(projectId: string, statusId: string): Promise<void>;
|
|
37
|
+
setDefaultTaskStatus(projectId: string, statusId: string): Promise<TaskStatus>;
|
|
38
|
+
listCustomFieldDefinitions(projectId: string): Promise<CustomFieldDefinition[]>;
|
|
39
|
+
getCustomFieldDefinition(projectId: string, fieldId: string): Promise<CustomFieldDefinition>;
|
|
40
|
+
createCustomFieldDefinition(projectId: string, input: CreateCustomFieldInput): Promise<CustomFieldDefinition>;
|
|
41
|
+
updateCustomFieldDefinition(projectId: string, fieldId: string, input: UpdateCustomFieldInput): Promise<CustomFieldDefinition>;
|
|
42
|
+
deleteCustomFieldDefinition(projectId: string, fieldId: string): Promise<void>;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=extended-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extended-client.d.ts","sourceRoot":"","sources":["../../src/api/extended-client.ts"],"names":[],"mappings":"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"}
|