@manta-eu/react 0.5.1 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/chat-view/ToolApprovalPart.d.ts +12 -0
- package/dist/components/chat-view/ToolApprovalPart.d.ts.map +1 -0
- package/dist/components/chat-view/ToolApprovalPart.js +12 -0
- package/dist/components/chat-view/ToolApprovalPart.js.map +1 -0
- package/dist/components/chat-view/ToolMessagePart.d.ts.map +1 -1
- package/dist/components/chat-view/ToolMessagePart.js +7 -15
- package/dist/components/chat-view/ToolMessagePart.js.map +1 -1
- package/dist/components/chat-view/tool-part-rendering.js +1 -1
- package/dist/components/chat-view/tool-part-rendering.js.map +1 -1
- package/dist/components/planning/ActionPlanDetailView.d.ts +1 -0
- package/dist/components/planning/ActionPlanDetailView.d.ts.map +1 -1
- package/dist/components/planning/ActionPlanDetailView.js +2 -2
- package/dist/components/planning/ActionPlanDetailView.js.map +1 -1
- package/dist/components/planning/ConnectedPlanDetailView.d.ts +1 -0
- package/dist/components/planning/ConnectedPlanDetailView.d.ts.map +1 -1
- package/dist/components/planning/ConnectedPlanDetailView.js.map +1 -1
- package/dist/components/planning/TopBar.d.ts +1 -0
- package/dist/components/planning/TopBar.d.ts.map +1 -1
- package/dist/components/planning/TopBar.js +7 -4
- package/dist/components/planning/TopBar.js.map +1 -1
- package/dist/components/planning/plan-detail-utils.d.ts +1 -0
- package/dist/components/planning/plan-detail-utils.d.ts.map +1 -1
- package/dist/components/planning/plan-detail-utils.js +4 -1
- package/dist/components/planning/plan-detail-utils.js.map +1 -1
- package/dist/components/tool-invocation-card/ToolActions.d.ts +2 -4
- package/dist/components/tool-invocation-card/ToolActions.d.ts.map +1 -1
- package/dist/components/tool-invocation-card/ToolActions.js +2 -9
- package/dist/components/tool-invocation-card/ToolActions.js.map +1 -1
- package/dist/components/tool-invocation-card/ToolHeader.d.ts +0 -1
- package/dist/components/tool-invocation-card/ToolHeader.d.ts.map +1 -1
- package/dist/components/tool-invocation-card/ToolHeader.js +11 -4
- package/dist/components/tool-invocation-card/ToolHeader.js.map +1 -1
- package/dist/components/tool-invocation-card/ToolInvocationCard.d.ts +0 -7
- package/dist/components/tool-invocation-card/ToolInvocationCard.d.ts.map +1 -1
- package/dist/components/tool-invocation-card/ToolInvocationCard.js +6 -8
- package/dist/components/tool-invocation-card/ToolInvocationCard.js.map +1 -1
- package/dist/hooks/use-connection-problems.d.ts.map +1 -1
- package/dist/hooks/useActionGraph.d.ts +7 -0
- package/dist/hooks/useActionGraph.d.ts.map +1 -0
- package/dist/hooks/useActionGraph.js +23 -0
- package/dist/hooks/useActionGraph.js.map +1 -0
- package/dist/hooks/useValidateActionPlan.d.ts.map +1 -1
- package/dist/lib/tool-icons.d.ts.map +1 -1
- package/dist/lib/tool-icons.js +1 -0
- package/dist/lib/tool-icons.js.map +1 -1
- package/dist/routes/plans/components/ActionPlansPage.d.ts.map +1 -1
- package/dist/routes/plans/components/ActionPlansPage.js +3 -3
- package/dist/routes/plans/components/ActionPlansPage.js.map +1 -1
- package/dist/routes/plans/components/PlanDetailRouteContent.d.ts.map +1 -1
- package/dist/routes/plans/components/PlanDetailRouteContent.js +3 -1
- package/dist/routes/plans/components/PlanDetailRouteContent.js.map +1 -1
- package/package.json +12 -7
- package/src/app-subpaths.json +1 -0
- package/src/components/chat-view/ToolApprovalPart.tsx +27 -0
- package/src/components/chat-view/ToolMessagePart.tsx +8 -25
- package/src/components/chat-view/tool-part-rendering.ts +1 -1
- package/src/components/planning/ActionPlanDetailView.tsx +3 -0
- package/src/components/planning/ConnectedPlanDetailView.tsx +1 -0
- package/src/components/planning/TopBar.tsx +14 -3
- package/src/components/planning/plan-detail-utils.tsx +5 -1
- package/src/components/tool-invocation-card/ToolActions.tsx +5 -16
- package/src/components/tool-invocation-card/ToolHeader.tsx +13 -6
- package/src/components/tool-invocation-card/ToolInvocationCard.tsx +6 -23
- package/src/hooks/useActionGraph.ts +41 -0
- package/src/lib/tool-icons.ts +1 -0
- package/src/routes/plans/components/ActionPlansPage.tsx +4 -4
- package/src/routes/plans/components/PlanDetailRouteContent.tsx +3 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { runActionGraph, } from "@manta-eu/client/shared/action-graph";
|
|
2
|
+
import { useMutation, useQueryClient } from "@tanstack/react-query";
|
|
3
|
+
import { uniq } from "ramda";
|
|
4
|
+
import { useSparqlOptions } from "#hooks/use-sparql-options";
|
|
5
|
+
import { useMantaClient } from "#providers/MantaClientProvider";
|
|
6
|
+
import { invalidateActionPlanQueries } from "#shared/query-keys";
|
|
7
|
+
export const actionGraphMutationKey = ["ExecuteActionGraph"];
|
|
8
|
+
const planGraphIris = ({ results }) => uniq(results.flatMap((result) => ("planGraphIri" in result ? [result.planGraphIri] : [])));
|
|
9
|
+
/** Sends a change of several entities as one plan and reads back what each op did; `results[i]` is `ops[i]`. */
|
|
10
|
+
export function useActionGraph(options = {}) {
|
|
11
|
+
const { mantaClient } = useMantaClient();
|
|
12
|
+
const readOptions = useSparqlOptions();
|
|
13
|
+
const queryClient = useQueryClient();
|
|
14
|
+
const graphql = (document, variables, request) => mantaClient.request({ document, variables, signal: request?.signal });
|
|
15
|
+
return useMutation({
|
|
16
|
+
mutationKey: actionGraphMutationKey,
|
|
17
|
+
mutationFn: (ops) => runActionGraph(ops, { ...options, graphql, readOptions }),
|
|
18
|
+
onSuccess: async (run) => {
|
|
19
|
+
await Promise.all(planGraphIris(run).map((planGraphIri) => invalidateActionPlanQueries(queryClient, planGraphIri)));
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=useActionGraph.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useActionGraph.js","sourceRoot":"","sources":["../../src/hooks/useActionGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,GAKf,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,cAAc,EAA0B,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAIjE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,oBAAoB,CAAU,CAAC;AAEtE,MAAM,aAAa,GAAG,CAAC,EAAE,OAAO,EAAY,EAAY,EAAE,CACxD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,cAAc,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAE7F,gHAAgH;AAChH,MAAM,UAAU,cAAc,CAC5B,UAAiC,EAAE;IAEnC,MAAM,EAAE,WAAW,EAAE,GAAG,cAAc,EAAE,CAAC;IACzC,MAAM,WAAW,GAAG,gBAAgB,EAAE,CAAC;IACvC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,MAAM,OAAO,GAAkB,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,CAC9D,WAAW,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAExE,OAAO,WAAW,CAAsC;QACtD,WAAW,EAAE,sBAAsB;QACnC,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;QAC9E,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACvB,MAAM,OAAO,CAAC,GAAG,CACf,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,2BAA2B,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CACjG,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useValidateActionPlan.d.ts","sourceRoot":"","sources":["../../src/hooks/useValidateActionPlan.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,GAAG,SAAS;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"useValidateActionPlan.d.ts","sourceRoot":"","sources":["../../src/hooks/useValidateActionPlan.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,GAAG,SAAS;;;;;;;;;sBAkBg3qL,CAAC;;sBAAwE,CAAC;iBAA8B,CAAC;uBAAoC,CAAC;;;mBAA+G,CAAC;;;;;EAD1srL"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-icons.d.ts","sourceRoot":"","sources":["../../src/lib/tool-icons.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AACrC,OAAO,EAeL,KAAK,UAAU,EAQhB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-icons.d.ts","sourceRoot":"","sources":["../../src/lib/tool-icons.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AACrC,OAAO,EAeL,KAAK,UAAU,EAQhB,MAAM,cAAc,CAAC;AAyDtB,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,UAAU,CAE1D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAEzE;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAYxD;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAK7F;AAED,wBAAgB,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAKtF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAuDpD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,UAAU,CAG/D"}
|
package/dist/lib/tool-icons.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-icons.js","sourceRoot":"","sources":["../../src/lib/tool-icons.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAiB,MAAM,+BAA+B,CAAC;AAEjF,OAAO,EACL,aAAa,EACb,SAAS,EACT,QAAQ,EACR,KAAK,EACL,SAAS,EACT,YAAY,EACZ,MAAM,EACN,KAAK,EACL,QAAQ,EACR,UAAU,EACV,SAAS,EACT,MAAM,EACN,SAAS,EACT,IAAI,EAEJ,SAAS,EACT,OAAO,EACP,OAAO,EACP,SAAS,EACT,MAAM,EACN,UAAU,EACV,GAAG,GACJ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,WAAW,GAAiC;IAChD,mBAAmB,EAAE,QAAQ;IAC7B,QAAQ,EAAE,QAAQ;IAClB,WAAW,EAAE,QAAQ;IACrB,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,KAAK;IAClB,aAAa,EAAE,UAAU;IACzB,YAAY,EAAE,KAAK;IACnB,kBAAkB,EAAE,KAAK;IACzB,cAAc,EAAE,KAAK;IACrB,iBAAiB,EAAE,GAAG;IACtB,kBAAkB,EAAE,GAAG;IACvB,YAAY,EAAE,MAAM;IACpB,oBAAoB,EAAE,GAAG;IACzB,mBAAmB,EAAE,UAAU;IAC/B,aAAa,EAAE,YAAY;IAC3B,gBAAgB,EAAE,SAAS;
|
|
1
|
+
{"version":3,"file":"tool-icons.js","sourceRoot":"","sources":["../../src/lib/tool-icons.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionPlansPage.d.ts","sourceRoot":"","sources":["../../../../src/routes/plans/components/ActionPlansPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ActionPlansPage.d.ts","sourceRoot":"","sources":["../../../../src/routes/plans/components/ActionPlansPage.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAsBvC,OAAO,EAAiC,KAAK,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAUpF,MAAM,MAAM,oBAAoB,GAAG;IACjC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,SAAS,CAAC;CAC5D,CAAC;AAEF,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,2CAsP1D"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
-
import { GQLActionPlanState } from "@manta-eu/client";
|
|
4
3
|
import { buildPlanHref as defaultBuildPlanHref } from "@manta-eu/client/shared/agent-mode";
|
|
5
4
|
import { isPresent } from "@manta-eu/lib/present";
|
|
6
5
|
import { useReactTable } from "@tanstack/react-table";
|
|
@@ -15,6 +14,7 @@ import { useActionPlansTableColumns } from "./ActionPlansTableColumns.js";
|
|
|
15
14
|
import { actionPlanColumnIds, approvalForFilter, defaultColumnOrder, orderByForSorting, parseAsApprovalFilter, parseAsAvailabilityFilter, parseAsPlanSearch, parseAsStatusFilter, parseAsTypeFilter, planFiltersForSelection, tableKey, } from "./actionPlansTableConfig.js";
|
|
16
15
|
import { renderDefaultActionPlansFrame } from "./frame.js";
|
|
17
16
|
import { ExecutePlanDialog } from "#components/planning/ExecutePlanDialog";
|
|
17
|
+
import { canNeedApproval } from "#components/planning/plan-detail-utils";
|
|
18
18
|
import { createTableConfig, useTableState } from "#components/table/index";
|
|
19
19
|
import { useActionPlans } from "#hooks/useActionPlans";
|
|
20
20
|
import { useFittedPagination } from "#hooks/useFittedPagination";
|
|
@@ -96,9 +96,9 @@ export function ActionPlansPage(props) {
|
|
|
96
96
|
setPageIndex(totalPages - 1);
|
|
97
97
|
}
|
|
98
98
|
}, [count, isLoading, pageIndex, totalPages]);
|
|
99
|
-
const
|
|
99
|
+
const approvablePlanIris = useMemo(() => plans.filter((plan) => canNeedApproval(plan.state)).map((plan) => plan.iri), [plans]);
|
|
100
100
|
const { data: manualActionsByPlan } = useManualActionsForPlans({
|
|
101
|
-
planGraphIris:
|
|
101
|
+
planGraphIris: approvablePlanIris,
|
|
102
102
|
refetchIntervalMs: 10000,
|
|
103
103
|
});
|
|
104
104
|
function navigateToHref(href) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionPlansPage.js","sourceRoot":"","sources":["../../../../src/routes/plans/components/ActionPlansPage.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ActionPlansPage.js","sourceRoot":"","sources":["../../../../src/routes/plans/components/ActionPlansPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlanDetailRouteContent.d.ts","sourceRoot":"","sources":["../../../../src/routes/plans/components/PlanDetailRouteContent.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PlanDetailRouteContent.d.ts","sourceRoot":"","sources":["../../../../src/routes/plans/components/PlanDetailRouteContent.tsx"],"names":[],"mappings":"AA4BA,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,2CA4LxE"}
|
|
@@ -20,6 +20,7 @@ import { isTerminalActionPlanState } from "#components/planning/plan-detail-util
|
|
|
20
20
|
import { useActionPlanDetail } from "#hooks/useActionPlanDetail";
|
|
21
21
|
import { useActionPlanExecution } from "#hooks/useActionPlanExecution";
|
|
22
22
|
import { ActionPlanChangesTable, useActionPlanExecutionProvenance, useManualActions } from "#ldo-ui";
|
|
23
|
+
import { getPendingManualActions } from "#lib/manual-actions";
|
|
23
24
|
import { useMantaClient } from "#providers/MantaClientProvider";
|
|
24
25
|
import { ActivityDetail } from "#routes/activity/detail/ActivityDetail";
|
|
25
26
|
import { invalidateActionPlanQueries } from "#shared/query-keys";
|
|
@@ -107,6 +108,7 @@ export function PlanDetailRouteContent(props) {
|
|
|
107
108
|
triggeredAtMs: executionControl.triggeredAtMs,
|
|
108
109
|
isRunningOverride: hasConfirmedExecution || hasExecutionEvidence,
|
|
109
110
|
});
|
|
111
|
+
const pendingApprovalCount = getPendingManualActions(manualActions).length;
|
|
110
112
|
const { triggeredAtMs, dryRun } = executionControl;
|
|
111
113
|
const isDryRun = deriveIsDryRun({ provenance: executionProvenance ?? null, triggeredAtMs, dryRun });
|
|
112
114
|
const shouldShowActioningSurface = hasConfirmedExecution ||
|
|
@@ -119,6 +121,6 @@ export function PlanDetailRouteContent(props) {
|
|
|
119
121
|
const activeViewMode = viewMode === "visual" && !graphDocument?.size ? "overview" : viewMode;
|
|
120
122
|
const showExecutionSurface = shouldShowActioningSurface && activeViewMode === "overview";
|
|
121
123
|
const rulesSection = _jsx(ActionPlanRulesSection, { planGraphIri: planGraphIri, LinkComponent: Link });
|
|
122
|
-
return (_jsxs("div", { className: "flex min-h-0 flex-1 flex-col overflow-y-auto overflow-x-hidden", children: [_jsx(ExecutePlanDialog, { onConfirm: handleConfirmExecution, open: isExecuteDialogOpen, onOpenChange: setIsExecuteDialogOpen, trigger: null }), _jsx(ExecutePlanDialog, { action: "rerun", onConfirm: handleConfirmRerun, open: isRerunDialogOpen, onOpenChange: setIsRerunDialogOpen, trigger: null }), _jsx(ConnectedPlanDetailView, { leadingAction: _jsx(SidebarMobileToggle, {}), plan: plan, graphDocument: graphDocument, isLoading: isLoading, error: error, hideChanges: true, fitContent: showExecutionSurface, viewMode: activeViewMode, stateOverride: derivedPlanState, isDryRun: isDryRun, onViewModeChange: setViewMode, onExecute: detailExecuteAction, onCancel: detailCancelAction, onRerun: detailRerunAction, rulesSlot: showExecutionSurface ? undefined : rulesSection, onRunClick: (activityIri) => navigate(buildActivityHref(activityIri)) }), showExecutionSurface && (_jsx(ActioningView, { planGraphIri: planGraphIri, isLoading: false, mantaChatBaseUrl: mantaBaseUrl, executionControl: executionControl, datastoreId: datastoreId, userId: userId, hideTopBar: true, completedChangesSlot: _jsx(ActionPlanChangesTable, { planGraphIri: planGraphIri, emptyFallback: isPresent(latestRunIri) ? (_jsx("div", { className: "flex max-h-[60vh] flex-col", children: _jsx(ActivityDetail, { activityIri: latestRunIri, variant: "embedded", caption: "No recommended changes \u2014 showing the latest run." }) })) : undefined }) })), showExecutionSurface && _jsx("div", { className: "mx-auto w-full max-w-7xl px-8 py-6", children: rulesSection })] }));
|
|
124
|
+
return (_jsxs("div", { className: "flex min-h-0 flex-1 flex-col overflow-y-auto overflow-x-hidden", children: [_jsx(ExecutePlanDialog, { onConfirm: handleConfirmExecution, open: isExecuteDialogOpen, onOpenChange: setIsExecuteDialogOpen, trigger: null }), _jsx(ExecutePlanDialog, { action: "rerun", onConfirm: handleConfirmRerun, open: isRerunDialogOpen, onOpenChange: setIsRerunDialogOpen, trigger: null }), _jsx(ConnectedPlanDetailView, { leadingAction: _jsx(SidebarMobileToggle, {}), plan: plan, graphDocument: graphDocument, isLoading: isLoading, error: error, hideChanges: true, fitContent: showExecutionSurface, viewMode: activeViewMode, stateOverride: derivedPlanState, isDryRun: isDryRun, pendingApprovalCount: pendingApprovalCount, onViewModeChange: setViewMode, onExecute: detailExecuteAction, onCancel: detailCancelAction, onRerun: detailRerunAction, rulesSlot: showExecutionSurface ? undefined : rulesSection, onRunClick: (activityIri) => navigate(buildActivityHref(activityIri)) }), showExecutionSurface && (_jsx(ActioningView, { planGraphIri: planGraphIri, isLoading: false, mantaChatBaseUrl: mantaBaseUrl, executionControl: executionControl, datastoreId: datastoreId, userId: userId, hideTopBar: true, completedChangesSlot: _jsx(ActionPlanChangesTable, { planGraphIri: planGraphIri, emptyFallback: isPresent(latestRunIri) ? (_jsx("div", { className: "flex max-h-[60vh] flex-col", children: _jsx(ActivityDetail, { activityIri: latestRunIri, variant: "embedded", caption: "No recommended changes \u2014 showing the latest run." }) })) : undefined }) })), showExecutionSurface && _jsx("div", { className: "mx-auto w-full max-w-7xl px-8 py-6", children: rulesSection })] }));
|
|
123
125
|
}
|
|
124
126
|
//# sourceMappingURL=PlanDetailRouteContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlanDetailRouteContent.js","sourceRoot":"","sources":["../../../../src/routes/plans/components/PlanDetailRouteContent.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PlanDetailRouteContent.js","sourceRoot":"","sources":["../../../../src/routes/plans/components/PlanDetailRouteContent.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@manta-eu/react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "The Manta design system, knowledge-graph UI and agent components",
|
|
5
5
|
"homepage": "https://developers.manta.eu",
|
|
6
6
|
"keywords": [
|
|
@@ -351,6 +351,11 @@
|
|
|
351
351
|
"types": "./dist/hooks/useResolveManualAction.d.ts",
|
|
352
352
|
"import": "./dist/hooks/useResolveManualAction.js"
|
|
353
353
|
},
|
|
354
|
+
"./hooks/useActionGraph": {
|
|
355
|
+
"manta-source": "./src/hooks/useActionGraph.ts",
|
|
356
|
+
"types": "./dist/hooks/useActionGraph.d.ts",
|
|
357
|
+
"import": "./dist/hooks/useActionGraph.js"
|
|
358
|
+
},
|
|
354
359
|
"./hooks/useActionPlans": {
|
|
355
360
|
"manta-source": "./src/hooks/useActionPlans.ts",
|
|
356
361
|
"types": "./dist/hooks/useActionPlans.d.ts",
|
|
@@ -1134,12 +1139,12 @@
|
|
|
1134
1139
|
"usehooks-ts": "^3.1.1",
|
|
1135
1140
|
"zod": "^4.5.0",
|
|
1136
1141
|
"zustand": "^5.0.2",
|
|
1137
|
-
"@manta-eu/
|
|
1138
|
-
"@manta-eu/
|
|
1139
|
-
"@manta-eu/
|
|
1140
|
-
"@manta-eu/
|
|
1141
|
-
"@manta-eu/
|
|
1142
|
-
"@manta-eu/lib": "0.
|
|
1142
|
+
"@manta-eu/auth": "0.6.0",
|
|
1143
|
+
"@manta-eu/datalog-parser": "0.6.0",
|
|
1144
|
+
"@manta-eu/client": "0.6.0",
|
|
1145
|
+
"@manta-eu/ldo": "0.6.0",
|
|
1146
|
+
"@manta-eu/lib": "0.6.0",
|
|
1147
|
+
"@manta-eu/rdf-lib": "0.6.0"
|
|
1143
1148
|
},
|
|
1144
1149
|
"peerDependencies": {
|
|
1145
1150
|
"@ulb-darmstadt/shacl-form": "^2.1.1-rc1",
|
package/src/app-subpaths.json
CHANGED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { getToolUIPartLabel } from "@manta-eu/client/shared/tools";
|
|
2
|
+
import type { ToolUIPart } from "ai";
|
|
3
|
+
import { Card } from "#components/card/index";
|
|
4
|
+
import { ToolActions } from "#components/tool-invocation-card/ToolActions";
|
|
5
|
+
|
|
6
|
+
type ToolApprovalResponse = { id: string; approved: boolean };
|
|
7
|
+
|
|
8
|
+
type ToolApprovalPartProps = {
|
|
9
|
+
part: ToolUIPart;
|
|
10
|
+
onRespond: (response: ToolApprovalResponse) => void;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export function ToolApprovalPart(props: ToolApprovalPartProps) {
|
|
14
|
+
const { part, onRespond } = props;
|
|
15
|
+
const id = part.approval?.id;
|
|
16
|
+
if (id === undefined) return null;
|
|
17
|
+
|
|
18
|
+
return (
|
|
19
|
+
<Card padding="md" className="my-3 w-full max-w-2xl card-base gap-3">
|
|
20
|
+
<h4 className="typography-small-medium">{getToolUIPartLabel(part)}</h4>
|
|
21
|
+
<ToolActions
|
|
22
|
+
onApprove={() => onRespond({ id, approved: true })}
|
|
23
|
+
onReject={() => onRespond({ id, approved: false })}
|
|
24
|
+
/>
|
|
25
|
+
</Card>
|
|
26
|
+
);
|
|
27
|
+
}
|
|
@@ -7,7 +7,9 @@ import { ActionPlanShowcaseCard } from "../tool-invocation-card/ActionPlanShowca
|
|
|
7
7
|
import { ToolInvocationCard } from "../tool-invocation-card/ToolInvocationCard";
|
|
8
8
|
import { isErrorToolResult, isShowcaseToolResult } from "../tool-invocation-card/types";
|
|
9
9
|
import { RequestUserInputToolPart } from "./RequestUserInputToolPart";
|
|
10
|
+
import { ToolApprovalPart } from "./ToolApprovalPart";
|
|
10
11
|
import { Banner } from "#components/banner/index";
|
|
12
|
+
import { useActiveChatConnection } from "#providers/ActiveChatProvider";
|
|
11
13
|
import { useChatManagerConnection } from "#providers/ChatManagerProvider";
|
|
12
14
|
|
|
13
15
|
type ActionPlanShowcaseToolPartProps = {
|
|
@@ -67,11 +69,16 @@ export function ToolMessagePart(props: ToolMessagePartProps) {
|
|
|
67
69
|
const { part, toolsUsedInSession, onAddToolResult } = props;
|
|
68
70
|
const toolCallId = part.toolCallId;
|
|
69
71
|
const toolName = part.type.replace("tool-", "");
|
|
72
|
+
const chatData = useActiveChatConnection()?.chatData;
|
|
70
73
|
|
|
71
74
|
if (toolName === "actionPlanShowcase") {
|
|
72
75
|
return <ActionPlanShowcaseToolPart part={part} />;
|
|
73
76
|
}
|
|
74
77
|
|
|
78
|
+
if (part.state === "approval-requested") {
|
|
79
|
+
return <ToolApprovalPart part={part} onRespond={(response) => chatData?.addToolApprovalResponse(response)} />;
|
|
80
|
+
}
|
|
81
|
+
|
|
75
82
|
if (toolName === requestUserInputToolName) {
|
|
76
83
|
return (
|
|
77
84
|
<RequestUserInputToolPart
|
|
@@ -84,29 +91,5 @@ export function ToolMessagePart(props: ToolMessagePartProps) {
|
|
|
84
91
|
);
|
|
85
92
|
}
|
|
86
93
|
|
|
87
|
-
return
|
|
88
|
-
<ToolInvocationCard
|
|
89
|
-
toolUIPart={part}
|
|
90
|
-
toolCallId={toolCallId}
|
|
91
|
-
needsConfirmation={false}
|
|
92
|
-
onSubmit={({ toolCallId, result }) => {
|
|
93
|
-
toolsUsedInSession.current.add(toolName);
|
|
94
|
-
|
|
95
|
-
onAddToolResult({
|
|
96
|
-
tool: toolName,
|
|
97
|
-
toolCallId,
|
|
98
|
-
output: result,
|
|
99
|
-
});
|
|
100
|
-
}}
|
|
101
|
-
addToolResult={(toolCallId, result) => {
|
|
102
|
-
toolsUsedInSession.current.add(toolName);
|
|
103
|
-
|
|
104
|
-
onAddToolResult({
|
|
105
|
-
tool: toolName,
|
|
106
|
-
toolCallId,
|
|
107
|
-
output: result,
|
|
108
|
-
});
|
|
109
|
-
}}
|
|
110
|
-
/>
|
|
111
|
-
);
|
|
94
|
+
return <ToolInvocationCard toolUIPart={part} />;
|
|
112
95
|
}
|
|
@@ -17,7 +17,7 @@ function isFailedRequestUserInputPart(part: UIMessage["parts"][number]): boolean
|
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
export function isStandaloneToolPart(part: ToolUIPart): boolean {
|
|
20
|
-
return standaloneToolPartTypes.has(part.type);
|
|
20
|
+
return standaloneToolPartTypes.has(part.type) || part.state === "approval-requested";
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
export function isPendingRequestUserInputPart(part: UIMessage["parts"][number]): boolean {
|
|
@@ -25,6 +25,7 @@ export type ActionPlanDetailViewProps = {
|
|
|
25
25
|
issueCount?: number;
|
|
26
26
|
isValidating?: boolean;
|
|
27
27
|
isDryRun?: boolean;
|
|
28
|
+
pendingApprovalCount?: number;
|
|
28
29
|
hideTopBar?: boolean;
|
|
29
30
|
hideChanges?: boolean;
|
|
30
31
|
fitContent?: boolean;
|
|
@@ -51,6 +52,7 @@ export function ActionPlanDetailView(props: ActionPlanDetailViewProps) {
|
|
|
51
52
|
issueCount = 0,
|
|
52
53
|
isValidating = false,
|
|
53
54
|
isDryRun = false,
|
|
55
|
+
pendingApprovalCount,
|
|
54
56
|
hideTopBar = false,
|
|
55
57
|
hideChanges = false,
|
|
56
58
|
fitContent = false,
|
|
@@ -122,6 +124,7 @@ export function ActionPlanDetailView(props: ActionPlanDetailViewProps) {
|
|
|
122
124
|
issueCount={issueCount}
|
|
123
125
|
isValidating={isValidating}
|
|
124
126
|
isDryRun={isDryRun}
|
|
127
|
+
pendingApprovalCount={pendingApprovalCount}
|
|
125
128
|
planName={planName}
|
|
126
129
|
status={status}
|
|
127
130
|
hasCurrentFacts={plan.hasCurrentFacts}
|
|
@@ -24,6 +24,7 @@ export type ConnectedPlanDetailViewProps = {
|
|
|
24
24
|
viewMode?: PlanViewMode;
|
|
25
25
|
stateOverride?: GQLActionPlanState;
|
|
26
26
|
isDryRun?: boolean;
|
|
27
|
+
pendingApprovalCount?: number;
|
|
27
28
|
ref?: Ref<ConnectedPlanDetailViewHandle>;
|
|
28
29
|
onViewModeChange?: (viewMode: PlanViewMode) => void;
|
|
29
30
|
onExecute?: (planIri: string) => void;
|
|
@@ -3,7 +3,7 @@ import { CircleStop, Eye, History, List, Play, RotateCcw } from "lucide-react";
|
|
|
3
3
|
import type { ReactNode } from "react";
|
|
4
4
|
import { match } from "ts-pattern";
|
|
5
5
|
import { ChatToggleButton } from "../layouts/ChatToggleButton";
|
|
6
|
-
import { isTerminalActionPlanState, type ActionPlanStatus } from "./plan-detail-utils";
|
|
6
|
+
import { isTerminalActionPlanState, needsApproval, type ActionPlanStatus } from "./plan-detail-utils";
|
|
7
7
|
import { Button } from "#components/button/index";
|
|
8
8
|
import { Tabs, TabsList, TabsTrigger } from "#components/tabs/index";
|
|
9
9
|
|
|
@@ -32,13 +32,23 @@ export type TopBarProps = {
|
|
|
32
32
|
onModify?: (planIri: string) => void;
|
|
33
33
|
topBarActions?: ReactNode;
|
|
34
34
|
leadingAction?: ReactNode;
|
|
35
|
+
pendingApprovalCount?: number;
|
|
35
36
|
};
|
|
36
37
|
|
|
37
38
|
function isPlanViewMode(value: string): value is PlanViewMode {
|
|
38
39
|
return value === "overview" || value === "visual" || value === "history";
|
|
39
40
|
}
|
|
40
41
|
|
|
41
|
-
function statusSubtitle(
|
|
42
|
+
function statusSubtitle(
|
|
43
|
+
status: ActionPlanStatus,
|
|
44
|
+
isDryRun: boolean,
|
|
45
|
+
hasCurrentFacts: boolean,
|
|
46
|
+
pendingApprovalCount: number,
|
|
47
|
+
): string | null {
|
|
48
|
+
if (!isDryRun && needsApproval(status, pendingApprovalCount)) {
|
|
49
|
+
return "Needs approval";
|
|
50
|
+
}
|
|
51
|
+
|
|
42
52
|
return match(status)
|
|
43
53
|
.with(GQLActionPlanState.Draft, () => (hasCurrentFacts ? "Plan is ready to run" : "Not currently executable"))
|
|
44
54
|
.with(GQLActionPlanState.Running, () => (isDryRun ? "Dry run in progress" : "Plan is running"))
|
|
@@ -65,6 +75,7 @@ export function TopBar(props: TopBarProps) {
|
|
|
65
75
|
onRerun,
|
|
66
76
|
topBarActions,
|
|
67
77
|
leadingAction,
|
|
78
|
+
pendingApprovalCount = 0,
|
|
68
79
|
} = props;
|
|
69
80
|
const isDraft = status === GQLActionPlanState.Draft;
|
|
70
81
|
const isRunning = status === GQLActionPlanState.Running;
|
|
@@ -77,7 +88,7 @@ export function TopBar(props: TopBarProps) {
|
|
|
77
88
|
}
|
|
78
89
|
}
|
|
79
90
|
|
|
80
|
-
const subtitle = statusSubtitle(status, isDryRun, hasCurrentFacts);
|
|
91
|
+
const subtitle = statusSubtitle(status, isDryRun, hasCurrentFacts, pendingApprovalCount);
|
|
81
92
|
|
|
82
93
|
return (
|
|
83
94
|
<div className="shrink-0 flex h-16 items-center justify-between gap-2 border-b border-default-border px-3 sm:px-6">
|
|
@@ -77,8 +77,12 @@ export function statusLabel(status: ActionPlanStatus): string {
|
|
|
77
77
|
.exhaustive();
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
+
export function canNeedApproval(state: ActionPlanStatus): boolean {
|
|
81
|
+
return state === GQLActionPlanState.Running || state === GQLActionPlanState.Completed;
|
|
82
|
+
}
|
|
83
|
+
|
|
80
84
|
export function needsApproval(state: ActionPlanStatus, pendingApprovalCount: number): boolean {
|
|
81
|
-
return pendingApprovalCount > 0 && (state
|
|
85
|
+
return pendingApprovalCount > 0 && canNeedApproval(state);
|
|
82
86
|
}
|
|
83
87
|
|
|
84
88
|
export function planStateVariant(state: ActionPlanStatus, pendingApprovalCount = 0): BadgeVariant {
|
|
@@ -1,30 +1,19 @@
|
|
|
1
|
-
import { APPROVAL } from "@manta-eu/client/shared/index";
|
|
2
|
-
import { type ToolInvocationCardProps } from "./ToolInvocationCard";
|
|
3
1
|
import { Button } from "#components/button/index";
|
|
4
2
|
|
|
5
3
|
type ToolActionsProps = {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
onSubmit: ToolInvocationCardProps["onSubmit"];
|
|
4
|
+
onApprove: () => void;
|
|
5
|
+
onReject: () => void;
|
|
9
6
|
};
|
|
10
7
|
|
|
11
8
|
export function ToolActions(props: ToolActionsProps) {
|
|
12
|
-
const {
|
|
13
|
-
|
|
14
|
-
function handleReject() {
|
|
15
|
-
onSubmit({ toolCallId, result: APPROVAL.NO });
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
function handleApprove() {
|
|
19
|
-
onSubmit({ toolCallId, result: APPROVAL.YES });
|
|
20
|
-
}
|
|
9
|
+
const { onApprove, onReject } = props;
|
|
21
10
|
|
|
22
11
|
return (
|
|
23
12
|
<div className="flex gap-2 justify-end">
|
|
24
|
-
<Button variant="destructive" size="sm" onClick={
|
|
13
|
+
<Button variant="destructive" size="sm" onClick={onReject}>
|
|
25
14
|
Reject
|
|
26
15
|
</Button>
|
|
27
|
-
<Button size="sm" onClick={
|
|
16
|
+
<Button size="sm" onClick={onApprove}>
|
|
28
17
|
Approve
|
|
29
18
|
</Button>
|
|
30
19
|
</div>
|
|
@@ -1,18 +1,24 @@
|
|
|
1
1
|
import { getToolUIPartLabel } from "@manta-eu/client/shared/tools";
|
|
2
2
|
import type { ToolUIPart } from "ai";
|
|
3
|
-
import { CheckCircle2, ChevronDown, Loader2 } from "lucide-react";
|
|
3
|
+
import { AlertTriangle, CheckCircle2, ChevronDown, Loader2, XCircle } from "lucide-react";
|
|
4
|
+
import { match } from "ts-pattern";
|
|
4
5
|
|
|
5
6
|
type ToolHeaderProps = {
|
|
6
7
|
toolUIPart: ToolUIPart;
|
|
7
|
-
needsConfirmation: boolean;
|
|
8
8
|
isExpanded: boolean;
|
|
9
9
|
onToggle: () => void;
|
|
10
10
|
};
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
function StateIcon(props: { state: ToolUIPart["state"] }) {
|
|
13
|
+
return match(props.state)
|
|
14
|
+
.with("output-available", () => <CheckCircle2 size={16} />)
|
|
15
|
+
.with("output-denied", () => <XCircle size={16} />)
|
|
16
|
+
.with("output-error", () => <AlertTriangle size={16} />)
|
|
17
|
+
.otherwise(() => <Loader2 size={16} className="animate-spin" />);
|
|
18
|
+
}
|
|
14
19
|
|
|
15
|
-
|
|
20
|
+
export function ToolHeader(props: ToolHeaderProps) {
|
|
21
|
+
const { toolUIPart, isExpanded, onToggle } = props;
|
|
16
22
|
|
|
17
23
|
const humanToolName = getToolUIPartLabel(toolUIPart);
|
|
18
24
|
|
|
@@ -23,8 +29,9 @@ export function ToolHeader(props: ToolHeaderProps) {
|
|
|
23
29
|
return (
|
|
24
30
|
<button type="button" onClick={handleToggle} className="w-full flex items-center gap-2 cursor-pointer">
|
|
25
31
|
<h4 className="typography-small-medium flex items-center gap-2 flex-1 text-left">
|
|
26
|
-
|
|
32
|
+
<StateIcon state={toolUIPart.state} />
|
|
27
33
|
{humanToolName}
|
|
34
|
+
{toolUIPart.state === "output-denied" && <span className="text-muted-foreground">Rejected</span>}
|
|
28
35
|
</h4>
|
|
29
36
|
<ChevronDown
|
|
30
37
|
size={16}
|
|
@@ -2,7 +2,6 @@ import { getToolUIPartLabel } from "@manta-eu/client/shared/tools";
|
|
|
2
2
|
import type { ToolUIPart } from "ai";
|
|
3
3
|
import { useCallback, useState } from "react";
|
|
4
4
|
import { match } from "ts-pattern";
|
|
5
|
-
import { ToolActions } from "./ToolActions";
|
|
6
5
|
import { ToolArgumentsDisplay } from "./ToolArgumentsDisplay";
|
|
7
6
|
import { ToolHeader } from "./ToolHeader";
|
|
8
7
|
import { ToolLoadingState } from "./ToolLoadingState";
|
|
@@ -12,30 +11,21 @@ import { cn } from "#lib/utils";
|
|
|
12
11
|
|
|
13
12
|
export type ToolInvocationCardProps = {
|
|
14
13
|
toolUIPart: ToolUIPart;
|
|
15
|
-
toolCallId: string;
|
|
16
|
-
needsConfirmation: boolean;
|
|
17
|
-
onSubmit: ({ toolCallId, result }: { toolCallId: string; result: string }) => void;
|
|
18
|
-
addToolResult: (toolCallId: string, result: string) => void;
|
|
19
14
|
};
|
|
20
15
|
|
|
21
16
|
export function ToolInvocationCard(props: ToolInvocationCardProps) {
|
|
22
|
-
const { toolUIPart
|
|
17
|
+
const { toolUIPart } = props;
|
|
23
18
|
const [isExpanded, setIsExpanded] = useState(false);
|
|
24
19
|
const loadingLabel = getToolUIPartLabel(toolUIPart);
|
|
25
20
|
const [executionStartTime] = useState(Date.now());
|
|
26
21
|
|
|
27
22
|
const handleToggle = useCallback(() => {
|
|
28
|
-
setIsExpanded(!
|
|
23
|
+
setIsExpanded((expanded) => !expanded);
|
|
29
24
|
}, []);
|
|
30
25
|
|
|
31
26
|
return (
|
|
32
27
|
<Card className="my-3 w-full max-w-2xl card-base overflow-hidden">
|
|
33
|
-
<ToolHeader
|
|
34
|
-
toolUIPart={toolUIPart}
|
|
35
|
-
needsConfirmation={needsConfirmation}
|
|
36
|
-
isExpanded={isExpanded}
|
|
37
|
-
onToggle={handleToggle}
|
|
38
|
-
/>
|
|
28
|
+
<ToolHeader toolUIPart={toolUIPart} isExpanded={isExpanded} onToggle={handleToggle} />
|
|
39
29
|
|
|
40
30
|
<div
|
|
41
31
|
className={cn([
|
|
@@ -46,22 +36,15 @@ export function ToolInvocationCard(props: ToolInvocationCardProps) {
|
|
|
46
36
|
<div className="overflow-y-auto" style={{ maxHeight: isExpanded ? "580px" : "0px" }}>
|
|
47
37
|
<ToolArgumentsDisplay toolUIPart={toolUIPart} />
|
|
48
38
|
|
|
49
|
-
{match(
|
|
50
|
-
.with(
|
|
51
|
-
<ToolActions
|
|
52
|
-
toolCallId={toolCallId}
|
|
53
|
-
toolName={toolUIPart.type.replace("tool-", "")}
|
|
54
|
-
onSubmit={onSubmit}
|
|
55
|
-
/>
|
|
56
|
-
))
|
|
57
|
-
.with({ needsConfirmation: false, state: "output-available" }, () => (
|
|
39
|
+
{match(toolUIPart.state)
|
|
40
|
+
.with("output-available", () => (
|
|
58
41
|
<ToolResultDisplay
|
|
59
42
|
result={toolUIPart.output}
|
|
60
43
|
executionStartTime={executionStartTime}
|
|
61
44
|
toolUIPart={toolUIPart}
|
|
62
45
|
/>
|
|
63
46
|
))
|
|
64
|
-
.with(
|
|
47
|
+
.with("input-streaming", () => <ToolLoadingState label={loadingLabel} />)
|
|
65
48
|
.otherwise(() => null)}
|
|
66
49
|
</div>
|
|
67
50
|
</div>
|