@burdenoff/microfe-adaptercloud 2026.625.2 → 2026.628.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/adaptercloud/AdapterCloudRoot.js +65 -121
- package/dist/adaptercloud/AdapterCloudRoot.js.map +1 -1
- package/dist/adaptercloud/AdapterCloudRoutes.js +70 -182
- package/dist/adaptercloud/AdapterCloudRoutes.js.map +1 -1
- package/dist/adaptercloud/components/DataState.js +42 -0
- package/dist/adaptercloud/components/DataState.js.map +1 -0
- package/dist/adaptercloud/components/SeverityBadge.js +12 -0
- package/dist/adaptercloud/components/SeverityBadge.js.map +1 -0
- package/dist/adaptercloud/components/StatusBadge.js +43 -44
- package/dist/adaptercloud/components/StatusBadge.js.map +1 -1
- package/dist/adaptercloud/context/AdapterCloudContext.js +22 -30
- package/dist/adaptercloud/context/AdapterCloudContext.js.map +1 -1
- package/dist/adaptercloud/hooks/useAdapterCloudApi.js +397 -194
- package/dist/adaptercloud/hooks/useAdapterCloudApi.js.map +1 -1
- package/dist/adaptercloud/index.js +1 -0
- package/dist/adaptercloud/pages/OverviewPage.js +334 -0
- package/dist/adaptercloud/pages/OverviewPage.js.map +1 -0
- package/dist/adaptercloud/pages/adapters/AdapterDetailPage.js +187 -0
- package/dist/adaptercloud/pages/adapters/AdapterDetailPage.js.map +1 -0
- package/dist/adaptercloud/pages/adapters/AdapterFormPage.js +278 -0
- package/dist/adaptercloud/pages/adapters/AdapterFormPage.js.map +1 -0
- package/dist/adaptercloud/pages/adapters/AdaptersListPage.js +172 -0
- package/dist/adaptercloud/pages/adapters/AdaptersListPage.js.map +1 -0
- package/dist/adaptercloud/pages/connections/ConnectionDetailPage.js +247 -0
- package/dist/adaptercloud/pages/connections/ConnectionDetailPage.js.map +1 -0
- package/dist/adaptercloud/pages/connections/ConnectionFormPage.js +271 -0
- package/dist/adaptercloud/pages/connections/ConnectionFormPage.js.map +1 -0
- package/dist/adaptercloud/pages/connections/ConnectionsListPage.js +167 -0
- package/dist/adaptercloud/pages/connections/ConnectionsListPage.js.map +1 -0
- package/dist/adaptercloud/pages/costs/CostsPage.js +169 -0
- package/dist/adaptercloud/pages/costs/CostsPage.js.map +1 -0
- package/dist/adaptercloud/pages/drift/DriftListPage.js +132 -0
- package/dist/adaptercloud/pages/drift/DriftListPage.js.map +1 -0
- package/dist/adaptercloud/pages/policies/PoliciesListPage.js +171 -0
- package/dist/adaptercloud/pages/policies/PoliciesListPage.js.map +1 -0
- package/dist/adaptercloud/pages/policies/PolicyDetailPage.js +185 -0
- package/dist/adaptercloud/pages/policies/PolicyDetailPage.js.map +1 -0
- package/dist/adaptercloud/pages/policies/PolicyFormPage.js +215 -0
- package/dist/adaptercloud/pages/policies/PolicyFormPage.js.map +1 -0
- package/dist/adaptercloud/pages/resources/ResourceDetailPage.js +207 -0
- package/dist/adaptercloud/pages/resources/ResourceDetailPage.js.map +1 -0
- package/dist/adaptercloud/pages/resources/ResourcesListPage.js +182 -0
- package/dist/adaptercloud/pages/resources/ResourcesListPage.js.map +1 -0
- package/dist/adaptercloud/pages/sync-runs/SyncRunsListPage.js +196 -0
- package/dist/adaptercloud/pages/sync-runs/SyncRunsListPage.js.map +1 -0
- package/dist/adaptercloud/pages/violations/ViolationsListPage.js +258 -0
- package/dist/adaptercloud/pages/violations/ViolationsListPage.js.map +1 -0
- package/dist/adaptercloud/store/adaptercloudStore.js +1 -7
- package/dist/adaptercloud/store/adaptercloudStore.js.map +1 -1
- package/dist/adaptercloud/utils/domain.js +105 -0
- package/dist/adaptercloud/utils/domain.js.map +1 -0
- package/dist/adaptercloud/utils/formatters.js +1 -12
- package/dist/adaptercloud/utils/formatters.js.map +1 -1
- package/dist/index.js +5 -4
- package/package.json +1 -1
- package/dist/adaptercloud/components/InvestmentCard.js +0 -98
- package/dist/adaptercloud/components/InvestmentCard.js.map +0 -1
- package/dist/adaptercloud/components/RatingDisplay.js +0 -35
- package/dist/adaptercloud/components/RatingDisplay.js.map +0 -1
- package/dist/adaptercloud/mocks/data.js +0 -1517
- package/dist/adaptercloud/mocks/data.js.map +0 -1
- package/dist/adaptercloud/mocks/users.js +0 -34
- package/dist/adaptercloud/mocks/users.js.map +0 -1
- package/dist/adaptercloud/pages/HomePage.js +0 -934
- package/dist/adaptercloud/pages/HomePage.js.map +0 -1
- package/dist/adaptercloud/pages/admin/AdminAnalyticsPage.js +0 -653
- package/dist/adaptercloud/pages/admin/AdminAnalyticsPage.js.map +0 -1
- package/dist/adaptercloud/pages/admin/AdminDashboard.js +0 -665
- package/dist/adaptercloud/pages/admin/AdminDashboard.js.map +0 -1
- package/dist/adaptercloud/pages/admin/AdminFinancialPage.js +0 -426
- package/dist/adaptercloud/pages/admin/AdminFinancialPage.js.map +0 -1
- package/dist/adaptercloud/pages/admin/AdminOrdersPage.js +0 -665
- package/dist/adaptercloud/pages/admin/AdminOrdersPage.js.map +0 -1
- package/dist/adaptercloud/pages/admin/AdminProfilePage.js +0 -261
- package/dist/adaptercloud/pages/admin/AdminProfilePage.js.map +0 -1
- package/dist/adaptercloud/pages/admin/AdminSettingsPage.js +0 -663
- package/dist/adaptercloud/pages/admin/AdminSettingsPage.js.map +0 -1
- package/dist/adaptercloud/pages/admin/CartManagementPage.js +0 -874
- package/dist/adaptercloud/pages/admin/CartManagementPage.js.map +0 -1
- package/dist/adaptercloud/pages/admin/UserManagementPage.js +0 -898
- package/dist/adaptercloud/pages/admin/UserManagementPage.js.map +0 -1
- package/dist/adaptercloud/pages/cart-owner/AnalyticsDashboard.js +0 -840
- package/dist/adaptercloud/pages/cart-owner/AnalyticsDashboard.js.map +0 -1
- package/dist/adaptercloud/pages/cart-owner/BusinessSettingsPage.js +0 -714
- package/dist/adaptercloud/pages/cart-owner/BusinessSettingsPage.js.map +0 -1
- package/dist/adaptercloud/pages/cart-owner/CartOwnerDashboard.js +0 -788
- package/dist/adaptercloud/pages/cart-owner/CartOwnerDashboard.js.map +0 -1
- package/dist/adaptercloud/pages/cart-owner/CartOwnerProfilePage.js +0 -888
- package/dist/adaptercloud/pages/cart-owner/CartOwnerProfilePage.js.map +0 -1
- package/dist/adaptercloud/pages/cart-owner/CartServiceConfigPage.js +0 -634
- package/dist/adaptercloud/pages/cart-owner/CartServiceConfigPage.js.map +0 -1
- package/dist/adaptercloud/pages/cart-owner/InventoryManagementPage.js +0 -907
- package/dist/adaptercloud/pages/cart-owner/InventoryManagementPage.js.map +0 -1
- package/dist/adaptercloud/pages/cart-owner/OrderManagementPage.js +0 -875
- package/dist/adaptercloud/pages/cart-owner/OrderManagementPage.js.map +0 -1
- package/dist/adaptercloud/pages/cart-owner/StaffManagementPage.js +0 -827
- package/dist/adaptercloud/pages/cart-owner/StaffManagementPage.js.map +0 -1
- package/dist/adaptercloud/pages/common/HelpSupportPage.js +0 -1329
- package/dist/adaptercloud/pages/common/HelpSupportPage.js.map +0 -1
- package/dist/adaptercloud/pages/common/NotificationCenterPage.js +0 -671
- package/dist/adaptercloud/pages/common/NotificationCenterPage.js.map +0 -1
- package/dist/adaptercloud/pages/common/SettingsPage.js +0 -982
- package/dist/adaptercloud/pages/common/SettingsPage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/BookingDetailsPage.js +0 -596
- package/dist/adaptercloud/pages/customer/BookingDetailsPage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/CartDetailPage.js +0 -623
- package/dist/adaptercloud/pages/customer/CartDetailPage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/CartDiscoveryPage.js +0 -552
- package/dist/adaptercloud/pages/customer/CartDiscoveryPage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/CheckoutPage.js +0 -534
- package/dist/adaptercloud/pages/customer/CheckoutPage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/CustomerDashboard.js +0 -525
- package/dist/adaptercloud/pages/customer/CustomerDashboard.js.map +0 -1
- package/dist/adaptercloud/pages/customer/CustomerProfilePage.js +0 -623
- package/dist/adaptercloud/pages/customer/CustomerProfilePage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/DirectServiceBookingPage.js +0 -629
- package/dist/adaptercloud/pages/customer/DirectServiceBookingPage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/FavoritesPage.js +0 -480
- package/dist/adaptercloud/pages/customer/FavoritesPage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/OrderHistoryPage.js +0 -444
- package/dist/adaptercloud/pages/customer/OrderHistoryPage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/OrderTrackingPage.js +0 -391
- package/dist/adaptercloud/pages/customer/OrderTrackingPage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/PaymentMethodsPage.js +0 -504
- package/dist/adaptercloud/pages/customer/PaymentMethodsPage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/ReviewsPage.js +0 -609
- package/dist/adaptercloud/pages/customer/ReviewsPage.js.map +0 -1
- package/dist/adaptercloud/pages/customer/SavedAddressesPage.js +0 -459
- package/dist/adaptercloud/pages/customer/SavedAddressesPage.js.map +0 -1
- package/dist/adaptercloud/pages/investor/InvestmentDetailsPage.js +0 -851
- package/dist/adaptercloud/pages/investor/InvestmentDetailsPage.js.map +0 -1
- package/dist/adaptercloud/pages/investor/InvestmentOpportunitiesPage.js +0 -942
- package/dist/adaptercloud/pages/investor/InvestmentOpportunitiesPage.js.map +0 -1
- package/dist/adaptercloud/pages/investor/InvestorAnalyticsPage.js +0 -683
- package/dist/adaptercloud/pages/investor/InvestorAnalyticsPage.js.map +0 -1
- package/dist/adaptercloud/pages/investor/InvestorDashboard.js +0 -452
- package/dist/adaptercloud/pages/investor/InvestorDashboard.js.map +0 -1
- package/dist/adaptercloud/pages/investor/InvestorInvestmentsPage.js +0 -402
- package/dist/adaptercloud/pages/investor/InvestorInvestmentsPage.js.map +0 -1
- package/dist/adaptercloud/pages/investor/InvestorPortfolioPage.js +0 -571
- package/dist/adaptercloud/pages/investor/InvestorPortfolioPage.js.map +0 -1
- package/dist/adaptercloud/pages/investor/InvestorProfilePage.js +0 -1067
- package/dist/adaptercloud/pages/investor/InvestorProfilePage.js.map +0 -1
- package/dist/adaptercloud/pages/worker/TaskDetailsPage.js +0 -526
- package/dist/adaptercloud/pages/worker/TaskDetailsPage.js.map +0 -1
- package/dist/adaptercloud/pages/worker/WorkerDashboard.js +0 -659
- package/dist/adaptercloud/pages/worker/WorkerDashboard.js.map +0 -1
- package/dist/adaptercloud/pages/worker/WorkerOrdersPage.js +0 -678
- package/dist/adaptercloud/pages/worker/WorkerOrdersPage.js.map +0 -1
- package/dist/adaptercloud/pages/worker/WorkerProfilePage.js +0 -689
- package/dist/adaptercloud/pages/worker/WorkerProfilePage.js.map +0 -1
- package/dist/adaptercloud/pages/worker/WorkerSchedulePage.js +0 -582
- package/dist/adaptercloud/pages/worker/WorkerSchedulePage.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdapterCloudRoutes.js","names":[],"sources":["../../src/adaptercloud/AdapterCloudRoutes.tsx"],"sourcesContent":["/**\n * AdapterCloud Routes\n * @module adaptercloud\n */\n\nimport { type FC, lazy, Suspense } from 'react';\nimport { Routes, Route, Navigate, useLocation } from 'react-router-dom';\nimport { useAdapterCloud } from './context/AdapterCloudContext';\n\n// Eager load - HomePage (primary landing page)\nimport { HomePage } from './pages/HomePage';\n\n// Lazy loaded pages - Customer\nconst CustomerDashboard = lazy(() =>\n import('./pages/customer/CustomerDashboard').then((m) => ({ default: m.CustomerDashboard }))\n);\nconst CartDiscoveryPage = lazy(() =>\n import('./pages/customer/CartDiscoveryPage').then((m) => ({ default: m.CartDiscoveryPage }))\n);\nconst CartDetailPage = lazy(() =>\n import('./pages/customer/CartDetailPage').then((m) => ({ default: m.CartDetailPage }))\n);\nconst CheckoutPage = lazy(() =>\n import('./pages/customer/CheckoutPage').then((m) => ({ default: m.CheckoutPage }))\n);\nconst OrderTrackingPage = lazy(() =>\n import('./pages/customer/OrderTrackingPage').then((m) => ({ default: m.OrderTrackingPage }))\n);\nconst OrderHistoryPage = lazy(() =>\n import('./pages/customer/OrderHistoryPage').then((m) => ({ default: m.OrderHistoryPage }))\n);\nconst CustomerProfilePage = lazy(() =>\n import('./pages/customer/CustomerProfilePage').then((m) => ({ default: m.CustomerProfilePage }))\n);\nconst SavedAddressesPage = lazy(() =>\n import('./pages/customer/SavedAddressesPage').then((m) => ({ default: m.SavedAddressesPage }))\n);\nconst FavoritesPage = lazy(() =>\n import('./pages/customer/FavoritesPage').then((m) => ({ default: m.FavoritesPage }))\n);\nconst ReviewsPage = lazy(() =>\n import('./pages/customer/ReviewsPage').then((m) => ({ default: m.ReviewsPage }))\n);\nconst PaymentMethodsPage = lazy(() =>\n import('./pages/customer/PaymentMethodsPage').then((m) => ({ default: m.PaymentMethodsPage }))\n);\nconst DirectServiceBookingPage = lazy(() =>\n import('./pages/customer/DirectServiceBookingPage').then((m) => ({\n default: m.DirectServiceBookingPage,\n }))\n);\nconst BookingDetailsPage = lazy(() =>\n import('./pages/customer/BookingDetailsPage').then((m) => ({ default: m.BookingDetailsPage }))\n);\n\n// Lazy loaded pages - Cart Owner\nconst CartOwnerDashboard = lazy(() =>\n import('./pages/cart-owner/CartOwnerDashboard').then((m) => ({ default: m.CartOwnerDashboard }))\n);\nconst CartServiceConfigPage = lazy(() =>\n import('./pages/cart-owner/CartServiceConfigPage').then((m) => ({\n default: m.CartServiceConfigPage,\n }))\n);\nconst InventoryManagementPage = lazy(() =>\n import('./pages/cart-owner/InventoryManagementPage').then((m) => ({\n default: m.InventoryManagementPage,\n }))\n);\nconst OrderManagementPage = lazy(() =>\n import('./pages/cart-owner/OrderManagementPage').then((m) => ({\n default: m.OrderManagementPage,\n }))\n);\nconst AnalyticsDashboard = lazy(() =>\n import('./pages/cart-owner/AnalyticsDashboard').then((m) => ({ default: m.AnalyticsDashboard }))\n);\nconst StaffManagementPage = lazy(() =>\n import('./pages/cart-owner/StaffManagementPage').then((m) => ({\n default: m.StaffManagementPage,\n }))\n);\nconst BusinessSettingsPage = lazy(() =>\n import('./pages/cart-owner/BusinessSettingsPage').then((m) => ({\n default: m.BusinessSettingsPage,\n }))\n);\nconst CartOwnerProfilePage = lazy(() =>\n import('./pages/cart-owner/CartOwnerProfilePage').then((m) => ({\n default: m.CartOwnerProfilePage,\n }))\n);\n\n// Lazy loaded pages - Worker\nconst WorkerDashboard = lazy(() =>\n import('./pages/worker/WorkerDashboard').then((m) => ({ default: m.WorkerDashboard }))\n);\nconst WorkerOrdersPage = lazy(() =>\n import('./pages/worker/WorkerOrdersPage').then((m) => ({ default: m.WorkerOrdersPage }))\n);\nconst WorkerSchedulePage = lazy(() =>\n import('./pages/worker/WorkerSchedulePage').then((m) => ({ default: m.WorkerSchedulePage }))\n);\nconst WorkerProfilePage = lazy(() =>\n import('./pages/worker/WorkerProfilePage').then((m) => ({ default: m.WorkerProfilePage }))\n);\nconst TaskDetailsPage = lazy(() =>\n import('./pages/worker/TaskDetailsPage').then((m) => ({ default: m.TaskDetailsPage }))\n);\n\n// Lazy loaded pages - Investor\nconst InvestorDashboard = lazy(() =>\n import('./pages/investor/InvestorDashboard').then((m) => ({ default: m.InvestorDashboard }))\n);\nconst InvestorPortfolioPage = lazy(() =>\n import('./pages/investor/InvestorPortfolioPage').then((m) => ({\n default: m.InvestorPortfolioPage,\n }))\n);\nconst InvestmentOpportunitiesPage = lazy(() =>\n import('./pages/investor/InvestmentOpportunitiesPage').then((m) => ({\n default: m.InvestmentOpportunitiesPage,\n }))\n);\nconst InvestmentDetailsPage = lazy(() =>\n import('./pages/investor/InvestmentDetailsPage').then((m) => ({\n default: m.InvestmentDetailsPage,\n }))\n);\nconst InvestorInvestmentsPage = lazy(() =>\n import('./pages/investor/InvestorInvestmentsPage').then((m) => ({\n default: m.InvestorInvestmentsPage,\n }))\n);\nconst InvestorAnalyticsPage = lazy(() =>\n import('./pages/investor/InvestorAnalyticsPage').then((m) => ({\n default: m.InvestorAnalyticsPage,\n }))\n);\nconst InvestorProfilePage = lazy(() =>\n import('./pages/investor/InvestorProfilePage').then((m) => ({\n default: m.InvestorProfilePage,\n }))\n);\n\n// Lazy loaded pages - Admin\nconst AdminDashboard = lazy(() =>\n import('./pages/admin/AdminDashboard').then((m) => ({ default: m.AdminDashboard }))\n);\nconst UserManagementPage = lazy(() =>\n import('./pages/admin/UserManagementPage').then((m) => ({ default: m.UserManagementPage }))\n);\nconst CartManagementPage = lazy(() =>\n import('./pages/admin/CartManagementPage').then((m) => ({ default: m.CartManagementPage }))\n);\nconst AdminAnalyticsPage = lazy(() =>\n import('./pages/admin/AdminAnalyticsPage').then((m) => ({ default: m.AdminAnalyticsPage }))\n);\nconst AdminOrdersPage = lazy(() =>\n import('./pages/admin/AdminOrdersPage').then((m) => ({ default: m.AdminOrdersPage }))\n);\nconst AdminProfilePage = lazy(() =>\n import('./pages/admin/AdminProfilePage').then((m) => ({ default: m.AdminProfilePage }))\n);\nconst AdminSettingsPage = lazy(() =>\n import('./pages/admin/AdminSettingsPage').then((m) => ({ default: m.AdminSettingsPage }))\n);\nconst AdminFinancialPage = lazy(() =>\n import('./pages/admin/AdminFinancialPage').then((m) => ({ default: m.AdminFinancialPage }))\n);\n\n// Lazy loaded pages - Common\nconst NotificationCenterPage = lazy(() =>\n import('./pages/common/NotificationCenterPage').then((m) => ({\n default: m.NotificationCenterPage,\n }))\n);\nconst SettingsPage = lazy(() =>\n import('./pages/common/SettingsPage').then((m) => ({ default: m.SettingsPage }))\n);\nconst HelpSupportPage = lazy(() =>\n import('./pages/common/HelpSupportPage').then((m) => ({ default: m.HelpSupportPage }))\n);\n\n// Loading fallback component\nconst PageLoader: FC = () => (\n <div className=\"flex items-center justify-center min-h-[400px]\">\n <div className=\"animate-spin rounded-full h-8 w-8 border-b-2 border-primary\" />\n </div>\n);\n\nexport const AdapterCloudRoutes: FC = () => {\n const { basePath, isStandalone } = useAdapterCloud();\n const location = useLocation();\n\n // Normalize base path\n const normalizedBasePath = basePath === '/' ? '' : (basePath ?? '').replace(/\\/$/, '');\n\n // Guard: Only render if path matches basePath (when integrated)\n if (normalizedBasePath && !isStandalone) {\n const pathMatches =\n location.pathname === normalizedBasePath ||\n location.pathname.startsWith(normalizedBasePath + '/');\n\n if (!pathMatches) {\n return null;\n }\n }\n\n return (\n <div className=\"flex flex-col min-h-full\">\n <Suspense fallback={<PageLoader />}>\n <Routes>\n {/* Home - Eager loaded */}\n <Route index element={<HomePage />} />\n\n {/* Customer Routes */}\n <Route path=\"customer/dashboard\" element={<CustomerDashboard />} />\n <Route path=\"customer/discover\" element={<CartDiscoveryPage />} />\n <Route path=\"customer/cart/:cartId\" element={<CartDetailPage />} />\n <Route\n path=\"customer/cart/:cartId/direct-service\"\n element={<DirectServiceBookingPage />}\n />\n <Route path=\"customer/checkout\" element={<CheckoutPage />} />\n <Route path=\"customer/orders/:orderId/track\" element={<OrderTrackingPage />} />\n <Route path=\"customer/orders\" element={<OrderHistoryPage />} />\n <Route path=\"customer/profile\" element={<CustomerProfilePage />} />\n <Route path=\"customer/addresses\" element={<SavedAddressesPage />} />\n <Route path=\"customer/favorites\" element={<FavoritesPage />} />\n <Route path=\"customer/reviews\" element={<ReviewsPage />} />\n <Route path=\"customer/payment-methods\" element={<PaymentMethodsPage />} />\n <Route path=\"customer/booking/:bookingId\" element={<BookingDetailsPage />} />\n\n {/* Cart Owner Routes */}\n <Route path=\"cart-owner/dashboard\" element={<CartOwnerDashboard />} />\n <Route path=\"cart-owner/service-config\" element={<CartServiceConfigPage />} />\n <Route path=\"cart-owner/inventory\" element={<InventoryManagementPage />} />\n <Route path=\"cart-owner/orders\" element={<OrderManagementPage />} />\n <Route path=\"cart-owner/analytics\" element={<AnalyticsDashboard />} />\n <Route path=\"cart-owner/staff\" element={<StaffManagementPage />} />\n <Route path=\"cart-owner/settings\" element={<BusinessSettingsPage />} />\n <Route path=\"cart-owner/profile\" element={<CartOwnerProfilePage />} />\n\n {/* Worker Routes */}\n <Route path=\"worker/dashboard\" element={<WorkerDashboard />} />\n <Route path=\"worker/orders\" element={<WorkerOrdersPage />} />\n <Route path=\"worker/schedule\" element={<WorkerSchedulePage />} />\n <Route path=\"worker/profile\" element={<WorkerProfilePage />} />\n <Route path=\"worker/task/:taskId\" element={<TaskDetailsPage />} />\n\n {/* Investor Routes */}\n <Route path=\"investor/dashboard\" element={<InvestorDashboard />} />\n <Route path=\"investor/portfolio\" element={<InvestorPortfolioPage />} />\n <Route path=\"investor/opportunities\" element={<InvestmentOpportunitiesPage />} />\n <Route path=\"investor/opportunity/:id\" element={<InvestmentDetailsPage />} />\n <Route path=\"investor/investments/:id\" element={<InvestmentDetailsPage />} />\n <Route path=\"investor/investments\" element={<InvestorInvestmentsPage />} />\n <Route path=\"investor/analytics\" element={<InvestorAnalyticsPage />} />\n <Route path=\"investor/profile\" element={<InvestorProfilePage />} />\n\n {/* Admin Routes */}\n <Route path=\"admin/dashboard\" element={<AdminDashboard />} />\n <Route path=\"admin/users\" element={<UserManagementPage />} />\n <Route path=\"admin/carts\" element={<CartManagementPage />} />\n <Route path=\"admin/analytics\" element={<AdminAnalyticsPage />} />\n <Route path=\"admin/orders\" element={<AdminOrdersPage />} />\n <Route path=\"admin/profile\" element={<AdminProfilePage />} />\n <Route path=\"admin/settings\" element={<AdminSettingsPage />} />\n <Route path=\"admin/financial\" element={<AdminFinancialPage />} />\n\n {/* Common Routes */}\n <Route path=\"notifications\" element={<NotificationCenterPage />} />\n <Route path=\"settings\" element={<SettingsPage />} />\n <Route path=\"help\" element={<HelpSupportPage />} />\n\n {/* Fallback */}\n <Route path=\"*\" element={<Navigate to=\"/\" replace />} />\n </Routes>\n </Suspense>\n </div>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AdapterCloudRoutes.js","names":[],"sources":["../../src/adaptercloud/AdapterCloudRoutes.tsx"],"sourcesContent":["/**\n * AdapterCloud Routes\n * @module adaptercloud\n *\n * Domain routing for the AdapterCloud (InfraVerse) control plane: an overview\n * landing page plus fabric (adapters / connections / resources), governance\n * (policies / violations / drift) and operations (sync runs / FinOps).\n */\n\nimport { type FC, lazy, Suspense } from 'react';\nimport { Routes, Route, Navigate, useLocation } from 'react-router-dom';\nimport { useAdapterCloud } from './context/AdapterCloudContext';\n\n// Eager — overview landing page\nimport { OverviewPage } from './pages/OverviewPage';\n\n// Fabric — adapters\nconst AdaptersListPage = lazy(() =>\n import('./pages/adapters/AdaptersListPage').then((m) => ({ default: m.AdaptersListPage }))\n);\nconst AdapterDetailPage = lazy(() =>\n import('./pages/adapters/AdapterDetailPage').then((m) => ({ default: m.AdapterDetailPage }))\n);\nconst AdapterFormPage = lazy(() =>\n import('./pages/adapters/AdapterFormPage').then((m) => ({ default: m.AdapterFormPage }))\n);\n\n// Fabric — connections\nconst ConnectionsListPage = lazy(() =>\n import('./pages/connections/ConnectionsListPage').then((m) => ({\n default: m.ConnectionsListPage,\n }))\n);\nconst ConnectionDetailPage = lazy(() =>\n import('./pages/connections/ConnectionDetailPage').then((m) => ({\n default: m.ConnectionDetailPage,\n }))\n);\nconst ConnectionFormPage = lazy(() =>\n import('./pages/connections/ConnectionFormPage').then((m) => ({\n default: m.ConnectionFormPage,\n }))\n);\n\n// Fabric — resources\nconst ResourcesListPage = lazy(() =>\n import('./pages/resources/ResourcesListPage').then((m) => ({ default: m.ResourcesListPage }))\n);\nconst ResourceDetailPage = lazy(() =>\n import('./pages/resources/ResourceDetailPage').then((m) => ({ default: m.ResourceDetailPage }))\n);\n\n// Governance — policies\nconst PoliciesListPage = lazy(() =>\n import('./pages/policies/PoliciesListPage').then((m) => ({ default: m.PoliciesListPage }))\n);\nconst PolicyDetailPage = lazy(() =>\n import('./pages/policies/PolicyDetailPage').then((m) => ({ default: m.PolicyDetailPage }))\n);\nconst PolicyFormPage = lazy(() =>\n import('./pages/policies/PolicyFormPage').then((m) => ({ default: m.PolicyFormPage }))\n);\n\n// Governance — violations & drift\nconst ViolationsListPage = lazy(() =>\n import('./pages/violations/ViolationsListPage').then((m) => ({ default: m.ViolationsListPage }))\n);\nconst DriftListPage = lazy(() =>\n import('./pages/drift/DriftListPage').then((m) => ({ default: m.DriftListPage }))\n);\n\n// Operations — sync runs & costs\nconst SyncRunsListPage = lazy(() =>\n import('./pages/sync-runs/SyncRunsListPage').then((m) => ({ default: m.SyncRunsListPage }))\n);\nconst CostsPage = lazy(() =>\n import('./pages/costs/CostsPage').then((m) => ({ default: m.CostsPage }))\n);\n\n// Loading fallback component\nconst PageLoader: FC = () => (\n <div className=\"flex min-h-[400px] items-center justify-center\">\n <div className=\"h-8 w-8 animate-spin rounded-full border-b-2 border-primary\" />\n </div>\n);\n\nexport const AdapterCloudRoutes: FC = () => {\n const { basePath, isStandalone } = useAdapterCloud();\n const location = useLocation();\n\n // Normalize base path\n const normalizedBasePath = basePath === '/' ? '' : (basePath ?? '').replace(/\\/$/, '');\n\n // Guard: Only render if path matches basePath (when integrated)\n if (normalizedBasePath && !isStandalone) {\n const pathMatches =\n location.pathname === normalizedBasePath ||\n location.pathname.startsWith(normalizedBasePath + '/');\n\n if (!pathMatches) {\n return null;\n }\n }\n\n return (\n <div className=\"flex min-h-full flex-col\">\n <Suspense fallback={<PageLoader />}>\n <Routes>\n {/* Overview — eager loaded */}\n <Route index element={<OverviewPage />} />\n\n {/* Adapters */}\n <Route path=\"adapters\" element={<AdaptersListPage />} />\n <Route path=\"adapters/new\" element={<AdapterFormPage />} />\n <Route path=\"adapters/:id\" element={<AdapterDetailPage />} />\n <Route path=\"adapters/:id/edit\" element={<AdapterFormPage />} />\n\n {/* Connections */}\n <Route path=\"connections\" element={<ConnectionsListPage />} />\n <Route path=\"connections/new\" element={<ConnectionFormPage />} />\n <Route path=\"connections/:id\" element={<ConnectionDetailPage />} />\n <Route path=\"connections/:id/edit\" element={<ConnectionFormPage />} />\n\n {/* Resources */}\n <Route path=\"resources\" element={<ResourcesListPage />} />\n <Route path=\"resources/:id\" element={<ResourceDetailPage />} />\n\n {/* Policies */}\n <Route path=\"policies\" element={<PoliciesListPage />} />\n <Route path=\"policies/new\" element={<PolicyFormPage />} />\n <Route path=\"policies/:id\" element={<PolicyDetailPage />} />\n\n {/* Governance */}\n <Route path=\"violations\" element={<ViolationsListPage />} />\n <Route path=\"drift\" element={<DriftListPage />} />\n\n {/* Operations */}\n <Route path=\"sync-runs\" element={<SyncRunsListPage />} />\n <Route path=\"costs\" element={<CostsPage />} />\n\n {/* Fallback */}\n <Route path=\"*\" element={<Navigate to=\"\" replace />} />\n </Routes>\n </Suspense>\n </div>\n );\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { cn as e } from "../utils/cn.js";
|
|
2
|
+
import { EmptyState as t } from "./EmptyState.js";
|
|
3
|
+
import { AlertCircle as n, Loader2 as r } from "lucide-react";
|
|
4
|
+
import { Fragment as i, jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
5
|
+
//#region src/adaptercloud/components/DataState.tsx
|
|
6
|
+
function s(e) {
|
|
7
|
+
return e instanceof Error ? e.message : typeof e == "string" ? e : "Something went wrong while loading data.";
|
|
8
|
+
}
|
|
9
|
+
var c = ({ isLoading: c, isError: l, isEmpty: u = !1, error: d, onRetry: f, emptyTitle: p = "Nothing here yet", emptyDescription: m, emptyIcon: h, emptyAction: g, emptyIllustration: _, className: v, children: y }) => c ? /* @__PURE__ */ a("div", {
|
|
10
|
+
className: e("flex min-h-[240px] items-center justify-center", v),
|
|
11
|
+
children: /* @__PURE__ */ a(r, { className: "h-8 w-8 animate-spin text-primary" })
|
|
12
|
+
}) : l ? /* @__PURE__ */ o("div", {
|
|
13
|
+
className: e("flex min-h-[240px] flex-col items-center justify-center gap-3 rounded-xl border border-border-subtle bg-bg-surface p-8 text-center", v),
|
|
14
|
+
children: [
|
|
15
|
+
/* @__PURE__ */ a(n, { className: "h-10 w-10 text-status-error-text" }),
|
|
16
|
+
/* @__PURE__ */ a("h3", {
|
|
17
|
+
className: "text-base font-semibold text-text-primary",
|
|
18
|
+
children: "Failed to load"
|
|
19
|
+
}),
|
|
20
|
+
/* @__PURE__ */ a("p", {
|
|
21
|
+
className: "max-w-md text-sm text-text-secondary",
|
|
22
|
+
children: s(d)
|
|
23
|
+
}),
|
|
24
|
+
f && /* @__PURE__ */ a("button", {
|
|
25
|
+
type: "button",
|
|
26
|
+
onClick: f,
|
|
27
|
+
className: "mt-1 rounded-lg border border-border-subtle px-4 py-2 text-sm font-medium text-text-primary transition-colors hover:bg-accent",
|
|
28
|
+
children: "Try again"
|
|
29
|
+
})
|
|
30
|
+
]
|
|
31
|
+
}) : u ? /* @__PURE__ */ a(t, {
|
|
32
|
+
title: p,
|
|
33
|
+
description: m,
|
|
34
|
+
icon: h,
|
|
35
|
+
action: g,
|
|
36
|
+
illustration: _,
|
|
37
|
+
className: v
|
|
38
|
+
}) : /* @__PURE__ */ a(i, { children: y });
|
|
39
|
+
//#endregion
|
|
40
|
+
export { c as DataState };
|
|
41
|
+
|
|
42
|
+
//# sourceMappingURL=DataState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataState.js","names":[],"sources":["../../../src/adaptercloud/components/DataState.tsx"],"sourcesContent":["/**\n * DataState Component\n * @module adaptercloud/components\n *\n * Standard loading / error / empty wrapper for query-backed sections. Renders\n * `children` only when there is data; otherwise shows a spinner, an error panel,\n * or an illustrated empty state. Keeps every page's async UX consistent.\n */\n\nimport type { FC, ReactNode } from 'react';\nimport { AlertCircle, Loader2 } from 'lucide-react';\nimport { EmptyState } from './EmptyState';\nimport { cn } from '../utils/cn';\n\ninterface DataStateProps {\n isLoading: boolean;\n isError: boolean;\n /** True when the underlying list/record is empty (only checked once loaded). */\n isEmpty?: boolean;\n error?: unknown;\n onRetry?: () => void;\n emptyTitle?: string;\n emptyDescription?: string;\n emptyIcon?: ReactNode;\n emptyAction?: ReactNode;\n emptyIllustration?: string;\n className?: string;\n children: ReactNode;\n}\n\nfunction errorMessage(error: unknown): string {\n if (error instanceof Error) return error.message;\n if (typeof error === 'string') return error;\n return 'Something went wrong while loading data.';\n}\n\nexport const DataState: FC<DataStateProps> = ({\n isLoading,\n isError,\n isEmpty = false,\n error,\n onRetry,\n emptyTitle = 'Nothing here yet',\n emptyDescription,\n emptyIcon,\n emptyAction,\n emptyIllustration,\n className,\n children,\n}) => {\n if (isLoading) {\n return (\n <div className={cn('flex min-h-[240px] items-center justify-center', className)}>\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n }\n\n if (isError) {\n return (\n <div\n className={cn(\n 'flex min-h-[240px] flex-col items-center justify-center gap-3 rounded-xl border border-border-subtle bg-bg-surface p-8 text-center',\n className\n )}\n >\n <AlertCircle className=\"h-10 w-10 text-status-error-text\" />\n <h3 className=\"text-base font-semibold text-text-primary\">Failed to load</h3>\n <p className=\"max-w-md text-sm text-text-secondary\">{errorMessage(error)}</p>\n {onRetry && (\n <button\n type=\"button\"\n onClick={onRetry}\n className=\"mt-1 rounded-lg border border-border-subtle px-4 py-2 text-sm font-medium text-text-primary transition-colors hover:bg-accent\"\n >\n Try again\n </button>\n )}\n </div>\n );\n }\n\n if (isEmpty) {\n return (\n <EmptyState\n title={emptyTitle}\n description={emptyDescription}\n icon={emptyIcon}\n action={emptyAction}\n illustration={emptyIllustration}\n className={className}\n />\n );\n }\n\n return <>{children}</>;\n};\n"],"mappings":";;;;;AA8BA,SAAS,EAAa,GAAwB;AAG5C,QAFI,aAAiB,QAAc,EAAM,UACrC,OAAO,KAAU,WAAiB,IAC/B;;AAGT,IAAa,KAAiC,EAC5C,cACA,YACA,aAAU,IACV,UACA,YACA,gBAAa,oBACb,qBACA,cACA,gBACA,sBACA,cACA,kBAEI,IAEA,kBAAC,OAAD;CAAK,WAAW,EAAG,kDAAkD,EAAU;WAC7E,kBAAC,GAAD,EAAS,WAAU,qCAAsC,CAAA;CACrD,CAAA,GAIN,IAEA,kBAAC,OAAD;CACE,WAAW,EACT,sIACA,EACD;WAJH;EAME,kBAAC,GAAD,EAAa,WAAU,oCAAqC,CAAA;EAC5D,kBAAC,MAAD;GAAI,WAAU;aAA4C;GAAmB,CAAA;EAC7E,kBAAC,KAAD;GAAG,WAAU;aAAwC,EAAa,EAAM;GAAK,CAAA;EAC5E,KACC,kBAAC,UAAD;GACE,MAAK;GACL,SAAS;GACT,WAAU;aACX;GAEQ,CAAA;EAEP;KAIN,IAEA,kBAAC,GAAD;CACE,OAAO;CACP,aAAa;CACb,MAAM;CACN,QAAQ;CACR,cAAc;CACH;CACX,CAAA,GAIC,kBAAA,GAAA,EAAG,aAAY,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { cn as e } from "../utils/cn.js";
|
|
2
|
+
import { severityLabels as t, severityPillClass as n } from "../utils/domain.js";
|
|
3
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
4
|
+
//#region src/adaptercloud/components/SeverityBadge.tsx
|
|
5
|
+
var i = ({ severity: i, className: a }) => /* @__PURE__ */ r("span", {
|
|
6
|
+
className: e("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium", n[i], a),
|
|
7
|
+
children: t[i]
|
|
8
|
+
});
|
|
9
|
+
//#endregion
|
|
10
|
+
export { i as SeverityBadge };
|
|
11
|
+
|
|
12
|
+
//# sourceMappingURL=SeverityBadge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SeverityBadge.js","names":[],"sources":["../../../src/adaptercloud/components/SeverityBadge.tsx"],"sourcesContent":["/**\n * Severity Badge Component\n * @module adaptercloud/components\n *\n * Renders an AdapterCloud severity (CRITICAL / HIGH / MEDIUM / LOW / INFO) as a\n * semantic-token pill.\n */\n\nimport type { FC } from 'react';\nimport { cn } from '../utils/cn';\nimport { severityLabels, severityPillClass } from '../utils/domain';\nimport type { AdaSeverity } from '../types';\n\ninterface SeverityBadgeProps {\n severity: AdaSeverity;\n className?: string;\n}\n\nexport const SeverityBadge: FC<SeverityBadgeProps> = ({ severity, className }) => (\n <span\n className={cn(\n 'inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium',\n severityPillClass[severity],\n className\n )}\n >\n {severityLabels[severity]}\n </span>\n);\n"],"mappings":";;;;AAkBA,IAAa,KAAyC,EAAE,aAAU,mBAChE,kBAAC,QAAD;CACE,WAAW,EACT,2EACA,EAAkB,IAClB,EACD;WAEA,EAAe;CACX,CAAA"}
|
|
@@ -1,62 +1,61 @@
|
|
|
1
1
|
import { cn as e } from "../utils/cn.js";
|
|
2
|
-
import {
|
|
2
|
+
import { humanizeEnum as t } from "../utils/domain.js";
|
|
3
|
+
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
3
4
|
//#region src/adaptercloud/components/StatusBadge.tsx
|
|
4
|
-
var
|
|
5
|
+
var i = {
|
|
5
6
|
success: "bg-status-success-bg-subtle text-status-success-text",
|
|
6
7
|
warning: "bg-status-warning-bg-subtle text-status-warning-text",
|
|
7
8
|
destructive: "bg-status-error-bg-subtle text-status-error-text",
|
|
8
9
|
secondary: "bg-bg-sunken text-text-secondary",
|
|
9
10
|
info: "bg-accent-blue-subtle text-accent-blue",
|
|
10
11
|
outline: "border border-border-seam text-text-primary"
|
|
11
|
-
},
|
|
12
|
+
}, a = {
|
|
12
13
|
success: "bg-status-success-text",
|
|
13
14
|
warning: "bg-status-warning-text",
|
|
14
15
|
destructive: "bg-status-error-text",
|
|
15
16
|
secondary: "bg-text-secondary",
|
|
16
17
|
info: "bg-accent-blue",
|
|
17
18
|
outline: "bg-text-secondary"
|
|
18
|
-
},
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
"
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
|
|
46
|
-
"
|
|
47
|
-
"
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
className: e("inline-flex items-center gap-1.5 rounded-full px-2.5 py-0.5 text-xs font-medium", r[d], l),
|
|
56
|
-
children: [/* @__PURE__ */ t("span", {
|
|
19
|
+
}, o = {
|
|
20
|
+
PUBLISHED: "success",
|
|
21
|
+
DRAFT: "secondary",
|
|
22
|
+
DEPRECATED: "warning",
|
|
23
|
+
ARCHIVED: "outline",
|
|
24
|
+
CONNECTED: "success",
|
|
25
|
+
DEGRADED: "warning",
|
|
26
|
+
PENDING: "info",
|
|
27
|
+
ERROR: "destructive",
|
|
28
|
+
DISABLED: "outline",
|
|
29
|
+
RECONCILED: "success",
|
|
30
|
+
DISCOVERED: "info",
|
|
31
|
+
DRIFTED: "warning",
|
|
32
|
+
ORPHANED: "warning",
|
|
33
|
+
DELETED: "outline",
|
|
34
|
+
OPEN: "destructive",
|
|
35
|
+
ACKNOWLEDGED: "warning",
|
|
36
|
+
RESOLVED: "success",
|
|
37
|
+
WAIVED: "outline",
|
|
38
|
+
DETECTED: "destructive",
|
|
39
|
+
REMEDIATED: "success",
|
|
40
|
+
IGNORED: "outline",
|
|
41
|
+
RUNNING: "info",
|
|
42
|
+
QUEUED: "secondary",
|
|
43
|
+
SUCCEEDED: "success",
|
|
44
|
+
FAILED: "destructive",
|
|
45
|
+
CANCELLED: "outline"
|
|
46
|
+
}, s = new Set([
|
|
47
|
+
"CONNECTED",
|
|
48
|
+
"RUNNING",
|
|
49
|
+
"QUEUED",
|
|
50
|
+
"PENDING"
|
|
51
|
+
]), c = ({ status: c, label: l, className: u }) => {
|
|
52
|
+
let d = c.toUpperCase(), f = o[d] ?? "secondary", p = s.has(d);
|
|
53
|
+
return /* @__PURE__ */ r("span", {
|
|
54
|
+
className: e("inline-flex items-center gap-1.5 rounded-full px-2.5 py-0.5 text-xs font-medium", i[f], u),
|
|
55
|
+
children: [/* @__PURE__ */ n("span", {
|
|
57
56
|
"aria-hidden": "true",
|
|
58
|
-
className: e("h-1.5 w-1.5 rounded-full",
|
|
59
|
-
}),
|
|
57
|
+
className: e("h-1.5 w-1.5 rounded-full", a[f], p && "motion-safe:animate-vc-glow-pulse")
|
|
58
|
+
}), l ?? t(c)]
|
|
60
59
|
});
|
|
61
60
|
};
|
|
62
61
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusBadge.js","names":[],"sources":["../../../src/adaptercloud/components/StatusBadge.tsx"],"sourcesContent":["/**\n * Status Badge Component\n * @module adaptercloud/components\n *\n * A colored badge based on status value with semantic color
|
|
1
|
+
{"version":3,"file":"StatusBadge.js","names":[],"sources":["../../../src/adaptercloud/components/StatusBadge.tsx"],"sourcesContent":["/**\n * Status Badge Component\n * @module adaptercloud/components\n *\n * A colored badge based on a domain status value with semantic-token color\n * mapping for AdapterCloud entity lifecycles (adapter / connection / resource /\n * violation / drift / sync-run). Accepts the raw enum value (e.g. `CONNECTED`)\n * and renders a humanized label.\n */\n\nimport type { FC } from 'react';\nimport { cn } from '../utils/cn';\nimport { humanizeEnum } from '../utils/domain';\n\ninterface StatusBadgeProps {\n status: string;\n /** Optional explicit label override (defaults to humanized status). */\n label?: string;\n className?: string;\n}\n\ntype BadgeVariant = 'success' | 'warning' | 'destructive' | 'secondary' | 'info' | 'outline';\n\nconst variantStyles: Record<BadgeVariant, string> = {\n success: 'bg-status-success-bg-subtle text-status-success-text',\n warning: 'bg-status-warning-bg-subtle text-status-warning-text',\n destructive: 'bg-status-error-bg-subtle text-status-error-text',\n secondary: 'bg-bg-sunken text-text-secondary',\n info: 'bg-accent-blue-subtle text-accent-blue',\n outline: 'border border-border-seam text-text-primary',\n};\n\nconst dotStyles: Record<BadgeVariant, string> = {\n success: 'bg-status-success-text',\n warning: 'bg-status-warning-text',\n destructive: 'bg-status-error-text',\n secondary: 'bg-text-secondary',\n info: 'bg-accent-blue',\n outline: 'bg-text-secondary',\n};\n\nconst statusVariantMap: Record<string, BadgeVariant> = {\n // Adapter status\n PUBLISHED: 'success',\n DRAFT: 'secondary',\n DEPRECATED: 'warning',\n ARCHIVED: 'outline',\n\n // Connection status\n CONNECTED: 'success',\n DEGRADED: 'warning',\n PENDING: 'info',\n ERROR: 'destructive',\n DISABLED: 'outline',\n\n // Resource state\n RECONCILED: 'success',\n DISCOVERED: 'info',\n DRIFTED: 'warning',\n ORPHANED: 'warning',\n DELETED: 'outline',\n\n // Violation status\n OPEN: 'destructive',\n ACKNOWLEDGED: 'warning',\n RESOLVED: 'success',\n WAIVED: 'outline',\n\n // Drift status\n DETECTED: 'destructive',\n REMEDIATED: 'success',\n IGNORED: 'outline',\n\n // Sync-run status\n RUNNING: 'info',\n QUEUED: 'secondary',\n SUCCEEDED: 'success',\n FAILED: 'destructive',\n CANCELLED: 'outline',\n};\n\n/** Statuses that represent a live/active state get a calm opacity pulse on the dot. */\nconst liveStatuses = new Set(['CONNECTED', 'RUNNING', 'QUEUED', 'PENDING']);\n\nexport const StatusBadge: FC<StatusBadgeProps> = ({ status, label, className }) => {\n const key = status.toUpperCase();\n const variant = statusVariantMap[key] ?? 'secondary';\n const isLive = liveStatuses.has(key);\n\n return (\n <span\n className={cn(\n 'inline-flex items-center gap-1.5 rounded-full px-2.5 py-0.5 text-xs font-medium',\n variantStyles[variant],\n className\n )}\n >\n <span\n aria-hidden=\"true\"\n className={cn(\n 'h-1.5 w-1.5 rounded-full',\n dotStyles[variant],\n isLive && 'motion-safe:animate-vc-glow-pulse'\n )}\n />\n {label ?? humanizeEnum(status)}\n </span>\n );\n};\n"],"mappings":";;;;AAuBA,IAAM,IAA8C;CAClD,SAAS;CACT,SAAS;CACT,aAAa;CACb,WAAW;CACX,MAAM;CACN,SAAS;CACV,EAEK,IAA0C;CAC9C,SAAS;CACT,SAAS;CACT,aAAa;CACb,WAAW;CACX,MAAM;CACN,SAAS;CACV,EAEK,IAAiD;CAErD,WAAW;CACX,OAAO;CACP,YAAY;CACZ,UAAU;CAGV,WAAW;CACX,UAAU;CACV,SAAS;CACT,OAAO;CACP,UAAU;CAGV,YAAY;CACZ,YAAY;CACZ,SAAS;CACT,UAAU;CACV,SAAS;CAGT,MAAM;CACN,cAAc;CACd,UAAU;CACV,QAAQ;CAGR,UAAU;CACV,YAAY;CACZ,SAAS;CAGT,SAAS;CACT,QAAQ;CACR,WAAW;CACX,QAAQ;CACR,WAAW;CACZ,EAGK,IAAe,IAAI,IAAI;CAAC;CAAa;CAAW;CAAU;CAAU,CAAC,EAE9D,KAAqC,EAAE,WAAQ,UAAO,mBAAgB;CACjF,IAAM,IAAM,EAAO,aAAa,EAC1B,IAAU,EAAiB,MAAQ,aACnC,IAAS,EAAa,IAAI,EAAI;AAEpC,QACE,kBAAC,QAAD;EACE,WAAW,EACT,mFACA,EAAc,IACd,EACD;YALH,CAOE,kBAAC,QAAD;GACE,eAAY;GACZ,WAAW,EACT,4BACA,EAAU,IACV,KAAU,oCACX;GACD,CAAA,EACD,KAAS,EAAa,EAAO,CACzB"}
|
|
@@ -9,69 +9,61 @@ function l() {
|
|
|
9
9
|
if (!e) throw Error("useAdapterCloud must be used within a AdapterCloudProvider");
|
|
10
10
|
return e;
|
|
11
11
|
}
|
|
12
|
-
var u = ({ children: t, basePath: r, currentUser: a, tenantId: l, workspaceId: u, apiGatewayUrl: d, authToken: f
|
|
13
|
-
let
|
|
14
|
-
|
|
15
|
-
}, [
|
|
16
|
-
basePath:
|
|
12
|
+
var u = ({ children: t, basePath: r, currentUser: a, tenantId: l, workspaceId: u, apiGatewayUrl: d, authToken: f }) => {
|
|
13
|
+
let p = o(), m = r || "/", h = n((t) => e(m, t), [m]), g = n((t) => {
|
|
14
|
+
p(e(m, t));
|
|
15
|
+
}, [m, p]), _ = i(() => ({
|
|
16
|
+
basePath: m,
|
|
17
17
|
navigate: void 0,
|
|
18
18
|
currentUser: a,
|
|
19
19
|
tenantId: l,
|
|
20
20
|
workspaceId: u,
|
|
21
21
|
apiGatewayUrl: d,
|
|
22
22
|
authToken: f,
|
|
23
|
-
onCartSelect: p,
|
|
24
|
-
onOrderSelect: m,
|
|
25
23
|
isStandalone: !0,
|
|
26
|
-
navigateTo:
|
|
27
|
-
getPath:
|
|
24
|
+
navigateTo: g,
|
|
25
|
+
getPath: h
|
|
28
26
|
}), [
|
|
29
|
-
|
|
27
|
+
m,
|
|
30
28
|
a,
|
|
31
29
|
l,
|
|
32
30
|
u,
|
|
33
31
|
d,
|
|
34
32
|
f,
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
v,
|
|
38
|
-
_
|
|
33
|
+
g,
|
|
34
|
+
h
|
|
39
35
|
]);
|
|
40
36
|
return /* @__PURE__ */ s(c.Provider, {
|
|
41
|
-
value:
|
|
37
|
+
value: _,
|
|
42
38
|
children: t
|
|
43
39
|
});
|
|
44
|
-
}, d = ({ children: t, basePath: r, navigate: a, currentUser: o, tenantId: l, workspaceId: u, apiGatewayUrl: d, authToken: f
|
|
45
|
-
let
|
|
46
|
-
a(e(
|
|
47
|
-
}, [
|
|
48
|
-
basePath:
|
|
40
|
+
}, d = ({ children: t, basePath: r, navigate: a, currentUser: o, tenantId: l, workspaceId: u, apiGatewayUrl: d, authToken: f }) => {
|
|
41
|
+
let p = r || "/", m = n((t) => e(p, t), [p]), h = n((t) => {
|
|
42
|
+
a(e(p, t));
|
|
43
|
+
}, [p, a]), g = i(() => ({
|
|
44
|
+
basePath: p,
|
|
49
45
|
navigate: a,
|
|
50
46
|
currentUser: o,
|
|
51
47
|
tenantId: l,
|
|
52
48
|
workspaceId: u,
|
|
53
49
|
apiGatewayUrl: d,
|
|
54
50
|
authToken: f,
|
|
55
|
-
onCartSelect: p,
|
|
56
|
-
onOrderSelect: m,
|
|
57
51
|
isStandalone: !1,
|
|
58
|
-
navigateTo:
|
|
59
|
-
getPath:
|
|
52
|
+
navigateTo: h,
|
|
53
|
+
getPath: m
|
|
60
54
|
}), [
|
|
61
|
-
|
|
55
|
+
p,
|
|
62
56
|
a,
|
|
63
57
|
o,
|
|
64
58
|
l,
|
|
65
59
|
u,
|
|
66
60
|
d,
|
|
67
61
|
f,
|
|
68
|
-
|
|
69
|
-
m
|
|
70
|
-
_,
|
|
71
|
-
g
|
|
62
|
+
h,
|
|
63
|
+
m
|
|
72
64
|
]);
|
|
73
65
|
return /* @__PURE__ */ s(c.Provider, {
|
|
74
|
-
value:
|
|
66
|
+
value: g,
|
|
75
67
|
children: t
|
|
76
68
|
});
|
|
77
69
|
}, f = (e) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdapterCloudContext.js","names":[],"sources":["../../../src/adaptercloud/context/AdapterCloudContext.tsx"],"sourcesContent":["/**\n * AdapterCloud Context Provider\n * @module adaptercloud/context\n */\n\nimport type { FC, PropsWithChildren } from 'react';\nimport { createContext, useContext, useMemo, useCallback } from 'react';\nimport { MemoryRouter, useNavigate as useRouterNavigate } from 'react-router-dom';\nimport type { AdapterCloudRootProps } from '../types';\nimport { joinPath } from '../utils/navigation';\n\n// ============================================================================\n// Context\n// ============================================================================\n\ninterface AdapterCloudContextValue
|
|
1
|
+
{"version":3,"file":"AdapterCloudContext.js","names":[],"sources":["../../../src/adaptercloud/context/AdapterCloudContext.tsx"],"sourcesContent":["/**\n * AdapterCloud Context Provider\n * @module adaptercloud/context\n *\n * Provides the host-passed integration props (basePath / currentUser /\n * apiGatewayUrl / tenantId / workspaceId / authToken) plus navigation helpers to\n * the AdapterCloud pages. Standalone mode wraps a MemoryRouter; integrated mode\n * uses the shell-provided `navigate`.\n */\n\nimport type { FC, PropsWithChildren } from 'react';\nimport { createContext, useContext, useMemo, useCallback } from 'react';\nimport { MemoryRouter, useNavigate as useRouterNavigate } from 'react-router-dom';\nimport type { AdapterCloudRootProps } from '../types';\nimport { joinPath } from '../utils/navigation';\n\n// ============================================================================\n// Context\n// ============================================================================\n\ninterface AdapterCloudContextValue\n extends Omit<AdapterCloudRootProps, 'registerNavItems' | 'registerFooterItems' | 'navigate'> {\n isStandalone: boolean;\n /** Shell's navigate function (only available in integrated mode) */\n navigate?: (path: string) => void;\n /** Navigate to a path relative to basePath */\n navigateTo: (relativePath: string) => void;\n /** Get the full path for a relative path */\n getPath: (relativePath: string) => string;\n}\n\nconst AdapterCloudContext = createContext<AdapterCloudContextValue | null>(null);\n\n// ============================================================================\n// Hook\n// ============================================================================\n\nexport function useAdapterCloud(): AdapterCloudContextValue {\n const context = useContext(AdapterCloudContext);\n if (!context) {\n throw new Error('useAdapterCloud must be used within a AdapterCloudProvider');\n }\n return context;\n}\n\n// ============================================================================\n// Provider Component\n// ============================================================================\n\ntype ProviderProps = Omit<AdapterCloudRootProps, 'registerNavItems' | 'registerFooterItems'> & {\n isStandalone: boolean;\n};\n\n/** Provider for standalone mode (has access to MemoryRouter) */\nconst StandaloneProviderInner: FC<PropsWithChildren<ProviderProps>> = ({\n children,\n basePath,\n currentUser,\n tenantId,\n workspaceId,\n apiGatewayUrl,\n authToken,\n}) => {\n const routerNavigate = useRouterNavigate();\n const effectiveBasePath = basePath || '/';\n\n const getPath = useCallback(\n (relativePath: string) => joinPath(effectiveBasePath, relativePath),\n [effectiveBasePath]\n );\n\n const navigateTo = useCallback(\n (relativePath: string) => {\n const fullPath = joinPath(effectiveBasePath, relativePath);\n routerNavigate(fullPath);\n },\n [effectiveBasePath, routerNavigate]\n );\n\n const contextValue = useMemo<AdapterCloudContextValue>(\n () => ({\n basePath: effectiveBasePath,\n navigate: undefined,\n currentUser,\n tenantId,\n workspaceId,\n apiGatewayUrl,\n authToken,\n isStandalone: true,\n navigateTo,\n getPath,\n }),\n [\n effectiveBasePath,\n currentUser,\n tenantId,\n workspaceId,\n apiGatewayUrl,\n authToken,\n navigateTo,\n getPath,\n ]\n );\n\n return (\n <AdapterCloudContext.Provider value={contextValue}>{children}</AdapterCloudContext.Provider>\n );\n};\n\n/** Provider for integrated mode (shell provides navigate) */\nconst IntegratedProviderInner: FC<\n PropsWithChildren<ProviderProps & { navigate: (path: string) => void }>\n> = ({ children, basePath, navigate, currentUser, tenantId, workspaceId, apiGatewayUrl, authToken }) => {\n const effectiveBasePath = basePath || '/';\n\n const getPath = useCallback(\n (relativePath: string) => joinPath(effectiveBasePath, relativePath),\n [effectiveBasePath]\n );\n\n const navigateTo = useCallback(\n (relativePath: string) => {\n const fullPath = joinPath(effectiveBasePath, relativePath);\n navigate(fullPath);\n },\n [effectiveBasePath, navigate]\n );\n\n const contextValue = useMemo<AdapterCloudContextValue>(\n () => ({\n basePath: effectiveBasePath,\n navigate,\n currentUser,\n tenantId,\n workspaceId,\n apiGatewayUrl,\n authToken,\n isStandalone: false,\n navigateTo,\n getPath,\n }),\n [\n effectiveBasePath,\n navigate,\n currentUser,\n tenantId,\n workspaceId,\n apiGatewayUrl,\n authToken,\n navigateTo,\n getPath,\n ]\n );\n\n return (\n <AdapterCloudContext.Provider value={contextValue}>{children}</AdapterCloudContext.Provider>\n );\n};\n\nexport const AdapterCloudProvider: FC<PropsWithChildren<AdapterCloudRootProps>> = (props) => {\n const { children, navigate } = props;\n // Standalone mode: no navigate function provided (MFE manages its own router)\n // Integrated mode: navigate function provided by shell (shell provides router)\n const isStandalone = !navigate;\n\n // Standalone mode: wrap in MemoryRouter\n if (isStandalone) {\n return (\n <MemoryRouter>\n <StandaloneProviderInner {...props} isStandalone={true}>\n {children}\n </StandaloneProviderInner>\n </MemoryRouter>\n );\n }\n\n // Integrated mode: shell provides router\n return (\n <IntegratedProviderInner {...props} navigate={navigate} isStandalone={false}>\n {children}\n </IntegratedProviderInner>\n );\n};\n"],"mappings":";;;;;AA+BA,IAAM,IAAsB,EAA+C,KAAK;AAMhF,SAAgB,IAA4C;CAC1D,IAAM,IAAU,EAAW,EAAoB;AAC/C,KAAI,CAAC,EACH,OAAU,MAAM,6DAA6D;AAE/E,QAAO;;AAYT,IAAM,KAAiE,EACrE,aACA,aACA,gBACA,aACA,gBACA,kBACA,mBACI;CACJ,IAAM,IAAiB,GAAmB,EACpC,IAAoB,KAAY,KAEhC,IAAU,GACb,MAAyB,EAAS,GAAmB,EAAa,EACnE,CAAC,EAAkB,CACpB,EAEK,IAAa,GAChB,MAAyB;AAExB,IADiB,EAAS,GAAmB,EAAa,CAClC;IAE1B,CAAC,GAAmB,EAAe,CACpC,EAEK,IAAe,SACZ;EACL,UAAU;EACV,UAAU,KAAA;EACV;EACA;EACA;EACA;EACA;EACA,cAAc;EACd;EACA;EACD,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AAED,QACE,kBAAC,EAAoB,UAArB;EAA8B,OAAO;EAAe;EAAwC,CAAA;GAK1F,KAED,EAAE,aAAU,aAAU,aAAU,gBAAa,aAAU,gBAAa,kBAAe,mBAAgB;CACtG,IAAM,IAAoB,KAAY,KAEhC,IAAU,GACb,MAAyB,EAAS,GAAmB,EAAa,EACnE,CAAC,EAAkB,CACpB,EAEK,IAAa,GAChB,MAAyB;AAExB,IADiB,EAAS,GAAmB,EAAa,CACxC;IAEpB,CAAC,GAAmB,EAAS,CAC9B,EAEK,IAAe,SACZ;EACL,UAAU;EACV;EACA;EACA;EACA;EACA;EACA;EACA,cAAc;EACd;EACA;EACD,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AAED,QACE,kBAAC,EAAoB,UAArB;EAA8B,OAAO;EAAe;EAAwC,CAAA;GAInF,KAAsE,MAAU;CAC3F,IAAM,EAAE,aAAU,gBAAa;AAiB/B,QAdsB,IAepB,kBAAC,GAAD;EAAyB,GAAI;EAAiB;EAAU,cAAc;EACnE;EACuB,CAAA,GAZxB,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;EAAyB,GAAI;EAAO,cAAc;EAC/C;EACuB,CAAA,EACb,CAAA"}
|