@opencx/mcp 1.8.3 → 1.8.5
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/api-client.d.ts.map +1 -1
- package/dist/api-client.js +4 -0
- package/dist/api-client.js.map +1 -1
- package/dist/index.js +62 -8
- package/dist/index.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +8 -0
- package/dist/server.js.map +1 -1
- package/dist/tools/actions.js +5 -5
- package/dist/tools/actions.js.map +1 -1
- package/dist/tools/audit-logs.d.ts +4 -0
- package/dist/tools/audit-logs.d.ts.map +1 -0
- package/dist/tools/audit-logs.js +61 -0
- package/dist/tools/audit-logs.js.map +1 -0
- package/dist/tools/autopilot.js +4 -4
- package/dist/tools/autopilot.js.map +1 -1
- package/dist/tools/blocklist.d.ts.map +1 -1
- package/dist/tools/blocklist.js +29 -9
- package/dist/tools/blocklist.js.map +1 -1
- package/dist/tools/contacts.js +3 -3
- package/dist/tools/contacts.js.map +1 -1
- package/dist/tools/coworker.d.ts +4 -0
- package/dist/tools/coworker.d.ts.map +1 -0
- package/dist/tools/coworker.js +53 -0
- package/dist/tools/coworker.js.map +1 -0
- package/dist/tools/crawl.js +6 -6
- package/dist/tools/crawl.js.map +1 -1
- package/dist/tools/csat.js +3 -3
- package/dist/tools/csat.js.map +1 -1
- package/dist/tools/email.js +4 -4
- package/dist/tools/email.js.map +1 -1
- package/dist/tools/handoff-analytics.d.ts.map +1 -1
- package/dist/tools/handoff-analytics.js +12 -4
- package/dist/tools/handoff-analytics.js.map +1 -1
- package/dist/tools/help-center.js +6 -6
- package/dist/tools/help-center.js.map +1 -1
- package/dist/tools/impact-report.d.ts +4 -0
- package/dist/tools/impact-report.d.ts.map +1 -0
- package/dist/tools/impact-report.js +17 -0
- package/dist/tools/impact-report.js.map +1 -0
- package/dist/tools/insights.js +5 -5
- package/dist/tools/insights.js.map +1 -1
- package/dist/tools/media.js +1 -1
- package/dist/tools/media.js.map +1 -1
- package/dist/tools/office-hours.js +3 -3
- package/dist/tools/office-hours.js.map +1 -1
- package/dist/tools/org.js +2 -2
- package/dist/tools/org.js.map +1 -1
- package/dist/tools/phone.d.ts +6 -0
- package/dist/tools/phone.d.ts.map +1 -1
- package/dist/tools/phone.js +97 -16
- package/dist/tools/phone.js.map +1 -1
- package/dist/tools/redaction.js +6 -6
- package/dist/tools/redaction.js.map +1 -1
- package/dist/tools/search.js +1 -1
- package/dist/tools/search.js.map +1 -1
- package/dist/tools/sequences.d.ts.map +1 -1
- package/dist/tools/sequences.js +12 -7
- package/dist/tools/sequences.js.map +1 -1
- package/dist/tools/sessions.d.ts.map +1 -1
- package/dist/tools/sessions.js +281 -22
- package/dist/tools/sessions.js.map +1 -1
- package/dist/tools/sla-analytics.js +4 -4
- package/dist/tools/sla-analytics.js.map +1 -1
- package/dist/tools/sla.js +4 -4
- package/dist/tools/sla.js.map +1 -1
- package/dist/tools/tags.js +4 -4
- package/dist/tools/tags.js.map +1 -1
- package/dist/tools/teams.d.ts.map +1 -1
- package/dist/tools/teams.js +17 -10
- package/dist/tools/teams.js.map +1 -1
- package/dist/tools/training.d.ts.map +1 -1
- package/dist/tools/training.js +182 -52
- package/dist/tools/training.js.map +1 -1
- package/dist/tools/users.d.ts +4 -0
- package/dist/tools/users.d.ts.map +1 -0
- package/dist/tools/users.js +20 -0
- package/dist/tools/users.js.map +1 -0
- package/dist/tools/whatsapp.js +1 -1
- package/dist/tools/whatsapp.js.map +1 -1
- package/dist/tools/widget.js +3 -3
- package/dist/tools/widget.js.map +1 -1
- package/dist/tools/workflows.d.ts.map +1 -1
- package/dist/tools/workflows.js +40 -16
- package/dist/tools/workflows.js.map +1 -1
- package/dist/workflow-editor-state.d.ts +29 -0
- package/dist/workflow-editor-state.d.ts.map +1 -0
- package/dist/workflow-editor-state.js +74 -0
- package/dist/workflow-editor-state.js.map +1 -0
- package/package.json +2 -1
package/dist/tools/workflows.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { safePath } from '../api-client.js';
|
|
3
|
+
import { blocksToEditorState } from '../workflow-editor-state.js';
|
|
3
4
|
const TRIGGER_TYPES = [
|
|
4
5
|
'manual-trigger',
|
|
5
6
|
'ai-trigger',
|
|
@@ -78,7 +79,7 @@ export function registerWorkflowTools(server, client) {
|
|
|
78
79
|
'what input fields each action expects, and what output fields you can reference with {{step_id.output.field}}.',
|
|
79
80
|
}, async () => {
|
|
80
81
|
const data = await client.get('/workflows/definitions');
|
|
81
|
-
return { content: [{ type: 'text', text: JSON.stringify(data
|
|
82
|
+
return { content: [{ type: 'text', text: JSON.stringify(data) }] };
|
|
82
83
|
});
|
|
83
84
|
server.registerTool('validate_workflow', {
|
|
84
85
|
description: 'Validate workflow blocks without creating a workflow. Returns issues and action types used. ' +
|
|
@@ -92,7 +93,7 @@ export function registerWorkflowTools(server, client) {
|
|
|
92
93
|
trigger_type,
|
|
93
94
|
workflow_blocks,
|
|
94
95
|
});
|
|
95
|
-
return { content: [{ type: 'text', text: JSON.stringify(data
|
|
96
|
+
return { content: [{ type: 'text', text: JSON.stringify(data) }] };
|
|
96
97
|
});
|
|
97
98
|
server.registerTool('create_workflow', {
|
|
98
99
|
description: 'Create a new workflow. Created as an inactive draft — use activate_workflow to make it live. ' +
|
|
@@ -114,6 +115,7 @@ export function registerWorkflowTools(server, client) {
|
|
|
114
115
|
.describe('Workflow steps and blocks. Use {{step_id.output.field}} to reference earlier step outputs.'),
|
|
115
116
|
},
|
|
116
117
|
}, async ({ name, description, trigger_type, trigger_configuration, trigger_constraints, workflow_blocks, }) => {
|
|
118
|
+
const editorState = blocksToEditorState(trigger_type, workflow_blocks, trigger_configuration, trigger_constraints);
|
|
117
119
|
const data = await client.post('/workflows/', {
|
|
118
120
|
name,
|
|
119
121
|
description,
|
|
@@ -121,25 +123,26 @@ export function registerWorkflowTools(server, client) {
|
|
|
121
123
|
trigger_configuration: trigger_configuration ?? null,
|
|
122
124
|
trigger_constraints: trigger_constraints ?? null,
|
|
123
125
|
workflow_blocks,
|
|
126
|
+
workflow_editor_state: editorState,
|
|
124
127
|
});
|
|
125
|
-
return { content: [{ type: 'text', text: JSON.stringify(data
|
|
128
|
+
return { content: [{ type: 'text', text: JSON.stringify(data) }] };
|
|
126
129
|
});
|
|
127
130
|
server.registerTool('list_workflows', {
|
|
128
131
|
description: 'List all workflows in your organization. Returns the latest version of each with name, trigger type, and active status.',
|
|
129
132
|
}, async () => {
|
|
130
133
|
const data = await client.get('/workflows/');
|
|
131
|
-
return { content: [{ type: 'text', text: JSON.stringify(data
|
|
134
|
+
return { content: [{ type: 'text', text: JSON.stringify(data) }] };
|
|
132
135
|
});
|
|
133
136
|
server.registerTool('get_workflow', {
|
|
134
137
|
description: 'Get a specific workflow by UUID, including its blocks, trigger configuration, active status, and version number.',
|
|
135
138
|
inputSchema: { workflow_id: z.string().describe('The workflow UUID') },
|
|
136
139
|
}, async ({ workflow_id }) => {
|
|
137
140
|
const data = await client.get(`/workflows/${safePath(workflow_id)}`);
|
|
138
|
-
return { content: [{ type: 'text', text: JSON.stringify(data
|
|
141
|
+
return { content: [{ type: 'text', text: JSON.stringify(data) }] };
|
|
139
142
|
});
|
|
140
143
|
server.registerTool('update_workflow', {
|
|
141
|
-
description: 'Update
|
|
142
|
-
'
|
|
144
|
+
description: 'Update the draft of a workflow. Only provided fields change; omitted fields carry over. ' +
|
|
145
|
+
'Changes are saved to the draft — use activate_workflow to publish.',
|
|
143
146
|
inputSchema: {
|
|
144
147
|
workflow_id: z.string().describe('The workflow UUID to update'),
|
|
145
148
|
name: z.string().optional().describe('New workflow name'),
|
|
@@ -159,29 +162,39 @@ export function registerWorkflowTools(server, client) {
|
|
|
159
162
|
.describe('New workflow blocks (replaces existing)'),
|
|
160
163
|
},
|
|
161
164
|
}, async ({ workflow_id, ...body }) => {
|
|
162
|
-
|
|
163
|
-
|
|
165
|
+
// Fetch existing to merge blocks/trigger for editor state generation
|
|
166
|
+
const existing = await client.get(`/workflows/${safePath(workflow_id)}`);
|
|
167
|
+
const blocks = body.workflow_blocks ?? existing.workflow_blocks ?? [];
|
|
168
|
+
const triggerType = body.trigger_type ?? existing.trigger_type;
|
|
169
|
+
const triggerConfig = body.trigger_configuration ?? existing.trigger_configuration;
|
|
170
|
+
const triggerConstraints = body.trigger_constraints ?? existing.trigger_constraints;
|
|
171
|
+
const editorState = blocksToEditorState(triggerType, blocks, triggerConfig, triggerConstraints);
|
|
172
|
+
const data = await client.patch(`/workflows/${safePath(workflow_id)}/draft`, {
|
|
173
|
+
...body,
|
|
174
|
+
workflow_editor_state: editorState,
|
|
175
|
+
});
|
|
176
|
+
return { content: [{ type: 'text', text: JSON.stringify(data) }] };
|
|
164
177
|
});
|
|
165
178
|
server.registerTool('delete_workflow', {
|
|
166
179
|
description: 'Delete a workflow and all its versions. Active versions are deactivated first. Cannot be undone.',
|
|
167
180
|
inputSchema: { workflow_id: z.string().describe('The workflow UUID to delete') },
|
|
168
181
|
}, async ({ workflow_id }) => {
|
|
169
182
|
const data = await client.delete(`/workflows/${safePath(workflow_id)}`);
|
|
170
|
-
return { content: [{ type: 'text', text: JSON.stringify(data
|
|
183
|
+
return { content: [{ type: 'text', text: JSON.stringify(data) }] };
|
|
171
184
|
});
|
|
172
185
|
server.registerTool('activate_workflow', {
|
|
173
186
|
description: 'Activate the latest version of a workflow. Any previously active version is deactivated.',
|
|
174
187
|
inputSchema: { workflow_id: z.string().describe('The workflow UUID to activate') },
|
|
175
188
|
}, async ({ workflow_id }) => {
|
|
176
189
|
const data = await client.post(`/workflows/${safePath(workflow_id)}/activate`);
|
|
177
|
-
return { content: [{ type: 'text', text: JSON.stringify(data
|
|
190
|
+
return { content: [{ type: 'text', text: JSON.stringify(data) }] };
|
|
178
191
|
});
|
|
179
192
|
server.registerTool('deactivate_workflow', {
|
|
180
193
|
description: 'Deactivate the currently active version of a workflow.',
|
|
181
194
|
inputSchema: { workflow_id: z.string().describe('The workflow UUID to deactivate') },
|
|
182
195
|
}, async ({ workflow_id }) => {
|
|
183
196
|
const data = await client.post(`/workflows/${safePath(workflow_id)}/deactivate`);
|
|
184
|
-
return { content: [{ type: 'text', text: JSON.stringify(data
|
|
197
|
+
return { content: [{ type: 'text', text: JSON.stringify(data) }] };
|
|
185
198
|
});
|
|
186
199
|
server.registerTool('trigger_workflow', {
|
|
187
200
|
description: 'Manually trigger a workflow. Must be "manual-trigger" type and active. Runs in background.',
|
|
@@ -194,8 +207,19 @@ export function registerWorkflowTools(server, client) {
|
|
|
194
207
|
description: 'List execution runs for a workflow with optional filters.',
|
|
195
208
|
inputSchema: {
|
|
196
209
|
workflow_id: z.string().describe('The workflow UUID'),
|
|
197
|
-
page: z.
|
|
198
|
-
|
|
210
|
+
page: z.coerce
|
|
211
|
+
.number()
|
|
212
|
+
.int()
|
|
213
|
+
.min(1)
|
|
214
|
+
.optional()
|
|
215
|
+
.describe('Page number (default: 1). String or number.'),
|
|
216
|
+
limit: z.coerce
|
|
217
|
+
.number()
|
|
218
|
+
.int()
|
|
219
|
+
.min(1)
|
|
220
|
+
.max(50)
|
|
221
|
+
.optional()
|
|
222
|
+
.describe('Results per page (default: 20, max: 50). String or number.'),
|
|
199
223
|
status: z
|
|
200
224
|
.string()
|
|
201
225
|
.optional()
|
|
@@ -212,7 +236,7 @@ export function registerWorkflowTools(server, client) {
|
|
|
212
236
|
status,
|
|
213
237
|
trigger_cause,
|
|
214
238
|
});
|
|
215
|
-
return { content: [{ type: 'text', text: JSON.stringify(data
|
|
239
|
+
return { content: [{ type: 'text', text: JSON.stringify(data) }] };
|
|
216
240
|
});
|
|
217
241
|
server.registerTool('get_workflow_run', {
|
|
218
242
|
description: 'Get details of a specific workflow run.',
|
|
@@ -222,7 +246,7 @@ export function registerWorkflowTools(server, client) {
|
|
|
222
246
|
},
|
|
223
247
|
}, async ({ workflow_id, run_id }) => {
|
|
224
248
|
const data = await client.get(`/workflows/${safePath(workflow_id)}/runs/${safePath(run_id)}`);
|
|
225
|
-
return { content: [{ type: 'text', text: JSON.stringify(data
|
|
249
|
+
return { content: [{ type: 'text', text: JSON.stringify(data) }] };
|
|
226
250
|
});
|
|
227
251
|
}
|
|
228
252
|
//# sourceMappingURL=workflows.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflows.js","sourceRoot":"","sources":["../../src/tools/workflows.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAgB,QAAQ,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"workflows.js","sourceRoot":"","sources":["../../src/tools/workflows.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
interface Position {
|
|
2
|
+
x: number;
|
|
3
|
+
y: number;
|
|
4
|
+
}
|
|
5
|
+
interface FlowNode {
|
|
6
|
+
id: string;
|
|
7
|
+
type: string;
|
|
8
|
+
position: Position;
|
|
9
|
+
data: Record<string, unknown>;
|
|
10
|
+
}
|
|
11
|
+
interface FlowEdge {
|
|
12
|
+
id: string;
|
|
13
|
+
source: string;
|
|
14
|
+
target: string;
|
|
15
|
+
sourceHandle: string;
|
|
16
|
+
targetHandle: string;
|
|
17
|
+
}
|
|
18
|
+
export interface EditorState {
|
|
19
|
+
nodes: FlowNode[];
|
|
20
|
+
edges: FlowEdge[];
|
|
21
|
+
viewport: {
|
|
22
|
+
x: number;
|
|
23
|
+
y: number;
|
|
24
|
+
zoom: number;
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export declare function blocksToEditorState(triggerType: string, blocks: unknown[], triggerConfiguration?: unknown, triggerConstraints?: unknown): EditorState;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=workflow-editor-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-editor-state.d.ts","sourceRoot":"","sources":["../src/workflow-editor-state.ts"],"names":[],"mappings":"AAKA,UAAU,QAAQ;IAChB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAYD,UAAU,QAAQ;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED,UAAU,QAAQ;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,QAAQ,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAClD;AA6ED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,OAAO,EAAE,EACjB,oBAAoB,CAAC,EAAE,OAAO,EAC9B,kBAAkB,CAAC,EAAE,OAAO,GAC3B,WAAW,CA4Bb"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
const NODE_X_START = 200;
|
|
2
|
+
const NODE_Y_CENTER = 200;
|
|
3
|
+
const NODE_X_OFFSET = 300;
|
|
4
|
+
const BRANCH_Y_OFFSET = 200;
|
|
5
|
+
function createEdge(source, target, sourceHandle, targetHandle) {
|
|
6
|
+
return { id: `${source}-${target}`, source, target, sourceHandle, targetHandle };
|
|
7
|
+
}
|
|
8
|
+
function processBlocks(blocks, startX, yCenter, parentId, parentHandle, nodes, edges) {
|
|
9
|
+
let currentX = startX;
|
|
10
|
+
let prevId = parentId;
|
|
11
|
+
let prevHandle = parentHandle;
|
|
12
|
+
for (const block of blocks) {
|
|
13
|
+
const position = { x: currentX, y: yCenter };
|
|
14
|
+
if (block.$kind === 'Block') {
|
|
15
|
+
nodes.push({
|
|
16
|
+
id: block.id,
|
|
17
|
+
type: 'ifBlock',
|
|
18
|
+
position,
|
|
19
|
+
data: { $kind: 'Block', id: block.id, type: block.type, inputs: block.inputs ?? {} },
|
|
20
|
+
});
|
|
21
|
+
edges.push(createEdge(prevId, block.id, prevHandle, 'ifBlockInput'));
|
|
22
|
+
const branchEntries = Object.entries(block.branches ?? {});
|
|
23
|
+
let maxX = currentX + NODE_X_OFFSET;
|
|
24
|
+
const branchCount = branchEntries.length;
|
|
25
|
+
const totalHeight = (branchCount - 1) * BRANCH_Y_OFFSET;
|
|
26
|
+
const startY = yCenter - totalHeight / 2;
|
|
27
|
+
branchEntries.forEach(([branchName, branchBlocks], i) => {
|
|
28
|
+
const branchY = startY + i * BRANCH_Y_OFFSET;
|
|
29
|
+
const handle = block.type === 'if-else'
|
|
30
|
+
? (branchName === 'then' ? 'ifBlockThen' : 'ifBlockElse')
|
|
31
|
+
: `branch_${branchName}`;
|
|
32
|
+
if (branchBlocks.length > 0) {
|
|
33
|
+
maxX = Math.max(maxX, processBlocks(branchBlocks, currentX + NODE_X_OFFSET, branchY, block.id, handle, nodes, edges));
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
currentX = maxX;
|
|
37
|
+
prevId = block.id;
|
|
38
|
+
prevHandle = 'actionOutput';
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
nodes.push({
|
|
42
|
+
id: block.id,
|
|
43
|
+
type: 'action',
|
|
44
|
+
position,
|
|
45
|
+
data: { $kind: 'Action', id: block.id, type: block.type, name: block.name ?? block.type, input: block.input ?? {} },
|
|
46
|
+
});
|
|
47
|
+
edges.push(createEdge(prevId, block.id, prevHandle, 'actionInput'));
|
|
48
|
+
currentX += NODE_X_OFFSET;
|
|
49
|
+
prevId = block.id;
|
|
50
|
+
prevHandle = 'actionOutput';
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return currentX;
|
|
54
|
+
}
|
|
55
|
+
export function blocksToEditorState(triggerType, blocks, triggerConfiguration, triggerConstraints) {
|
|
56
|
+
const nodes = [];
|
|
57
|
+
const edges = [];
|
|
58
|
+
const triggerData = {
|
|
59
|
+
$kind: 'Trigger',
|
|
60
|
+
type: triggerType,
|
|
61
|
+
id: 'trigger',
|
|
62
|
+
payload: {},
|
|
63
|
+
};
|
|
64
|
+
if (triggerConfiguration != null)
|
|
65
|
+
triggerData.configuration = triggerConfiguration;
|
|
66
|
+
if (triggerConstraints != null)
|
|
67
|
+
triggerData.constraints = triggerConstraints;
|
|
68
|
+
nodes.push({ id: 'trigger', type: 'trigger', position: { x: NODE_X_START, y: NODE_Y_CENTER }, data: triggerData });
|
|
69
|
+
if (blocks.length > 0) {
|
|
70
|
+
processBlocks(blocks, NODE_X_START + NODE_X_OFFSET, NODE_Y_CENTER, 'trigger', 'triggerOutput', nodes, edges);
|
|
71
|
+
}
|
|
72
|
+
return { nodes, edges, viewport: { x: 0, y: 0, zoom: 1 } };
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=workflow-editor-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-editor-state.js","sourceRoot":"","sources":["../src/workflow-editor-state.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opencx/mcp",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.5",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "MCP server for OpenCX — manage contacts, sessions, training, and more from Claude Desktop, Cursor, or any MCP client.",
|
|
6
6
|
"type": "module",
|
|
@@ -36,6 +36,7 @@
|
|
|
36
36
|
},
|
|
37
37
|
"scripts": {
|
|
38
38
|
"build": "tsc",
|
|
39
|
+
"bundle": "pnpm build && pnpx esbuild dist/index.js --bundle --format=cjs --platform=node --target=node18 --outfile=dist/bundle.cjs",
|
|
39
40
|
"dev": "tsc --watch",
|
|
40
41
|
"start": "node dist/index.js",
|
|
41
42
|
"test": "vitest run"
|