@stigmer/react 0.0.42 → 0.0.44

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.
Files changed (91) hide show
  1. package/execution/ArtifactContentRenderer.d.ts +58 -0
  2. package/execution/ArtifactContentRenderer.d.ts.map +1 -0
  3. package/execution/ArtifactContentRenderer.js +163 -0
  4. package/execution/ArtifactContentRenderer.js.map +1 -0
  5. package/execution/ArtifactPreviewModal.d.ts +3 -2
  6. package/execution/ArtifactPreviewModal.d.ts.map +1 -1
  7. package/execution/ArtifactPreviewModal.js +11 -62
  8. package/execution/ArtifactPreviewModal.js.map +1 -1
  9. package/execution/ExecutionPhaseBadge.js +1 -1
  10. package/execution/ExecutionPhaseBadge.js.map +1 -1
  11. package/execution/MessageThread.d.ts.map +1 -1
  12. package/execution/MessageThread.js +21 -2
  13. package/execution/MessageThread.js.map +1 -1
  14. package/execution/SetupProgress.d.ts +35 -0
  15. package/execution/SetupProgress.d.ts.map +1 -0
  16. package/execution/SetupProgress.js +65 -0
  17. package/execution/SetupProgress.js.map +1 -0
  18. package/execution/ToolCallGroup.d.ts.map +1 -1
  19. package/execution/ToolCallGroup.js +9 -1
  20. package/execution/ToolCallGroup.js.map +1 -1
  21. package/execution/ToolCallItem.js +8 -3
  22. package/execution/ToolCallItem.js.map +1 -1
  23. package/execution/artifact-utils.d.ts +50 -0
  24. package/execution/artifact-utils.d.ts.map +1 -1
  25. package/execution/artifact-utils.js +67 -5
  26. package/execution/artifact-utils.js.map +1 -1
  27. package/execution/index.d.ts +6 -1
  28. package/execution/index.d.ts.map +1 -1
  29. package/execution/index.js +3 -1
  30. package/execution/index.js.map +1 -1
  31. package/index.d.ts +4 -4
  32. package/index.d.ts.map +1 -1
  33. package/index.js +2 -2
  34. package/index.js.map +1 -1
  35. package/internal/markdown-components.d.ts +10 -0
  36. package/internal/markdown-components.d.ts.map +1 -1
  37. package/internal/markdown-components.js +13 -0
  38. package/internal/markdown-components.js.map +1 -1
  39. package/mcp-server/ApprovalPolicyGeneratorPanel.d.ts +34 -0
  40. package/mcp-server/ApprovalPolicyGeneratorPanel.d.ts.map +1 -0
  41. package/mcp-server/ApprovalPolicyGeneratorPanel.js +55 -0
  42. package/mcp-server/ApprovalPolicyGeneratorPanel.js.map +1 -0
  43. package/mcp-server/McpServerDetailView.d.ts.map +1 -1
  44. package/mcp-server/McpServerDetailView.js +101 -2
  45. package/mcp-server/McpServerDetailView.js.map +1 -1
  46. package/mcp-server/index.d.ts +8 -0
  47. package/mcp-server/index.d.ts.map +1 -1
  48. package/mcp-server/index.js +4 -0
  49. package/mcp-server/index.js.map +1 -1
  50. package/mcp-server/useDiscoverCapabilities.d.ts +59 -0
  51. package/mcp-server/useDiscoverCapabilities.d.ts.map +1 -0
  52. package/mcp-server/useDiscoverCapabilities.js +77 -0
  53. package/mcp-server/useDiscoverCapabilities.js.map +1 -0
  54. package/mcp-server/useMcpServerCredentials.d.ts +63 -0
  55. package/mcp-server/useMcpServerCredentials.d.ts.map +1 -0
  56. package/mcp-server/useMcpServerCredentials.js +64 -0
  57. package/mcp-server/useMcpServerCredentials.js.map +1 -0
  58. package/mcp-server/useTriggerApprovalPolicySession.d.ts +42 -0
  59. package/mcp-server/useTriggerApprovalPolicySession.d.ts.map +1 -0
  60. package/mcp-server/useTriggerApprovalPolicySession.js +111 -0
  61. package/mcp-server/useTriggerApprovalPolicySession.js.map +1 -0
  62. package/package.json +4 -4
  63. package/session/__tests__/useSessionConversation.test.js +223 -2
  64. package/session/__tests__/useSessionConversation.test.js.map +1 -1
  65. package/session/useSessionConversation.d.ts +8 -1
  66. package/session/useSessionConversation.d.ts.map +1 -1
  67. package/session/useSessionConversation.js +77 -6
  68. package/session/useSessionConversation.js.map +1 -1
  69. package/skill/SkillDetailView.js +2 -2
  70. package/skill/SkillDetailView.js.map +1 -1
  71. package/src/execution/ArtifactContentRenderer.tsx +376 -0
  72. package/src/execution/ArtifactPreviewModal.tsx +22 -114
  73. package/src/execution/ExecutionPhaseBadge.tsx +1 -1
  74. package/src/execution/MessageThread.tsx +35 -3
  75. package/src/execution/SetupProgress.tsx +120 -0
  76. package/src/execution/ToolCallGroup.tsx +15 -1
  77. package/src/execution/ToolCallItem.tsx +10 -3
  78. package/src/execution/artifact-utils.ts +88 -4
  79. package/src/execution/index.ts +9 -0
  80. package/src/index.ts +16 -0
  81. package/src/internal/markdown-components.tsx +15 -0
  82. package/src/mcp-server/ApprovalPolicyGeneratorPanel.tsx +164 -0
  83. package/src/mcp-server/McpServerDetailView.tsx +428 -2
  84. package/src/mcp-server/index.ts +15 -0
  85. package/src/mcp-server/useDiscoverCapabilities.ts +117 -0
  86. package/src/mcp-server/useMcpServerCredentials.ts +108 -0
  87. package/src/mcp-server/useTriggerApprovalPolicySession.ts +161 -0
  88. package/src/session/__tests__/useSessionConversation.test.tsx +355 -2
  89. package/src/session/useSessionConversation.ts +104 -9
  90. package/src/skill/SkillDetailView.tsx +2 -2
  91. package/styles.css +1 -1
@@ -5,6 +5,16 @@ import remarkGfm from "remark-gfm";
5
5
  * Includes GFM (tables, strikethrough, autolinks, task lists).
6
6
  */
7
7
  export declare const REMARK_PLUGINS: (typeof remarkGfm)[];
8
+ /**
9
+ * Strips YAML frontmatter from markdown content.
10
+ *
11
+ * SKILL.md files store metadata (`name`, `description`) in a `---` delimited
12
+ * YAML block at the top. The backend extracts these into separate proto fields,
13
+ * but the raw `skill_md` still contains the block. `react-markdown` does not
14
+ * understand frontmatter and renders it as a plain paragraph — this utility
15
+ * removes it before rendering.
16
+ */
17
+ export declare function stripFrontmatter(content: string): string;
8
18
  /**
9
19
  * Styled react-markdown component overrides for SDK markdown surfaces.
10
20
  *
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-components.d.ts","sourceRoot":"","sources":["../../src/internal/markdown-components.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,SAAS,MAAM,YAAY,CAAC;AAKnC;;;GAGG;AACH,eAAO,MAAM,cAAc,sBAAc,CAAC;AAE1C;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,EAAE,UA8KjC,CAAC"}
1
+ {"version":3,"file":"markdown-components.d.ts","sourceRoot":"","sources":["../../src/internal/markdown-components.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,SAAS,MAAM,YAAY,CAAC;AAKnC;;;GAGG;AACH,eAAO,MAAM,cAAc,sBAAc,CAAC;AAI1C;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,EAAE,UA8KjC,CAAC"}
@@ -6,6 +6,19 @@ import { cn } from "@stigmer/theme";
6
6
  * Includes GFM (tables, strikethrough, autolinks, task lists).
7
7
  */
8
8
  export const REMARK_PLUGINS = [remarkGfm];
