@burdenoff/microfe-movethewheels 2026.1031.3 → 2026.1031.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/MoveTheWheelsRoot.js +136 -127
  2. package/dist/MoveTheWheelsRoutes.js +143 -135
  3. package/dist/components/DocumentsCard.js +11 -11
  4. package/dist/components/ProofOfDeliveryCard.js +13 -13
  5. package/dist/components/ShipmentRiskDialog.js +24 -24
  6. package/dist/components/ShippingQuoteResults.js +46 -46
  7. package/dist/components/TrackingAlertList.js +17 -17
  8. package/dist/generated/tracking-quality-operations.d.ts +56 -0
  9. package/dist/hooks/useOrderDispatch.js +17 -17
  10. package/dist/movethewheels/pages/SettingsPage.d.ts +1 -0
  11. package/dist/movethewheels/providers/ModuleSettingsProvider.d.ts +17 -0
  12. package/dist/movethewheels/utils/formatters.d.ts +23 -3
  13. package/dist/movethewheels/utils/moduleSettings.d.ts +52 -0
  14. package/dist/node_modules/lucide-react/dist/esm/icons/bell.js +11 -0
  15. package/dist/node_modules/lucide-react/dist/esm/icons/key-round.js +14 -0
  16. package/dist/node_modules/lucide-react/dist/esm/icons/plug.js +22 -0
  17. package/dist/node_modules/lucide-react/dist/esm/icons/rotate-ccw.js +11 -0
  18. package/dist/node_modules/lucide-react/dist/esm/icons/settings.js +13 -0
  19. package/dist/pages/AnalyticsPage.js +27 -27
  20. package/dist/pages/CreateOrderPage.js +340 -317
  21. package/dist/pages/CustomerDetailsPage.js +246 -246
  22. package/dist/pages/CustomersPage.js +19 -19
  23. package/dist/pages/DashboardPage.js +24 -24
  24. package/dist/pages/DeliveryCapturePage.js +74 -74
  25. package/dist/pages/DriverDetailsPage.js +337 -337
  26. package/dist/pages/DriversPage.js +26 -26
  27. package/dist/pages/FinancePage.js +26 -26
  28. package/dist/pages/InventoryPage.js +28 -28
  29. package/dist/pages/LiveTrackingPage.js +108 -108
  30. package/dist/pages/MarketplacePage.js +44 -44
  31. package/dist/pages/OrderDetailsPage.js +306 -306
  32. package/dist/pages/OrdersListPage.js +27 -27
  33. package/dist/pages/ProductDetailsPage.js +89 -89
  34. package/dist/pages/ProductsPage.js +73 -73
  35. package/dist/pages/RouteDetailsPage.js +282 -285
  36. package/dist/pages/RoutesPage.js +78 -78
  37. package/dist/pages/SettingsPage.js +459 -0
  38. package/dist/pages/TrackingPage.js +41 -41
  39. package/dist/pages/VehicleDetailsPage.js +207 -207
  40. package/dist/pages/VehiclesPage.js +17 -16
  41. package/dist/pages/WarehouseDetailsPage.js +132 -132
  42. package/dist/providers/ModuleSettingsProvider.js +74 -0
  43. package/dist/utils/formatters.js +53 -26
  44. package/dist/utils/moduleSettings.js +132 -0
  45. package/package.json +3 -2
  46. package/src/generated/tracking-quality-operations.ts +62 -0
  47. package/src/movethewheels/MoveTheWheelsRoot.tsx +18 -5
  48. package/src/movethewheels/MoveTheWheelsRoutes.tsx +19 -4
  49. package/src/movethewheels/pages/CreateOrderPage.tsx +38 -6
  50. package/src/movethewheels/pages/ProductsPage.tsx +2 -2
  51. package/src/movethewheels/pages/RouteDetailsPage.tsx +3 -6
  52. package/src/movethewheels/pages/RoutesPage.tsx +2 -2
  53. package/src/movethewheels/pages/SettingsPage.tsx +516 -0
  54. package/src/movethewheels/pages/VehicleDetailsPage.tsx +4 -2
  55. package/src/movethewheels/pages/VehiclesPage.tsx +2 -1
  56. package/src/movethewheels/providers/ModuleSettingsProvider.tsx +133 -0
  57. package/src/movethewheels/utils/formatters.ts +69 -10
  58. package/src/movethewheels/utils/moduleSettings.ts +224 -0
  59. package/dist/movethewheels/pages/AIAssistantPage.d.ts +0 -22
  60. package/dist/node_modules/lucide-react/dist/esm/icons/message-circle.js +0 -8
  61. package/dist/node_modules/lucide-react/dist/esm/icons/wallet.js +0 -11
  62. package/dist/pages/AIAssistantPage.js +0 -81
  63. package/src/movethewheels/pages/AIAssistantPage.tsx +0 -123
