@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.
Files changed (67) hide show
  1. package/dist/components/chat-view/ToolApprovalPart.d.ts +12 -0
  2. package/dist/components/chat-view/ToolApprovalPart.d.ts.map +1 -0
  3. package/dist/components/chat-view/ToolApprovalPart.js +12 -0
  4. package/dist/components/chat-view/ToolApprovalPart.js.map +1 -0
  5. package/dist/components/chat-view/ToolMessagePart.d.ts.map +1 -1
  6. package/dist/components/chat-view/ToolMessagePart.js +7 -15
  7. package/dist/components/chat-view/ToolMessagePart.js.map +1 -1
  8. package/dist/components/chat-view/tool-part-rendering.js +1 -1
  9. package/dist/components/chat-view/tool-part-rendering.js.map +1 -1
  10. package/dist/components/planning/ActionPlanDetailView.d.ts +1 -0
  11. package/dist/components/planning/ActionPlanDetailView.d.ts.map +1 -1
  12. package/dist/components/planning/ActionPlanDetailView.js +2 -2
  13. package/dist/components/planning/ActionPlanDetailView.js.map +1 -1
  14. package/dist/components/planning/ConnectedPlanDetailView.d.ts +1 -0
  15. package/dist/components/planning/ConnectedPlanDetailView.d.ts.map +1 -1
  16. package/dist/components/planning/ConnectedPlanDetailView.js.map +1 -1
  17. package/dist/components/planning/TopBar.d.ts +1 -0
  18. package/dist/components/planning/TopBar.d.ts.map +1 -1
  19. package/dist/components/planning/TopBar.js +7 -4
  20. package/dist/components/planning/TopBar.js.map +1 -1
  21. package/dist/components/planning/plan-detail-utils.d.ts +1 -0
  22. package/dist/components/planning/plan-detail-utils.d.ts.map +1 -1
  23. package/dist/components/planning/plan-detail-utils.js +4 -1
  24. package/dist/components/planning/plan-detail-utils.js.map +1 -1
  25. package/dist/components/tool-invocation-card/ToolActions.d.ts +2 -4
  26. package/dist/components/tool-invocation-card/ToolActions.d.ts.map +1 -1
  27. package/dist/components/tool-invocation-card/ToolActions.js +2 -9
  28. package/dist/components/tool-invocation-card/ToolActions.js.map +1 -1
  29. package/dist/components/tool-invocation-card/ToolHeader.d.ts +0 -1
  30. package/dist/components/tool-invocation-card/ToolHeader.d.ts.map +1 -1
  31. package/dist/components/tool-invocation-card/ToolHeader.js +11 -4
  32. package/dist/components/tool-invocation-card/ToolHeader.js.map +1 -1
  33. package/dist/components/tool-invocation-card/ToolInvocationCard.d.ts +0 -7
  34. package/dist/components/tool-invocation-card/ToolInvocationCard.d.ts.map +1 -1
  35. package/dist/components/tool-invocation-card/ToolInvocationCard.js +6 -8
  36. package/dist/components/tool-invocation-card/ToolInvocationCard.js.map +1 -1
  37. package/dist/hooks/use-connection-problems.d.ts.map +1 -1
  38. package/dist/hooks/useActionGraph.d.ts +7 -0
  39. package/dist/hooks/useActionGraph.d.ts.map +1 -0
  40. package/dist/hooks/useActionGraph.js +23 -0
  41. package/dist/hooks/useActionGraph.js.map +1 -0
  42. package/dist/hooks/useValidateActionPlan.d.ts.map +1 -1
  43. package/dist/lib/tool-icons.d.ts.map +1 -1
  44. package/dist/lib/tool-icons.js +1 -0
  45. package/dist/lib/tool-icons.js.map +1 -1
  46. package/dist/routes/plans/components/ActionPlansPage.d.ts.map +1 -1
  47. package/dist/routes/plans/components/ActionPlansPage.js +3 -3
  48. package/dist/routes/plans/components/ActionPlansPage.js.map +1 -1
  49. package/dist/routes/plans/components/PlanDetailRouteContent.d.ts.map +1 -1
  50. package/dist/routes/plans/components/PlanDetailRouteContent.js +3 -1
  51. package/dist/routes/plans/components/PlanDetailRouteContent.js.map +1 -1
  52. package/package.json +12 -7
  53. package/src/app-subpaths.json +1 -0
  54. package/src/components/chat-view/ToolApprovalPart.tsx +27 -0
  55. package/src/components/chat-view/ToolMessagePart.tsx +8 -25
  56. package/src/components/chat-view/tool-part-rendering.ts +1 -1
  57. package/src/components/planning/ActionPlanDetailView.tsx +3 -0
  58. package/src/components/planning/ConnectedPlanDetailView.tsx +1 -0
  59. package/src/components/planning/TopBar.tsx +14 -3
  60. package/src/components/planning/plan-detail-utils.tsx +5 -1
  61. package/src/components/tool-invocation-card/ToolActions.tsx +5 -16
  62. package/src/components/tool-invocation-card/ToolHeader.tsx +13 -6
  63. package/src/components/tool-invocation-card/ToolInvocationCard.tsx +6 -23
  64. package/src/hooks/useActionGraph.ts +41 -0
  65. package/src/lib/tool-icons.ts +1 -0
  66. package/src/routes/plans/components/ActionPlansPage.tsx +4 -4
  67. 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;;;;;;;;;sBAkBu0oL,CAAC;;sBAAwE,CAAC;iBAA8B,CAAC;uBAAoC,CAAC;;;mBAA+G,CAAC;;;;;EADjqpL"}
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;AAwDtB,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"}
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"}
@@ -19,6 +19,7 @@ const toolIconMap = {
19
19
  setDailyChangeLimit: DollarSign,
20
20
  markAsLowRisk: CheckCircle2,
21
21
  readUploadedFile: Paperclip,
22
+ requestBudgetChange: DollarSign,
22
23
  };
