@stigmer/react 0.0.89 → 0.0.91
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/identity-provider/CreateIdentityProviderForm.d.ts.map +1 -1
- package/identity-provider/CreateIdentityProviderForm.js +60 -2
- package/identity-provider/CreateIdentityProviderForm.js.map +1 -1
- package/identity-provider/IdentityProviderDetailPanel.d.ts.map +1 -1
- package/identity-provider/IdentityProviderDetailPanel.js +87 -4
- package/identity-provider/IdentityProviderDetailPanel.js.map +1 -1
- package/identity-provider/IdentityProviderListPanel.js +5 -3
- package/identity-provider/IdentityProviderListPanel.js.map +1 -1
- package/identity-provider/IdentityProviderWizard.d.ts.map +1 -1
- package/identity-provider/IdentityProviderWizard.js +59 -4
- package/identity-provider/IdentityProviderWizard.js.map +1 -1
- package/index.d.ts +2 -0
- package/index.d.ts.map +1 -1
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/package.json +7 -7
- package/platform-client/CreatePlatformClientForm.d.ts +42 -0
- package/platform-client/CreatePlatformClientForm.d.ts.map +1 -0
- package/platform-client/CreatePlatformClientForm.js +148 -0
- package/platform-client/CreatePlatformClientForm.js.map +1 -0
- package/platform-client/PlatformClientDetailPanel.d.ts +51 -0
- package/platform-client/PlatformClientDetailPanel.d.ts.map +1 -0
- package/platform-client/PlatformClientDetailPanel.js +247 -0
- package/platform-client/PlatformClientDetailPanel.js.map +1 -0
- package/platform-client/PlatformClientListPanel.d.ts +41 -0
- package/platform-client/PlatformClientListPanel.d.ts.map +1 -0
- package/platform-client/PlatformClientListPanel.js +123 -0
- package/platform-client/PlatformClientListPanel.js.map +1 -0
- package/platform-client/PlatformClientSecretAlert.d.ts +39 -0
- package/platform-client/PlatformClientSecretAlert.d.ts.map +1 -0
- package/platform-client/PlatformClientSecretAlert.js +74 -0
- package/platform-client/PlatformClientSecretAlert.js.map +1 -0
- package/platform-client/index.d.ts +11 -0
- package/platform-client/index.d.ts.map +1 -0
- package/platform-client/index.js +11 -0
- package/platform-client/index.js.map +1 -0
- package/platform-client/useCreatePlatformClient.d.ts +42 -0
- package/platform-client/useCreatePlatformClient.d.ts.map +1 -0
- package/platform-client/useCreatePlatformClient.js +49 -0
- package/platform-client/useCreatePlatformClient.js.map +1 -0
- package/platform-client/useDeletePlatformClient.d.ts +31 -0
- package/platform-client/useDeletePlatformClient.d.ts.map +1 -0
- package/platform-client/useDeletePlatformClient.js +42 -0
- package/platform-client/useDeletePlatformClient.js.map +1 -0
- package/platform-client/usePlatformClient.d.ts +37 -0
- package/platform-client/usePlatformClient.d.ts.map +1 -0
- package/platform-client/usePlatformClient.js +62 -0
- package/platform-client/usePlatformClient.js.map +1 -0
- package/platform-client/usePlatformClientList.d.ts +42 -0
- package/platform-client/usePlatformClientList.d.ts.map +1 -0
- package/platform-client/usePlatformClientList.js +71 -0
- package/platform-client/usePlatformClientList.js.map +1 -0
- package/platform-client/useRotatePlatformClientSecret.d.ts +35 -0
- package/platform-client/useRotatePlatformClientSecret.d.ts.map +1 -0
- package/platform-client/useRotatePlatformClientSecret.js +43 -0
- package/platform-client/useRotatePlatformClientSecret.js.map +1 -0
- package/platform-client/useUpdatePlatformClient.d.ts +39 -0
- package/platform-client/useUpdatePlatformClient.d.ts.map +1 -0
- package/platform-client/useUpdatePlatformClient.js +50 -0
- package/platform-client/useUpdatePlatformClient.js.map +1 -0
- package/src/identity-provider/CreateIdentityProviderForm.tsx +220 -0
- package/src/identity-provider/IdentityProviderDetailPanel.tsx +288 -6
- package/src/identity-provider/IdentityProviderListPanel.tsx +9 -2
- package/src/identity-provider/IdentityProviderWizard.tsx +231 -25
- package/src/index.ts +26 -0
- package/src/platform-client/CreatePlatformClientForm.tsx +519 -0
- package/src/platform-client/PlatformClientDetailPanel.tsx +898 -0
- package/src/platform-client/PlatformClientListPanel.tsx +413 -0
- package/src/platform-client/PlatformClientSecretAlert.tsx +252 -0
- package/src/platform-client/index.ts +49 -0
- package/src/platform-client/useCreatePlatformClient.ts +77 -0
- package/src/platform-client/useDeletePlatformClient.ts +64 -0
- package/src/platform-client/usePlatformClient.ts +86 -0
- package/src/platform-client/usePlatformClientList.ts +96 -0
- package/src/platform-client/useRotatePlatformClientSecret.ts +68 -0
- package/src/platform-client/useUpdatePlatformClient.ts +70 -0
- package/src/test/index.ts +6 -0
- package/src/{demo → test}/samples.ts +1 -1
- package/styles.css +1 -1
- package/test/__tests__/samples.test.d.ts.map +1 -0
- package/{demo → test}/__tests__/samples.test.js.map +1 -1
- package/test/index.d.ts +2 -0
- package/test/index.d.ts.map +1 -0
- package/test/index.js +6 -0
- package/test/index.js.map +1 -0
- package/{demo → test}/samples.d.ts +1 -1
- package/{demo → test}/samples.d.ts.map +1 -1
- package/{demo → test}/samples.js +1 -1
- package/{demo → test}/samples.js.map +1 -1
- package/demo/__tests__/demo-client.test.d.ts +0 -2
- package/demo/__tests__/demo-client.test.d.ts.map +0 -1
- package/demo/__tests__/demo-client.test.js +0 -133
- package/demo/__tests__/demo-client.test.js.map +0 -1
- package/demo/__tests__/fixtures.test.d.ts +0 -2
- package/demo/__tests__/fixtures.test.d.ts.map +0 -1
- package/demo/__tests__/fixtures.test.js +0 -135
- package/demo/__tests__/fixtures.test.js.map +0 -1
- package/demo/__tests__/samples.test.d.ts.map +0 -1
- package/demo/client.d.ts +0 -29
- package/demo/client.d.ts.map +0 -1
- package/demo/client.js +0 -52
- package/demo/client.js.map +0 -1
- package/demo/fixtures.d.ts +0 -194
- package/demo/fixtures.d.ts.map +0 -1
- package/demo/fixtures.js +0 -267
- package/demo/fixtures.js.map +0 -1
- package/demo/index.d.ts +0 -6
- package/demo/index.d.ts.map +0 -1
- package/demo/index.js +0 -6
- package/demo/index.js.map +0 -1
- package/demo/transport.d.ts +0 -59
- package/demo/transport.d.ts.map +0 -1
- package/demo/transport.js +0 -75
- package/demo/transport.js.map +0 -1
- package/demo/types.d.ts +0 -62
- package/demo/types.d.ts.map +0 -1
- package/demo/types.js +0 -16
- package/demo/types.js.map +0 -1
- package/src/demo/__tests__/demo-client.test.tsx +0 -213
- package/src/demo/__tests__/fixtures.test.ts +0 -214
- package/src/demo/client.ts +0 -78
- package/src/demo/fixtures.ts +0 -409
- package/src/demo/index.ts +0 -12
- package/src/demo/transport.ts +0 -116
- package/src/demo/types.ts +0 -69
- /package/src/{demo → test}/__tests__/samples.test.ts +0 -0
- /package/{demo → test}/__tests__/samples.test.d.ts +0 -0
- /package/{demo → test}/__tests__/samples.test.js +0 -0
package/demo/fixtures.js
DELETED
|
@@ -1,267 +0,0 @@
|
|
|
1
|
-
import { AgentCommandController } from "@stigmer/protos/ai/stigmer/agentic/agent/v1/command_pb";
|
|
2
|
-
import { AgentQueryController } from "@stigmer/protos/ai/stigmer/agentic/agent/v1/query_pb";
|
|
3
|
-
import { AgentExecutionCommandController } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/command_pb";
|
|
4
|
-
import { AgentExecutionQueryController } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/query_pb";
|
|
5
|
-
import { AgentInstanceCommandController } from "@stigmer/protos/ai/stigmer/agentic/agentinstance/v1/command_pb";
|
|
6
|
-
import { AgentInstanceQueryController } from "@stigmer/protos/ai/stigmer/agentic/agentinstance/v1/query_pb";
|
|
7
|
-
import { EnvironmentCommandController } from "@stigmer/protos/ai/stigmer/agentic/environment/v1/command_pb";
|
|
8
|
-
import { EnvironmentQueryController } from "@stigmer/protos/ai/stigmer/agentic/environment/v1/query_pb";
|
|
9
|
-
import { McpServerCommandController } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/command_pb";
|
|
10
|
-
import { McpServerQueryController } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/query_pb";
|
|
11
|
-
import { SessionCommandController } from "@stigmer/protos/ai/stigmer/agentic/session/v1/command_pb";
|
|
12
|
-
import { SessionQueryController } from "@stigmer/protos/ai/stigmer/agentic/session/v1/query_pb";
|
|
13
|
-
import { SkillCommandController } from "@stigmer/protos/ai/stigmer/agentic/skill/v1/command_pb";
|
|
14
|
-
import { SkillQueryController } from "@stigmer/protos/ai/stigmer/agentic/skill/v1/query_pb";
|
|
15
|
-
import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
|
|
16
|
-
import { ApiKeyCommandController } from "@stigmer/protos/ai/stigmer/iam/apikey/v1/command_pb";
|
|
17
|
-
import { ApiKeyQueryController } from "@stigmer/protos/ai/stigmer/iam/apikey/v1/query_pb";
|
|
18
|
-
import { GitHubService } from "@stigmer/protos/ai/stigmer/platform/github/v1/service_pb";
|
|
19
|
-
import { SearchService } from "@stigmer/protos/ai/stigmer/search/v1/query_pb";
|
|
20
|
-
import { OrganizationCommandController } from "@stigmer/protos/ai/stigmer/tenancy/organization/v1/command_pb";
|
|
21
|
-
import { rpcKey } from "./types";
|
|
22
|
-
// ---------------------------------------------------------------------------
|
|
23
|
-
// Internal helpers
|
|
24
|
-
// ---------------------------------------------------------------------------
|
|
25
|
-
function unarySpec(service, method, handler) {
|
|
26
|
-
return { key: rpcKey(service, method), entry: { unary: handler } };
|
|
27
|
-
}
|
|
28
|
-
function streamSpec(service, method, handler) {
|
|
29
|
-
return { key: rpcKey(service, method), entry: { stream: handler } };
|
|
30
|
-
}
|
|
31
|
-
function searchListSpec(kind, handler) {
|
|
32
|
-
return {
|
|
33
|
-
key: rpcKey(SearchService, "search"),
|
|
34
|
-
entry: { unary: handler },
|
|
35
|
-
searchResourceKind: kind,
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
// ---------------------------------------------------------------------------
|
|
39
|
-
// Fixture entry helpers — organized by resource domain
|
|
40
|
-
// ---------------------------------------------------------------------------
|
|
41
|
-
/**
|
|
42
|
-
* Fixture entry helpers mirroring the `Stigmer` SDK client shape.
|
|
43
|
-
*
|
|
44
|
-
* Each method wraps a user-provided handler into a {@link FixtureSpec}
|
|
45
|
-
* that {@link buildScenario} assembles into a {@link DemoScenario}.
|
|
46
|
-
*
|
|
47
|
-
* Method names match the SDK client methods (e.g. `fixtures.session.get`
|
|
48
|
-
* mirrors `client.session.get`). JSDoc on each method documents which
|
|
49
|
-
* React hooks consume that RPC.
|
|
50
|
-
*
|
|
51
|
-
* @example
|
|
52
|
-
* ```ts
|
|
53
|
-
* import { fixtures, buildScenario, createDemoClient } from "@stigmer/react/demo";
|
|
54
|
-
*
|
|
55
|
-
* const scenario = buildScenario(
|
|
56
|
-
* fixtures.session.get(() => mySession),
|
|
57
|
-
* fixtures.agentExecution.listBySession(() => myExecutionList),
|
|
58
|
-
* fixtures.agentExecution.subscribe(() => [snapshot1, snapshot2]),
|
|
59
|
-
* );
|
|
60
|
-
* const client = createDemoClient(scenario);
|
|
61
|
-
* ```
|
|
62
|
-
*/
|
|
63
|
-
export const fixtures = {
|
|
64
|
-
// ---- Session ----
|
|
65
|
-
session: {
|
|
66
|
-
/** Hooks: `useSession`, `useSessionConversation` */
|
|
67
|
-
get: (handler) => unarySpec(SessionQueryController, "get", handler),
|
|
68
|
-
/** Hooks: `useSessionList` */
|
|
69
|
-
list: (handler) => unarySpec(SessionQueryController, "list", handler),
|
|
70
|
-
/** Hooks: `useCreateSession` */
|
|
71
|
-
create: (handler) => unarySpec(SessionCommandController, "create", handler),
|
|
72
|
-
/** Hooks: `useUpdateSession`, `useSessionConversation` */
|
|
73
|
-
update: (handler) => unarySpec(SessionCommandController, "update", handler),
|
|
74
|
-
},
|
|
75
|
-
// ---- Agent Execution ----
|
|
76
|
-
agentExecution: {
|
|
77
|
-
/** Hooks: `useCreateAgentExecution` */
|
|
78
|
-
create: (handler) => unarySpec(AgentExecutionCommandController, "create", handler),
|
|
79
|
-
/** Hooks: `useSessionExecutions`, `useSessionConversation` */
|
|
80
|
-
listBySession: (handler) => unarySpec(AgentExecutionQueryController, "listBySession", handler),
|
|
81
|
-
/**
|
|
82
|
-
* Hooks: `useExecutionStream`, `useSessionConversation`
|
|
83
|
-
*
|
|
84
|
-
* The handler returns an **array** of `AgentExecution` snapshots that
|
|
85
|
-
* the transport yields as a server stream.
|
|
86
|
-
*/
|
|
87
|
-
subscribe: (handler) => streamSpec(AgentExecutionQueryController, "subscribe", handler),
|
|
88
|
-
/** Hooks: `useSubmitApproval`, `useSessionConversation` */
|
|
89
|
-
submitApproval: (handler) => unarySpec(AgentExecutionCommandController, "submitApproval", handler),
|
|
90
|
-
/** Hooks: `useArtifactContent`, `useDetectSkillPackage` */
|
|
91
|
-
getArtifactContent: (handler) => unarySpec(AgentExecutionQueryController, "getArtifactContent", handler),
|
|
92
|
-
/** Hooks: `useAttachments` */
|
|
93
|
-
uploadAttachment: (handler) => unarySpec(AgentExecutionCommandController, "uploadAttachment", handler),
|
|
94
|
-
},
|
|
95
|
-
// ---- Agent ----
|
|
96
|
-
agent: {
|
|
97
|
-
/** Hooks: `useAgentRefFromSession` */
|
|
98
|
-
get: (handler) => unarySpec(AgentQueryController, "get", handler),
|
|
99
|
-
/** Hooks: `useAgent`, `useCreateSession`, `useAgentSetup` */
|
|
100
|
-
getByReference: (handler) => unarySpec(AgentQueryController, "getByReference", handler),
|
|
101
|
-
/** Hooks: `useDefaultAgent` */
|
|
102
|
-
getDefault: (handler) => unarySpec(AgentQueryController, "getDefault", handler),
|
|
103
|
-
/**
|
|
104
|
-
* Hooks: `useAgentList`, `useAgentSearch`, `useAgentCount`
|
|
105
|
-
*
|
|
106
|
-
* Routes through `SearchService` — use {@link buildScenario} to avoid
|
|
107
|
-
* key collisions with `fixtures.skill.list` and `fixtures.mcpServer.list`.
|
|
108
|
-
*/
|
|
109
|
-
list: (handler) => searchListSpec(ApiResourceKind.agent, handler),
|
|
110
|
-
/** Hooks: `useApplyResource` */
|
|
111
|
-
apply: (handler) => unarySpec(AgentCommandController, "apply", handler),
|
|
112
|
-
/** Hooks: `useUpdateVisibility` (when kind is Agent) */
|
|
113
|
-
updateVisibility: (handler) => unarySpec(AgentCommandController, "updateVisibility", handler),
|
|
114
|
-
},
|
|
115
|
-
// ---- Skill ----
|
|
116
|
-
skill: {
|
|
117
|
-
/** Hooks: `useSkill` */
|
|
118
|
-
getByReference: (handler) => unarySpec(SkillQueryController, "getByReference", handler),
|
|
119
|
-
/**
|
|
120
|
-
* Hooks: `useSkillList`, `useSkillSearch`, `useSkillCount`
|
|
121
|
-
*
|
|
122
|
-
* Routes through `SearchService` — use {@link buildScenario} to avoid
|
|
123
|
-
* key collisions with `fixtures.agent.list` and `fixtures.mcpServer.list`.
|
|
124
|
-
*/
|
|
125
|
-
list: (handler) => searchListSpec(ApiResourceKind.skill, handler),
|
|
126
|
-
/** Hooks: `useApplyResource` (when kind is Skill) */
|
|
127
|
-
pushFromExecutionArtifact: (handler) => unarySpec(SkillCommandController, "pushFromExecutionArtifact", handler),
|
|
128
|
-
/** Hooks: `useUpdateVisibility` (when kind is Skill) */
|
|
129
|
-
updateVisibility: (handler) => unarySpec(SkillCommandController, "updateVisibility", handler),
|
|
130
|
-
},
|
|
131
|
-
// ---- MCP Server ----
|
|
132
|
-
mcpServer: {
|
|
133
|
-
/** Hooks: `useMcpServer`, `useMcpServerSetup` */
|
|
134
|
-
getByReference: (handler) => unarySpec(McpServerQueryController, "getByReference", handler),
|
|
135
|
-
/**
|
|
136
|
-
* Hooks: `useMcpServerList`, `useMcpServerSearch`, `useMcpServerCount`
|
|
137
|
-
*
|
|
138
|
-
* Routes through `SearchService` — use {@link buildScenario} to avoid
|
|
139
|
-
* key collisions with `fixtures.agent.list` and `fixtures.skill.list`.
|
|
140
|
-
*/
|
|
141
|
-
list: (handler) => searchListSpec(ApiResourceKind.mcp_server, handler),
|
|
142
|
-
/** Hooks: `useMcpServerConnect` */
|
|
143
|
-
connect: (handler) => unarySpec(McpServerCommandController, "connect", handler),
|
|
144
|
-
/** Hooks: `useApplyResource` (when kind is McpServer) */
|
|
145
|
-
apply: (handler) => unarySpec(McpServerCommandController, "apply", handler),
|
|
146
|
-
/** Hooks: `useUpdateVisibility` (when kind is McpServer) */
|
|
147
|
-
updateVisibility: (handler) => unarySpec(McpServerCommandController, "updateVisibility", handler),
|
|
148
|
-
/** Hooks: `useOAuthGrantStatus` */
|
|
149
|
-
getOAuthGrantStatus: (handler) => unarySpec(McpServerQueryController, "getOAuthGrantStatus", handler),
|
|
150
|
-
/** Hooks: `useOrgOAuthApp` */
|
|
151
|
-
getOrgOAuthApp: (handler) => unarySpec(McpServerQueryController, "getOrgOAuthApp", handler),
|
|
152
|
-
},
|
|
153
|
-
// ---- Environment ----
|
|
154
|
-
environment: {
|
|
155
|
-
/** Components: `EnvironmentVariableEditor` */
|
|
156
|
-
get: (handler) => unarySpec(EnvironmentQueryController, "get", handler),
|
|
157
|
-
/** Hooks: `useEnvironment` */
|
|
158
|
-
getByReference: (handler) => unarySpec(EnvironmentQueryController, "getByReference", handler),
|
|
159
|
-
/** Hooks: `useEnvironmentList`, `usePersonalEnvironment` */
|
|
160
|
-
list: (handler) => unarySpec(EnvironmentQueryController, "list", handler),
|
|
161
|
-
/** Hooks: `useCreateEnvironment`, `usePersonalEnvironment` */
|
|
162
|
-
create: (handler) => unarySpec(EnvironmentCommandController, "create", handler),
|
|
163
|
-
/** Hooks: `useUpdateEnvironment` */
|
|
164
|
-
update: (handler) => unarySpec(EnvironmentCommandController, "update", handler),
|
|
165
|
-
/** Hooks: `useUpdateEnvironmentVariables`, `usePersonalEnvironment` */
|
|
166
|
-
updateVariables: (handler) => unarySpec(EnvironmentCommandController, "updateVariables", handler),
|
|
167
|
-
/** Hooks: `useRemoveEnvironmentVariables`, `usePersonalEnvironment` */
|
|
168
|
-
removeVariables: (handler) => unarySpec(EnvironmentCommandController, "removeVariables", handler),
|
|
169
|
-
/** Hooks: `useRevealSecretValue`, `useGitHubConnection` */
|
|
170
|
-
getSecretValue: (handler) => unarySpec(EnvironmentQueryController, "getSecretValue", handler),
|
|
171
|
-
},
|
|
172
|
-
// ---- Agent Instance ----
|
|
173
|
-
agentInstance: {
|
|
174
|
-
/** Hooks: `useAgentRefFromSession` */
|
|
175
|
-
get: (handler) => unarySpec(AgentInstanceQueryController, "get", handler),
|
|
176
|
-
/** Hooks: `useAgentInstance` */
|
|
177
|
-
getByReference: (handler) => unarySpec(AgentInstanceQueryController, "getByReference", handler),
|
|
178
|
-
/** Hooks: `useAgentInstanceList`, `useAgentSetup` */
|
|
179
|
-
list: (handler) => unarySpec(AgentInstanceQueryController, "list", handler),
|
|
180
|
-
/** Hooks: `useCreateAgentInstance`, `usePersonalAgentInstance`, `useAgentSetup` */
|
|
181
|
-
create: (handler) => unarySpec(AgentInstanceCommandController, "create", handler),
|
|
182
|
-
},
|
|
183
|
-
// ---- Organization ----
|
|
184
|
-
organization: {
|
|
185
|
-
/** Hooks: `useCreateOrganization` */
|
|
186
|
-
create: (handler) => unarySpec(OrganizationCommandController, "create", handler),
|
|
187
|
-
},
|
|
188
|
-
// ---- API Key ----
|
|
189
|
-
apiKey: {
|
|
190
|
-
/** Hooks: `useApiKeyList` */
|
|
191
|
-
findAll: (handler) => unarySpec(ApiKeyQueryController, "findAll", handler),
|
|
192
|
-
/** Hooks: `useCreateApiKey` */
|
|
193
|
-
create: (handler) => unarySpec(ApiKeyCommandController, "create", handler),
|
|
194
|
-
/** Hooks: `useDeleteApiKey` */
|
|
195
|
-
delete: (handler) => unarySpec(ApiKeyCommandController, "delete", handler),
|
|
196
|
-
},
|
|
197
|
-
// ---- GitHub ----
|
|
198
|
-
github: {
|
|
199
|
-
/** Hooks: `useGitHubConnection` */
|
|
200
|
-
getOAuthAuthorizeUrl: (handler) => unarySpec(GitHubService, "getOAuthAuthorizeUrl", handler),
|
|
201
|
-
/** Hooks: `useGitHubConnection` */
|
|
202
|
-
exchangeOAuthCode: (handler) => unarySpec(GitHubService, "exchangeOAuthCode", handler),
|
|
203
|
-
},
|
|
204
|
-
};
|
|
205
|
-
// ---------------------------------------------------------------------------
|
|
206
|
-
// Scenario builder
|
|
207
|
-
// ---------------------------------------------------------------------------
|
|
208
|
-
/**
|
|
209
|
-
* Assemble {@link FixtureSpec} entries into a {@link DemoScenario}.
|
|
210
|
-
*
|
|
211
|
-
* This is the recommended way to construct scenarios because it correctly
|
|
212
|
-
* merges search-backed list fixtures (`agent.list`, `skill.list`,
|
|
213
|
-
* `mcpServer.list`) that share the same underlying `SearchService` RPC.
|
|
214
|
-
* Using `new Map([...])` directly with these helpers would cause silent
|
|
215
|
-
* key collisions where the last entry wins.
|
|
216
|
-
*
|
|
217
|
-
* @example
|
|
218
|
-
* ```ts
|
|
219
|
-
* import { fixtures, buildScenario, createDemoClient } from "@stigmer/react/demo";
|
|
220
|
-
*
|
|
221
|
-
* const scenario = buildScenario(
|
|
222
|
-
* fixtures.session.get(() => mySession),
|
|
223
|
-
* fixtures.agent.list(() => myAgentSearchResponse),
|
|
224
|
-
* fixtures.skill.list(() => mySkillSearchResponse),
|
|
225
|
-
* );
|
|
226
|
-
* const client = createDemoClient(scenario);
|
|
227
|
-
* ```
|
|
228
|
-
*/
|
|
229
|
-
export function buildScenario(...specs) {
|
|
230
|
-
const entries = [];
|
|
231
|
-
const searchHandlers = new Map();
|
|
232
|
-
for (const spec of specs) {
|
|
233
|
-
if (spec.searchResourceKind !== undefined) {
|
|
234
|
-
if (spec.entry.unary) {
|
|
235
|
-
searchHandlers.set(spec.searchResourceKind, spec.entry.unary);
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
else {
|
|
239
|
-
entries.push([spec.key, spec.entry]);
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
if (searchHandlers.size > 0) {
|
|
243
|
-
const searchKey = rpcKey(SearchService, "search");
|
|
244
|
-
entries.push([
|
|
245
|
-
searchKey,
|
|
246
|
-
{
|
|
247
|
-
unary: (request) => {
|
|
248
|
-
const req = request;
|
|
249
|
-
const kind = req.kinds?.[0];
|
|
250
|
-
if (kind !== undefined) {
|
|
251
|
-
const handler = searchHandlers.get(kind);
|
|
252
|
-
if (handler)
|
|
253
|
-
return handler(request);
|
|
254
|
-
}
|
|
255
|
-
const registered = [...searchHandlers.keys()]
|
|
256
|
-
.map((k) => ApiResourceKind[k])
|
|
257
|
-
.join(", ");
|
|
258
|
-
throw new Error(`No search fixture for resource kind ${kind !== undefined ? ApiResourceKind[kind] ?? kind : "(none)"}. ` +
|
|
259
|
-
`Registered kinds: ${registered || "(none)"}. ` +
|
|
260
|
-
`Add a fixture with fixtures.agent.list(), fixtures.skill.list(), or fixtures.mcpServer.list().`);
|
|
261
|
-
},
|
|
262
|
-
},
|
|
263
|
-
]);
|
|
264
|
-
}
|
|
265
|
-
return { fixtures: new Map(entries) };
|
|
266
|
-
}
|
|
267
|
-
//# sourceMappingURL=fixtures.js.map
|
package/demo/fixtures.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../src/demo/fixtures.ts"],"names":[],"mappings":"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"}
|
package/demo/index.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export { createDemoClient } from "./client";
|
|
2
|
-
export { buildScenario, fixtures, type FixtureSpec } from "./fixtures";
|
|
3
|
-
export { samples } from "./samples";
|
|
4
|
-
export { DemoTransport } from "./transport";
|
|
5
|
-
export { rpcKey, type DemoScenario, type FixtureEntry, type FixtureRegistry, type StreamFixtureHandler, type UnaryFixtureHandler, } from "./types";
|
|
6
|
-
//# sourceMappingURL=index.d.ts.map
|
package/demo/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/demo/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,MAAM,EACN,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,GACzB,MAAM,SAAS,CAAC"}
|
package/demo/index.js
DELETED
package/demo/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/demo/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAoB,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,MAAM,GAMP,MAAM,SAAS,CAAC"}
|
package/demo/transport.d.ts
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import type { FixtureRegistry } from "./types";
|
|
2
|
-
/**
|
|
3
|
-
* Minimal shape of a Connect-RPC method descriptor.
|
|
4
|
-
*
|
|
5
|
-
* Matches the relevant fields of `DescMethodUnary` and `DescMethodStreaming`
|
|
6
|
-
* from `@bufbuild/protobuf` without importing the full generic types.
|
|
7
|
-
* The transport only needs the service type name and method name to
|
|
8
|
-
* look up fixture handlers.
|
|
9
|
-
*/
|
|
10
|
-
interface RpcMethodDescriptor {
|
|
11
|
-
readonly parent: {
|
|
12
|
-
readonly typeName: string;
|
|
13
|
-
};
|
|
14
|
-
readonly name: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* A Connect-RPC `Transport` backed by in-memory fixture data.
|
|
18
|
-
*
|
|
19
|
-
* Implements the two-method `Transport` interface (`unary` and `stream`)
|
|
20
|
-
* from `@connectrpc/connect`. When a generated client issues an RPC,
|
|
21
|
-
* the transport looks up the matching fixture handler by
|
|
22
|
-
* `"<service typeName>/<method name>"` and returns its result.
|
|
23
|
-
*
|
|
24
|
-
* Methods without registered fixtures throw a descriptive error
|
|
25
|
-
* identifying the missing key and how to register it.
|
|
26
|
-
*
|
|
27
|
-
* This class is not typed as `implements Transport` because the interface
|
|
28
|
-
* uses complex generics from `@bufbuild/protobuf` that would force a
|
|
29
|
-
* runtime dependency on `@connectrpc/connect` in `@stigmer/react`.
|
|
30
|
-
* The runtime shape is fully compatible — the client factory casts the
|
|
31
|
-
* instance to `Transport` at the single point where it is passed to
|
|
32
|
-
* generated client constructors.
|
|
33
|
-
*/
|
|
34
|
-
export declare class DemoTransport {
|
|
35
|
-
private readonly fixtures;
|
|
36
|
-
constructor(fixtures: FixtureRegistry);
|
|
37
|
-
unary(method: RpcMethodDescriptor, _signal: AbortSignal | undefined, _timeoutMs: number | undefined, _header: HeadersInit | undefined, input: unknown): Promise<{
|
|
38
|
-
stream: false;
|
|
39
|
-
message: unknown;
|
|
40
|
-
method: RpcMethodDescriptor;
|
|
41
|
-
service: {
|
|
42
|
-
readonly typeName: string;
|
|
43
|
-
};
|
|
44
|
-
header: Headers;
|
|
45
|
-
trailer: Headers;
|
|
46
|
-
}>;
|
|
47
|
-
stream(method: RpcMethodDescriptor, _signal: AbortSignal | undefined, _timeoutMs: number | undefined, _header: HeadersInit | undefined, input: AsyncIterable<unknown>): Promise<{
|
|
48
|
-
stream: true;
|
|
49
|
-
message: AsyncGenerator<unknown, any, any>;
|
|
50
|
-
method: RpcMethodDescriptor;
|
|
51
|
-
service: {
|
|
52
|
-
readonly typeName: string;
|
|
53
|
-
};
|
|
54
|
-
header: Headers;
|
|
55
|
-
trailer: Headers;
|
|
56
|
-
}>;
|
|
57
|
-
}
|
|
58
|
-
export {};
|
|
59
|
-
//# sourceMappingURL=transport.d.ts.map
|
package/demo/transport.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/demo/transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C;;;;;;;GAOG;AACH,UAAU,mBAAmB;IAC3B,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAUD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkB;gBAE/B,QAAQ,EAAE,eAAe;IAI/B,KAAK,CACT,MAAM,EAAE,mBAAmB,EAC3B,OAAO,EAAE,WAAW,GAAG,SAAS,EAChC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,WAAW,GAAG,SAAS,EAChC,KAAK,EAAE,OAAO;;;;;+BA1CsB,MAAM;;;;;IAgEtC,MAAM,CACV,MAAM,EAAE,mBAAmB,EAC3B,OAAO,EAAE,WAAW,GAAG,SAAS,EAChC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,WAAW,GAAG,SAAS,EAChC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC;;;;;+BArEO,MAAM;;;;;CAkG7C"}
|
package/demo/transport.js
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
function fixtureKey(method) {
|
|
2
|
-
return `${method.parent.typeName}/${method.name}`;
|
|
3
|
-
}
|
|
4
|
-
function shortServiceName(method) {
|
|
5
|
-
return method.parent.typeName.split(".").pop() ?? method.parent.typeName;
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* A Connect-RPC `Transport` backed by in-memory fixture data.
|
|
9
|
-
*
|
|
10
|
-
* Implements the two-method `Transport` interface (`unary` and `stream`)
|
|
11
|
-
* from `@connectrpc/connect`. When a generated client issues an RPC,
|
|
12
|
-
* the transport looks up the matching fixture handler by
|
|
13
|
-
* `"<service typeName>/<method name>"` and returns its result.
|
|
14
|
-
*
|
|
15
|
-
* Methods without registered fixtures throw a descriptive error
|
|
16
|
-
* identifying the missing key and how to register it.
|
|
17
|
-
*
|
|
18
|
-
* This class is not typed as `implements Transport` because the interface
|
|
19
|
-
* uses complex generics from `@bufbuild/protobuf` that would force a
|
|
20
|
-
* runtime dependency on `@connectrpc/connect` in `@stigmer/react`.
|
|
21
|
-
* The runtime shape is fully compatible — the client factory casts the
|
|
22
|
-
* instance to `Transport` at the single point where it is passed to
|
|
23
|
-
* generated client constructors.
|
|
24
|
-
*/
|
|
25
|
-
export class DemoTransport {
|
|
26
|
-
fixtures;
|
|
27
|
-
constructor(fixtures) {
|
|
28
|
-
this.fixtures = fixtures;
|
|
29
|
-
}
|
|
30
|
-
async unary(method, _signal, _timeoutMs, _header, input) {
|
|
31
|
-
const key = fixtureKey(method);
|
|
32
|
-
const entry = this.fixtures.get(key);
|
|
33
|
-
if (!entry?.unary) {
|
|
34
|
-
throw new Error(`No demo fixture for ${shortServiceName(method)}/${method.name}. ` +
|
|
35
|
-
`Add a fixture with key "${key}" to your DemoScenario.`);
|
|
36
|
-
}
|
|
37
|
-
return {
|
|
38
|
-
stream: false,
|
|
39
|
-
message: entry.unary(input),
|
|
40
|
-
method,
|
|
41
|
-
service: method.parent,
|
|
42
|
-
header: new Headers(),
|
|
43
|
-
trailer: new Headers(),
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
async stream(method, _signal, _timeoutMs, _header, input) {
|
|
47
|
-
const key = fixtureKey(method);
|
|
48
|
-
const entry = this.fixtures.get(key);
|
|
49
|
-
if (!entry?.stream) {
|
|
50
|
-
throw new Error(`No demo fixture for ${shortServiceName(method)}/${method.name}. ` +
|
|
51
|
-
`Add a fixture with key "${key}" to your DemoScenario.`);
|
|
52
|
-
}
|
|
53
|
-
// Server-streaming RPCs send a single request message wrapped in an
|
|
54
|
-
// async iterable by createClient. Extract it for the fixture handler.
|
|
55
|
-
let request;
|
|
56
|
-
for await (const msg of input) {
|
|
57
|
-
request = msg;
|
|
58
|
-
break;
|
|
59
|
-
}
|
|
60
|
-
return {
|
|
61
|
-
stream: true,
|
|
62
|
-
message: toAsyncIterable(entry.stream(request)),
|
|
63
|
-
method,
|
|
64
|
-
service: method.parent,
|
|
65
|
-
header: new Headers(),
|
|
66
|
-
trailer: new Headers(),
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
async function* toAsyncIterable(items) {
|
|
71
|
-
for (const item of items) {
|
|
72
|
-
yield item;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
//# sourceMappingURL=transport.js.map
|
package/demo/transport.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/demo/transport.ts"],"names":[],"mappings":"AAeA,SAAS,UAAU,CAAC,MAA2B;IAC7C,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;AACpD,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA2B;IACnD,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;AAC3E,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,aAAa;IACP,QAAQ,CAAkB;IAE3C,YAAY,QAAyB;QACnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,KAAK,CACT,MAA2B,EAC3B,OAAgC,EAChC,UAA8B,EAC9B,OAAgC,EAChC,KAAc;QAEd,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAErC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACb,uBAAuB,gBAAgB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI;gBAChE,2BAA2B,GAAG,yBAAyB,CAC1D,CAAC;QACJ,CAAC;QAED,OAAO;YACL,MAAM,EAAE,KAAc;YACtB,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;YAC3B,MAAM;YACN,OAAO,EAAE,MAAM,CAAC,MAAM;YACtB,MAAM,EAAE,IAAI,OAAO,EAAE;YACrB,OAAO,EAAE,IAAI,OAAO,EAAE;SACvB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CACV,MAA2B,EAC3B,OAAgC,EAChC,UAA8B,EAC9B,OAAgC,EAChC,KAA6B;QAE7B,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAErC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CACb,uBAAuB,gBAAgB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI;gBAChE,2BAA2B,GAAG,yBAAyB,CAC1D,CAAC;QACJ,CAAC;QAED,oEAAoE;QACpE,sEAAsE;QACtE,IAAI,OAAgB,CAAC;QACrB,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YAC9B,OAAO,GAAG,GAAG,CAAC;YACd,MAAM;QACR,CAAC;QAED,OAAO;YACL,MAAM,EAAE,IAAa;YACrB,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC/C,MAAM;YACN,OAAO,EAAE,MAAM,CAAC,MAAM;YACtB,MAAM,EAAE,IAAI,OAAO,EAAE;YACrB,OAAO,EAAE,IAAI,OAAO,EAAE;SACvB,CAAC;IACJ,CAAC;CACF;AAED,KAAK,SAAS,CAAC,CAAC,eAAe,CAAI,KAAU;IAC3C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,CAAC;IACb,CAAC;AACH,CAAC"}
|
package/demo/types.d.ts
DELETED
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Handler for a unary (request-response) RPC fixture.
|
|
3
|
-
*
|
|
4
|
-
* Receives the protobuf request message and returns the response message.
|
|
5
|
-
* Build responses with `create()` from `@bufbuild/protobuf` to ensure
|
|
6
|
-
* correct message shapes.
|
|
7
|
-
*/
|
|
8
|
-
export type UnaryFixtureHandler = (request: unknown) => unknown;
|
|
9
|
-
/**
|
|
10
|
-
* Handler for a server-streaming RPC fixture.
|
|
11
|
-
*
|
|
12
|
-
* Receives the protobuf request message and returns an array of response
|
|
13
|
-
* messages that the transport yields as an async stream.
|
|
14
|
-
*/
|
|
15
|
-
export type StreamFixtureHandler = (request: unknown) => unknown[];
|
|
16
|
-
/**
|
|
17
|
-
* Fixture configuration for a single RPC method.
|
|
18
|
-
*
|
|
19
|
-
* Register `unary` for request-response RPCs, or `stream` for
|
|
20
|
-
* server-streaming RPCs. The transport checks the appropriate handler
|
|
21
|
-
* based on how the generated client invokes the method.
|
|
22
|
-
*/
|
|
23
|
-
export interface FixtureEntry {
|
|
24
|
-
readonly unary?: UnaryFixtureHandler;
|
|
25
|
-
readonly stream?: StreamFixtureHandler;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Map of fully-qualified RPC method keys to fixture handlers.
|
|
29
|
-
*
|
|
30
|
-
* Keys use the format `"<proto service typeName>/<method name>"`, e.g.:
|
|
31
|
-
* ```
|
|
32
|
-
* "ai.stigmer.agentic.session.v1.SessionQueryController/get"
|
|
33
|
-
* ```
|
|
34
|
-
*
|
|
35
|
-
* Use {@link rpcKey} to construct keys from proto service descriptors.
|
|
36
|
-
*/
|
|
37
|
-
export type FixtureRegistry = ReadonlyMap<string, FixtureEntry>;
|
|
38
|
-
/**
|
|
39
|
-
* A collection of RPC fixture handlers that powers a demo client.
|
|
40
|
-
*
|
|
41
|
-
* Pass to {@link createDemoClient} to obtain a `Stigmer`-compatible
|
|
42
|
-
* client that resolves RPCs from in-memory data instead of a live backend.
|
|
43
|
-
*/
|
|
44
|
-
export interface DemoScenario {
|
|
45
|
-
readonly fixtures: FixtureRegistry;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Construct a fixture registry key from a proto service descriptor
|
|
49
|
-
* and method name.
|
|
50
|
-
*
|
|
51
|
-
* @example
|
|
52
|
-
* ```ts
|
|
53
|
-
* import { SessionQueryController } from "@stigmer/protos/ai/stigmer/agentic/session/v1/query_pb";
|
|
54
|
-
*
|
|
55
|
-
* rpcKey(SessionQueryController, "get")
|
|
56
|
-
* // → "ai.stigmer.agentic.session.v1.SessionQueryController/get"
|
|
57
|
-
* ```
|
|
58
|
-
*/
|
|
59
|
-
export declare function rpcKey(service: {
|
|
60
|
-
readonly typeName: string;
|
|
61
|
-
}, method: string): string;
|
|
62
|
-
//# sourceMappingURL=types.d.ts.map
|
package/demo/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/demo/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;AAEhE;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,EAAE,CAAC;AAEnE;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAC;CACxC;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAEhE;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;CACpC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CACpB,OAAO,EAAE;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EACtC,MAAM,EAAE,MAAM,GACb,MAAM,CAER"}
|
package/demo/types.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Construct a fixture registry key from a proto service descriptor
|
|
3
|
-
* and method name.
|
|
4
|
-
*
|
|
5
|
-
* @example
|
|
6
|
-
* ```ts
|
|
7
|
-
* import { SessionQueryController } from "@stigmer/protos/ai/stigmer/agentic/session/v1/query_pb";
|
|
8
|
-
*
|
|
9
|
-
* rpcKey(SessionQueryController, "get")
|
|
10
|
-
* // → "ai.stigmer.agentic.session.v1.SessionQueryController/get"
|
|
11
|
-
* ```
|
|
12
|
-
*/
|
|
13
|
-
export function rpcKey(service, method) {
|
|
14
|
-
return `${service.typeName}/${method}`;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=types.js.map
|
package/demo/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/demo/types.ts"],"names":[],"mappings":"AAmDA;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,MAAM,CACpB,OAAsC,EACtC,MAAc;IAEd,OAAO,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,EAAE,CAAC;AACzC,CAAC"}
|