@manta-eu/react 0.1.5 → 0.1.6

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 (118) hide show
  1. package/dist/components/chat/chat-input/index.d.ts +1 -1
  2. package/dist/components/chat/chat-input/index.d.ts.map +1 -1
  3. package/dist/components/chat/chat-input/index.js +4 -5
  4. package/dist/components/chat-view/Chat.js +13 -3
  5. package/dist/components/layouts/Sidebar.d.ts.map +1 -1
  6. package/dist/components/layouts/Sidebar.js +15 -2
  7. package/dist/components/sidebar/nav-menu.d.ts +2 -0
  8. package/dist/components/sidebar/nav-menu.d.ts.map +1 -1
  9. package/dist/components/sidebar/nav-menu.js +11 -6
  10. package/dist/components/table/index.d.ts +26 -0
  11. package/dist/components/table/index.d.ts.map +1 -1
  12. package/dist/components/table/index.js +31 -1
  13. package/dist/explain-fact/DatalogCode.d.ts.map +1 -1
  14. package/dist/explain-fact/DatalogCode.js +7 -2
  15. package/dist/explain-fact/FactValue.js +3 -3
  16. package/dist/explain-fact/proof-tree/ProofTreeFormulaFooter.d.ts.map +1 -1
  17. package/dist/explain-fact/proof-tree/ProofTreeFormulaFooter.js +2 -1
  18. package/dist/globals.css +10 -102
  19. package/dist/graph/createNodeRouter.d.ts.map +1 -1
  20. package/dist/graph/createNodeRouter.js +3 -0
  21. package/dist/graph/nodes/BrandFacetRuleView.d.ts.map +1 -1
  22. package/dist/graph/nodes/BrandFacetRuleView.js +6 -4
  23. package/dist/graph/nodes/BrandFontFamilyView.d.ts +3 -0
  24. package/dist/graph/nodes/BrandFontFamilyView.d.ts.map +1 -0
  25. package/dist/graph/nodes/BrandFontFamilyView.js +56 -0
  26. package/dist/graph/nodes/BrandFontUploadButton.d.ts +6 -0
  27. package/dist/graph/nodes/BrandFontUploadButton.d.ts.map +1 -0
  28. package/dist/graph/nodes/BrandFontUploadButton.js +65 -0
  29. package/dist/graph/nodes/BrandGuidelinesView.d.ts.map +1 -1
  30. package/dist/graph/nodes/BrandGuidelinesView.js +2 -6
  31. package/dist/graph/nodes/brand-font.d.ts +12 -0
  32. package/dist/graph/nodes/brand-font.d.ts.map +1 -0
  33. package/dist/graph/nodes/brand-font.js +12 -0
  34. package/dist/graph/nodes/brand-shared.d.ts +3 -2
  35. package/dist/graph/nodes/brand-shared.d.ts.map +1 -1
  36. package/dist/graph/nodes/brand-shared.js +3 -2
  37. package/dist/hooks/use-connection-problems.d.ts +15 -0
  38. package/dist/hooks/use-connection-problems.d.ts.map +1 -0
  39. package/dist/hooks/use-connection-problems.js +9 -0
  40. package/dist/hooks/use-font-face.d.ts +3 -0
  41. package/dist/hooks/use-font-face.d.ts.map +1 -0
  42. package/dist/hooks/use-font-face.js +33 -0
  43. package/dist/hooks/use-graph-refresh-after-turn.d.ts +2 -0
  44. package/dist/hooks/use-graph-refresh-after-turn.d.ts.map +1 -0
  45. package/dist/hooks/use-graph-refresh-after-turn.js +12 -0
  46. package/dist/hooks/useAuth.d.ts +1 -0
  47. package/dist/hooks/useAuth.d.ts.map +1 -1
  48. package/dist/hooks/useAuth.js +32 -9
  49. package/dist/hooks/useValidateActionPlan.d.ts.map +1 -1
  50. package/dist/lib/activity-changeset.d.ts.map +1 -1
  51. package/dist/lib/activity-changeset.js +6 -3
  52. package/dist/lib/datastore-route-table.d.ts +1 -0
  53. package/dist/lib/datastore-route-table.d.ts.map +1 -1
  54. package/dist/lib/datastore-route-table.js +2 -0
  55. package/dist/lib/tool-icons.d.ts.map +1 -1
  56. package/dist/lib/tool-icons.js +1 -5
  57. package/dist/providers/ActiveChatProvider.d.ts.map +1 -1
  58. package/dist/providers/ActiveChatProvider.js +2 -0
  59. package/dist/providers/KnowledgeGraphStateContext.d.ts +0 -1
  60. package/dist/providers/KnowledgeGraphStateContext.d.ts.map +1 -1
  61. package/dist/providers/KnowledgeGraphStateProvider.d.ts.map +1 -1
  62. package/dist/providers/KnowledgeGraphStateProvider.js +8 -19
  63. package/dist/routes/activity/change-display.js +1 -1
  64. package/dist/routes/data-explorer/components/record-detail/ActionFormDialog.d.ts.map +1 -1
  65. package/dist/routes/data-explorer/components/record-detail/ActionFormDialog.js +23 -9
  66. package/dist/routes/data-explorer/components/record-detail/action-properties.d.ts +2 -4
  67. package/dist/routes/data-explorer/components/record-detail/action-properties.d.ts.map +1 -1
  68. package/dist/routes/data-explorer/components/record-detail/action-properties.js +8 -50
  69. package/dist/routes/integrations/connection-view.d.ts +4 -1
  70. package/dist/routes/integrations/connection-view.d.ts.map +1 -1
  71. package/dist/routes/integrations/connection-view.js +25 -5
  72. package/dist/routes/integrations/types.d.ts +1 -0
  73. package/dist/routes/integrations/types.d.ts.map +1 -1
  74. package/dist/shacl/shacl-form-types.d.ts +2 -3
  75. package/dist/shacl/shacl-form-types.d.ts.map +1 -1
  76. package/dist/shared/graph-derived-queries.d.ts +5 -0
  77. package/dist/shared/graph-derived-queries.d.ts.map +1 -0
  78. package/dist/shared/graph-derived-queries.js +28 -0
  79. package/package.json +8 -11
  80. package/dist/components/ai-elements/chain-of-thought.d.ts +0 -30
  81. package/dist/components/ai-elements/chain-of-thought.d.ts.map +0 -1
  82. package/dist/components/ai-elements/chain-of-thought.js +0 -57
  83. package/dist/components/context-menu.d.ts +0 -29
  84. package/dist/components/context-menu.d.ts.map +0 -1
  85. package/dist/components/context-menu.js +0 -67
  86. package/dist/components/hover-card.d.ts +0 -6
  87. package/dist/components/hover-card.d.ts.map +0 -1
  88. package/dist/components/hover-card.js +0 -15
  89. package/dist/components/layouts/ChatHistoryItem.d.ts +0 -9
  90. package/dist/components/layouts/ChatHistoryItem.d.ts.map +0 -1
  91. package/dist/components/layouts/ChatHistoryItem.js +0 -7
  92. package/dist/components/layouts/SectionHeader.d.ts +0 -8
  93. package/dist/components/layouts/SectionHeader.d.ts.map +0 -1
  94. package/dist/components/layouts/SectionHeader.js +0 -6
  95. package/dist/components/orbit-site/Block.d.ts +0 -8
  96. package/dist/components/orbit-site/Block.d.ts.map +0 -1
  97. package/dist/components/orbit-site/Block.js +0 -7
  98. package/dist/components/orbit-site/Inset.d.ts +0 -7
  99. package/dist/components/orbit-site/Inset.d.ts.map +0 -1
  100. package/dist/components/orbit-site/Inset.js +0 -6
  101. package/dist/components/orbit-site/Section.d.ts +0 -7
  102. package/dist/components/orbit-site/Section.d.ts.map +0 -1
  103. package/dist/components/orbit-site/Section.js +0 -6
  104. package/dist/components/orbit-site/ThemeSelector.d.ts +0 -3
  105. package/dist/components/orbit-site/ThemeSelector.d.ts.map +0 -1
  106. package/dist/components/orbit-site/ThemeSelector.js +0 -42
  107. package/dist/components/planning/SampleChanges.d.ts +0 -9
  108. package/dist/components/planning/SampleChanges.d.ts.map +0 -1
  109. package/dist/components/planning/SampleChanges.js +0 -117
  110. package/dist/components/tool-invocation-card/index.d.ts +0 -8
  111. package/dist/components/tool-invocation-card/index.d.ts.map +0 -1
  112. package/dist/components/tool-invocation-card/index.js +0 -7
  113. package/dist/lib/schema-fields.d.ts +0 -2
  114. package/dist/lib/schema-fields.d.ts.map +0 -1
  115. package/dist/lib/schema-fields.js +0 -3
  116. package/dist/routes/memories/components/ConflictTimeoutFooter.d.ts +0 -7
  117. package/dist/routes/memories/components/ConflictTimeoutFooter.d.ts.map +0 -1
  118. package/dist/routes/memories/components/ConflictTimeoutFooter.js +0 -6