23
24
  const stepIconMap = {
24
25
  ChartLine: TrendingUp,
@@ -1 +1 @@
1
- {"version":3,"file":"tool-icons.js","sourceRoot":"","sources":["../../src/lib/tool-icons.ts"],"names":[],"mappings":"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"}
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":"AAUA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAsBvC,OAAO,EAAiC,KAAK,qBAAqB,EAAE,MAAM,SAAS,CAAC;AASpF,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
+ {"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 runningPlanIris = useMemo(() => plans.filter((plan) => plan.state === GQLActionPlanState.Running).map((plan) => plan.iri), [plans]);
99
+ const approvablePlanIris = useMemo(() => plans.filter((plan) => canNeedApproval(plan.state)).map((plan) => plan.iri), [plans]);
100
100
  const { data: manualActionsByPlan } = useManualActionsForPlans({
101
- planGraphIris: runningPlanIris,
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":"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"}
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":"AA2BA,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,2CA0LxE"}
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.5.1",
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/client": "0.5.1",
1138
- "@manta-eu/ldo": "0.5.1",
1139
- "@manta-eu/rdf-lib": "0.5.1",
1140
- "@manta-eu/auth": "0.5.1",
1141
- "@manta-eu/datalog-parser": "0.5.1",
1142
- "@manta-eu/lib": "0.5.1"
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",
@@ -45,6 +45,7 @@
45
45
  "./filter-sheet",
46
46
  "./globals.css",
47
47
  "./hooks/plan-split-sidebar-sync",
48
+ "./hooks/useActionGraph",
48
49
  "./hooks/useActionPlanDetail",
49
50
  "./hooks/useActionPlanExecution",
50
51
  "./hooks/useActionPlans",
@@ -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(status: ActionPlanStatus, isDryRun: boolean, hasCurrentFacts: boolean): string | null {
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 === GQLActionPlanState.Running || state === GQLActionPlanState.Completed);
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
- toolCallId: string;
7
- toolName: string;
8
- onSubmit: ToolInvocationCardProps["onSubmit"];
4
+ onApprove: () => void;
5
+ onReject: () => void;
9
6
  };
10
7
 
11
8
  export function ToolActions(props: ToolActionsProps) {
12
- const { toolCallId, toolName: _toolName, onSubmit } = props;
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={handleReject}>
13
+ <Button variant="destructive" size="sm" onClick={onReject}>
25
14
  Reject
26
15
  </Button>
27
- <Button size="sm" onClick={handleApprove}>
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
- export function ToolHeader(props: ToolHeaderProps) {
13
- const { toolUIPart, isExpanded, onToggle, needsConfirmation } = props;
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
- const isComplete = !needsConfirmation && toolUIPart.state === "output-available";
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
- {isComplete ? <CheckCircle2 size={16} /> : <Loader2 size={16} className="animate-spin" />}
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, toolCallId, needsConfirmation, onSubmit } = props;
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(!isExpanded);
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({ needsConfirmation, state: toolUIPart.state })
50
- .with({ needsConfirmation: true, state: "input-available" }, () => (
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({ state: "input-streaming" }, () => <ToolLoadingState label={loadingLabel} />)
47
+ .with("input-streaming", () => <ToolLoadingState label={loadingLabel} />)
65
48
  .otherwise(() => null)}
66
49
  </div>
67
50
  </div>