9
+ const FRONTMATTER_RE = /^---\r?\n[\s\S]*?\r?\n---\r?\n?/;
10
+ /**
11
+ * Strips YAML frontmatter from markdown content.
12
+ *
13
+ * SKILL.md files store metadata (`name`, `description`) in a `---` delimited
14
+ * YAML block at the top. The backend extracts these into separate proto fields,
15
+ * but the raw `skill_md` still contains the block. `react-markdown` does not
16
+ * understand frontmatter and renders it as a plain paragraph — this utility
17
+ * removes it before rendering.
18
+ */
19
+ export function stripFrontmatter(content) {
20
+ return content.replace(FRONTMATTER_RE, "");
21
+ }
9
22
  /**
10
23
  * Styled react-markdown component overrides for SDK markdown surfaces.
11
24
  *
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-components.js","sourceRoot":"","sources":["../../src/internal/markdown-components.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdown-components.js","sourceRoot":"","sources":["../../src/internal/markdown-components.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ export interface ApprovalPolicyGeneratorPanelProps {
2
+ /** The execution ID to stream. */
3
+ readonly executionId: string;
4
+ /** Called when the user clicks the close/dismiss button. */
5
+ readonly onClose: () => void;
6
+ /** Called once when the execution reaches a terminal phase. */
7
+ readonly onComplete?: () => void;
8
+ /** Additional CSS classes for the root container. */
9
+ readonly className?: string;
10
+ }
11
+ /**
12
+ * Inline panel that streams the approval policy generation execution.
13
+ *
14
+ * Composes {@link useExecutionStream}, {@link MessageThread}, and
15
+ * {@link ExecutionProgress} to show real-time agent progress: thinking,
16
+ * tool calls, generated YAML, and applied changes.
17
+ *
18
+ * When the execution reaches a terminal phase, the `onComplete`
19
+ * callback fires once so the parent can refetch the MCP server to
20
+ * display newly applied policies.
21
+ *
22
+ * @example
23
+ * ```tsx
24
+ * {result && (
25
+ * <ApprovalPolicyGeneratorPanel
26
+ * executionId={result.executionId}
27
+ * onClose={() => setResult(null)}
28
+ * onComplete={() => refetch()}
29
+ * />
30
+ * )}
31
+ * ```
32
+ */
33
+ export declare function ApprovalPolicyGeneratorPanel({ executionId, onClose, onComplete, className, }: ApprovalPolicyGeneratorPanelProps): import("react/jsx-runtime").JSX.Element;
34
+ //# sourceMappingURL=ApprovalPolicyGeneratorPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApprovalPolicyGeneratorPanel.d.ts","sourceRoot":"","sources":["../../src/mcp-server/ApprovalPolicyGeneratorPanel.tsx"],"names":[],"mappings":"AAUA,MAAM,WAAW,iCAAiC;IAChD,kCAAkC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,4DAA4D;IAC5D,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;IAC7B,+DAA+D;IAC/D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACjC,qDAAqD;IACrD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,4BAA4B,CAAC,EAC3C,WAAW,EACX,OAAO,EACP,UAAU,EACV,SAAS,GACV,EAAE,iCAAiC,2CA6EnC"}
@@ -0,0 +1,55 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useEffect, useRef } from "react";
4
+ import { cn } from "@stigmer/theme";
5
+ import { ExecutionPhase } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
6
+ import { useExecutionStream } from "../execution/useExecutionStream";
7
+ import { MessageThread } from "../execution/MessageThread";
8
+ import { ExecutionProgress } from "../execution/ExecutionProgress";
9
+ import { isTerminalPhase } from "../execution/execution-phases";
10
+ /**
11
+ * Inline panel that streams the approval policy generation execution.
12
+ *
13
+ * Composes {@link useExecutionStream}, {@link MessageThread}, and
14
+ * {@link ExecutionProgress} to show real-time agent progress: thinking,
15
+ * tool calls, generated YAML, and applied changes.
16
+ *
17
+ * When the execution reaches a terminal phase, the `onComplete`
18
+ * callback fires once so the parent can refetch the MCP server to
19
+ * display newly applied policies.
20
+ *
21
+ * @example
22
+ * ```tsx
23
+ * {result && (
24
+ * <ApprovalPolicyGeneratorPanel
25
+ * executionId={result.executionId}
26
+ * onClose={() => setResult(null)}
27
+ * onComplete={() => refetch()}
28
+ * />
29
+ * )}
30
+ * ```
31
+ */
32
+ export function ApprovalPolicyGeneratorPanel({ executionId, onClose, onComplete, className, }) {
33
+ const { execution, phase, isStreaming, error, reconnect } = useExecutionStream(executionId);
34
+ const isComplete = isTerminalPhase(phase);
35
+ const completeFiredRef = useRef(false);
36
+ useEffect(() => {
37
+ if (isComplete && onComplete && !completeFiredRef.current) {
38
+ completeFiredRef.current = true;
39
+ onComplete();
40
+ }
41
+ }, [isComplete, onComplete]);
42
+ return (_jsxs("div", { className: cn("flex flex-col overflow-hidden rounded-lg border border-border bg-background", className), children: [_jsxs("div", { className: "flex items-center justify-between border-b border-border px-4 py-3", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(SparklesIcon, { className: "size-4 text-muted-foreground" }), _jsx("h4", { className: "text-sm font-medium text-foreground", children: "Generating Approval Policies" })] }), _jsxs("div", { className: "flex items-center gap-2", children: [execution && (_jsx(ExecutionProgress, { execution: execution, className: "text-xs" })), _jsx("button", { type: "button", onClick: onClose, className: "rounded p-1 text-muted-foreground hover:bg-muted hover:text-foreground", "aria-label": "Close panel", children: _jsx(CloseIcon, { className: "size-4" }) })] })] }), _jsx("div", { className: "flex-1 overflow-hidden", children: error ? (_jsxs("div", { className: "flex flex-col items-center gap-2 p-6 text-center", children: [_jsx("p", { className: "text-sm text-destructive", children: error.message }), _jsx("button", { type: "button", onClick: reconnect, className: "rounded-md bg-primary px-3 py-1.5 text-xs font-medium text-primary-foreground hover:bg-primary/90", children: "Retry" })] })) : (_jsx(MessageThread, { executions: [], activeStreamExecution: execution })) }), isComplete && (_jsx("div", { className: "border-t border-border px-4 py-3", children: _jsx("p", { className: "text-xs text-muted-foreground", children: phase === ExecutionPhase.EXECUTION_COMPLETED
43
+ ? "Approval policies have been generated and applied. The detail view will refresh to show the changes."
44
+ : "Policy generation did not complete successfully. You can retry from the detail page." }) }))] }));
45
+ }
46
+ // ---------------------------------------------------------------------------
47
+ // Inline SVG icons
48
+ // ---------------------------------------------------------------------------
49
+ function SparklesIcon({ className }) {
50
+ return (_jsx("svg", { className: className, viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: _jsx("path", { d: "M8 1v2M8 13v2M1 8h2M13 8h2M3.05 3.05l1.41 1.41M11.54 11.54l1.41 1.41M3.05 12.95l1.41-1.41M11.54 4.46l1.41-1.41" }) }));
51
+ }
52
+ function CloseIcon({ className }) {
53
+ return (_jsx("svg", { className: className, viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: _jsx("path", { d: "m4 4 8 8M12 4l-8 8" }) }));
54
+ }
55
+ //# sourceMappingURL=ApprovalPolicyGeneratorPanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApprovalPolicyGeneratorPanel.js","sourceRoot":"","sources":["../../src/mcp-server/ApprovalPolicyGeneratorPanel.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"McpServerDetailView.d.ts","sourceRoot":"","sources":["../../src/mcp-server/McpServerDetailView.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AAK/F,MAAM,WAAW,wBAAwB;IACvC,kDAAkD;IAClD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACvE;;;;;OAKG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACjE,yDAAyD;IACzD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC,qDAAqD;IACrD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,GAAG,EACH,IAAI,EACJ,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,SAAS,GACV,EAAE,wBAAwB,2CAmE1B"}
1
+ {"version":3,"file":"McpServerDetailView.d.ts","sourceRoot":"","sources":["../../src/mcp-server/McpServerDetailView.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AAY/F,MAAM,WAAW,wBAAwB;IACvC,kDAAkD;IAClD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACvE;;;;;OAKG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACjE,yDAAyD;IACzD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC,qDAAqD;IACrD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,GAAG,EACH,IAAI,EACJ,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,SAAS,GACV,EAAE,wBAAwB,2CAkL1B"}
@@ -1,12 +1,18 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
- import { useEffect, useRef } from "react";
3
+ import { useCallback, useEffect, useRef, useState } from "react";
4
4
  import { cn } from "@stigmer/theme";
5
5
  import { timestampDate } from "@bufbuild/protobuf/wkt";
6
6
  import { ValidationState } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/status_pb";
7
7
  import { ApiResourceVisibility } from "@stigmer/protos/ai/stigmer/commons/apiresource/enum_pb";
8
8
  import { useMcpServer } from "./useMcpServer";
9
+ import { useDiscoverCapabilities } from "./useDiscoverCapabilities";
10
+ import { useMcpServerCredentials } from "./useMcpServerCredentials";
11
+ import { useTriggerApprovalPolicySession } from "./useTriggerApprovalPolicySession";
12
+ import { ApprovalPolicyGeneratorPanel } from "./ApprovalPolicyGeneratorPanel";
13
+ import { serializeMcpServerYaml } from "../library/serialize-resource-yaml";
9
14
  import { ErrorMessage } from "../error/ErrorMessage";
15
+ import { EnvVarForm } from "../environment/EnvVarForm";
10
16
  import { VisibilityToggle } from "../library/VisibilityToggle";
11
17
  /**
12
18
  * Read-only detail view for an MCP Server integration.
@@ -32,6 +38,11 @@ import { VisibilityToggle } from "../library/VisibilityToggle";
32
38
  */
33
39
  export function McpServerDetailView({ org, slug, onResourceLoad, onVisibilityChange, isVisibilityPending, className, }) {
34
40
  const { mcpServer, isLoading, error, refetch } = useMcpServer(org, slug);
41
+ const credentials = useMcpServerCredentials(org, mcpServer ?? null);
42
+ const discovery = useDiscoverCapabilities();
43
+ const policySession = useTriggerApprovalPolicySession();
44
+ const [showCredentialForm, setShowCredentialForm] = useState(false);
45
+ const [policyPanelExecutionId, setPolicyPanelExecutionId] = useState(null);
35
46
  const onResourceLoadRef = useRef(onResourceLoad);
36
47
  onResourceLoadRef.current = onResourceLoad;
37
48
  useEffect(() => {
@@ -39,6 +50,57 @@ export function McpServerDetailView({ org, slug, onResourceLoad, onVisibilityCha
39
50
  onResourceLoadRef.current?.({ name: mcpServer.metadata.name, id: mcpServer.metadata.id });
40
51
  }
41
52
  }, [mcpServer]);
53
+ const handleDiscoverClick = useCallback(async () => {
54
+ if (!mcpServer?.metadata?.id)
55
+ return;
56
+ if (!credentials.isReady) {
57
+ setShowCredentialForm(true);
58
+ return;
59
+ }
60
+ try {
61
+ await discovery.discover(mcpServer.metadata.id);
62
+ refetch();
63
+ }
64
+ catch {
65
+ // error state is managed by the hook
66
+ }
67
+ }, [mcpServer, credentials.isReady, discovery, refetch]);
68
+ const handleCredentialSubmit = useCallback(async (values, options) => {
69
+ try {
70
+ if (options.saveForFuture) {
71
+ await credentials.saveCredentials(values);
72
+ credentials.refetch();
73
+ }
74
+ setShowCredentialForm(false);
75
+ if (mcpServer?.metadata?.id) {
76
+ if (options.saveForFuture) {
77
+ await discovery.discover(mcpServer.metadata.id);
78
+ }
79
+ else {
80
+ await discovery.discover(mcpServer.metadata.id, values);
81
+ }
82
+ refetch();
83
+ }
84
+ }
85
+ catch {
86
+ // error state is managed by the hooks
87
+ }
88
+ }, [credentials, mcpServer, discovery, refetch]);
89
+ const handleGenerateApprovalPolicies = useCallback(async () => {
90
+ if (!mcpServer)
91
+ return;
92
+ try {
93
+ const yaml = serializeMcpServerYaml(mcpServer);
94
+ const result = await policySession.trigger(yaml, org, slug);
95
+ setPolicyPanelExecutionId(result.executionId);
96
+ }
97
+ catch {
98
+ // error state is managed by the hook
99
+ }
100
+ }, [mcpServer, org, slug, policySession]);
101
+ const handlePolicyPanelComplete = useCallback(() => {
102
+ refetch();
103
+ }, [refetch]);
42
104
  if (isLoading)
43
105
  return _jsx(LoadingSkeleton, { className: className });
44
106
  if (error)
@@ -49,10 +111,12 @@ export function McpServerDetailView({ org, slug, onResourceLoad, onVisibilityCha
49
111
  const status = mcpServer.status;
50
112
  const specAudit = status?.audit?.specAudit;
51
113
  const capabilities = status?.discoveredCapabilities;
114
+ const toolApprovals = spec?.defaultToolApprovals ?? [];
115
+ const hasDiscoveredTools = capabilities != null && capabilities.tools.length > 0;
52
116
  return (_jsxs("div", { className: cn("flex flex-col gap-6", className), children: [status?.validationState === ValidationState.invalid &&
53
117
  status.validationMessage && (_jsx(ValidationBanner, { message: status.validationMessage })), _jsx(Header, { server: mcpServer, createdAt: specAudit?.createdAt ? timestampDate(specAudit.createdAt) : null, updatedAt: specAudit?.updatedAt ? timestampDate(specAudit.updatedAt) : null, lastDiscoveredAt: capabilities?.lastDiscoveredAt
54
118
  ? timestampDate(capabilities.lastDiscoveredAt)
55
- : null, onVisibilityChange: onVisibilityChange, isVisibilityPending: isVisibilityPending }), spec?.serverType.case && (_jsx(ServerConfigSection, { serverType: spec.serverType })), capabilities && capabilities.tools.length > 0 && (_jsx(ToolsSection, { tools: capabilities.tools })), capabilities && capabilities.resourceTemplates.length > 0 && (_jsx(ResourceTemplatesSection, { templates: capabilities.resourceTemplates })), spec?.envSpec && Object.keys(spec.envSpec.data).length > 0 && (_jsx(EnvSpecSection, { data: spec.envSpec.data })), spec && spec.tags.length > 0 && _jsx(TagsSection, { tags: spec.tags })] }));
119
+ : null, onVisibilityChange: onVisibilityChange, isVisibilityPending: isVisibilityPending }), _jsx(DiscoverySection, { isDiscovering: discovery.isDiscovering, discoveryError: discovery.error, onDiscover: handleDiscoverClick, onClearDiscoveryError: discovery.clearError, hasDiscoveredTools: hasDiscoveredTools, showCredentialForm: showCredentialForm, credentialVariables: credentials.missingVariables, isSavingCredentials: credentials.isSaving, onCredentialSubmit: handleCredentialSubmit, onCredentialCancel: () => setShowCredentialForm(false), credentialsLoading: credentials.isLoading }), spec?.serverType.case && (_jsx(ServerConfigSection, { serverType: spec.serverType })), hasDiscoveredTools && (_jsx(ToolsSection, { tools: capabilities.tools })), capabilities && capabilities.resourceTemplates.length > 0 && (_jsx(ResourceTemplatesSection, { templates: capabilities.resourceTemplates })), toolApprovals.length > 0 && (_jsx(ApprovalPoliciesSection, { policies: toolApprovals })), hasDiscoveredTools && (_jsx(GenerateApprovalPoliciesSection, { hasPolicies: toolApprovals.length > 0, isTriggering: policySession.isTriggering, triggerError: policySession.error, onGenerate: handleGenerateApprovalPolicies, onClearError: policySession.clearError })), policyPanelExecutionId && (_jsx(ApprovalPolicyGeneratorPanel, { executionId: policyPanelExecutionId, onClose: () => setPolicyPanelExecutionId(null), onComplete: handlePolicyPanelComplete })), spec?.envSpec && Object.keys(spec.envSpec.data).length > 0 && (_jsx(EnvSpecSection, { data: spec.envSpec.data })), spec && spec.tags.length > 0 && _jsx(TagsSection, { tags: spec.tags })] }));
56
120
  }
