bugherd-mcp 0.1.1 → 0.2.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/.dockerignore ADDED
@@ -0,0 +1,8 @@
1
+ node_modules
2
+ dist
3
+ .git
4
+ .gitignore
5
+ .env
6
+ *.md
7
+ LICENSE
8
+ bun.lock
package/Dockerfile ADDED
@@ -0,0 +1,22 @@
1
+ FROM node:22-alpine AS builder
2
+
3
+ WORKDIR /app
4
+
5
+ COPY package.json bun.lock ./
6
+ RUN npm install --frozen-lockfile 2>/dev/null || npm install
7
+
8
+ COPY tsconfig.json ./
9
+ COPY src ./src
10
+
11
+ RUN npm run build
12
+
13
+ FROM node:22-alpine
14
+
15
+ WORKDIR /app
16
+
17
+ COPY package.json ./
18
+ RUN npm install --omit=dev
19
+
20
+ COPY --from=builder /app/dist ./dist
21
+
22
+ ENTRYPOINT ["node", "dist/index.js"]
package/README.md CHANGED
@@ -1,13 +1,19 @@
1
1
  # BugHerd MCP Server
2
2
 
3
- An [MCP (Model Context Protocol)](https://modelcontextprotocol.io/) server that integrates [BugHerd](https://bugherd.com) bug tracking with AI assistants like Claude.
3
+ An [MCP (Model Context Protocol)](https://modelcontextprotocol.io/) server that integrates [BugHerd](https://bugherd.com) bug tracking with AI assistants.
4
4
 
5
5
  ## Features
6
6
 
7
- - **List Projects** - View all BugHerd projects accessible to your account
8
- - **List Tasks** - Browse bugs and feedback with filtering by status, priority, and tags
9
- - **Get Task Details** - View complete task information including screenshots and element selectors
10
- - **List Comments** - Read conversation threads on tasks
7
+ **Complete BugHerd API v2 coverage** with 38 tools across all resource types:
8
+
9
+ - **Organization** - Get account details
10
+ - **Users** - List members, guests, user tasks and projects
11
+ - **Projects** - CRUD operations, manage members and guests
12
+ - **Tasks** - Full task management including feedback, archived, and taskboard views
13
+ - **Columns** - Custom Kanban board management
14
+ - **Comments** - Read and create comments
15
+ - **Attachments** - Manage file attachments
16
+ - **Webhooks** - Configure event notifications
11
17
 
12
18
  ## Installation
13
19
 
@@ -50,9 +56,9 @@ export BUGHERD_API_KEY=your-api-key-here
50
56
 
51
57
  ## Configuration
52
58
 
53
- ### Claude Code
59
+ ### CLI Configuration
54
60
 
55
- Add to your `~/.claude.json`:
61
+ Add to your MCP client config:
56
62
 
57
63
  ```json
58
64
  {
@@ -69,9 +75,9 @@ Add to your `~/.claude.json`:
69
75
  }
70
76
  ```
71
77
 
72
- ### Claude Desktop
78
+ ### Desktop Apps
73
79
 
74
- Add to your Claude Desktop config:
80
+ Add to your MCP desktop app config:
75
81
 
76
82
  ```json
77
83
  {
@@ -87,69 +93,114 @@ Add to your Claude Desktop config:
87
93
  }
88
94
  ```
89
95
 
90
- ## Available Tools
96
+ ## Available Tools (37)
91
97
 
92
- ### `bugherd_list_projects`
98
+ ### Organization
93
99
 
94
- List all BugHerd projects accessible to the authenticated user.
100
+ | Tool | Description |
101
+ | -------------------------- | -------------------------------- |
102
+ | `bugherd_get_organization` | Get organization/account details |
95
103
 
96
- **Parameters:** None
104
+ ### Users
97
105
 
98
- **Example:**
106
+ | Tool | Description |
107
+ | --------------------------- | --------------------------------- |
108
+ | `bugherd_list_users` | List all users (members + guests) |
109
+ | `bugherd_list_members` | List only team members |
110
+ | `bugherd_list_guests` | List only guests/clients |
111
+ | `bugherd_get_user_tasks` | Get tasks assigned to a user |
112
+ | `bugherd_get_user_projects` | Get projects for a user |
99
113
 
100
- ```
101
- List my BugHerd projects
102
- ```
114
+ ### Projects
103
115
 
104
- ### `bugherd_list_tasks`
116
+ | Tool | Description |
117
+ | ------------------------------ | ------------------------------- |
118
+ | `bugherd_list_projects` | List all projects |
119
+ | `bugherd_list_active_projects` | List only active projects |
120
+ | `bugherd_get_project` | Get project details |
121
+ | `bugherd_create_project` | Create a new project |
122
+ | `bugherd_update_project` | Update project settings |
123
+ | `bugherd_delete_project` | ⚠️ Delete a project permanently |
124
+ | `bugherd_add_member` | Add a member to a project |
125
+ | `bugherd_add_guest` | Add a guest to a project |
105
126
 
106
- List tasks for a specific project with optional filters.
127
+ ### Tasks
107
128
 
108
- **Parameters:**
109
- | Name | Type | Required | Description |
110
- |------|------|----------|-------------|
111
- | `project_id` | number | Yes | The BugHerd project ID |
112
- | `status` | string | No | Filter: backlog, todo, doing, done, closed |
113
- | `priority` | string | No | Filter: critical, important, normal, minor |
114
- | `tag` | string | No | Filter by tag name |
115
- | `page` | number | No | Page number for pagination |
129
+ | Tool | Description |
130
+ | ------------------------------ | ----------------------------------------------- |
131
+ | `bugherd_list_tasks` | List tasks with filters (status, priority, tag) |
132
+ | `bugherd_list_feedback_tasks` | List unprocessed feedback tasks |
133
+ | `bugherd_list_archived_tasks` | List archived tasks |
134
+ | `bugherd_list_taskboard_tasks` | List taskboard tasks |
135
+ | `bugherd_get_task` | Get task details with metadata |
136
+ | `bugherd_get_task_global` | Get task by global ID |
137
+ | `bugherd_get_task_by_local_id` | Get task by local ID (#123) |
138
+ | `bugherd_create_task` | Create a new task |
139
+ | `bugherd_move_tasks` | Move tasks between projects |
140
+ | `bugherd_update_task` | Update task status/priority/description |
116
141
 
117
- **Example:**
142
+ ### Columns
118
143
 
119
- ```
120
- Show me all critical bugs in project 12345
121
- ```
144
+ | Tool | Description |
145
+ | ----------------------- | -------------------------------------- |
146
+ | `bugherd_list_columns` | List project columns (Kanban statuses) |
147
+ | `bugherd_get_column` | Get column details |
148
+ | `bugherd_create_column` | Create a new column |
149
+ | `bugherd_update_column` | Update column name/position |
150
+
151
+ ### Comments
152
+
153
+ | Tool | Description |
154
+ | ------------------------ | ----------------------- |
155
+ | `bugherd_list_comments` | List comments on a task |
156
+ | `bugherd_create_comment` | Add a comment to a task |
157
+
158
+ ### Attachments
122
159
 
123
- ### `bugherd_get_task`
160
+ | Tool | Description |
161
+ | --------------------------- | -------------------------- |
162
+ | `bugherd_list_attachments` | List task attachments |
163
+ | `bugherd_get_attachment` | Get attachment details |
164
+ | `bugherd_create_attachment` | Create attachment from URL |
165
+ | `bugherd_delete_attachment` | ⚠️ Delete an attachment |
124
166
 
125
- Get detailed information about a specific task.
167
+ ### Webhooks
126
168
 
127
- **Parameters:**
128
- | Name | Type | Required | Description |
129
- |------|------|----------|-------------|
130
- | `project_id` | number | Yes | The BugHerd project ID |
131
- | `task_id` | number | Yes | The task ID |
169
+ | Tool | Description |
170
+ | ------------------------ | ------------------------ |
171
+ | `bugherd_list_webhooks` | List configured webhooks |
172
+ | `bugherd_create_webhook` | Create a webhook |
173
+ | `bugherd_delete_webhook` | ⚠️ Delete a webhook |
132
174
 
133
- **Example:**
175
+ ## Usage Examples
176
+
177
+ ### List projects and tasks
134
178
 
135
179
  ```
136
- Get details for task 678 in project 12345
180
+ List my BugHerd projects
181
+ Show me all critical bugs in project 12345
137
182
  ```
138
183
 
139
- ### `bugherd_list_comments`
184
+ ### Create and manage tasks
140
185
 
141
- List all comments on a specific task.
142
-
143
- **Parameters:**
144
- | Name | Type | Required | Description |
145
- |------|------|----------|-------------|
146
- | `project_id` | number | Yes | The BugHerd project ID |
147
- | `task_id` | number | Yes | The task ID |
186
+ ```
187
+ Create a task in project 12345: "Fix the login button alignment"
188
+ Move task 678 from project 12345 to project 67890
189
+ Update task 678 status to "done"
190
+ ```
148
191
 
149
- **Example:**
192
+ ### Work with comments
150
193
 
151
194
  ```
152
195
  Show comments on task 678 in project 12345
196
+ Add a comment to task 678: "Fixed in latest deploy"
197
+ ```
198
+
199
+ ### Manage webhooks
200
+
201
+ ```
202
+ List all webhooks
203
+ Create a webhook for task_create events pointing to https://example.com/webhook
153
204
  ```
154
205
 
155
206
  ## Development
package/TRANSPORT.md ADDED
@@ -0,0 +1,97 @@
1
+ # Transport Configuration
2
+
3
+ ## Current: Dual Mode (HTTP + stdio)
4
+
5
+ The BugHerd MCP server supports two transport modes:
6
+
7
+ ### HTTP Mode (Shared - Recommended)
8
+
9
+ One server instance serves multiple Claude Code sessions.
10
+
11
+ ```bash
12
+ # Start HTTP server on port 3003
13
+ PORT=3003 BUGHERD_API_KEY=your_key node dist/index.js
14
+
15
+ # Or use the startup script
16
+ ~/.claude/scripts/start-shared-mcps.sh
17
+ ```
18
+
19
+ **Endpoints:**
20
+
21
+ - `http://localhost:3003/sse` - SSE connection for MCP
22
+ - `http://localhost:3003/health` - Health check (returns session count)
23
+
24
+ **Claude Code config (~/.claude.json):**
25
+
26
+ ```json
27
+ {
28
+ "mcpServers": {
29
+ "bugherd": {
30
+ "type": "sse",
31
+ "url": "http://localhost:3003/sse"
32
+ }
33
+ }
34
+ }
35
+ ```
36
+
37
+ ### stdio Mode (Default)
38
+
39
+ One process per Claude Code session (original behavior).
40
+
41
+ ```bash
42
+ # Run in stdio mode (no PORT env var)
43
+ BUGHERD_API_KEY=your_key node dist/index.js
44
+ ```
45
+
46
+ **Claude Code config (~/.claude.json):**
47
+
48
+ ```json
49
+ {
50
+ "mcpServers": {
51
+ "bugherd": {
52
+ "type": "stdio",
53
+ "command": "node",
54
+ "args": ["/path/to/dist/index.js"],
55
+ "env": {
56
+ "BUGHERD_API_KEY": "your_key"
57
+ }
58
+ }
59
+ }
60
+ }
61
+ ```
62
+
63
+ ## Why HTTP Mode?
64
+
65
+ - **Reduces processes:** 11 Claude sessions = 1 BugHerd process (vs 11)
66
+ - **Same security:** localhost only, no external access
67
+ - **Same functionality:** All tools work identically (stateless API calls)
68
+ - **Better resource usage:** Less CPU/RAM overhead
69
+
70
+ ## Rollback to stdio-only
71
+
72
+ If you need to revert to stdio-only mode:
73
+
74
+ 1. Remove the `PORT` environment variable
75
+ 2. Update Claude Code config to use stdio:
76
+ ```json
77
+ "bugherd": {
78
+ "type": "stdio",
79
+ "command": "node",
80
+ "args": ["/Users/berckan/Dev/Personal/bugherd-mcp/dist/index.js"],
81
+ "env": {
82
+ "BUGHERD_API_KEY": "hvb7fsgautxrgaai3ccwrg"
83
+ }
84
+ }
85
+ ```
86
+
87
+ ## Session Isolation
88
+
89
+ HTTP mode maintains **complete session isolation**:
90
+
91
+ - Each SSE connection gets a unique session ID
92
+ - Sessions don't share state
93
+ - All tools are stateless (API calls to BugHerd)
94
+
95
+ ---
96
+
97
+ **Last Updated:** 2026-01-28
@@ -5,34 +5,246 @@
5
5
  * Authentication: Basic HTTP Auth with API key as user, 'x' as password
6
6
  * Rate Limit: 60 requests/minute average, bursts of 10
7
7
  */
8
- import type { BugherdProjectsResponse, BugherdProjectResponse, BugherdTasksResponse, BugherdTaskResponse, BugherdCommentsResponse } from "../types/bugherd.js";
8
+ import type { BugherdOrganizationResponse, BugherdUsersResponse, BugherdMembersResponse, BugherdGuestsResponse, BugherdProjectsResponse, BugherdProjectResponse, BugherdTasksResponse, BugherdTaskResponse, BugherdCommentsResponse, BugherdAttachmentsResponse, BugherdAttachmentResponse, BugherdWebhooksResponse, BugherdWebhookResponse, BugherdColumnResponse, BugherdColumnsResponse, BugherdWebhookEvent } from "../types/bugherd.js";
9
+ /**
10
+ * Get organization/account details
11
+ */
12
+ export declare function getOrganization(): Promise<BugherdOrganizationResponse>;
13
+ /**
14
+ * List all users (members + guests)
15
+ */
16
+ export declare function listUsers(): Promise<BugherdUsersResponse>;
17
+ /**
18
+ * List only team members
19
+ */
20
+ export declare function listMembers(): Promise<BugherdMembersResponse>;
21
+ /**
22
+ * List only guests/clients
23
+ */
24
+ export declare function listGuests(): Promise<BugherdGuestsResponse>;
25
+ export interface ListUserTasksOptions {
26
+ status?: string;
27
+ priority?: "critical" | "important" | "normal" | "minor";
28
+ page?: number;
29
+ }
30
+ /**
31
+ * Get tasks assigned to a specific user
32
+ */
33
+ export declare function getUserTasks(userId: number, options?: ListUserTasksOptions): Promise<BugherdTasksResponse>;
34
+ /**
35
+ * Get projects for a specific user
36
+ */
37
+ export declare function getUserProjects(userId: number): Promise<BugherdProjectsResponse>;
9
38
  /**
10
39
  * List all projects accessible to the authenticated user
11
40
  */
12
41
  export declare function listProjects(): Promise<BugherdProjectsResponse>;
42
+ /**
43
+ * List only active projects
44
+ */
45
+ export declare function listActiveProjects(): Promise<BugherdProjectsResponse>;
13
46
  /**
14
47
  * Get a single project by ID
15
48
  */
16
49
  export declare function getProject(projectId: number): Promise<BugherdProjectResponse>;
50
+ export interface CreateProjectData {
51
+ name: string;
52
+ devurl: string;
53
+ is_active?: boolean;
54
+ is_public?: boolean;
55
+ }
56
+ /**
57
+ * Create a new project
58
+ */
59
+ export declare function createProject(data: CreateProjectData): Promise<BugherdProjectResponse>;
60
+ export interface UpdateProjectData {
61
+ name?: string;
62
+ devurl?: string;
63
+ is_active?: boolean;
64
+ is_public?: boolean;
65
+ }
66
+ /**
67
+ * Update a project
68
+ */
69
+ export declare function updateProject(projectId: number, data: UpdateProjectData): Promise<BugherdProjectResponse>;
70
+ /**
71
+ * Delete a project (DESTRUCTIVE)
72
+ */
73
+ export declare function deleteProject(projectId: number): Promise<void>;
74
+ /**
75
+ * Add a member to a project
76
+ */
77
+ export declare function addMember(projectId: number, userId: number): Promise<void>;
78
+ /**
79
+ * Add a guest/client to a project
80
+ */
81
+ export declare function addGuest(projectId: number, userIdOrEmail: number | string): Promise<void>;
17
82
  export interface ListTasksOptions {
18
- status?: "backlog" | "todo" | "doing" | "done" | "closed";
83
+ status?: string;
19
84
  priority?: "critical" | "important" | "normal" | "minor";
20
85
  tag?: string;
21
86
  assignedTo?: number;
22
87
  page?: number;
23
88
  }
89
+ /**
90
+ * Get column mappings for a project (cached)
91
+ */
92
+ export declare function getColumnMappings(projectId: number): Promise<{
93
+ idToName: Map<number, string>;
94
+ nameToId: Map<string, number>;
95
+ }>;
96
+ /**
97
+ * Get status name from status_id using project columns
98
+ */
99
+ export declare function getStatusNameForProject(projectId: number, statusId: number): Promise<string>;
24
100
  /**
25
101
  * List tasks for a project with optional filters
102
+ * Filters are applied client-side because BugHerd API doesn't reliably filter by custom column names
26
103
  */
27
104
  export declare function listTasks(projectId: number, options?: ListTasksOptions): Promise<BugherdTasksResponse>;
28
105
  /**
29
106
  * Get a single task by ID
30
107
  */
31
108
  export declare function getTask(projectId: number, taskId: number): Promise<BugherdTaskResponse>;
109
+ /**
110
+ * Get a task globally (without project_id)
111
+ */
112
+ export declare function getTaskGlobal(taskId: number): Promise<BugherdTaskResponse>;
113
+ /**
114
+ * Get a task by local ID (#123)
115
+ */
116
+ export declare function getTaskByLocalId(projectId: number, localTaskId: number): Promise<BugherdTaskResponse>;
117
+ /**
118
+ * List feedback tasks (unprocessed/new)
119
+ */
120
+ export declare function listFeedbackTasks(projectId: number, page?: number): Promise<BugherdTasksResponse>;
121
+ /**
122
+ * List archived tasks
123
+ */
124
+ export declare function listArchivedTasks(projectId: number, page?: number): Promise<BugherdTasksResponse>;
125
+ /**
126
+ * List taskboard tasks (not feedback, not archived)
127
+ */
128
+ export declare function listTaskboardTasks(projectId: number, page?: number): Promise<BugherdTasksResponse>;
129
+ export interface CreateTaskData {
130
+ description: string;
131
+ priority?: "critical" | "important" | "normal" | "minor";
132
+ status?: string;
133
+ tag_names?: string[];
134
+ assigned_to_id?: number;
135
+ requester_email?: string;
136
+ external_id?: string;
137
+ }
138
+ /**
139
+ * Create a new task
140
+ */
141
+ export declare function createTask(projectId: number, data: CreateTaskData): Promise<BugherdTaskResponse>;
142
+ /**
143
+ * Move tasks between projects
144
+ */
145
+ export declare function moveTasks(projectId: number, taskIds: number[], destinationProjectId: number): Promise<void>;
146
+ export interface UpdateTaskOptions {
147
+ status?: string;
148
+ priority?: "critical" | "important" | "normal" | "minor";
149
+ description?: string;
150
+ assigned_to_id?: number | null;
151
+ }
152
+ /**
153
+ * Update a task's status, priority, description, or assignee
154
+ * BugHerd API expects status/priority as strings, not IDs
155
+ */
156
+ export declare function updateTask(projectId: number, taskId: number, options: UpdateTaskOptions): Promise<BugherdTaskResponse & {
157
+ _debug?: {
158
+ request: unknown;
159
+ rawResponse?: string;
160
+ };
161
+ }>;
162
+ /**
163
+ * List all columns (statuses) for a project
164
+ * Projects with custom Kanban boards have custom column IDs
165
+ */
166
+ export declare function listColumns(projectId: number): Promise<BugherdColumnsResponse>;
167
+ /**
168
+ * Get a single column by ID
169
+ */
170
+ export declare function getColumn(projectId: number, columnId: number): Promise<BugherdColumnResponse>;
171
+ export interface CreateColumnData {
172
+ name: string;
173
+ position?: number;
174
+ }
175
+ /**
176
+ * Create a new column
177
+ */
178
+ export declare function createColumn(projectId: number, data: CreateColumnData): Promise<BugherdColumnResponse>;
179
+ export interface UpdateColumnData {
180
+ name?: string;
181
+ position?: number;
182
+ }
183
+ /**
184
+ * Update a column
185
+ */
186
+ export declare function updateColumn(projectId: number, columnId: number, data: UpdateColumnData): Promise<BugherdColumnResponse>;
32
187
  /**
33
188
  * List comments for a task
34
189
  */
35
190
  export declare function listComments(projectId: number, taskId: number): Promise<BugherdCommentsResponse>;
191
+ export interface CreateCommentData {
192
+ text: string;
193
+ user_id?: number;
194
+ email?: string;
195
+ }
196
+ /**
197
+ * Create a comment on a task
198
+ */
199
+ export declare function createComment(projectId: number, taskId: number, data: CreateCommentData): Promise<{
200
+ comment: {
201
+ id: number;
202
+ text: string;
203
+ created_at: string;
204
+ };
205
+ }>;
206
+ /**
207
+ * List attachments for a task
208
+ */
209
+ export declare function listAttachments(projectId: number, taskId: number): Promise<BugherdAttachmentsResponse>;
210
+ /**
211
+ * Get a single attachment
212
+ */
213
+ export declare function getAttachment(projectId: number, taskId: number, attachmentId: number): Promise<BugherdAttachmentResponse>;
214
+ export interface CreateAttachmentData {
215
+ file_name: string;
216
+ url: string;
217
+ }
218
+ /**
219
+ * Create an attachment from a URL
220
+ */
221
+ export declare function createAttachment(projectId: number, taskId: number, data: CreateAttachmentData): Promise<BugherdAttachmentResponse>;
222
+ /**
223
+ * Upload a file as attachment (multipart/form-data)
224
+ * Note: Requires special handling for file upload
225
+ */
226
+ export declare function uploadAttachment(projectId: number, taskId: number, fileName: string, fileContent: ArrayBuffer | Uint8Array, mimeType?: string): Promise<BugherdAttachmentResponse>;
227
+ /**
228
+ * Delete an attachment (DESTRUCTIVE)
229
+ */
230
+ export declare function deleteAttachment(projectId: number, taskId: number, attachmentId: number): Promise<void>;
231
+ /**
232
+ * List all webhooks
233
+ */
234
+ export declare function listWebhooks(): Promise<BugherdWebhooksResponse>;
235
+ export interface CreateWebhookData {
236
+ event: BugherdWebhookEvent;
237
+ target_url: string;
238
+ project_id?: number;
239
+ }
240
+ /**
241
+ * Create a webhook
242
+ */
243
+ export declare function createWebhook(data: CreateWebhookData): Promise<BugherdWebhookResponse>;
244
+ /**
245
+ * Delete a webhook (DESTRUCTIVE)
246
+ */
247
+ export declare function deleteWebhook(webhookId: number): Promise<void>;
36
248
  /**
37
249
  * Verify API connection by fetching organization info
38
250
  */
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,uBAAuB,EACvB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAkE7B;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAErE;AAED;;GAEG;AACH,wBAAsB,UAAU,CAC9B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,sBAAsB,CAAC,CAEjC;AAMD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC1D,QAAQ,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;IACzD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,oBAAoB,CAAC,CAc/B;AAED;;GAEG;AACH,wBAAsB,OAAO,CAC3B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,CAI9B;AAMD;;GAEG;AACH,wBAAsB,YAAY,CAChC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,uBAAuB,CAAC,CAIlC;AAMD;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAOzD"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}