@@ -1,123 +0,0 @@
1
- /**
2
- * AI Operations Page
3
- *
4
- * This page previously shipped a second, fabricated chat surface
5
- * (`useAssistant` → `Query.assistantInsights`) whose "capabilities" list
6
- * advertised route optimization, demand forecasting, fleet analysis, cost
7
- * optimization and natural-language queries — none of which the backend
8
- * implemented; every question routed to a fixed template built from four
9
- * Prisma counts. See BOFF-3897.
10
- *
11
- * The real conversational assistant is the shared `AssistantWidget`, already
12
- * mounted globally in the app shell (`AppShell.tsx`) on the sandbox
13
- * transport — this page must never contain a second chat box.
14
- *
15
- * The full "AI Operations" surface this page is meant to become — a model
16
- * picker, an agent-activity feed reading the shared AgentRun ledger,
17
- * accept/reject decision cards for AI dispatch proposals, and per-workspace
18
- * AI credit visibility — depends on the shared multi-model AI gateway
19
- * (BOFF-3601), which has not landed yet. Until it does, this page shows an
20
- * honest roadmap state instead of fabricating any of that content.
21
- */
22
-
23
- import { Bot, MessageCircle, Activity, ShieldCheck, Wallet } from 'lucide-react';
24
- import { PageLayout, EmptyState } from '../components/PageLayout';
25
- import { Card, CardContent, CardHeader, CardTitle } from '../components/ui';
26
- import { GlassCard, PagePurpose } from '@burdenoff/fe-libs/ui';
27
- import { useTr } from '../hooks';
28
-
29
- export default function AIAssistantPage() {
30
- const tr = useTr();
31
-
32
- const roadmapItems = [
33
- {
34
- icon: Activity,
35
- title: tr('movethewheels.ai.roadmap.agentActivity.title', 'Agent activity feed'),
36
- description: tr(
37
- 'movethewheels.ai.roadmap.agentActivity.description',
38
- 'A live log of what the AI decided, on which shipments, with trigger, model, latency and cost — so an autonomous run is never a black box.'
39
- ),
40
- },
41
- {
42
- icon: ShieldCheck,
43
- title: tr('movethewheels.ai.roadmap.dispatchDecisionCards.title', 'Dispatch decision cards'),
44
- description: tr(
45
- 'movethewheels.ai.roadmap.dispatchDecisionCards.description',
46
- 'Proposed driver/vehicle assignments and carrier recommendations with rationale and confidence, requiring an explicit accept or reject before anything is written.'
47
- ),
48
- },
49
- {
50
- icon: Wallet,
51
- title: tr('movethewheels.ai.roadmap.aiCreditVisibility.title', 'AI credit visibility'),
52
- description: tr(
53
- 'movethewheels.ai.roadmap.aiCreditVisibility.description',
54
- 'Per-workspace AI spend for admins, so cost is visible before the invoice.'
55
- ),
56
- },
57
- ];
58
-
59
- return (
60
- <PageLayout
61
- title={tr('movethewheels.ai.title', 'AI Operations')}
62
- subtitle={tr('movethewheels.ai.subtitle', 'What the AI is doing on your workspace, and why')}
63
- icon={<Bot size={24} />}
64
- >
65
- <PagePurpose icon={<Bot size={18} />}>
66
- {tr(
67
- 'movethewheels.ai.purpose',
68
- 'This page will surface AI-driven dispatch decisions and their outcomes once the shared AI runtime lands. It does not host a chat box — chat with your live operational data is always available from the assistant icon anywhere in the app.'
69
- )}
70
- </PagePurpose>
71
-
72
- <GlassCard treatment="glass" className="p-4">
73
- <div className="flex items-start gap-3">
74
- <MessageCircle size={20} className="text-primary flex-shrink-0 mt-0.5" />
75
- <div>
76
- <p className="text-sm font-medium text-text-primary">
77
- {tr(
78
- 'movethewheels.ai.callout.title',
79
- 'Looking to ask a question about your operations?'
80
- )}
81
- </p>
82
- <p className="text-sm text-text-secondary mt-1">
83
- {tr(
84
- 'movethewheels.ai.callout.description',
85
- 'Open the assistant from its icon in the corner of the screen — it answers from your live orders, shipments, fleet and inventory data, and it is the only chat surface in this product.'
86
- )}
87
- </p>
88
- </div>
89
- </div>
90
- </GlassCard>
91
-
92
- <Card>
93
- <CardHeader>
94
- <CardTitle>{tr('movethewheels.ai.roadmap.title', 'On the roadmap')}</CardTitle>
95
- </CardHeader>
96
- <CardContent>
97
- <EmptyState
98
- illustration="empty-agents"
99
- title={tr(
100
- 'movethewheels.ai.emptyState.title',
101
- "Autonomous dispatch operations aren't live yet"
102
- )}
103
- description={tr(
104
- 'movethewheels.ai.emptyState.description',
105
- "Autonomous dispatch isn't available yet — these capabilities are still in development. Nothing below is available today."
106
- )}
107
- />
108
- <ul className="mt-4 space-y-4">
109
- {roadmapItems.map((item) => (
110
- <li key={item.title} className="flex items-start gap-3">
111
- <item.icon size={18} className="text-text-secondary flex-shrink-0 mt-0.5" />
112
- <div>
113
- <p className="text-sm font-medium text-text-primary">{item.title}</p>
114
- <p className="text-xs text-text-secondary">{item.description}</p>
115
- </div>
116
- </li>
117
- ))}
118
- </ul>
119
- </CardContent>
120
- </Card>
121
- </PageLayout>
122
- );
123
- }