57
121
  // ---------------------------------------------------------------------------
58
122
  // Internal section components
@@ -96,6 +160,26 @@ function TagsSection({ tags }) {
96
160
  return (_jsx(Section, { title: `Tags (${tags.length})`, children: _jsx("div", { className: "flex flex-wrap gap-1.5 p-3", children: tags.map((tag) => (_jsx("span", { className: "rounded-full bg-muted px-2.5 py-0.5 text-xs font-medium text-muted-foreground", children: tag }, tag))) }) }));
97
161
  }
98
162
  // ---------------------------------------------------------------------------
163
+ // Discovery section
164
+ // ---------------------------------------------------------------------------
165
+ function DiscoverySection({ isDiscovering, discoveryError, onDiscover, onClearDiscoveryError, hasDiscoveredTools, showCredentialForm, credentialVariables, isSavingCredentials, onCredentialSubmit, onCredentialCancel, credentialsLoading, }) {
166
+ return (_jsxs("section", { className: "flex flex-col gap-3", children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("h3", { className: "text-xs font-medium uppercase tracking-wider text-muted-foreground", children: "Discovery" }), _jsx("button", { type: "button", onClick: onDiscover, disabled: isDiscovering || credentialsLoading, className: cn("inline-flex items-center gap-1.5 rounded-md px-3 py-1.5 text-xs font-medium", "border border-border bg-background text-foreground", "hover:bg-accent hover:text-accent-foreground", "disabled:pointer-events-none disabled:opacity-50"), children: isDiscovering ? (_jsxs(_Fragment, { children: [_jsx(DiscoverSpinner, {}), "Discovering..."] })) : hasDiscoveredTools ? (_jsxs(_Fragment, { children: [_jsx(RefreshIcon, { className: "size-3.5" }), "Re-discover"] })) : (_jsxs(_Fragment, { children: [_jsx(DiscoverIcon, { className: "size-3.5" }), "Discover Tools"] })) })] }), discoveryError && (_jsxs("div", { className: "flex items-start gap-2 rounded-lg border border-destructive/30 bg-destructive/5 px-3 py-2", children: [_jsx(WarningIcon, { className: "mt-0.5 size-3.5 shrink-0 text-destructive" }), _jsx("p", { className: "flex-1 text-xs text-destructive", children: discoveryError.message }), _jsx("button", { type: "button", onClick: onClearDiscoveryError, className: "shrink-0 text-xs text-destructive/70 hover:text-destructive", "aria-label": "Dismiss error", children: "Dismiss" })] })), showCredentialForm && credentialVariables.length > 0 && (_jsx("div", { className: "rounded-lg border border-border p-4", children: _jsx(EnvVarForm, { title: "Credentials Required", description: "Enter the credentials needed to connect to this MCP server. Toggle \"Save for future runs\" to persist them in your personal environment, or leave it off to use them for this discovery only.", variables: credentialVariables, onSubmit: (values, options) => onCredentialSubmit(values, options), onCancel: onCredentialCancel, isSubmitting: isSavingCredentials, className: "w-full max-w-md" }) })), !hasDiscoveredTools && !isDiscovering && (_jsx("p", { className: "text-xs text-muted-foreground", children: "No tools discovered yet. Click \"Discover Tools\" to connect to this MCP server and list its available tools and resources." }))] }));
167
+ }
168
+ // ---------------------------------------------------------------------------
169
+ // Approval policies section
170
+ // ---------------------------------------------------------------------------
171
+ function ApprovalPoliciesSection({ policies, }) {
172
+ return (_jsx(Section, { title: `Approval Policies (${policies.length})`, children: _jsx("div", { className: "flex flex-col divide-y divide-border", children: policies.map((policy) => (_jsxs("div", { className: "px-3 py-2.5", children: [_jsxs("div", { className: "flex items-baseline gap-2", children: [_jsx("code", { className: "font-mono text-sm font-medium text-foreground", children: policy.toolName }), _jsx(ShieldIcon, { className: "size-3 text-amber-500 dark:text-amber-400" })] }), policy.message && (_jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: policy.message }))] }, policy.toolName))) }) }));
173
+ }
174
+ // ---------------------------------------------------------------------------
175
+ // Generate approval policies section
176
+ // ---------------------------------------------------------------------------
177
+ function GenerateApprovalPoliciesSection({ hasPolicies, isTriggering, triggerError, onGenerate, onClearError, }) {
178
+ return (_jsxs("section", { className: "flex flex-col gap-2", children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("div", { children: [_jsx("h3", { className: "text-xs font-medium uppercase tracking-wider text-muted-foreground", children: "AI-Generated Policies" }), _jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: hasPolicies
179
+ ? "Regenerate approval policies using AI to classify each tool's risk level."
180
+ : "Automatically generate approval policies for the discovered tools using AI." })] }), _jsx("button", { type: "button", onClick: onGenerate, disabled: isTriggering, className: cn("inline-flex shrink-0 items-center gap-1.5 rounded-md px-3 py-1.5 text-xs font-medium", "bg-primary text-primary-foreground", "hover:bg-primary/90", "disabled:pointer-events-none disabled:opacity-50"), children: isTriggering ? (_jsxs(_Fragment, { children: [_jsx(DiscoverSpinner, {}), "Starting..."] })) : (_jsxs(_Fragment, { children: [_jsx(SparklesIcon, { className: "size-3.5" }), hasPolicies ? "Regenerate Policies" : "Generate Policies"] })) })] }), triggerError && (_jsxs("div", { className: "flex items-start gap-2 rounded-lg border border-destructive/30 bg-destructive/5 px-3 py-2", children: [_jsx(WarningIcon, { className: "mt-0.5 size-3.5 shrink-0 text-destructive" }), _jsx("p", { className: "flex-1 text-xs text-destructive", children: triggerError.message }), _jsx("button", { type: "button", onClick: onClearError, className: "shrink-0 text-xs text-destructive/70 hover:text-destructive", "aria-label": "Dismiss error", children: "Dismiss" })] }))] }));
181
+ }
182
+ // ---------------------------------------------------------------------------
99
183
  // Shared layout primitives
100
184
  // ---------------------------------------------------------------------------
