@burdenoff/microfe-assethandler 2026.625.1 → 2026.625.2

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 (113) hide show
  1. package/dist/assethandler/pages/AiPredictionsPage.js +42 -41
  2. package/dist/assethandler/pages/AiPredictionsPage.js.map +1 -1
  3. package/dist/assethandler/pages/AnalyticsPage.js +538 -534
  4. package/dist/assethandler/pages/AnalyticsPage.js.map +1 -1
  5. package/dist/assethandler/pages/AssetsAssetCategoriesPage.js +135 -125
  6. package/dist/assethandler/pages/AssetsAssetCategoriesPage.js.map +1 -1
  7. package/dist/assethandler/pages/AssetsAssetCheckInOutPage.js +90 -92
  8. package/dist/assethandler/pages/AssetsAssetCheckInOutPage.js.map +1 -1
  9. package/dist/assethandler/pages/AssetsAssetCreatePage.js +131 -124
  10. package/dist/assethandler/pages/AssetsAssetCreatePage.js.map +1 -1
  11. package/dist/assethandler/pages/AssetsAssetDetailPage.js +214 -185
  12. package/dist/assethandler/pages/AssetsAssetDetailPage.js.map +1 -1
  13. package/dist/assethandler/pages/AssetsAssetEditPage.js +168 -156
  14. package/dist/assethandler/pages/AssetsAssetEditPage.js.map +1 -1
  15. package/dist/assethandler/pages/AssetsAssetListPage.js +207 -187
  16. package/dist/assethandler/pages/AssetsAssetListPage.js.map +1 -1
  17. package/dist/assethandler/pages/AssetsAssetTrackingPage.js +82 -71
  18. package/dist/assethandler/pages/AssetsAssetTrackingPage.js.map +1 -1
  19. package/dist/assethandler/pages/AuditTrailPage.js +93 -91
  20. package/dist/assethandler/pages/AuditTrailPage.js.map +1 -1
  21. package/dist/assethandler/pages/CmdbBrowserPage.js +32 -33
  22. package/dist/assethandler/pages/CmdbBrowserPage.js.map +1 -1
  23. package/dist/assethandler/pages/DashboardPage.js +157 -126
  24. package/dist/assethandler/pages/DashboardPage.js.map +1 -1
  25. package/dist/assethandler/pages/DigitalTwinPage.js +25 -26
  26. package/dist/assethandler/pages/DigitalTwinPage.js.map +1 -1
  27. package/dist/assethandler/pages/DiscoveryJobsPage.js +50 -50
  28. package/dist/assethandler/pages/DiscoveryJobsPage.js.map +1 -1
  29. package/dist/assethandler/pages/EsgDashboardPage.js +43 -42
  30. package/dist/assethandler/pages/EsgDashboardPage.js.map +1 -1
  31. package/dist/assethandler/pages/FinanceBudgetDetailPage.js +96 -82
  32. package/dist/assethandler/pages/FinanceBudgetDetailPage.js.map +1 -1
  33. package/dist/assethandler/pages/FinanceFinanceHubPage.js +137 -103
  34. package/dist/assethandler/pages/FinanceFinanceHubPage.js.map +1 -1
  35. package/dist/assethandler/pages/FinanceInvoiceDetailPage.js +77 -66
  36. package/dist/assethandler/pages/FinanceInvoiceDetailPage.js.map +1 -1
  37. package/dist/assethandler/pages/IotDevicesPage.js +34 -35
  38. package/dist/assethandler/pages/IotDevicesPage.js.map +1 -1
  39. package/dist/assethandler/pages/ItilChangeDetailPage.js +236 -199
  40. package/dist/assethandler/pages/ItilChangeDetailPage.js.map +1 -1
  41. package/dist/assethandler/pages/ItilChangeManagementPage.js +66 -64
  42. package/dist/assethandler/pages/ItilChangeManagementPage.js.map +1 -1
  43. package/dist/assethandler/pages/ItilIncidentDetailPage.js +237 -200
  44. package/dist/assethandler/pages/ItilIncidentDetailPage.js.map +1 -1
  45. package/dist/assethandler/pages/ItilIncidentManagementPage.js +99 -97
  46. package/dist/assethandler/pages/ItilIncidentManagementPage.js.map +1 -1
  47. package/dist/assethandler/pages/ItilItilhubPage.js +166 -122
  48. package/dist/assethandler/pages/ItilItilhubPage.js.map +1 -1
  49. package/dist/assethandler/pages/ItilProblemDetailPage.js +193 -156
  50. package/dist/assethandler/pages/ItilProblemDetailPage.js.map +1 -1
  51. package/dist/assethandler/pages/ItilProblemManagementPage.js +63 -61
  52. package/dist/assethandler/pages/ItilProblemManagementPage.js.map +1 -1
  53. package/dist/assethandler/pages/KnowledgeBasePage.js +45 -43
  54. package/dist/assethandler/pages/KnowledgeBasePage.js.map +1 -1
  55. package/dist/assethandler/pages/MaintenanceMaintenanceCalendarPage.js +70 -68
  56. package/dist/assethandler/pages/MaintenanceMaintenanceCalendarPage.js.map +1 -1
  57. package/dist/assethandler/pages/MaintenanceMaintenanceSchedulerPage.js +77 -62
  58. package/dist/assethandler/pages/MaintenanceMaintenanceSchedulerPage.js.map +1 -1
  59. package/dist/assethandler/pages/MarketplaceMarketplaceDetailPage.js +162 -151
  60. package/dist/assethandler/pages/MarketplaceMarketplaceDetailPage.js.map +1 -1
  61. package/dist/assethandler/pages/MarketplaceMarketplaceListPage.js +64 -57
  62. package/dist/assethandler/pages/MarketplaceMarketplaceListPage.js.map +1 -1
  63. package/dist/assethandler/pages/MarketplaceMarketplaceOrdersPage.js +125 -108
  64. package/dist/assethandler/pages/MarketplaceMarketplaceOrdersPage.js.map +1 -1
  65. package/dist/assethandler/pages/MarketplaceMarketplaceSellPage.js +67 -61
  66. package/dist/assethandler/pages/MarketplaceMarketplaceSellPage.js.map +1 -1
  67. package/dist/assethandler/pages/OperationsMaintenanceDetailPage.js +203 -166
  68. package/dist/assethandler/pages/OperationsMaintenanceDetailPage.js.map +1 -1
  69. package/dist/assethandler/pages/OperationsOperationsHubPage.js +125 -95
  70. package/dist/assethandler/pages/OperationsOperationsHubPage.js.map +1 -1
  71. package/dist/assethandler/pages/OperationsWorkOrderDetailPage.js +165 -151
  72. package/dist/assethandler/pages/OperationsWorkOrderDetailPage.js.map +1 -1
  73. package/dist/assethandler/pages/PortfolioPortfolioOverviewPage.js +83 -81
  74. package/dist/assethandler/pages/PortfolioPortfolioOverviewPage.js.map +1 -1
  75. package/dist/assethandler/pages/ProvenancePage.js +56 -53
  76. package/dist/assethandler/pages/ProvenancePage.js.map +1 -1
  77. package/dist/assethandler/pages/ReportsReportBuilderPage.js +80 -73
  78. package/dist/assethandler/pages/ReportsReportBuilderPage.js.map +1 -1
  79. package/dist/assethandler/pages/ReportsReportsDashboardPage.js +112 -77
  80. package/dist/assethandler/pages/ReportsReportsDashboardPage.js.map +1 -1
  81. package/dist/assethandler/pages/ReportsReportsListPage.js +119 -103
  82. package/dist/assethandler/pages/ReportsReportsListPage.js.map +1 -1
  83. package/dist/assethandler/pages/SamLicensesPage.js +32 -33
  84. package/dist/assethandler/pages/SamLicensesPage.js.map +1 -1
  85. package/dist/assethandler/pages/SecurityComplianceDetailPage.js +60 -52
  86. package/dist/assethandler/pages/SecurityComplianceDetailPage.js.map +1 -1
  87. package/dist/assethandler/pages/SecurityPolicyDetailPage.js +134 -117
  88. package/dist/assethandler/pages/SecurityPolicyDetailPage.js.map +1 -1
  89. package/dist/assethandler/pages/SecurityScheduleBackupPage.js +63 -57
  90. package/dist/assethandler/pages/SecurityScheduleBackupPage.js.map +1 -1
  91. package/dist/assethandler/pages/SecuritySecurityEventDetailPage.js +131 -117
  92. package/dist/assethandler/pages/SecuritySecurityEventDetailPage.js.map +1 -1
  93. package/dist/assethandler/pages/SecuritySecurityHubPage.js +147 -113
  94. package/dist/assethandler/pages/SecuritySecurityHubPage.js.map +1 -1
  95. package/dist/assethandler/pages/TransactionsTransactionDetailPage.js +235 -218
  96. package/dist/assethandler/pages/TransactionsTransactionDetailPage.js.map +1 -1
  97. package/dist/assethandler/pages/TransactionsTransactionListPage.js +118 -116
  98. package/dist/assethandler/pages/TransactionsTransactionListPage.js.map +1 -1
  99. package/dist/assethandler/pages/UsersPage.js +108 -99
  100. package/dist/assethandler/pages/UsersPage.js.map +1 -1
  101. package/dist/assethandler/pages/UsersUserCreatePage.js +74 -67
  102. package/dist/assethandler/pages/UsersUserCreatePage.js.map +1 -1
  103. package/dist/assethandler/pages/UsersUserManagementHubPage.js +128 -93
  104. package/dist/assethandler/pages/UsersUserManagementHubPage.js.map +1 -1
  105. package/dist/assethandler/pages/WorkflowsWorkflowBuilderPage.js +211 -193
  106. package/dist/assethandler/pages/WorkflowsWorkflowBuilderPage.js.map +1 -1
  107. package/dist/assethandler/pages/WorkflowsWorkflowExecutionsPage.js +88 -86
  108. package/dist/assethandler/pages/WorkflowsWorkflowExecutionsPage.js.map +1 -1
  109. package/dist/assethandler/pages/WorkflowsWorkflowListPage.js +68 -60
  110. package/dist/assethandler/pages/WorkflowsWorkflowListPage.js.map +1 -1
  111. package/dist/assethandler/pages/WorkflowsWorkflowTemplatesPage.js +71 -68
  112. package/dist/assethandler/pages/WorkflowsWorkflowTemplatesPage.js.map +1 -1
  113. package/package.json +2 -2
