@burdenoff/microfe-assethandler 2026.703.2 → 2026.703.4
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/assethandler/AssetHandlerRoot.js +18 -18
- package/dist/assethandler/hooks/useAssetHandlerNavigate.js +19 -0
- package/dist/assethandler/hooks/useAssetHandlerNavigate.js.map +1 -0
- package/dist/assethandler/pages/AiPredictionsPage.js +29 -29
- package/dist/assethandler/pages/AnalyticsPage.js +154 -154
- package/dist/assethandler/pages/AssetsAssetCategoriesPage.js +48 -48
- package/dist/assethandler/pages/AssetsAssetCheckInOutPage.js +84 -84
- package/dist/assethandler/pages/AssetsAssetCheckInOutPage.js.map +1 -1
- package/dist/assethandler/pages/AssetsAssetCreatePage.js +82 -82
- package/dist/assethandler/pages/AssetsAssetCreatePage.js.map +1 -1
- package/dist/assethandler/pages/AssetsAssetDetailPage.js +104 -103
- package/dist/assethandler/pages/AssetsAssetDetailPage.js.map +1 -1
- package/dist/assethandler/pages/AssetsAssetListPage.js +132 -132
- package/dist/assethandler/pages/AssetsAssetListPage.js.map +1 -1
- package/dist/assethandler/pages/AssetsAssetTrackingPage.js +52 -52
- package/dist/assethandler/pages/CmdbBrowserPage.js +27 -27
- package/dist/assethandler/pages/DashboardPage.js +119 -119
- package/dist/assethandler/pages/DashboardPage.js.map +1 -1
- package/dist/assethandler/pages/DigitalTwinPage.js +22 -22
- package/dist/assethandler/pages/DiscoveryJobsPage.js +35 -35
- package/dist/assethandler/pages/EsgDashboardPage.js +32 -32
- package/dist/assethandler/pages/FinanceBudgetDetailPage.js +57 -56
- package/dist/assethandler/pages/FinanceBudgetDetailPage.js.map +1 -1
- package/dist/assethandler/pages/FinanceFinanceHubPage.js +98 -98
- package/dist/assethandler/pages/FinanceFinanceHubPage.js.map +1 -1
- package/dist/assethandler/pages/FinanceInvoiceDetailPage.js +58 -57
- package/dist/assethandler/pages/FinanceInvoiceDetailPage.js.map +1 -1
- package/dist/assethandler/pages/IotDevicesPage.js +29 -29
- package/dist/assethandler/pages/ItilChangeDetailPage.js +76 -75
- package/dist/assethandler/pages/ItilChangeDetailPage.js.map +1 -1
- package/dist/assethandler/pages/ItilChangeManagementPage.js +49 -49
- package/dist/assethandler/pages/ItilIncidentDetailPage.js +63 -62
- package/dist/assethandler/pages/ItilIncidentDetailPage.js.map +1 -1
- package/dist/assethandler/pages/ItilIncidentManagementPage.js +72 -72
- package/dist/assethandler/pages/ItilItilhubPage.js +112 -112
- package/dist/assethandler/pages/ItilItilhubPage.js.map +1 -1
- package/dist/assethandler/pages/ItilProblemDetailPage.js +61 -60
- package/dist/assethandler/pages/ItilProblemDetailPage.js.map +1 -1
- package/dist/assethandler/pages/ItilProblemManagementPage.js +46 -46
- package/dist/assethandler/pages/KnowledgeBasePage.js +28 -28
- package/dist/assethandler/pages/MaintenanceMaintenanceCalendarPage.js +52 -52
- package/dist/assethandler/pages/MaintenanceMaintenanceSchedulerPage.js +29 -29
- package/dist/assethandler/pages/OperationsMaintenanceDetailPage.js +58 -57
- package/dist/assethandler/pages/OperationsMaintenanceDetailPage.js.map +1 -1
- package/dist/assethandler/pages/OperationsOperationsHubPage.js +80 -80
- package/dist/assethandler/pages/OperationsOperationsHubPage.js.map +1 -1
- package/dist/assethandler/pages/OperationsWorkOrderDetailPage.js +49 -48
- package/dist/assethandler/pages/OperationsWorkOrderDetailPage.js.map +1 -1
- package/dist/assethandler/pages/PortfolioPortfolioOverviewPage.js +52 -52
- package/dist/assethandler/pages/ProvenancePage.js +36 -36
- package/dist/assethandler/pages/SamLicensesPage.js +27 -27
- package/dist/assethandler/pages/SecurityComplianceDetailPage.js +39 -38
- package/dist/assethandler/pages/SecurityComplianceDetailPage.js.map +1 -1
- package/dist/assethandler/pages/SecurityPolicyDetailPage.js +50 -49
- package/dist/assethandler/pages/SecurityPolicyDetailPage.js.map +1 -1
- package/dist/assethandler/pages/SecuritySecurityEventDetailPage.js +47 -46
- package/dist/assethandler/pages/SecuritySecurityEventDetailPage.js.map +1 -1
- package/dist/assethandler/pages/SecuritySecurityHubPage.js +104 -104
- package/dist/assethandler/pages/SecuritySecurityHubPage.js.map +1 -1
- package/dist/assethandler/pages/TransactionsTransactionDetailPage.js +74 -73
- package/dist/assethandler/pages/TransactionsTransactionDetailPage.js.map +1 -1
- package/dist/assethandler/pages/TransactionsTransactionListPage.js +77 -77
- package/dist/assethandler/providers/AssetHandlerProvider.js +12 -12
- package/package.json +1 -1
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { useAssetHandlerStore as e } from "../store/assethandlerStore.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { jsx as
|
|
2
|
+
import { useAssetHandlerNavigate as t } from "../hooks/useAssetHandlerNavigate.js";
|
|
3
|
+
import { ArrowLeft as n, CheckCircle as r } from "lucide-react";
|
|
4
|
+
import { useParams as i } from "react-router-dom";
|
|
5
|
+
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
6
|
+
import { Badge as s, Button as c, Card as l, CardContent as u, CardHeader as d, CardTitle as f, EmphasisPanel as p, GradientText as m, IllustratedEmptyState as h, PagePurpose as g, Separator as _ } from "@burdenoff/fe-libs/ui";
|
|
6
7
|
//#region src/assethandler/pages/SecuritySecurityEventDetailPage.tsx
|
|
7
8
|
var v = {
|
|
8
9
|
critical: "destructive",
|
|
@@ -12,101 +13,101 @@ var v = {
|
|
|
12
13
|
info: "outline"
|
|
13
14
|
};
|
|
14
15
|
function y() {
|
|
15
|
-
let y =
|
|
16
|
-
return S ? /* @__PURE__ */
|
|
16
|
+
let y = t(), { eventId: b } = i(), { securityEvents: x } = e(), S = x.find((e) => e.id === b) ?? x[0];
|
|
17
|
+
return S ? /* @__PURE__ */ o("div", {
|
|
17
18
|
className: "space-y-6 p-6",
|
|
18
19
|
children: [
|
|
19
|
-
/* @__PURE__ */
|
|
20
|
+
/* @__PURE__ */ o("div", {
|
|
20
21
|
className: "flex items-center justify-between",
|
|
21
|
-
children: [/* @__PURE__ */
|
|
22
|
+
children: [/* @__PURE__ */ o("div", {
|
|
22
23
|
className: "flex items-center gap-4",
|
|
23
|
-
children: [/* @__PURE__ */
|
|
24
|
+
children: [/* @__PURE__ */ a(c, {
|
|
24
25
|
variant: "ghost",
|
|
25
26
|
size: "icon",
|
|
26
27
|
onClick: () => y("/security/security-hub"),
|
|
27
|
-
children: /* @__PURE__ */
|
|
28
|
-
}), /* @__PURE__ */
|
|
28
|
+
children: /* @__PURE__ */ a(n, { className: "h-4 w-4" })
|
|
29
|
+
}), /* @__PURE__ */ o("div", { children: [/* @__PURE__ */ o("div", {
|
|
29
30
|
className: "flex items-center gap-3",
|
|
30
31
|
children: [
|
|
31
|
-
/* @__PURE__ */
|
|
32
|
+
/* @__PURE__ */ a("h1", {
|
|
32
33
|
className: "text-2xl font-bold",
|
|
33
|
-
children: /* @__PURE__ */
|
|
34
|
+
children: /* @__PURE__ */ a(m, { children: S.id })
|
|
34
35
|
}),
|
|
35
|
-
/* @__PURE__ */
|
|
36
|
+
/* @__PURE__ */ a(s, {
|
|
36
37
|
variant: v[S.severity],
|
|
37
38
|
children: S.severity
|
|
38
39
|
}),
|
|
39
|
-
S.resolved ? /* @__PURE__ */
|
|
40
|
+
S.resolved ? /* @__PURE__ */ a(s, {
|
|
40
41
|
variant: "default",
|
|
41
42
|
children: "Resolved"
|
|
42
|
-
}) : /* @__PURE__ */
|
|
43
|
+
}) : /* @__PURE__ */ a(s, {
|
|
43
44
|
variant: "destructive",
|
|
44
45
|
children: "Open"
|
|
45
46
|
})
|
|
46
47
|
]
|
|
47
|
-
}), /* @__PURE__ */
|
|
48
|
+
}), /* @__PURE__ */ a("p", {
|
|
48
49
|
className: "text-sm text-text-secondary mt-1",
|
|
49
50
|
children: S.title
|
|
50
51
|
})] })]
|
|
51
|
-
}), !S.resolved && /* @__PURE__ */
|
|
52
|
+
}), !S.resolved && /* @__PURE__ */ o(c, {
|
|
52
53
|
size: "sm",
|
|
53
|
-
children: [/* @__PURE__ */
|
|
54
|
+
children: [/* @__PURE__ */ a(r, { className: "mr-2 h-4 w-4" }), "Mark Resolved"]
|
|
54
55
|
})]
|
|
55
56
|
}),
|
|
56
|
-
/* @__PURE__ */ g
|
|
57
|
-
/* @__PURE__ */
|
|
57
|
+
/* @__PURE__ */ a(g, { children: "The full forensic picture of a single security event — what happened, where it came from, who or what was involved, and how serious it is. Use this page to investigate, confirm the impact and mark it resolved once handled." }),
|
|
58
|
+
/* @__PURE__ */ o("div", {
|
|
58
59
|
className: "grid gap-6 lg:grid-cols-3",
|
|
59
|
-
children: [/* @__PURE__ */
|
|
60
|
+
children: [/* @__PURE__ */ o(p, {
|
|
60
61
|
className: "lg:col-span-2",
|
|
61
|
-
children: [/* @__PURE__ */
|
|
62
|
+
children: [/* @__PURE__ */ a(d, {
|
|
62
63
|
className: "px-0 pt-0",
|
|
63
|
-
children: /* @__PURE__ */
|
|
64
|
-
}), /* @__PURE__ */
|
|
64
|
+
children: /* @__PURE__ */ a(f, { children: "Event Details" })
|
|
65
|
+
}), /* @__PURE__ */ o(u, {
|
|
65
66
|
className: "space-y-4 px-0 pb-0",
|
|
66
67
|
children: [
|
|
67
|
-
/* @__PURE__ */
|
|
68
|
+
/* @__PURE__ */ o("div", { children: [/* @__PURE__ */ a("h4", {
|
|
68
69
|
className: "text-sm font-medium text-text-secondary",
|
|
69
70
|
children: "Description"
|
|
70
|
-
}), /* @__PURE__ */
|
|
71
|
+
}), /* @__PURE__ */ a("p", {
|
|
71
72
|
className: "text-sm mt-1",
|
|
72
73
|
children: S.description
|
|
73
74
|
})] }),
|
|
74
|
-
/* @__PURE__ */
|
|
75
|
-
/* @__PURE__ */
|
|
75
|
+
/* @__PURE__ */ a(_, {}),
|
|
76
|
+
/* @__PURE__ */ o("div", {
|
|
76
77
|
className: "grid grid-cols-2 gap-4 text-sm",
|
|
77
78
|
children: [
|
|
78
|
-
/* @__PURE__ */
|
|
79
|
+
/* @__PURE__ */ o("div", { children: [/* @__PURE__ */ a("span", {
|
|
79
80
|
className: "text-text-secondary",
|
|
80
81
|
children: "Type"
|
|
81
|
-
}), /* @__PURE__ */
|
|
82
|
+
}), /* @__PURE__ */ a("p", {
|
|
82
83
|
className: "font-medium capitalize",
|
|
83
84
|
children: S.type.replace("_", " ")
|
|
84
85
|
})] }),
|
|
85
|
-
/* @__PURE__ */
|
|
86
|
+
/* @__PURE__ */ o("div", { children: [/* @__PURE__ */ a("span", {
|
|
86
87
|
className: "text-text-secondary",
|
|
87
88
|
children: "Source"
|
|
88
|
-
}), /* @__PURE__ */
|
|
89
|
+
}), /* @__PURE__ */ a("p", {
|
|
89
90
|
className: "font-medium",
|
|
90
91
|
children: S.source
|
|
91
92
|
})] }),
|
|
92
|
-
/* @__PURE__ */
|
|
93
|
+
/* @__PURE__ */ o("div", { children: [/* @__PURE__ */ a("span", {
|
|
93
94
|
className: "text-text-secondary",
|
|
94
95
|
children: "Timestamp"
|
|
95
|
-
}), /* @__PURE__ */
|
|
96
|
+
}), /* @__PURE__ */ a("p", {
|
|
96
97
|
className: "font-medium",
|
|
97
98
|
children: new Date(S.timestamp).toLocaleString()
|
|
98
99
|
})] }),
|
|
99
|
-
S.userId && /* @__PURE__ */
|
|
100
|
+
S.userId && /* @__PURE__ */ o("div", { children: [/* @__PURE__ */ a("span", {
|
|
100
101
|
className: "text-text-secondary",
|
|
101
102
|
children: "User"
|
|
102
|
-
}), /* @__PURE__ */
|
|
103
|
+
}), /* @__PURE__ */ a("p", {
|
|
103
104
|
className: "font-medium",
|
|
104
105
|
children: S.userId
|
|
105
106
|
})] }),
|
|
106
|
-
S.ipAddress && /* @__PURE__ */
|
|
107
|
+
S.ipAddress && /* @__PURE__ */ o("div", { children: [/* @__PURE__ */ a("span", {
|
|
107
108
|
className: "text-text-secondary",
|
|
108
109
|
children: "IP Address"
|
|
109
|
-
}), /* @__PURE__ */
|
|
110
|
+
}), /* @__PURE__ */ a("p", {
|
|
110
111
|
className: "font-mono text-xs",
|
|
111
112
|
children: S.ipAddress
|
|
112
113
|
})] })
|
|
@@ -114,28 +115,28 @@ function y() {
|
|
|
114
115
|
})
|
|
115
116
|
]
|
|
116
117
|
})]
|
|
117
|
-
}), /* @__PURE__ */
|
|
118
|
+
}), /* @__PURE__ */ o(l, { children: [/* @__PURE__ */ a(d, { children: /* @__PURE__ */ a(f, {
|
|
118
119
|
className: "text-base",
|
|
119
120
|
children: "Severity Assessment"
|
|
120
|
-
}) }), /* @__PURE__ */
|
|
121
|
+
}) }), /* @__PURE__ */ a(u, { children: /* @__PURE__ */ o("div", {
|
|
121
122
|
className: `p-4 rounded-lg text-center ${S.severity === "critical" ? "bg-status-error-bg-subtle text-status-error-text" : S.severity === "high" || S.severity === "medium" ? "bg-status-warning-bg-subtle text-status-warning-text" : "bg-status-info-bg-subtle text-status-info-text"}`,
|
|
122
|
-
children: [/* @__PURE__ */
|
|
123
|
+
children: [/* @__PURE__ */ a("p", {
|
|
123
124
|
className: "text-2xl font-bold uppercase",
|
|
124
125
|
children: S.severity
|
|
125
|
-
}), /* @__PURE__ */
|
|
126
|
+
}), /* @__PURE__ */ a("p", {
|
|
126
127
|
className: "text-xs mt-1",
|
|
127
128
|
children: "Severity Level"
|
|
128
129
|
})]
|
|
129
130
|
}) })] })]
|
|
130
131
|
})
|
|
131
132
|
]
|
|
132
|
-
}) : /* @__PURE__ */
|
|
133
|
+
}) : /* @__PURE__ */ a("div", {
|
|
133
134
|
className: "p-6",
|
|
134
|
-
children: /* @__PURE__ */
|
|
135
|
+
children: /* @__PURE__ */ a(h, {
|
|
135
136
|
illustration: "empty-search",
|
|
136
137
|
title: "Security event not found",
|
|
137
138
|
description: "This event may have been resolved or removed. Return to the security hub to find it.",
|
|
138
|
-
action: /* @__PURE__ */
|
|
139
|
+
action: /* @__PURE__ */ a(c, {
|
|
139
140
|
size: "sm",
|
|
140
141
|
onClick: () => y("/security/security-hub"),
|
|
141
142
|
children: "Back to security"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecuritySecurityEventDetailPage.js","names":[],"sources":["../../../src/assethandler/pages/SecuritySecurityEventDetailPage.tsx"],"sourcesContent":["import {\n Badge,\n Button,\n Card,\n CardContent,\n CardHeader,\n CardTitle,\n Separator,\n GradientText,\n EmphasisPanel,\n PagePurpose,\n IllustratedEmptyState,\n} from '@burdenoff/fe-libs/ui';\nimport { ArrowLeft, CheckCircle } from 'lucide-react';\nimport {
|
|
1
|
+
{"version":3,"file":"SecuritySecurityEventDetailPage.js","names":[],"sources":["../../../src/assethandler/pages/SecuritySecurityEventDetailPage.tsx"],"sourcesContent":["import { useAssetHandlerNavigate } from '../hooks/useAssetHandlerNavigate';\nimport {\n Badge,\n Button,\n Card,\n CardContent,\n CardHeader,\n CardTitle,\n Separator,\n GradientText,\n EmphasisPanel,\n PagePurpose,\n IllustratedEmptyState,\n} from '@burdenoff/fe-libs/ui';\nimport { ArrowLeft, CheckCircle } from 'lucide-react';\nimport { useParams } from 'react-router-dom';\nimport { useAssetHandlerStore } from '../store/assethandlerStore';\n\nconst severityColors: Record<string, 'destructive' | 'default' | 'secondary' | 'outline'> = {\n critical: 'destructive',\n high: 'destructive',\n medium: 'default',\n low: 'secondary',\n info: 'outline',\n};\n\nexport function SecuritySecurityEventDetailPage() {\n const navigate = useAssetHandlerNavigate();\n const { eventId } = useParams<{ eventId: string }>();\n const { securityEvents } = useAssetHandlerStore();\n const event = securityEvents.find((item) => item.id === eventId) ?? securityEvents[0];\n\n if (!event)\n return (\n <div className=\"p-6\">\n <IllustratedEmptyState\n illustration=\"empty-search\"\n title=\"Security event not found\"\n description=\"This event may have been resolved or removed. Return to the security hub to find it.\"\n action={\n <Button size=\"sm\" onClick={() => navigate('/security/security-hub')}>\n Back to security\n </Button>\n }\n />\n </div>\n );\n\n return (\n <div className=\"space-y-6 p-6\">\n <div className=\"flex items-center justify-between\">\n <div className=\"flex items-center gap-4\">\n <Button variant=\"ghost\" size=\"icon\" onClick={() => navigate('/security/security-hub')}>\n <ArrowLeft className=\"h-4 w-4\" />\n </Button>\n <div>\n <div className=\"flex items-center gap-3\">\n <h1 className=\"text-2xl font-bold\">\n <GradientText>{event.id}</GradientText>\n </h1>\n <Badge variant={severityColors[event.severity]}>{event.severity}</Badge>\n {event.resolved ? (\n <Badge variant=\"default\">Resolved</Badge>\n ) : (\n <Badge variant=\"destructive\">Open</Badge>\n )}\n </div>\n <p className=\"text-sm text-text-secondary mt-1\">{event.title}</p>\n </div>\n </div>\n {!event.resolved && (\n <Button size=\"sm\">\n <CheckCircle className=\"mr-2 h-4 w-4\" />\n Mark Resolved\n </Button>\n )}\n </div>\n\n <PagePurpose>\n The full forensic picture of a single security event — what happened, where it came from,\n who or what was involved, and how serious it is. Use this page to investigate, confirm the\n impact and mark it resolved once handled.\n </PagePurpose>\n\n <div className=\"grid gap-6 lg:grid-cols-3\">\n <EmphasisPanel className=\"lg:col-span-2\">\n <CardHeader className=\"px-0 pt-0\">\n <CardTitle>Event Details</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-4 px-0 pb-0\">\n <div>\n <h4 className=\"text-sm font-medium text-text-secondary\">Description</h4>\n <p className=\"text-sm mt-1\">{event.description}</p>\n </div>\n <Separator />\n <div className=\"grid grid-cols-2 gap-4 text-sm\">\n <div>\n <span className=\"text-text-secondary\">Type</span>\n <p className=\"font-medium capitalize\">{event.type.replace('_', ' ')}</p>\n </div>\n <div>\n <span className=\"text-text-secondary\">Source</span>\n <p className=\"font-medium\">{event.source}</p>\n </div>\n <div>\n <span className=\"text-text-secondary\">Timestamp</span>\n <p className=\"font-medium\">{new Date(event.timestamp).toLocaleString()}</p>\n </div>\n {event.userId && (\n <div>\n <span className=\"text-text-secondary\">User</span>\n <p className=\"font-medium\">{event.userId}</p>\n </div>\n )}\n {event.ipAddress && (\n <div>\n <span className=\"text-text-secondary\">IP Address</span>\n <p className=\"font-mono text-xs\">{event.ipAddress}</p>\n </div>\n )}\n </div>\n </CardContent>\n </EmphasisPanel>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-base\">Severity Assessment</CardTitle>\n </CardHeader>\n <CardContent>\n <div\n className={`p-4 rounded-lg text-center ${event.severity === 'critical' ? 'bg-status-error-bg-subtle text-status-error-text' : event.severity === 'high' ? 'bg-status-warning-bg-subtle text-status-warning-text' : event.severity === 'medium' ? 'bg-status-warning-bg-subtle text-status-warning-text' : 'bg-status-info-bg-subtle text-status-info-text'}`}\n >\n <p className=\"text-2xl font-bold uppercase\">{event.severity}</p>\n <p className=\"text-xs mt-1\">Severity Level</p>\n </div>\n </CardContent>\n </Card>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
|