@stigmer/react 0.0.68 → 0.0.70
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/README.md +1 -1
- package/composer/SessionComposer.d.ts.map +1 -1
- package/composer/SessionComposer.js +12 -3
- package/composer/SessionComposer.js.map +1 -1
- package/demo/__tests__/demo-client.test.d.ts +2 -0
- package/demo/__tests__/demo-client.test.d.ts.map +1 -0
- package/demo/__tests__/demo-client.test.js +133 -0
- package/demo/__tests__/demo-client.test.js.map +1 -0
- package/demo/__tests__/fixtures.test.d.ts +2 -0
- package/demo/__tests__/fixtures.test.d.ts.map +1 -0
- package/demo/__tests__/fixtures.test.js +135 -0
- package/demo/__tests__/fixtures.test.js.map +1 -0
- package/demo/__tests__/samples.test.d.ts +2 -0
- package/demo/__tests__/samples.test.d.ts.map +1 -0
- package/demo/__tests__/samples.test.js +152 -0
- package/demo/__tests__/samples.test.js.map +1 -0
- package/demo/client.d.ts +29 -0
- package/demo/client.d.ts.map +1 -0
- package/demo/client.js +52 -0
- package/demo/client.js.map +1 -0
- package/demo/fixtures.d.ts +190 -0
- package/demo/fixtures.d.ts.map +1 -0
- package/demo/fixtures.js +263 -0
- package/demo/fixtures.js.map +1 -0
- package/demo/index.d.ts +6 -0
- package/demo/index.d.ts.map +1 -0
- package/demo/index.js +6 -0
- package/demo/index.js.map +1 -0
- package/demo/samples.d.ts +166 -0
- package/demo/samples.d.ts.map +1 -0
- package/demo/samples.js +308 -0
- package/demo/samples.js.map +1 -0
- package/demo/transport.d.ts +59 -0
- package/demo/transport.d.ts.map +1 -0
- package/demo/transport.js +75 -0
- package/demo/transport.js.map +1 -0
- package/demo/types.d.ts +62 -0
- package/demo/types.d.ts.map +1 -0
- package/demo/types.js +16 -0
- package/demo/types.js.map +1 -0
- package/environment/EnvVarForm.d.ts.map +1 -1
- package/environment/EnvVarForm.js +1 -1
- package/environment/EnvVarForm.js.map +1 -1
- package/environment/__tests__/systemEnvVars.test.d.ts +2 -0
- package/environment/__tests__/systemEnvVars.test.d.ts.map +1 -0
- package/environment/__tests__/systemEnvVars.test.js +76 -0
- package/environment/__tests__/systemEnvVars.test.js.map +1 -0
- package/environment/index.d.ts +1 -0
- package/environment/index.d.ts.map +1 -1
- package/environment/index.js +1 -0
- package/environment/index.js.map +1 -1
- package/environment/systemEnvVars.d.ts +52 -0
- package/environment/systemEnvVars.d.ts.map +1 -0
- package/environment/systemEnvVars.js +91 -0
- package/environment/systemEnvVars.js.map +1 -0
- package/execution/ApprovalCard.d.ts.map +1 -1
- package/execution/ApprovalCard.js +3 -3
- package/execution/ApprovalCard.js.map +1 -1
- package/index.d.ts +1 -1
- package/index.d.ts.map +1 -1
- package/index.js +2 -2
- package/index.js.map +1 -1
- package/internal/Tabs.d.ts +41 -0
- package/internal/Tabs.d.ts.map +1 -0
- package/internal/Tabs.js +65 -0
- package/internal/Tabs.js.map +1 -0
- package/mcp-server/McpServerDetailView.d.ts +33 -7
- package/mcp-server/McpServerDetailView.d.ts.map +1 -1
- package/mcp-server/McpServerDetailView.js +53 -37
- package/mcp-server/McpServerDetailView.js.map +1 -1
- package/mcp-server/useMcpServerCredentials.d.ts.map +1 -1
- package/mcp-server/useMcpServerCredentials.js +2 -1
- package/mcp-server/useMcpServerCredentials.js.map +1 -1
- package/models/index.d.ts +1 -1
- package/models/index.d.ts.map +1 -1
- package/models/index.js +1 -1
- package/models/index.js.map +1 -1
- package/models/registry.d.ts +10 -0
- package/models/registry.d.ts.map +1 -1
- package/models/registry.js +13 -0
- package/models/registry.js.map +1 -1
- package/models/useModelRegistry.d.ts.map +1 -1
- package/models/useModelRegistry.js +7 -3
- package/models/useModelRegistry.js.map +1 -1
- package/package.json +9 -5
- package/src/composer/SessionComposer.tsx +21 -3
- package/src/demo/__tests__/demo-client.test.tsx +213 -0
- package/src/demo/__tests__/fixtures.test.ts +214 -0
- package/src/demo/__tests__/samples.test.ts +171 -0
- package/src/demo/client.ts +78 -0
- package/src/demo/fixtures.ts +401 -0
- package/src/demo/index.ts +12 -0
- package/src/demo/samples.ts +470 -0
- package/src/demo/transport.ts +116 -0
- package/src/demo/types.ts +69 -0
- package/src/environment/EnvVarForm.tsx +1 -0
- package/src/environment/__tests__/systemEnvVars.test.ts +120 -0
- package/src/environment/index.ts +6 -0
- package/src/environment/systemEnvVars.ts +104 -0
- package/src/execution/ApprovalCard.tsx +4 -0
- package/src/index.ts +5 -1
- package/src/internal/Tabs.tsx +166 -0
- package/src/mcp-server/McpServerDetailView.tsx +273 -204
- package/src/mcp-server/useMcpServerCredentials.ts +4 -1
- package/src/models/index.ts +1 -1
- package/src/models/registry.ts +14 -0
- package/src/models/useModelRegistry.ts +7 -2
- package/styles.css +1 -1
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { describe, it, expect } from "vitest";
|
|
2
|
+
import { ExecutionPhase, MessageType, ToolCallStatus, ExecutionArtifactKind } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
|
|
3
|
+
import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
|
|
4
|
+
import { samples } from "../samples";
|
|
5
|
+
describe("samples", () => {
|
|
6
|
+
describe("session", () => {
|
|
7
|
+
it("creates a session with defaults", () => {
|
|
8
|
+
const s = samples.session();
|
|
9
|
+
expect(s.apiVersion).toBe("agentic.stigmer.ai/v1");
|
|
10
|
+
expect(s.kind).toBe("Session");
|
|
11
|
+
expect(s.metadata?.name).toBe("demo-session");
|
|
12
|
+
expect(s.metadata?.org).toBe("demo");
|
|
13
|
+
expect(s.spec?.subject).toBe("Demo conversation");
|
|
14
|
+
});
|
|
15
|
+
it("applies overrides", () => {
|
|
16
|
+
const s = samples.session({ name: "my-chat", subject: "Custom topic", org: "acme" });
|
|
17
|
+
expect(s.metadata?.name).toBe("my-chat");
|
|
18
|
+
expect(s.metadata?.org).toBe("acme");
|
|
19
|
+
expect(s.spec?.subject).toBe("Custom topic");
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
describe("agent", () => {
|
|
23
|
+
it("creates an agent with defaults", () => {
|
|
24
|
+
const a = samples.agent();
|
|
25
|
+
expect(a.kind).toBe("Agent");
|
|
26
|
+
expect(a.metadata?.name).toBe("Demo Agent");
|
|
27
|
+
expect(a.spec?.description).toContain("sample agent");
|
|
28
|
+
});
|
|
29
|
+
it("derives slug from name override", () => {
|
|
30
|
+
const a = samples.agent({ name: "My Custom Agent" });
|
|
31
|
+
expect(a.metadata?.slug).toBe("my-custom-agent");
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
describe("agentExecution", () => {
|
|
35
|
+
it("creates a completed execution with default messages", () => {
|
|
36
|
+
const ex = samples.agentExecution();
|
|
37
|
+
expect(ex.kind).toBe("AgentExecution");
|
|
38
|
+
expect(ex.status?.phase).toBe(ExecutionPhase.EXECUTION_COMPLETED);
|
|
39
|
+
expect(ex.status?.messages.length).toBeGreaterThanOrEqual(2);
|
|
40
|
+
});
|
|
41
|
+
it("uses provided phase and messages", () => {
|
|
42
|
+
const msgs = [
|
|
43
|
+
samples.humanMessage("test input"),
|
|
44
|
+
samples.aiMessage("test response"),
|
|
45
|
+
];
|
|
46
|
+
const ex = samples.agentExecution({
|
|
47
|
+
phase: ExecutionPhase.EXECUTION_IN_PROGRESS,
|
|
48
|
+
messages: msgs,
|
|
49
|
+
});
|
|
50
|
+
expect(ex.status?.phase).toBe(ExecutionPhase.EXECUTION_IN_PROGRESS);
|
|
51
|
+
expect(ex.status?.messages).toHaveLength(2);
|
|
52
|
+
expect(ex.status?.messages[0].content).toBe("test input");
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
describe("skill", () => {
|
|
56
|
+
it("creates a skill with SKILL.md content", () => {
|
|
57
|
+
const sk = samples.skill();
|
|
58
|
+
expect(sk.kind).toBe("Skill");
|
|
59
|
+
expect(sk.spec?.skillMd).toContain("# Demo Skill");
|
|
60
|
+
});
|
|
61
|
+
it("applies custom skillMd", () => {
|
|
62
|
+
const sk = samples.skill({ skillMd: "# My Skill\nCustom content" });
|
|
63
|
+
expect(sk.spec?.skillMd).toContain("# My Skill");
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
describe("mcpServer", () => {
|
|
67
|
+
it("creates an MCP server with defaults", () => {
|
|
68
|
+
const m = samples.mcpServer();
|
|
69
|
+
expect(m.kind).toBe("McpServer");
|
|
70
|
+
expect(m.metadata?.name).toBe("Demo MCP Server");
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
describe("environment", () => {
|
|
74
|
+
it("creates an environment with defaults", () => {
|
|
75
|
+
const e = samples.environment();
|
|
76
|
+
expect(e.kind).toBe("Environment");
|
|
77
|
+
expect(e.metadata?.name).toBe("demo-env");
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
describe("agentInstance", () => {
|
|
81
|
+
it("creates an agent instance referencing demo agent", () => {
|
|
82
|
+
const ai = samples.agentInstance();
|
|
83
|
+
expect(ai.kind).toBe("AgentInstance");
|
|
84
|
+
expect(ai.spec?.agentId).toContain("agt-");
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
describe("message primitives", () => {
|
|
88
|
+
it("humanMessage has correct type", () => {
|
|
89
|
+
const msg = samples.humanMessage("Hello");
|
|
90
|
+
expect(msg.type).toBe(MessageType.MESSAGE_HUMAN);
|
|
91
|
+
expect(msg.content).toBe("Hello");
|
|
92
|
+
expect(msg.timestamp).toBeTruthy();
|
|
93
|
+
});
|
|
94
|
+
it("aiMessage has correct type and optional tool calls", () => {
|
|
95
|
+
const tc = samples.toolCall("web-search", "results here");
|
|
96
|
+
const msg = samples.aiMessage("Here are the results", [tc]);
|
|
97
|
+
expect(msg.type).toBe(MessageType.MESSAGE_AI);
|
|
98
|
+
expect(msg.toolCalls).toHaveLength(1);
|
|
99
|
+
expect(msg.toolCalls[0].name).toBe("web-search");
|
|
100
|
+
});
|
|
101
|
+
it("toolCall is completed with a result", () => {
|
|
102
|
+
const tc = samples.toolCall("lookup-order", '{"orderId": "123"}');
|
|
103
|
+
expect(tc.status).toBe(ToolCallStatus.TOOL_CALL_COMPLETED);
|
|
104
|
+
expect(tc.name).toBe("lookup-order");
|
|
105
|
+
expect(tc.result).toBe('{"orderId": "123"}');
|
|
106
|
+
});
|
|
107
|
+
it("artifact defaults to FILE kind", () => {
|
|
108
|
+
const a = samples.artifact("report.md");
|
|
109
|
+
expect(a.name).toBe("report.md");
|
|
110
|
+
expect(a.kind).toBe(ExecutionArtifactKind.FILE);
|
|
111
|
+
expect(a.storageKey).toContain("demo-artifact-");
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
describe("list responses", () => {
|
|
115
|
+
it("sessionList wraps sessions", () => {
|
|
116
|
+
const list = samples.sessionList();
|
|
117
|
+
expect(list.entries).toHaveLength(1);
|
|
118
|
+
expect(list.totalPages).toBe(1);
|
|
119
|
+
});
|
|
120
|
+
it("sessionList accepts custom entries", () => {
|
|
121
|
+
const sessions = [
|
|
122
|
+
samples.session({ name: "s1" }),
|
|
123
|
+
samples.session({ name: "s2" }),
|
|
124
|
+
];
|
|
125
|
+
const list = samples.sessionList(sessions);
|
|
126
|
+
expect(list.entries).toHaveLength(2);
|
|
127
|
+
});
|
|
128
|
+
it("agentExecutionList wraps executions", () => {
|
|
129
|
+
const list = samples.agentExecutionList();
|
|
130
|
+
expect(list.entries).toHaveLength(1);
|
|
131
|
+
expect(list.totalPages).toBe(1);
|
|
132
|
+
});
|
|
133
|
+
it("searchResponse wraps search results", () => {
|
|
134
|
+
const resp = samples.searchResponse();
|
|
135
|
+
expect(resp.entries).toHaveLength(1);
|
|
136
|
+
expect(resp.totalCount).toBe(1);
|
|
137
|
+
expect(resp.totalPages).toBe(1);
|
|
138
|
+
});
|
|
139
|
+
it("searchResult accepts overrides", () => {
|
|
140
|
+
const r = samples.searchResult({
|
|
141
|
+
kind: ApiResourceKind.skill,
|
|
142
|
+
name: "My Skill",
|
|
143
|
+
slug: "my-skill",
|
|
144
|
+
org: "acme",
|
|
145
|
+
});
|
|
146
|
+
expect(r.kind).toBe(ApiResourceKind.skill);
|
|
147
|
+
expect(r.name).toBe("My Skill");
|
|
148
|
+
expect(r.qualifiedSlug).toBe("acme/my-skill");
|
|
149
|
+
});
|
|
150
|
+
});
|
|
151
|
+
});
|
|
152
|
+
//# sourceMappingURL=samples.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"samples.test.js","sourceRoot":"","sources":["../../../src/demo/__tests__/samples.test.ts"],"names":[],"mappings":"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"}
|
package/demo/client.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { Stigmer } from "@stigmer/sdk";
|
|
2
|
+
import type { DemoScenario } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* Create a `Stigmer`-compatible client backed by in-memory fixture data.
|
|
5
|
+
*
|
|
6
|
+
* The returned object is structurally identical to a real {@link Stigmer}
|
|
7
|
+
* instance — all 17 resource clients plus `search` and `github` — but
|
|
8
|
+
* every RPC resolves through a {@link DemoTransport} instead of a network
|
|
9
|
+
* connection. Pass it to `<StigmerProvider client={...}>` and all
|
|
10
|
+
* descendant hooks and components work without a live backend.
|
|
11
|
+
*
|
|
12
|
+
* RPCs that have no registered fixture throw a descriptive error
|
|
13
|
+
* identifying the missing key. Register fixtures in the
|
|
14
|
+
* {@link DemoScenario} to cover the RPCs your components need.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```tsx
|
|
18
|
+
* import { StigmerProvider } from "@stigmer/react";
|
|
19
|
+
* import { createDemoClient } from "@stigmer/react/demo";
|
|
20
|
+
*
|
|
21
|
+
* const client = createDemoClient({ fixtures: myScenarioFixtures });
|
|
22
|
+
*
|
|
23
|
+
* <StigmerProvider client={client}>
|
|
24
|
+
* <App />
|
|
25
|
+
* </StigmerProvider>
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export declare function createDemoClient(scenario: DemoScenario): Stigmer;
|
|
29
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/demo/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAuB5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CA0BhE"}
|
package/demo/client.js
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { AgentClient, AgentExecutionClient, AgentInstanceClient, ApiKeyClient, EnvironmentClient, ExecutionContextClient, GitHubClient, IamPolicyClient, IdentityAccountClient, IdentityProviderClient, McpServerClient, OrganizationClient, ProjectClient, SearchClient, SessionClient, SkillClient, WorkflowClient, WorkflowExecutionClient, WorkflowInstanceClient, } from "@stigmer/sdk";
|
|
2
|
+
import { DemoTransport } from "./transport";
|
|
3
|
+
/**
|
|
4
|
+
* Create a `Stigmer`-compatible client backed by in-memory fixture data.
|
|
5
|
+
*
|
|
6
|
+
* The returned object is structurally identical to a real {@link Stigmer}
|
|
7
|
+
* instance — all 17 resource clients plus `search` and `github` — but
|
|
8
|
+
* every RPC resolves through a {@link DemoTransport} instead of a network
|
|
9
|
+
* connection. Pass it to `<StigmerProvider client={...}>` and all
|
|
10
|
+
* descendant hooks and components work without a live backend.
|
|
11
|
+
*
|
|
12
|
+
* RPCs that have no registered fixture throw a descriptive error
|
|
13
|
+
* identifying the missing key. Register fixtures in the
|
|
14
|
+
* {@link DemoScenario} to cover the RPCs your components need.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```tsx
|
|
18
|
+
* import { StigmerProvider } from "@stigmer/react";
|
|
19
|
+
* import { createDemoClient } from "@stigmer/react/demo";
|
|
20
|
+
*
|
|
21
|
+
* const client = createDemoClient({ fixtures: myScenarioFixtures });
|
|
22
|
+
*
|
|
23
|
+
* <StigmerProvider client={client}>
|
|
24
|
+
* <App />
|
|
25
|
+
* </StigmerProvider>
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export function createDemoClient(scenario) {
|
|
29
|
+
const transport = new DemoTransport(scenario.fixtures);
|
|
30
|
+
return {
|
|
31
|
+
agent: new AgentClient(transport),
|
|
32
|
+
agentExecution: new AgentExecutionClient(transport),
|
|
33
|
+
agentInstance: new AgentInstanceClient(transport),
|
|
34
|
+
apiKey: new ApiKeyClient(transport),
|
|
35
|
+
environment: new EnvironmentClient(transport),
|
|
36
|
+
executionContext: new ExecutionContextClient(transport),
|
|
37
|
+
iamPolicy: new IamPolicyClient(transport),
|
|
38
|
+
identityAccount: new IdentityAccountClient(transport),
|
|
39
|
+
identityProvider: new IdentityProviderClient(transport),
|
|
40
|
+
mcpServer: new McpServerClient(transport),
|
|
41
|
+
organization: new OrganizationClient(transport),
|
|
42
|
+
project: new ProjectClient(transport),
|
|
43
|
+
session: new SessionClient(transport),
|
|
44
|
+
skill: new SkillClient(transport),
|
|
45
|
+
workflow: new WorkflowClient(transport),
|
|
46
|
+
workflowExecution: new WorkflowExecutionClient(transport),
|
|
47
|
+
workflowInstance: new WorkflowInstanceClient(transport),
|
|
48
|
+
search: new SearchClient(transport),
|
|
49
|
+
github: new GitHubClient(transport),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/demo/client.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,EACtB,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,WAAW,EACX,cAAc,EACd,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAsB;IACrD,MAAM,SAAS,GAAG,IAAI,aAAa,CACjC,QAAQ,CAAC,QAAQ,CACM,CAAC;IAE1B,OAAO;QACL,KAAK,EAAE,IAAI,WAAW,CAAC,SAAS,CAAC;QACjC,cAAc,EAAE,IAAI,oBAAoB,CAAC,SAAS,CAAC;QACnD,aAAa,EAAE,IAAI,mBAAmB,CAAC,SAAS,CAAC;QACjD,MAAM,EAAE,IAAI,YAAY,CAAC,SAAS,CAAC;QACnC,WAAW,EAAE,IAAI,iBAAiB,CAAC,SAAS,CAAC;QAC7C,gBAAgB,EAAE,IAAI,sBAAsB,CAAC,SAAS,CAAC;QACvD,SAAS,EAAE,IAAI,eAAe,CAAC,SAAS,CAAC;QACzC,eAAe,EAAE,IAAI,qBAAqB,CAAC,SAAS,CAAC;QACrD,gBAAgB,EAAE,IAAI,sBAAsB,CAAC,SAAS,CAAC;QACvD,SAAS,EAAE,IAAI,eAAe,CAAC,SAAS,CAAC;QACzC,YAAY,EAAE,IAAI,kBAAkB,CAAC,SAAS,CAAC;QAC/C,OAAO,EAAE,IAAI,aAAa,CAAC,SAAS,CAAC;QACrC,OAAO,EAAE,IAAI,aAAa,CAAC,SAAS,CAAC;QACrC,KAAK,EAAE,IAAI,WAAW,CAAC,SAAS,CAAC;QACjC,QAAQ,EAAE,IAAI,cAAc,CAAC,SAAS,CAAC;QACvC,iBAAiB,EAAE,IAAI,uBAAuB,CAAC,SAAS,CAAC;QACzD,gBAAgB,EAAE,IAAI,sBAAsB,CAAC,SAAS,CAAC;QACvD,MAAM,EAAE,IAAI,YAAY,CAAC,SAAS,CAAC;QACnC,MAAM,EAAE,IAAI,YAAY,CAAC,SAAS,CAAC;KACzB,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
|
|
2
|
+
import type { DemoScenario, FixtureEntry, StreamFixtureHandler, UnaryFixtureHandler } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* A fixture specification returned by fixture entry helpers.
|
|
5
|
+
*
|
|
6
|
+
* Pass one or more specs to {@link buildScenario} to construct a
|
|
7
|
+
* {@link DemoScenario} ready for {@link createDemoClient}.
|
|
8
|
+
*
|
|
9
|
+
* The `searchResourceKind` field is set automatically by search-backed
|
|
10
|
+
* helpers (`fixtures.agent.list`, `fixtures.skill.list`,
|
|
11
|
+
* `fixtures.mcpServer.list`). Do not set it manually.
|
|
12
|
+
*/
|
|
13
|
+
export interface FixtureSpec {
|
|
14
|
+
readonly key: string;
|
|
15
|
+
readonly entry: FixtureEntry;
|
|
16
|
+
readonly searchResourceKind?: ApiResourceKind;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Fixture entry helpers mirroring the `Stigmer` SDK client shape.
|
|
20
|
+
*
|
|
21
|
+
* Each method wraps a user-provided handler into a {@link FixtureSpec}
|
|
22
|
+
* that {@link buildScenario} assembles into a {@link DemoScenario}.
|
|
23
|
+
*
|
|
24
|
+
* Method names match the SDK client methods (e.g. `fixtures.session.get`
|
|
25
|
+
* mirrors `client.session.get`). JSDoc on each method documents which
|
|
26
|
+
* React hooks consume that RPC.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```ts
|
|
30
|
+
* import { fixtures, buildScenario, createDemoClient } from "@stigmer/react/demo";
|
|
31
|
+
*
|
|
32
|
+
* const scenario = buildScenario(
|
|
33
|
+
* fixtures.session.get(() => mySession),
|
|
34
|
+
* fixtures.agentExecution.listBySession(() => myExecutionList),
|
|
35
|
+
* fixtures.agentExecution.subscribe(() => [snapshot1, snapshot2]),
|
|
36
|
+
* );
|
|
37
|
+
* const client = createDemoClient(scenario);
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
export declare const fixtures: {
|
|
41
|
+
readonly session: {
|
|
42
|
+
/** Hooks: `useSession`, `useSessionConversation` */
|
|
43
|
+
readonly get: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
44
|
+
/** Hooks: `useSessionList` */
|
|
45
|
+
readonly list: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
46
|
+
/** Hooks: `useCreateSession`, `useTriggerApprovalPolicySession` */
|
|
47
|
+
readonly create: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
48
|
+
/** Hooks: `useUpdateSession`, `useSessionConversation` */
|
|
49
|
+
readonly update: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
50
|
+
};
|
|
51
|
+
readonly agentExecution: {
|
|
52
|
+
/** Hooks: `useCreateAgentExecution`, `useTriggerApprovalPolicySession` */
|
|
53
|
+
readonly create: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
54
|
+
/** Hooks: `useSessionExecutions`, `useSessionConversation` */
|
|
55
|
+
readonly listBySession: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
56
|
+
/**
|
|
57
|
+
* Hooks: `useExecutionStream`, `useSessionConversation`
|
|
58
|
+
*
|
|
59
|
+
* The handler returns an **array** of `AgentExecution` snapshots that
|
|
60
|
+
* the transport yields as a server stream.
|
|
61
|
+
*/
|
|
62
|
+
readonly subscribe: (handler: StreamFixtureHandler) => FixtureSpec;
|
|
63
|
+
/** Hooks: `useSubmitApproval`, `useSessionConversation` */
|
|
64
|
+
readonly submitApproval: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
65
|
+
/** Hooks: `useArtifactContent`, `useDetectSkillPackage` */
|
|
66
|
+
readonly getArtifactContent: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
67
|
+
/** Hooks: `useAttachments`, `useTriggerApprovalPolicySession` */
|
|
68
|
+
readonly uploadAttachment: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
69
|
+
};
|
|
70
|
+
readonly agent: {
|
|
71
|
+
/** Hooks: `useAgentRefFromSession` */
|
|
72
|
+
readonly get: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
73
|
+
/** Hooks: `useAgent`, `useCreateSession`, `useAgentSetup`, `useTriggerApprovalPolicySession` */
|
|
74
|
+
readonly getByReference: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
75
|
+
/** Hooks: `useDefaultAgent` */
|
|
76
|
+
readonly getDefault: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
77
|
+
/**
|
|
78
|
+
* Hooks: `useAgentList`, `useAgentSearch`, `useAgentCount`
|
|
79
|
+
*
|
|
80
|
+
* Routes through `SearchService` — use {@link buildScenario} to avoid
|
|
81
|
+
* key collisions with `fixtures.skill.list` and `fixtures.mcpServer.list`.
|
|
82
|
+
*/
|
|
83
|
+
readonly list: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
84
|
+
/** Hooks: `useApplyResource` */
|
|
85
|
+
readonly apply: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
86
|
+
/** Hooks: `useUpdateVisibility` (when kind is Agent) */
|
|
87
|
+
readonly updateVisibility: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
88
|
+
};
|
|
89
|
+
readonly skill: {
|
|
90
|
+
/** Hooks: `useSkill` */
|
|
91
|
+
readonly getByReference: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
92
|
+
/**
|
|
93
|
+
* Hooks: `useSkillList`, `useSkillSearch`, `useSkillCount`
|
|
94
|
+
*
|
|
95
|
+
* Routes through `SearchService` — use {@link buildScenario} to avoid
|
|
96
|
+
* key collisions with `fixtures.agent.list` and `fixtures.mcpServer.list`.
|
|
97
|
+
*/
|
|
98
|
+
readonly list: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
99
|
+
/** Hooks: `useApplyResource` (when kind is Skill) */
|
|
100
|
+
readonly pushFromExecutionArtifact: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
101
|
+
/** Hooks: `useUpdateVisibility` (when kind is Skill) */
|
|
102
|
+
readonly updateVisibility: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
103
|
+
};
|
|
104
|
+
readonly mcpServer: {
|
|
105
|
+
/** Hooks: `useMcpServer`, `useMcpServerSetup` */
|
|
106
|
+
readonly getByReference: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
107
|
+
/**
|
|
108
|
+
* Hooks: `useMcpServerList`, `useMcpServerSearch`, `useMcpServerCount`
|
|
109
|
+
*
|
|
110
|
+
* Routes through `SearchService` — use {@link buildScenario} to avoid
|
|
111
|
+
* key collisions with `fixtures.agent.list` and `fixtures.skill.list`.
|
|
112
|
+
*/
|
|
113
|
+
readonly list: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
114
|
+
/** Hooks: `useDiscoverCapabilities` */
|
|
115
|
+
readonly discoverCapabilities: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
116
|
+
/** Hooks: `useApplyResource` (when kind is McpServer) */
|
|
117
|
+
readonly apply: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
118
|
+
/** Hooks: `useUpdateVisibility` (when kind is McpServer) */
|
|
119
|
+
readonly updateVisibility: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
120
|
+
};
|
|
121
|
+
readonly environment: {
|
|
122
|
+
/** Components: `EnvironmentVariableEditor` */
|
|
123
|
+
readonly get: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
124
|
+
/** Hooks: `useEnvironment` */
|
|
125
|
+
readonly getByReference: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
126
|
+
/** Hooks: `useEnvironmentList`, `usePersonalEnvironment`, `useTriggerApprovalPolicySession` */
|
|
127
|
+
readonly list: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
128
|
+
/** Hooks: `useCreateEnvironment`, `usePersonalEnvironment` */
|
|
129
|
+
readonly create: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
130
|
+
/** Hooks: `useUpdateEnvironment` */
|
|
131
|
+
readonly update: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
132
|
+
/** Hooks: `useUpdateEnvironmentVariables`, `usePersonalEnvironment` */
|
|
133
|
+
readonly updateVariables: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
134
|
+
/** Hooks: `useRemoveEnvironmentVariables`, `usePersonalEnvironment` */
|
|
135
|
+
readonly removeVariables: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
136
|
+
/** Hooks: `useRevealSecretValue`, `useGitHubConnection` */
|
|
137
|
+
readonly getSecretValue: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
138
|
+
};
|
|
139
|
+
readonly agentInstance: {
|
|
140
|
+
/** Hooks: `useAgentRefFromSession` */
|
|
141
|
+
readonly get: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
142
|
+
/** Hooks: `useAgentInstance` */
|
|
143
|
+
readonly getByReference: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
144
|
+
/** Hooks: `useAgentInstanceList`, `useAgentSetup`, `useTriggerApprovalPolicySession` */
|
|
145
|
+
readonly list: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
146
|
+
/** Hooks: `useCreateAgentInstance`, `usePersonalAgentInstance`, `useAgentSetup`, `useTriggerApprovalPolicySession` */
|
|
147
|
+
readonly create: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
148
|
+
};
|
|
149
|
+
readonly organization: {
|
|
150
|
+
/** Hooks: `useCreateOrganization` */
|
|
151
|
+
readonly create: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
152
|
+
};
|
|
153
|
+
readonly apiKey: {
|
|
154
|
+
/** Hooks: `useApiKeyList` */
|
|
155
|
+
readonly findAll: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
156
|
+
/** Hooks: `useCreateApiKey` */
|
|
157
|
+
readonly create: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
158
|
+
/** Hooks: `useDeleteApiKey` */
|
|
159
|
+
readonly delete: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
160
|
+
};
|
|
161
|
+
readonly github: {
|
|
162
|
+
/** Hooks: `useGitHubConnection` */
|
|
163
|
+
readonly getOAuthAuthorizeUrl: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
164
|
+
/** Hooks: `useGitHubConnection` */
|
|
165
|
+
readonly exchangeOAuthCode: (handler: UnaryFixtureHandler) => FixtureSpec;
|
|
166
|
+
};
|
|
167
|
+
};
|
|
168
|
+
/**
|
|
169
|
+
* Assemble {@link FixtureSpec} entries into a {@link DemoScenario}.
|
|
170
|
+
*
|
|
171
|
+
* This is the recommended way to construct scenarios because it correctly
|
|
172
|
+
* merges search-backed list fixtures (`agent.list`, `skill.list`,
|
|
173
|
+
* `mcpServer.list`) that share the same underlying `SearchService` RPC.
|
|
174
|
+
* Using `new Map([...])` directly with these helpers would cause silent
|
|
175
|
+
* key collisions where the last entry wins.
|
|
176
|
+
*
|
|
177
|
+
* @example
|
|
178
|
+
* ```ts
|
|
179
|
+
* import { fixtures, buildScenario, createDemoClient } from "@stigmer/react/demo";
|
|
180
|
+
*
|
|
181
|
+
* const scenario = buildScenario(
|
|
182
|
+
* fixtures.session.get(() => mySession),
|
|
183
|
+
* fixtures.agent.list(() => myAgentSearchResponse),
|
|
184
|
+
* fixtures.skill.list(() => mySkillSearchResponse),
|
|
185
|
+
* );
|
|
186
|
+
* const client = createDemoClient(scenario);
|
|
187
|
+
* ```
|
|
188
|
+
*/
|
|
189
|
+
export declare function buildScenario(...specs: FixtureSpec[]): DemoScenario;
|
|
190
|
+
//# sourceMappingURL=fixtures.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/demo/fixtures.ts"],"names":[],"mappings":"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"}
|