@@ -1,259 +1,288 @@
1
1
  import { useAssetHandlerStore as e } from "../store/assethandlerStore.js";
2
2
  import { tWithFallback as t } from "../utils/i18n.js";
3
3
  import { ArrowLeft as n, Building as r, Calendar as i, Clock as a, DollarSign as o, Download as s, Edit as c, MapPin as l, Tag as u, User as d, Wrench as f } from "lucide-react";
4
- import { useParams as p } from "react-router-dom";
5
- import { Badge as m, Button as h, Card as g, CardContent as _, CardDescription as v, CardHeader as y, CardTitle as b, GradientText as x, Separator as S, Tabs as C, TabsContent as w, TabsList as T, TabsTrigger as E } from "@burdenoff/fe-libs/ui";
6
- import { useI18n as D } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
7
- import { jsx as O, jsxs as k } from "react/jsx-runtime";
4
+ import { useNavigate as p, useParams as m } from "react-router-dom";
5
+ import { Badge as h, Button as g, Card as _, CardContent as v, CardDescription as y, CardHeader as b, CardTitle as x, EmphasisPanel as S, GradientText as C, IllustratedEmptyState as w, NextSteps as T, PagePurpose as E, Separator as D, Tabs as O, TabsContent as k, TabsList as A, TabsTrigger as j } from "@burdenoff/fe-libs/ui";
6
+ import { useI18n as M } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
7
+ import { jsx as N, jsxs as P } from "react/jsx-runtime";
8
8
  //#region src/assethandler/pages/AssetsAssetDetailPage.tsx
