mcp-dataverse 0.2.5 → 0.3.1
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/doctor.d.ts +7 -0
- package/dist/doctor.d.ts.map +1 -0
- package/dist/doctor.js +103 -0
- package/dist/doctor.js.map +1 -0
- package/dist/http-server.d.ts +3 -0
- package/dist/http-server.d.ts.map +1 -0
- package/dist/http-server.js +61 -0
- package/dist/http-server.js.map +1 -0
- package/dist/resources/resource-provider.d.ts +11 -0
- package/dist/resources/resource-provider.d.ts.map +1 -0
- package/dist/resources/resource-provider.js +79 -0
- package/dist/resources/resource-provider.js.map +1 -0
- package/dist/server.js +132 -111
- package/dist/server.js.map +1 -1
- package/dist/tools/actions.tools.d.ts +36 -0
- package/dist/tools/actions.tools.d.ts.map +1 -1
- package/dist/tools/actions.tools.js +59 -24
- package/dist/tools/actions.tools.js.map +1 -1
- package/dist/tools/annotations.tools.d.ts +12 -0
- package/dist/tools/annotations.tools.d.ts.map +1 -1
- package/dist/tools/annotations.tools.js +26 -27
- package/dist/tools/annotations.tools.js.map +1 -1
- package/dist/tools/audit.tools.d.ts +6 -0
- package/dist/tools/audit.tools.d.ts.map +1 -1
- package/dist/tools/audit.tools.js +12 -9
- package/dist/tools/audit.tools.js.map +1 -1
- package/dist/tools/auth.tools.d.ts +6 -0
- package/dist/tools/auth.tools.d.ts.map +1 -1
- package/dist/tools/auth.tools.js +18 -14
- package/dist/tools/auth.tools.js.map +1 -1
- package/dist/tools/batch.tools.d.ts +8 -1
- package/dist/tools/batch.tools.d.ts.map +1 -1
- package/dist/tools/batch.tools.js +15 -10
- package/dist/tools/batch.tools.js.map +1 -1
- package/dist/tools/crud.tools.d.ts +36 -0
- package/dist/tools/crud.tools.d.ts.map +1 -1
- package/dist/tools/crud.tools.js +64 -58
- package/dist/tools/crud.tools.js.map +1 -1
- package/dist/tools/customization.tools.d.ts +18 -0
- package/dist/tools/customization.tools.d.ts.map +1 -1
- package/dist/tools/customization.tools.js +30 -32
- package/dist/tools/customization.tools.js.map +1 -1
- package/dist/tools/environment.tools.d.ts +12 -0
- package/dist/tools/environment.tools.d.ts.map +1 -1
- package/dist/tools/environment.tools.js +17 -8
- package/dist/tools/environment.tools.js.map +1 -1
- package/dist/tools/file.tools.d.ts +12 -0
- package/dist/tools/file.tools.d.ts.map +1 -1
- package/dist/tools/file.tools.js +31 -32
- package/dist/tools/file.tools.js.map +1 -1
- package/dist/tools/guardrails.d.ts +22 -0
- package/dist/tools/guardrails.d.ts.map +1 -0
- package/dist/tools/guardrails.js +55 -0
- package/dist/tools/guardrails.js.map +1 -0
- package/dist/tools/impersonate.tools.d.ts +8 -1
- package/dist/tools/impersonate.tools.d.ts.map +1 -1
- package/dist/tools/impersonate.tools.js +13 -13
- package/dist/tools/impersonate.tools.js.map +1 -1
- package/dist/tools/metadata.tools.d.ts +42 -0
- package/dist/tools/metadata.tools.d.ts.map +1 -1
- package/dist/tools/metadata.tools.js +99 -54
- package/dist/tools/metadata.tools.js.map +1 -1
- package/dist/tools/org.tools.d.ts +6 -0
- package/dist/tools/org.tools.d.ts.map +1 -1
- package/dist/tools/org.tools.js +11 -9
- package/dist/tools/org.tools.js.map +1 -1
- package/dist/tools/output.utils.d.ts +21 -0
- package/dist/tools/output.utils.d.ts.map +1 -0
- package/dist/tools/output.utils.js +31 -0
- package/dist/tools/output.utils.js.map +1 -0
- package/dist/tools/progress.d.ts +15 -0
- package/dist/tools/progress.d.ts.map +1 -0
- package/dist/tools/progress.js +29 -0
- package/dist/tools/progress.js.map +1 -0
- package/dist/tools/quality.tools.d.ts +6 -0
- package/dist/tools/quality.tools.d.ts.map +1 -1
- package/dist/tools/quality.tools.js +9 -4
- package/dist/tools/quality.tools.js.map +1 -1
- package/dist/tools/query.tools.d.ts +20 -1
- package/dist/tools/query.tools.d.ts.map +1 -1
- package/dist/tools/query.tools.js +48 -13
- package/dist/tools/query.tools.js.map +1 -1
- package/dist/tools/relations.tools.d.ts +12 -0
- package/dist/tools/relations.tools.d.ts.map +1 -1
- package/dist/tools/relations.tools.js +17 -22
- package/dist/tools/relations.tools.js.map +1 -1
- package/dist/tools/router.tools.d.ts +5 -0
- package/dist/tools/router.tools.d.ts.map +1 -0
- package/dist/tools/router.tools.js +247 -0
- package/dist/tools/router.tools.js.map +1 -0
- package/dist/tools/search.tools.d.ts +6 -0
- package/dist/tools/search.tools.d.ts.map +1 -1
- package/dist/tools/search.tools.js +12 -4
- package/dist/tools/search.tools.js.map +1 -1
- package/dist/tools/solution.tools.d.ts +18 -0
- package/dist/tools/solution.tools.d.ts.map +1 -1
- package/dist/tools/solution.tools.js +32 -17
- package/dist/tools/solution.tools.js.map +1 -1
- package/dist/tools/teams.tools.d.ts +6 -0
- package/dist/tools/teams.tools.d.ts.map +1 -1
- package/dist/tools/teams.tools.js +12 -9
- package/dist/tools/teams.tools.js.map +1 -1
- package/dist/tools/tool-registry.d.ts +35 -0
- package/dist/tools/tool-registry.d.ts.map +1 -0
- package/dist/tools/tool-registry.js +31 -0
- package/dist/tools/tool-registry.js.map +1 -0
- package/dist/tools/trace.tools.d.ts +12 -0
- package/dist/tools/trace.tools.d.ts.map +1 -1
- package/dist/tools/trace.tools.js +19 -8
- package/dist/tools/trace.tools.js.map +1 -1
- package/dist/tools/tracking.tools.d.ts +6 -0
- package/dist/tools/tracking.tools.d.ts.map +1 -1
- package/dist/tools/tracking.tools.js +14 -4
- package/dist/tools/tracking.tools.js.map +1 -1
- package/dist/tools/users.tools.d.ts +12 -0
- package/dist/tools/users.tools.d.ts.map +1 -1
- package/dist/tools/users.tools.js +23 -24
- package/dist/tools/users.tools.js.map +1 -1
- package/dist/tools/views.tools.d.ts +6 -0
- package/dist/tools/views.tools.d.ts.map +1 -1
- package/dist/tools/views.tools.js +16 -17
- package/dist/tools/views.tools.js.map +1 -1
- package/dist/tools/workflow.tools.d.ts +53 -0
- package/dist/tools/workflow.tools.d.ts.map +1 -0
- package/dist/tools/workflow.tools.js +198 -0
- package/dist/tools/workflow.tools.js.map +1 -0
- package/dist/transport.d.ts +6 -0
- package/dist/transport.d.ts.map +1 -0
- package/dist/transport.js +21 -0
- package/dist/transport.js.map +1 -0
- package/package.json +2 -1
- package/server.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../src/tools/tool-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAItD,MAAM,WAAW,eAAe;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,MAAM,MAAM,UAAU,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC;AAE5E,MAAM,MAAM,WAAW,GAAG,CACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,uBAAuB,EAC/B,QAAQ,CAAC,EAAE,gBAAgB,KACxB,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzB,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,OAAO,EAAE,WAAW,CAAC;CACtB;AASD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgC;IAEpD,QAAQ,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI;IAS/B,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIjD,iBAAiB,IAAI,cAAc,EAAE;IAIrC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,YAAY,CAMtE"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export class ToolRegistry {
|
|
2
|
+
map = new Map();
|
|
3
|
+
register(mod) {
|
|
4
|
+
for (const tool of mod.tools) {
|
|
5
|
+
if (this.map.has(tool.name)) {
|
|
6
|
+
throw new Error(`Duplicate tool name: ${tool.name}`);
|
|
7
|
+
}
|
|
8
|
+
this.map.set(tool.name, { definition: tool, handler: mod.handler });
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
getHandler(name) {
|
|
12
|
+
return this.map.get(name)?.handler;
|
|
13
|
+
}
|
|
14
|
+
getAllDefinitions() {
|
|
15
|
+
return Array.from(this.map.values()).map((e) => e.definition);
|
|
16
|
+
}
|
|
17
|
+
has(name) {
|
|
18
|
+
return this.map.has(name);
|
|
19
|
+
}
|
|
20
|
+
get size() {
|
|
21
|
+
return this.map.size;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
export function createToolRegistry(modules) {
|
|
25
|
+
const registry = new ToolRegistry();
|
|
26
|
+
for (const mod of modules) {
|
|
27
|
+
registry.register(mod);
|
|
28
|
+
}
|
|
29
|
+
return registry;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=tool-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../src/tools/tool-registry.ts"],"names":[],"mappings":"AAwCA,MAAM,OAAO,YAAY;IACN,GAAG,GAAG,IAAI,GAAG,EAAqB,CAAC;IAEpD,QAAQ,CAAC,GAAe;QACtB,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACvD,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAED,UAAU,CAAC,IAAY;QACrB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACrC,CAAC;IAED,iBAAiB;QACf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAChE,CAAC;IAED,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACvB,CAAC;CACF;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAqB;IACtD,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;IACpC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -29,6 +29,12 @@ export declare const traceTools: ({
|
|
|
29
29
|
};
|
|
30
30
|
required: never[];
|
|
31
31
|
};
|
|
32
|
+
annotations: {
|
|
33
|
+
readOnlyHint: boolean;
|
|
34
|
+
destructiveHint: boolean;
|
|
35
|
+
idempotentHint: boolean;
|
|
36
|
+
openWorldHint: boolean;
|
|
37
|
+
};
|
|
32
38
|
} | {
|
|
33
39
|
name: string;
|
|
34
40
|
description: string;
|
|
@@ -53,6 +59,12 @@ export declare const traceTools: ({
|
|
|
53
59
|
};
|
|
54
60
|
required: never[];
|
|
55
61
|
};
|
|
62
|
+
annotations: {
|
|
63
|
+
readOnlyHint: boolean;
|
|
64
|
+
destructiveHint: boolean;
|
|
65
|
+
idempotentHint: boolean;
|
|
66
|
+
openWorldHint: boolean;
|
|
67
|
+
};
|
|
56
68
|
})[];
|
|
57
69
|
export declare function handleTraceTool(name: string, args: unknown, client: DataverseAdvancedClient): Promise<{
|
|
58
70
|
content: Array<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace.tools.d.ts","sourceRoot":"","sources":["../../src/tools/trace.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"trace.tools.d.ts","sourceRoot":"","sources":["../../src/tools/trace.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AA6DzF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsEtB,CAAC;AAwBF,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAkI7D"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { esc } from "../dataverse/dataverse-client.utils.js";
|
|
3
|
+
import { formatData } from "./output.utils.js";
|
|
3
4
|
const OPERATION_TYPE_NAMES = {
|
|
4
5
|
0: "Execute",
|
|
5
6
|
1: "Create",
|
|
@@ -55,7 +56,7 @@ const WORKFLOW_TRACE_SELECT = [
|
|
|
55
56
|
export const traceTools = [
|
|
56
57
|
{
|
|
57
58
|
name: "dataverse_get_plugin_trace_logs",
|
|
58
|
-
description: "Retrieves recent plugin and custom workflow activity trace logs from Dataverse. Shows execution details including plugin type name, triggering message, entity, execution duration, trace messages written by the developer, and exception details if the plugin failed. Requires the Plugin Trace Log feature to be enabled in Dataverse settings (Settings > Administration > System Settings > Customization tab > 'Enable logging to plugin trace log'). Essential for debugging plugin failures in production.",
|
|
59
|
+
description: "Retrieves recent plugin and custom workflow activity trace logs from Dataverse. Shows execution details including plugin type name, triggering message, entity, execution duration, trace messages written by the developer, and exception details if the plugin failed. Requires the Plugin Trace Log feature to be enabled in Dataverse settings (Settings > Administration > System Settings > Customization tab > 'Enable logging to plugin trace log'). Essential for debugging plugin failures in production. WHEN TO USE: Debugging plugin failures or performance issues in production. BEST PRACTICES: Enable Plugin Trace Log in Dataverse settings first; filter by plugin name or entity to narrow results. WORKFLOW: inspect_audit.",
|
|
59
60
|
inputSchema: {
|
|
60
61
|
type: "object",
|
|
61
62
|
properties: {
|
|
@@ -82,10 +83,16 @@ export const traceTools = [
|
|
|
82
83
|
},
|
|
83
84
|
required: [],
|
|
84
85
|
},
|
|
86
|
+
annotations: {
|
|
87
|
+
readOnlyHint: true,
|
|
88
|
+
destructiveHint: false,
|
|
89
|
+
idempotentHint: true,
|
|
90
|
+
openWorldHint: true,
|
|
91
|
+
},
|
|
85
92
|
},
|
|
86
93
|
{
|
|
87
94
|
name: "dataverse_get_workflow_trace_logs",
|
|
88
|
-
description: "Retrieves background workflow (Power Automate classic / legacy workflow engine) execution records from Dataverse. These are the AsyncOperation records for workflow-type operations, useful for diagnosing failures in background workflows and real-time workflows running asynchronously. Note: For modern cloud flows (Power Automate), use the Power Automate portal instead.",
|
|
95
|
+
description: "Retrieves background workflow (Power Automate classic / legacy workflow engine) execution records from Dataverse. These are the AsyncOperation records for workflow-type operations, useful for diagnosing failures in background workflows and real-time workflows running asynchronously. Note: For modern cloud flows (Power Automate), use the Power Automate portal instead. WHEN TO USE: Diagnosing failures in classic/legacy background workflows. BEST PRACTICES: Use failedOnly=true to focus on errors; for modern cloud flows use Power Automate portal. WORKFLOW: inspect_audit.",
|
|
89
96
|
inputSchema: {
|
|
90
97
|
type: "object",
|
|
91
98
|
properties: {
|
|
@@ -104,6 +111,12 @@ export const traceTools = [
|
|
|
104
111
|
},
|
|
105
112
|
required: [],
|
|
106
113
|
},
|
|
114
|
+
annotations: {
|
|
115
|
+
readOnlyHint: true,
|
|
116
|
+
destructiveHint: false,
|
|
117
|
+
idempotentHint: true,
|
|
118
|
+
openWorldHint: true,
|
|
119
|
+
},
|
|
107
120
|
},
|
|
108
121
|
];
|
|
109
122
|
const GetPluginTraceInput = z.object({
|
|
@@ -172,9 +185,9 @@ export async function handleTraceTool(name, args, client) {
|
|
|
172
185
|
};
|
|
173
186
|
});
|
|
174
187
|
const result = { total: logs.length, logs };
|
|
175
|
-
return {
|
|
176
|
-
|
|
177
|
-
|
|
188
|
+
return formatData(`${logs.length} plugin trace logs found`, result, [
|
|
189
|
+
"Filter by plugin name or correlation ID for specific traces",
|
|
190
|
+
]);
|
|
178
191
|
}
|
|
179
192
|
case "dataverse_get_workflow_trace_logs": {
|
|
180
193
|
const params = GetWorkflowTraceInput.parse(args);
|
|
@@ -218,9 +231,7 @@ export async function handleTraceTool(name, args, client) {
|
|
|
218
231
|
};
|
|
219
232
|
});
|
|
220
233
|
const result = { total: workflows.length, workflows };
|
|
221
|
-
return {
|
|
222
|
-
content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
|
|
223
|
-
};
|
|
234
|
+
return formatData(`${workflows.length} workflow trace logs found`, result, ["Filter by status or entity type for specific workflow traces"]);
|
|
224
235
|
}
|
|
225
236
|
default:
|
|
226
237
|
throw new Error(`Unknown trace tool: ${name}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace.tools.js","sourceRoot":"","sources":["../../src/tools/trace.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,GAAG,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"trace.tools.js","sourceRoot":"","sources":["../../src/tools/trace.tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,12 @@ export declare const trackingTools: {
|
|
|
25
25
|
};
|
|
26
26
|
required: string[];
|
|
27
27
|
};
|
|
28
|
+
annotations: {
|
|
29
|
+
readOnlyHint: boolean;
|
|
30
|
+
destructiveHint: boolean;
|
|
31
|
+
idempotentHint: boolean;
|
|
32
|
+
openWorldHint: boolean;
|
|
33
|
+
};
|
|
28
34
|
}[];
|
|
29
35
|
export declare function handleTrackingTool(name: string, args: unknown, client: DataverseAdvancedClient): Promise<{
|
|
30
36
|
content: Array<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracking.tools.d.ts","sourceRoot":"","sources":["../../src/tools/tracking.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"tracking.tools.d.ts","sourceRoot":"","sources":["../../src/tools/tracking.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAIzF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCzB,CAAC;AAQF,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAiB7D"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { safeEntitySetName } from "./validation.utils.js";
|
|
3
|
+
import { formatData } from "./output.utils.js";
|
|
3
4
|
export const trackingTools = [
|
|
4
5
|
{
|
|
5
6
|
name: "dataverse_change_detection",
|
|
6
|
-
description: "Detects new, modified, and deleted records since a previous sync using Dataverse change tracking (delta queries). On first call, pass deltaToken=null to get an initial snapshot and receive a token. On subsequent calls, pass the returned token to retrieve only changes since last sync. Change tracking must be enabled on the table in Dataverse settings. Returns newAndModified records, deleted record IDs, and the nextDeltaToken for the next call.",
|
|
7
|
+
description: "Detects new, modified, and deleted records since a previous sync using Dataverse change tracking (delta queries). On first call, pass deltaToken=null to get an initial snapshot and receive a token. On subsequent calls, pass the returned token to retrieve only changes since last sync. Change tracking must be enabled on the table in Dataverse settings. Returns newAndModified records, deleted record IDs, and the nextDeltaToken for the next call. WHEN TO USE: Incremental sync — detecting records created, updated, or deleted since a previous snapshot. BEST PRACTICES: Store the deltaToken persistently; always specify $select to minimize payload. WORKFLOW: query_data.",
|
|
7
8
|
inputSchema: {
|
|
8
9
|
type: "object",
|
|
9
10
|
properties: {
|
|
@@ -23,6 +24,12 @@ export const trackingTools = [
|
|
|
23
24
|
},
|
|
24
25
|
required: ["entitySetName", "deltaToken"],
|
|
25
26
|
},
|
|
27
|
+
annotations: {
|
|
28
|
+
readOnlyHint: true,
|
|
29
|
+
destructiveHint: false,
|
|
30
|
+
idempotentHint: true,
|
|
31
|
+
openWorldHint: true,
|
|
32
|
+
},
|
|
26
33
|
},
|
|
27
34
|
];
|
|
28
35
|
const ChangeDetectionInput = z.object({
|
|
@@ -34,9 +41,12 @@ export async function handleTrackingTool(name, args, client) {
|
|
|
34
41
|
if (name === "dataverse_change_detection") {
|
|
35
42
|
const { entitySetName, deltaToken, select } = ChangeDetectionInput.parse(args);
|
|
36
43
|
const result = await client.getChangedRecords(entitySetName, deltaToken, select);
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
44
|
+
const changed = Array.isArray(result?.newAndModified)
|
|
45
|
+
? result.newAndModified
|
|
46
|
+
: [];
|
|
47
|
+
return formatData(`${changed.length} changed records detected`, result, [
|
|
48
|
+
"Store the returned deltaToken for subsequent incremental sync",
|
|
49
|
+
]);
|
|
40
50
|
}
|
|
41
51
|
throw new Error(`Unknown tracking tool: ${name}`);
|
|
42
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracking.tools.js","sourceRoot":"","sources":["../../src/tools/tracking.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"tracking.tools.js","sourceRoot":"","sources":["../../src/tools/tracking.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B;QACE,IAAI,EAAE,4BAA4B;QAClC,WAAW,EACT,+pBAA+pB;QACjqB,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,0CAA0C;iBACxD;gBACD,UAAU,EAAE;oBACV,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;oBAC7C,WAAW,EACT,gEAAgE;iBACnE;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,qDAAqD;iBACnE;aACF;YACD,QAAQ,EAAE,CAAC,eAAe,EAAE,YAAY,CAAC;SAC1C;QACD,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,IAAI;SACpB;KACF;CACF,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,aAAa,EAAE,iBAAiB;IAChC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAY,EACZ,IAAa,EACb,MAA+B;IAE/B,IAAI,IAAI,KAAK,4BAA4B,EAAE,CAAC;QAC1C,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,GACzC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAC3C,aAAa,EACb,UAAU,EACV,MAAM,CACP,CAAC;QACF,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAE,MAAc,EAAE,cAAc,CAAC;YAC5D,CAAC,CAAE,MAAc,CAAC,cAAc;YAChC,CAAC,CAAC,EAAE,CAAC;QACP,OAAO,UAAU,CAAC,GAAG,OAAO,CAAC,MAAM,2BAA2B,EAAE,MAAM,EAAE;YACtE,+DAA+D;SAChE,CAAC,CAAC;IACL,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC;AACpD,CAAC"}
|
|
@@ -17,6 +17,12 @@ export declare const userTools: ({
|
|
|
17
17
|
};
|
|
18
18
|
required: string[];
|
|
19
19
|
};
|
|
20
|
+
annotations: {
|
|
21
|
+
readOnlyHint: boolean;
|
|
22
|
+
destructiveHint: boolean;
|
|
23
|
+
idempotentHint: boolean;
|
|
24
|
+
openWorldHint: boolean;
|
|
25
|
+
};
|
|
20
26
|
} | {
|
|
21
27
|
name: string;
|
|
22
28
|
description: string;
|
|
@@ -47,6 +53,12 @@ export declare const userTools: ({
|
|
|
47
53
|
};
|
|
48
54
|
required?: never;
|
|
49
55
|
};
|
|
56
|
+
annotations: {
|
|
57
|
+
readOnlyHint: boolean;
|
|
58
|
+
destructiveHint: boolean;
|
|
59
|
+
idempotentHint: boolean;
|
|
60
|
+
openWorldHint: boolean;
|
|
61
|
+
};
|
|
50
62
|
})[];
|
|
51
63
|
export declare function handleUserTool(name: string, args: unknown, client: DataverseAdvancedClient): Promise<{
|
|
52
64
|
content: Array<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users.tools.d.ts","sourceRoot":"","sources":["../../src/tools/users.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"users.tools.d.ts","sourceRoot":"","sources":["../../src/tools/users.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAoBzF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0DrB,CAAC;AAEF,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA6G7D"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { esc } from "../dataverse/dataverse-client.utils.js";
|
|
3
|
+
import { formatData } from "./output.utils.js";
|
|
3
4
|
const GetUserRolesInput = z.object({
|
|
4
5
|
userId: z.string().uuid(),
|
|
5
6
|
});
|
|
@@ -17,7 +18,7 @@ const ListUsersInput = z
|
|
|
17
18
|
export const userTools = [
|
|
18
19
|
{
|
|
19
20
|
name: "dataverse_get_user_roles",
|
|
20
|
-
description: "Returns all security roles assigned to a Dataverse system user. Provide the user GUID to retrieve full name, domain name (UPN), and the list of roles with role ID, name, and managed status.",
|
|
21
|
+
description: "Returns all security roles assigned to a Dataverse system user. Provide the user GUID to retrieve full name, domain name (UPN), and the list of roles with role ID, name, and managed status. WHEN TO USE: Checking what security roles a user has for permission auditing or troubleshooting. BEST PRACTICES: Use the userId from dataverse_whoami or dataverse_list_users. WORKFLOW: inspect_audit.",
|
|
21
22
|
inputSchema: {
|
|
22
23
|
type: "object",
|
|
23
24
|
properties: {
|
|
@@ -28,10 +29,16 @@ export const userTools = [
|
|
|
28
29
|
},
|
|
29
30
|
required: ["userId"],
|
|
30
31
|
},
|
|
32
|
+
annotations: {
|
|
33
|
+
readOnlyHint: true,
|
|
34
|
+
destructiveHint: false,
|
|
35
|
+
idempotentHint: true,
|
|
36
|
+
openWorldHint: true,
|
|
37
|
+
},
|
|
31
38
|
},
|
|
32
39
|
{
|
|
33
40
|
name: "dataverse_list_users",
|
|
34
|
-
description: "Searches Dataverse system users by name or email. Returns user ID, full name, domain name (UPN), email, business unit, and disabled status. Excludes application users and disabled users by default.",
|
|
41
|
+
description: "Searches Dataverse system users by name or email. Returns user ID, full name, domain name (UPN), email, business unit, and disabled status. Excludes application users and disabled users by default. WHEN TO USE: Finding user GUIDs for impersonation, record assignment, or permission review. BEST PRACTICES: Search by name or email; set includeDisabled=true for former employees. WORKFLOW: explore_schema.",
|
|
35
42
|
inputSchema: {
|
|
36
43
|
type: "object",
|
|
37
44
|
properties: {
|
|
@@ -57,6 +64,12 @@ export const userTools = [
|
|
|
57
64
|
},
|
|
58
65
|
},
|
|
59
66
|
},
|
|
67
|
+
annotations: {
|
|
68
|
+
readOnlyHint: true,
|
|
69
|
+
destructiveHint: false,
|
|
70
|
+
idempotentHint: true,
|
|
71
|
+
openWorldHint: true,
|
|
72
|
+
},
|
|
60
73
|
},
|
|
61
74
|
];
|
|
62
75
|
export async function handleUserTool(name, args, client) {
|
|
@@ -80,20 +93,13 @@ export async function handleUserTool(name, args, client) {
|
|
|
80
93
|
name: r["name"] ?? "",
|
|
81
94
|
isManaged: r["ismanaged"] === true,
|
|
82
95
|
}));
|
|
83
|
-
return {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
domainname: user["domainname"] ?? "",
|
|
91
|
-
roles,
|
|
92
|
-
roleCount: roles.length,
|
|
93
|
-
}, null, 2),
|
|
94
|
-
},
|
|
95
|
-
],
|
|
96
|
-
};
|
|
96
|
+
return formatData(`${roles.length} roles assigned to user`, {
|
|
97
|
+
userId,
|
|
98
|
+
fullname: user["fullname"] ?? "",
|
|
99
|
+
domainname: user["domainname"] ?? "",
|
|
100
|
+
roles,
|
|
101
|
+
roleCount: roles.length,
|
|
102
|
+
}, ["Use dataverse_impersonate to execute operations as this user"]);
|
|
97
103
|
}
|
|
98
104
|
case "dataverse_list_users": {
|
|
99
105
|
const params = ListUsersInput.parse(args);
|
|
@@ -136,14 +142,7 @@ export async function handleUserTool(name, args, client) {
|
|
|
136
142
|
isDisabled: row["isdisabled"] === true,
|
|
137
143
|
isApplicationUser: row["applicationid"] != null,
|
|
138
144
|
}));
|
|
139
|
-
return {
|
|
140
|
-
content: [
|
|
141
|
-
{
|
|
142
|
-
type: "text",
|
|
143
|
-
text: JSON.stringify({ users, count: users.length }, null, 2),
|
|
144
|
-
},
|
|
145
|
-
],
|
|
146
|
-
};
|
|
145
|
+
return formatData(`${users.length} users found`, { users, count: users.length }, ["Use dataverse_get_user_roles to inspect specific user permissions"]);
|
|
147
146
|
}
|
|
148
147
|
default:
|
|
149
148
|
throw new Error(`Unknown user tool: ${name}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users.tools.js","sourceRoot":"","sources":["../../src/tools/users.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,GAAG,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"users.tools.js","sourceRoot":"","sources":["../../src/tools/users.tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,12 @@ export declare const viewTools: {
|
|
|
20
20
|
};
|
|
21
21
|
required: string[];
|
|
22
22
|
};
|
|
23
|
+
annotations: {
|
|
24
|
+
readOnlyHint: boolean;
|
|
25
|
+
destructiveHint: boolean;
|
|
26
|
+
idempotentHint: boolean;
|
|
27
|
+
openWorldHint: boolean;
|
|
28
|
+
};
|
|
23
29
|
}[];
|
|
24
30
|
export declare function handleViewTool(name: string, args: unknown, client: DataverseAdvancedClient): Promise<{
|
|
25
31
|
content: Array<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"views.tools.d.ts","sourceRoot":"","sources":["../../src/tools/views.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"views.tools.d.ts","sourceRoot":"","sources":["../../src/tools/views.tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAUzF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCrB,CAAC;AAgBF,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAsE7D"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { esc } from "../dataverse/dataverse-client.utils.js";
|
|
3
|
+
import { formatData } from "./output.utils.js";
|
|
3
4
|
const ListViewsInput = z.object({
|
|
4
5
|
entityLogicalName: z.string().min(1),
|
|
5
6
|
includePersonal: z.boolean().optional().default(false),
|
|
@@ -8,7 +9,7 @@ const ListViewsInput = z.object({
|
|
|
8
9
|
export const viewTools = [
|
|
9
10
|
{
|
|
10
11
|
name: "dataverse_list_views",
|
|
11
|
-
description: "Lists saved views (system and optionally personal) for a Dataverse table. System views come from savedqueries; personal views come from userqueries. Returns view name, ID, default flag, query type, and description.",
|
|
12
|
+
description: "Lists saved views (system and optionally personal) for a Dataverse table. System views come from savedqueries; personal views come from userqueries. Returns view name, ID, default flag, query type, and description. WHEN TO USE: Discovering saved system or personal views for a table. BEST PRACTICES: Use the view's FetchXML with dataverse_execute_fetchxml to run it. WORKFLOW: explore_schema.",
|
|
12
13
|
inputSchema: {
|
|
13
14
|
type: "object",
|
|
14
15
|
properties: {
|
|
@@ -27,6 +28,12 @@ export const viewTools = [
|
|
|
27
28
|
},
|
|
28
29
|
required: ["entityLogicalName"],
|
|
29
30
|
},
|
|
31
|
+
annotations: {
|
|
32
|
+
readOnlyHint: true,
|
|
33
|
+
destructiveHint: false,
|
|
34
|
+
idempotentHint: true,
|
|
35
|
+
openWorldHint: true,
|
|
36
|
+
},
|
|
30
37
|
},
|
|
31
38
|
];
|
|
32
39
|
export async function handleViewTool(name, args, client) {
|
|
@@ -69,22 +76,14 @@ export async function handleViewTool(name, args, client) {
|
|
|
69
76
|
viewType: "personal",
|
|
70
77
|
}));
|
|
71
78
|
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
personalViews: includePersonal ? personalViews : undefined,
|
|
81
|
-
personalViewCount: includePersonal
|
|
82
|
-
? personalViews.length
|
|
83
|
-
: undefined,
|
|
84
|
-
}, null, 2),
|
|
85
|
-
},
|
|
86
|
-
],
|
|
87
|
-
};
|
|
79
|
+
const totalCount = systemViews.length + personalViews.length;
|
|
80
|
+
return formatData(`${totalCount} views found for ${entityLogicalName}`, {
|
|
81
|
+
entityLogicalName,
|
|
82
|
+
systemViews,
|
|
83
|
+
systemViewCount: systemViews.length,
|
|
84
|
+
personalViews: includePersonal ? personalViews : undefined,
|
|
85
|
+
personalViewCount: includePersonal ? personalViews.length : undefined,
|
|
86
|
+
}, ["Use the view's fetchxml with dataverse_execute_fetchxml to run it"]);
|
|
88
87
|
}
|
|
89
88
|
default:
|
|
90
89
|
throw new Error(`Unknown view tool: ${name}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"views.tools.js","sourceRoot":"","sources":["../../src/tools/views.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,GAAG,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"views.tools.js","sourceRoot":"","sources":["../../src/tools/views.tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { DataverseAdvancedClient } from "../dataverse/dataverse-client-advanced.js";
|
|
2
|
+
import type { ToolResult } from "./tool-registry.js";
|
|
3
|
+
interface WorkflowStep {
|
|
4
|
+
order: number;
|
|
5
|
+
tool: string;
|
|
6
|
+
description: string;
|
|
7
|
+
required: boolean;
|
|
8
|
+
tips?: string;
|
|
9
|
+
}
|
|
10
|
+
interface Workflow {
|
|
11
|
+
name: string;
|
|
12
|
+
description: string;
|
|
13
|
+
steps: WorkflowStep[];
|
|
14
|
+
tags: string[];
|
|
15
|
+
}
|
|
16
|
+
declare const WORKFLOWS: ReadonlyMap<string, Workflow>;
|
|
17
|
+
export declare const workflowTools: ({
|
|
18
|
+
name: string;
|
|
19
|
+
description: string;
|
|
20
|
+
inputSchema: {
|
|
21
|
+
type: "object";
|
|
22
|
+
properties: {
|
|
23
|
+
name?: never;
|
|
24
|
+
};
|
|
25
|
+
required: never[];
|
|
26
|
+
};
|
|
27
|
+
annotations: {
|
|
28
|
+
readOnlyHint: boolean;
|
|
29
|
+
destructiveHint: boolean;
|
|
30
|
+
idempotentHint: boolean;
|
|
31
|
+
};
|
|
32
|
+
} | {
|
|
33
|
+
name: string;
|
|
34
|
+
description: string;
|
|
35
|
+
inputSchema: {
|
|
36
|
+
type: "object";
|
|
37
|
+
properties: {
|
|
38
|
+
name: {
|
|
39
|
+
type: string;
|
|
40
|
+
description: string;
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
required: string[];
|
|
44
|
+
};
|
|
45
|
+
annotations: {
|
|
46
|
+
readOnlyHint: boolean;
|
|
47
|
+
destructiveHint: boolean;
|
|
48
|
+
idempotentHint: boolean;
|
|
49
|
+
};
|
|
50
|
+
})[];
|
|
51
|
+
export declare function handleWorkflowTool(name: string, args: unknown, _client: DataverseAdvancedClient): Promise<ToolResult>;
|
|
52
|
+
export { WORKFLOWS };
|
|
53
|
+
//# sourceMappingURL=workflow.tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow.tools.d.ts","sourceRoot":"","sources":["../../src/tools/workflow.tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAKrD,UAAU,YAAY;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAID,QAAA,MAAM,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,CA4I3C,CAAC;AAIH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuCzB,CAAC;AAIF,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,UAAU,CAAC,CAgCrB;AAID,OAAO,EAAE,SAAS,EAAE,CAAC"}
|