@ashlr/hub 3.11.3 → 3.12.0
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/CHANGELOG.md +104 -0
- package/README.md +44 -18
- package/dist/authority-surface.json +74 -59
- package/dist/build-identity.json +2 -2
- package/dist/cli/authority.d.ts +39 -0
- package/dist/cli/authority.js +222 -55
- package/dist/cli/authority.js.map +1 -1
- package/dist/cli/help.js +1 -1
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/verse.d.ts +3 -0
- package/dist/cli/verse.js +10 -0
- package/dist/cli/verse.js.map +1 -1
- package/dist/core/authority/trust-roots.js +7 -1
- package/dist/core/authority/trust-roots.js.map +1 -1
- package/dist/core/authority/types.d.ts +2 -2
- package/dist/core/cloud/cloud-api.js +1 -1
- package/dist/core/cloud/cloud-api.js.map +1 -1
- package/dist/core/cloud/delivery-contract.d.ts +1 -1
- package/dist/core/cloud/delivery-contract.js +25 -15
- package/dist/core/cloud/delivery-contract.js.map +1 -1
- package/dist/core/cloud/store.js +6 -0
- package/dist/core/cloud/store.js.map +1 -1
- package/dist/core/cloud/tracker.d.ts +2 -0
- package/dist/core/cloud/tracker.js +140 -37
- package/dist/core/cloud/tracker.js.map +1 -1
- package/dist/core/cloud/types.d.ts +9 -1
- package/dist/core/cloud/types.js.map +1 -1
- package/dist/core/comms/dispatch.d.ts +5 -0
- package/dist/core/comms/dispatch.js +12 -1
- package/dist/core/comms/dispatch.js.map +1 -1
- package/dist/core/comms/requests.d.ts +27 -1
- package/dist/core/comms/requests.js +50 -1
- package/dist/core/comms/requests.js.map +1 -1
- package/dist/core/daemon/loop.d.ts +14 -0
- package/dist/core/daemon/loop.js +35 -0
- package/dist/core/daemon/loop.js.map +1 -1
- package/dist/core/fabric/claude-usage.js +23 -1
- package/dist/core/fabric/claude-usage.js.map +1 -1
- package/dist/core/fleet/dispatch-router.d.ts +7 -0
- package/dist/core/fleet/dispatch-router.js +4 -1
- package/dist/core/fleet/dispatch-router.js.map +1 -1
- package/dist/core/fleet/tick-hooks-live.d.ts +5 -1
- package/dist/core/fleet/tick-hooks-live.js +10 -1
- package/dist/core/fleet/tick-hooks-live.js.map +1 -1
- package/dist/core/local-runtime/llama/config.d.ts +14 -0
- package/dist/core/local-runtime/llama/config.js +20 -2
- package/dist/core/local-runtime/llama/config.js.map +1 -1
- package/dist/core/local-runtime/llama/process.d.ts +19 -0
- package/dist/core/local-runtime/llama/process.js +67 -17
- package/dist/core/local-runtime/llama/process.js.map +1 -1
- package/dist/core/local-runtime/llama/supervisor.js +14 -3
- package/dist/core/local-runtime/llama/supervisor.js.map +1 -1
- package/dist/core/observability/rollup.d.ts +12 -0
- package/dist/core/observability/rollup.js +37 -2
- package/dist/core/observability/rollup.js.map +1 -1
- package/dist/core/observability/usage-source.js +49 -1
- package/dist/core/observability/usage-source.js.map +1 -1
- package/dist/core/resources/connection-monitor.js +47 -4
- package/dist/core/resources/connection-monitor.js.map +1 -1
- package/dist/core/resources/engineering-mission-store.d.ts +1 -1
- package/dist/core/routing/headroom.js +7 -2
- package/dist/core/routing/headroom.js.map +1 -1
- package/dist/core/routing/router.d.ts +48 -0
- package/dist/core/routing/router.js +129 -13
- package/dist/core/routing/router.js.map +1 -1
- package/dist/core/run/best-of-n.d.ts +7 -0
- package/dist/core/run/best-of-n.js +3 -0
- package/dist/core/run/best-of-n.js.map +1 -1
- package/dist/core/run/harness-dispatch.d.ts +147 -0
- package/dist/core/run/harness-dispatch.js +234 -0
- package/dist/core/run/harness-dispatch.js.map +1 -0
- package/dist/core/run/orchestrator.js +3 -0
- package/dist/core/run/orchestrator.js.map +1 -1
- package/dist/core/run/provider-client.d.ts +8 -0
- package/dist/core/run/provider-client.js +4 -0
- package/dist/core/run/provider-client.js.map +1 -1
- package/dist/core/run/sandboxed-engine.d.ts +8 -0
- package/dist/core/run/sandboxed-engine.js +60 -7
- package/dist/core/run/sandboxed-engine.js.map +1 -1
- package/dist/core/types.d.ts +14 -0
- package/dist/core/types.js.map +1 -1
- package/dist/core/universe/builtins/preparation/manifest.json +1 -1
- package/dist/core/universe/builtins/preparation/preparation-bridge.mjs +188 -6
- package/dist/core/universe/builtins/preparation/preparation-verification-fixtures.mjs +187 -5
- package/dist/core/universe/firm-demo.d.ts +1 -1
- package/dist/core/universe/firm-graph.d.ts +2 -2
- package/dist/core/util/scrub.js +16 -3
- package/dist/core/util/scrub.js.map +1 -1
- package/dist/core/verse/accounts.d.ts +9 -1
- package/dist/core/verse/accounts.js +52 -11
- package/dist/core/verse/accounts.js.map +1 -1
- package/dist/core/verse/apps-api.d.ts +12 -0
- package/dist/core/verse/apps-api.js +22 -4
- package/dist/core/verse/apps-api.js.map +1 -1
- package/dist/core/verse/apps.js +22 -12
- package/dist/core/verse/apps.js.map +1 -1
- package/dist/core/verse/local-models.js +3 -7
- package/dist/core/verse/local-models.js.map +1 -1
- package/dist/core/verse/model-display-name.d.ts +34 -0
- package/dist/core/verse/model-display-name.js +125 -0
- package/dist/core/verse/model-display-name.js.map +1 -0
- package/dist/core/verse/seats.d.ts +11 -2
- package/dist/core/verse/seats.js +42 -18
- package/dist/core/verse/seats.js.map +1 -1
- package/dist/core/verse/transient-events.d.ts +21 -0
- package/dist/core/verse/transient-events.js +12 -0
- package/dist/core/verse/transient-events.js.map +1 -0
- package/dist/core/verse/types.d.ts +6 -13
- package/dist/core/verse/types.js +5 -36
- package/dist/core/verse/types.js.map +1 -1
- package/dist/core/web/public/next/assets/ActionMenu-B4-39f2S.js +2 -0
- package/dist/core/web/public/next/assets/{ActionMenu-FxXeRbPx.js.map → ActionMenu-B4-39f2S.js.map} +1 -1
- package/dist/core/web/public/next/assets/Advanced-B-LqYXvd.js +2 -0
- package/dist/core/web/public/next/assets/Advanced-B-LqYXvd.js.map +1 -0
- package/dist/core/web/public/next/assets/App-E2zCDRxm.js +7 -0
- package/dist/core/web/public/next/assets/App-E2zCDRxm.js.map +1 -0
- package/dist/core/web/public/next/assets/AppsSection-8wXPPhZb.js +2 -0
- package/dist/core/web/public/next/assets/AppsSection-8wXPPhZb.js.map +1 -0
- package/dist/core/web/public/next/assets/AreaTrend-BFimExYn.js +2 -0
- package/dist/core/web/public/next/assets/{AreaTrend-CDxrQU4b.js.map → AreaTrend-BFimExYn.js.map} +1 -1
- package/dist/core/web/public/next/assets/AutonomyOffState-B5eEkmiz.js +2 -0
- package/dist/core/web/public/next/assets/AutonomyOffState-B5eEkmiz.js.map +1 -0
- package/dist/core/web/public/next/assets/AutonomyOffState-DmbE71vI.css +1 -0
- package/dist/core/web/public/next/assets/AutonomySection-B46igJKR.js +2 -0
- package/dist/core/web/public/next/assets/{AutonomySection-DuQkHGD_.js.map → AutonomySection-B46igJKR.js.map} +1 -1
- package/dist/core/web/public/next/assets/BranchBar-BRkrEQGs.js +2 -0
- package/dist/core/web/public/next/assets/{BranchBar-CLsvOcyK.js.map → BranchBar-BRkrEQGs.js.map} +1 -1
- package/dist/core/web/public/next/assets/BudgetControl-T_RjPrw9.js +2 -0
- package/dist/core/web/public/next/assets/{BudgetControl-TL3FeZ1D.js.map → BudgetControl-T_RjPrw9.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Button-HHXgoXGr.js → Button-BhO-WKPp.js} +2 -2
- package/dist/core/web/public/next/assets/{Button-HHXgoXGr.js.map → Button-BhO-WKPp.js.map} +1 -1
- package/dist/core/web/public/next/assets/CapacityStrip-CkFz5vq2.js +2 -0
- package/dist/core/web/public/next/assets/{CapacityStrip-qReu0RaF.js.map → CapacityStrip-CkFz5vq2.js.map} +1 -1
- package/dist/core/web/public/next/assets/{useChartWidth-BW6SwYIK.css → ChartFrame-BVuBe6RP.css} +1 -1
- package/dist/core/web/public/next/assets/ChartFrame-SygZ7B3x.js +2 -0
- package/dist/core/web/public/next/assets/ChartFrame-SygZ7B3x.js.map +1 -0
- package/dist/core/web/public/next/assets/ChatSection-D6WybBpB.js +3 -0
- package/dist/core/web/public/next/assets/ChatSection-D6WybBpB.js.map +1 -0
- package/dist/core/web/public/next/assets/CloudBudgetForm-Bd91iStN.js +2 -0
- package/dist/core/web/public/next/assets/CloudBudgetForm-Bd91iStN.js.map +1 -0
- package/dist/core/web/public/next/assets/CommandPalette-B6SgDJH-.js +2 -0
- package/dist/core/web/public/next/assets/CommandPalette-B6SgDJH-.js.map +1 -0
- package/dist/core/web/public/next/assets/CommandSection-CvAVd1w4.css +1 -0
- package/dist/core/web/public/next/assets/CommandSection-DgMGoepd.js +2 -0
- package/dist/core/web/public/next/assets/CommandSection-DgMGoepd.js.map +1 -0
- package/dist/core/web/public/next/assets/ConfirmDialog-Bv4hdK2T.js +2 -0
- package/dist/core/web/public/next/assets/{ConfirmDialog-DLrLKM0c.js.map → ConfirmDialog-Bv4hdK2T.js.map} +1 -1
- package/dist/core/web/public/next/assets/DeleteChatDialog-CH1Ix8Eh.js +2 -0
- package/dist/core/web/public/next/assets/DeleteChatDialog-CH1Ix8Eh.js.map +1 -0
- package/dist/core/web/public/next/assets/Dialog-BSsIFNqD.js +2 -0
- package/dist/core/web/public/next/assets/{Dialog-BS9Dxi3G.js.map → Dialog-BSsIFNqD.js.map} +1 -1
- package/dist/core/web/public/next/assets/DiffPane-BpNuJmth.js +2 -0
- package/dist/core/web/public/next/assets/{DiffPane-TOmUf3b2.js.map → DiffPane-BpNuJmth.js.map} +1 -1
- package/dist/core/web/public/next/assets/DiffViewer-CJarUvs0.js +2 -0
- package/dist/core/web/public/next/assets/{DiffViewer-BpH56302.js.map → DiffViewer-CJarUvs0.js.map} +1 -1
- package/dist/core/web/public/next/assets/DockHost-DW9q0NdR.js +2 -0
- package/dist/core/web/public/next/assets/DockHost-DW9q0NdR.js.map +1 -0
- package/dist/core/web/public/next/assets/{EmptyState-BqR5YAmf.js → EmptyState-DPrd2aak.js} +2 -2
- package/dist/core/web/public/next/assets/{EmptyState-BqR5YAmf.js.map → EmptyState-DPrd2aak.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Epistemic-dhvDTwAZ.js → Epistemic-D7MxSmED.js} +2 -2
- package/dist/core/web/public/next/assets/{Epistemic-dhvDTwAZ.js.map → Epistemic-D7MxSmED.js.map} +1 -1
- package/dist/core/web/public/next/assets/FleetSection-BdZN6rGS.js +3 -0
- package/dist/core/web/public/next/assets/FleetSection-BdZN6rGS.js.map +1 -0
- package/dist/core/web/public/next/assets/Funnel-BeNQZWv2.js +2 -0
- package/dist/core/web/public/next/assets/{Funnel-D2u7Wlzc.js.map → Funnel-BeNQZWv2.js.map} +1 -1
- package/dist/core/web/public/next/assets/GearTray-CIPtzeIx.js +2 -0
- package/dist/core/web/public/next/assets/{GearTray-Cb2npoxM.js.map → GearTray-CIPtzeIx.js.map} +1 -1
- package/dist/core/web/public/next/assets/GrowthSection-iiQg6wvK.js +2 -0
- package/dist/core/web/public/next/assets/{GrowthSection-C5aDPs8B.js.map → GrowthSection-iiQg6wvK.js.map} +1 -1
- package/dist/core/web/public/next/assets/HandoffDialog-DrQ6ofuy.js +2 -0
- package/dist/core/web/public/next/assets/{HandoffDialog-BF3AYg-X.js.map → HandoffDialog-DrQ6ofuy.js.map} +1 -1
- package/dist/core/web/public/next/assets/Input-C0MQxEM6.js +2 -0
- package/dist/core/web/public/next/assets/{Input-B5dmGLZx.js.map → Input-C0MQxEM6.js.map} +1 -1
- package/dist/core/web/public/next/assets/LeaderCard-BRr3_yE-.js +2 -0
- package/dist/core/web/public/next/assets/LeaderCard-BRr3_yE-.js.map +1 -0
- package/dist/core/web/public/next/assets/MatrixHeatmap-DZvZeWXL.js +2 -0
- package/dist/core/web/public/next/assets/{MatrixHeatmap-BgEUs2Eu.js.map → MatrixHeatmap-DZvZeWXL.js.map} +1 -1
- package/dist/core/web/public/next/assets/McpSection-BRuCcTjT.js +2 -0
- package/dist/core/web/public/next/assets/{McpSection-DZkiOuoq.js.map → McpSection-BRuCcTjT.js.map} +1 -1
- package/dist/core/web/public/next/assets/MessageMarkdown-bRvD5nSc.js +3 -0
- package/dist/core/web/public/next/assets/{MessageMarkdown-BauY8ZTY.js.map → MessageMarkdown-bRvD5nSc.js.map} +1 -1
- package/dist/core/web/public/next/assets/{MessageMarkdownRenderer-DLBNLfsn.js → MessageMarkdownRenderer-FjjkPKA2.js} +4 -4
- package/dist/core/web/public/next/assets/{MessageMarkdownRenderer-DLBNLfsn.js.map → MessageMarkdownRenderer-FjjkPKA2.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Meter-DNeocJnD.js → Meter-CFNLpwA-.js} +2 -2
- package/dist/core/web/public/next/assets/{Meter-DNeocJnD.js.map → Meter-CFNLpwA-.js.map} +1 -1
- package/dist/core/web/public/next/assets/MindSection-BTIiQS8P.js +2 -0
- package/dist/core/web/public/next/assets/MindSection-BTIiQS8P.js.map +1 -0
- package/dist/core/web/public/next/assets/MutationTokenDialog-T7gv3a9r.js +2 -0
- package/dist/core/web/public/next/assets/{MutationTokenDialog-mxrw0Yvy.js.map → MutationTokenDialog-T7gv3a9r.js.map} +1 -1
- package/dist/core/web/public/next/assets/NeedsYouDrawer-lYN4G_aM.js +2 -0
- package/dist/core/web/public/next/assets/{NeedsYouDrawer-CO-Balfp.js.map → NeedsYouDrawer-lYN4G_aM.js.map} +1 -1
- package/dist/core/web/public/next/assets/NeedsYouList-BgH8ezqf.js +2 -0
- package/dist/core/web/public/next/assets/{NeedsYouList-CzDZbzRD.js.map → NeedsYouList-BgH8ezqf.js.map} +1 -1
- package/dist/core/web/public/next/assets/NewChatDialog-Db5Xjrk8.js +3 -0
- package/dist/core/web/public/next/assets/NewChatDialog-Db5Xjrk8.js.map +1 -0
- package/dist/core/web/public/next/assets/OnboardingFlow-HUNQGQuU.css +1 -0
- package/dist/core/web/public/next/assets/OnboardingFlow-LoY-zuSe.js +2 -0
- package/dist/core/web/public/next/assets/OnboardingFlow-LoY-zuSe.js.map +1 -0
- package/dist/core/web/public/next/assets/OnboardingGate-C4VXn7BJ.js +3 -0
- package/dist/core/web/public/next/assets/OnboardingGate-C4VXn7BJ.js.map +1 -0
- package/dist/core/web/public/next/assets/PreviewPane-BPBbcROb.js +2 -0
- package/dist/core/web/public/next/assets/{PreviewPane-BS-CleCd.js.map → PreviewPane-BPBbcROb.js.map} +1 -1
- package/dist/core/web/public/next/assets/{ProviderLogo-C5mBg8i0.js → ProviderLogo-CT2cSfkg.js} +2 -2
- package/dist/core/web/public/next/assets/{ProviderLogo-C5mBg8i0.js.map → ProviderLogo-CT2cSfkg.js.map} +1 -1
- package/dist/core/web/public/next/assets/RailStatus-Vgl0GYtd.js +2 -0
- package/dist/core/web/public/next/assets/{RailStatus-cPRyOmrk.js.map → RailStatus-Vgl0GYtd.js.map} +1 -1
- package/dist/core/web/public/next/assets/{RefreshIndicator-CMwSCiz5.js → RefreshIndicator-CSyqpY_q.js} +2 -2
- package/dist/core/web/public/next/assets/{RefreshIndicator-CMwSCiz5.js.map → RefreshIndicator-CSyqpY_q.js.map} +1 -1
- package/dist/core/web/public/next/assets/{ResourcePoolConsoleApp-BFi1opsC.js → ResourcePoolConsoleApp-BX2nkdmZ.js} +4 -4
- package/dist/core/web/public/next/assets/{ResourcePoolConsoleApp-BFi1opsC.js.map → ResourcePoolConsoleApp-BX2nkdmZ.js.map} +1 -1
- package/dist/core/web/public/next/assets/ResourcesChrome-B2U2lO1H.js +3 -0
- package/dist/core/web/public/next/assets/ResourcesChrome-B2U2lO1H.js.map +1 -0
- package/dist/core/web/public/next/assets/ResourcesDrawer-BCFJ2Uq8.css +1 -0
- package/dist/core/web/public/next/assets/ResourcesDrawer-DlUKOjl9.js +2 -0
- package/dist/core/web/public/next/assets/ResourcesDrawer-DlUKOjl9.js.map +1 -0
- package/dist/core/web/public/next/assets/RouteErrorBoundary-BaC7YVzR.js +2 -0
- package/dist/core/web/public/next/assets/{RouteErrorBoundary-DYtwc2ja.js.map → RouteErrorBoundary-BaC7YVzR.js.map} +1 -1
- package/dist/core/web/public/next/assets/RunInCloudAction-D5PDHJPE.js +2 -0
- package/dist/core/web/public/next/assets/{RunInCloudAction-BEGEEM8O.js.map → RunInCloudAction-D5PDHJPE.js.map} +1 -1
- package/dist/core/web/public/next/assets/SeatSelector-Cg75LInq.js +3 -0
- package/dist/core/web/public/next/assets/{SeatSelector-CYHRR7Wp.js.map → SeatSelector-Cg75LInq.js.map} +1 -1
- package/dist/core/web/public/next/assets/Segmented-CametjLt.js +2 -0
- package/dist/core/web/public/next/assets/{Segmented-BE53BenI.js.map → Segmented-CametjLt.js.map} +1 -1
- package/dist/core/web/public/next/assets/Select-De52fghU.js +2 -0
- package/dist/core/web/public/next/assets/{Select-BwSGkHCS.js.map → Select-De52fghU.js.map} +1 -1
- package/dist/core/web/public/next/assets/SessionGate-CzlcNq3O.js +2 -0
- package/dist/core/web/public/next/assets/{SessionGate-e0dFJm9d.js.map → SessionGate-CzlcNq3O.js.map} +1 -1
- package/dist/core/web/public/next/assets/SessionInsightChip-Bk_Owa7u.js +2 -0
- package/dist/core/web/public/next/assets/{SessionInsightChip-CxlSyueJ.js.map → SessionInsightChip-Bk_Owa7u.js.map} +1 -1
- package/dist/core/web/public/next/assets/SessionSearch-C6C8DHN8.js +2 -0
- package/dist/core/web/public/next/assets/{SessionSearch-_yp7S2TP.js.map → SessionSearch-C6C8DHN8.js.map} +1 -1
- package/dist/core/web/public/next/assets/SettingsSection-mI9wQYZg.js +2 -0
- package/dist/core/web/public/next/assets/SettingsSection-mI9wQYZg.js.map +1 -0
- package/dist/core/web/public/next/assets/Sheet-CJhK9Dqv.js +2 -0
- package/dist/core/web/public/next/assets/{Sheet-DVP2Mgy6.js.map → Sheet-CJhK9Dqv.js.map} +1 -1
- package/dist/core/web/public/next/assets/ShortcutsOverlay-DDW-i9Fc.js +2 -0
- package/dist/core/web/public/next/assets/{ShortcutsOverlay-BcIcoClX.js.map → ShortcutsOverlay-DDW-i9Fc.js.map} +1 -1
- package/dist/core/web/public/next/assets/Sidebar-DT7ykaqS.js +3 -0
- package/dist/core/web/public/next/assets/Sidebar-DT7ykaqS.js.map +1 -0
- package/dist/core/web/public/next/assets/Slider-Bwd9HfXl.js +2 -0
- package/dist/core/web/public/next/assets/{Slider-BypUWjpH.js.map → Slider-Bwd9HfXl.js.map} +1 -1
- package/dist/core/web/public/next/assets/StatTile-DPZ5yyaU.js +2 -0
- package/dist/core/web/public/next/assets/StatTile-DPZ5yyaU.js.map +1 -0
- package/dist/core/web/public/next/assets/{StatusBadge-HCZp416_.js → StatusBadge-DHKRtttH.js} +2 -2
- package/dist/core/web/public/next/assets/{StatusBadge-HCZp416_.js.map → StatusBadge-DHKRtttH.js.map} +1 -1
- package/dist/core/web/public/next/assets/StepBand-DQykLkk_.js +2 -0
- package/dist/core/web/public/next/assets/{StepBand-Duz1PUes.js.map → StepBand-DQykLkk_.js.map} +1 -1
- package/dist/core/web/public/next/assets/Surface-D--LXgQm.js +2 -0
- package/dist/core/web/public/next/assets/Surface-D--LXgQm.js.map +1 -0
- package/dist/core/web/public/next/assets/Surface-e1z6GdZt.css +1 -0
- package/dist/core/web/public/next/assets/Swimlane-BzH6OCee.js +2 -0
- package/dist/core/web/public/next/assets/{Swimlane-DGcIcnNA.js.map → Swimlane-BzH6OCee.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Switch-iveI-8NY.js → Switch-PMixU6b0.js} +2 -2
- package/dist/core/web/public/next/assets/{Switch-iveI-8NY.js.map → Switch-PMixU6b0.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Tag-DH15CUJp.js → Tag-fordBsrJ.js} +2 -2
- package/dist/core/web/public/next/assets/{Tag-DH15CUJp.js.map → Tag-fordBsrJ.js.map} +1 -1
- package/dist/core/web/public/next/assets/TerminalPane-BSnGdUuF.js +7 -0
- package/dist/core/web/public/next/assets/TerminalPane-BSnGdUuF.js.map +1 -0
- package/dist/core/web/public/next/assets/UniverseConsoleApp-DtXFhAhw.js +2 -0
- package/dist/core/web/public/next/assets/{UniverseConsoleApp-C8yQ0AaR.js.map → UniverseConsoleApp-DtXFhAhw.js.map} +1 -1
- package/dist/core/web/public/next/assets/{UniverseView-_nPURPqe.js → UniverseView-sWm3pnTW.js} +3 -3
- package/dist/core/web/public/next/assets/{UniverseView-_nPURPqe.js.map → UniverseView-sWm3pnTW.js.map} +1 -1
- package/dist/core/web/public/next/assets/UsageSection-CiD1DbuF.js +3 -0
- package/dist/core/web/public/next/assets/UsageSection-CiD1DbuF.js.map +1 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-BCY5uSok.js +3 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-BCY5uSok.js.map +1 -0
- package/dist/core/web/public/next/assets/Workspace-BQSZFSeO.js +10 -0
- package/dist/core/web/public/next/assets/Workspace-BQSZFSeO.js.map +1 -0
- package/dist/core/web/public/next/assets/actions-BmIf9avl.css +1 -0
- package/dist/core/web/public/next/assets/actions-Ci6I4C0l.js +2 -0
- package/dist/core/web/public/next/assets/actions-Ci6I4C0l.js.map +1 -0
- package/dist/core/web/public/next/assets/apps-model-DlwnfqwJ.js +2 -0
- package/dist/core/web/public/next/assets/apps-model-DlwnfqwJ.js.map +1 -0
- package/dist/core/web/public/next/assets/authority-model-BFuPezSo.js +2 -0
- package/dist/core/web/public/next/assets/authority-model-BFuPezSo.js.map +1 -0
- package/dist/core/web/public/next/assets/binding-left-DZpq5sLf.js +2 -0
- package/dist/core/web/public/next/assets/binding-left-DZpq5sLf.js.map +1 -0
- package/dist/core/web/public/next/assets/{budget-queries-V3wcJVK_.js → budget-queries-DsAjH8ac.js} +2 -2
- package/dist/core/web/public/next/assets/{budget-queries-V3wcJVK_.js.map → budget-queries-DsAjH8ac.js.map} +1 -1
- package/dist/core/web/public/next/assets/capacity-strip-model-Dn1cNOhz.js +2 -0
- package/dist/core/web/public/next/assets/capacity-strip-model-Dn1cNOhz.js.map +1 -0
- package/dist/core/web/public/next/assets/charts-C_xJbJiw.js +2 -0
- package/dist/core/web/public/next/assets/charts-C_xJbJiw.js.map +1 -0
- package/dist/core/web/public/next/assets/charts-DhKTrQLw.css +1 -0
- package/dist/core/web/public/next/assets/clipboard-DkZdqlxf.js +2 -0
- package/dist/core/web/public/next/assets/clipboard-DkZdqlxf.js.map +1 -0
- package/dist/core/web/public/next/assets/cloud-D-HXms6q.css +1 -0
- package/dist/core/web/public/next/assets/cloud-model-CX407gPY.js +2 -0
- package/dist/core/web/public/next/assets/cloud-model-CX407gPY.js.map +1 -0
- package/dist/core/web/public/next/assets/cloud-queries-QAhpExlz.js +2 -0
- package/dist/core/web/public/next/assets/cloud-queries-QAhpExlz.js.map +1 -0
- package/dist/core/web/public/next/assets/cloud.module-DOP-N4Ch.js +2 -0
- package/dist/core/web/public/next/assets/cloud.module-DOP-N4Ch.js.map +1 -0
- package/dist/core/web/public/next/assets/command-catalog-CF0cQQac.js +2 -0
- package/dist/core/web/public/next/assets/command-catalog-CF0cQQac.js.map +1 -0
- package/dist/core/web/public/next/assets/context-model-Co4wh3SM.js +2 -0
- package/dist/core/web/public/next/assets/context-model-Co4wh3SM.js.map +1 -0
- package/dist/core/web/public/next/assets/context-model-DV1zCfAm.js +3 -0
- package/dist/core/web/public/next/assets/context-model-DV1zCfAm.js.map +1 -0
- package/dist/core/web/public/next/assets/{context-queries-CrPcHWTz.js → context-queries-CktFQqSS.js} +2 -2
- package/dist/core/web/public/next/assets/{context-queries-CrPcHWTz.js.map → context-queries-CktFQqSS.js.map} +1 -1
- package/dist/core/web/public/next/assets/{control-queries-CmgBgKV7.js → control-queries-DAvlh_YM.js} +2 -2
- package/dist/core/web/public/next/assets/{control-queries-CmgBgKV7.js.map → control-queries-DAvlh_YM.js.map} +1 -1
- package/dist/core/web/public/next/assets/copy-setup-CqRSfELB.js +2 -0
- package/dist/core/web/public/next/assets/copy-setup-CqRSfELB.js.map +1 -0
- package/dist/core/web/public/next/assets/dock-icons-BFuBbqJl.js +2 -0
- package/dist/core/web/public/next/assets/{dock-icons-CUh8dOxJ.js.map → dock-icons-BFuBbqJl.js.map} +1 -1
- package/dist/core/web/public/next/assets/fleet-model-Dfd5JyLR.js +2 -0
- package/dist/core/web/public/next/assets/fleet-model-Dfd5JyLR.js.map +1 -0
- package/dist/core/web/public/next/assets/fleet-queries-RtMTd5rR.js +2 -0
- package/dist/core/web/public/next/assets/fleet-queries-RtMTd5rR.js.map +1 -0
- package/dist/core/web/public/next/assets/{focus-trap-HtcoXeEq.js → focus-trap-BdrbWfC4.js} +2 -2
- package/dist/core/web/public/next/assets/{focus-trap-HtcoXeEq.js.map → focus-trap-BdrbWfC4.js.map} +1 -1
- package/dist/core/web/public/next/assets/format-Dk4Fmxax.js +2 -0
- package/dist/core/web/public/next/assets/format-Dk4Fmxax.js.map +1 -0
- package/dist/core/web/public/next/assets/{git-model-bk_RXh3y.js → git-model-_BnI_Ogh.js} +2 -2
- package/dist/core/web/public/next/assets/{git-model-bk_RXh3y.js.map → git-model-_BnI_Ogh.js.map} +1 -1
- package/dist/core/web/public/next/assets/global-CNNGMril.js +2 -0
- package/dist/core/web/public/next/assets/{global-oEl9Qj8u.js.map → global-CNNGMril.js.map} +1 -1
- package/dist/core/web/public/next/assets/{guarded-runners-LHLXmXIk.js → guarded-runners-DPh2d32e.js} +2 -2
- package/dist/core/web/public/next/assets/{guarded-runners-LHLXmXIk.js.map → guarded-runners-DPh2d32e.js.map} +1 -1
- package/dist/core/web/public/next/assets/icons-0haWy6nh.js +2 -0
- package/dist/core/web/public/next/assets/icons-0haWy6nh.js.map +1 -0
- package/dist/core/web/public/next/assets/{index-BVxOlseC.js → index-QesfXBsb.js} +3 -3
- package/dist/core/web/public/next/assets/{index-BVxOlseC.js.map → index-QesfXBsb.js.map} +1 -1
- package/dist/core/web/public/next/assets/live-model-De-q0ZFK.js +2 -0
- package/dist/core/web/public/next/assets/live-model-De-q0ZFK.js.map +1 -0
- package/dist/core/web/public/next/assets/local-model-C9xNi9fN.js +2 -0
- package/dist/core/web/public/next/assets/local-model-C9xNi9fN.js.map +1 -0
- package/dist/core/web/public/next/assets/mind.module-BrK2nFOL.js +2 -0
- package/dist/core/web/public/next/assets/{mind.module-gTGAuJt1.js.map → mind.module-BrK2nFOL.js.map} +1 -1
- package/dist/core/web/public/next/assets/mutations-DTCtKCn_.js +2 -0
- package/dist/core/web/public/next/assets/{mutations-C5S7okTW.js.map → mutations-DTCtKCn_.js.map} +1 -1
- package/dist/core/web/public/next/assets/nav-KmGX0CVz.js +2 -0
- package/dist/core/web/public/next/assets/{nav-NVtnuG7A.js.map → nav-KmGX0CVz.js.map} +1 -1
- package/dist/core/web/public/next/assets/{overnight-queries-DGm3qL1b.js → overnight-queries-mlO0xzsr.js} +2 -2
- package/dist/core/web/public/next/assets/{overnight-queries-DGm3qL1b.js.map → overnight-queries-mlO0xzsr.js.map} +1 -1
- package/dist/core/web/public/next/assets/primitives-D0Fb3TtS.js +1 -0
- package/dist/core/web/public/next/assets/{queries-CYisSAAB.js → queries-CyBE8nsW.js} +2 -2
- package/dist/core/web/public/next/assets/{queries-CYisSAAB.js.map → queries-CyBE8nsW.js.map} +1 -1
- package/dist/core/web/public/next/assets/reasoning-pref-CaoA4_Vl.js +2 -0
- package/dist/core/web/public/next/assets/{reasoning-pref-BUcFF_5G.js.map → reasoning-pref-CaoA4_Vl.js.map} +1 -1
- package/dist/core/web/public/next/assets/{reveal-anchor-D-tV8xau.js → reveal-anchor-BP1VqnPU.js} +2 -2
- package/dist/core/web/public/next/assets/{reveal-anchor-D-tV8xau.js.map → reveal-anchor-BP1VqnPU.js.map} +1 -1
- package/dist/core/web/public/next/assets/seat-subscription-C5Tvr0WQ.js +2 -0
- package/dist/core/web/public/next/assets/{seat-subscription-B-f9ViU2.js.map → seat-subscription-C5Tvr0WQ.js.map} +1 -1
- package/dist/core/web/public/next/assets/{sidebar-model-DQ-FyBHW.js → sidebar-model-B5Qk95k_.js} +2 -2
- package/dist/core/web/public/next/assets/{sidebar-model-DQ-FyBHW.js.map → sidebar-model-B5Qk95k_.js.map} +1 -1
- package/dist/core/web/public/next/assets/slots-DHKQDoE6.js +3 -0
- package/dist/core/web/public/next/assets/{slots-BhP8b8tf.js.map → slots-DHKQDoE6.js.map} +1 -1
- package/dist/core/web/public/next/assets/surface-data-CchClvHo.js +2 -0
- package/dist/core/web/public/next/assets/surface-data-CchClvHo.js.map +1 -0
- package/dist/core/web/public/next/assets/surface-prefetch-BWr0LBQn.js +2 -0
- package/dist/core/web/public/next/assets/surface-prefetch-BWr0LBQn.js.map +1 -0
- package/dist/core/web/public/next/assets/{tasks-model-BKDNqmmt.js → tasks-model-D6WFVULI.js} +2 -2
- package/dist/core/web/public/next/assets/{tasks-model-BKDNqmmt.js.map → tasks-model-D6WFVULI.js.map} +1 -1
- package/dist/core/web/public/next/assets/{terminal-icons-D2xe-aM1.js → terminal-icons-BvCvuXk2.js} +2 -2
- package/dist/core/web/public/next/assets/{terminal-icons-D2xe-aM1.js.map → terminal-icons-BvCvuXk2.js.map} +1 -1
- package/dist/core/web/public/next/assets/transient-events-nTLhMBND.js +2 -0
- package/dist/core/web/public/next/assets/transient-events-nTLhMBND.js.map +1 -0
- package/dist/core/web/public/next/assets/types-D5XOdyw8.js.map +1 -1
- package/dist/core/web/public/next/assets/{usage-queries-BZuAANlI.js → usage-queries-D1SU1t7r.js} +2 -2
- package/dist/core/web/public/next/assets/{usage-queries-BZuAANlI.js.map → usage-queries-D1SU1t7r.js.map} +1 -1
- package/dist/core/web/public/next/assets/{use-guarded-action-Cf4MeNBa.js → use-guarded-action-BZmBv7CJ.js} +2 -2
- package/dist/core/web/public/next/assets/{use-guarded-action-Cf4MeNBa.js.map → use-guarded-action-BZmBv7CJ.js.map} +1 -1
- package/dist/core/web/public/next/assets/{use-ticker-D9yi49my.js → use-ticker-CkJ4-0wU.js} +2 -2
- package/dist/core/web/public/next/assets/{use-ticker-D9yi49my.js.map → use-ticker-CkJ4-0wU.js.map} +1 -1
- package/dist/core/web/public/next/assets/{use-token-gate-DqrSXdX6.js → use-token-gate-CYcfk_GS.js} +2 -2
- package/dist/core/web/public/next/assets/{use-token-gate-DqrSXdX6.js.map → use-token-gate-CYcfk_GS.js.map} +1 -1
- package/dist/core/web/public/next/assets/useOnboarding-CujRS6PK.js +2 -0
- package/dist/core/web/public/next/assets/useOnboarding-CujRS6PK.js.map +1 -0
- package/dist/core/web/public/next/assets/useSeatsRefresh-BEaQdkZs.js +2 -0
- package/dist/core/web/public/next/assets/useSeatsRefresh-BEaQdkZs.js.map +1 -0
- package/dist/core/web/public/next/assets/useVerseTranscript-BQ0J6Xhx.js +2 -0
- package/dist/core/web/public/next/assets/{useVerseTranscript-CDYrrWOO.js.map → useVerseTranscript-BQ0J6Xhx.js.map} +1 -1
- package/dist/core/web/public/next/assets/verse-icons-DndgEgKS.js +2 -0
- package/dist/core/web/public/next/assets/verse-icons-DndgEgKS.js.map +1 -0
- package/dist/core/web/public/next/assets/verse-model-MMySehjj.js +2 -0
- package/dist/core/web/public/next/assets/verse-model-MMySehjj.js.map +1 -0
- package/dist/core/web/public/next/assets/verse-store-DNVRuiJL.js +2 -0
- package/dist/core/web/public/next/assets/verse-store-DNVRuiJL.js.map +1 -0
- package/dist/core/web/public/next/assets/warmup-CNEH_-be.js +3 -0
- package/dist/core/web/public/next/assets/{warmup-HG5vYbsN.js.map → warmup-CNEH_-be.js.map} +1 -1
- package/dist/core/web/public/next/assets/why-seat-model-jlDTwYSc.js +2 -0
- package/dist/core/web/public/next/assets/why-seat-model-jlDTwYSc.js.map +1 -0
- package/dist/core/web/public/next/assets/{workspace-model-CbhdPhei.js → workspace-model-Dukb2wwv.js} +2 -2
- package/dist/core/web/public/next/assets/{workspace-model-CbhdPhei.js.map → workspace-model-Dukb2wwv.js.map} +1 -1
- package/dist/core/web/public/next/index.html +1 -1
- package/dist/release-dependency-inventory.json +1 -1
- package/docs/README.md +2 -1
- package/package.json +1 -1
- package/dist/core/web/public/next/assets/ActionMenu-FxXeRbPx.js +0 -2
- package/dist/core/web/public/next/assets/Advanced-D_eS4472.js +0 -2
- package/dist/core/web/public/next/assets/Advanced-D_eS4472.js.map +0 -1
- package/dist/core/web/public/next/assets/App-Cj4zKbG3.js +0 -7
- package/dist/core/web/public/next/assets/App-Cj4zKbG3.js.map +0 -1
- package/dist/core/web/public/next/assets/AppsSection-Ddu_RCQE.js +0 -2
- package/dist/core/web/public/next/assets/AppsSection-Ddu_RCQE.js.map +0 -1
- package/dist/core/web/public/next/assets/AreaTrend-CDxrQU4b.js +0 -2
- package/dist/core/web/public/next/assets/AutonomySection-DuQkHGD_.js +0 -2
- package/dist/core/web/public/next/assets/BranchBar-CLsvOcyK.js +0 -2
- package/dist/core/web/public/next/assets/BudgetControl-TL3FeZ1D.js +0 -2
- package/dist/core/web/public/next/assets/BurnDown-sFXkUGdB.js +0 -2
- package/dist/core/web/public/next/assets/BurnDown-sFXkUGdB.js.map +0 -1
- package/dist/core/web/public/next/assets/CapacityStrip-qReu0RaF.js +0 -2
- package/dist/core/web/public/next/assets/ChatSection-DZuZfTaC.js +0 -3
- package/dist/core/web/public/next/assets/ChatSection-DZuZfTaC.js.map +0 -1
- package/dist/core/web/public/next/assets/CloudBudgetForm-DJbiT1wi.js +0 -2
- package/dist/core/web/public/next/assets/CloudBudgetForm-DJbiT1wi.js.map +0 -1
- package/dist/core/web/public/next/assets/CommandPalette-zYLFZRnj.js +0 -2
- package/dist/core/web/public/next/assets/CommandPalette-zYLFZRnj.js.map +0 -1
- package/dist/core/web/public/next/assets/CommandSection-rIeMK5Ch.js +0 -2
- package/dist/core/web/public/next/assets/CommandSection-rIeMK5Ch.js.map +0 -1
- package/dist/core/web/public/next/assets/ConfirmDialog-DLrLKM0c.js +0 -2
- package/dist/core/web/public/next/assets/Dialog-BS9Dxi3G.js +0 -2
- package/dist/core/web/public/next/assets/DiffPane-TOmUf3b2.js +0 -2
- package/dist/core/web/public/next/assets/DiffViewer-BpH56302.js +0 -2
- package/dist/core/web/public/next/assets/DockHost-DzkzR-HD.js +0 -2
- package/dist/core/web/public/next/assets/DockHost-DzkzR-HD.js.map +0 -1
- package/dist/core/web/public/next/assets/FleetSection-ViAb549H.js +0 -3
- package/dist/core/web/public/next/assets/FleetSection-ViAb549H.js.map +0 -1
- package/dist/core/web/public/next/assets/Funnel-D2u7Wlzc.js +0 -2
- package/dist/core/web/public/next/assets/GearTray-Cb2npoxM.js +0 -2
- package/dist/core/web/public/next/assets/GrowthSection-C5aDPs8B.js +0 -2
- package/dist/core/web/public/next/assets/HandoffDialog-BF3AYg-X.js +0 -2
- package/dist/core/web/public/next/assets/Input-B5dmGLZx.js +0 -2
- package/dist/core/web/public/next/assets/LeaderCard-DZrmjDbI.js +0 -2
- package/dist/core/web/public/next/assets/LeaderCard-DZrmjDbI.js.map +0 -1
- package/dist/core/web/public/next/assets/MatrixHeatmap-BgEUs2Eu.js +0 -2
- package/dist/core/web/public/next/assets/McpSection-DZkiOuoq.js +0 -2
- package/dist/core/web/public/next/assets/MessageMarkdown-BauY8ZTY.js +0 -3
- package/dist/core/web/public/next/assets/MindSection-BvJXFjyX.js +0 -2
- package/dist/core/web/public/next/assets/MindSection-BvJXFjyX.js.map +0 -1
- package/dist/core/web/public/next/assets/MutationTokenDialog-mxrw0Yvy.js +0 -2
- package/dist/core/web/public/next/assets/NeedsYouDrawer-CO-Balfp.js +0 -2
- package/dist/core/web/public/next/assets/NeedsYouList-CzDZbzRD.js +0 -2
- package/dist/core/web/public/next/assets/NewChatDialog-B8eJjlFf.js +0 -3
- package/dist/core/web/public/next/assets/NewChatDialog-B8eJjlFf.js.map +0 -1
- package/dist/core/web/public/next/assets/OnboardingFlow-Cij6KWat.js +0 -2
- package/dist/core/web/public/next/assets/OnboardingFlow-Cij6KWat.js.map +0 -1
- package/dist/core/web/public/next/assets/OnboardingFlow-DSpPj8UE.css +0 -1
- package/dist/core/web/public/next/assets/PreviewPane-BS-CleCd.js +0 -2
- package/dist/core/web/public/next/assets/RailStatus-cPRyOmrk.js +0 -2
- package/dist/core/web/public/next/assets/ResourcesChrome-BJCauW_t.js +0 -3
- package/dist/core/web/public/next/assets/ResourcesChrome-BJCauW_t.js.map +0 -1
- package/dist/core/web/public/next/assets/ResourcesDrawer-BDecg6nO.js +0 -2
- package/dist/core/web/public/next/assets/ResourcesDrawer-BDecg6nO.js.map +0 -1
- package/dist/core/web/public/next/assets/ResourcesDrawer-CSKIO_wZ.css +0 -1
- package/dist/core/web/public/next/assets/RouteErrorBoundary-DYtwc2ja.js +0 -2
- package/dist/core/web/public/next/assets/RunInCloudAction-BEGEEM8O.js +0 -2
- package/dist/core/web/public/next/assets/SeatSelector-CYHRR7Wp.js +0 -3
- package/dist/core/web/public/next/assets/Segmented-BE53BenI.js +0 -2
- package/dist/core/web/public/next/assets/Select-BwSGkHCS.js +0 -2
- package/dist/core/web/public/next/assets/SessionGate-e0dFJm9d.js +0 -2
- package/dist/core/web/public/next/assets/SessionInsightChip-CxlSyueJ.js +0 -2
- package/dist/core/web/public/next/assets/SessionSearch-_yp7S2TP.js +0 -2
- package/dist/core/web/public/next/assets/SettingsSection-wGnpWeGW.js +0 -2
- package/dist/core/web/public/next/assets/SettingsSection-wGnpWeGW.js.map +0 -1
- package/dist/core/web/public/next/assets/Sheet-DVP2Mgy6.js +0 -2
- package/dist/core/web/public/next/assets/ShortcutsOverlay-BcIcoClX.js +0 -2
- package/dist/core/web/public/next/assets/Sidebar-DjQOqPbm.js +0 -3
- package/dist/core/web/public/next/assets/Sidebar-DjQOqPbm.js.map +0 -1
- package/dist/core/web/public/next/assets/Slider-BypUWjpH.js +0 -2
- package/dist/core/web/public/next/assets/StepBand-Duz1PUes.js +0 -2
- package/dist/core/web/public/next/assets/Surface-B75lVfzm.js +0 -2
- package/dist/core/web/public/next/assets/Surface-B75lVfzm.js.map +0 -1
- package/dist/core/web/public/next/assets/Surface-DMca0gAe.css +0 -1
- package/dist/core/web/public/next/assets/Swimlane-DGcIcnNA.js +0 -2
- package/dist/core/web/public/next/assets/TerminalPane-MQT-veKZ.js +0 -7
- package/dist/core/web/public/next/assets/TerminalPane-MQT-veKZ.js.map +0 -1
- package/dist/core/web/public/next/assets/UniverseConsoleApp-C8yQ0AaR.js +0 -2
- package/dist/core/web/public/next/assets/UsageSection-CqxRGJ40.js +0 -2
- package/dist/core/web/public/next/assets/UsageSection-CqxRGJ40.js.map +0 -1
- package/dist/core/web/public/next/assets/VerseConsoleApp-DTjDpGCd.js +0 -3
- package/dist/core/web/public/next/assets/VerseConsoleApp-DTjDpGCd.js.map +0 -1
- package/dist/core/web/public/next/assets/Workspace-DfcFGzME.js +0 -10
- package/dist/core/web/public/next/assets/Workspace-DfcFGzME.js.map +0 -1
- package/dist/core/web/public/next/assets/actions-Ddfg2iLl.css +0 -1
- package/dist/core/web/public/next/assets/actions-tWevL9HV.js +0 -2
- package/dist/core/web/public/next/assets/actions-tWevL9HV.js.map +0 -1
- package/dist/core/web/public/next/assets/apps-model-CDFvmsQV.js +0 -2
- package/dist/core/web/public/next/assets/apps-model-CDFvmsQV.js.map +0 -1
- package/dist/core/web/public/next/assets/capacity-strip-model-BDbmQ3e3.js +0 -2
- package/dist/core/web/public/next/assets/capacity-strip-model-BDbmQ3e3.js.map +0 -1
- package/dist/core/web/public/next/assets/charts-CfAjuKMv.js +0 -2
- package/dist/core/web/public/next/assets/charts-CfAjuKMv.js.map +0 -1
- package/dist/core/web/public/next/assets/charts-uSX6xVYN.css +0 -1
- package/dist/core/web/public/next/assets/cloud-C1KPNRHC.css +0 -1
- package/dist/core/web/public/next/assets/cloud-queries-Br_r0UAz.js +0 -2
- package/dist/core/web/public/next/assets/cloud-queries-Br_r0UAz.js.map +0 -1
- package/dist/core/web/public/next/assets/cloud.module-ascz58c3.js +0 -2
- package/dist/core/web/public/next/assets/cloud.module-ascz58c3.js.map +0 -1
- package/dist/core/web/public/next/assets/command-bus-xYZoK9nQ.js +0 -2
- package/dist/core/web/public/next/assets/command-bus-xYZoK9nQ.js.map +0 -1
- package/dist/core/web/public/next/assets/command-catalog-Bb_PxC5w.js +0 -2
- package/dist/core/web/public/next/assets/command-catalog-Bb_PxC5w.js.map +0 -1
- package/dist/core/web/public/next/assets/composer-keys-su0g1h9o.js +0 -2
- package/dist/core/web/public/next/assets/composer-keys-su0g1h9o.js.map +0 -1
- package/dist/core/web/public/next/assets/context-model-BC-HOmPo.js +0 -2
- package/dist/core/web/public/next/assets/context-model-BC-HOmPo.js.map +0 -1
- package/dist/core/web/public/next/assets/context-model-CIBmSugV.js +0 -2
- package/dist/core/web/public/next/assets/context-model-CIBmSugV.js.map +0 -1
- package/dist/core/web/public/next/assets/dark-since-DOMvtB_G.js +0 -2
- package/dist/core/web/public/next/assets/dark-since-DOMvtB_G.js.map +0 -1
- package/dist/core/web/public/next/assets/dock-icons-CUh8dOxJ.js +0 -2
- package/dist/core/web/public/next/assets/dock-store-B2vlxqPu.js +0 -2
- package/dist/core/web/public/next/assets/dock-store-B2vlxqPu.js.map +0 -1
- package/dist/core/web/public/next/assets/fleet-model-7i-FbzKI.js +0 -2
- package/dist/core/web/public/next/assets/fleet-model-7i-FbzKI.js.map +0 -1
- package/dist/core/web/public/next/assets/fleet-queries-DzGoqq8X.js +0 -2
- package/dist/core/web/public/next/assets/fleet-queries-DzGoqq8X.js.map +0 -1
- package/dist/core/web/public/next/assets/format-BkWdOQDL.js +0 -2
- package/dist/core/web/public/next/assets/format-BkWdOQDL.js.map +0 -1
- package/dist/core/web/public/next/assets/global-oEl9Qj8u.js +0 -2
- package/dist/core/web/public/next/assets/guarded-action-OzqcPjmh.js +0 -3
- package/dist/core/web/public/next/assets/guarded-action-OzqcPjmh.js.map +0 -1
- package/dist/core/web/public/next/assets/icon-base-DvM1eI5V.js +0 -2
- package/dist/core/web/public/next/assets/icon-base-DvM1eI5V.js.map +0 -1
- package/dist/core/web/public/next/assets/icons-DEQa2rTx.js +0 -2
- package/dist/core/web/public/next/assets/icons-DEQa2rTx.js.map +0 -1
- package/dist/core/web/public/next/assets/live-model-bmsJgnYD.js +0 -2
- package/dist/core/web/public/next/assets/live-model-bmsJgnYD.js.map +0 -1
- package/dist/core/web/public/next/assets/local-model-DFyjKX0b.js +0 -2
- package/dist/core/web/public/next/assets/local-model-DFyjKX0b.js.map +0 -1
- package/dist/core/web/public/next/assets/mind.module-gTGAuJt1.js +0 -2
- package/dist/core/web/public/next/assets/mutations-C5S7okTW.js +0 -2
- package/dist/core/web/public/next/assets/nav-NVtnuG7A.js +0 -2
- package/dist/core/web/public/next/assets/preloaded-Cwf9rsnZ.js +0 -2
- package/dist/core/web/public/next/assets/preloaded-Cwf9rsnZ.js.map +0 -1
- package/dist/core/web/public/next/assets/primitives-DyCKYSBG.js +0 -1
- package/dist/core/web/public/next/assets/reasoning-pref-BUcFF_5G.js +0 -2
- package/dist/core/web/public/next/assets/seat-subscription-B-f9ViU2.js +0 -2
- package/dist/core/web/public/next/assets/section-visibility-Yctxu-if.js +0 -2
- package/dist/core/web/public/next/assets/section-visibility-Yctxu-if.js.map +0 -1
- package/dist/core/web/public/next/assets/slots-BhP8b8tf.js +0 -3
- package/dist/core/web/public/next/assets/surface-data-DTI7LjvH.js +0 -2
- package/dist/core/web/public/next/assets/surface-data-DTI7LjvH.js.map +0 -1
- package/dist/core/web/public/next/assets/surface-prefetch-CdUEBFrl.js +0 -2
- package/dist/core/web/public/next/assets/surface-prefetch-CdUEBFrl.js.map +0 -1
- package/dist/core/web/public/next/assets/useChartWidth-owwodNVz.js +0 -2
- package/dist/core/web/public/next/assets/useChartWidth-owwodNVz.js.map +0 -1
- package/dist/core/web/public/next/assets/useSeatsRefresh-DgFy-Ph4.js +0 -2
- package/dist/core/web/public/next/assets/useSeatsRefresh-DgFy-Ph4.js.map +0 -1
- package/dist/core/web/public/next/assets/useVerseTranscript-CDYrrWOO.js +0 -2
- package/dist/core/web/public/next/assets/verse-icons-F9VwX07_.js +0 -2
- package/dist/core/web/public/next/assets/verse-icons-F9VwX07_.js.map +0 -1
- package/dist/core/web/public/next/assets/verse-model-DyCwZF-M.js +0 -2
- package/dist/core/web/public/next/assets/verse-model-DyCwZF-M.js.map +0 -1
- package/dist/core/web/public/next/assets/verse-store-b_Lek_c5.js +0 -3
- package/dist/core/web/public/next/assets/verse-store-b_Lek_c5.js.map +0 -1
- package/dist/core/web/public/next/assets/verse-ui-store-62DxpVHS.js +0 -3
- package/dist/core/web/public/next/assets/verse-ui-store-62DxpVHS.js.map +0 -1
- package/dist/core/web/public/next/assets/viewport-nTubFCwf.js +0 -2
- package/dist/core/web/public/next/assets/viewport-nTubFCwf.js.map +0 -1
- package/dist/core/web/public/next/assets/warmup-HG5vYbsN.js +0 -3
- package/dist/core/web/public/next/assets/workbench-types-DzN-5trg.js +0 -2
- package/dist/core/web/public/next/assets/workbench-types-DzN-5trg.js.map +0 -1
- /package/dist/core/web/public/next/assets/{BurnDown-BuLMsJMx.css → StatTile-BuLMsJMx.css} +0 -0
package/dist/core/web/public/next/assets/{ProviderLogo-C5mBg8i0.js → ProviderLogo-CT2cSfkg.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{n as e}from"./index-
|
|
2
|
-
//# sourceMappingURL=ProviderLogo-
|
|
1
|
+
import{n as e}from"./index-QesfXBsb.js";var t=e(),n={claude:{name:`Anthropic Claude`,fill:`#D97757`,rule:`nonzero`,d:`M4.709 15.955l4.72-2.647.08-.23-.08-.128H9.2l-.79-.048-2.698-.073-2.339-.097-2.266-.122-.571-.121L0 11.784l.055-.352.48-.321.686.06 1.52.103 2.278.158 1.652.097 2.449.255h.389l.055-.157-.134-.098-.103-.097-2.358-1.596-2.552-1.688-1.336-.972-.724-.491-.364-.462-.158-1.008.656-.722.881.06.225.061.893.686 1.908 1.476 2.491 1.833.365.304.145-.103.019-.073-.164-.274-1.355-2.446-1.446-2.49-.644-1.032-.17-.619a2.97 2.97 0 01-.104-.729L6.283.134 6.696 0l.996.134.42.364.62 1.414 1.002 2.229 1.555 3.03.456.898.243.832.091.255h.158V9.01l.128-1.706.237-2.095.23-2.695.08-.76.376-.91.747-.492.584.28.48.685-.067.444-.286 1.851-.559 2.903-.364 1.942h.212l.243-.242.985-1.306 1.652-2.064.73-.82.85-.904.547-.431h1.033l.76 1.129-.34 1.166-1.064 1.347-.881 1.142-1.264 1.7-.79 1.36.073.11.188-.02 2.856-.606 1.543-.28 1.841-.315.833.388.091.395-.328.807-1.969.486-2.309.462-3.439.813-.042.03.049.061 1.549.146.662.036h1.622l3.02.225.79.522.474.638-.079.485-1.215.62-1.64-.389-3.829-.91-1.312-.329h-.182v.11l1.093 1.068 2.006 1.81 2.509 2.33.127.578-.322.455-.34-.049-2.205-1.657-.851-.747-1.926-1.62h-.128v.17l.444.649 2.345 3.521.122 1.08-.17.353-.608.213-.668-.122-1.374-1.925-1.415-2.167-1.143-1.943-.14.08-.674 7.254-.316.37-.729.28-.607-.461-.322-.747.322-1.476.389-1.924.315-1.53.286-1.9.17-.632-.012-.042-.14.018-1.434 1.967-2.18 2.945-1.726 1.845-.414.164-.717-.37.067-.662.401-.589 2.388-3.036 1.44-1.882.93-1.086-.006-.158h-.055L4.132 18.56l-1.13.146-.487-.456.061-.746.231-.243 1.908-1.312-.006.006z`},codex:{name:`OpenAI`,fill:null,rule:`evenodd`,d:`M9.205 8.658v-2.26c0-.19.072-.333.238-.428l4.543-2.616c.619-.357 1.356-.523 2.117-.523 2.854 0 4.662 2.212 4.662 4.566 0 .167 0 .357-.024.547l-4.71-2.759a.797.797 0 00-.856 0l-5.97 3.473zm10.609 8.8V12.06c0-.333-.143-.57-.429-.737l-5.97-3.473 1.95-1.118a.433.433 0 01.476 0l4.543 2.617c1.309.76 2.189 2.378 2.189 3.948 0 1.808-1.07 3.473-2.76 4.163zM7.802 12.703l-1.95-1.142c-.167-.095-.239-.238-.239-.428V5.899c0-2.545 1.95-4.472 4.591-4.472 1 0 1.927.333 2.712.928L8.23 5.067c-.285.166-.428.404-.428.737v6.898zM12 15.128l-2.795-1.57v-3.33L12 8.658l2.795 1.57v3.33L12 15.128zm1.796 7.23c-1 0-1.927-.332-2.712-.927l4.686-2.712c.285-.166.428-.404.428-.737v-6.898l1.974 1.142c.167.095.238.238.238.428v5.233c0 2.545-1.974 4.472-4.614 4.472zm-5.637-5.303l-4.544-2.617c-1.308-.761-2.188-2.378-2.188-3.948A4.482 4.482 0 014.21 6.327v5.423c0 .333.143.571.428.738l5.947 3.449-1.95 1.118a.432.432 0 01-.476 0zm-.262 3.9c-2.688 0-4.662-2.021-4.662-4.519 0-.19.024-.38.047-.57l4.686 2.71c.286.167.571.167.856 0l5.97-3.448v2.26c0 .19-.07.333-.237.428l-4.543 2.616c-.619.357-1.356.523-2.117.523zm5.899 2.83a5.947 5.947 0 005.827-4.756C22.287 18.339 24 15.84 24 13.296c0-1.665-.713-3.282-1.998-4.448.119-.5.19-.999.19-1.498 0-3.401-2.759-5.947-5.946-5.947-.642 0-1.26.095-1.88.31A5.962 5.962 0 0010.205 0a5.947 5.947 0 00-5.827 4.757C1.713 5.447 0 7.945 0 10.49c0 1.666.713 3.283 1.998 4.448-.119.5-.19 1-.19 1.499 0 3.401 2.759 5.946 5.946 5.946.642 0 1.26-.095 1.88-.309a5.96 5.96 0 004.162 1.713z`},grok:{name:`xAI Grok`,fill:null,rule:`evenodd`,d:`M9.27 15.29l7.978-5.897c.391-.29.95-.177 1.137.272.98 2.369.542 5.215-1.41 7.169-1.951 1.954-4.667 2.382-7.149 1.406l-2.711 1.257c3.889 2.661 8.611 2.003 11.562-.953 2.341-2.344 3.066-5.539 2.388-8.42l.006.007c-.983-4.232.242-5.924 2.75-9.383.06-.082.12-.164.179-.248l-3.301 3.305v-.01L9.267 15.292M7.623 16.723c-2.792-2.67-2.31-6.801.071-9.184 1.761-1.763 4.647-2.483 7.166-1.425l2.705-1.25a7.808 7.808 0 00-1.829-1A8.975 8.975 0 005.984 5.83c-2.533 2.536-3.33 6.436-1.962 9.764 1.022 2.487-.653 4.246-2.34 6.022-.599.63-1.199 1.259-1.682 1.925l7.62-6.815`},local:{name:`Ollama`,fill:null,rule:`evenodd`,d:`M7.905 1.09c.216.085.411.225.588.41.295.306.544.744.734 1.263.191.522.315 1.1.362 1.68a5.054 5.054 0 012.049-.636l.051-.004c.87-.07 1.73.087 2.48.474.101.053.2.11.297.17.05-.569.172-1.134.36-1.644.19-.52.439-.957.733-1.264a1.67 1.67 0 01.589-.41c.257-.1.53-.118.796-.042.401.114.745.368 1.016.737.248.337.434.769.561 1.287.23.934.27 2.163.115 3.645l.053.04.026.019c.757.576 1.284 1.397 1.563 2.35.435 1.487.216 3.155-.534 4.088l-.018.021.002.003c.417.762.67 1.567.724 2.4l.002.03c.064 1.065-.2 2.137-.814 3.19l-.007.01.01.024c.472 1.157.62 2.322.438 3.486l-.006.039a.651.651 0 01-.747.536.648.648 0 01-.54-.742c.167-1.033.01-2.069-.48-3.123a.643.643 0 01.04-.617l.004-.006c.604-.924.854-1.83.8-2.72-.046-.779-.325-1.544-.8-2.273a.644.644 0 01.18-.886l.009-.006c.243-.159.467-.565.58-1.12a4.229 4.229 0 00-.095-1.974c-.205-.7-.58-1.284-1.105-1.683-.595-.454-1.383-.673-2.38-.61a.653.653 0 01-.632-.371c-.314-.665-.772-1.141-1.343-1.436a3.288 3.288 0 00-1.772-.332c-1.245.099-2.343.801-2.67 1.686a.652.652 0 01-.61.425c-1.067.002-1.893.252-2.497.703-.522.39-.878.935-1.066 1.588a4.07 4.07 0 00-.068 1.886c.112.558.331 1.02.582 1.269l.008.007c.212.207.257.53.109.785-.36.622-.629 1.549-.673 2.44-.05 1.018.186 1.902.719 2.536l.016.019a.643.643 0 01.095.69c-.576 1.236-.753 2.252-.562 3.052a.652.652 0 01-1.269.298c-.243-1.018-.078-2.184.473-3.498l.014-.035-.008-.012a4.339 4.339 0 01-.598-1.309l-.005-.019a5.764 5.764 0 01-.177-1.785c.044-.91.278-1.842.622-2.59l.012-.026-.002-.002c-.293-.418-.51-.953-.63-1.545l-.005-.024a5.352 5.352 0 01.093-2.49c.262-.915.777-1.701 1.536-2.269.06-.045.123-.09.186-.132-.159-1.493-.119-2.73.112-3.67.127-.518.314-.95.562-1.287.27-.368.614-.622 1.015-.737.266-.076.54-.059.797.042zm4.116 9.09c.936 0 1.8.313 2.446.855.63.527 1.005 1.235 1.005 1.94 0 .888-.406 1.58-1.133 2.022-.62.375-1.451.557-2.403.557-1.009 0-1.871-.259-2.493-.734-.617-.47-.963-1.13-.963-1.845 0-.707.398-1.417 1.056-1.946.668-.537 1.55-.849 2.485-.849zm0 .896a3.07 3.07 0 00-1.916.65c-.461.37-.722.835-.722 1.25 0 .428.21.829.61 1.134.455.347 1.124.548 1.943.548.799 0 1.473-.147 1.932-.426.463-.28.7-.686.7-1.257 0-.423-.246-.89-.683-1.256-.484-.405-1.14-.643-1.864-.643zm.662 1.21l.004.004c.12.151.095.37-.056.49l-.292.23v.446a.375.375 0 01-.376.373.375.375 0 01-.376-.373v-.46l-.271-.218a.347.347 0 01-.052-.49.353.353 0 01.494-.051l.215.172.22-.174a.353.353 0 01.49.051zm-5.04-1.919c.478 0 .867.39.867.871a.87.87 0 01-.868.871.87.87 0 01-.867-.87.87.87 0 01.867-.872zm8.706 0c.48 0 .868.39.868.871a.87.87 0 01-.868.871.87.87 0 01-.867-.87.87.87 0 01.867-.872zM7.44 2.3l-.003.002a.659.659 0 00-.285.238l-.005.006c-.138.189-.258.467-.348.832-.17.692-.216 1.631-.124 2.782.43-.128.899-.208 1.404-.237l.01-.001.019-.034c.046-.082.095-.161.148-.239.123-.771.022-1.692-.253-2.444-.134-.364-.297-.65-.453-.813a.628.628 0 00-.107-.09L7.44 2.3zm9.174.04l-.002.001a.628.628 0 00-.107.09c-.156.163-.32.45-.453.814-.29.794-.387 1.776-.23 2.572l.058.097.008.014h.03a5.184 5.184 0 011.466.212c.086-1.124.038-2.043-.128-2.722-.09-.365-.21-.643-.349-.832l-.004-.006a.659.659 0 00-.285-.239h-.004z`}};function r({engine:e,size:r=16,className:i,style:a,title:o,x:s,y:c}){let l=n[e];return l?(0,t.jsx)(`svg`,{viewBox:`0 0 24 24`,x:s,y:c,width:r,height:r,className:i,style:{flex:`none`,...a},role:o?`img`:void 0,"aria-hidden":!o||void 0,"aria-label":o,focusable:`false`,"data-provider":e,children:(0,t.jsx)(`path`,{d:l.d,fill:l.fill??`currentColor`,fillRule:l.rule})}):null}export{r as t};
|
|
2
|
+
//# sourceMappingURL=ProviderLogo-CT2cSfkg.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProviderLogo-
|
|
1
|
+
{"version":3,"file":"ProviderLogo-CT2cSfkg.js","names":[],"sources":["../../../../../../src/web-ui/components/primitives/ProviderLogo.tsx"],"sourcesContent":["/**\n * Provider marks for the four engines Verse runs on — Claude (Anthropic),\n * Codex (OpenAI), Grok (xAI) and local models (Ollama).\n *\n * Path data from @lobehub/icons (MIT, https://github.com/lobehub/lobe-icons),\n * inlined so the marks need no network and no runtime dependency. The marks\n * themselves are the owners' trademarks, used only to identify the provider\n * an account belongs to. Claude keeps its brand colour; the others draw in\n * currentColor so they follow the theme (light and dark) like any glyph.\n *\n * Decorative by default (aria-hidden): the provider NAME is always rendered\n * as text beside the mark. Pass `title` only where the mark stands alone.\n */\nimport type { CSSProperties } from 'react';\n\nexport type ProviderEngine = 'claude' | 'codex' | 'grok' | 'local';\n\ninterface Mark { d: string; fill: string | null; rule: 'evenodd' | 'nonzero'; name: string }\n\nconst MARKS: Readonly<Record<ProviderEngine, Mark>> = {\n claude: { name: 'Anthropic Claude', fill: \"#D97757\", rule: 'nonzero', d: \"M4.709 15.955l4.72-2.647.08-.23-.08-.128H9.2l-.79-.048-2.698-.073-2.339-.097-2.266-.122-.571-.121L0 11.784l.055-.352.48-.321.686.06 1.52.103 2.278.158 1.652.097 2.449.255h.389l.055-.157-.134-.098-.103-.097-2.358-1.596-2.552-1.688-1.336-.972-.724-.491-.364-.462-.158-1.008.656-.722.881.06.225.061.893.686 1.908 1.476 2.491 1.833.365.304.145-.103.019-.073-.164-.274-1.355-2.446-1.446-2.49-.644-1.032-.17-.619a2.97 2.97 0 01-.104-.729L6.283.134 6.696 0l.996.134.42.364.62 1.414 1.002 2.229 1.555 3.03.456.898.243.832.091.255h.158V9.01l.128-1.706.237-2.095.23-2.695.08-.76.376-.91.747-.492.584.28.48.685-.067.444-.286 1.851-.559 2.903-.364 1.942h.212l.243-.242.985-1.306 1.652-2.064.73-.82.85-.904.547-.431h1.033l.76 1.129-.34 1.166-1.064 1.347-.881 1.142-1.264 1.7-.79 1.36.073.11.188-.02 2.856-.606 1.543-.28 1.841-.315.833.388.091.395-.328.807-1.969.486-2.309.462-3.439.813-.042.03.049.061 1.549.146.662.036h1.622l3.02.225.79.522.474.638-.079.485-1.215.62-1.64-.389-3.829-.91-1.312-.329h-.182v.11l1.093 1.068 2.006 1.81 2.509 2.33.127.578-.322.455-.34-.049-2.205-1.657-.851-.747-1.926-1.62h-.128v.17l.444.649 2.345 3.521.122 1.08-.17.353-.608.213-.668-.122-1.374-1.925-1.415-2.167-1.143-1.943-.14.08-.674 7.254-.316.37-.729.28-.607-.461-.322-.747.322-1.476.389-1.924.315-1.53.286-1.9.17-.632-.012-.042-.14.018-1.434 1.967-2.18 2.945-1.726 1.845-.414.164-.717-.37.067-.662.401-.589 2.388-3.036 1.44-1.882.93-1.086-.006-.158h-.055L4.132 18.56l-1.13.146-.487-.456.061-.746.231-.243 1.908-1.312-.006.006z\" },\n codex: { name: 'OpenAI', fill: null, rule: 'evenodd', d: \"M9.205 8.658v-2.26c0-.19.072-.333.238-.428l4.543-2.616c.619-.357 1.356-.523 2.117-.523 2.854 0 4.662 2.212 4.662 4.566 0 .167 0 .357-.024.547l-4.71-2.759a.797.797 0 00-.856 0l-5.97 3.473zm10.609 8.8V12.06c0-.333-.143-.57-.429-.737l-5.97-3.473 1.95-1.118a.433.433 0 01.476 0l4.543 2.617c1.309.76 2.189 2.378 2.189 3.948 0 1.808-1.07 3.473-2.76 4.163zM7.802 12.703l-1.95-1.142c-.167-.095-.239-.238-.239-.428V5.899c0-2.545 1.95-4.472 4.591-4.472 1 0 1.927.333 2.712.928L8.23 5.067c-.285.166-.428.404-.428.737v6.898zM12 15.128l-2.795-1.57v-3.33L12 8.658l2.795 1.57v3.33L12 15.128zm1.796 7.23c-1 0-1.927-.332-2.712-.927l4.686-2.712c.285-.166.428-.404.428-.737v-6.898l1.974 1.142c.167.095.238.238.238.428v5.233c0 2.545-1.974 4.472-4.614 4.472zm-5.637-5.303l-4.544-2.617c-1.308-.761-2.188-2.378-2.188-3.948A4.482 4.482 0 014.21 6.327v5.423c0 .333.143.571.428.738l5.947 3.449-1.95 1.118a.432.432 0 01-.476 0zm-.262 3.9c-2.688 0-4.662-2.021-4.662-4.519 0-.19.024-.38.047-.57l4.686 2.71c.286.167.571.167.856 0l5.97-3.448v2.26c0 .19-.07.333-.237.428l-4.543 2.616c-.619.357-1.356.523-2.117.523zm5.899 2.83a5.947 5.947 0 005.827-4.756C22.287 18.339 24 15.84 24 13.296c0-1.665-.713-3.282-1.998-4.448.119-.5.19-.999.19-1.498 0-3.401-2.759-5.947-5.946-5.947-.642 0-1.26.095-1.88.31A5.962 5.962 0 0010.205 0a5.947 5.947 0 00-5.827 4.757C1.713 5.447 0 7.945 0 10.49c0 1.666.713 3.283 1.998 4.448-.119.5-.19 1-.19 1.499 0 3.401 2.759 5.946 5.946 5.946.642 0 1.26-.095 1.88-.309a5.96 5.96 0 004.162 1.713z\" },\n grok: { name: 'xAI Grok', fill: null, rule: 'evenodd', d: \"M9.27 15.29l7.978-5.897c.391-.29.95-.177 1.137.272.98 2.369.542 5.215-1.41 7.169-1.951 1.954-4.667 2.382-7.149 1.406l-2.711 1.257c3.889 2.661 8.611 2.003 11.562-.953 2.341-2.344 3.066-5.539 2.388-8.42l.006.007c-.983-4.232.242-5.924 2.75-9.383.06-.082.12-.164.179-.248l-3.301 3.305v-.01L9.267 15.292M7.623 16.723c-2.792-2.67-2.31-6.801.071-9.184 1.761-1.763 4.647-2.483 7.166-1.425l2.705-1.25a7.808 7.808 0 00-1.829-1A8.975 8.975 0 005.984 5.83c-2.533 2.536-3.33 6.436-1.962 9.764 1.022 2.487-.653 4.246-2.34 6.022-.599.63-1.199 1.259-1.682 1.925l7.62-6.815\" },\n local: { name: 'Ollama', fill: null, rule: 'evenodd', d: \"M7.905 1.09c.216.085.411.225.588.41.295.306.544.744.734 1.263.191.522.315 1.1.362 1.68a5.054 5.054 0 012.049-.636l.051-.004c.87-.07 1.73.087 2.48.474.101.053.2.11.297.17.05-.569.172-1.134.36-1.644.19-.52.439-.957.733-1.264a1.67 1.67 0 01.589-.41c.257-.1.53-.118.796-.042.401.114.745.368 1.016.737.248.337.434.769.561 1.287.23.934.27 2.163.115 3.645l.053.04.026.019c.757.576 1.284 1.397 1.563 2.35.435 1.487.216 3.155-.534 4.088l-.018.021.002.003c.417.762.67 1.567.724 2.4l.002.03c.064 1.065-.2 2.137-.814 3.19l-.007.01.01.024c.472 1.157.62 2.322.438 3.486l-.006.039a.651.651 0 01-.747.536.648.648 0 01-.54-.742c.167-1.033.01-2.069-.48-3.123a.643.643 0 01.04-.617l.004-.006c.604-.924.854-1.83.8-2.72-.046-.779-.325-1.544-.8-2.273a.644.644 0 01.18-.886l.009-.006c.243-.159.467-.565.58-1.12a4.229 4.229 0 00-.095-1.974c-.205-.7-.58-1.284-1.105-1.683-.595-.454-1.383-.673-2.38-.61a.653.653 0 01-.632-.371c-.314-.665-.772-1.141-1.343-1.436a3.288 3.288 0 00-1.772-.332c-1.245.099-2.343.801-2.67 1.686a.652.652 0 01-.61.425c-1.067.002-1.893.252-2.497.703-.522.39-.878.935-1.066 1.588a4.07 4.07 0 00-.068 1.886c.112.558.331 1.02.582 1.269l.008.007c.212.207.257.53.109.785-.36.622-.629 1.549-.673 2.44-.05 1.018.186 1.902.719 2.536l.016.019a.643.643 0 01.095.69c-.576 1.236-.753 2.252-.562 3.052a.652.652 0 01-1.269.298c-.243-1.018-.078-2.184.473-3.498l.014-.035-.008-.012a4.339 4.339 0 01-.598-1.309l-.005-.019a5.764 5.764 0 01-.177-1.785c.044-.91.278-1.842.622-2.59l.012-.026-.002-.002c-.293-.418-.51-.953-.63-1.545l-.005-.024a5.352 5.352 0 01.093-2.49c.262-.915.777-1.701 1.536-2.269.06-.045.123-.09.186-.132-.159-1.493-.119-2.73.112-3.67.127-.518.314-.95.562-1.287.27-.368.614-.622 1.015-.737.266-.076.54-.059.797.042zm4.116 9.09c.936 0 1.8.313 2.446.855.63.527 1.005 1.235 1.005 1.94 0 .888-.406 1.58-1.133 2.022-.62.375-1.451.557-2.403.557-1.009 0-1.871-.259-2.493-.734-.617-.47-.963-1.13-.963-1.845 0-.707.398-1.417 1.056-1.946.668-.537 1.55-.849 2.485-.849zm0 .896a3.07 3.07 0 00-1.916.65c-.461.37-.722.835-.722 1.25 0 .428.21.829.61 1.134.455.347 1.124.548 1.943.548.799 0 1.473-.147 1.932-.426.463-.28.7-.686.7-1.257 0-.423-.246-.89-.683-1.256-.484-.405-1.14-.643-1.864-.643zm.662 1.21l.004.004c.12.151.095.37-.056.49l-.292.23v.446a.375.375 0 01-.376.373.375.375 0 01-.376-.373v-.46l-.271-.218a.347.347 0 01-.052-.49.353.353 0 01.494-.051l.215.172.22-.174a.353.353 0 01.49.051zm-5.04-1.919c.478 0 .867.39.867.871a.87.87 0 01-.868.871.87.87 0 01-.867-.87.87.87 0 01.867-.872zm8.706 0c.48 0 .868.39.868.871a.87.87 0 01-.868.871.87.87 0 01-.867-.87.87.87 0 01.867-.872zM7.44 2.3l-.003.002a.659.659 0 00-.285.238l-.005.006c-.138.189-.258.467-.348.832-.17.692-.216 1.631-.124 2.782.43-.128.899-.208 1.404-.237l.01-.001.019-.034c.046-.082.095-.161.148-.239.123-.771.022-1.692-.253-2.444-.134-.364-.297-.65-.453-.813a.628.628 0 00-.107-.09L7.44 2.3zm9.174.04l-.002.001a.628.628 0 00-.107.09c-.156.163-.32.45-.453.814-.29.794-.387 1.776-.23 2.572l.058.097.008.014h.03a5.184 5.184 0 011.466.212c.086-1.124.038-2.043-.128-2.722-.09-.365-.21-.643-.349-.832l-.004-.006a.659.659 0 00-.285-.239h-.004z\" },\n};\n\nexport function providerName(engine: ProviderEngine): string {\n return MARKS[engine].name;\n}\n\nexport function ProviderLogo({ engine, size = 16, className, style, title, x, y }: {\n engine: ProviderEngine;\n size?: number;\n /** Position when nested inside an SVG chart (e.g. a lane label). */\n x?: number;\n y?: number;\n className?: string;\n style?: CSSProperties;\n /** Accessible name; omit when the provider's name is shown as text nearby. */\n title?: string;\n}) {\n const mark = MARKS[engine];\n if (!mark) return null;\n return (\n <svg\n viewBox=\"0 0 24 24\"\n x={x}\n y={y}\n width={size}\n height={size}\n className={className}\n style={{ flex: 'none', ...style }}\n role={title ? 'img' : undefined}\n aria-hidden={title ? undefined : true}\n aria-label={title}\n focusable=\"false\"\n data-provider={engine}\n >\n <path d={mark.d} fill={mark.fill ?? 'currentColor'} fillRule={mark.rule} />\n </svg>\n );\n}\n"],"mappings":"kDAmBM,EAAgD,CACpD,OAAQ,CAAE,KAAM,mBAAoB,KAAM,UAAW,KAAM,UAAW,EAAG,69CAA89C,EACviD,MAAO,CAAE,KAAM,SAAU,KAAM,KAAM,KAAM,UAAW,EAAG,+8CAAg9C,EACzgD,KAAM,CAAE,KAAM,WAAY,KAAM,KAAM,KAAM,UAAW,EAAG,8iBAA+iB,EACzmB,MAAO,CAAE,KAAM,SAAU,KAAM,KAAM,KAAM,UAAW,EAAG,khGAAmhG,CAC9kG,EAMA,SAAgB,EAAa,CAAE,SAAQ,OAAO,GAAI,YAAW,QAAO,QAAO,IAAG,KAU3E,CACD,IAAM,EAAO,EAAM,GAEnB,OADK,GAEH,EAAA,EAAA,IAAA,CAAC,MAAD,CACE,QAAQ,YACL,IACA,IACH,MAAO,EACP,OAAQ,EACG,YACX,MAAO,CAAE,KAAM,OAAQ,GAAG,CAAM,EAChC,KAAM,EAAQ,MAAQ,IAAA,GACtB,cAAa,IAAQ,IAAA,GACrB,aAAY,EACZ,UAAU,QACV,gBAAe,EAEf,UAAA,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,EAAG,EAAK,EAAG,KAAM,EAAK,MAAQ,eAAgB,SAAU,EAAK,IAAO,CAAA,CACvE,CAAA,EAjBW,IAmBpB"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e,c as t,n}from"./index-QesfXBsb.js";import{D as r}from"./VerseConsoleApp-BCY5uSok.js";import{i}from"./CapacityStrip-CkFz5vq2.js";import{c as a,n as o}from"./capacity-strip-model-Dn1cNOhz.js";var s=t(e(),1),c={count:`_count_16gc0_5`,dot:`_dot_16gc0_26`,pulse:`_pulse_16gc0_27`,autonomy:`_autonomy_16gc0_41`,ring:`_ring_16gc0_57`,ringTrack:`_ringTrack_16gc0_58`,ringFill:`_ringFill_16gc0_59`},l=n();function u(e){return e.stopped?`danger`:e.paused?`warning`:e.mode===`autonomous`?`success`:e.mode===`propose`?`info`:`neutral`}function d(e,t){if(!t)return null;switch(e){case`command`:{let e=t.counts.needsYou;return e>0?{kind:`count`,count:e,spoken:`, ${e} need${e===1?`s`:``} you`,tone:`warning`}:null}case`chat`:{let e=t.counts.running;if(e>0)return{kind:`pulse`,spoken:`, ${e} running`,tone:`running`};let n=t.counts.unread;return n>0?{kind:`dot`,spoken:`, ${n} unread`,tone:`info`}:null}case`fleet`:return t.autonomy?{kind:`autonomy`,spoken:`, ${t.autonomy.label}`,autonomy:t.autonomy,tone:u(t.autonomy)}:null;case`mind`:return t.mind?.unseen?{kind:`dot`,spoken:`, new memo`,tone:`info`}:null;default:return null}}function f({badge:e}){if(e.kind===`count`){let t=e.count??0;return(0,l.jsx)(`span`,{className:c.count,"data-tone":e.tone,"aria-hidden":`true`,"data-badge":`count`,children:t>99?`99+`:t})}if(e.kind===`autonomy`&&e.autonomy){let t=e.autonomy,n=t.stopped?`stopped`:t.paused?`paused`:t.mode;return(0,l.jsx)(`span`,{className:c.autonomy,"data-shape":n,"data-tone":e.tone,"aria-hidden":`true`,"data-badge":`autonomy`})}return(0,l.jsx)(`span`,{className:e.kind===`pulse`?c.pulse:c.dot,"data-tone":e.tone,"aria-hidden":`true`,"data-badge":e.kind})}function p(e){return e>=90?`critical`:e>=70?`tight`:`ok`}function m(e){if(!e)return null;let t=e.windows.find(e=>e.binding)??null,n=t?.limitReached===!0,r=e.cls===`blocked`||n?100:t?.usedPercent??null;return r===null?null:{seatId:e.seatId,label:e.label,windowLabel:t?.label??null,usedPercent:Math.max(0,Math.min(100,r)),limitReached:n,resetText:t?.resetText??null,word:e.word}}function h(e){let t=e.resetText?` · ${e.resetText}`:``;return e.limitReached?`${e.label}: ${e.windowLabel??`window`} limit reached${t}`:e.windowLabel===null?`${e.label}: ${e.word}`:`${e.label}: ${e.windowLabel} ${r(e.usedPercent)} used${t}`}function g(){let e=i({withBudget:!1});return(0,s.useMemo)(()=>m(a(o(e.seats,{health:e.health,local:`hide`}))),[e.seats,e.health])}var _=7,v=2*Math.PI*_;function y({badge:e}){let t=Math.max(0,Math.min(100,e.usedPercent)),n=p(t);return(0,l.jsxs)(`svg`,{className:c.ring,"data-tone":n,viewBox:`0 0 18 18`,width:18,height:18,"aria-hidden":`true`,focusable:`false`,children:[(0,l.jsx)(`circle`,{className:c.ringTrack,cx:`9`,cy:`9`,r:_}),(0,l.jsx)(`circle`,{className:c.ringFill,cx:`9`,cy:`9`,r:_,strokeDasharray:`${t/100*v} ${v}`,transform:`rotate(-90 9 9)`})]})}export{y as CapacityRing,f as RailBadgeMark,u as autonomyTone,p as capacityTone,h as describeRailCapacity,d as railBadgeFor,m as railCapacityFromRow,g as useRailCapacity};
|
|
2
|
+
//# sourceMappingURL=RailStatus-Vgl0GYtd.js.map
|
package/dist/core/web/public/next/assets/{RailStatus-cPRyOmrk.js.map → RailStatus-Vgl0GYtd.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RailStatus-cPRyOmrk.js","names":[],"sources":["../../../../../../src/web-ui/routes/verse/shell/RailStatus.module.css","../../../../../../src/web-ui/routes/verse/shell/RailStatus.tsx"],"sourcesContent":["/* Rail badges: pinned to the icon's own 16px box (RailIcon), so they read the\n same in the 56px and the labelled rail. Shape carries meaning; colour\n confirms it. */\n\n.count {\n position: absolute;\n top: -6px;\n right: -9px;\n min-width: 16px;\n height: 16px;\n padding: 0 4px;\n border-radius: var(--radius-full);\n /* The status pair, not solid + ink: the bg/fg tokens are the ones tuned\n for text contrast in BOTH themes (the solid flips nothing). */\n background: var(--status-warning-bg);\n box-shadow: 0 0 0 2px var(--bg-canvas), inset 0 0 0 1px var(--status-warning-solid);\n color: var(--status-warning-fg);\n font-family: var(--font-ui);\n font-size: var(--text-2xs-size);\n font-weight: var(--font-weight-semibold);\n line-height: 16px;\n text-align: center;\n font-variant-numeric: tabular-nums;\n}\n\n.dot,\n.pulse {\n position: absolute;\n top: -3px;\n right: -3px;\n width: 7px;\n height: 7px;\n border-radius: var(--radius-full);\n box-shadow: 0 0 0 2px var(--bg-canvas);\n background: var(--status-info-solid);\n}\n.pulse { background: var(--status-running-solid); animation: pulse var(--duration-pulse) ease-in-out infinite; }\n\n/* Autonomy: off = hollow ring, propose = half, autonomous = full,\n paused = a bar, stopped = a square. */\n.autonomy {\n position: absolute;\n top: -3px;\n right: -4px;\n width: 8px;\n height: 8px;\n border-radius: var(--radius-full);\n box-shadow: 0 0 0 2px var(--bg-canvas);\n border: 1.5px solid var(--text-tertiary);\n background: transparent;\n}\n.autonomy[data-shape='propose'] { border-color: var(--status-info-solid); background: linear-gradient(90deg, var(--status-info-solid) 50%, transparent 50%); }\n.autonomy[data-shape='autonomous'] { border-color: var(--status-success-solid); background: var(--status-success-solid); }\n.autonomy[data-shape='paused'] { border-radius: 1px; border: 0; width: 8px; height: 3px; top: 0; background: var(--status-warning-solid); }\n.autonomy[data-shape='stopped'] { border-radius: 1px; border-color: var(--status-danger-solid); background: var(--status-danger-solid); }\n\n.ring { display: block; }\n.ringTrack { fill: none; stroke: var(--meter-track); stroke-width: 2.5; }\n.ringFill { fill: none; stroke: var(--data-seq-5); stroke-width: 2.5; stroke-linecap: round; }\n.ring[data-tone='tight'] .ringFill { stroke: var(--status-warning-solid); }\n.ring[data-tone='critical'] .ringFill { stroke: var(--status-danger-solid); }\n\n@keyframes pulse {\n 0%, 100% { opacity: 1; }\n 50% { opacity: 0.55; }\n}\n\n@media (prefers-reduced-motion: reduce) {\n :root:not([data-motion='full']) .pulse { animation: none; }\n}\n:root[data-motion='reduce'] .pulse { animation: none; }\n","/**\n * routes/verse/shell/RailStatus.tsx — what the rail says without being\n * opened (unit C1; SPEC-310C §1 \"Rail badges\"):\n *\n * Command the Needs-you count\n * Chat a pulsing amber dot while chats run (the count rides the\n * accessible name); a quiet dot for unread replies\n * Fleet the autonomy state (off / propose / autonomous, paused, stopped)\n * Mind a dot when there is a memo the operator has not opened\n * foot a capacity ring for the scarcest seat — C6's `scarcestSeat`\n * over the shared capacity rows, so the ring and Apps & Accounts\n * can never describe the same seat two ways\n *\n * Every badge is a SHAPE plus words in the accessible name — never colour\n * alone — and an unknown state draws nothing at all: no dot is \"we do not\n * know\", never \"zero\" (the activity route may not be in this build yet).\n */\nimport { useMemo } from 'react';\nimport type {\n VerseActivityResponse,\n VerseAutonomyBadge,\n VerseCapacityBadge,\n} from '../../../../core/verse/workbench-types.js';\nimport { buildCapacityRows, scarcestSeat, type CapacityRow } from '../usage/capacity-strip-model.js';\nimport { useCapacityData } from '../usage/CapacityStrip.js';\nimport type { VerseSectionId } from '../verse-ui-store.js';\nimport styles from './RailStatus.module.css';\nimport { usedPercentText } from '../percent-text.js';\n\nexport interface RailBadge {\n /** Appended to the rail button's accessible name (\", 3 need you\"). */\n spoken: string;\n kind: 'count' | 'pulse' | 'dot' | 'autonomy';\n /** The visible count, for `count`. */\n count?: number;\n tone?: 'running' | 'info' | 'warning' | 'danger' | 'success' | 'neutral';\n autonomy?: VerseAutonomyBadge;\n}\n\nexport function autonomyTone(badge: VerseAutonomyBadge): NonNullable<RailBadge['tone']> {\n if (badge.stopped) return 'danger';\n if (badge.paused) return 'warning';\n if (badge.mode === 'autonomous') return 'success';\n if (badge.mode === 'propose') return 'info';\n return 'neutral';\n}\n\n/** The badge a rail item shows, or null (nothing to say, or not known). */\nexport function railBadgeFor(section: VerseSectionId, data: VerseActivityResponse | null): RailBadge | null {\n if (!data) return null;\n switch (section) {\n case 'command': {\n const n = data.counts.needsYou;\n return n > 0 ? { kind: 'count', count: n, spoken: `, ${n} need${n === 1 ? 's' : ''} you`, tone: 'warning' } : null;\n }\n case 'chat': {\n const running = data.counts.running;\n if (running > 0) return { kind: 'pulse', spoken: `, ${running} running`, tone: 'running' };\n const unread = data.counts.unread;\n return unread > 0 ? { kind: 'dot', spoken: `, ${unread} unread`, tone: 'info' } : null;\n }\n case 'fleet':\n return data.autonomy ? { kind: 'autonomy', spoken: `, ${data.autonomy.label}`, autonomy: data.autonomy, tone: autonomyTone(data.autonomy) } : null;\n case 'mind':\n return data.mind?.unseen ? { kind: 'dot', spoken: ', new memo', tone: 'info' } : null;\n default:\n return null;\n }\n}\n\nexport function RailBadgeMark({ badge }: { badge: RailBadge }) {\n if (badge.kind === 'count') {\n const n = badge.count ?? 0;\n return (\n <span className={styles.count} data-tone={badge.tone} aria-hidden=\"true\" data-badge=\"count\">\n {n > 99 ? '99+' : n}\n </span>\n );\n }\n if (badge.kind === 'autonomy' && badge.autonomy) {\n const a = badge.autonomy;\n const shape = a.stopped ? 'stopped' : a.paused ? 'paused' : a.mode;\n return <span className={styles.autonomy} data-shape={shape} data-tone={badge.tone} aria-hidden=\"true\" data-badge=\"autonomy\" />;\n }\n return <span className={badge.kind === 'pulse' ? styles.pulse : styles.dot} data-tone={badge.tone} aria-hidden=\"true\" data-badge={badge.kind} />;\n}\n\n// ---------------------------------------------------------------------------\n// Capacity ring\n// ---------------------------------------------------------------------------\n\nexport function capacityTone(usedPercent: number): 'ok' | 'tight' | 'critical' {\n if (usedPercent >= 90) return 'critical';\n if (usedPercent >= 70) return 'tight';\n return 'ok';\n}\n\n/**\n * What the rail foot shows for the scarcest seat: one CapacityRow (C6's\n * projection) reduced to a ring and a sentence. Built ONLY from a row that\n * `scarcestSeat` chose, so there is always a measured binding window or a\n * blocked seat behind it — never an invented percent.\n */\nexport interface RailCapacity {\n seatId: string;\n label: string;\n /** \"5-hour window\", \"weekly fable window\"; null when the seat is blocked with no window read. */\n windowLabel: string | null;\n /** 0–100 for the ring. A reached limit or a blocked seat fills it. */\n usedPercent: number;\n limitReached: boolean;\n /** Provider prose or a formatted instant; null when neither. */\n resetText: string | null;\n /** \"blocked\", \"tight\", … — C6's word for the class. */\n word: string;\n}\n\nexport function railCapacityFromRow(row: CapacityRow | null): RailCapacity | null {\n if (!row) return null;\n const binding = row.windows.find((w) => w.binding) ?? null;\n const limitReached = binding?.limitReached === true;\n // Blocked (signed out, out of usage) reads as a full ring whatever the last\n // window said: the engine will refuse a turn on it.\n const used = row.cls === 'blocked' || limitReached ? 100 : binding?.usedPercent ?? null;\n if (used === null) return null;\n return {\n seatId: row.seatId,\n label: row.label,\n windowLabel: binding?.label ?? null,\n usedPercent: Math.max(0, Math.min(100, used)),\n limitReached,\n resetText: binding?.resetText ?? null,\n word: row.word,\n };\n}\n\n/** \"Claude Max: weekly fable window 92% used · resets Sep 25\" — the tooltip and the accessible name. */\nexport function describeRailCapacity(c: RailCapacity): string {\n const reset = c.resetText ? ` · ${c.resetText}` : '';\n if (c.limitReached) return `${c.label}: ${c.windowLabel ?? 'window'} limit reached${reset}`;\n if (c.windowLabel === null) return `${c.label}: ${c.word}`;\n return `${c.label}: ${c.windowLabel} ${usedPercentText(c.usedPercent)} used${reset}`;\n}\n\n/**\n * The rail's scarcest seat, live. Reads the app-wide seat + health caches the\n * capacity strip uses (mounting it costs no extra request when Apps or Usage\n * is also mounted). Budget is NOT read: the reserve does not change which\n * seat is closest to running out, and the rail is on screen on every surface,\n * so it should not keep the 60 s budget poll alive by itself. Local seats are\n * left out — they have no quota to run out of.\n */\nexport function useRailCapacity(): RailCapacity | null {\n const data = useCapacityData({ withBudget: false });\n return useMemo(\n () => railCapacityFromRow(scarcestSeat(buildCapacityRows(data.seats, { health: data.health, local: 'hide' }))),\n [data.seats, data.health],\n );\n}\n\nconst R = 7;\nconst C = 2 * Math.PI * R;\n\nexport function CapacityRing({ badge }: { badge: Pick<VerseCapacityBadge, 'usedPercent'> }) {\n const used = Math.max(0, Math.min(100, badge.usedPercent));\n const tone = capacityTone(used);\n return (\n <svg className={styles.ring} data-tone={tone} viewBox=\"0 0 18 18\" width={18} height={18} aria-hidden=\"true\" focusable=\"false\">\n <circle className={styles.ringTrack} cx=\"9\" cy=\"9\" r={R} />\n <circle\n className={styles.ringFill}\n cx=\"9\"\n cy=\"9\"\n r={R}\n strokeDasharray={`${(used / 100) * C} ${C}`}\n transform=\"rotate(-90 9 9)\"\n />\n </svg>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RailStatus-Vgl0GYtd.js","names":[],"sources":["../../../../../../src/web-ui/routes/verse/shell/RailStatus.module.css","../../../../../../src/web-ui/routes/verse/shell/RailStatus.tsx"],"sourcesContent":["/* Rail badges: pinned to the icon's own 16px box (RailIcon), so they read the\n same in the 56px and the labelled rail. Shape carries meaning; colour\n confirms it. */\n\n.count {\n position: absolute;\n top: -6px;\n right: -9px;\n min-width: 16px;\n height: 16px;\n padding: 0 4px;\n border-radius: var(--radius-full);\n /* The status pair, not solid + ink: the bg/fg tokens are the ones tuned\n for text contrast in BOTH themes (the solid flips nothing). */\n background: var(--status-warning-bg);\n box-shadow: 0 0 0 2px var(--bg-canvas), inset 0 0 0 1px var(--status-warning-solid);\n color: var(--status-warning-fg);\n font-family: var(--font-ui);\n font-size: var(--text-2xs-size);\n font-weight: var(--font-weight-semibold);\n line-height: 16px;\n text-align: center;\n font-variant-numeric: tabular-nums;\n}\n\n.dot,\n.pulse {\n position: absolute;\n top: -3px;\n right: -3px;\n width: 7px;\n height: 7px;\n border-radius: var(--radius-full);\n box-shadow: 0 0 0 2px var(--bg-canvas);\n background: var(--status-info-solid);\n}\n.pulse { background: var(--status-running-solid); animation: pulse var(--duration-pulse) ease-in-out infinite; }\n\n/* Autonomy: off = hollow ring, propose = half, autonomous = full,\n paused = a bar, stopped = a square. */\n.autonomy {\n position: absolute;\n top: -3px;\n right: -4px;\n width: 8px;\n height: 8px;\n border-radius: var(--radius-full);\n box-shadow: 0 0 0 2px var(--bg-canvas);\n border: 1.5px solid var(--text-tertiary);\n background: transparent;\n}\n.autonomy[data-shape='propose'] { border-color: var(--status-info-solid); background: linear-gradient(90deg, var(--status-info-solid) 50%, transparent 50%); }\n.autonomy[data-shape='autonomous'] { border-color: var(--status-success-solid); background: var(--status-success-solid); }\n.autonomy[data-shape='paused'] { border-radius: 1px; border: 0; width: 8px; height: 3px; top: 0; background: var(--status-warning-solid); }\n.autonomy[data-shape='stopped'] { border-radius: 1px; border-color: var(--status-danger-solid); background: var(--status-danger-solid); }\n\n.ring { display: block; }\n.ringTrack { fill: none; stroke: var(--meter-track); stroke-width: 2.5; }\n.ringFill { fill: none; stroke: var(--data-seq-5); stroke-width: 2.5; stroke-linecap: round; }\n.ring[data-tone='tight'] .ringFill { stroke: var(--status-warning-solid); }\n.ring[data-tone='critical'] .ringFill { stroke: var(--status-danger-solid); }\n\n@keyframes pulse {\n 0%, 100% { opacity: 1; }\n 50% { opacity: 0.55; }\n}\n\n@media (prefers-reduced-motion: reduce) {\n :root:not([data-motion='full']) .pulse { animation: none; }\n}\n:root[data-motion='reduce'] .pulse { animation: none; }\n","/**\n * routes/verse/shell/RailStatus.tsx — what the rail says without being\n * opened (unit C1; SPEC-310C §1 \"Rail badges\"):\n *\n * Command the Needs-you count\n * Chat a pulsing amber dot while chats run (the count rides the\n * accessible name); a quiet dot for unread replies\n * Fleet the autonomy state (off / propose / autonomous, paused, stopped)\n * Mind a dot when there is a memo the operator has not opened\n * foot a capacity ring for the scarcest seat — C6's `scarcestSeat`\n * over the shared capacity rows, so the ring and Apps & Accounts\n * can never describe the same seat two ways\n *\n * Every badge is a SHAPE plus words in the accessible name — never colour\n * alone — and an unknown state draws nothing at all: no dot is \"we do not\n * know\", never \"zero\" (the activity route may not be in this build yet).\n */\nimport { useMemo } from 'react';\nimport type {\n VerseActivityResponse,\n VerseAutonomyBadge,\n VerseCapacityBadge,\n} from '../../../../core/verse/workbench-types.js';\nimport { buildCapacityRows, scarcestSeat, type CapacityRow } from '../usage/capacity-strip-model.js';\nimport { useCapacityData } from '../usage/CapacityStrip.js';\nimport type { VerseSectionId } from '../verse-ui-store.js';\nimport styles from './RailStatus.module.css';\nimport { usedPercentText } from '../percent-text.js';\n\nexport interface RailBadge {\n /** Appended to the rail button's accessible name (\", 3 need you\"). */\n spoken: string;\n kind: 'count' | 'pulse' | 'dot' | 'autonomy';\n /** The visible count, for `count`. */\n count?: number;\n tone?: 'running' | 'info' | 'warning' | 'danger' | 'success' | 'neutral';\n autonomy?: VerseAutonomyBadge;\n}\n\nexport function autonomyTone(badge: VerseAutonomyBadge): NonNullable<RailBadge['tone']> {\n if (badge.stopped) return 'danger';\n if (badge.paused) return 'warning';\n if (badge.mode === 'autonomous') return 'success';\n if (badge.mode === 'propose') return 'info';\n return 'neutral';\n}\n\n/** The badge a rail item shows, or null (nothing to say, or not known). */\nexport function railBadgeFor(section: VerseSectionId, data: VerseActivityResponse | null): RailBadge | null {\n if (!data) return null;\n switch (section) {\n case 'command': {\n const n = data.counts.needsYou;\n return n > 0 ? { kind: 'count', count: n, spoken: `, ${n} need${n === 1 ? 's' : ''} you`, tone: 'warning' } : null;\n }\n case 'chat': {\n const running = data.counts.running;\n if (running > 0) return { kind: 'pulse', spoken: `, ${running} running`, tone: 'running' };\n const unread = data.counts.unread;\n return unread > 0 ? { kind: 'dot', spoken: `, ${unread} unread`, tone: 'info' } : null;\n }\n case 'fleet':\n return data.autonomy ? { kind: 'autonomy', spoken: `, ${data.autonomy.label}`, autonomy: data.autonomy, tone: autonomyTone(data.autonomy) } : null;\n case 'mind':\n return data.mind?.unseen ? { kind: 'dot', spoken: ', new memo', tone: 'info' } : null;\n default:\n return null;\n }\n}\n\nexport function RailBadgeMark({ badge }: { badge: RailBadge }) {\n if (badge.kind === 'count') {\n const n = badge.count ?? 0;\n return (\n <span className={styles.count} data-tone={badge.tone} aria-hidden=\"true\" data-badge=\"count\">\n {n > 99 ? '99+' : n}\n </span>\n );\n }\n if (badge.kind === 'autonomy' && badge.autonomy) {\n const a = badge.autonomy;\n const shape = a.stopped ? 'stopped' : a.paused ? 'paused' : a.mode;\n return <span className={styles.autonomy} data-shape={shape} data-tone={badge.tone} aria-hidden=\"true\" data-badge=\"autonomy\" />;\n }\n return <span className={badge.kind === 'pulse' ? styles.pulse : styles.dot} data-tone={badge.tone} aria-hidden=\"true\" data-badge={badge.kind} />;\n}\n\n// ---------------------------------------------------------------------------\n// Capacity ring\n// ---------------------------------------------------------------------------\n\nexport function capacityTone(usedPercent: number): 'ok' | 'tight' | 'critical' {\n if (usedPercent >= 90) return 'critical';\n if (usedPercent >= 70) return 'tight';\n return 'ok';\n}\n\n/**\n * What the rail foot shows for the scarcest seat: one CapacityRow (C6's\n * projection) reduced to a ring and a sentence. Built ONLY from a row that\n * `scarcestSeat` chose, so there is always a measured binding window or a\n * blocked seat behind it — never an invented percent.\n */\nexport interface RailCapacity {\n seatId: string;\n label: string;\n /** \"5-hour window\", \"weekly fable window\"; null when the seat is blocked with no window read. */\n windowLabel: string | null;\n /** 0–100 for the ring. A reached limit or a blocked seat fills it. */\n usedPercent: number;\n limitReached: boolean;\n /** Provider prose or a formatted instant; null when neither. */\n resetText: string | null;\n /** \"blocked\", \"tight\", … — C6's word for the class. */\n word: string;\n}\n\nexport function railCapacityFromRow(row: CapacityRow | null): RailCapacity | null {\n if (!row) return null;\n const binding = row.windows.find((w) => w.binding) ?? null;\n const limitReached = binding?.limitReached === true;\n // Blocked (signed out, out of usage) reads as a full ring whatever the last\n // window said: the engine will refuse a turn on it.\n const used = row.cls === 'blocked' || limitReached ? 100 : binding?.usedPercent ?? null;\n if (used === null) return null;\n return {\n seatId: row.seatId,\n label: row.label,\n windowLabel: binding?.label ?? null,\n usedPercent: Math.max(0, Math.min(100, used)),\n limitReached,\n resetText: binding?.resetText ?? null,\n word: row.word,\n };\n}\n\n/** \"Claude Max: weekly fable window 92% used · resets Sep 25\" — the tooltip and the accessible name. */\nexport function describeRailCapacity(c: RailCapacity): string {\n const reset = c.resetText ? ` · ${c.resetText}` : '';\n if (c.limitReached) return `${c.label}: ${c.windowLabel ?? 'window'} limit reached${reset}`;\n if (c.windowLabel === null) return `${c.label}: ${c.word}`;\n return `${c.label}: ${c.windowLabel} ${usedPercentText(c.usedPercent)} used${reset}`;\n}\n\n/**\n * The rail's scarcest seat, live. Reads the app-wide seat + health caches the\n * capacity strip uses (mounting it costs no extra request when Apps or Usage\n * is also mounted). Budget is NOT read: the reserve does not change which\n * seat is closest to running out, and the rail is on screen on every surface,\n * so it should not keep the 60 s budget poll alive by itself. Local seats are\n * left out — they have no quota to run out of.\n */\nexport function useRailCapacity(): RailCapacity | null {\n const data = useCapacityData({ withBudget: false });\n return useMemo(\n () => railCapacityFromRow(scarcestSeat(buildCapacityRows(data.seats, { health: data.health, local: 'hide' }))),\n [data.seats, data.health],\n );\n}\n\nconst R = 7;\nconst C = 2 * Math.PI * R;\n\nexport function CapacityRing({ badge }: { badge: Pick<VerseCapacityBadge, 'usedPercent'> }) {\n const used = Math.max(0, Math.min(100, badge.usedPercent));\n const tone = capacityTone(used);\n return (\n <svg className={styles.ring} data-tone={tone} viewBox=\"0 0 18 18\" width={18} height={18} aria-hidden=\"true\" focusable=\"false\">\n <circle className={styles.ringTrack} cx=\"9\" cy=\"9\" r={R} />\n <circle\n className={styles.ringFill}\n cx=\"9\"\n cy=\"9\"\n r={R}\n strokeDasharray={`${(used / 100) * C} ${C}`}\n transform=\"rotate(-90 9 9)\"\n />\n </svg>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{n as e}from"./index-
|
|
2
|
-
//# sourceMappingURL=RefreshIndicator-
|
|
1
|
+
import{n as e}from"./index-QesfXBsb.js";var t={root:`_root_1lgxn_1`,spinner:`_spinner_1lgxn_9`,spin:`_spin_1lgxn_9`},n=e();function r({label:e=`Refreshing`}){return(0,n.jsxs)(`span`,{className:t.root,role:`status`,"aria-live":`polite`,children:[(0,n.jsx)(`span`,{className:t.spinner,"aria-hidden":`true`}),(0,n.jsx)(`span`,{className:`visually-hidden`,children:e})]})}export{r as t};
|
|
2
|
+
//# sourceMappingURL=RefreshIndicator-CSyqpY_q.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RefreshIndicator-
|
|
1
|
+
{"version":3,"file":"RefreshIndicator-CSyqpY_q.js","names":[],"sources":["../../../../../../src/web-ui/components/primitives/RefreshIndicator.module.css","../../../../../../src/web-ui/components/primitives/RefreshIndicator.tsx"],"sourcesContent":[".root {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 14px;\n height: 14px;\n}\n\n.spinner {\n width: 12px;\n height: 12px;\n border-radius: var(--radius-full);\n border: 2px solid var(--border-strong);\n border-top-color: var(--accent-500);\n animation: spin 0.7s linear infinite;\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n :root:not([data-motion=\"full\"]) .spinner {\n animation: none;\n border-top-color: var(--border-strong);\n }\n}\n\n:root[data-motion=\"reduce\"] .spinner {\n animation: none;\n border-top-color: var(--border-strong);\n}\n","/**\n * components/primitives/RefreshIndicator.tsx — the \"stale data, quietly\n * refreshing\" signal (foundation brief item 4: never blank the screen on\n * refresh). Pair with a QueryEntry's `status`:\n *\n * loading -> render a Skeleton instead of the view\n * refreshing -> render the view with data, plus <RefreshIndicator />\n * success -> render the view with data, no indicator\n * error -> render the view's error state\n */\nimport styles from './RefreshIndicator.module.css';\n\nexport function RefreshIndicator({ label = 'Refreshing' }: { label?: string }) {\n return (\n <span className={styles.root} role=\"status\" aria-live=\"polite\">\n <span className={styles.spinner} aria-hidden=\"true\" />\n <span className=\"visually-hidden\">{label}</span>\n </span>\n );\n}\n"],"mappings":"2HCYA,SAAgB,EAAiB,CAAE,QAAQ,cAAoC,CAC7E,OACE,EAAA,EAAA,KAAA,CAAC,OAAD,CAAM,UAAW,EAAO,KAAM,KAAK,SAAS,YAAU,SAAtD,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAW,EAAO,QAAS,cAAY,MAAQ,CAAA,GACrD,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,kBAAmB,SAAA,CAAY,CAAA,CAC3C,GAEV"}
|