101
185
  function Section({ title, children, }) {
@@ -135,4 +219,19 @@ function CheckIcon({ className }) {
135
219
  function WarningIcon({ className }) {
136
220
  return (_jsxs("svg", { className: className, viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [_jsx("path", { d: "M8 1.5 1 14h14L8 1.5Z" }), _jsx("path", { d: "M8 6v3.5" }), _jsx("circle", { cx: "8", cy: "11.5", r: "0.5", fill: "currentColor", stroke: "none" })] }));
137
221
  }
222
+ function DiscoverIcon({ className }) {
223
+ return (_jsxs("svg", { className: className, viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [_jsx("circle", { cx: "7", cy: "7", r: "4.5" }), _jsx("path", { d: "m10.5 10.5 3 3" })] }));
224
+ }
225
+ function RefreshIcon({ className }) {
226
+ return (_jsxs("svg", { className: className, viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [_jsx("path", { d: "M2.5 8a5.5 5.5 0 0 1 9.36-3.92" }), _jsx("path", { d: "M13.5 8a5.5 5.5 0 0 1-9.36 3.92" }), _jsx("path", { d: "M12 2v3h-3" }), _jsx("path", { d: "M4 14v-3h3" })] }));
227
+ }
228
+ function ShieldIcon({ className }) {
229
+ return (_jsx("svg", { className: className, viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: _jsx("path", { d: "M8 1.5 2.5 4v4c0 3.31 2.35 6.4 5.5 7 3.15-.6 5.5-3.69 5.5-7V4L8 1.5Z" }) }));
230
+ }
231
+ function SparklesIcon({ className }) {
232
+ return (_jsx("svg", { className: className, viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: _jsx("path", { d: "M8 1v2M8 13v2M1 8h2M13 8h2M3.05 3.05l1.41 1.41M11.54 11.54l1.41 1.41M3.05 12.95l1.41-1.41M11.54 4.46l1.41-1.41" }) }));
233
+ }
234
+ function DiscoverSpinner() {
235
+ return (_jsx("svg", { width: "14", height: "14", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", className: "animate-spin", "aria-hidden": "true", children: _jsx("path", { d: "M8 2a6 6 0 1 0 6 6" }) }));
236
+ }
138
237
  //# sourceMappingURL=McpServerDetailView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"McpServerDetailView.js","sourceRoot":"","sources":["../../src/mcp-server/McpServerDetailView.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAMvD,OAAO,EAAE,eAAe,EAAE,MAAM,2DAA2D,CAAC;AAE5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AAC/F,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AA6B/D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,GAAG,EACH,IAAI,EACJ,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,SAAS,GACgB;IACzB,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAEzE,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IACjD,iBAAiB,CAAC,OAAO,GAAG,cAAc,CAAC;IAE3C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC9B,iBAAiB,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,IAAI,SAAS;QAAE,OAAO,KAAC,eAAe,IAAC,SAAS,EAAE,SAAS,GAAI,CAAC;IAChE,IAAI,KAAK;QACP,OAAO,KAAC,YAAY,IAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAI,CAAC;IAC9E,IAAI,CAAC,SAAS;QAAE,OAAO,KAAC,aAAa,IAAC,SAAS,EAAE,SAAS,GAAI,CAAC;IAE/D,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;IAC5B,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;IAChC,MAAM,SAAS,GAAG,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC;IAC3C,MAAM,YAAY,GAAG,MAAM,EAAE,sBAAsB,CAAC;IAEpD,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC,aACjD,MAAM,EAAE,eAAe,KAAK,eAAe,CAAC,OAAO;gBAClD,MAAM,CAAC,iBAAiB,IAAI,CAC1B,KAAC,gBAAgB,IAAC,OAAO,EAAE,MAAM,CAAC,iBAAiB,GAAI,CACxD,EAEH,KAAC,MAAM,IACL,MAAM,EAAE,SAAS,EACjB,SAAS,EACP,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAElE,SAAS,EACP,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAElE,gBAAgB,EACd,YAAY,EAAE,gBAAgB;oBAC5B,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,gBAAgB,CAAC;oBAC9C,CAAC,CAAC,IAAI,EAEV,kBAAkB,EAAE,kBAAkB,EACtC,mBAAmB,EAAE,mBAAmB,GACxC,EAED,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,CACxB,KAAC,mBAAmB,IAAC,UAAU,EAAE,IAAI,CAAC,UAAU,GAAI,CACrD,EAEA,YAAY,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAChD,KAAC,YAAY,IAAC,KAAK,EAAE,YAAY,CAAC,KAAK,GAAI,CAC5C,EAEA,YAAY,IAAI,YAAY,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,CAC5D,KAAC,wBAAwB,IACvB,SAAS,EAAE,YAAY,CAAC,iBAAiB,GACzC,CACH,EAEA,IAAI,EAAE,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAC7D,KAAC,cAAc,IAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,GAAI,CAC5C,EAEA,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,KAAC,WAAW,IAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI,IAC7D,CACP,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,8BAA8B;AAC9B,8EAA8E;AAE9E,SAAS,gBAAgB,CAAC,EAAE,OAAO,EAAgC;IACjE,OAAO,CACL,eACE,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,6FAA6F,aAEvG,KAAC,WAAW,IAAC,SAAS,EAAC,yCAAyC,GAAG,EACnE,eAAK,SAAS,EAAC,gBAAgB,aAC7B,YAAG,SAAS,EAAC,sCAAsC,sCAE/C,EACJ,YAAG,SAAS,EAAC,oCAAoC,YAAE,OAAO,GAAK,IAC3D,IACF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,EACd,MAAM,EACN,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,GAQpB;IACC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,MAAM,WAAW,GAAG,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,IAAI,IAAI,UAAU,CAAC;IAC3D,MAAM,QAAQ,GACZ,IAAI,EAAE,UAAU,KAAK,qBAAqB,CAAC,iBAAiB,CAAC;IAE/D,OAAO,CACL,eAAK,SAAS,EAAC,wBAAwB,aACpC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CACf,cACE,GAAG,EAAE,IAAI,CAAC,OAAO,EACjB,GAAG,EAAC,EAAE,EACN,SAAS,EAAC,6CAA6C,GACvD,CACH,CAAC,CAAC,CAAC,CACF,KAAC,aAAa,IAAC,SAAS,EAAC,4CAA4C,GAAG,CACzE,EACD,eAAK,SAAS,EAAC,gBAAgB,aAC7B,eAAK,SAAS,EAAC,yBAAyB,aACtC,aAAI,SAAS,EAAC,gDAAgD,YAC3D,WAAW,GACT,EACJ,kBAAkB,IAAI,IAAI,CAAC,CAAC,CAAC,CAC5B,KAAC,gBAAgB,IACf,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,kBAAkB,EAAE,kBAAkB,EACtC,SAAS,EAAE,mBAAmB,GAC9B,CACH,CAAC,CAAC,CAAC,CACF,QAAQ,IAAI,CACV,eAAM,SAAS,EAAC,0FAA0F,uBAEnG,CACR,CACF,IACG,EACN,eAAK,SAAS,EAAC,4EAA4E,aACxF,IAAI,EAAE,GAAG,IAAI,yBAAO,IAAI,CAAC,GAAG,GAAQ,EACpC,MAAM,IAAI,CACT,KAAC,oBAAoB,IAAC,KAAK,EAAE,MAAM,CAAC,eAAe,GAAI,CACxD,EACA,gBAAgB,IAAI,CACnB,8BACE,KAAC,GAAG,KAAG,EACP,0CAAkB,UAAU,CAAC,gBAAgB,CAAC,IAAQ,IACrD,CACJ,EACA,SAAS,IAAI,CACZ,8BACE,KAAC,GAAG,KAAG,EACP,uCAAe,UAAU,CAAC,SAAS,CAAC,IAAQ,IAC3C,CACJ,EACA,SAAS,IAAI,CACZ,8BACE,KAAC,GAAG,KAAG,EACP,uCAAe,UAAU,CAAC,SAAS,CAAC,IAAQ,IAC3C,CACJ,IACG,EACL,IAAI,EAAE,WAAW,IAAI,CACpB,YAAG,SAAS,EAAC,oCAAoC,YAC9C,IAAI,CAAC,WAAW,GACf,CACL,IACG,IACF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,EAC5B,KAAK,GAGN;IACC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,eAAe,CAAC,KAAK;YACxB,OAAO,CACL,8BACE,KAAC,GAAG,KAAG,EACP,gBAAM,SAAS,EAAC,uEAAuE,aACrF,KAAC,SAAS,IAAC,SAAS,EAAC,QAAQ,GAAG,aAE3B,IACN,CACJ,CAAC;QACJ,KAAK,eAAe,CAAC,OAAO;YAC1B,OAAO,CACL,8BACE,KAAC,GAAG,KAAG,EACP,eAAM,SAAS,EAAC,kBAAkB,wBAAe,IAChD,CACJ,CAAC;QACJ;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,EAC3B,UAAU,GAKX;IACC,OAAO,CACL,KAAC,OAAO,IAAC,KAAK,EAAC,sBAAsB,YACnC,eAAK,SAAS,EAAC,yBAAyB,aACtC,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,2CAA2C,qBAEpD,EACP,eAAM,SAAS,EAAC,8EAA8E,YAC3F,UAAU,CAAC,IAAI,GACX,IACH,EAEL,UAAU,CAAC,IAAI,KAAK,OAAO,IAAI,CAC9B,8BACE,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,2CAA2C,wBAEpD,EACP,gBAAM,SAAS,EAAC,mCAAmC,aAChD,UAAU,CAAC,KAAK,CAAC,OAAO,EACxB,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;4CAC/B,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAClC,IACH,EACL,UAAU,CAAC,KAAK,CAAC,UAAU,IAAI,CAC9B,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,2CAA2C,4BAEpD,EACP,eAAM,SAAS,EAAC,mCAAmC,YAChD,UAAU,CAAC,KAAK,CAAC,UAAU,GACvB,IACH,CACP,IACA,CACJ,EAEA,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,CAC7B,8BACE,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,2CAA2C,oBAEpD,EACP,eAAM,SAAS,EAAC,6CAA6C,YAC1D,UAAU,CAAC,KAAK,CAAC,GAAG,GAChB,IACH,EACL,UAAU,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,IAAI,CACtC,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,2CAA2C,wBAEpD,EACP,gBAAM,SAAS,EAAC,yBAAyB,aACtC,UAAU,CAAC,KAAK,CAAC,cAAc,SAC3B,IACH,CACP,IACA,CACJ,IACG,GACE,CACX,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,KAAK,GAGN;IACC,OAAO,CACL,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,KAAK,CAAC,MAAM,GAAG,YACvC,cAAK,SAAS,EAAC,sCAAsC,YAClD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,eAAqB,SAAS,EAAC,aAAa,aAC1C,eAAM,SAAS,EAAC,+CAA+C,YAC5D,IAAI,CAAC,IAAI,GACL,EACN,IAAI,CAAC,WAAW,IAAI,CACnB,YAAG,SAAS,EAAC,sCAAsC,YAChD,IAAI,CAAC,WAAW,GACf,CACL,KARO,IAAI,CAAC,IAAI,CASb,CACP,CAAC,GACE,GACE,CACX,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,EAChC,SAAS,GAGV;IACC,OAAO,CACL,KAAC,OAAO,IAAC,KAAK,EAAE,uBAAuB,SAAS,CAAC,MAAM,GAAG,YACxD,cAAK,SAAS,EAAC,sCAAsC,YAClD,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACtB,eAAuC,SAAS,EAAC,aAAa,aAC5D,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,qCAAqC,YAClD,GAAG,CAAC,IAAI,GACJ,EACP,eAAM,SAAS,EAAC,6CAA6C,YAC1D,GAAG,CAAC,WAAW,GACX,IACH,EACL,GAAG,CAAC,WAAW,IAAI,CAClB,YAAG,SAAS,EAAC,sCAAsC,YAChD,GAAG,CAAC,WAAW,GACd,CACL,KAbO,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,CAc/B,CACP,CAAC,GACE,GACE,CACX,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,EACtB,IAAI,GAGL;IACC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACrD,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CACnB,CAAC;IAEF,OAAO,CACL,KAAC,OAAO,IAAC,KAAK,EAAE,0BAA0B,OAAO,CAAC,MAAM,GAAG,YACzD,cAAK,SAAS,EAAC,sCAAsC,YAClD,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAC5B,eAAgB,SAAS,EAAC,kCAAkC,aAC1D,eAAM,SAAS,EAAC,wDAAwD,YACrE,IAAI,GACA,EACP,eAAM,SAAS,EAAC,uFAAuF,YACpG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAC9B,EACN,GAAG,CAAC,WAAW,IAAI,CAClB,eAAM,SAAS,EAAC,+BAA+B,YAC5C,GAAG,CAAC,WAAW,GACX,CACR,KAXO,IAAI,CAYR,CACP,CAAC,GACE,GACE,CACX,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,IAAI,EAAwC;IACjE,OAAO,CACL,KAAC,OAAO,IAAC,KAAK,EAAE,SAAS,IAAI,CAAC,MAAM,GAAG,YACrC,cAAK,SAAS,EAAC,4BAA4B,YACxC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACjB,eAEE,SAAS,EAAC,+EAA+E,YAExF,GAAG,IAHC,GAAG,CAIH,CACR,CAAC,GACE,GACE,CACX,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E,SAAS,OAAO,CAAC,EACf,KAAK,EACL,QAAQ,GAIT;IACC,OAAO,CACL,8BACE,aAAI,SAAS,EAAC,yEAAyE,YACpF,KAAK,GACH,EACL,cAAK,SAAS,EAAC,iDAAiD,YAC7D,QAAQ,GACL,IACE,CACX,CAAC;AACJ,CAAC;AAED,SAAS,GAAG;IACV,OAAO,CACL,eAAM,SAAS,EAAC,UAAU,iBAAa,MAAM,YAC1C,QAAQ,GACJ,CACR,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,SAAS,eAAe,CAAC,EAAE,SAAS,EAAmC;IACrE,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC,eACrC,MAAM,gBACL,4BAA4B,aAEvC,eAAK,SAAS,EAAC,wBAAwB,aACrC,cAAK,SAAS,EAAC,qDAAqD,GAAG,EACvE,eAAK,SAAS,EAAC,kBAAkB,aAC/B,cAAK,SAAS,EAAC,yCAAyC,GAAG,EAC3D,cAAK,SAAS,EAAC,yCAAyC,GAAG,EAC3D,cAAK,SAAS,EAAC,oDAAoD,GAAG,IAClE,IACF,EACL,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAC9B,eAAa,SAAS,EAAC,WAAW,aAChC,cAAK,SAAS,EAAC,yCAAyC,GAAG,EAC3D,cACE,SAAS,EAAC,2DAA2D,EACrE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAC/B,KALM,CAAC,CAML,CACP,CAAC,IACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EAAE,SAAS,EAAmC;IACnE,OAAO,CACL,eACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CACX,oDAAoD,EACpD,SAAS,CACV,aAED,KAAC,aAAa,IAAC,SAAS,EAAC,kCAAkC,GAAG,EAC9D,YAAG,SAAS,EAAC,2CAA2C,qCAEpD,EACJ,YAAG,SAAS,EAAC,kCAAkC,8EAE3C,IACA,CACP,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,SAAS,UAAU,CAAC,IAAU;IAC5B,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE;QACtC,KAAK,EAAE,OAAO;QACd,GAAG,EAAE,SAAS;QACd,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAC9E,6EAA6E;AAC7E,8EAA8E;AAE9E,SAAS,aAAa,CAAC,EAAE,SAAS,EAAmC;IACnE,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,aAElB,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,GAAG,EACjD,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,GAAG,EACjD,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,MAAM,EAAC,IAAI,EAAC,cAAc,EAAC,MAAM,EAAC,MAAM,GAAG,EACrE,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,MAAM,EAAC,CAAC,EAAC,MAAM,EAAC,IAAI,EAAC,cAAc,EAAC,MAAM,EAAC,MAAM,GAAG,IAClE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,SAAS,EAAmC;IAC/D,OAAO,CACL,cACE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,YAElB,eAAM,CAAC,EAAC,sBAAsB,GAAG,GAC7B,CACP,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,SAAS,EAAmC;IACjE,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,aAElB,eAAM,CAAC,EAAC,uBAAuB,GAAG,EAClC,eAAM,CAAC,EAAC,UAAU,GAAG,EACrB,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,MAAM,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,cAAc,EAAC,MAAM,EAAC,MAAM,GAAG,IACjE,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"McpServerDetailView.js","sourceRoot":"","sources":["../../src/mcp-server/McpServerDetailView.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAOvD,OAAO,EAAE,eAAe,EAAE,MAAM,2DAA2D,CAAC;AAE5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AAC/F,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AA6B/D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,GAAG,EACH,IAAI,EACJ,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,SAAS,GACgB;IACzB,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACzE,MAAM,WAAW,GAAG,uBAAuB,CAAC,GAAG,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG,uBAAuB,EAAE,CAAC;IAC5C,MAAM,aAAa,GAAG,+BAA+B,EAAE,CAAC;IAExD,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,CAAC,GAAG,QAAQ,CAElE,IAAI,CAAC,CAAC;IAER,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IACjD,iBAAiB,CAAC,OAAO,GAAG,cAAc,CAAC;IAE3C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC9B,iBAAiB,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,MAAM,mBAAmB,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACjD,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE;YAAE,OAAO;QAErC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAChD,OAAO,EAAE,CAAC;QACZ,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAEzD,MAAM,sBAAsB,GAAG,WAAW,CACxC,KAAK,EACH,MAA0D,EAC1D,OAAmC,EACnC,EAAE;QACF,IAAI,CAAC;YACH,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;gBAC1B,MAAM,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;gBAC1C,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,CAAC;YAED,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAE7B,IAAI,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;gBAC5B,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;oBAC1B,MAAM,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAClD,CAAC;qBAAM,CAAC;oBACN,MAAM,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC1D,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,sCAAsC;QACxC,CAAC;IACH,CAAC,EACD,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAC7C,CAAC;IAEF,MAAM,8BAA8B,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAC5D,IAAI,CAAC,SAAS;YAAE,OAAO;QAEvB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YAC5D,yBAAyB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;IAE1C,MAAM,yBAAyB,GAAG,WAAW,CAAC,GAAG,EAAE;QACjD,OAAO,EAAE,CAAC;IACZ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,IAAI,SAAS;QAAE,OAAO,KAAC,eAAe,IAAC,SAAS,EAAE,SAAS,GAAI,CAAC;IAChE,IAAI,KAAK;QACP,OAAO,KAAC,YAAY,IAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAI,CAAC;IAC9E,IAAI,CAAC,SAAS;QAAE,OAAO,KAAC,aAAa,IAAC,SAAS,EAAE,SAAS,GAAI,CAAC;IAE/D,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;IAC5B,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;IAChC,MAAM,SAAS,GAAG,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC;IAC3C,MAAM,YAAY,GAAG,MAAM,EAAE,sBAAsB,CAAC;IACpD,MAAM,aAAa,GAAG,IAAI,EAAE,oBAAoB,IAAI,EAAE,CAAC;IACvD,MAAM,kBAAkB,GACtB,YAAY,IAAI,IAAI,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAExD,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC,aACjD,MAAM,EAAE,eAAe,KAAK,eAAe,CAAC,OAAO;gBAClD,MAAM,CAAC,iBAAiB,IAAI,CAC1B,KAAC,gBAAgB,IAAC,OAAO,EAAE,MAAM,CAAC,iBAAiB,GAAI,CACxD,EAEH,KAAC,MAAM,IACL,MAAM,EAAE,SAAS,EACjB,SAAS,EACP,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAElE,SAAS,EACP,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAElE,gBAAgB,EACd,YAAY,EAAE,gBAAgB;oBAC5B,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,gBAAgB,CAAC;oBAC9C,CAAC,CAAC,IAAI,EAEV,kBAAkB,EAAE,kBAAkB,EACtC,mBAAmB,EAAE,mBAAmB,GACxC,EAGF,KAAC,gBAAgB,IACf,aAAa,EAAE,SAAS,CAAC,aAAa,EACtC,cAAc,EAAE,SAAS,CAAC,KAAK,EAC/B,UAAU,EAAE,mBAAmB,EAC/B,qBAAqB,EAAE,SAAS,CAAC,UAAU,EAC3C,kBAAkB,EAAE,kBAAkB,EACtC,kBAAkB,EAAE,kBAAkB,EACtC,mBAAmB,EAAE,WAAW,CAAC,gBAAgB,EACjD,mBAAmB,EAAE,WAAW,CAAC,QAAQ,EACzC,kBAAkB,EAAE,sBAAsB,EAC1C,kBAAkB,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,EACtD,kBAAkB,EAAE,WAAW,CAAC,SAAS,GACzC,EAED,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,CACxB,KAAC,mBAAmB,IAAC,UAAU,EAAE,IAAI,CAAC,UAAU,GAAI,CACrD,EAEA,kBAAkB,IAAI,CACrB,KAAC,YAAY,IAAC,KAAK,EAAE,YAAY,CAAC,KAAK,GAAI,CAC5C,EAEA,YAAY,IAAI,YAAY,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,CAC5D,KAAC,wBAAwB,IACvB,SAAS,EAAE,YAAY,CAAC,iBAAiB,GACzC,CACH,EAGA,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,CAC3B,KAAC,uBAAuB,IAAC,QAAQ,EAAE,aAAa,GAAI,CACrD,EAGA,kBAAkB,IAAI,CACrB,KAAC,+BAA+B,IAC9B,WAAW,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,EACrC,YAAY,EAAE,aAAa,CAAC,YAAY,EACxC,YAAY,EAAE,aAAa,CAAC,KAAK,EACjC,UAAU,EAAE,8BAA8B,EAC1C,YAAY,EAAE,aAAa,CAAC,UAAU,GACtC,CACH,EAGA,sBAAsB,IAAI,CACzB,KAAC,4BAA4B,IAC3B,WAAW,EAAE,sBAAsB,EACnC,OAAO,EAAE,GAAG,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAC9C,UAAU,EAAE,yBAAyB,GACrC,CACH,EAEA,IAAI,EAAE,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAC7D,KAAC,cAAc,IAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,GAAI,CAC5C,EAEA,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,KAAC,WAAW,IAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI,IAC7D,CACP,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,8BAA8B;AAC9B,8EAA8E;AAE9E,SAAS,gBAAgB,CAAC,EAAE,OAAO,EAAgC;IACjE,OAAO,CACL,eACE,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,6FAA6F,aAEvG,KAAC,WAAW,IAAC,SAAS,EAAC,yCAAyC,GAAG,EACnE,eAAK,SAAS,EAAC,gBAAgB,aAC7B,YAAG,SAAS,EAAC,sCAAsC,sCAE/C,EACJ,YAAG,SAAS,EAAC,oCAAoC,YAAE,OAAO,GAAK,IAC3D,IACF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,EACd,MAAM,EACN,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,GAQpB;IACC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,MAAM,WAAW,GAAG,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,IAAI,IAAI,UAAU,CAAC;IAC3D,MAAM,QAAQ,GACZ,IAAI,EAAE,UAAU,KAAK,qBAAqB,CAAC,iBAAiB,CAAC;IAE/D,OAAO,CACL,eAAK,SAAS,EAAC,wBAAwB,aACpC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CACf,cACE,GAAG,EAAE,IAAI,CAAC,OAAO,EACjB,GAAG,EAAC,EAAE,EACN,SAAS,EAAC,6CAA6C,GACvD,CACH,CAAC,CAAC,CAAC,CACF,KAAC,aAAa,IAAC,SAAS,EAAC,4CAA4C,GAAG,CACzE,EACD,eAAK,SAAS,EAAC,gBAAgB,aAC7B,eAAK,SAAS,EAAC,yBAAyB,aACtC,aAAI,SAAS,EAAC,gDAAgD,YAC3D,WAAW,GACT,EACJ,kBAAkB,IAAI,IAAI,CAAC,CAAC,CAAC,CAC5B,KAAC,gBAAgB,IACf,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,kBAAkB,EAAE,kBAAkB,EACtC,SAAS,EAAE,mBAAmB,GAC9B,CACH,CAAC,CAAC,CAAC,CACF,QAAQ,IAAI,CACV,eAAM,SAAS,EAAC,0FAA0F,uBAEnG,CACR,CACF,IACG,EACN,eAAK,SAAS,EAAC,4EAA4E,aACxF,IAAI,EAAE,GAAG,IAAI,yBAAO,IAAI,CAAC,GAAG,GAAQ,EACpC,MAAM,IAAI,CACT,KAAC,oBAAoB,IAAC,KAAK,EAAE,MAAM,CAAC,eAAe,GAAI,CACxD,EACA,gBAAgB,IAAI,CACnB,8BACE,KAAC,GAAG,KAAG,EACP,0CAAkB,UAAU,CAAC,gBAAgB,CAAC,IAAQ,IACrD,CACJ,EACA,SAAS,IAAI,CACZ,8BACE,KAAC,GAAG,KAAG,EACP,uCAAe,UAAU,CAAC,SAAS,CAAC,IAAQ,IAC3C,CACJ,EACA,SAAS,IAAI,CACZ,8BACE,KAAC,GAAG,KAAG,EACP,uCAAe,UAAU,CAAC,SAAS,CAAC,IAAQ,IAC3C,CACJ,IACG,EACL,IAAI,EAAE,WAAW,IAAI,CACpB,YAAG,SAAS,EAAC,oCAAoC,YAC9C,IAAI,CAAC,WAAW,GACf,CACL,IACG,IACF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,EAC5B,KAAK,GAGN;IACC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,eAAe,CAAC,KAAK;YACxB,OAAO,CACL,8BACE,KAAC,GAAG,KAAG,EACP,gBAAM,SAAS,EAAC,uEAAuE,aACrF,KAAC,SAAS,IAAC,SAAS,EAAC,QAAQ,GAAG,aAE3B,IACN,CACJ,CAAC;QACJ,KAAK,eAAe,CAAC,OAAO;YAC1B,OAAO,CACL,8BACE,KAAC,GAAG,KAAG,EACP,eAAM,SAAS,EAAC,kBAAkB,wBAAe,IAChD,CACJ,CAAC;QACJ;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,EAC3B,UAAU,GAKX;IACC,OAAO,CACL,KAAC,OAAO,IAAC,KAAK,EAAC,sBAAsB,YACnC,eAAK,SAAS,EAAC,yBAAyB,aACtC,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,2CAA2C,qBAEpD,EACP,eAAM,SAAS,EAAC,8EAA8E,YAC3F,UAAU,CAAC,IAAI,GACX,IACH,EAEL,UAAU,CAAC,IAAI,KAAK,OAAO,IAAI,CAC9B,8BACE,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,2CAA2C,wBAEpD,EACP,gBAAM,SAAS,EAAC,mCAAmC,aAChD,UAAU,CAAC,KAAK,CAAC,OAAO,EACxB,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;4CAC/B,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAClC,IACH,EACL,UAAU,CAAC,KAAK,CAAC,UAAU,IAAI,CAC9B,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,2CAA2C,4BAEpD,EACP,eAAM,SAAS,EAAC,mCAAmC,YAChD,UAAU,CAAC,KAAK,CAAC,UAAU,GACvB,IACH,CACP,IACA,CACJ,EAEA,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,CAC7B,8BACE,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,2CAA2C,oBAEpD,EACP,eAAM,SAAS,EAAC,6CAA6C,YAC1D,UAAU,CAAC,KAAK,CAAC,GAAG,GAChB,IACH,EACL,UAAU,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,IAAI,CACtC,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,2CAA2C,wBAEpD,EACP,gBAAM,SAAS,EAAC,yBAAyB,aACtC,UAAU,CAAC,KAAK,CAAC,cAAc,SAC3B,IACH,CACP,IACA,CACJ,IACG,GACE,CACX,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,KAAK,GAGN;IACC,OAAO,CACL,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,KAAK,CAAC,MAAM,GAAG,YACvC,cAAK,SAAS,EAAC,sCAAsC,YAClD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,eAAqB,SAAS,EAAC,aAAa,aAC1C,eAAM,SAAS,EAAC,+CAA+C,YAC5D,IAAI,CAAC,IAAI,GACL,EACN,IAAI,CAAC,WAAW,IAAI,CACnB,YAAG,SAAS,EAAC,sCAAsC,YAChD,IAAI,CAAC,WAAW,GACf,CACL,KARO,IAAI,CAAC,IAAI,CASb,CACP,CAAC,GACE,GACE,CACX,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,EAChC,SAAS,GAGV;IACC,OAAO,CACL,KAAC,OAAO,IAAC,KAAK,EAAE,uBAAuB,SAAS,CAAC,MAAM,GAAG,YACxD,cAAK,SAAS,EAAC,sCAAsC,YAClD,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACtB,eAAuC,SAAS,EAAC,aAAa,aAC5D,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,qCAAqC,YAClD,GAAG,CAAC,IAAI,GACJ,EACP,eAAM,SAAS,EAAC,6CAA6C,YAC1D,GAAG,CAAC,WAAW,GACX,IACH,EACL,GAAG,CAAC,WAAW,IAAI,CAClB,YAAG,SAAS,EAAC,sCAAsC,YAChD,GAAG,CAAC,WAAW,GACd,CACL,KAbO,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,CAc/B,CACP,CAAC,GACE,GACE,CACX,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,EACtB,IAAI,GAGL;IACC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACrD,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CACnB,CAAC;IAEF,OAAO,CACL,KAAC,OAAO,IAAC,KAAK,EAAE,0BAA0B,OAAO,CAAC,MAAM,GAAG,YACzD,cAAK,SAAS,EAAC,sCAAsC,YAClD,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAC5B,eAAgB,SAAS,EAAC,kCAAkC,aAC1D,eAAM,SAAS,EAAC,wDAAwD,YACrE,IAAI,GACA,EACP,eAAM,SAAS,EAAC,uFAAuF,YACpG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAC9B,EACN,GAAG,CAAC,WAAW,IAAI,CAClB,eAAM,SAAS,EAAC,+BAA+B,YAC5C,GAAG,CAAC,WAAW,GACX,CACR,KAXO,IAAI,CAYR,CACP,CAAC,GACE,GACE,CACX,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,IAAI,EAAwC;IACjE,OAAO,CACL,KAAC,OAAO,IAAC,KAAK,EAAE,SAAS,IAAI,CAAC,MAAM,GAAG,YACrC,cAAK,SAAS,EAAC,4BAA4B,YACxC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACjB,eAEE,SAAS,EAAC,+EAA+E,YAExF,GAAG,IAHC,GAAG,CAIH,CACR,CAAC,GACE,GACE,CACX,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E,SAAS,gBAAgB,CAAC,EACxB,aAAa,EACb,cAAc,EACd,UAAU,EACV,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GAgBnB;IACC,OAAO,CACL,mBAAS,SAAS,EAAC,qBAAqB,aACtC,eAAK,SAAS,EAAC,mCAAmC,aAChD,aAAI,SAAS,EAAC,oEAAoE,0BAE7E,EACL,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,aAAa,IAAI,kBAAkB,EAC7C,SAAS,EAAE,EAAE,CACX,6EAA6E,EAC7E,oDAAoD,EACpD,8CAA8C,EAC9C,kDAAkD,CACnD,YAEA,aAAa,CAAC,CAAC,CAAC,CACf,8BACE,KAAC,eAAe,KAAG,sBAElB,CACJ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CACvB,8BACE,KAAC,WAAW,IAAC,SAAS,EAAC,UAAU,GAAG,mBAEnC,CACJ,CAAC,CAAC,CAAC,CACF,8BACE,KAAC,YAAY,IAAC,SAAS,EAAC,UAAU,GAAG,sBAEpC,CACJ,GACM,IACL,EAEL,cAAc,IAAI,CACjB,eAAK,SAAS,EAAC,2FAA2F,aACxG,KAAC,WAAW,IAAC,SAAS,EAAC,2CAA2C,GAAG,EACrE,YAAG,SAAS,EAAC,iCAAiC,YAC3C,cAAc,CAAC,OAAO,GACrB,EACJ,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,qBAAqB,EAC9B,SAAS,EAAC,6DAA6D,gBAC5D,eAAe,wBAGnB,IACL,CACP,EAEA,kBAAkB,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,IAAI,CACvD,cAAK,SAAS,EAAC,qCAAqC,YAClD,KAAC,UAAU,IACT,KAAK,EAAC,sBAAsB,EAC5B,WAAW,EAAC,gMAAwM,EACpN,SAAS,EAAE,mBAAmB,EAC9B,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,EAClE,QAAQ,EAAE,kBAAkB,EAC5B,YAAY,EAAE,mBAAmB,EACjC,SAAS,EAAC,iBAAiB,GAC3B,GACE,CACP,EAEA,CAAC,kBAAkB,IAAI,CAAC,aAAa,IAAI,CACxC,YAAG,SAAS,EAAC,+BAA+B,4IAIxC,CACL,IACO,CACX,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,4BAA4B;AAC5B,8EAA8E;AAE9E,SAAS,uBAAuB,CAAC,EAC/B,QAAQ,GAGT;IACC,OAAO,CACL,KAAC,OAAO,IAAC,KAAK,EAAE,sBAAsB,QAAQ,CAAC,MAAM,GAAG,YACtD,cAAK,SAAS,EAAC,sCAAsC,YAClD,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACxB,eAA2B,SAAS,EAAC,aAAa,aAChD,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAM,SAAS,EAAC,+CAA+C,YAC5D,MAAM,CAAC,QAAQ,GACX,EACP,KAAC,UAAU,IAAC,SAAS,EAAC,2CAA2C,GAAG,IAChE,EACL,MAAM,CAAC,OAAO,IAAI,CACjB,YAAG,SAAS,EAAC,sCAAsC,YAChD,MAAM,CAAC,OAAO,GACb,CACL,KAXO,MAAM,CAAC,QAAQ,CAYnB,CACP,CAAC,GACE,GACE,CACX,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,qCAAqC;AACrC,8EAA8E;AAE9E,SAAS,+BAA+B,CAAC,EACvC,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,YAAY,GAOb;IACC,OAAO,CACL,mBAAS,SAAS,EAAC,qBAAqB,aACtC,eAAK,SAAS,EAAC,mCAAmC,aAChD,0BACE,aAAI,SAAS,EAAC,oEAAoE,sCAE7E,EACL,YAAG,SAAS,EAAC,sCAAsC,YAChD,WAAW;oCACV,CAAC,CAAC,2EAA2E;oCAC7E,CAAC,CAAC,6EAA6E,GAC/E,IACA,EACN,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,EAAE,CACX,sFAAsF,EACtF,oCAAoC,EACpC,qBAAqB,EACrB,kDAAkD,CACnD,YAEA,YAAY,CAAC,CAAC,CAAC,CACd,8BACE,KAAC,eAAe,KAAG,mBAElB,CACJ,CAAC,CAAC,CAAC,CACF,8BACE,KAAC,YAAY,IAAC,SAAS,EAAC,UAAU,GAAG,EACpC,WAAW,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,mBAAmB,IACzD,CACJ,GACM,IACL,EAEL,YAAY,IAAI,CACf,eAAK,SAAS,EAAC,2FAA2F,aACxG,KAAC,WAAW,IAAC,SAAS,EAAC,2CAA2C,GAAG,EACrE,YAAG,SAAS,EAAC,iCAAiC,YAC3C,YAAY,CAAC,OAAO,GACnB,EACJ,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,YAAY,EACrB,SAAS,EAAC,6DAA6D,gBAC5D,eAAe,wBAGnB,IACL,CACP,IACO,CACX,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E,SAAS,OAAO,CAAC,EACf,KAAK,EACL,QAAQ,GAIT;IACC,OAAO,CACL,8BACE,aAAI,SAAS,EAAC,yEAAyE,YACpF,KAAK,GACH,EACL,cAAK,SAAS,EAAC,iDAAiD,YAC7D,QAAQ,GACL,IACE,CACX,CAAC;AACJ,CAAC;AAED,SAAS,GAAG;IACV,OAAO,CACL,eAAM,SAAS,EAAC,UAAU,iBAAa,MAAM,YAC1C,QAAQ,GACJ,CACR,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,SAAS,eAAe,CAAC,EAAE,SAAS,EAAmC;IACrE,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC,eACrC,MAAM,gBACL,4BAA4B,aAEvC,eAAK,SAAS,EAAC,wBAAwB,aACrC,cAAK,SAAS,EAAC,qDAAqD,GAAG,EACvE,eAAK,SAAS,EAAC,kBAAkB,aAC/B,cAAK,SAAS,EAAC,yCAAyC,GAAG,EAC3D,cAAK,SAAS,EAAC,yCAAyC,GAAG,EAC3D,cAAK,SAAS,EAAC,oDAAoD,GAAG,IAClE,IACF,EACL,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAC9B,eAAa,SAAS,EAAC,WAAW,aAChC,cAAK,SAAS,EAAC,yCAAyC,GAAG,EAC3D,cACE,SAAS,EAAC,2DAA2D,EACrE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAC/B,KALM,CAAC,CAML,CACP,CAAC,IACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EAAE,SAAS,EAAmC;IACnE,OAAO,CACL,eACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CACX,oDAAoD,EACpD,SAAS,CACV,aAED,KAAC,aAAa,IAAC,SAAS,EAAC,kCAAkC,GAAG,EAC9D,YAAG,SAAS,EAAC,2CAA2C,qCAEpD,EACJ,YAAG,SAAS,EAAC,kCAAkC,8EAE3C,IACA,CACP,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,SAAS,UAAU,CAAC,IAAU;IAC5B,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE;QACtC,KAAK,EAAE,OAAO;QACd,GAAG,EAAE,SAAS;QACd,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAC9E,6EAA6E;AAC7E,8EAA8E;AAE9E,SAAS,aAAa,CAAC,EAAE,SAAS,EAAmC;IACnE,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,aAElB,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,GAAG,EACjD,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,GAAG,EACjD,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,MAAM,EAAC,IAAI,EAAC,cAAc,EAAC,MAAM,EAAC,MAAM,GAAG,EACrE,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,MAAM,EAAC,CAAC,EAAC,MAAM,EAAC,IAAI,EAAC,cAAc,EAAC,MAAM,EAAC,MAAM,GAAG,IAClE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,SAAS,EAAmC;IAC/D,OAAO,CACL,cACE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,YAElB,eAAM,CAAC,EAAC,sBAAsB,GAAG,GAC7B,CACP,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,SAAS,EAAmC;IACjE,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,aAElB,eAAM,CAAC,EAAC,uBAAuB,GAAG,EAClC,eAAM,CAAC,EAAC,UAAU,GAAG,EACrB,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,MAAM,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,cAAc,EAAC,MAAM,EAAC,MAAM,GAAG,IACjE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EAAE,SAAS,EAAmC;IAClE,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,aAElB,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,CAAC,EAAC,KAAK,GAAG,EAChC,eAAM,CAAC,EAAC,gBAAgB,GAAG,IACvB,CACP,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,SAAS,EAAmC;IACjE,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,aAElB,eAAM,CAAC,EAAC,gCAAgC,GAAG,EAC3C,eAAM,CAAC,EAAC,iCAAiC,GAAG,EAC5C,eAAM,CAAC,EAAC,YAAY,GAAG,EACvB,eAAM,CAAC,EAAC,YAAY,GAAG,IACnB,CACP,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAAE,SAAS,EAAmC;IAChE,OAAO,CACL,cACE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,YAElB,eAAM,CAAC,EAAC,sEAAsE,GAAG,GAC7E,CACP,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EAAE,SAAS,EAAmC;IAClE,OAAO,CACL,cACE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,YAElB,eAAM,CAAC,EAAC,gHAAgH,GAAG,GACvH,CACP,CAAC;AACJ,CAAC;AAED,SAAS,eAAe;IACtB,OAAO,CACL,cACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EACrB,SAAS,EAAC,cAAc,iBACZ,MAAM,YAElB,eAAM,CAAC,EAAC,oBAAoB,GAAG,GAC3B,CACP,CAAC;AACJ,CAAC"}
@@ -16,4 +16,12 @@ export { useMcpServerSetup, toServerKey } from "./useMcpServerSetup";
16
16
  export type { UseMcpServerSetupReturn, SubmitMcpEnvVarsOptions, McpServerSetupEntry, McpServerSetupPhase, McpServerSetupState, } from "./useMcpServerSetup";
17
17
  export { McpServerDetailView } from "./McpServerDetailView";
18
18
  export type { McpServerDetailViewProps } from "./McpServerDetailView";
19
+ export { useDiscoverCapabilities } from "./useDiscoverCapabilities";
20
+ export type { UseDiscoverCapabilitiesReturn } from "./useDiscoverCapabilities";
21
+ export { useMcpServerCredentials } from "./useMcpServerCredentials";
22
+ export type { UseMcpServerCredentialsReturn } from "./useMcpServerCredentials";
23
+ export { useTriggerApprovalPolicySession } from "./useTriggerApprovalPolicySession";
24
+ export type { UseTriggerApprovalPolicySessionReturn, TriggerApprovalPolicyResult, } from "./useTriggerApprovalPolicySession";
25
+ export { ApprovalPolicyGeneratorPanel } from "./ApprovalPolicyGeneratorPanel";
26
+ export type { ApprovalPolicyGeneratorPanelProps } from "./ApprovalPolicyGeneratorPanel";
19
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp-server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EACV,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,YAAY,EACV,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EACV,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EACV,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EACV,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACrE,YAAY,EACV,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp-server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EACV,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,YAAY,EACV,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EACV,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EACV,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EACV,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACrE,YAAY,EACV,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,YAAY,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAE/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,YAAY,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAE/E,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,YAAY,EACV,qCAAqC,EACrC,2BAA2B,GAC5B,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,YAAY,EAAE,iCAAiC,EAAE,MAAM,gCAAgC,CAAC"}
@@ -7,4 +7,8 @@ export { McpToolSelector } from "./McpToolSelector";
7
7
  export { McpServerConfigPanel } from "./McpServerConfigPanel";
8
8
  export { useMcpServerSetup, toServerKey } from "./useMcpServerSetup";
9
9
  export { McpServerDetailView } from "./McpServerDetailView";
10
+ export { useDiscoverCapabilities } from "./useDiscoverCapabilities";
11
+ export { useMcpServerCredentials } from "./useMcpServerCredentials";
12
+ export { useTriggerApprovalPolicySession } from "./useTriggerApprovalPolicySession";
13
+ export { ApprovalPolicyGeneratorPanel } from "./ApprovalPolicyGeneratorPanel";
10
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp-server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAMtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAMxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAM1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAMpD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAM9D,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AASrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp-server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAMtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAMxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAM1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAMpD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAM9D,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AASrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AAMpF,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"}
@@ -0,0 +1,59 @@
1
+ import type { McpServer } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/api_pb";
2
+ import type { EnvVarInput } from "@stigmer/sdk";
3
+ export interface UseDiscoverCapabilitiesReturn {
4
+ /**
5
+ * Trigger server-side MCP discovery for the given MCP server.
6
+ *
7
+ * When `runtimeEnv` is provided, the values are passed directly to
8
+ * the backend as one-time credentials (not persisted to any
9
+ * environment). When omitted, the backend resolves credentials from
10
+ * the user's personal environment.
11
+ *
12
+ * Blocks until discovery completes (~30s timeout).
13
+ *
14
+ * @param mcpServerId - System-generated ID of the MCP server (metadata.id).
15
+ * @param runtimeEnv - Optional one-time environment variables for discovery.
16
+ * @returns The updated McpServer with populated discovered_capabilities.
17
+ */
18
+ readonly discover: (mcpServerId: string, runtimeEnv?: Record<string, EnvVarInput>) => Promise<McpServer>;
19
+ /** `true` while a discovery RPC is in flight. */
20
+ readonly isDiscovering: boolean;
21
+ /** Error from the most recent failed discovery, or `null`. */
22
+ readonly error: Error | null;
23
+ /** Clear the error state. */
24
+ readonly clearError: () => void;
25
+ }
26
+ /**
27
+ * Action hook for triggering server-side MCP server capability discovery.
28
+ *
29
+ * Calls the `discoverCapabilities` RPC which delegates to the agent-runner
30
+ * via a Temporal workflow. The RPC blocks until discovery completes
31
+ * (typically 5-15 seconds, ~30s timeout).
32
+ *
33
+ * Supports two modes:
34
+ * - **Save for future** (default): Credentials are saved to the personal
35
+ * environment first, then `discover(id)` is called without `runtimeEnv`.
36
+ * - **One-time use**: `discover(id, runtimeEnv)` passes credentials
37
+ * directly to the backend. They are used for this discovery only and
38
+ * not persisted to any environment.
39
+ *
40
+ * @example
41
+ * ```tsx
42
+ * const { discover, isDiscovering, error } = useDiscoverCapabilities();
43
+ * const { refetch } = useMcpServer(org, slug);
44
+ *
45
+ * // Save for future: credentials already in personal environment
46
+ * async function handleDiscoverSaved() {
47
+ * await discover(mcpServer.metadata.id);
48
+ * refetch();
49
+ * }
50
+ *
51
+ * // One-time use: pass credentials directly
52
+ * async function handleDiscoverTemporary(values: Record<string, EnvVarInput>) {
53
+ * await discover(mcpServer.metadata.id, values);
54
+ * refetch();
55
+ * }
56
+ * ```
57
+ */
58
+ export declare function useDiscoverCapabilities(): UseDiscoverCapabilitiesReturn;
59
+ //# sourceMappingURL=useDiscoverCapabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDiscoverCapabilities.d.ts","sourceRoot":"","sources":["../../src/mcp-server/useDiscoverCapabilities.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wDAAwD,CAAC;AAExF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAIhD,MAAM,WAAW,6BAA6B;IAC5C;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,QAAQ,EAAE,CACjB,WAAW,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,KACrC,OAAO,CAAC,SAAS,CAAC,CAAC;IACxB,iDAAiD;IACjD,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7B,6BAA6B;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,uBAAuB,IAAI,6BAA6B,CA+CvE"}
@@ -0,0 +1,77 @@
1
+ "use client";
2
+ import { useCallback, useState } from "react";
3
+ import { create } from "@bufbuild/protobuf";
4
+ import { DiscoverCapabilitiesInputSchema } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/io_pb";
5
+ import { useStigmer } from "../hooks";
6
+ import { toError } from "../internal/toError";
7
+ /**
8
+ * Action hook for triggering server-side MCP server capability discovery.
9
+ *
10
+ * Calls the `discoverCapabilities` RPC which delegates to the agent-runner
11
+ * via a Temporal workflow. The RPC blocks until discovery completes
12
+ * (typically 5-15 seconds, ~30s timeout).
13
+ *
14
+ * Supports two modes:
15
+ * - **Save for future** (default): Credentials are saved to the personal
16
+ * environment first, then `discover(id)` is called without `runtimeEnv`.
17
+ * - **One-time use**: `discover(id, runtimeEnv)` passes credentials
18
+ * directly to the backend. They are used for this discovery only and
19
+ * not persisted to any environment.
20
+ *
21
+ * @example
22
+ * ```tsx
23
+ * const { discover, isDiscovering, error } = useDiscoverCapabilities();
24
+ * const { refetch } = useMcpServer(org, slug);
25
+ *
26
+ * // Save for future: credentials already in personal environment
27
+ * async function handleDiscoverSaved() {
28
+ * await discover(mcpServer.metadata.id);
29
+ * refetch();
30
+ * }
31
+ *
32
+ * // One-time use: pass credentials directly
33
+ * async function handleDiscoverTemporary(values: Record<string, EnvVarInput>) {
34
+ * await discover(mcpServer.metadata.id, values);
35
+ * refetch();
36
+ * }
37
+ * ```
38
+ */
39
+ export function useDiscoverCapabilities() {
40
+ const stigmer = useStigmer();
41
+ const [isDiscovering, setIsDiscovering] = useState(false);
42
+ const [error, setError] = useState(null);
43
+ const clearError = useCallback(() => setError(null), []);
44
+ const discover = useCallback(async (mcpServerId, runtimeEnv) => {
45
+ setIsDiscovering(true);
46
+ setError(null);
47
+ try {
48
+ const runtimeEnvMap = {};
49
+ if (runtimeEnv) {
50
+ for (const [key, input] of Object.entries(runtimeEnv)) {
51
+ runtimeEnvMap[key] = {
52
+ value: input.value,
53
+ isSecret: input.isSecret ?? false,
54
+ };
55
+ }
56
+ }
57
+ const input = create(DiscoverCapabilitiesInputSchema, {
58
+ mcpServerId,
59
+ ...(Object.keys(runtimeEnvMap).length > 0 && {
60
+ runtimeEnv: runtimeEnvMap,
61
+ }),
62
+ });
63
+ const result = await stigmer.mcpServer.discoverCapabilities(input);
64
+ return result;
65
+ }
66
+ catch (err) {
67
+ const wrapped = toError(err);
68
+ setError(wrapped);
69
+ throw wrapped;
70
+ }
71
+ finally {
72
+ setIsDiscovering(false);
73
+ }
74
+ }, [stigmer]);
75
+ return { discover, isDiscovering, error, clearError };
76
+ }
77
+ //# sourceMappingURL=useDiscoverCapabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDiscoverCapabilities.js","sourceRoot":"","sources":["../../src/mcp-server/useDiscoverCapabilities.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,+BAA+B,EAAE,MAAM,uDAAuD,CAAC;AAExG,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AA6B9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAEzD,MAAM,QAAQ,GAAG,WAAW,CAC1B,KAAK,EACH,WAAmB,EACnB,UAAwC,EACpB,EAAE;QACtB,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEf,IAAI,CAAC;YACH,MAAM,aAAa,GAAyD,EAAE,CAAC;YAC/E,IAAI,UAAU,EAAE,CAAC;gBACf,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;oBACtD,aAAa,CAAC,GAAG,CAAC,GAAG;wBACnB,KAAK,EAAE,KAAK,CAAC,KAAK;wBAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK;qBAClC,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,+BAA+B,EAAE;gBACpD,WAAW;gBACX,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI;oBAC3C,UAAU,EAAE,aAAa;iBAC1B,CAAC;aACH,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACnE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YAC7B,QAAQ,CAAC,OAAO,CAAC,CAAC;YAClB,MAAM,OAAO,CAAC;QAChB,CAAC;gBAAS,CAAC;YACT,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AACxD,CAAC"}