9
- var A = {
9
+ var F = {
10
10
  active: "default",
11
11
  inactive: "outline",
12
12
  under_maintenance: "secondary",
13
13
  disposed: "destructive",
14
14
  reserved: "secondary",
15
15
  in_transit: "outline"
16
- }, j = {
16
+ }, I = {
17
17
  excellent: "text-status-success-text bg-status-success-bg-subtle",
18
18
  good: "text-status-info-text bg-status-info-bg-subtle",
19
19
  fair: "text-status-warning-text bg-status-warning-bg-subtle",
20
20
  poor: "text-status-warning-text bg-status-warning-bg-subtle",
21
21
  non_functional: "text-status-error-text bg-status-error-bg-subtle"
22
22
  };
23
- function M() {
24
- let { t: M } = D(), { assetId: P } = p(), { assets: F, maintenanceRecords: I } = e(), L = F.find((e) => e.id === P || e.assetTag === P) ?? F[0];
25
- if (!L) return /* @__PURE__ */ O("div", {
23
+ function L() {
24
+ let { t: L } = M(), z = p(), { assetId: B } = m(), { assets: V, maintenanceRecords: H } = e(), U = V.find((e) => e.id === B || e.assetTag === B) ?? V[0];
25
+ if (!U) return /* @__PURE__ */ N("div", {
26
26
  className: "p-6",
27
- children: /* @__PURE__ */ O("p", {
28
- className: "text-text-secondary",
29
- children: t(M, "assethandler.assets.detail.notFound", "Asset not found.")
27
+ children: /* @__PURE__ */ N(w, {
28
+ illustration: "empty-search",
29
+ title: t(L, "assethandler.assets.detail.notFound", "Asset not found"),
30
+ description: "This asset may have been disposed or removed. Return to the inventory to find it.",
31
+ action: /* @__PURE__ */ N(g, {
32
+ size: "sm",
33
+ onClick: () => z("/assets/asset-list"),
34
+ children: "Back to inventory"
35
+ })
30
36
  })
31
37
  });
32
- let R = I.filter((e) => e.assetId === L.id), z = L.value - L.currentValue, B = (z / L.value * 100).toFixed(1);
33
- return /* @__PURE__ */ k("div", {
38
+ let W = H.filter((e) => e.assetId === U.id), G = U.value - U.currentValue, K = (G / U.value * 100).toFixed(1);
39
+ return /* @__PURE__ */ P("div", {
34
40
  className: "space-y-6 p-6",
35
41
  children: [
36
- /* @__PURE__ */ k("div", {
42
+ /* @__PURE__ */ P("div", {
37
43
  className: "flex items-center justify-between",
38
- children: [/* @__PURE__ */ k("div", {
44
+ children: [/* @__PURE__ */ P("div", {
39
45
  className: "flex items-center gap-4",
40
- children: [/* @__PURE__ */ O(h, {
46
+ children: [/* @__PURE__ */ N(g, {
41
47
  variant: "ghost",
42
48
  size: "icon",
43
- children: /* @__PURE__ */ O(n, { className: "h-4 w-4" })
44
- }), /* @__PURE__ */ k("div", { children: [/* @__PURE__ */ k("div", {
49
+ onClick: () => z("/assets/asset-list"),
50
+ children: /* @__PURE__ */ N(n, { className: "h-4 w-4" })
51
+ }), /* @__PURE__ */ P("div", { children: [/* @__PURE__ */ P("div", {
45
52
  className: "flex items-center gap-3",
46
53
  children: [
47
- /* @__PURE__ */ O("h1", {
54
+ /* @__PURE__ */ N("h1", {
48
55
  className: "text-2xl font-bold",
49
- children: /* @__PURE__ */ O(x, { children: L.name })
56
+ children: /* @__PURE__ */ N(C, { children: U.name })
50
57
  }),
51
- /* @__PURE__ */ O(m, {
52
- variant: A[L.status],
53
- children: L.status.replace("_", " ")
58
+ /* @__PURE__ */ N(h, {
59
+ variant: F[U.status],
60
+ children: U.status.replace("_", " ")
54
61
  }),
55
- /* @__PURE__ */ O("span", {
56
- className: `rounded-md px-2 py-0.5 text-xs font-medium ${j[L.condition]}`,
57
- children: L.condition
62
+ /* @__PURE__ */ N("span", {
63
+ className: `rounded-md px-2 py-0.5 text-xs font-medium ${I[U.condition]}`,
64
+ children: U.condition
58
65
  })
59
66
  ]
60
- }), /* @__PURE__ */ k("p", {
67
+ }), /* @__PURE__ */ P("p", {
61
68
  className: "text-sm text-text-secondary mt-1",
62
69
  children: [
63
- L.assetTag,
70
+ U.assetTag,
64
71
  " · SN: ",
65
- L.serialNumber
72
+ U.serialNumber
66
73
  ]
67
74
  })] })]
68
- }), /* @__PURE__ */ k("div", {
75
+ }), /* @__PURE__ */ P("div", {
69
76
  className: "flex gap-2",
70
- children: [/* @__PURE__ */ k(h, {
77
+ children: [/* @__PURE__ */ P(g, {
71
78
  variant: "outline",
72
79
  size: "sm",
73
- children: [/* @__PURE__ */ O(s, { className: "mr-2 h-4 w-4" }), t(M, "assethandler.assets.detail.actions.export", "Export")]
74
- }), /* @__PURE__ */ k(h, {
80
+ children: [/* @__PURE__ */ N(s, { className: "mr-2 h-4 w-4" }), t(L, "assethandler.assets.detail.actions.export", "Export")]
81
+ }), /* @__PURE__ */ P(g, {
75
82
  size: "sm",
76
- children: [/* @__PURE__ */ O(c, { className: "mr-2 h-4 w-4" }), t(M, "assethandler.assets.detail.actions.editAsset", "Edit Asset")]
83
+ onClick: () => z(`/assets/${U.id}/edit`),
84
+ children: [/* @__PURE__ */ N(c, { className: "mr-2 h-4 w-4" }), t(L, "assethandler.assets.detail.actions.editAsset", "Edit Asset")]
77
85
  })]
78
86
  })]
79
87
  }),
80
- /* @__PURE__ */ k("div", {
88
+ /* @__PURE__ */ N(E, { children: t(L, "assethandler.assets.detail.purpose", "The complete profile of a single asset — its identity, value, condition, location, assignment and full maintenance history. Use this page as the asset's home base: edit its details, check it in or out, and schedule the next service.") }),
89
+ /* @__PURE__ */ N(T, {
90
+ storageKey: "assethandler-asset-detail",
91
+ steps: [
92
+ {
93
+ id: "edit",
94
+ label: "Edit asset details",
95
+ description: "Update value, status, location or assignment.",
96
+ onClick: () => z(`/assets/${U.id}/edit`)
97
+ },
98
+ {
99
+ id: "checkinout",
100
+ label: "Check this asset in or out",
101
+ description: "Record who is using it and when it returns.",
102
+ onClick: () => z("/assets/asset-check-in-out")
103
+ },
104
+ {
105
+ id: "maintenance",
106
+ label: "Schedule maintenance",
107
+ description: "Plan the next service before it is overdue.",
108
+ onClick: () => z("/maintenance/maintenance-scheduler")
109
+ }
110
+ ]
111
+ }),
112
+ /* @__PURE__ */ P("div", {
81
113
  className: "grid gap-4 md:grid-cols-4",
82
114
  children: [
83
- /* @__PURE__ */ O(g, { children: /* @__PURE__ */ k(_, {
84
- className: "pt-4",
85
- children: [
86
- /* @__PURE__ */ k("div", {
87
- className: "flex items-center gap-2 text-sm text-text-secondary",
88
- children: [/* @__PURE__ */ O(o, { className: "h-4 w-4" }), t(M, "assethandler.assets.detail.stats.currentValue", "Current Value")]
89
- }),
90
- /* @__PURE__ */ k("p", {
91
- className: "text-2xl font-bold mt-1",
92
- children: ["$", L.currentValue.toLocaleString()]
93
- }),
94
- /* @__PURE__ */ k("p", {
95
- className: "text-xs text-text-secondary",
96
- children: [
97
- t(M, "assethandler.assets.detail.stats.original", "Original"),
98
- ": $",
99
- L.value.toLocaleString()
100
- ]
101
- })
102
- ]
103
- }) }),
104
- /* @__PURE__ */ O(g, { children: /* @__PURE__ */ k(_, {
115
+ /* @__PURE__ */ P(S, { children: [
116
+ /* @__PURE__ */ P("div", {
117
+ className: "flex items-center gap-2 text-sm text-text-secondary",
118
+ children: [/* @__PURE__ */ N(o, { className: "h-4 w-4" }), t(L, "assethandler.assets.detail.stats.currentValue", "Current Value")]
119
+ }),
120
+ /* @__PURE__ */ P("p", {
121
+ className: "text-2xl font-bold mt-1 tabular-nums",
122
+ children: ["$", U.currentValue.toLocaleString()]
123
+ }),
124
+ /* @__PURE__ */ P("p", {
125
+ className: "text-xs text-text-secondary",
126
+ children: [
127
+ t(L, "assethandler.assets.detail.stats.original", "Original"),
128
+ ": $",
129
+ U.value.toLocaleString()
130
+ ]
131
+ })
132
+ ] }),
133
+ /* @__PURE__ */ N(_, { children: /* @__PURE__ */ P(v, {
105
134
  className: "pt-4",
106
135
  children: [
107
- /* @__PURE__ */ O("div", {
136
+ /* @__PURE__ */ N("div", {
108
137
  className: "flex items-center gap-2 text-sm text-text-secondary",
109
- children: t(M, "assethandler.assets.detail.stats.depreciation", "Depreciation")
138
+ children: t(L, "assethandler.assets.detail.stats.depreciation", "Depreciation")
110
139
  }),
111
- /* @__PURE__ */ k("p", {
140
+ /* @__PURE__ */ P("p", {
112
141
  className: "text-2xl font-bold mt-1 text-status-error-text",
113
- children: ["-$", z.toLocaleString()]
142
+ children: ["-$", G.toLocaleString()]
114
143
  }),
115
- /* @__PURE__ */ k("p", {
144
+ /* @__PURE__ */ P("p", {
116
145
  className: "text-xs text-text-secondary",
117
146
  children: [
118
- B,
147
+ K,
119
148
  "% ·",
120
149
  " ",
121
- t(M, "assethandler.assets.detail.stats.rate", "Rate"),
150
+ t(L, "assethandler.assets.detail.stats.rate", "Rate"),
122
151
  ":",
123
152
  " ",
124
- L.depreciationRate,
153
+ U.depreciationRate,
125
154
  "%/yr"
126
155
  ]
127
156
  })
128
157
  ]
129
158
  }) }),
130
- /* @__PURE__ */ O(g, { children: /* @__PURE__ */ k(_, {
159
+ /* @__PURE__ */ N(_, { children: /* @__PURE__ */ P(v, {
131
160
  className: "pt-4",
132
161
  children: [
133
- /* @__PURE__ */ k("div", {
162
+ /* @__PURE__ */ P("div", {
134
163
  className: "flex items-center gap-2 text-sm text-text-secondary",
135
- children: [/* @__PURE__ */ O(i, { className: "h-4 w-4" }), t(M, "assethandler.assets.detail.stats.warranty", "Warranty")]
164
+ children: [/* @__PURE__ */ N(i, { className: "h-4 w-4" }), t(L, "assethandler.assets.detail.stats.warranty", "Warranty")]
136
165
  }),
137
- /* @__PURE__ */ O("p", {
166
+ /* @__PURE__ */ N("p", {
138
167
  className: "text-lg font-bold mt-1",
139
- children: L.warrantyExpiry
168
+ children: U.warrantyExpiry
140
169
  }),
141
- /* @__PURE__ */ k("p", {
170
+ /* @__PURE__ */ P("p", {
142
171
  className: "text-xs text-text-secondary",
143
172
  children: [
144
- t(M, "assethandler.assets.detail.stats.purchased", "Purchased"),
173
+ t(L, "assethandler.assets.detail.stats.purchased", "Purchased"),
145
174
  ":",
146
175
  " ",
147
- L.purchaseDate
176
+ U.purchaseDate
148
177
  ]
149
178
  })
150
179
  ]
151
180
  }) }),
152
- /* @__PURE__ */ O(g, { children: /* @__PURE__ */ k(_, {
181
+ /* @__PURE__ */ N(_, { children: /* @__PURE__ */ P(v, {
153
182
  className: "pt-4",
154
183
  children: [
155
- /* @__PURE__ */ k("div", {
184
+ /* @__PURE__ */ P("div", {
156
185
  className: "flex items-center gap-2 text-sm text-text-secondary",
157
- children: [/* @__PURE__ */ O(a, { className: "h-4 w-4" }), t(M, "assethandler.assets.detail.stats.lastAudit", "Last Audit")]
186
+ children: [/* @__PURE__ */ N(a, { className: "h-4 w-4" }), t(L, "assethandler.assets.detail.stats.lastAudit", "Last Audit")]
158
187
  }),
159
- /* @__PURE__ */ O("p", {
188
+ /* @__PURE__ */ N("p", {
160
189
  className: "text-lg font-bold mt-1",
161
- children: L.lastAuditDate
190
+ children: U.lastAuditDate
162
191
  }),
163
- /* @__PURE__ */ k("p", {
192
+ /* @__PURE__ */ P("p", {
164
193
  className: "text-xs text-text-secondary",
165
194
  children: [
166
- R.length,
195
+ W.length,
167
196
  " ",
168
- t(M, "assethandler.assets.detail.stats.maintenanceRecords", "maintenance records")
197
+ t(L, "assethandler.assets.detail.stats.maintenanceRecords", "maintenance records")
169
198
  ]
170
199
  })
171
200
  ]
172
201
  }) })
173
202
  ]
174
203
  }),
175
- /* @__PURE__ */ k(C, {
204
+ /* @__PURE__ */ P(O, {
176
205
  defaultValue: "details",
177
206
  children: [
178
- /* @__PURE__ */ k(T, { children: [
179
- /* @__PURE__ */ O(E, {
207
+ /* @__PURE__ */ P(A, { children: [
208
+ /* @__PURE__ */ N(j, {
180
209
  value: "details",
181
- children: t(M, "assethandler.assets.detail.tabs.details", "Details")
210
+ children: t(L, "assethandler.assets.detail.tabs.details", "Details")
182
211
  }),
183
- /* @__PURE__ */ O(E, {
212
+ /* @__PURE__ */ N(j, {
184
213
  value: "maintenance",
185
- children: t(M, "assethandler.assets.detail.tabs.maintenance", "Maintenance")
214
+ children: t(L, "assethandler.assets.detail.tabs.maintenance", "Maintenance")
186
215
  }),
187
- /* @__PURE__ */ O(E, {
216
+ /* @__PURE__ */ N(j, {
188
217
  value: "financial",
189
- children: t(M, "assethandler.assets.detail.tabs.financial", "Financial")
218
+ children: t(L, "assethandler.assets.detail.tabs.financial", "Financial")
190
219
  })
191
220
  ] }),
192
- /* @__PURE__ */ O(w, {
221
+ /* @__PURE__ */ N(k, {
193
222
  value: "details",
194
223
  className: "space-y-6 mt-4",
195
- children: /* @__PURE__ */ k("div", {
224
+ children: /* @__PURE__ */ P("div", {
196
225
  className: "grid gap-6 lg:grid-cols-2",
197
- children: [/* @__PURE__ */ k(g, { children: [/* @__PURE__ */ O(y, { children: /* @__PURE__ */ O(b, { children: t(M, "assethandler.assets.detail.sections.generalInformation", "General Information") }) }), /* @__PURE__ */ O(_, { children: /* @__PURE__ */ k("dl", {
226
+ children: [/* @__PURE__ */ P(_, { children: [/* @__PURE__ */ N(b, { children: /* @__PURE__ */ N(x, { children: t(L, "assethandler.assets.detail.sections.generalInformation", "General Information") }) }), /* @__PURE__ */ N(v, { children: /* @__PURE__ */ P("dl", {
198
227
  className: "space-y-3 text-sm",
199
228
  children: [
200
- /* @__PURE__ */ O(N, {
201
- label: t(M, "assethandler.assets.detail.fields.description", "Description"),
202
- value: L.description
229
+ /* @__PURE__ */ N(R, {
230
+ label: t(L, "assethandler.assets.detail.fields.description", "Description"),
231
+ value: U.description
203
232
  }),
204
- /* @__PURE__ */ O(N, {
205
- label: t(M, "assethandler.assets.detail.fields.category", "Category"),
206
- value: L.category.replace("_", " ")
233
+ /* @__PURE__ */ N(R, {
234
+ label: t(L, "assethandler.assets.detail.fields.category", "Category"),
235
+ value: U.category.replace("_", " ")
207
236
  }),
208
- /* @__PURE__ */ O(N, {
209
- label: t(M, "assethandler.assets.detail.fields.manufacturer", "Manufacturer"),
210
- value: L.manufacturer
237
+ /* @__PURE__ */ N(R, {
238
+ label: t(L, "assethandler.assets.detail.fields.manufacturer", "Manufacturer"),
239
+ value: U.manufacturer
211
240
  }),
212
- /* @__PURE__ */ O(N, {
213
- label: t(M, "assethandler.assets.detail.fields.model", "Model"),
214
- value: L.model
241
+ /* @__PURE__ */ N(R, {
242
+ label: t(L, "assethandler.assets.detail.fields.model", "Model"),
243
+ value: U.model
215
244
  }),
216
- /* @__PURE__ */ O(N, {
217
- label: t(M, "assethandler.assets.detail.fields.vendor", "Vendor"),
218
- value: L.vendor
245
+ /* @__PURE__ */ N(R, {
246
+ label: t(L, "assethandler.assets.detail.fields.vendor", "Vendor"),
247
+ value: U.vendor
219
248
  }),
220
- /* @__PURE__ */ O(N, {
221
- label: t(M, "assethandler.assets.detail.fields.serialNumber", "Serial Number"),
222
- value: L.serialNumber
249
+ /* @__PURE__ */ N(R, {
250
+ label: t(L, "assethandler.assets.detail.fields.serialNumber", "Serial Number"),
251
+ value: U.serialNumber
223
252
  }),
224
- /* @__PURE__ */ O(N, {
225
- label: t(M, "assethandler.assets.detail.fields.assetTag", "Asset Tag"),
226
- value: L.assetTag
253
+ /* @__PURE__ */ N(R, {
254
+ label: t(L, "assethandler.assets.detail.fields.assetTag", "Asset Tag"),
255
+ value: U.assetTag
227
256
  })
228
257
  ]
229
- }) })] }), /* @__PURE__ */ k(g, { children: [/* @__PURE__ */ O(y, { children: /* @__PURE__ */ O(b, { children: t(M, "assethandler.assets.detail.sections.assignmentLocation", "Assignment & Location") }) }), /* @__PURE__ */ k(_, { children: [
230
- /* @__PURE__ */ k("dl", {
258
+ }) })] }), /* @__PURE__ */ P(_, { children: [/* @__PURE__ */ N(b, { children: /* @__PURE__ */ N(x, { children: t(L, "assethandler.assets.detail.sections.assignmentLocation", "Assignment & Location") }) }), /* @__PURE__ */ P(v, { children: [
259
+ /* @__PURE__ */ P("dl", {
231
260
  className: "space-y-3 text-sm",
232
261
  children: [
233
- /* @__PURE__ */ O(N, {
234
- label: t(M, "assethandler.assets.detail.fields.assignedTo", "Assigned To"),
235
- value: L.assignedTo,
236
- icon: /* @__PURE__ */ O(d, { className: "h-3.5 w-3.5" })
262
+ /* @__PURE__ */ N(R, {
263
+ label: t(L, "assethandler.assets.detail.fields.assignedTo", "Assigned To"),
264
+ value: U.assignedTo,
265
+ icon: /* @__PURE__ */ N(d, { className: "h-3.5 w-3.5" })
237
266
  }),
238
- /* @__PURE__ */ O(N, {
239
- label: t(M, "assethandler.assets.detail.fields.department", "Department"),
240
- value: L.department,
241
- icon: /* @__PURE__ */ O(r, { className: "h-3.5 w-3.5" })
267
+ /* @__PURE__ */ N(R, {
268
+ label: t(L, "assethandler.assets.detail.fields.department", "Department"),
269
+ value: U.department,
270
+ icon: /* @__PURE__ */ N(r, { className: "h-3.5 w-3.5" })
242
271
  }),
243
- /* @__PURE__ */ O(N, {
244
- label: t(M, "assethandler.assets.detail.fields.location", "Location"),
245
- value: L.location,
246
- icon: /* @__PURE__ */ O(l, { className: "h-3.5 w-3.5" })
272
+ /* @__PURE__ */ N(R, {
273
+ label: t(L, "assethandler.assets.detail.fields.location", "Location"),
274
+ value: U.location,
275
+ icon: /* @__PURE__ */ N(l, { className: "h-3.5 w-3.5" })
247
276
  })
248
277
  ]
249
278
  }),
250
- /* @__PURE__ */ O(S, { className: "my-4" }),
251
- /* @__PURE__ */ k("div", { children: [/* @__PURE__ */ k("h4", {
279
+ /* @__PURE__ */ N(D, { className: "my-4" }),
280
+ /* @__PURE__ */ P("div", { children: [/* @__PURE__ */ P("h4", {
252
281
  className: "text-sm font-medium mb-2 flex items-center gap-2",
253
- children: [/* @__PURE__ */ O(u, { className: "h-3.5 w-3.5" }), t(M, "assethandler.assets.detail.fields.tags", "Tags")]
254
- }), /* @__PURE__ */ O("div", {
282
+ children: [/* @__PURE__ */ N(u, { className: "h-3.5 w-3.5" }), t(L, "assethandler.assets.detail.fields.tags", "Tags")]
283
+ }), /* @__PURE__ */ N("div", {
255
284
  className: "flex flex-wrap gap-1.5",
256
- children: L.tags.map((e) => /* @__PURE__ */ O(m, {
285
+ children: U.tags.map((e) => /* @__PURE__ */ N(h, {
257
286
  variant: "secondary",
258
287
  className: "text-xs",
259
288
  children: e
@@ -262,66 +291,66 @@ function M() {
262
291
  ] })] })]
263
292
  })
264
293
  }),
265
- /* @__PURE__ */ O(w, {
294
+ /* @__PURE__ */ N(k, {
266
295
  value: "maintenance",
267
296
  className: "mt-4",
268
- children: /* @__PURE__ */ k(g, { children: [/* @__PURE__ */ k(y, { children: [/* @__PURE__ */ k(b, {
297
+ children: /* @__PURE__ */ P(_, { children: [/* @__PURE__ */ P(b, { children: [/* @__PURE__ */ P(x, {
269
298
  className: "flex items-center gap-2",
270
- children: [/* @__PURE__ */ O(f, { className: "h-4 w-4" }), t(M, "assethandler.assets.detail.maintenance.title", "Maintenance History")]
271
- }), /* @__PURE__ */ k(v, { children: [
272
- R.length,
299
+ children: [/* @__PURE__ */ N(f, { className: "h-4 w-4" }), t(L, "assethandler.assets.detail.maintenance.title", "Maintenance History")]
300
+ }), /* @__PURE__ */ P(y, { children: [
301
+ W.length,
273
302
  " ",
274
- t(M, "assethandler.assets.detail.maintenance.recordsFound", "records found")
275
- ] })] }), /* @__PURE__ */ O(_, { children: R.length === 0 ? /* @__PURE__ */ O("p", {
303
+ t(L, "assethandler.assets.detail.maintenance.recordsFound", "records found")
304
+ ] })] }), /* @__PURE__ */ N(v, { children: W.length === 0 ? /* @__PURE__ */ N("p", {
276
305
  className: "text-center text-text-secondary py-8",
277
- children: t(M, "assethandler.assets.detail.maintenance.empty", "No maintenance records for this asset.")
278
- }) : /* @__PURE__ */ O("div", {
306
+ children: t(L, "assethandler.assets.detail.maintenance.empty", "No maintenance records for this asset.")
307
+ }) : /* @__PURE__ */ N("div", {
279
308
  className: "space-y-3",
280
- children: R.map((e) => /* @__PURE__ */ O("div", {
309
+ children: W.map((e) => /* @__PURE__ */ N("div", {
281
310
  className: "flex items-start gap-4 rounded-lg border p-4",
282
- children: /* @__PURE__ */ k("div", {
311
+ children: /* @__PURE__ */ P("div", {
283
312
  className: "flex-1",
284
313
  children: [
285
- /* @__PURE__ */ k("div", {
314
+ /* @__PURE__ */ P("div", {
286
315
  className: "flex items-center gap-2",
287
316
  children: [
288
- /* @__PURE__ */ O("span", {
317
+ /* @__PURE__ */ N("span", {
289
318
  className: "font-mono text-xs text-text-secondary",
290
319
  children: e.id
291
320
  }),
292
- /* @__PURE__ */ O(m, {
321
+ /* @__PURE__ */ N(h, {
293
322
  variant: "outline",
294
323
  children: e.type
295
324
  }),
296
- /* @__PURE__ */ O(m, {
325
+ /* @__PURE__ */ N(h, {
297
326
  variant: e.status === "completed" ? "default" : "secondary",
298
327
  children: e.status.replace("_", " ")
299
328
  })
300
329
  ]
301
330
  }),
302
- /* @__PURE__ */ O("p", {
331
+ /* @__PURE__ */ N("p", {
303
332
  className: "font-medium mt-1",
304
333
  children: e.title
305
334
  }),
306
- /* @__PURE__ */ O("p", {
335
+ /* @__PURE__ */ N("p", {
307
336
  className: "text-sm text-text-secondary",
308
337
  children: e.description
309
338
  }),
310
- /* @__PURE__ */ k("div", {
339
+ /* @__PURE__ */ P("div", {
311
340
  className: "flex gap-4 mt-2 text-xs text-text-secondary",
312
341
  children: [
313
- /* @__PURE__ */ k("span", { children: [
314
- t(M, "assethandler.assets.detail.maintenance.scheduled", "Scheduled"),
342
+ /* @__PURE__ */ P("span", { children: [
343
+ t(L, "assethandler.assets.detail.maintenance.scheduled", "Scheduled"),
315
344
  ": ",
316
345
  e.scheduledDate
317
346
  ] }),
318
- /* @__PURE__ */ k("span", { children: [
319
- t(M, "assethandler.assets.detail.maintenance.cost", "Cost"),
347
+ /* @__PURE__ */ P("span", { children: [
348
+ t(L, "assethandler.assets.detail.maintenance.cost", "Cost"),
320
349
  ": $",
321
350
  e.cost
322
351
  ] }),
323
- /* @__PURE__ */ k("span", { children: [
324
- t(M, "assethandler.assets.detail.maintenance.assigned", "Assigned"),
352
+ /* @__PURE__ */ P("span", { children: [
353
+ t(L, "assethandler.assets.detail.maintenance.assigned", "Assigned"),
325
354
  ": ",
326
355
  e.assignedTo
327
356
  ] })
@@ -332,39 +361,39 @@ function M() {
332
361
  }, e.id))
333
362
  }) })] })
334
363
  }),
335
- /* @__PURE__ */ O(w, {
364
+ /* @__PURE__ */ N(k, {
336
365
  value: "financial",
337
366
  className: "mt-4",
338
- children: /* @__PURE__ */ k(g, { children: [/* @__PURE__ */ O(y, { children: /* @__PURE__ */ O(b, { children: t(M, "assethandler.assets.detail.financial.title", "Financial Details") }) }), /* @__PURE__ */ O(_, { children: /* @__PURE__ */ k("dl", {
367
+ children: /* @__PURE__ */ P(_, { children: [/* @__PURE__ */ N(b, { children: /* @__PURE__ */ N(x, { children: t(L, "assethandler.assets.detail.financial.title", "Financial Details") }) }), /* @__PURE__ */ N(v, { children: /* @__PURE__ */ P("dl", {
339
368
  className: "grid grid-cols-2 gap-4 text-sm",
340
369
  children: [
341
- /* @__PURE__ */ O(N, {
342
- label: t(M, "assethandler.assets.detail.financial.purchasePrice", "Purchase Price"),
343
- value: `$${L.value.toLocaleString()}`
370
+ /* @__PURE__ */ N(R, {
371
+ label: t(L, "assethandler.assets.detail.financial.purchasePrice", "Purchase Price"),
372
+ value: `$${U.value.toLocaleString()}`
344
373
  }),
345
- /* @__PURE__ */ O(N, {
346
- label: t(M, "assethandler.assets.detail.financial.currentValue", "Current Value"),
347
- value: `$${L.currentValue.toLocaleString()}`
374
+ /* @__PURE__ */ N(R, {
375
+ label: t(L, "assethandler.assets.detail.financial.currentValue", "Current Value"),
376
+ value: `$${U.currentValue.toLocaleString()}`
348
377
  }),
349
- /* @__PURE__ */ O(N, {
350
- label: t(M, "assethandler.assets.detail.financial.depreciation", "Depreciation"),
351
- value: `-$${z.toLocaleString()} (${B}%)`
378
+ /* @__PURE__ */ N(R, {
379
+ label: t(L, "assethandler.assets.detail.financial.depreciation", "Depreciation"),
380
+ value: `-$${G.toLocaleString()} (${K}%)`
352
381
  }),
353
- /* @__PURE__ */ O(N, {
354
- label: t(M, "assethandler.assets.detail.financial.annualDepreciationRate", "Annual Dep. Rate"),
355
- value: `${L.depreciationRate}%`
382
+ /* @__PURE__ */ N(R, {
383
+ label: t(L, "assethandler.assets.detail.financial.annualDepreciationRate", "Annual Dep. Rate"),
384
+ value: `${U.depreciationRate}%`
356
385
  }),
357
- /* @__PURE__ */ O(N, {
358
- label: t(M, "assethandler.assets.detail.financial.purchaseDate", "Purchase Date"),
359
- value: L.purchaseDate
386
+ /* @__PURE__ */ N(R, {
387
+ label: t(L, "assethandler.assets.detail.financial.purchaseDate", "Purchase Date"),
388
+ value: U.purchaseDate
360
389
  }),
361
- /* @__PURE__ */ O(N, {
362
- label: t(M, "assethandler.assets.detail.financial.warrantyExpiry", "Warranty Expiry"),
363
- value: L.warrantyExpiry
390
+ /* @__PURE__ */ N(R, {
391
+ label: t(L, "assethandler.assets.detail.financial.warrantyExpiry", "Warranty Expiry"),
392
+ value: U.warrantyExpiry
364
393
  }),
365
- /* @__PURE__ */ O(N, {
366
- label: t(M, "assethandler.assets.detail.financial.vendor", "Vendor"),
367
- value: L.vendor
394
+ /* @__PURE__ */ N(R, {
395
+ label: t(L, "assethandler.assets.detail.financial.vendor", "Vendor"),
396
+ value: U.vendor
368
397
  })
369
398
  ]
370
399
  }) })] })
@@ -374,19 +403,19 @@ function M() {
374
403
  ]
375
404
  });
376
405
  }
377
- function N({ label: e, value: t, icon: n }) {
378
- return /* @__PURE__ */ k("div", {
406
+ function R({ label: e, value: t, icon: n }) {
407
+ return /* @__PURE__ */ P("div", {
379
408
  className: "flex items-start justify-between gap-4",
380
- children: [/* @__PURE__ */ k("dt", {
409
+ children: [/* @__PURE__ */ P("dt", {
381
410
  className: "text-text-secondary flex items-center gap-1.5 shrink-0",
382
411
  children: [n, e]
383
- }), /* @__PURE__ */ O("dd", {
412
+ }), /* @__PURE__ */ N("dd", {
384
413
  className: "font-medium text-right capitalize",
385
414
  children: t
386
415
  })]
387
416
  });
388
417
  }
389
418
  //#endregion
390
- export { M as AssetsAssetDetailPage };
419
+ export { L as AssetsAssetDetailPage };
391
420
 
392
421
  //# sourceMappingURL=AssetsAssetDetailPage.js.map