@burdenoff/microfe-assethandler 2026.716.1 → 2026.719.1
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/AssetHandlerRoutes.d.ts.map +1 -1
- package/dist/assethandler/AssetHandlerRoutes.js +9 -17
- package/dist/assethandler/AssetHandlerRoutes.js.map +1 -1
- package/dist/assethandler/ops/NewWorkOrderDialog.d.ts.map +1 -1
- package/dist/assethandler/ops/NewWorkOrderDialog.js +110 -74
- package/dist/assethandler/ops/NewWorkOrderDialog.js.map +1 -1
- package/dist/assethandler/pages/AssetsAssetCreatePage.d.ts.map +1 -1
- package/dist/assethandler/pages/AssetsAssetCreatePage.js +189 -126
- package/dist/assethandler/pages/AssetsAssetCreatePage.js.map +1 -1
- package/dist/assethandler/pages/AssetsAssetDetailPage.d.ts.map +1 -1
- package/dist/assethandler/pages/AssetsAssetDetailPage.js +312 -251
- package/dist/assethandler/pages/AssetsAssetDetailPage.js.map +1 -1
- package/dist/assethandler/pages/OperationsWorkOrderDetailPage.d.ts.map +1 -1
- package/dist/assethandler/pages/OperationsWorkOrderDetailPage.js +286 -222
- package/dist/assethandler/pages/OperationsWorkOrderDetailPage.js.map +1 -1
- package/dist/utils/pageContext.d.ts.map +1 -1
- package/dist/utils/pageContext.js +26 -18
- package/dist/utils/pageContext.js.map +1 -1
- package/package.json +4 -2
- package/dist/assethandler/pages/EsgDashboardPage.js +0 -423
- package/dist/assethandler/pages/EsgDashboardPage.js.map +0 -1
- package/dist/assethandler/pages/KnowledgeBasePage.js +0 -521
- package/dist/assethandler/pages/KnowledgeBasePage.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssetHandlerRoutes.d.ts","sourceRoot":"","sources":["../../src/assethandler/AssetHandlerRoutes.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AssetHandlerRoutes.d.ts","sourceRoot":"","sources":["../../src/assethandler/AssetHandlerRoutes.tsx"],"names":[],"mappings":"AAiKA,wBAAgB,kBAAkB,gCA6DjC"}
|
|
@@ -4,16 +4,16 @@ import { Loader2 as r } from "lucide-react";
|
|
|
4
4
|
import { Navigate as i, Route as a, Routes as o } from "react-router-dom";
|
|
5
5
|
import { jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
6
6
|
//#region src/assethandler/AssetHandlerRoutes.tsx
|
|
7
|
-
var l = n(() => import("./pages/AssetsAssetCategoriesPage.js").then((e) => ({ default: e.AssetsAssetCategoriesPage }))), u = n(() => import("./pages/AssetsAssetCheckInOutPage.js").then((e) => ({ default: e.AssetsAssetCheckInOutPage }))), d = n(() => import("./pages/AssetsAssetCreatePage.js").then((e) => ({ default: e.AssetsAssetCreatePage }))), f = n(() => import("./pages/AssetsAssetDetailPage.js").then((e) => ({ default: e.AssetsAssetDetailPage }))), p = n(() => import("./pages/AssetsAssetListPage.js").then((e) => ({ default: e.AssetsAssetListPage }))), m = n(() => import("./pages/AssetsAssetTrackingPage.js").then((e) => ({ default: e.AssetsAssetTrackingPage }))), h = n(() => import("./pages/AnalyticsPage.js").then((e) => ({ default: e.AnalyticsPage }))), g = n(() => import("./pages/FinanceBudgetDetailPage.js").then((e) => ({ default: e.FinanceBudgetDetailPage }))), _ = n(() => import("./pages/FinanceFinanceHubPage.js").then((e) => ({ default: e.FinanceFinanceHubPage }))), v = n(() => import("./pages/FinanceInvoiceDetailPage.js").then((e) => ({ default: e.FinanceInvoiceDetailPage }))), y = n(() => import("./pages/ItilChangeDetailPage.js").then((e) => ({ default: e.ItilChangeDetailPage }))), b = n(() => import("./pages/ItilChangeManagementPage.js").then((e) => ({ default: e.ItilChangeManagementPage }))), x = n(() => import("./pages/ItilItilhubPage.js").then((e) => ({ default: e.ItilItilhubPage }))), S = n(() => import("./pages/ItilIncidentDetailPage.js").then((e) => ({ default: e.ItilIncidentDetailPage }))), C = n(() => import("./pages/ItilIncidentManagementPage.js").then((e) => ({ default: e.ItilIncidentManagementPage }))), w = n(() => import("./pages/ItilProblemDetailPage.js").then((e) => ({ default: e.ItilProblemDetailPage }))), T = n(() => import("./pages/ItilProblemManagementPage.js").then((e) => ({ default: e.ItilProblemManagementPage }))), E = n(() => import("./pages/MaintenanceMaintenanceCalendarPage.js").then((e) => ({ default: e.MaintenanceMaintenanceCalendarPage }))), D = n(() => import("./pages/MaintenanceMaintenanceSchedulerPage.js").then((e) => ({ default: e.MaintenanceMaintenanceSchedulerPage }))), O = n(() => import("./pages/OperationsMaintenanceDetailPage.js").then((e) => ({ default: e.OperationsMaintenanceDetailPage }))), k = n(() => import("./pages/OperationsOperationsHubPage.js").then((e) => ({ default: e.OperationsOperationsHubPage }))), A = n(() => import("./pages/OperationsWorkOrderDetailPage.js").then((e) => ({ default: e.OperationsWorkOrderDetailPage }))), j = n(() => import("./pages/PortfolioPortfolioOverviewPage.js").then((e) => ({ default: e.PortfolioPortfolioOverviewPage }))), M = n(() => import("./pages/SecurityComplianceDetailPage.js").then((e) => ({ default: e.SecurityComplianceDetailPage }))), N = n(() => import("./pages/SecurityPolicyDetailPage.js").then((e) => ({ default: e.SecurityPolicyDetailPage }))), P = n(() => import("./pages/SecuritySecurityEventDetailPage.js").then((e) => ({ default: e.SecuritySecurityEventDetailPage }))), F = n(() => import("./pages/SecuritySecurityHubPage.js").then((e) => ({ default: e.SecuritySecurityHubPage }))), I = n(() => import("./pages/TransactionsTransactionDetailPage.js").then((e) => ({ default: e.TransactionsTransactionDetailPage }))), L = n(() => import("./pages/TransactionsTransactionListPage.js").then((e) => ({ default: e.TransactionsTransactionListPage }))), R = n(() => import("./pages/AiPredictionsPage.js").then((e) => ({ default: e.AiPredictionsPage }))), z = n(() => import("./pages/CmdbBrowserPage.js").then((e) => ({ default: e.CmdbBrowserPage }))), B = n(() => import("./pages/DiscoveryJobsPage.js").then((e) => ({ default: e.DiscoveryJobsPage }))), V = n(() => import("./pages/DigitalTwinPage.js").then((e) => ({ default: e.DigitalTwinPage }))), H = n(() => import("./pages/
|
|
8
|
-
function
|
|
7
|
+
var l = n(() => import("./pages/AssetsAssetCategoriesPage.js").then((e) => ({ default: e.AssetsAssetCategoriesPage }))), u = n(() => import("./pages/AssetsAssetCheckInOutPage.js").then((e) => ({ default: e.AssetsAssetCheckInOutPage }))), d = n(() => import("./pages/AssetsAssetCreatePage.js").then((e) => ({ default: e.AssetsAssetCreatePage }))), f = n(() => import("./pages/AssetsAssetDetailPage.js").then((e) => ({ default: e.AssetsAssetDetailPage }))), p = n(() => import("./pages/AssetsAssetListPage.js").then((e) => ({ default: e.AssetsAssetListPage }))), m = n(() => import("./pages/AssetsAssetTrackingPage.js").then((e) => ({ default: e.AssetsAssetTrackingPage }))), h = n(() => import("./pages/AnalyticsPage.js").then((e) => ({ default: e.AnalyticsPage }))), g = n(() => import("./pages/FinanceBudgetDetailPage.js").then((e) => ({ default: e.FinanceBudgetDetailPage }))), _ = n(() => import("./pages/FinanceFinanceHubPage.js").then((e) => ({ default: e.FinanceFinanceHubPage }))), v = n(() => import("./pages/FinanceInvoiceDetailPage.js").then((e) => ({ default: e.FinanceInvoiceDetailPage }))), y = n(() => import("./pages/ItilChangeDetailPage.js").then((e) => ({ default: e.ItilChangeDetailPage }))), b = n(() => import("./pages/ItilChangeManagementPage.js").then((e) => ({ default: e.ItilChangeManagementPage }))), x = n(() => import("./pages/ItilItilhubPage.js").then((e) => ({ default: e.ItilItilhubPage }))), S = n(() => import("./pages/ItilIncidentDetailPage.js").then((e) => ({ default: e.ItilIncidentDetailPage }))), C = n(() => import("./pages/ItilIncidentManagementPage.js").then((e) => ({ default: e.ItilIncidentManagementPage }))), w = n(() => import("./pages/ItilProblemDetailPage.js").then((e) => ({ default: e.ItilProblemDetailPage }))), T = n(() => import("./pages/ItilProblemManagementPage.js").then((e) => ({ default: e.ItilProblemManagementPage }))), E = n(() => import("./pages/MaintenanceMaintenanceCalendarPage.js").then((e) => ({ default: e.MaintenanceMaintenanceCalendarPage }))), D = n(() => import("./pages/MaintenanceMaintenanceSchedulerPage.js").then((e) => ({ default: e.MaintenanceMaintenanceSchedulerPage }))), O = n(() => import("./pages/OperationsMaintenanceDetailPage.js").then((e) => ({ default: e.OperationsMaintenanceDetailPage }))), k = n(() => import("./pages/OperationsOperationsHubPage.js").then((e) => ({ default: e.OperationsOperationsHubPage }))), A = n(() => import("./pages/OperationsWorkOrderDetailPage.js").then((e) => ({ default: e.OperationsWorkOrderDetailPage }))), j = n(() => import("./pages/PortfolioPortfolioOverviewPage.js").then((e) => ({ default: e.PortfolioPortfolioOverviewPage }))), M = n(() => import("./pages/SecurityComplianceDetailPage.js").then((e) => ({ default: e.SecurityComplianceDetailPage }))), N = n(() => import("./pages/SecurityPolicyDetailPage.js").then((e) => ({ default: e.SecurityPolicyDetailPage }))), P = n(() => import("./pages/SecuritySecurityEventDetailPage.js").then((e) => ({ default: e.SecuritySecurityEventDetailPage }))), F = n(() => import("./pages/SecuritySecurityHubPage.js").then((e) => ({ default: e.SecuritySecurityHubPage }))), I = n(() => import("./pages/TransactionsTransactionDetailPage.js").then((e) => ({ default: e.TransactionsTransactionDetailPage }))), L = n(() => import("./pages/TransactionsTransactionListPage.js").then((e) => ({ default: e.TransactionsTransactionListPage }))), R = n(() => import("./pages/AiPredictionsPage.js").then((e) => ({ default: e.AiPredictionsPage }))), z = n(() => import("./pages/CmdbBrowserPage.js").then((e) => ({ default: e.CmdbBrowserPage }))), B = n(() => import("./pages/DiscoveryJobsPage.js").then((e) => ({ default: e.DiscoveryJobsPage }))), V = n(() => import("./pages/DigitalTwinPage.js").then((e) => ({ default: e.DigitalTwinPage }))), H = n(() => import("./pages/IotDevicesPage.js").then((e) => ({ default: e.IotDevicesPage }))), U = n(() => import("./pages/ProvenancePage.js").then((e) => ({ default: e.ProvenancePage }))), W = n(() => import("./pages/SamLicensesPage.js").then((e) => ({ default: e.SamLicensesPage }))), G = n(() => import("./pages/ReportsDashboardPage.js").then((e) => ({ default: e.ReportsDashboardPage })));
|
|
8
|
+
function K() {
|
|
9
9
|
return /* @__PURE__ */ s("div", {
|
|
10
10
|
className: "flex min-h-[320px] items-center justify-center",
|
|
11
11
|
children: /* @__PURE__ */ s(r, { className: "h-8 w-8 animate-spin text-primary" })
|
|
12
12
|
});
|
|
13
13
|
}
|
|
14
|
-
function
|
|
14
|
+
function q() {
|
|
15
15
|
return /* @__PURE__ */ s(t, {
|
|
16
|
-
fallback: /* @__PURE__ */ s(
|
|
16
|
+
fallback: /* @__PURE__ */ s(K, {}),
|
|
17
17
|
children: /* @__PURE__ */ c(o, { children: [
|
|
18
18
|
/* @__PURE__ */ s(a, {
|
|
19
19
|
index: !0,
|
|
@@ -120,7 +120,7 @@ function Y() {
|
|
|
120
120
|
}),
|
|
121
121
|
/* @__PURE__ */ s(a, {
|
|
122
122
|
path: "reports/reports-dashboard",
|
|
123
|
-
element: /* @__PURE__ */ s(
|
|
123
|
+
element: /* @__PURE__ */ s(G, {})
|
|
124
124
|
}),
|
|
125
125
|
/* @__PURE__ */ s(a, {
|
|
126
126
|
path: "security/compliance/:frameworkId",
|
|
@@ -148,7 +148,7 @@ function Y() {
|
|
|
148
148
|
}),
|
|
149
149
|
/* @__PURE__ */ s(a, {
|
|
150
150
|
path: "advanced/iot-devices",
|
|
151
|
-
element: /* @__PURE__ */ s(
|
|
151
|
+
element: /* @__PURE__ */ s(H, {})
|
|
152
152
|
}),
|
|
153
153
|
/* @__PURE__ */ s(a, {
|
|
154
154
|
path: "advanced/digital-twin",
|
|
@@ -156,7 +156,7 @@ function Y() {
|
|
|
156
156
|
}),
|
|
157
157
|
/* @__PURE__ */ s(a, {
|
|
158
158
|
path: "advanced/sam-licenses",
|
|
159
|
-
element: /* @__PURE__ */ s(
|
|
159
|
+
element: /* @__PURE__ */ s(W, {})
|
|
160
160
|
}),
|
|
161
161
|
/* @__PURE__ */ s(a, {
|
|
162
162
|
path: "advanced/cmdb-browser",
|
|
@@ -166,17 +166,9 @@ function Y() {
|
|
|
166
166
|
path: "advanced/discovery-jobs",
|
|
167
167
|
element: /* @__PURE__ */ s(B, {})
|
|
168
168
|
}),
|
|
169
|
-
/* @__PURE__ */ s(a, {
|
|
170
|
-
path: "advanced/knowledge-base",
|
|
171
|
-
element: /* @__PURE__ */ s(W, {})
|
|
172
|
-
}),
|
|
173
169
|
/* @__PURE__ */ s(a, {
|
|
174
170
|
path: "advanced/provenance",
|
|
175
|
-
element: /* @__PURE__ */ s(
|
|
176
|
-
}),
|
|
177
|
-
/* @__PURE__ */ s(a, {
|
|
178
|
-
path: "advanced/esg-dashboard",
|
|
179
|
-
element: /* @__PURE__ */ s(H, {})
|
|
171
|
+
element: /* @__PURE__ */ s(U, {})
|
|
180
172
|
}),
|
|
181
173
|
/* @__PURE__ */ s(a, {
|
|
182
174
|
path: "advanced/ai-predictions",
|
|
@@ -193,6 +185,6 @@ function Y() {
|
|
|
193
185
|
});
|
|
194
186
|
}
|
|
195
187
|
//#endregion
|
|
196
|
-
export {
|
|
188
|
+
export { q as AssetHandlerRoutes };
|
|
197
189
|
|
|
198
190
|
//# sourceMappingURL=AssetHandlerRoutes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssetHandlerRoutes.js","names":[],"sources":["../../src/assethandler/AssetHandlerRoutes.tsx"],"sourcesContent":["import { lazy, Suspense } from 'react';\nimport { Navigate, Route, Routes } from 'react-router-dom';\nimport { Loader2 } from 'lucide-react';\nimport { DashboardPage as IndexPage } from './pages/DashboardPage';\n\nconst AssetsAssetCategoriesPage = lazy(() =>\n import('./pages/AssetsAssetCategoriesPage').then((m) => ({\n default: m.AssetsAssetCategoriesPage,\n }))\n);\nconst AssetsAssetCheckInOutPage = lazy(() =>\n import('./pages/AssetsAssetCheckInOutPage').then((m) => ({\n default: m.AssetsAssetCheckInOutPage,\n }))\n);\nconst AssetsAssetCreatePage = lazy(() =>\n import('./pages/AssetsAssetCreatePage').then((m) => ({ default: m.AssetsAssetCreatePage }))\n);\nconst AssetsAssetDetailPage = lazy(() =>\n import('./pages/AssetsAssetDetailPage').then((m) => ({ default: m.AssetsAssetDetailPage }))\n);\nconst AssetsAssetListPage = lazy(() =>\n import('./pages/AssetsAssetListPage').then((m) => ({ default: m.AssetsAssetListPage }))\n);\nconst AssetsAssetTrackingPage = lazy(() =>\n import('./pages/AssetsAssetTrackingPage').then((m) => ({ default: m.AssetsAssetTrackingPage }))\n);\nconst AnalyticsPage = lazy(() =>\n import('./pages/AnalyticsPage').then((m) => ({ default: m.AnalyticsPage }))\n);\nconst FinanceBudgetDetailPage = lazy(() =>\n import('./pages/FinanceBudgetDetailPage').then((m) => ({ default: m.FinanceBudgetDetailPage }))\n);\nconst FinanceFinanceHubPage = lazy(() =>\n import('./pages/FinanceFinanceHubPage').then((m) => ({ default: m.FinanceFinanceHubPage }))\n);\nconst FinanceInvoiceDetailPage = lazy(() =>\n import('./pages/FinanceInvoiceDetailPage').then((m) => ({ default: m.FinanceInvoiceDetailPage }))\n);\nconst ItilChangeDetailPage = lazy(() =>\n import('./pages/ItilChangeDetailPage').then((m) => ({ default: m.ItilChangeDetailPage }))\n);\nconst ItilChangeManagementPage = lazy(() =>\n import('./pages/ItilChangeManagementPage').then((m) => ({ default: m.ItilChangeManagementPage }))\n);\nconst ItilItilhubPage = lazy(() =>\n import('./pages/ItilItilhubPage').then((m) => ({ default: m.ItilItilhubPage }))\n);\nconst ItilIncidentDetailPage = lazy(() =>\n import('./pages/ItilIncidentDetailPage').then((m) => ({ default: m.ItilIncidentDetailPage }))\n);\nconst ItilIncidentManagementPage = lazy(() =>\n import('./pages/ItilIncidentManagementPage').then((m) => ({\n default: m.ItilIncidentManagementPage,\n }))\n);\nconst ItilProblemDetailPage = lazy(() =>\n import('./pages/ItilProblemDetailPage').then((m) => ({ default: m.ItilProblemDetailPage }))\n);\nconst ItilProblemManagementPage = lazy(() =>\n import('./pages/ItilProblemManagementPage').then((m) => ({\n default: m.ItilProblemManagementPage,\n }))\n);\nconst MaintenanceMaintenanceCalendarPage = lazy(() =>\n import('./pages/MaintenanceMaintenanceCalendarPage').then((m) => ({\n default: m.MaintenanceMaintenanceCalendarPage,\n }))\n);\nconst MaintenanceMaintenanceSchedulerPage = lazy(() =>\n import('./pages/MaintenanceMaintenanceSchedulerPage').then((m) => ({\n default: m.MaintenanceMaintenanceSchedulerPage,\n }))\n);\nconst OperationsMaintenanceDetailPage = lazy(() =>\n import('./pages/OperationsMaintenanceDetailPage').then((m) => ({\n default: m.OperationsMaintenanceDetailPage,\n }))\n);\nconst OperationsOperationsHubPage = lazy(() =>\n import('./pages/OperationsOperationsHubPage').then((m) => ({\n default: m.OperationsOperationsHubPage,\n }))\n);\nconst OperationsWorkOrderDetailPage = lazy(() =>\n import('./pages/OperationsWorkOrderDetailPage').then((m) => ({\n default: m.OperationsWorkOrderDetailPage,\n }))\n);\nconst PortfolioPortfolioOverviewPage = lazy(() =>\n import('./pages/PortfolioPortfolioOverviewPage').then((m) => ({\n default: m.PortfolioPortfolioOverviewPage,\n }))\n);\nconst SecurityComplianceDetailPage = lazy(() =>\n import('./pages/SecurityComplianceDetailPage').then((m) => ({\n default: m.SecurityComplianceDetailPage,\n }))\n);\nconst SecurityPolicyDetailPage = lazy(() =>\n import('./pages/SecurityPolicyDetailPage').then((m) => ({ default: m.SecurityPolicyDetailPage }))\n);\nconst SecuritySecurityEventDetailPage = lazy(() =>\n import('./pages/SecuritySecurityEventDetailPage').then((m) => ({\n default: m.SecuritySecurityEventDetailPage,\n }))\n);\nconst SecuritySecurityHubPage = lazy(() =>\n import('./pages/SecuritySecurityHubPage').then((m) => ({ default: m.SecuritySecurityHubPage }))\n);\nconst TransactionsTransactionDetailPage = lazy(() =>\n import('./pages/TransactionsTransactionDetailPage').then((m) => ({\n default: m.TransactionsTransactionDetailPage,\n }))\n);\nconst TransactionsTransactionListPage = lazy(() =>\n import('./pages/TransactionsTransactionListPage').then((m) => ({\n default: m.TransactionsTransactionListPage,\n }))\n);\nconst AiPredictionsPage = lazy(() =>\n import('./pages/AiPredictionsPage').then((m) => ({ default: m.AiPredictionsPage }))\n);\nconst CmdbBrowserPage = lazy(() =>\n import('./pages/CmdbBrowserPage').then((m) => ({ default: m.CmdbBrowserPage }))\n);\nconst DiscoveryJobsPage = lazy(() =>\n import('./pages/DiscoveryJobsPage').then((m) => ({ default: m.DiscoveryJobsPage }))\n);\nconst DigitalTwinPage = lazy(() =>\n import('./pages/DigitalTwinPage').then((m) => ({ default: m.DigitalTwinPage }))\n);\nconst EsgDashboardPage = lazy(() =>\n import('./pages/EsgDashboardPage').then((m) => ({ default: m.EsgDashboardPage }))\n);\nconst IotDevicesPage = lazy(() =>\n import('./pages/IotDevicesPage').then((m) => ({ default: m.IotDevicesPage }))\n);\nconst KnowledgeBasePage = lazy(() =>\n import('./pages/KnowledgeBasePage').then((m) => ({ default: m.KnowledgeBasePage }))\n);\nconst ProvenancePage = lazy(() =>\n import('./pages/ProvenancePage').then((m) => ({ default: m.ProvenancePage }))\n);\nconst SamLicensesPage = lazy(() =>\n import('./pages/SamLicensesPage').then((m) => ({ default: m.SamLicensesPage }))\n);\nconst ReportsDashboardPage = lazy(() =>\n import('./pages/ReportsDashboardPage').then((m) => ({ default: m.ReportsDashboardPage }))\n);\n\nfunction PageLoader() {\n return (\n <div className=\"flex min-h-[320px] items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n}\n\nexport function AssetHandlerRoutes() {\n return (\n <Suspense fallback={<PageLoader />}>\n <Routes>\n <Route index element={<IndexPage />} />\n <Route path=\"assets/asset-categories\" element={<AssetsAssetCategoriesPage />} />\n <Route path=\"assets/asset-check-in-out\" element={<AssetsAssetCheckInOutPage />} />\n <Route path=\"assets/asset-create\" element={<AssetsAssetCreatePage />} />\n <Route path=\"assets/:assetId\" element={<AssetsAssetDetailPage />} />\n <Route path=\"assets/asset-list\" element={<AssetsAssetListPage />} />\n <Route path=\"assets/asset-tracking\" element={<AssetsAssetTrackingPage />} />\n <Route path=\"analytics\" element={<AnalyticsPage />} />\n <Route path=\"finance/budgets/:budgetId\" element={<FinanceBudgetDetailPage />} />\n <Route path=\"finance/finance-hub\" element={<FinanceFinanceHubPage />} />\n <Route path=\"finance/invoices/:invoiceId\" element={<FinanceInvoiceDetailPage />} />\n <Route path=\"itil/changes/:changeId\" element={<ItilChangeDetailPage />} />\n <Route path=\"itil/change-management\" element={<ItilChangeManagementPage />} />\n <Route path=\"itil/itilhub\" element={<ItilItilhubPage />} />\n <Route path=\"itil/incidents/:incidentId\" element={<ItilIncidentDetailPage />} />\n <Route path=\"itil/incident-management\" element={<ItilIncidentManagementPage />} />\n <Route path=\"itil/problems/:problemId\" element={<ItilProblemDetailPage />} />\n <Route path=\"itil/problem-management\" element={<ItilProblemManagementPage />} />\n <Route\n path=\"maintenance/maintenance-calendar\"\n element={<MaintenanceMaintenanceCalendarPage />}\n />\n <Route\n path=\"maintenance/maintenance-scheduler\"\n element={<MaintenanceMaintenanceSchedulerPage />}\n />\n <Route\n path=\"operations/maintenance/:maintenanceId\"\n element={<OperationsMaintenanceDetailPage />}\n />\n <Route path=\"operations/operations-hub\" element={<OperationsOperationsHubPage />} />\n <Route\n path=\"operations/work-orders/:workOrderId\"\n element={<OperationsWorkOrderDetailPage />}\n />\n <Route path=\"portfolio/portfolio-overview\" element={<PortfolioPortfolioOverviewPage />} />\n <Route path=\"reports\" element={<Navigate to=\"reports-dashboard\" replace />} />\n <Route path=\"reports/reports-dashboard\" element={<ReportsDashboardPage />} />\n <Route path=\"security/compliance/:frameworkId\" element={<SecurityComplianceDetailPage />} />\n <Route path=\"security/policies/:policyId\" element={<SecurityPolicyDetailPage />} />\n <Route path=\"security/events/:eventId\" element={<SecuritySecurityEventDetailPage />} />\n <Route path=\"security/security-hub\" element={<SecuritySecurityHubPage />} />\n <Route path=\"transactions/:transactionId\" element={<TransactionsTransactionDetailPage />} />\n <Route path=\"transactions/transaction-list\" element={<TransactionsTransactionListPage />} />\n <Route path=\"advanced/iot-devices\" element={<IotDevicesPage />} />\n <Route path=\"advanced/digital-twin\" element={<DigitalTwinPage />} />\n <Route path=\"advanced/sam-licenses\" element={<SamLicensesPage />} />\n <Route path=\"advanced/cmdb-browser\" element={<CmdbBrowserPage />} />\n <Route path=\"advanced/discovery-jobs\" element={<DiscoveryJobsPage />} />\n <Route path=\"advanced/knowledge-base\" element={<KnowledgeBasePage />} />\n <Route path=\"advanced/provenance\" element={<ProvenancePage />} />\n <Route path=\"advanced/esg-dashboard\" element={<EsgDashboardPage />} />\n <Route path=\"advanced/ai-predictions\" element={<AiPredictionsPage />} />\n <Route path=\"*\" element={<Navigate to=\"\" replace />} />\n </Routes>\n </Suspense>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AssetHandlerRoutes.js","names":[],"sources":["../../src/assethandler/AssetHandlerRoutes.tsx"],"sourcesContent":["import { lazy, Suspense } from 'react';\nimport { Navigate, Route, Routes } from 'react-router-dom';\nimport { Loader2 } from 'lucide-react';\nimport { DashboardPage as IndexPage } from './pages/DashboardPage';\n\nconst AssetsAssetCategoriesPage = lazy(() =>\n import('./pages/AssetsAssetCategoriesPage').then((m) => ({\n default: m.AssetsAssetCategoriesPage,\n }))\n);\nconst AssetsAssetCheckInOutPage = lazy(() =>\n import('./pages/AssetsAssetCheckInOutPage').then((m) => ({\n default: m.AssetsAssetCheckInOutPage,\n }))\n);\nconst AssetsAssetCreatePage = lazy(() =>\n import('./pages/AssetsAssetCreatePage').then((m) => ({ default: m.AssetsAssetCreatePage }))\n);\nconst AssetsAssetDetailPage = lazy(() =>\n import('./pages/AssetsAssetDetailPage').then((m) => ({ default: m.AssetsAssetDetailPage }))\n);\nconst AssetsAssetListPage = lazy(() =>\n import('./pages/AssetsAssetListPage').then((m) => ({ default: m.AssetsAssetListPage }))\n);\nconst AssetsAssetTrackingPage = lazy(() =>\n import('./pages/AssetsAssetTrackingPage').then((m) => ({ default: m.AssetsAssetTrackingPage }))\n);\nconst AnalyticsPage = lazy(() =>\n import('./pages/AnalyticsPage').then((m) => ({ default: m.AnalyticsPage }))\n);\nconst FinanceBudgetDetailPage = lazy(() =>\n import('./pages/FinanceBudgetDetailPage').then((m) => ({ default: m.FinanceBudgetDetailPage }))\n);\nconst FinanceFinanceHubPage = lazy(() =>\n import('./pages/FinanceFinanceHubPage').then((m) => ({ default: m.FinanceFinanceHubPage }))\n);\nconst FinanceInvoiceDetailPage = lazy(() =>\n import('./pages/FinanceInvoiceDetailPage').then((m) => ({ default: m.FinanceInvoiceDetailPage }))\n);\nconst ItilChangeDetailPage = lazy(() =>\n import('./pages/ItilChangeDetailPage').then((m) => ({ default: m.ItilChangeDetailPage }))\n);\nconst ItilChangeManagementPage = lazy(() =>\n import('./pages/ItilChangeManagementPage').then((m) => ({ default: m.ItilChangeManagementPage }))\n);\nconst ItilItilhubPage = lazy(() =>\n import('./pages/ItilItilhubPage').then((m) => ({ default: m.ItilItilhubPage }))\n);\nconst ItilIncidentDetailPage = lazy(() =>\n import('./pages/ItilIncidentDetailPage').then((m) => ({ default: m.ItilIncidentDetailPage }))\n);\nconst ItilIncidentManagementPage = lazy(() =>\n import('./pages/ItilIncidentManagementPage').then((m) => ({\n default: m.ItilIncidentManagementPage,\n }))\n);\nconst ItilProblemDetailPage = lazy(() =>\n import('./pages/ItilProblemDetailPage').then((m) => ({ default: m.ItilProblemDetailPage }))\n);\nconst ItilProblemManagementPage = lazy(() =>\n import('./pages/ItilProblemManagementPage').then((m) => ({\n default: m.ItilProblemManagementPage,\n }))\n);\nconst MaintenanceMaintenanceCalendarPage = lazy(() =>\n import('./pages/MaintenanceMaintenanceCalendarPage').then((m) => ({\n default: m.MaintenanceMaintenanceCalendarPage,\n }))\n);\nconst MaintenanceMaintenanceSchedulerPage = lazy(() =>\n import('./pages/MaintenanceMaintenanceSchedulerPage').then((m) => ({\n default: m.MaintenanceMaintenanceSchedulerPage,\n }))\n);\nconst OperationsMaintenanceDetailPage = lazy(() =>\n import('./pages/OperationsMaintenanceDetailPage').then((m) => ({\n default: m.OperationsMaintenanceDetailPage,\n }))\n);\nconst OperationsOperationsHubPage = lazy(() =>\n import('./pages/OperationsOperationsHubPage').then((m) => ({\n default: m.OperationsOperationsHubPage,\n }))\n);\nconst OperationsWorkOrderDetailPage = lazy(() =>\n import('./pages/OperationsWorkOrderDetailPage').then((m) => ({\n default: m.OperationsWorkOrderDetailPage,\n }))\n);\nconst PortfolioPortfolioOverviewPage = lazy(() =>\n import('./pages/PortfolioPortfolioOverviewPage').then((m) => ({\n default: m.PortfolioPortfolioOverviewPage,\n }))\n);\nconst SecurityComplianceDetailPage = lazy(() =>\n import('./pages/SecurityComplianceDetailPage').then((m) => ({\n default: m.SecurityComplianceDetailPage,\n }))\n);\nconst SecurityPolicyDetailPage = lazy(() =>\n import('./pages/SecurityPolicyDetailPage').then((m) => ({ default: m.SecurityPolicyDetailPage }))\n);\nconst SecuritySecurityEventDetailPage = lazy(() =>\n import('./pages/SecuritySecurityEventDetailPage').then((m) => ({\n default: m.SecuritySecurityEventDetailPage,\n }))\n);\nconst SecuritySecurityHubPage = lazy(() =>\n import('./pages/SecuritySecurityHubPage').then((m) => ({ default: m.SecuritySecurityHubPage }))\n);\nconst TransactionsTransactionDetailPage = lazy(() =>\n import('./pages/TransactionsTransactionDetailPage').then((m) => ({\n default: m.TransactionsTransactionDetailPage,\n }))\n);\nconst TransactionsTransactionListPage = lazy(() =>\n import('./pages/TransactionsTransactionListPage').then((m) => ({\n default: m.TransactionsTransactionListPage,\n }))\n);\nconst AiPredictionsPage = lazy(() =>\n import('./pages/AiPredictionsPage').then((m) => ({ default: m.AiPredictionsPage }))\n);\nconst CmdbBrowserPage = lazy(() =>\n import('./pages/CmdbBrowserPage').then((m) => ({ default: m.CmdbBrowserPage }))\n);\nconst DiscoveryJobsPage = lazy(() =>\n import('./pages/DiscoveryJobsPage').then((m) => ({ default: m.DiscoveryJobsPage }))\n);\nconst DigitalTwinPage = lazy(() =>\n import('./pages/DigitalTwinPage').then((m) => ({ default: m.DigitalTwinPage }))\n);\n// EsgDashboardPage and KnowledgeBasePage are intentionally NOT routed (BOFF-3948):\n// both query GraphQL fields (esgMetrics/upsertEsgMetric, knowledgeArticles/\n// createKnowledgeArticle) that do not exist anywhere in the federation graph —\n// neither in this subgraph nor in the suggested owner services\n// (wspace-ecoimpacthub-svc, wspace-botlit-svc) — so rendering them throws a\n// GraphQL validation error for any user who reaches the route. The page\n// components remain in ./pages/ for when the real federated data lands (or are\n// dropped entirely, per product decision — see BOFF-3948).\nconst IotDevicesPage = lazy(() =>\n import('./pages/IotDevicesPage').then((m) => ({ default: m.IotDevicesPage }))\n);\nconst ProvenancePage = lazy(() =>\n import('./pages/ProvenancePage').then((m) => ({ default: m.ProvenancePage }))\n);\nconst SamLicensesPage = lazy(() =>\n import('./pages/SamLicensesPage').then((m) => ({ default: m.SamLicensesPage }))\n);\nconst ReportsDashboardPage = lazy(() =>\n import('./pages/ReportsDashboardPage').then((m) => ({ default: m.ReportsDashboardPage }))\n);\n\nfunction PageLoader() {\n return (\n <div className=\"flex min-h-[320px] items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n}\n\nexport function AssetHandlerRoutes() {\n return (\n <Suspense fallback={<PageLoader />}>\n <Routes>\n <Route index element={<IndexPage />} />\n <Route path=\"assets/asset-categories\" element={<AssetsAssetCategoriesPage />} />\n <Route path=\"assets/asset-check-in-out\" element={<AssetsAssetCheckInOutPage />} />\n <Route path=\"assets/asset-create\" element={<AssetsAssetCreatePage />} />\n <Route path=\"assets/:assetId\" element={<AssetsAssetDetailPage />} />\n <Route path=\"assets/asset-list\" element={<AssetsAssetListPage />} />\n <Route path=\"assets/asset-tracking\" element={<AssetsAssetTrackingPage />} />\n <Route path=\"analytics\" element={<AnalyticsPage />} />\n <Route path=\"finance/budgets/:budgetId\" element={<FinanceBudgetDetailPage />} />\n <Route path=\"finance/finance-hub\" element={<FinanceFinanceHubPage />} />\n <Route path=\"finance/invoices/:invoiceId\" element={<FinanceInvoiceDetailPage />} />\n <Route path=\"itil/changes/:changeId\" element={<ItilChangeDetailPage />} />\n <Route path=\"itil/change-management\" element={<ItilChangeManagementPage />} />\n <Route path=\"itil/itilhub\" element={<ItilItilhubPage />} />\n <Route path=\"itil/incidents/:incidentId\" element={<ItilIncidentDetailPage />} />\n <Route path=\"itil/incident-management\" element={<ItilIncidentManagementPage />} />\n <Route path=\"itil/problems/:problemId\" element={<ItilProblemDetailPage />} />\n <Route path=\"itil/problem-management\" element={<ItilProblemManagementPage />} />\n <Route\n path=\"maintenance/maintenance-calendar\"\n element={<MaintenanceMaintenanceCalendarPage />}\n />\n <Route\n path=\"maintenance/maintenance-scheduler\"\n element={<MaintenanceMaintenanceSchedulerPage />}\n />\n <Route\n path=\"operations/maintenance/:maintenanceId\"\n element={<OperationsMaintenanceDetailPage />}\n />\n <Route path=\"operations/operations-hub\" element={<OperationsOperationsHubPage />} />\n <Route\n path=\"operations/work-orders/:workOrderId\"\n element={<OperationsWorkOrderDetailPage />}\n />\n <Route path=\"portfolio/portfolio-overview\" element={<PortfolioPortfolioOverviewPage />} />\n <Route path=\"reports\" element={<Navigate to=\"reports-dashboard\" replace />} />\n <Route path=\"reports/reports-dashboard\" element={<ReportsDashboardPage />} />\n <Route path=\"security/compliance/:frameworkId\" element={<SecurityComplianceDetailPage />} />\n <Route path=\"security/policies/:policyId\" element={<SecurityPolicyDetailPage />} />\n <Route path=\"security/events/:eventId\" element={<SecuritySecurityEventDetailPage />} />\n <Route path=\"security/security-hub\" element={<SecuritySecurityHubPage />} />\n <Route path=\"transactions/:transactionId\" element={<TransactionsTransactionDetailPage />} />\n <Route path=\"transactions/transaction-list\" element={<TransactionsTransactionListPage />} />\n <Route path=\"advanced/iot-devices\" element={<IotDevicesPage />} />\n <Route path=\"advanced/digital-twin\" element={<DigitalTwinPage />} />\n <Route path=\"advanced/sam-licenses\" element={<SamLicensesPage />} />\n <Route path=\"advanced/cmdb-browser\" element={<CmdbBrowserPage />} />\n <Route path=\"advanced/discovery-jobs\" element={<DiscoveryJobsPage />} />\n {/* advanced/knowledge-base and advanced/esg-dashboard intentionally\n unrouted — see the comment above the (removed) lazy imports. */}\n <Route path=\"advanced/provenance\" element={<ProvenancePage />} />\n <Route path=\"advanced/ai-predictions\" element={<AiPredictionsPage />} />\n <Route path=\"*\" element={<Navigate to=\"\" replace />} />\n </Routes>\n </Suspense>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewWorkOrderDialog.d.ts","sourceRoot":"","sources":["../../../src/assethandler/ops/NewWorkOrderDialog.tsx"],"names":[],"mappings":"AA0DA,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EACJ,YAAY,GACb,EAAE;IACD,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACvC,+
|
|
1
|
+
{"version":3,"file":"NewWorkOrderDialog.d.ts","sourceRoot":"","sources":["../../../src/assethandler/ops/NewWorkOrderDialog.tsx"],"names":[],"mappings":"AA0DA,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EACJ,YAAY,GACb,EAAE;IACD,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACvC,+BAkNA"}
|
|
@@ -1,164 +1,200 @@
|
|
|
1
1
|
import { useAssetHandlerStore as e } from "../store/assethandlerStore.js";
|
|
2
2
|
import { notify as t } from "../utils/toast.js";
|
|
3
3
|
import { useState as n } from "react";
|
|
4
|
-
import { Loader2 as r } from "lucide-react";
|
|
5
|
-
import { gql as
|
|
6
|
-
import { useMutation as
|
|
7
|
-
import { jsx as
|
|
8
|
-
import { Button as
|
|
4
|
+
import { Loader2 as r, Plus as i, X as a } from "lucide-react";
|
|
5
|
+
import { gql as o } from "@apollo/client";
|
|
6
|
+
import { useMutation as s } from "@apollo/client/react";
|
|
7
|
+
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
8
|
+
import { Button as u, Input as d, Label as f, ResponsiveDialog as p, ResponsiveDialogContent as m, ResponsiveDialogDescription as h, ResponsiveDialogFooter as g, ResponsiveDialogHeader as _, ResponsiveDialogTitle as v, Select as y, SelectContent as b, SelectItem as x, SelectTrigger as S, SelectValue as C, Textarea as w } from "@burdenoff/fe-libs/ui";
|
|
9
9
|
//#region src/assethandler/ops/NewWorkOrderDialog.tsx
|
|
10
|
-
var
|
|
10
|
+
var T = o`
|
|
11
11
|
mutation AssetHandlerCreateWorkOrder($input: CreateWorkOrderInput!) {
|
|
12
12
|
createWorkOrder(input: $input) {
|
|
13
13
|
id
|
|
14
14
|
title
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
|
-
`,
|
|
17
|
+
`, E = [
|
|
18
18
|
"CORRECTIVE",
|
|
19
19
|
"PREVENTIVE",
|
|
20
20
|
"PREDICTIVE",
|
|
21
21
|
"EMERGENCY"
|
|
22
|
-
],
|
|
22
|
+
], D = [
|
|
23
23
|
"DRAFT",
|
|
24
24
|
"SCHEDULED",
|
|
25
25
|
"APPROVED",
|
|
26
26
|
"IN_PROGRESS",
|
|
27
27
|
"COMPLETED",
|
|
28
28
|
"CANCELLED"
|
|
29
|
-
],
|
|
29
|
+
], O = [
|
|
30
30
|
"CRITICAL",
|
|
31
31
|
"HIGH",
|
|
32
32
|
"MEDIUM",
|
|
33
33
|
"LOW"
|
|
34
|
-
],
|
|
35
|
-
function
|
|
36
|
-
let { assets:
|
|
37
|
-
|
|
38
|
-
}, [
|
|
34
|
+
], k = (e) => e.toLowerCase().replace(/_/g, " ").replace(/^\w/, (e) => e.toUpperCase());
|
|
35
|
+
function A({ open: o, onOpenChange: A }) {
|
|
36
|
+
let { assets: j } = e(), [M, N] = n(""), [P, F] = n(""), [I, L] = n(""), [R, z] = n(""), [B, V] = n("CORRECTIVE"), [H, U] = n("MEDIUM"), [W, G] = n("DRAFT"), [K, q] = n([""]), J = () => {
|
|
37
|
+
N(""), F(""), L(""), z(""), V("CORRECTIVE"), U("MEDIUM"), G("DRAFT"), q([""]);
|
|
38
|
+
}, Y = (e, t) => q((n) => n.map((n, r) => r === e ? t : n)), X = () => q((e) => [...e, ""]), Z = (e) => q((t) => t.length === 1 ? t : t.filter((t, n) => n !== e)), [Q, { loading: $ }] = s(T, {
|
|
39
39
|
refetchQueries: ["AssetHandlerBootstrap"],
|
|
40
40
|
onCompleted: (e) => {
|
|
41
|
-
t.success("Work order created", `${e.createWorkOrder.title} was raised.`),
|
|
41
|
+
t.success("Work order created", `${e.createWorkOrder.title} was raised.`), J(), A(!1);
|
|
42
42
|
},
|
|
43
43
|
onError: (e) => t.error("Could not create work order", e.message)
|
|
44
44
|
});
|
|
45
|
-
return /* @__PURE__ */
|
|
46
|
-
open:
|
|
47
|
-
onOpenChange:
|
|
48
|
-
children: /* @__PURE__ */
|
|
45
|
+
return /* @__PURE__ */ c(p, {
|
|
46
|
+
open: o,
|
|
47
|
+
onOpenChange: A,
|
|
48
|
+
children: /* @__PURE__ */ l(m, {
|
|
49
49
|
className: "max-h-[85vh] overflow-y-auto sm:max-w-xl",
|
|
50
50
|
children: [
|
|
51
|
-
/* @__PURE__ */
|
|
52
|
-
/* @__PURE__ */
|
|
51
|
+
/* @__PURE__ */ l(_, { children: [/* @__PURE__ */ c(v, { children: "New Work Order" }), /* @__PURE__ */ c(h, { children: "Raise a work order when an asset needs repair, inspection or attention." })] }),
|
|
52
|
+
/* @__PURE__ */ l("div", {
|
|
53
53
|
className: "space-y-4",
|
|
54
54
|
children: [
|
|
55
|
-
/* @__PURE__ */
|
|
55
|
+
/* @__PURE__ */ l("div", {
|
|
56
56
|
className: "space-y-2",
|
|
57
|
-
children: [/* @__PURE__ */
|
|
57
|
+
children: [/* @__PURE__ */ c(f, { children: "Title *" }), /* @__PURE__ */ c(d, {
|
|
58
58
|
placeholder: "e.g., Replace worn drive belt",
|
|
59
|
-
value:
|
|
60
|
-
onChange: (e) =>
|
|
59
|
+
value: M,
|
|
60
|
+
onChange: (e) => N(e.target.value)
|
|
61
61
|
})]
|
|
62
62
|
}),
|
|
63
|
-
/* @__PURE__ */
|
|
63
|
+
/* @__PURE__ */ l("div", {
|
|
64
64
|
className: "space-y-2",
|
|
65
|
-
children: [/* @__PURE__ */
|
|
65
|
+
children: [/* @__PURE__ */ c(f, { children: "Description" }), /* @__PURE__ */ c(w, {
|
|
66
66
|
placeholder: "Describe the work required",
|
|
67
|
-
value:
|
|
68
|
-
onChange: (e) =>
|
|
67
|
+
value: P,
|
|
68
|
+
onChange: (e) => F(e.target.value),
|
|
69
69
|
rows: 2
|
|
70
70
|
})]
|
|
71
71
|
}),
|
|
72
|
-
/* @__PURE__ */
|
|
72
|
+
/* @__PURE__ */ l("div", {
|
|
73
73
|
className: "grid gap-4 md:grid-cols-2",
|
|
74
|
-
children: [/* @__PURE__ */
|
|
74
|
+
children: [/* @__PURE__ */ l("div", {
|
|
75
75
|
className: "space-y-2",
|
|
76
|
-
children: [/* @__PURE__ */
|
|
77
|
-
value:
|
|
78
|
-
onValueChange:
|
|
79
|
-
children: [/* @__PURE__ */
|
|
76
|
+
children: [/* @__PURE__ */ c(f, { children: "Asset" }), /* @__PURE__ */ l(y, {
|
|
77
|
+
value: I,
|
|
78
|
+
onValueChange: L,
|
|
79
|
+
children: [/* @__PURE__ */ c(S, { children: /* @__PURE__ */ c(C, { placeholder: "Unassigned" }) }), /* @__PURE__ */ c(b, { children: j.map((e) => /* @__PURE__ */ l(x, {
|
|
80
80
|
value: e.id,
|
|
81
81
|
children: [e.name, e.assetTag ? ` · ${e.assetTag}` : ""]
|
|
82
82
|
}, e.id)) })]
|
|
83
83
|
})]
|
|
84
|
-
}), /* @__PURE__ */
|
|
84
|
+
}), /* @__PURE__ */ l("div", {
|
|
85
85
|
className: "space-y-2",
|
|
86
|
-
children: [/* @__PURE__ */
|
|
86
|
+
children: [/* @__PURE__ */ c(f, { children: "Assigned To" }), /* @__PURE__ */ c(d, {
|
|
87
87
|
placeholder: "e.g., Facilities team",
|
|
88
|
-
value:
|
|
89
|
-
onChange: (e) =>
|
|
88
|
+
value: R,
|
|
89
|
+
onChange: (e) => z(e.target.value)
|
|
90
90
|
})]
|
|
91
91
|
})]
|
|
92
92
|
}),
|
|
93
|
-
/* @__PURE__ */
|
|
93
|
+
/* @__PURE__ */ l("div", {
|
|
94
94
|
className: "grid gap-4 md:grid-cols-3",
|
|
95
95
|
children: [
|
|
96
|
-
/* @__PURE__ */
|
|
96
|
+
/* @__PURE__ */ l("div", {
|
|
97
97
|
className: "space-y-2",
|
|
98
|
-
children: [/* @__PURE__ */
|
|
99
|
-
value:
|
|
100
|
-
onValueChange: (e) =>
|
|
101
|
-
children: [/* @__PURE__ */
|
|
98
|
+
children: [/* @__PURE__ */ c(f, { children: "Type" }), /* @__PURE__ */ l(y, {
|
|
99
|
+
value: B,
|
|
100
|
+
onValueChange: (e) => V(e),
|
|
101
|
+
children: [/* @__PURE__ */ c(S, { children: /* @__PURE__ */ c(C, {}) }), /* @__PURE__ */ c(b, { children: E.map((e) => /* @__PURE__ */ c(x, {
|
|
102
102
|
value: e,
|
|
103
|
-
children:
|
|
103
|
+
children: k(e)
|
|
104
104
|
}, e)) })]
|
|
105
105
|
})]
|
|
106
106
|
}),
|
|
107
|
-
/* @__PURE__ */
|
|
107
|
+
/* @__PURE__ */ l("div", {
|
|
108
108
|
className: "space-y-2",
|
|
109
|
-
children: [/* @__PURE__ */
|
|
110
|
-
value:
|
|
111
|
-
onValueChange: (e) =>
|
|
112
|
-
children: [/* @__PURE__ */
|
|
109
|
+
children: [/* @__PURE__ */ c(f, { children: "Priority" }), /* @__PURE__ */ l(y, {
|
|
110
|
+
value: H,
|
|
111
|
+
onValueChange: (e) => U(e),
|
|
112
|
+
children: [/* @__PURE__ */ c(S, { children: /* @__PURE__ */ c(C, {}) }), /* @__PURE__ */ c(b, { children: O.map((e) => /* @__PURE__ */ c(x, {
|
|
113
113
|
value: e,
|
|
114
|
-
children:
|
|
114
|
+
children: k(e)
|
|
115
115
|
}, e)) })]
|
|
116
116
|
})]
|
|
117
117
|
}),
|
|
118
|
-
/* @__PURE__ */
|
|
118
|
+
/* @__PURE__ */ l("div", {
|
|
119
119
|
className: "space-y-2",
|
|
120
|
-
children: [/* @__PURE__ */
|
|
121
|
-
value:
|
|
122
|
-
onValueChange: (e) =>
|
|
123
|
-
children: [/* @__PURE__ */
|
|
120
|
+
children: [/* @__PURE__ */ c(f, { children: "Status" }), /* @__PURE__ */ l(y, {
|
|
121
|
+
value: W,
|
|
122
|
+
onValueChange: (e) => G(e),
|
|
123
|
+
children: [/* @__PURE__ */ c(S, { children: /* @__PURE__ */ c(C, {}) }), /* @__PURE__ */ c(b, { children: D.map((e) => /* @__PURE__ */ c(x, {
|
|
124
124
|
value: e,
|
|
125
|
-
children:
|
|
125
|
+
children: k(e)
|
|
126
126
|
}, e)) })]
|
|
127
127
|
})]
|
|
128
128
|
})
|
|
129
129
|
]
|
|
130
|
+
}),
|
|
131
|
+
/* @__PURE__ */ l("div", {
|
|
132
|
+
className: "space-y-2",
|
|
133
|
+
children: [/* @__PURE__ */ l("div", {
|
|
134
|
+
className: "flex items-center justify-between",
|
|
135
|
+
children: [/* @__PURE__ */ c(f, { children: "Checklist" }), /* @__PURE__ */ l(u, {
|
|
136
|
+
type: "button",
|
|
137
|
+
size: "sm",
|
|
138
|
+
variant: "ghost",
|
|
139
|
+
onClick: X,
|
|
140
|
+
children: [/* @__PURE__ */ c(i, { className: "mr-1 h-3.5 w-3.5" }), "Add task"]
|
|
141
|
+
})]
|
|
142
|
+
}), /* @__PURE__ */ c("div", {
|
|
143
|
+
className: "space-y-2",
|
|
144
|
+
children: K.map((e, t) => /* @__PURE__ */ l("div", {
|
|
145
|
+
className: "flex items-center gap-2",
|
|
146
|
+
children: [/* @__PURE__ */ c(d, {
|
|
147
|
+
placeholder: `Task ${t + 1}`,
|
|
148
|
+
value: e,
|
|
149
|
+
onChange: (e) => Y(t, e.target.value)
|
|
150
|
+
}), /* @__PURE__ */ c(u, {
|
|
151
|
+
type: "button",
|
|
152
|
+
size: "icon",
|
|
153
|
+
variant: "ghost",
|
|
154
|
+
onClick: () => Z(t),
|
|
155
|
+
disabled: K.length === 1,
|
|
156
|
+
"aria-label": "Remove task",
|
|
157
|
+
children: /* @__PURE__ */ c(a, { className: "h-4 w-4" })
|
|
158
|
+
})]
|
|
159
|
+
}, t))
|
|
160
|
+
})]
|
|
130
161
|
})
|
|
131
162
|
]
|
|
132
163
|
}),
|
|
133
|
-
/* @__PURE__ */
|
|
164
|
+
/* @__PURE__ */ l(g, { children: [/* @__PURE__ */ c(u, {
|
|
134
165
|
variant: "outline",
|
|
135
|
-
onClick: () =>
|
|
136
|
-
disabled:
|
|
166
|
+
onClick: () => A(!1),
|
|
167
|
+
disabled: $,
|
|
137
168
|
children: "Cancel"
|
|
138
|
-
}), /* @__PURE__ */
|
|
169
|
+
}), /* @__PURE__ */ l(u, {
|
|
139
170
|
onClick: () => {
|
|
140
|
-
if (!
|
|
171
|
+
if (!M.trim()) {
|
|
141
172
|
t.warning("Title required", "Give the work order a title.");
|
|
142
173
|
return;
|
|
143
174
|
}
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
175
|
+
let e = K.map((e) => e.trim()).filter((e) => e !== "").map((e) => ({
|
|
176
|
+
task: e,
|
|
177
|
+
completed: !1
|
|
178
|
+
}));
|
|
179
|
+
Q({ variables: { input: {
|
|
180
|
+
title: M.trim(),
|
|
181
|
+
description: P.trim() || null,
|
|
182
|
+
assetId: I || null,
|
|
183
|
+
assignedTo: R.trim() || null,
|
|
184
|
+
type: B,
|
|
185
|
+
priority: H,
|
|
186
|
+
status: W,
|
|
187
|
+
checklist: e
|
|
152
188
|
} } });
|
|
153
189
|
},
|
|
154
|
-
disabled:
|
|
155
|
-
children: [
|
|
190
|
+
disabled: $,
|
|
191
|
+
children: [$ ? /* @__PURE__ */ c(r, { className: "mr-2 h-4 w-4 animate-spin" }) : null, $ ? "Creating…" : "Create Work Order"]
|
|
156
192
|
})] })
|
|
157
193
|
]
|
|
158
194
|
})
|
|
159
195
|
});
|
|
160
196
|
}
|
|
161
197
|
//#endregion
|
|
162
|
-
export {
|
|
198
|
+
export { A as NewWorkOrderDialog };
|
|
163
199
|
|
|
164
200
|
//# sourceMappingURL=NewWorkOrderDialog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewWorkOrderDialog.js","names":[],"sources":["../../../src/assethandler/ops/NewWorkOrderDialog.tsx"],"sourcesContent":["import { useState } from 'react';\nimport {\n Button,\n Input,\n Label,\n Textarea,\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n ResponsiveDialog,\n ResponsiveDialogContent,\n ResponsiveDialogHeader,\n ResponsiveDialogTitle,\n ResponsiveDialogDescription,\n ResponsiveDialogFooter,\n} from '@burdenoff/fe-libs/ui';\nimport { Loader2 } from 'lucide-react';\nimport { gql } from '@apollo/client';\nimport { useMutation } from '@apollo/client/react';\nimport { useAssetHandlerStore } from '../store/assethandlerStore';\nimport { notify } from '../utils/toast';\n\n/**\n * Reusable \"New Work Order\" create dialog, wired to the real createWorkOrder\n * mutation (wspace-assethandler-svc). Used by the Operations Hub.\n */\nconst CREATE_WORK_ORDER_MUTATION = gql`\n mutation AssetHandlerCreateWorkOrder($input: CreateWorkOrderInput!) {\n createWorkOrder(input: $input) {\n id\n title\n }\n }\n`;\n\ninterface CreateWorkOrderResult {\n createWorkOrder: { id: string; title: string };\n}\n\nconst WORK_ORDER_TYPES = ['CORRECTIVE', 'PREVENTIVE', 'PREDICTIVE', 'EMERGENCY'] as const;\nconst WORK_ORDER_STATUSES = [\n 'DRAFT',\n 'SCHEDULED',\n 'APPROVED',\n 'IN_PROGRESS',\n 'COMPLETED',\n 'CANCELLED',\n] as const;\nconst PRIORITIES = ['CRITICAL', 'HIGH', 'MEDIUM', 'LOW'] as const;\n\nconst humanize = (value: string) =>\n value\n .toLowerCase()\n .replace(/_/g, ' ')\n .replace(/^\\w/, (c) => c.toUpperCase());\n\nexport function NewWorkOrderDialog({\n open,\n onOpenChange,\n}: {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n}) {\n const { assets } = useAssetHandlerStore();\n\n const [title, setTitle] = useState('');\n const [description, setDescription] = useState('');\n const [assetId, setAssetId] = useState('');\n const [assignedTo, setAssignedTo] = useState('');\n const [type, setType] = useState<(typeof WORK_ORDER_TYPES)[number]>('CORRECTIVE');\n const [priority, setPriority] = useState<(typeof PRIORITIES)[number]>('MEDIUM');\n const [status, setStatus] = useState<(typeof WORK_ORDER_STATUSES)[number]>('DRAFT');\n\n const reset = () => {\n setTitle('');\n setDescription('');\n setAssetId('');\n setAssignedTo('');\n setType('CORRECTIVE');\n setPriority('MEDIUM');\n setStatus('DRAFT');\n };\n\n const [createWorkOrder, { loading }] = useMutation<CreateWorkOrderResult>(\n CREATE_WORK_ORDER_MUTATION,\n {\n refetchQueries: ['AssetHandlerBootstrap'],\n onCompleted: (data) => {\n notify.success('Work order created', `${data.createWorkOrder.title} was raised.`);\n reset();\n onOpenChange(false);\n },\n onError: (error) => notify.error('Could not create work order', error.message),\n }\n );\n\n const handleSubmit = () => {\n if (!title.trim()) {\n notify.warning('Title required', 'Give the work order a title.');\n return;\n }\n void createWorkOrder({\n variables: {\n input: {\n title: title.trim(),\n description: description.trim() || null,\n assetId: assetId || null,\n assignedTo: assignedTo.trim() || null,\n type,\n priority,\n status,\n },\n },\n });\n };\n\n return (\n <ResponsiveDialog open={open} onOpenChange={onOpenChange}>\n <ResponsiveDialogContent className=\"max-h-[85vh] overflow-y-auto sm:max-w-xl\">\n <ResponsiveDialogHeader>\n <ResponsiveDialogTitle>New Work Order</ResponsiveDialogTitle>\n <ResponsiveDialogDescription>\n Raise a work order when an asset needs repair, inspection or attention.\n </ResponsiveDialogDescription>\n </ResponsiveDialogHeader>\n <div className=\"space-y-4\">\n <div className=\"space-y-2\">\n <Label>Title *</Label>\n <Input\n placeholder=\"e.g., Replace worn drive belt\"\n value={title}\n onChange={(e) => setTitle(e.target.value)}\n />\n </div>\n <div className=\"space-y-2\">\n <Label>Description</Label>\n <Textarea\n placeholder=\"Describe the work required\"\n value={description}\n onChange={(e) => setDescription(e.target.value)}\n rows={2}\n />\n </div>\n <div className=\"grid gap-4 md:grid-cols-2\">\n <div className=\"space-y-2\">\n <Label>Asset</Label>\n <Select value={assetId} onValueChange={setAssetId}>\n <SelectTrigger>\n <SelectValue placeholder=\"Unassigned\" />\n </SelectTrigger>\n <SelectContent>\n {assets.map((asset) => (\n <SelectItem key={asset.id} value={asset.id}>\n {asset.name}\n {asset.assetTag ? ` · ${asset.assetTag}` : ''}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n <div className=\"space-y-2\">\n <Label>Assigned To</Label>\n <Input\n placeholder=\"e.g., Facilities team\"\n value={assignedTo}\n onChange={(e) => setAssignedTo(e.target.value)}\n />\n </div>\n </div>\n <div className=\"grid gap-4 md:grid-cols-3\">\n <div className=\"space-y-2\">\n <Label>Type</Label>\n <Select value={type} onValueChange={(v) => setType(v as typeof type)}>\n <SelectTrigger>\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {WORK_ORDER_TYPES.map((t) => (\n <SelectItem key={t} value={t}>\n {humanize(t)}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n <div className=\"space-y-2\">\n <Label>Priority</Label>\n <Select value={priority} onValueChange={(v) => setPriority(v as typeof priority)}>\n <SelectTrigger>\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {PRIORITIES.map((p) => (\n <SelectItem key={p} value={p}>\n {humanize(p)}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n <div className=\"space-y-2\">\n <Label>Status</Label>\n <Select value={status} onValueChange={(v) => setStatus(v as typeof status)}>\n <SelectTrigger>\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {WORK_ORDER_STATUSES.map((s) => (\n <SelectItem key={s} value={s}>\n {humanize(s)}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n </div>\n </div>\n <ResponsiveDialogFooter>\n <Button variant=\"outline\" onClick={() => onOpenChange(false)} disabled={loading}>\n Cancel\n </Button>\n <Button onClick={handleSubmit} disabled={loading}>\n {loading ? <Loader2 className=\"mr-2 h-4 w-4 animate-spin\" /> : null}\n {loading ? 'Creating…' : 'Create Work Order'}\n </Button>\n </ResponsiveDialogFooter>\n </ResponsiveDialogContent>\n </ResponsiveDialog>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NewWorkOrderDialog.js","names":[],"sources":["../../../src/assethandler/ops/NewWorkOrderDialog.tsx"],"sourcesContent":["import { useState } from 'react';\nimport {\n Button,\n Input,\n Label,\n Textarea,\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n ResponsiveDialog,\n ResponsiveDialogContent,\n ResponsiveDialogHeader,\n ResponsiveDialogTitle,\n ResponsiveDialogDescription,\n ResponsiveDialogFooter,\n} from '@burdenoff/fe-libs/ui';\nimport { Loader2, Plus, X } from 'lucide-react';\nimport { gql } from '@apollo/client';\nimport { useMutation } from '@apollo/client/react';\nimport { useAssetHandlerStore } from '../store/assethandlerStore';\nimport { notify } from '../utils/toast';\n\n/**\n * Reusable \"New Work Order\" create dialog, wired to the real createWorkOrder\n * mutation (wspace-assethandler-svc). Used by the Operations Hub.\n */\nconst CREATE_WORK_ORDER_MUTATION = gql`\n mutation AssetHandlerCreateWorkOrder($input: CreateWorkOrderInput!) {\n createWorkOrder(input: $input) {\n id\n title\n }\n }\n`;\n\ninterface CreateWorkOrderResult {\n createWorkOrder: { id: string; title: string };\n}\n\nconst WORK_ORDER_TYPES = ['CORRECTIVE', 'PREVENTIVE', 'PREDICTIVE', 'EMERGENCY'] as const;\nconst WORK_ORDER_STATUSES = [\n 'DRAFT',\n 'SCHEDULED',\n 'APPROVED',\n 'IN_PROGRESS',\n 'COMPLETED',\n 'CANCELLED',\n] as const;\nconst PRIORITIES = ['CRITICAL', 'HIGH', 'MEDIUM', 'LOW'] as const;\n\nconst humanize = (value: string) =>\n value\n .toLowerCase()\n .replace(/_/g, ' ')\n .replace(/^\\w/, (c) => c.toUpperCase());\n\nexport function NewWorkOrderDialog({\n open,\n onOpenChange,\n}: {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n}) {\n const { assets } = useAssetHandlerStore();\n\n const [title, setTitle] = useState('');\n const [description, setDescription] = useState('');\n const [assetId, setAssetId] = useState('');\n const [assignedTo, setAssignedTo] = useState('');\n const [type, setType] = useState<(typeof WORK_ORDER_TYPES)[number]>('CORRECTIVE');\n const [priority, setPriority] = useState<(typeof PRIORITIES)[number]>('MEDIUM');\n const [status, setStatus] = useState<(typeof WORK_ORDER_STATUSES)[number]>('DRAFT');\n const [checklist, setChecklist] = useState<string[]>(['']);\n\n const reset = () => {\n setTitle('');\n setDescription('');\n setAssetId('');\n setAssignedTo('');\n setType('CORRECTIVE');\n setPriority('MEDIUM');\n setStatus('DRAFT');\n setChecklist(['']);\n };\n\n const setChecklistItem = (index: number, value: string) =>\n setChecklist((prev) => prev.map((task, i) => (i === index ? value : task)));\n const addChecklistItem = () => setChecklist((prev) => [...prev, '']);\n const removeChecklistItem = (index: number) =>\n setChecklist((prev) => (prev.length === 1 ? prev : prev.filter((_, i) => i !== index)));\n\n const [createWorkOrder, { loading }] = useMutation<CreateWorkOrderResult>(\n CREATE_WORK_ORDER_MUTATION,\n {\n refetchQueries: ['AssetHandlerBootstrap'],\n onCompleted: (data) => {\n notify.success('Work order created', `${data.createWorkOrder.title} was raised.`);\n reset();\n onOpenChange(false);\n },\n onError: (error) => notify.error('Could not create work order', error.message),\n }\n );\n\n const handleSubmit = () => {\n if (!title.trim()) {\n notify.warning('Title required', 'Give the work order a title.');\n return;\n }\n const cleanedChecklist = checklist\n .map((task) => task.trim())\n .filter((task) => task !== '')\n .map((task) => ({ task, completed: false }));\n void createWorkOrder({\n variables: {\n input: {\n title: title.trim(),\n description: description.trim() || null,\n assetId: assetId || null,\n assignedTo: assignedTo.trim() || null,\n type,\n priority,\n status,\n checklist: cleanedChecklist,\n },\n },\n });\n };\n\n return (\n <ResponsiveDialog open={open} onOpenChange={onOpenChange}>\n <ResponsiveDialogContent className=\"max-h-[85vh] overflow-y-auto sm:max-w-xl\">\n <ResponsiveDialogHeader>\n <ResponsiveDialogTitle>New Work Order</ResponsiveDialogTitle>\n <ResponsiveDialogDescription>\n Raise a work order when an asset needs repair, inspection or attention.\n </ResponsiveDialogDescription>\n </ResponsiveDialogHeader>\n <div className=\"space-y-4\">\n <div className=\"space-y-2\">\n <Label>Title *</Label>\n <Input\n placeholder=\"e.g., Replace worn drive belt\"\n value={title}\n onChange={(e) => setTitle(e.target.value)}\n />\n </div>\n <div className=\"space-y-2\">\n <Label>Description</Label>\n <Textarea\n placeholder=\"Describe the work required\"\n value={description}\n onChange={(e) => setDescription(e.target.value)}\n rows={2}\n />\n </div>\n <div className=\"grid gap-4 md:grid-cols-2\">\n <div className=\"space-y-2\">\n <Label>Asset</Label>\n <Select value={assetId} onValueChange={setAssetId}>\n <SelectTrigger>\n <SelectValue placeholder=\"Unassigned\" />\n </SelectTrigger>\n <SelectContent>\n {assets.map((asset) => (\n <SelectItem key={asset.id} value={asset.id}>\n {asset.name}\n {asset.assetTag ? ` · ${asset.assetTag}` : ''}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n <div className=\"space-y-2\">\n <Label>Assigned To</Label>\n <Input\n placeholder=\"e.g., Facilities team\"\n value={assignedTo}\n onChange={(e) => setAssignedTo(e.target.value)}\n />\n </div>\n </div>\n <div className=\"grid gap-4 md:grid-cols-3\">\n <div className=\"space-y-2\">\n <Label>Type</Label>\n <Select value={type} onValueChange={(v) => setType(v as typeof type)}>\n <SelectTrigger>\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {WORK_ORDER_TYPES.map((t) => (\n <SelectItem key={t} value={t}>\n {humanize(t)}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n <div className=\"space-y-2\">\n <Label>Priority</Label>\n <Select value={priority} onValueChange={(v) => setPriority(v as typeof priority)}>\n <SelectTrigger>\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {PRIORITIES.map((p) => (\n <SelectItem key={p} value={p}>\n {humanize(p)}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n <div className=\"space-y-2\">\n <Label>Status</Label>\n <Select value={status} onValueChange={(v) => setStatus(v as typeof status)}>\n <SelectTrigger>\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {WORK_ORDER_STATUSES.map((s) => (\n <SelectItem key={s} value={s}>\n {humanize(s)}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n </div>\n <div className=\"space-y-2\">\n <div className=\"flex items-center justify-between\">\n <Label>Checklist</Label>\n <Button type=\"button\" size=\"sm\" variant=\"ghost\" onClick={addChecklistItem}>\n <Plus className=\"mr-1 h-3.5 w-3.5\" />\n Add task\n </Button>\n </div>\n <div className=\"space-y-2\">\n {checklist.map((task, i) => (\n <div key={i} className=\"flex items-center gap-2\">\n <Input\n placeholder={`Task ${i + 1}`}\n value={task}\n onChange={(e) => setChecklistItem(i, e.target.value)}\n />\n <Button\n type=\"button\"\n size=\"icon\"\n variant=\"ghost\"\n onClick={() => removeChecklistItem(i)}\n disabled={checklist.length === 1}\n aria-label=\"Remove task\"\n >\n <X className=\"h-4 w-4\" />\n </Button>\n </div>\n ))}\n </div>\n </div>\n </div>\n <ResponsiveDialogFooter>\n <Button variant=\"outline\" onClick={() => onOpenChange(false)} disabled={loading}>\n Cancel\n </Button>\n <Button onClick={handleSubmit} disabled={loading}>\n {loading ? <Loader2 className=\"mr-2 h-4 w-4 animate-spin\" /> : null}\n {loading ? 'Creating…' : 'Create Work Order'}\n </Button>\n </ResponsiveDialogFooter>\n </ResponsiveDialogContent>\n </ResponsiveDialog>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssetsAssetCreatePage.d.ts","sourceRoot":"","sources":["../../../src/assethandler/pages/AssetsAssetCreatePage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AssetsAssetCreatePage.d.ts","sourceRoot":"","sources":["../../../src/assethandler/pages/AssetsAssetCreatePage.tsx"],"names":[],"mappings":"AA4KA,wBAAgB,qBAAqB,gCA4hBpC"}
|