@@ -1,117 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useExplainRdFoxFactQuery } from "@manta-eu/client";
3
- import { iriLocalName } from "@manta-eu/client/shared/rdf-namespaces";
4
- import { isPresent } from "@manta-eu/lib/present";
5
- import { HelpCircle } from "lucide-react";
6
- import { useState } from "react";
7
- import { Badge } from "#components/badge/index";
8
- import { Button } from "#components/button/index";
9
- import { Loader } from "#components/loader/index";
10
- import { Popover, PopoverContent, PopoverTrigger } from "#components/popover/index";
11
- import { Skeleton } from "#components/skeleton/index";
12
- import { useActionPlanSamples } from "#ldo-ui";
13
- import { useMantaClient } from "#providers/MantaClientProvider";
14
- function formatSampleLabel(sample) {
15
- return sample.label || sample.subject;
16
- }
17
- function getSampleDescription(sample, typeName) {
18
- if (sample.description) {
19
- return sample.description;
20
- }
21
- // Generate a helpful description based on type and operation
22
- const operation = sample.operation === "ADDED" ? "New" : "Updated";
23
- return `${operation} ${typeName.toLowerCase()}`;
24
- }
25
- export function SampleChanges(props) {
26
- const { planGraphIri, typeIri, typeName, limit = 3 } = props;
27
- const { data, isLoading, error } = useActionPlanSamples({
28
- planGraphIri,
29
- typeIri,
30
- limit,
31
- });
32
- if (isLoading) {
33
- return _jsx(SampleChangesLoading, {});
34
- }
35
- if (error || data?.error) {
36
- const errorMessage = error instanceof Error ? error.message : (data?.error ?? "Unknown error");
37
- return _jsxs("div", { className: "typography-small text-muted-foreground", children: ["Failed to load sample changes: ", errorMessage] });
38
- }
39
- const samples = data?.samples ?? [];
40
- if (!isPresent(samples)) {
41
- return _jsxs("div", { className: "typography-small text-muted-foreground", children: ["No sample changes available for ", typeName] });
42
- }
43
- return (_jsxs("div", { className: "space-y-3 overflow-hidden", children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("div", { className: "typography-small-medium text-default-foreground flex-shrink-0", children: "Sample Changes" }), _jsxs("div", { className: "typography-tiny text-muted-foreground bg-muted px-2 py-1 rounded-md flex-shrink-0", children: [samples.length, " samples shown"] })] }), _jsx("div", { className: "space-y-2 overflow-hidden", children: samples.map((sample, index) => (_jsx(SampleChangeItem, { sample: sample, typeIri: typeIri, typeName: typeName, planGraphIri: planGraphIri }, `${sample.subject}-${index}`))) })] }));
44
- }
45
- function SampleChangesLoading() {
46
- return (_jsxs("div", { className: "space-y-3", children: [_jsx(Skeleton, { className: "h-4 w-32" }), _jsx("div", { className: "space-y-2", children: Array.from({ length: 3 }).map((_, i) => (_jsxs("div", { className: "flex items-center justify-between rounded-lg border border-muted-border p-3", children: [_jsxs("div", { className: "space-y-1", children: [_jsx(Skeleton, { className: "h-4 w-24" }), _jsx(Skeleton, { className: "h-3 w-16" })] }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Skeleton, { className: "h-5 w-12" }), _jsx(Skeleton, { className: "size-6 rounded-full" })] })] }, i))) })] }));
47
- }
48
- function SampleChangeItem(props) {
49
- const { sample, typeName, planGraphIri } = props;
50
- const [showAllProperties, setShowAllProperties] = useState(false);
51
- const formattedLabel = formatSampleLabel(sample);
52
- const description = getSampleDescription(sample, typeName);
53
- return (_jsxs("div", { className: "flex flex-col gap-3 rounded-lg border border-muted-border p-3 bg-card/50 overflow-hidden", children: [_jsxs("div", { className: "flex items-start justify-between gap-3", children: [_jsxs("div", { className: "flex-1 min-w-0", children: [_jsx("div", { className: "typography-small-medium text-default-foreground break-words", children: formattedLabel }), _jsx("div", { className: "typography-tiny text-muted-foreground mt-1 break-words", children: description })] }), _jsx("div", { className: "flex items-center gap-2 shrink-0", children: _jsx(OperationBadge, { operation: sample.operation }) })] }), (() => {
54
- const changes = sample.properties.filter((p) => p.changeType === "ADDED" || p.changeType === "UPDATED");
55
- const unchanged = sample.properties.filter((p) => p.changeType === "UNCHANGED");
56
- return (_jsxs("div", { className: "space-y-3", children: [isPresent(changes) && (_jsxs("div", { className: "space-y-2", children: [_jsx("div", { className: "typography-tiny text-muted-foreground uppercase tracking-wide", children: "Changes" }), _jsx("div", { className: "space-y-1", children: changes.map((property, index) => (_jsx(PropertyChangeItem, { property: property, subject: sample.subject, planGraphIri: planGraphIri }, `change-${property.predicate}-${index}`))) })] })), isPresent(unchanged) && (_jsxs("div", { className: "space-y-2", children: [_jsx("div", { className: "typography-tiny text-muted-foreground uppercase tracking-wide", children: "Current" }), _jsxs("div", { className: "space-y-1", children: [(showAllProperties ? unchanged : unchanged.slice(0, 3)).map((property, index) => (_jsx(PropertyChangeItem, { property: property, subject: sample.subject, planGraphIri: planGraphIri }, `unchanged-${property.predicate}-${index}`))), unchanged.length > 3 && (_jsx(Button, { variant: "ghost", size: "sm", className: "h-auto p-1 typography-tiny text-muted-foreground hover:text-default-foreground", onClick: () => setShowAllProperties(!showAllProperties), children: showAllProperties ? "Show less" : `+ ${unchanged.length - 3} more properties` }))] })] })), !isPresent(changes) && !isPresent(unchanged) && (_jsx("div", { className: "typography-tiny text-muted-foreground italic", children: "No changes found" }))] }));
57
- })()] }));
58
- }
59
- function titleize(text) {
60
- return text
61
- .replace(/([a-z])([A-Z])/g, "$1 $2")
62
- .replace(/_/g, " ")
63
- .replace(/\b\w/g, (char) => char.toUpperCase());
64
- }
65
- function PropertyChangeItem(props) {
66
- const { property, subject, planGraphIri } = props;
67
- const rawPredicateDisplay = property.predicateLabel || iriLocalName(property.predicate);
68
- const predicateDisplay = titleize(rawPredicateDisplay);
69
- const propertyObject = property.object.includes(" ")
70
- ? property.object
71
- : property.object.split(/[#/_]/).pop() || property.object;
72
- const objectDisplay = property.objectLabel || propertyObject;
73
- // UPDATED: Show before → after for properties that changed
74
- if (property.changeType === "UPDATED") {
75
- const beforeDisplay = property.beforeObjectLabel ||
76
- (property.beforeObject ? iriLocalName(property.beforeObject) : property.beforeObject);
77
- return (_jsx("div", { className: "bg-warning border border-warning-foreground px-2 py-1 rounded typography-tiny break-words", children: _jsxs("div", { className: "flex items-center gap-2 flex-wrap", children: [_jsx("span", { className: "typography-small-medium text-warning-foreground flex-shrink-0", children: predicateDisplay }), _jsxs("div", { className: "flex items-center gap-1 min-w-0 flex-1", children: [_jsx("span", { className: "text-warning-foreground break-all min-w-0", children: beforeDisplay }), _jsx("span", { className: "text-warning-foreground flex-shrink-0", children: "\u2192" }), _jsx("span", { className: "text-warning-foreground typography-small-medium break-all min-w-0", children: objectDisplay })] }), _jsx(PropertyExplainButton, { subject: subject, predicate: property.predicate, object: property.object, planGraphIri: planGraphIri, label: `${predicateDisplay}: ${beforeDisplay} → ${objectDisplay}` })] }) }));
78
- }
79
- // ADDED: Show → new_value for new properties
80
- if (property.changeType === "ADDED") {
81
- return (_jsx("div", { className: "bg-success border border-success-foreground px-2 py-1 rounded typography-tiny break-words", children: _jsxs("div", { className: "flex items-center gap-2 flex-wrap", children: [_jsx("span", { className: "typography-small-medium text-success-foreground flex-shrink-0", children: predicateDisplay }), _jsxs("div", { className: "flex items-center gap-1 min-w-0 flex-1", children: [_jsx("span", { className: "text-success-foreground flex-shrink-0", children: "\u2192" }), _jsx("span", { className: "text-success-foreground typography-small-medium break-all min-w-0", children: objectDisplay })] }), _jsx(PropertyExplainButton, { subject: subject, predicate: property.predicate, object: property.object, planGraphIri: planGraphIri, label: `${predicateDisplay}: ${objectDisplay}` })] }) }));
82
- }
83
- // UNCHANGED: Show just the value for unchanged properties
84
- return (_jsx("div", { className: "bg-muted/30 px-2 py-1 rounded typography-tiny break-words", children: _jsxs("div", { className: "flex items-center gap-2 flex-wrap", children: [_jsx("span", { className: "typography-small-medium text-muted-foreground flex-shrink-0", children: predicateDisplay }), _jsx("span", { className: "text-default-foreground break-all min-w-0 flex-1", children: objectDisplay })] }) }));
85
- }
86
- function OperationBadge(props) {
87
- const { operation } = props;
88
- if (operation === "ADDED") {
89
- return _jsx(Badge, { className: "bg-success text-success-foreground border-success-foreground", children: "New" });
90
- }
91
- return _jsx(Badge, { className: "bg-warning text-warning-foreground border-warning-foreground", children: "Updated" });
92
- }
93
- function PropertyExplainButton(props) {
94
- const { subject, predicate, object, planGraphIri, label } = props;
95
- const [isOpen, setIsOpen] = useState(false);
96
- return (_jsxs(Popover, { open: isOpen, onOpenChange: setIsOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx(Button, { variant: "ghost", size: "xs", iconOnly: true, icon: HelpCircle, className: "text-muted-foreground hover:text-default-foreground flex-shrink-0", title: "Explain why this change exists", "aria-label": "Explain why this change exists" }) }), _jsx(PopoverContent, { className: "w-96", align: "end", children: _jsx(PropertyExplanationContent, { subject: subject, predicate: predicate, object: object, planGraphIri: planGraphIri, label: label }) })] }));
97
- }
98
- function PropertyExplanationContent(props) {
99
- const { subject, predicate, object, planGraphIri, label } = props;
100
- const { mantaClient } = useMantaClient();
101
- const { data, isLoading, error } = useExplainRdFoxFactQuery(mantaClient, {
102
- subject,
103
- predicate,
104
- object,
105
- summarize: true,
106
- namedGraph: planGraphIri,
107
- });
108
- if (isLoading) {
109
- return (_jsx("div", { className: "space-y-3", children: _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Loader, { className: "size-4" }), _jsx("span", { className: "typography-small", children: "Generating explanation..." })] }) }));
110
- }
111
- if (error || data?.explainRDFoxFact.error) {
112
- const errorMessage = error?.message ?? data?.explainRDFoxFact.error ?? "Unknown error";
113
- return (_jsxs("div", { className: "space-y-2", children: [_jsxs("h4", { className: "typography-small-semibold", children: ["Explanation for ", label] }), _jsxs("p", { className: "typography-small text-error-foreground", children: ["Failed to load explanation: ", errorMessage] })] }));
114
- }
115
- const explanation = data?.explainRDFoxFact;
116
- return (_jsxs("div", { className: "space-y-3", children: [_jsx("h4", { className: "typography-small-semibold", children: "Why this exists" }), explanation?.summary ? (_jsx("p", { className: "typography-small text-default-foreground leading-relaxed", children: explanation.summary })) : (_jsx("p", { className: "typography-small text-muted-foreground", children: "No explanation available." }))] }));
117
- }
@@ -1,8 +0,0 @@
1
- export { ToolActions } from "./ToolActions.js";
2
- export { ToolArgumentsDisplay } from "./ToolArgumentsDisplay.js";
3
- export { ToolHeader } from "./ToolHeader.js";
4
- export { ToolInvocationCard } from "./ToolInvocationCard.js";
5
- export { ToolLoadingState } from "./ToolLoadingState.js";
6
- export { ToolResultDisplay } from "./ToolResultDisplay.js";
7
- export * from "./types.js";
8
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/tool-invocation-card/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,cAAc,SAAS,CAAC"}
@@ -1,7 +0,0 @@
1
- export { ToolActions } from "./ToolActions.js";
2
- export { ToolArgumentsDisplay } from "./ToolArgumentsDisplay.js";
3
- export { ToolHeader } from "./ToolHeader.js";
4
- export { ToolInvocationCard } from "./ToolInvocationCard.js";
5
- export { ToolLoadingState } from "./ToolLoadingState.js";
6
- export { ToolResultDisplay } from "./ToolResultDisplay.js";
7
- export * from "./types.js";
@@ -1,2 +0,0 @@
1
- export declare function asNumber(value: unknown): number | undefined;
2
- //# sourceMappingURL=schema-fields.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema-fields.d.ts","sourceRoot":"","sources":["../../src/lib/schema-fields.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE3D"}
@@ -1,3 +0,0 @@
1
- export function asNumber(value) {
2
- return typeof value === "number" ? value : undefined;
3
- }
@@ -1,7 +0,0 @@
1
- export type ConflictTimeoutFooterProps = {
2
- onCancel: () => void;
3
- onConfirm: () => void;
4
- isSaving: boolean;
5
- };
6
- export declare function ConflictTimeoutFooter(props: ConflictTimeoutFooterProps): import("react/jsx-runtime").JSX.Element;
7
- //# sourceMappingURL=ConflictTimeoutFooter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ConflictTimeoutFooter.d.ts","sourceRoot":"","sources":["../../../../src/routes/memories/components/ConflictTimeoutFooter.tsx"],"names":[],"mappings":"AAEA,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,2CAatE"}
@@ -1,6 +0,0 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Button } from "#components/button/index";
3
- export function ConflictTimeoutFooter(props) {
4
- const { onCancel, onConfirm, isSaving } = props;
5
- return (_jsxs(_Fragment, { children: [_jsx("p", { className: "typography-small text-muted-foreground mr-auto", children: "Conflict check timed out. Save without checking?" }), _jsx(Button, { variant: "tertiary", onClick: onCancel, disabled: isSaving, children: "Cancel" }), _jsx(Button, { onClick: onConfirm, disabled: isSaving, children: isSaving ? "Saving…" : "Save anyway" })] }));
6
- }