@telora/mcp-products 0.22.2 → 0.22.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/handlers/focusHandlers.js +1 -9
- package/dist/handlers/focusHandlers.js.map +1 -1
- package/dist/handlers/index.d.ts +0 -5
- package/dist/handlers/index.js +0 -5
- package/dist/handlers/index.js.map +1 -1
- package/dist/index.js +2 -92
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/handlers/componentHandlers.d.ts +0 -3
- package/dist/handlers/componentHandlers.js +0 -128
- package/dist/handlers/componentHandlers.js.map +0 -1
- package/dist/handlers/ideaHandlers.d.ts +0 -3
- package/dist/handlers/ideaHandlers.js +0 -245
- package/dist/handlers/ideaHandlers.js.map +0 -1
- package/dist/handlers/okrHandlers.d.ts +0 -3
- package/dist/handlers/okrHandlers.js +0 -194
- package/dist/handlers/okrHandlers.js.map +0 -1
- package/dist/handlers/pmHandlers.d.ts +0 -3
- package/dist/handlers/pmHandlers.js +0 -441
- package/dist/handlers/pmHandlers.js.map +0 -1
- package/dist/handlers/savePointHandlers.d.ts +0 -3
- package/dist/handlers/savePointHandlers.js +0 -333
- package/dist/handlers/savePointHandlers.js.map +0 -1
|
@@ -1,441 +0,0 @@
|
|
|
1
|
-
// ---------------------------------------------------------------------------
|
|
2
|
-
// PM agent MCP tool handlers (consolidated action-enum pattern):
|
|
3
|
-
// telora_pm_session - PM session lifecycle
|
|
4
|
-
// telora_pm_contact - Contact/stakeholder management
|
|
5
|
-
// telora_pm_plan - Action plan management
|
|
6
|
-
// telora_pm_email - Email operations
|
|
7
|
-
// telora_pm_context - Context storage and retrieval
|
|
8
|
-
// ---------------------------------------------------------------------------
|
|
9
|
-
import { z } from "zod";
|
|
10
|
-
import { callProductApi, successResult, validationError, wrapHandler, } from "../shared.js";
|
|
11
|
-
// ---------------------------------------------------------------------------
|
|
12
|
-
// Tool registration
|
|
13
|
-
// ---------------------------------------------------------------------------
|
|
14
|
-
export function registerPmTools(server, getCreds) {
|
|
15
|
-
// -------------------------------------------------------------------------
|
|
16
|
-
// telora_pm_session
|
|
17
|
-
// -------------------------------------------------------------------------
|
|
18
|
-
server.tool("telora_pm_session", "PM session lifecycle: create, list, get, update sessions. " +
|
|
19
|
-
"Sessions track the PM agent's active work cycle, status, and assessment state.", {
|
|
20
|
-
action: z.enum(["create", "list", "get", "update"]).describe("Action to perform"),
|
|
21
|
-
productId: z.string().uuid().optional().describe("Product UUID (required for create, list)"),
|
|
22
|
-
pmSessionId: z.string().uuid().optional().describe("PM session UUID (required for get, update)"),
|
|
23
|
-
status: z.enum(["active", "paused", "stopped"]).optional().describe("Session status"),
|
|
24
|
-
config: z.record(z.string(), z.unknown()).optional().describe("Session configuration JSON"),
|
|
25
|
-
lastAssessment: z.record(z.string(), z.unknown()).optional().describe("Last assessment result JSON"),
|
|
26
|
-
lastCycleAt: z.string().optional().describe("Timestamp of last cycle (ISO 8601)"),
|
|
27
|
-
}, wrapHandler(async (params) => {
|
|
28
|
-
switch (params.action) {
|
|
29
|
-
case "create": {
|
|
30
|
-
if (!params.productId)
|
|
31
|
-
return validationError("productId required for create");
|
|
32
|
-
const fields = {};
|
|
33
|
-
if (params.status !== undefined)
|
|
34
|
-
fields.status = params.status;
|
|
35
|
-
if (params.config !== undefined)
|
|
36
|
-
fields.config = params.config;
|
|
37
|
-
const result = await callProductApi(getCreds(), {
|
|
38
|
-
action: "pm_session_create",
|
|
39
|
-
productId: params.productId,
|
|
40
|
-
fields,
|
|
41
|
-
});
|
|
42
|
-
return successResult(result);
|
|
43
|
-
}
|
|
44
|
-
case "list": {
|
|
45
|
-
if (!params.productId)
|
|
46
|
-
return validationError("productId required for list");
|
|
47
|
-
const result = await callProductApi(getCreds(), {
|
|
48
|
-
action: "pm_session_list",
|
|
49
|
-
productId: params.productId,
|
|
50
|
-
});
|
|
51
|
-
return successResult(result);
|
|
52
|
-
}
|
|
53
|
-
case "get": {
|
|
54
|
-
if (!params.pmSessionId)
|
|
55
|
-
return validationError("pmSessionId required for get");
|
|
56
|
-
const result = await callProductApi(getCreds(), {
|
|
57
|
-
action: "pm_session_get",
|
|
58
|
-
pmSessionId: params.pmSessionId,
|
|
59
|
-
});
|
|
60
|
-
return successResult(result);
|
|
61
|
-
}
|
|
62
|
-
case "update": {
|
|
63
|
-
if (!params.pmSessionId)
|
|
64
|
-
return validationError("pmSessionId required for update");
|
|
65
|
-
const fields = {};
|
|
66
|
-
if (params.status !== undefined)
|
|
67
|
-
fields.status = params.status;
|
|
68
|
-
if (params.config !== undefined)
|
|
69
|
-
fields.config = params.config;
|
|
70
|
-
if (params.lastAssessment !== undefined)
|
|
71
|
-
fields.lastAssessment = params.lastAssessment;
|
|
72
|
-
if (params.lastCycleAt !== undefined)
|
|
73
|
-
fields.lastCycleAt = params.lastCycleAt;
|
|
74
|
-
const result = await callProductApi(getCreds(), {
|
|
75
|
-
action: "pm_session_update",
|
|
76
|
-
pmSessionId: params.pmSessionId,
|
|
77
|
-
fields,
|
|
78
|
-
});
|
|
79
|
-
return successResult(result);
|
|
80
|
-
}
|
|
81
|
-
default:
|
|
82
|
-
return validationError(`Unknown action: ${params.action}`);
|
|
83
|
-
}
|
|
84
|
-
}));
|
|
85
|
-
// -------------------------------------------------------------------------
|
|
86
|
-
// telora_pm_contact
|
|
87
|
-
// -------------------------------------------------------------------------
|
|
88
|
-
server.tool("telora_pm_contact", "PM contact management: list, create, update, delete stakeholder contacts. " +
|
|
89
|
-
"Tracks name, email, role, timezone, and preferred communication channel.", {
|
|
90
|
-
action: z.enum(["list", "create", "update", "delete"]).describe("Action to perform"),
|
|
91
|
-
productId: z.string().uuid().optional().describe("Product UUID (required for list, create)"),
|
|
92
|
-
pmMemberId: z.string().uuid().optional().describe("PM member UUID (required for update, delete)"),
|
|
93
|
-
name: z.string().max(200).optional().describe("Contact name"),
|
|
94
|
-
email: z.string().email().optional().describe("Contact email address"),
|
|
95
|
-
roleDescription: z.string().max(1000).optional().describe("Role or responsibility description"),
|
|
96
|
-
timezone: z.string().max(100).optional().describe("IANA timezone, e.g. 'America/New_York'"),
|
|
97
|
-
preferredChannel: z.string().max(100).optional().describe("Preferred communication channel, e.g. 'email', 'slack'"),
|
|
98
|
-
}, wrapHandler(async (params) => {
|
|
99
|
-
switch (params.action) {
|
|
100
|
-
case "list": {
|
|
101
|
-
if (!params.productId)
|
|
102
|
-
return validationError("productId required for list");
|
|
103
|
-
const result = await callProductApi(getCreds(), {
|
|
104
|
-
action: "pm_member_list",
|
|
105
|
-
productId: params.productId,
|
|
106
|
-
});
|
|
107
|
-
return successResult(result);
|
|
108
|
-
}
|
|
109
|
-
case "create": {
|
|
110
|
-
if (!params.productId)
|
|
111
|
-
return validationError("productId required for create");
|
|
112
|
-
if (!params.name)
|
|
113
|
-
return validationError("name required for create");
|
|
114
|
-
if (!params.email)
|
|
115
|
-
return validationError("email required for create");
|
|
116
|
-
const fields = { name: params.name, email: params.email };
|
|
117
|
-
if (params.roleDescription !== undefined)
|
|
118
|
-
fields.roleDescription = params.roleDescription;
|
|
119
|
-
if (params.timezone !== undefined)
|
|
120
|
-
fields.timezone = params.timezone;
|
|
121
|
-
if (params.preferredChannel !== undefined)
|
|
122
|
-
fields.preferredChannel = params.preferredChannel;
|
|
123
|
-
const result = await callProductApi(getCreds(), {
|
|
124
|
-
action: "pm_member_create",
|
|
125
|
-
productId: params.productId,
|
|
126
|
-
fields,
|
|
127
|
-
});
|
|
128
|
-
return successResult(result);
|
|
129
|
-
}
|
|
130
|
-
case "update": {
|
|
131
|
-
if (!params.pmMemberId)
|
|
132
|
-
return validationError("pmMemberId required for update");
|
|
133
|
-
const fields = {};
|
|
134
|
-
if (params.name !== undefined)
|
|
135
|
-
fields.name = params.name;
|
|
136
|
-
if (params.email !== undefined)
|
|
137
|
-
fields.email = params.email;
|
|
138
|
-
if (params.roleDescription !== undefined)
|
|
139
|
-
fields.roleDescription = params.roleDescription;
|
|
140
|
-
if (params.timezone !== undefined)
|
|
141
|
-
fields.timezone = params.timezone;
|
|
142
|
-
if (params.preferredChannel !== undefined)
|
|
143
|
-
fields.preferredChannel = params.preferredChannel;
|
|
144
|
-
const result = await callProductApi(getCreds(), {
|
|
145
|
-
action: "pm_member_update",
|
|
146
|
-
pmMemberId: params.pmMemberId,
|
|
147
|
-
fields,
|
|
148
|
-
});
|
|
149
|
-
return successResult(result);
|
|
150
|
-
}
|
|
151
|
-
case "delete": {
|
|
152
|
-
if (!params.pmMemberId)
|
|
153
|
-
return validationError("pmMemberId required for delete");
|
|
154
|
-
await callProductApi(getCreds(), {
|
|
155
|
-
action: "pm_member_delete",
|
|
156
|
-
pmMemberId: params.pmMemberId,
|
|
157
|
-
});
|
|
158
|
-
return successResult({ deleted: true });
|
|
159
|
-
}
|
|
160
|
-
default:
|
|
161
|
-
return validationError(`Unknown action: ${params.action}`);
|
|
162
|
-
}
|
|
163
|
-
}));
|
|
164
|
-
// -------------------------------------------------------------------------
|
|
165
|
-
// telora_pm_plan
|
|
166
|
-
// -------------------------------------------------------------------------
|
|
167
|
-
server.tool("telora_pm_plan", "PM action plan management: list, create, update action items. " +
|
|
168
|
-
"Tracks commitments, scheduled sends, and follow-ups with due dates and status.", {
|
|
169
|
-
action: z.enum(["list", "create", "update"]).describe("Action to perform"),
|
|
170
|
-
productId: z.string().uuid().optional().describe("Product UUID (required for list, create)"),
|
|
171
|
-
pmActionId: z.string().uuid().optional().describe("PM action UUID (required for update)"),
|
|
172
|
-
pmSessionId: z.string().uuid().optional().describe("PM session UUID to associate with"),
|
|
173
|
-
itemType: z.enum(["commitment", "scheduled_send", "follow_up"]).optional().describe("Type of action item"),
|
|
174
|
-
who: z.string().max(200).optional().describe("Person responsible or target"),
|
|
175
|
-
what: z.string().max(2000).optional().describe("Description of the action"),
|
|
176
|
-
dueAt: z.string().optional().describe("Due date/time (ISO 8601)"),
|
|
177
|
-
status: z.enum(["pending", "done", "overdue", "cancelled"]).optional().describe("Action item status"),
|
|
178
|
-
lastContactAt: z.string().optional().describe("Last contact timestamp (ISO 8601)"),
|
|
179
|
-
notes: z.string().max(5000).optional().describe("Additional notes"),
|
|
180
|
-
}, wrapHandler(async (params) => {
|
|
181
|
-
switch (params.action) {
|
|
182
|
-
case "list": {
|
|
183
|
-
if (!params.productId)
|
|
184
|
-
return validationError("productId required for list");
|
|
185
|
-
const fields = {};
|
|
186
|
-
if (params.status !== undefined)
|
|
187
|
-
fields.status = params.status;
|
|
188
|
-
if (params.itemType !== undefined)
|
|
189
|
-
fields.itemType = params.itemType;
|
|
190
|
-
if (params.who !== undefined)
|
|
191
|
-
fields.who = params.who;
|
|
192
|
-
const body = {
|
|
193
|
-
action: "pm_action_list",
|
|
194
|
-
productId: params.productId,
|
|
195
|
-
fields,
|
|
196
|
-
};
|
|
197
|
-
if (params.pmSessionId !== undefined)
|
|
198
|
-
body.pmSessionId = params.pmSessionId;
|
|
199
|
-
const result = await callProductApi(getCreds(), body);
|
|
200
|
-
return successResult(result);
|
|
201
|
-
}
|
|
202
|
-
case "create": {
|
|
203
|
-
if (!params.productId)
|
|
204
|
-
return validationError("productId required for create");
|
|
205
|
-
if (!params.itemType)
|
|
206
|
-
return validationError("itemType required for create");
|
|
207
|
-
if (!params.who)
|
|
208
|
-
return validationError("who required for create");
|
|
209
|
-
if (!params.what)
|
|
210
|
-
return validationError("what required for create");
|
|
211
|
-
const fields = {
|
|
212
|
-
itemType: params.itemType,
|
|
213
|
-
who: params.who,
|
|
214
|
-
what: params.what,
|
|
215
|
-
};
|
|
216
|
-
if (params.dueAt !== undefined)
|
|
217
|
-
fields.dueAt = params.dueAt;
|
|
218
|
-
if (params.status !== undefined)
|
|
219
|
-
fields.status = params.status;
|
|
220
|
-
if (params.lastContactAt !== undefined)
|
|
221
|
-
fields.lastContactAt = params.lastContactAt;
|
|
222
|
-
if (params.notes !== undefined)
|
|
223
|
-
fields.notes = params.notes;
|
|
224
|
-
const result = await callProductApi(getCreds(), {
|
|
225
|
-
action: "pm_action_create",
|
|
226
|
-
productId: params.productId,
|
|
227
|
-
fields,
|
|
228
|
-
});
|
|
229
|
-
return successResult(result);
|
|
230
|
-
}
|
|
231
|
-
case "update": {
|
|
232
|
-
if (!params.pmActionId)
|
|
233
|
-
return validationError("pmActionId required for update");
|
|
234
|
-
const fields = {};
|
|
235
|
-
if (params.itemType !== undefined)
|
|
236
|
-
fields.itemType = params.itemType;
|
|
237
|
-
if (params.who !== undefined)
|
|
238
|
-
fields.who = params.who;
|
|
239
|
-
if (params.what !== undefined)
|
|
240
|
-
fields.what = params.what;
|
|
241
|
-
if (params.dueAt !== undefined)
|
|
242
|
-
fields.dueAt = params.dueAt;
|
|
243
|
-
if (params.status !== undefined)
|
|
244
|
-
fields.status = params.status;
|
|
245
|
-
if (params.lastContactAt !== undefined)
|
|
246
|
-
fields.lastContactAt = params.lastContactAt;
|
|
247
|
-
if (params.notes !== undefined)
|
|
248
|
-
fields.notes = params.notes;
|
|
249
|
-
const result = await callProductApi(getCreds(), {
|
|
250
|
-
action: "pm_action_update",
|
|
251
|
-
pmActionId: params.pmActionId,
|
|
252
|
-
fields,
|
|
253
|
-
});
|
|
254
|
-
return successResult(result);
|
|
255
|
-
}
|
|
256
|
-
default:
|
|
257
|
-
return validationError(`Unknown action: ${params.action}`);
|
|
258
|
-
}
|
|
259
|
-
}));
|
|
260
|
-
// -------------------------------------------------------------------------
|
|
261
|
-
// telora_pm_email
|
|
262
|
-
// -------------------------------------------------------------------------
|
|
263
|
-
server.tool("telora_pm_email", "PM email operations: send outbound emails, read inbox, view threads, mark processed. " +
|
|
264
|
-
"Uses Resend for delivery. Supports threading via threadId and inReplyTo.", {
|
|
265
|
-
action: z.enum(["send", "inbox", "thread", "mark_processed"]).describe("Action to perform"),
|
|
266
|
-
productId: z.string().uuid().optional().describe("Product UUID (required for send, inbox, thread)"),
|
|
267
|
-
pmSessionId: z.string().uuid().optional().describe("PM session UUID to associate with (for send)"),
|
|
268
|
-
pmEmailId: z.string().uuid().optional().describe("Inbound email UUID (required for mark_processed)"),
|
|
269
|
-
toEmail: z.string().email().optional().describe("Recipient email address (required for send)"),
|
|
270
|
-
toName: z.string().max(200).optional().describe("Recipient display name (for send)"),
|
|
271
|
-
cc: z.array(z.string().email()).optional().describe("CC email addresses (for send)"),
|
|
272
|
-
subject: z.string().max(500).optional().describe("Email subject (required for send)"),
|
|
273
|
-
body: z.string().optional().describe("Email body text (required for send)"),
|
|
274
|
-
threadId: z.string().uuid().optional().describe("Thread UUID for threading (for send, inbox, thread)"),
|
|
275
|
-
inReplyTo: z.string().max(500).optional().describe("Message-ID being replied to (for send)"),
|
|
276
|
-
processed: z.boolean().optional().describe("Filter by processed status (for inbox)"),
|
|
277
|
-
}, wrapHandler(async (params) => {
|
|
278
|
-
switch (params.action) {
|
|
279
|
-
case "send": {
|
|
280
|
-
if (!params.productId)
|
|
281
|
-
return validationError("productId required for send");
|
|
282
|
-
if (!params.toEmail)
|
|
283
|
-
return validationError("toEmail required for send");
|
|
284
|
-
if (!params.subject)
|
|
285
|
-
return validationError("subject required for send");
|
|
286
|
-
if (!params.body)
|
|
287
|
-
return validationError("body required for send");
|
|
288
|
-
const fields = {
|
|
289
|
-
toEmail: params.toEmail,
|
|
290
|
-
subject: params.subject,
|
|
291
|
-
body: params.body,
|
|
292
|
-
};
|
|
293
|
-
if (params.toName !== undefined)
|
|
294
|
-
fields.toName = params.toName;
|
|
295
|
-
if (params.cc !== undefined)
|
|
296
|
-
fields.cc = params.cc;
|
|
297
|
-
if (params.threadId !== undefined)
|
|
298
|
-
fields.threadId = params.threadId;
|
|
299
|
-
if (params.inReplyTo !== undefined)
|
|
300
|
-
fields.inReplyTo = params.inReplyTo;
|
|
301
|
-
if (params.pmSessionId !== undefined)
|
|
302
|
-
fields.pmSessionId = params.pmSessionId;
|
|
303
|
-
const result = await callProductApi(getCreds(), {
|
|
304
|
-
action: "pm_email_outbound_create",
|
|
305
|
-
productId: params.productId,
|
|
306
|
-
fields,
|
|
307
|
-
});
|
|
308
|
-
return successResult(result);
|
|
309
|
-
}
|
|
310
|
-
case "inbox": {
|
|
311
|
-
if (!params.productId)
|
|
312
|
-
return validationError("productId required for inbox");
|
|
313
|
-
const inboxFields = {};
|
|
314
|
-
if (params.processed !== undefined)
|
|
315
|
-
inboxFields.processed = params.processed;
|
|
316
|
-
if (params.threadId !== undefined)
|
|
317
|
-
inboxFields.threadId = params.threadId;
|
|
318
|
-
const result = await callProductApi(getCreds(), {
|
|
319
|
-
action: "pm_email_inbound_list",
|
|
320
|
-
productId: params.productId,
|
|
321
|
-
fields: inboxFields,
|
|
322
|
-
});
|
|
323
|
-
return successResult(result);
|
|
324
|
-
}
|
|
325
|
-
case "thread": {
|
|
326
|
-
if (!params.productId)
|
|
327
|
-
return validationError("productId required for thread");
|
|
328
|
-
if (!params.threadId)
|
|
329
|
-
return validationError("threadId required for thread");
|
|
330
|
-
const result = await callProductApi(getCreds(), {
|
|
331
|
-
action: "pm_email_thread",
|
|
332
|
-
productId: params.productId,
|
|
333
|
-
fields: { threadId: params.threadId },
|
|
334
|
-
});
|
|
335
|
-
return successResult(result);
|
|
336
|
-
}
|
|
337
|
-
case "mark_processed": {
|
|
338
|
-
if (!params.pmEmailId)
|
|
339
|
-
return validationError("pmEmailId required for mark_processed");
|
|
340
|
-
const result = await callProductApi(getCreds(), {
|
|
341
|
-
action: "pm_email_inbound_update",
|
|
342
|
-
pmEmailId: params.pmEmailId,
|
|
343
|
-
fields: { processed: true },
|
|
344
|
-
});
|
|
345
|
-
return successResult(result);
|
|
346
|
-
}
|
|
347
|
-
default:
|
|
348
|
-
return validationError(`Unknown action: ${params.action}`);
|
|
349
|
-
}
|
|
350
|
-
}));
|
|
351
|
-
// -------------------------------------------------------------------------
|
|
352
|
-
// telora_pm_context
|
|
353
|
-
// -------------------------------------------------------------------------
|
|
354
|
-
server.tool("telora_pm_context", "PM context storage: store, query, update, delete context items. " +
|
|
355
|
-
"Captures meeting notes, decisions, stakeholder preferences, and other PM knowledge.", {
|
|
356
|
-
action: z.enum(["store", "query", "update", "delete"]).describe("Action to perform"),
|
|
357
|
-
productId: z.string().uuid().optional().describe("Product UUID (required for store, query)"),
|
|
358
|
-
pmSessionId: z.string().uuid().optional().describe("PM session UUID to associate with (for store)"),
|
|
359
|
-
pmContextId: z.string().uuid().optional().describe("PM context UUID (required for update, delete)"),
|
|
360
|
-
contextType: z.string().max(100).optional().describe("Context type, e.g. 'meeting_notes', 'decision', 'stakeholder_preference'"),
|
|
361
|
-
title: z.string().max(500).optional().describe("Context item title"),
|
|
362
|
-
content: z.string().optional().describe("Context item content (required for store)"),
|
|
363
|
-
rawInput: z.string().optional().describe("Raw input text before processing (for store)"),
|
|
364
|
-
tags: z.array(z.string().max(100)).optional().describe("Tags for categorization and filtering"),
|
|
365
|
-
}, wrapHandler(async (params) => {
|
|
366
|
-
switch (params.action) {
|
|
367
|
-
case "store": {
|
|
368
|
-
if (!params.productId)
|
|
369
|
-
return validationError("productId required for store");
|
|
370
|
-
if (!params.title)
|
|
371
|
-
return validationError("title required for store");
|
|
372
|
-
if (!params.content)
|
|
373
|
-
return validationError("content required for store");
|
|
374
|
-
const fields = {
|
|
375
|
-
title: params.title,
|
|
376
|
-
content: params.content,
|
|
377
|
-
};
|
|
378
|
-
if (params.pmSessionId !== undefined)
|
|
379
|
-
fields.pmSessionId = params.pmSessionId;
|
|
380
|
-
if (params.contextType !== undefined)
|
|
381
|
-
fields.contextType = params.contextType;
|
|
382
|
-
if (params.rawInput !== undefined)
|
|
383
|
-
fields.rawInput = params.rawInput;
|
|
384
|
-
if (params.tags !== undefined)
|
|
385
|
-
fields.tags = params.tags;
|
|
386
|
-
const result = await callProductApi(getCreds(), {
|
|
387
|
-
action: "pm_context_create",
|
|
388
|
-
productId: params.productId,
|
|
389
|
-
fields,
|
|
390
|
-
});
|
|
391
|
-
return successResult(result);
|
|
392
|
-
}
|
|
393
|
-
case "query": {
|
|
394
|
-
if (!params.productId)
|
|
395
|
-
return validationError("productId required for query");
|
|
396
|
-
const queryFields = {};
|
|
397
|
-
if (params.contextType !== undefined)
|
|
398
|
-
queryFields.contextType = params.contextType;
|
|
399
|
-
if (params.tags !== undefined)
|
|
400
|
-
queryFields.tags = params.tags;
|
|
401
|
-
const result = await callProductApi(getCreds(), {
|
|
402
|
-
action: "pm_context_list",
|
|
403
|
-
productId: params.productId,
|
|
404
|
-
fields: queryFields,
|
|
405
|
-
});
|
|
406
|
-
return successResult(result);
|
|
407
|
-
}
|
|
408
|
-
case "update": {
|
|
409
|
-
if (!params.pmContextId)
|
|
410
|
-
return validationError("pmContextId required for update");
|
|
411
|
-
const fields = {};
|
|
412
|
-
if (params.title !== undefined)
|
|
413
|
-
fields.title = params.title;
|
|
414
|
-
if (params.content !== undefined)
|
|
415
|
-
fields.content = params.content;
|
|
416
|
-
if (params.contextType !== undefined)
|
|
417
|
-
fields.contextType = params.contextType;
|
|
418
|
-
if (params.tags !== undefined)
|
|
419
|
-
fields.tags = params.tags;
|
|
420
|
-
const result = await callProductApi(getCreds(), {
|
|
421
|
-
action: "pm_context_update",
|
|
422
|
-
pmContextId: params.pmContextId,
|
|
423
|
-
fields,
|
|
424
|
-
});
|
|
425
|
-
return successResult(result);
|
|
426
|
-
}
|
|
427
|
-
case "delete": {
|
|
428
|
-
if (!params.pmContextId)
|
|
429
|
-
return validationError("pmContextId required for delete");
|
|
430
|
-
await callProductApi(getCreds(), {
|
|
431
|
-
action: "pm_context_delete",
|
|
432
|
-
pmContextId: params.pmContextId,
|
|
433
|
-
});
|
|
434
|
-
return successResult({ deleted: true });
|
|
435
|
-
}
|
|
436
|
-
default:
|
|
437
|
-
return validationError(`Unknown action: ${params.action}`);
|
|
438
|
-
}
|
|
439
|
-
}));
|
|
440
|
-
}
|
|
441
|
-
//# sourceMappingURL=pmHandlers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pmHandlers.js","sourceRoot":"","sources":["../../src/handlers/pmHandlers.ts"],"names":[],"mappings":"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"}
|