@wrongstack/webui 1.0.19 → 1.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/AgentRosterView-udJ14GYq.js +12 -0
- package/dist/assets/{AnalyticsDashboard-DmQd0E0V.js → AnalyticsDashboard-DwF-0cUA.js} +1 -1
- package/dist/assets/AudienceMemoryPanel-DpBGeZv_.js +3 -0
- package/dist/assets/ChangesView-BfM0T_aS.js +3 -0
- package/dist/assets/ChimeraReviewsView-Q_5C4DU1.js +1 -0
- package/dist/assets/ChronicleDashboard-D6LnZzhy.js +1 -0
- package/dist/assets/CodeEditor-DonrWH9u.js +2 -0
- package/dist/assets/CodeMap-Dxtc378S.js +1 -0
- package/dist/assets/{CronJobsPanel-TcZy_W2t.js → CronJobsPanel-Cn2PQO_p.js} +1 -1
- package/dist/assets/{DeadCodeScanPanel-BOD2JEyf.js → DeadCodeScanPanel-Mc5py-kJ.js} +1 -1
- package/dist/assets/{DebugDashboard-DFPNPzQ_.js → DebugDashboard-D0LRcT4J.js} +1 -1
- package/dist/assets/{DesignGalleryView-BXABwAji.js → DesignGalleryView-DAD-wRUc.js} +1 -1
- package/dist/assets/GoalView-CqeSw0tK.js +1 -0
- package/dist/assets/KanbanView-V-bkFftp.js +3 -0
- package/dist/assets/{MailboxDetailView-QyNmt1Gv.js → MailboxDetailView-CTEjap3r.js} +1 -1
- package/dist/assets/{MemoryDrawer-BZsyD1dh.js → MemoryDrawer-RCduY0FV.js} +1 -1
- package/dist/assets/MemoryManager-B-p6-Bic.js +1 -0
- package/dist/assets/{ProcessMonitor-Bz0jZvHJ.js → ProcessMonitor-B9tpPo4r.js} +1 -1
- package/dist/assets/PromptJournalView-DVNqlac9.js +1 -0
- package/dist/assets/ProviderTestView-mmfpnAbZ.js +1 -0
- package/dist/assets/QueuePanel-BB9qozjm.js +1 -0
- package/dist/assets/{RefreshDebugView-_XPrBDq3.js → RefreshDebugView-CCCWzq29.js} +1 -1
- package/dist/assets/{RepositoryHistoryView-Wlnvi5r1.js → RepositoryHistoryView-RQVRkkUU.js} +2 -2
- package/dist/assets/RequirementIntakeView-D_JRhgzW.js +1 -0
- package/dist/assets/{SageTabs-qrBn3VQr.js → SageTabs--k2hQTvl.js} +2 -2
- package/dist/assets/SddFlowGraph-DKrrRXKy.js +1 -0
- package/dist/assets/SddHub-B5XO56oY.js +2 -0
- package/dist/assets/{SessionInspectView-CuRk2DS0.js → SessionInspectView-j3VJwXNi.js} +1 -1
- package/dist/assets/SessionList-CCVHBseu.js +1 -0
- package/dist/assets/{SessionsDashboard-CSkm28Bx.js → SessionsDashboard-DsM7sXQw.js} +1 -1
- package/dist/assets/SetupScreen-DeuR8Y8S.js +1 -0
- package/dist/assets/SkillDetailView-BeZyGIpW.js +3 -0
- package/dist/assets/TechStackView-CpSMRQE0.js +2 -0
- package/dist/assets/TerminalPanel-BVJ5w-5R.js +1 -0
- package/dist/assets/activity-BS2aW_NN.js +10 -0
- package/dist/assets/activity-CR2KFruY.js +10 -0
- package/dist/assets/activity-Cd0qM2Hx.js +10 -0
- package/dist/assets/activity-DyXRoY2s.js +10 -0
- package/dist/assets/activity-bBAOetvE.js +10 -0
- package/dist/assets/activity-fI3Jy_jD.js +10 -0
- package/dist/assets/activity-t6fUmVjo.js +10 -0
- package/dist/assets/{button-BbeB5Qm8.js → button-UuKTnoM-.js} +1 -1
- package/dist/assets/chat-9GLubejR.js +1 -0
- package/dist/assets/chat-B50ssTLh.js +1 -0
- package/dist/assets/chat-CDioiM1L.js +1 -0
- package/dist/assets/chat-Cll_3gXD.js +1 -0
- package/dist/assets/chat-Cqhc6jQa.js +1 -0
- package/dist/assets/chat-DN1MggWt.js +1 -0
- package/dist/assets/chat-fyvZyUZM.js +1 -0
- package/dist/assets/chat-store-uzGtJfDz.js +1 -0
- package/dist/assets/{codemap-activity-store-Ha7XbGgq.js → codemap-activity-store-WjfEZe4_.js} +1 -1
- package/dist/assets/common-Bjl7V12m.js +1 -0
- package/dist/assets/common-BtyQBZBN.js +1 -0
- package/dist/assets/common-D0QL7rwb.js +1 -0
- package/dist/assets/common-DJRPtYAt.js +1 -0
- package/dist/assets/common-DPPTV3yw.js +1 -0
- package/dist/assets/common-DvjdaRhB.js +1 -0
- package/dist/assets/common-opV6EoLd.js +1 -0
- package/dist/assets/config-store-P5_updTQ.js +21 -0
- package/dist/assets/{dialog-b-Ai37sa.js → dialog-BDUaV5gY.js} +1 -1
- package/dist/assets/{empty-state-pfuS5znr.js → empty-state-BzoEa04Q.js} +1 -1
- package/dist/assets/{fonts-DRGbd-AM.js → fonts-C303yVU_.js} +2 -2
- package/dist/assets/i18n-t7rIS4DB.js +3 -0
- package/dist/assets/index-B4ELbNoz.js +181 -0
- package/dist/assets/index-qdrakcnP.css +1 -0
- package/dist/assets/{input-BA6D2L3K.js → input-DMnC2O7-.js} +1 -1
- package/dist/assets/{mailbox-store-ZQO_Rv6E.js → mailbox-store-DyOOYbni.js} +1 -1
- package/dist/assets/roster-ws-szSqUkqP.js +1 -0
- package/dist/assets/settings-BMHZcBqe.js +1 -0
- package/dist/assets/settings-BQ5J8WXE.js +1 -0
- package/dist/assets/settings-BfNJfO4z.js +1 -0
- package/dist/assets/settings-ClDQ01ie.js +1 -0
- package/dist/assets/settings-DD31lC4f.js +1 -0
- package/dist/assets/settings-Da3EIcna.js +1 -0
- package/dist/assets/settings-Dl_QM2QZ.js +1 -0
- package/dist/assets/{shared-BFJvAYzX.js → shared-CLNEiW00.js} +1 -1
- package/dist/assets/stores-Cx52UOxM.js +7 -0
- package/dist/assets/toasts-3tM1krOo.js +1 -0
- package/dist/assets/toasts-BrHW33qA.js +1 -0
- package/dist/assets/toasts-Buww129h.js +1 -0
- package/dist/assets/toasts-CSN9Fy47.js +1 -0
- package/dist/assets/toasts-DOoYxbHd.js +1 -0
- package/dist/assets/toasts-DkDnbhs_.js +1 -0
- package/dist/assets/toasts-Jo4VH13n.js +1 -0
- package/dist/assets/ui-store-DI0iusYZ.js +1 -0
- package/dist/assets/{utils-CKsqCaP8.js → utils-B21Devim.js} +1 -1
- package/dist/assets/{vector-memory-panel-YWv6xcza.js → vector-memory-panel-DnX-ODHC.js} +1 -1
- package/dist/assets/{vendor-V3ydTHqN.js → vendor-BfBvt432.js} +28 -28
- package/dist/assets/{view-navigation-DTs4cSQ6.js → view-navigation-Cvrp_uJm.js} +1 -1
- package/dist/components/BrowserLivePane.d.ts +2 -0
- package/dist/components/ChangesView.d.ts +3 -1
- package/dist/components/ChatInput/chat-input-bars.d.ts +1 -1
- package/dist/components/ChatInput/image-attachments.d.ts +19 -2
- package/dist/components/ChatInput/skill-mention-picker.d.ts +10 -0
- package/dist/components/ChatInput/slash-routing.d.ts +18 -0
- package/dist/components/ChatInput/use-paste-drop.d.ts +3 -0
- package/dist/components/ChatInput/use-prompt-queue-view.d.ts +13 -0
- package/dist/components/ChatView/BackgroundShellStrip.d.ts +16 -0
- package/dist/components/ChatView/TerminalStrip.d.ts +8 -0
- package/dist/components/CodeMap.d.ts +0 -12
- package/dist/components/CustomRosterPanel.d.ts +0 -1
- package/dist/components/GoalPanel.d.ts +2 -1
- package/dist/components/ImageDiffView.d.ts +12 -0
- package/dist/components/KanbanTaskExecution.d.ts +64 -0
- package/dist/components/KanbanTaskInspector.d.ts +1 -1
- package/dist/components/MessageBubble/AttachmentGallery.d.ts +1 -1
- package/dist/components/MessageBubble/GeneratedImagePreview.d.ts +10 -0
- package/dist/components/OfficeMapCanvas.d.ts +0 -7
- package/dist/components/SessionTabBar/summaries.d.ts +4 -0
- package/dist/components/SettingsPanel/BrainSection.d.ts +1 -1
- package/dist/components/SettingsPanel/JevSection.d.ts +4 -0
- package/dist/components/SettingsPanel/LimitsSection.d.ts +7 -0
- package/dist/components/SettingsPanel/MCPSection.d.ts +1 -37
- package/dist/components/SettingsPanel/MCPServerCards.d.ts +67 -0
- package/dist/components/SettingsPanel/MCPServerDialog.d.ts +11 -0
- package/dist/components/SettingsPanel/OAuthLoginSection.d.ts +2 -0
- package/dist/components/SettingsPanel/PreferenceControls.d.ts +8 -0
- package/dist/components/SettingsPanel/ProviderSavedProfiles.d.ts +50 -0
- package/dist/components/SettingsPanel/ProviderSection.d.ts +2 -79
- package/dist/components/SettingsPanel/SettingsNavigation.d.ts +12 -0
- package/dist/components/SettingsPanel/brain-section-options.d.ts +2 -3
- package/dist/components/SettingsPanel/contracts.d.ts +1 -0
- package/dist/components/SettingsPanel/official-servers.d.ts +1 -0
- package/dist/components/SettingsPanel/provider-section-types.d.ts +79 -0
- package/dist/components/SettingsPanel/use-brain-section.d.ts +28 -0
- package/dist/components/SidePanel/SessionList.d.ts +1 -34
- package/dist/components/SidePanel/session-history.d.ts +61 -0
- package/dist/components/SkillDetailView.d.ts +1 -1
- package/dist/components/SystemPromptPresetEditor.d.ts +9 -0
- package/dist/components/TerminalPanel.d.ts +8 -1
- package/dist/components/WorkspaceDock.d.ts +2 -2
- package/dist/components/chronicle-event-detail.d.ts +51 -0
- package/dist/components/context-dashboard-sections.d.ts +79 -0
- package/dist/components/review/ReviewDiff.d.ts +21 -0
- package/dist/components/review/ReviewTray.d.ts +15 -0
- package/dist/components/review/review-diff-model.d.ts +31 -0
- package/dist/components/use-code-map-flow.d.ts +25 -0
- package/dist/components/use-office-map-canvas.d.ts +42 -0
- package/dist/components/use-office-map-topology.d.ts +31 -0
- package/dist/components/use-skill-detail.d.ts +177 -0
- package/dist/components/vector-memory-panel/model.d.ts +9 -0
- package/dist/hooks/use-live-browser.d.ts +7 -0
- package/dist/hooks/useProviderModels.d.ts +2 -0
- package/dist/hooks/useWebSocket.d.ts +4 -5
- package/dist/hooks/ws-handlers/brain-handlers.d.ts +18 -0
- package/dist/hooks/ws-handlers/goal-handlers.d.ts +9 -0
- package/dist/hooks/ws-handlers/misc-handlers.d.ts +2 -21
- package/dist/hooks/ws-handlers/prompt-queue-handlers.d.ts +18 -0
- package/dist/index.css +3013 -3013
- package/dist/index.html +19 -19
- package/dist/index.js +98758 -91674
- package/dist/lib/auth-operation.d.ts +5 -0
- package/dist/lib/compact-file-tree.d.ts +30 -0
- package/dist/lib/project-image.d.ts +26 -0
- package/dist/lib/provider-warm.d.ts +3 -0
- package/dist/lib/sdd-theme.d.ts +2 -2
- package/dist/lib/ws-client-actions.d.ts +2 -0
- package/dist/lib/ws-client-domain-methods.d.ts +1 -1
- package/dist/lib/ws-client-session-methods.d.ts +3 -1
- package/dist/lib/ws-client.d.ts +3 -3
- package/dist/stores/chat-lane-data.d.ts +153 -0
- package/dist/stores/chat-lanes.d.ts +3 -174
- package/dist/stores/chat-queue-helpers.d.ts +9 -0
- package/dist/stores/chat-store-types.d.ts +3 -0
- package/dist/stores/chat-store.d.ts +1 -1
- package/dist/stores/context-editor-store.d.ts +1 -1
- package/dist/stores/council-log-store.d.ts +4 -0
- package/dist/stores/fleet-transcript.d.ts +14 -0
- package/dist/stores/git-changes-store.d.ts +3 -0
- package/dist/stores/goal-run-store.d.ts +8 -0
- package/dist/stores/goal-state-store.d.ts +3 -0
- package/dist/stores/goal-store.d.ts +9 -11
- package/dist/stores/local-prefs-defaults.d.ts +340 -0
- package/dist/stores/local-prefs.d.ts +2 -318
- package/dist/stores/notification-store.d.ts +9 -0
- package/dist/stores/review-store.d.ts +54 -0
- package/dist/stores/session-activity.d.ts +33 -0
- package/dist/stores/session-tab-store.d.ts +1 -46
- package/dist/stores/terminal-strip-store.d.ts +26 -0
- package/dist/stores/ui-store-chrome.d.ts +1 -1
- package/dist/stores/ui-store-persist.d.ts +2 -2
- package/dist/stores/ui-store-types.d.ts +4 -4
- package/dist/stores/ui-store.d.ts +5 -5
- package/dist/types/brain.d.ts +4 -2
- package/dist/types/client-message.d.ts +132 -11
- package/dist/types/jev.d.ts +62 -0
- package/dist/types/prompt-queue.d.ts +55 -0
- package/dist/types/protocol-core.d.ts +4 -216
- package/dist/types/runtime.d.ts +6 -39
- package/dist/types/server-message-files.d.ts +22 -0
- package/dist/types/server-message-mcp.d.ts +30 -0
- package/dist/types/server-message-system.d.ts +114 -0
- package/dist/types/server-message.d.ts +4 -3
- package/dist/types/system.d.ts +4 -24
- package/package.json +11 -10
- package/dist/assets/AgentRosterView-D4TuVXe8.js +0 -12
- package/dist/assets/AudienceMemoryPanel-DHJM4rf1.js +0 -3
- package/dist/assets/ChangesView-CZ-nCe26.js +0 -1
- package/dist/assets/ChimeraReviewsView-CNeRLesP.js +0 -1
- package/dist/assets/ChronicleDashboard-CYELq7EO.js +0 -1
- package/dist/assets/CodeEditor-CLscjkIR.js +0 -2
- package/dist/assets/CodeMap-CdVy9Q7V.js +0 -1
- package/dist/assets/GoalView-Cepqrg9l.js +0 -1
- package/dist/assets/KanbanView-FSePkLch.js +0 -3
- package/dist/assets/MemoryManager-IHmhWn4P.js +0 -1
- package/dist/assets/PromptJournalView-Ct8cLcGU.js +0 -1
- package/dist/assets/ProviderTestView-Dy3k2bVu.js +0 -1
- package/dist/assets/QueuePanel-oVkTB68Q.js +0 -1
- package/dist/assets/RequirementIntakeView-Cj5arGFF.js +0 -1
- package/dist/assets/SddFlowGraph-DS8R2zEj.js +0 -1
- package/dist/assets/SddHub-C8pHQYSM.js +0 -2
- package/dist/assets/SessionList-BgRb1Mp4.js +0 -1
- package/dist/assets/SetupScreen-CNcJ_9O9.js +0 -1
- package/dist/assets/SkillDetailView-Bc9owpaX.js +0 -3
- package/dist/assets/TechStackView-BHiGCRBT.js +0 -2
- package/dist/assets/TerminalPanel-7VeXK8LB.js +0 -1
- package/dist/assets/activity-1wlPY6yi.js +0 -10
- package/dist/assets/activity-BVbAv0x7.js +0 -10
- package/dist/assets/activity-BmJTU8kX.js +0 -10
- package/dist/assets/activity-By_aWEsY.js +0 -10
- package/dist/assets/activity-Cps_29WN.js +0 -10
- package/dist/assets/activity-Du_fOnvF.js +0 -10
- package/dist/assets/activity-p_2o4eC6.js +0 -10
- package/dist/assets/chat-6dE2AJNN.js +0 -1
- package/dist/assets/chat-B3AJmhGD.js +0 -1
- package/dist/assets/chat-BHsbpaVt.js +0 -1
- package/dist/assets/chat-BITJe8-v.js +0 -1
- package/dist/assets/chat-U-Jjb8_k.js +0 -1
- package/dist/assets/chat-_Xp5fDnj.js +0 -1
- package/dist/assets/chat-mSbSzPl5.js +0 -1
- package/dist/assets/chat-store-C-PKlsCR.js +0 -1
- package/dist/assets/common-BXosnbIt.js +0 -1
- package/dist/assets/common-CzfPgMjC.js +0 -1
- package/dist/assets/common-DDDPz7Dv.js +0 -1
- package/dist/assets/common-DYx9oSoC.js +0 -1
- package/dist/assets/common-DZ-05t4z.js +0 -1
- package/dist/assets/common-MjX8fcng.js +0 -1
- package/dist/assets/common-ipsuLC3n.js +0 -1
- package/dist/assets/config-store-xSv1mChc.js +0 -21
- package/dist/assets/i18n--QdD6NCn.js +0 -3
- package/dist/assets/index-DiX5j910.css +0 -1
- package/dist/assets/index-FWwLmwjx.js +0 -177
- package/dist/assets/roster-ws-CxKDc-ET.js +0 -1
- package/dist/assets/settings-B5Jy-ObI.js +0 -1
- package/dist/assets/settings-BXTJJ4n-.js +0 -1
- package/dist/assets/settings-BcXAVecM.js +0 -1
- package/dist/assets/settings-ByPfZHGm.js +0 -1
- package/dist/assets/settings-CCe4iHcn.js +0 -1
- package/dist/assets/settings-D2GLiaDO.js +0 -1
- package/dist/assets/settings-gB9nKL3f.js +0 -1
- package/dist/assets/stores-2kakt8j9.js +0 -7
- package/dist/assets/toasts-BsmyGP95.js +0 -1
- package/dist/assets/toasts-CgXHu8ZB.js +0 -1
- package/dist/assets/toasts-DZ6HdKgG.js +0 -1
- package/dist/assets/toasts-DizCJjAR.js +0 -1
- package/dist/assets/toasts-NC2MT4uN.js +0 -1
- package/dist/assets/toasts-bPl097de.js +0 -1
- package/dist/assets/toasts-tCVo15mP.js +0 -1
- package/dist/assets/ui-store-DC3mkswy.js +0 -1
|
@@ -1,81 +1,4 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export
|
|
3
|
-
id: string;
|
|
4
|
-
name: string;
|
|
5
|
-
family: string;
|
|
6
|
-
apiBase?: string | undefined;
|
|
7
|
-
envVars: string[];
|
|
8
|
-
modelCount: number;
|
|
9
|
-
hasApiKey: boolean;
|
|
10
|
-
}
|
|
11
|
-
export interface SavedProvider {
|
|
12
|
-
id: string;
|
|
13
|
-
type?: string | undefined;
|
|
14
|
-
family?: string | undefined;
|
|
15
|
-
baseUrl?: string | undefined;
|
|
16
|
-
/** Saved model allowlist, in the order the user pinned them. */
|
|
17
|
-
models?: string[] | undefined;
|
|
18
|
-
/** Per-model metadata (display name, output limits, capability overrides). */
|
|
19
|
-
customModels?: Record<string, {
|
|
20
|
-
name?: string | undefined;
|
|
21
|
-
maxOutput?: number | undefined;
|
|
22
|
-
capabilities?: {
|
|
23
|
-
maxContext?: number | undefined;
|
|
24
|
-
tools?: boolean | undefined;
|
|
25
|
-
vision?: boolean | undefined;
|
|
26
|
-
reasoning?: boolean | undefined;
|
|
27
|
-
streaming?: boolean | undefined;
|
|
28
|
-
jsonMode?: boolean | undefined;
|
|
29
|
-
} | undefined;
|
|
30
|
-
}> | undefined;
|
|
31
|
-
/** First entry of `models`, surfaced for the panel's "Using" line. */
|
|
32
|
-
pickedModelId?: string | undefined;
|
|
33
|
-
apiKeys: Array<{
|
|
34
|
-
label: string;
|
|
35
|
-
maskedKey: string;
|
|
36
|
-
isActive: boolean;
|
|
37
|
-
createdAt: string;
|
|
38
|
-
}>;
|
|
39
|
-
}
|
|
40
|
-
export type ProviderTab = 'catalog' | 'saved';
|
|
41
|
-
interface ProviderSectionProps {
|
|
42
|
-
/** Currently selected provider id. */
|
|
43
|
-
activeProvider: string;
|
|
44
|
-
/** Catalog providers list. */
|
|
45
|
-
catalogProviders: CatalogProvider[];
|
|
46
|
-
/** Loading flag. */
|
|
47
|
-
isLoadingCatalog: boolean;
|
|
48
|
-
/** Saved providers list. */
|
|
49
|
-
savedProviders: SavedProvider[];
|
|
50
|
-
/** Loading flag. */
|
|
51
|
-
isLoadingSaved: boolean;
|
|
52
|
-
/** Which sub-tab is active. */
|
|
53
|
-
providerTab: ProviderTab;
|
|
54
|
-
setProviderTab: (v: ProviderTab) => void;
|
|
55
|
-
/** Called when a catalog provider is selected. */
|
|
56
|
-
onSelectProvider: (id: string) => void;
|
|
57
|
-
/** Called to add an API key. */
|
|
58
|
-
onAddKey: (providerId: string, label: string, value: string) => void;
|
|
59
|
-
/** Called to delete an API key. */
|
|
60
|
-
onDeleteKey: (providerId: string, label: string) => void;
|
|
61
|
-
/** Called to set a key as active. */
|
|
62
|
-
onSetActiveKey: (providerId: string, label: string) => void;
|
|
63
|
-
/** Called to add a custom provider. */
|
|
64
|
-
onAddProvider: (id: string, family: string, baseUrl?: string | undefined, apiKey?: string, models?: string[] | undefined, customModels?: Record<string, {
|
|
65
|
-
name?: string | undefined;
|
|
66
|
-
maxOutput?: number | undefined;
|
|
67
|
-
capabilities?: Record<string, unknown> | undefined;
|
|
68
|
-
}> | undefined) => void;
|
|
69
|
-
/** Called to remove a saved provider. */
|
|
70
|
-
onRemoveProvider: (providerId: string) => void;
|
|
71
|
-
/** Called when a saved provider model is picked. */
|
|
72
|
-
onPickProviderModel: (providerId: string, modelId: string) => void;
|
|
73
|
-
/** WebSocket client used for saved-provider model probing/clearing. */
|
|
74
|
-
ws: WrongStackWebSocketClient;
|
|
75
|
-
/** Search filter text. */
|
|
76
|
-
catalogQuery: string;
|
|
77
|
-
setCatalogQuery: (v: string) => void;
|
|
78
|
-
}
|
|
1
|
+
import type { ProviderSectionProps } from './provider-section-types.js';
|
|
2
|
+
export type { CatalogProvider, ProviderTab, SavedProvider, } from './provider-section-types.js';
|
|
79
3
|
export declare function ProviderSection({ activeProvider, catalogProviders, isLoadingCatalog, savedProviders, isLoadingSaved, providerTab, setProviderTab, onSelectProvider, onAddKey, onDeleteKey, onSetActiveKey, onAddProvider, onRemoveProvider, onPickProviderModel, ws, catalogQuery, setCatalogQuery, }: ProviderSectionProps): import("react").JSX.Element;
|
|
80
|
-
export {};
|
|
81
4
|
//# sourceMappingURL=ProviderSection.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface SettingsTab {
|
|
2
|
+
id: string;
|
|
3
|
+
icon: React.ReactNode;
|
|
4
|
+
labelKey: string;
|
|
5
|
+
descKey?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare function SettingsNavigation({ tabs, activeTab, onSelect, }: {
|
|
8
|
+
tabs: SettingsTab[];
|
|
9
|
+
activeTab: string;
|
|
10
|
+
onSelect: (tab: string) => void;
|
|
11
|
+
}): import("react").JSX.Element;
|
|
12
|
+
//# sourceMappingURL=SettingsNavigation.d.ts.map
|
|
@@ -4,7 +4,7 @@ export type RiskLevel = (typeof RISK_LEVELS)[number];
|
|
|
4
4
|
export declare const RISK_COLORS: Record<RiskLevel, string>;
|
|
5
5
|
export declare const RISK_COPY: Record<RiskLevel, string>;
|
|
6
6
|
/** One entry of the lens picker. */
|
|
7
|
-
interface CouncilPersonaOption {
|
|
7
|
+
export interface CouncilPersonaOption {
|
|
8
8
|
id: string;
|
|
9
9
|
name: string;
|
|
10
10
|
description?: string | undefined;
|
|
@@ -14,8 +14,7 @@ export declare function councilPersonaOptions(catalog: BrainConfigWire['personaC
|
|
|
14
14
|
export declare const DECISION_TIMEOUTS: BrainOption[];
|
|
15
15
|
export declare const HUMAN_TIMEOUTS: BrainOption[];
|
|
16
16
|
export declare const FRACTIONS: BrainOption[];
|
|
17
|
-
/**
|
|
18
|
-
* the default is a LABELLED concrete option rather than a `default` sentinel. */
|
|
17
|
+
/** `default` = no cap: the model's own output ceiling. */
|
|
19
18
|
export declare const LLM_MAX_TOKENS: BrainOption[];
|
|
20
19
|
export declare const MIN_CONFIDENCE: BrainOption[];
|
|
21
20
|
export declare const DECISION_LOG_SIZES: BrainOption[];
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import type { WrongStackWebSocketClient } from '@/lib/ws-client';
|
|
2
|
+
export interface CatalogProvider {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
family: string;
|
|
6
|
+
apiBase?: string | undefined;
|
|
7
|
+
envVars: string[];
|
|
8
|
+
modelCount: number;
|
|
9
|
+
hasApiKey: boolean;
|
|
10
|
+
}
|
|
11
|
+
export interface SavedProvider {
|
|
12
|
+
id: string;
|
|
13
|
+
type?: string | undefined;
|
|
14
|
+
family?: string | undefined;
|
|
15
|
+
baseUrl?: string | undefined;
|
|
16
|
+
/** Saved model allowlist, in the order the user pinned them. */
|
|
17
|
+
models?: string[] | undefined;
|
|
18
|
+
/** Per-model metadata (display name, output limits, capability overrides). */
|
|
19
|
+
customModels?: Record<string, {
|
|
20
|
+
name?: string | undefined;
|
|
21
|
+
maxOutput?: number | undefined;
|
|
22
|
+
capabilities?: {
|
|
23
|
+
maxContext?: number | undefined;
|
|
24
|
+
tools?: boolean | undefined;
|
|
25
|
+
vision?: boolean | undefined;
|
|
26
|
+
reasoning?: boolean | undefined;
|
|
27
|
+
streaming?: boolean | undefined;
|
|
28
|
+
jsonMode?: boolean | undefined;
|
|
29
|
+
} | undefined;
|
|
30
|
+
}> | undefined;
|
|
31
|
+
/** First entry of `models`, surfaced for the panel's "Using" line. */
|
|
32
|
+
pickedModelId?: string | undefined;
|
|
33
|
+
apiKeys: Array<{
|
|
34
|
+
label: string;
|
|
35
|
+
maskedKey: string;
|
|
36
|
+
isActive: boolean;
|
|
37
|
+
createdAt: string;
|
|
38
|
+
}>;
|
|
39
|
+
}
|
|
40
|
+
export type ProviderTab = 'catalog' | 'saved';
|
|
41
|
+
export interface ProviderSectionProps {
|
|
42
|
+
/** Currently selected provider id. */
|
|
43
|
+
activeProvider: string;
|
|
44
|
+
/** Catalog providers list. */
|
|
45
|
+
catalogProviders: CatalogProvider[];
|
|
46
|
+
/** Loading flag. */
|
|
47
|
+
isLoadingCatalog: boolean;
|
|
48
|
+
/** Saved providers list. */
|
|
49
|
+
savedProviders: SavedProvider[];
|
|
50
|
+
/** Loading flag. */
|
|
51
|
+
isLoadingSaved: boolean;
|
|
52
|
+
/** Which sub-tab is active. */
|
|
53
|
+
providerTab: ProviderTab;
|
|
54
|
+
setProviderTab: (v: ProviderTab) => void;
|
|
55
|
+
/** Called when a catalog provider is selected. */
|
|
56
|
+
onSelectProvider: (id: string) => void;
|
|
57
|
+
/** Called to add an API key. */
|
|
58
|
+
onAddKey: (providerId: string, label: string, value: string) => Promise<boolean> | void;
|
|
59
|
+
/** Called to delete an API key. */
|
|
60
|
+
onDeleteKey: (providerId: string, label: string) => Promise<boolean> | void;
|
|
61
|
+
/** Called to set a key as active. */
|
|
62
|
+
onSetActiveKey: (providerId: string, label: string) => Promise<boolean> | void;
|
|
63
|
+
/** Called to add a custom provider. */
|
|
64
|
+
onAddProvider: (id: string, family: string, baseUrl?: string | undefined, apiKey?: string, models?: string[] | undefined, customModels?: Record<string, {
|
|
65
|
+
name?: string | undefined;
|
|
66
|
+
maxOutput?: number | undefined;
|
|
67
|
+
capabilities?: Record<string, unknown> | undefined;
|
|
68
|
+
}> | undefined, providerType?: string | undefined) => Promise<boolean> | void;
|
|
69
|
+
/** Called to remove a saved provider. */
|
|
70
|
+
onRemoveProvider: (providerId: string) => Promise<boolean> | void;
|
|
71
|
+
/** Called when a saved provider model is picked. */
|
|
72
|
+
onPickProviderModel: (providerId: string, modelId: string) => void;
|
|
73
|
+
/** WebSocket client used for saved-provider model probing/clearing. */
|
|
74
|
+
ws: WrongStackWebSocketClient;
|
|
75
|
+
/** Search filter text. */
|
|
76
|
+
catalogQuery: string;
|
|
77
|
+
setCatalogQuery: (v: string) => void;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=provider-section-types.d.ts.map
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { BrainConfigPatchWire, BrainConfigWire, BrainCouncilVoterWire } from '@/types';
|
|
2
|
+
import { type PickTarget, type RiskLevel } from './brain-section-options';
|
|
3
|
+
export declare function useBrainSection(): {
|
|
4
|
+
pickTarget: PickTarget;
|
|
5
|
+
t: import("i18next").TFunction<"translation", undefined>;
|
|
6
|
+
handleModelPicked: (candidate: {
|
|
7
|
+
provider: string;
|
|
8
|
+
model: string;
|
|
9
|
+
}) => boolean | undefined;
|
|
10
|
+
setPickTarget: import("react").Dispatch<import("react").SetStateAction<PickTarget>>;
|
|
11
|
+
loading: boolean;
|
|
12
|
+
busy: boolean;
|
|
13
|
+
persistError: string | null;
|
|
14
|
+
riskLevel: "all" | "high" | "low" | "medium" | "off";
|
|
15
|
+
handleRiskChange: (level: RiskLevel) => void;
|
|
16
|
+
config: BrainConfigWire | null;
|
|
17
|
+
sendPatch: (patch: BrainConfigPatchWire) => void;
|
|
18
|
+
voters: BrainCouncilVoterWire[];
|
|
19
|
+
personaOptions: import("./brain-section-options").CouncilPersonaOption[];
|
|
20
|
+
setVoters: (next: BrainCouncilVoterWire[]) => void;
|
|
21
|
+
log: {
|
|
22
|
+
kind: string;
|
|
23
|
+
question: string;
|
|
24
|
+
outcome: string;
|
|
25
|
+
age: string;
|
|
26
|
+
}[];
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=use-brain-section.d.ts.map
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { useWebSocket } from '@/hooks/useWebSocket';
|
|
2
2
|
import type { SessionHistoryEntry } from '@/stores';
|
|
3
|
-
|
|
4
|
-
type HistorySort = 'recent' | 'tokens' | 'activity';
|
|
3
|
+
export { filterAndSortSessions, formatCompactNumber, formatRelative, formatSessionDuration, getEmptySessionIds, getSessionHistoryStats, groupSessionHistory, splitSessionHistoryColumns, } from './session-history.js';
|
|
5
4
|
type HistoryListVariant = 'sidebar' | 'workspace';
|
|
6
5
|
interface SessionListProps {
|
|
7
6
|
historyQuery: string;
|
|
@@ -16,37 +15,5 @@ interface SessionListProps {
|
|
|
16
15
|
renameSession: ReturnType<typeof useWebSocket>['renameSession'];
|
|
17
16
|
variant?: HistoryListVariant | undefined;
|
|
18
17
|
}
|
|
19
|
-
interface HistoryViewOptions {
|
|
20
|
-
query: string;
|
|
21
|
-
filter: HistoryFilter;
|
|
22
|
-
sort: HistorySort;
|
|
23
|
-
favoriteIds: readonly string[];
|
|
24
|
-
}
|
|
25
|
-
interface SessionHistoryGroup {
|
|
26
|
-
label: 'favorites' | 'today' | 'yesterday' | 'thisWeek' | 'earlier';
|
|
27
|
-
rows: SessionHistoryEntry[];
|
|
28
|
-
favorite?: boolean | undefined;
|
|
29
|
-
}
|
|
30
|
-
interface SessionHistoryStats {
|
|
31
|
-
sessions: number;
|
|
32
|
-
active: number;
|
|
33
|
-
tokens: number;
|
|
34
|
-
tools: number;
|
|
35
|
-
files: number;
|
|
36
|
-
errors: number;
|
|
37
|
-
}
|
|
38
|
-
export declare const formatRelative: (iso: string) => string;
|
|
39
|
-
export declare function formatSessionDuration(entry: SessionHistoryEntry): string;
|
|
40
|
-
export declare function formatCompactNumber(value: number): string;
|
|
41
|
-
/** Pure function: returns empty non-active sessions that are safe to offer for cleanup. */
|
|
42
|
-
export declare function getEmptySessionIds(entries: Array<{
|
|
43
|
-
id: string;
|
|
44
|
-
tokenTotal: number;
|
|
45
|
-
isCurrent: boolean;
|
|
46
|
-
}>, protectedIds?: Iterable<string>): string[];
|
|
47
|
-
export declare function filterAndSortSessions(entries: readonly SessionHistoryEntry[], options: HistoryViewOptions): SessionHistoryEntry[];
|
|
48
|
-
export declare function groupSessionHistory(entries: readonly SessionHistoryEntry[], favoriteIds: readonly string[], now?: number): SessionHistoryGroup[];
|
|
49
|
-
export declare function getSessionHistoryStats(entries: readonly SessionHistoryEntry[]): SessionHistoryStats;
|
|
50
18
|
export declare function SessionList({ historyQuery, setHistoryQuery, historyEntries, historyLoading, historyError, wsConnected, listSessions, resumeSession, deleteSession, renameSession, variant, }: SessionListProps): import("react").JSX.Element;
|
|
51
|
-
export {};
|
|
52
19
|
//# sourceMappingURL=SessionList.d.ts.map
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Activity } from 'lucide-react';
|
|
2
|
+
import type { SessionHistoryEntry } from '@/stores';
|
|
3
|
+
export type HistoryFilter = 'all' | 'favorites' | 'active' | 'completed' | 'issues';
|
|
4
|
+
export type HistorySort = 'recent' | 'tokens' | 'activity';
|
|
5
|
+
export interface HistoryViewOptions {
|
|
6
|
+
query: string;
|
|
7
|
+
filter: HistoryFilter;
|
|
8
|
+
sort: HistorySort;
|
|
9
|
+
favoriteIds: readonly string[];
|
|
10
|
+
}
|
|
11
|
+
export interface SessionHistoryGroup {
|
|
12
|
+
label: 'favorites' | 'today' | 'yesterday' | 'thisWeek' | 'earlier';
|
|
13
|
+
rows: SessionHistoryEntry[];
|
|
14
|
+
favorite?: boolean | undefined;
|
|
15
|
+
}
|
|
16
|
+
export interface SessionHistoryStats {
|
|
17
|
+
sessions: number;
|
|
18
|
+
active: number;
|
|
19
|
+
tokens: number;
|
|
20
|
+
tools: number;
|
|
21
|
+
files: number;
|
|
22
|
+
errors: number;
|
|
23
|
+
}
|
|
24
|
+
export declare const timestamp: (iso: string | undefined) => number;
|
|
25
|
+
export declare const activityScore: (entry: SessionHistoryEntry) => number;
|
|
26
|
+
export declare const formatRelative: (iso: string) => string;
|
|
27
|
+
export declare const sessionActivityAt: (entry: SessionHistoryEntry) => string;
|
|
28
|
+
export declare function formatSessionDuration(entry: SessionHistoryEntry): string;
|
|
29
|
+
export declare function formatCompactNumber(value: number): string;
|
|
30
|
+
/** Pure function: returns empty non-active sessions that are safe to offer for cleanup. */
|
|
31
|
+
export declare function getEmptySessionIds(entries: Array<{
|
|
32
|
+
id: string;
|
|
33
|
+
tokenTotal: number;
|
|
34
|
+
isCurrent: boolean;
|
|
35
|
+
}>, protectedIds?: Iterable<string>): string[];
|
|
36
|
+
export declare function filterAndSortSessions(entries: readonly SessionHistoryEntry[], options: HistoryViewOptions): SessionHistoryEntry[];
|
|
37
|
+
export declare function groupSessionHistory(entries: readonly SessionHistoryEntry[], favoriteIds: readonly string[], now?: number): SessionHistoryGroup[];
|
|
38
|
+
export interface SessionHistoryColumns {
|
|
39
|
+
left: SessionHistoryGroup[];
|
|
40
|
+
right: SessionHistoryGroup[];
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Balance a page of time-ordered groups across the workspace page's two
|
|
44
|
+
* columns: rows fill the left column down to the midpoint, then continue
|
|
45
|
+
* down the right, so each column reads chronologically and neither towers
|
|
46
|
+
* over an empty sibling. A group straddling the midpoint is sliced at it —
|
|
47
|
+
* that keeps the page one continuous timeline even when a single bucket
|
|
48
|
+
* (e.g. "Today") dominates, which is the common case on early pages.
|
|
49
|
+
*/
|
|
50
|
+
export declare function splitSessionHistoryColumns(groups: readonly SessionHistoryGroup[]): SessionHistoryColumns;
|
|
51
|
+
export declare function getSessionHistoryStats(entries: readonly SessionHistoryEntry[]): SessionHistoryStats;
|
|
52
|
+
export declare function outcomeMeta(entry: SessionHistoryEntry): {
|
|
53
|
+
icon: typeof Activity;
|
|
54
|
+
label: 'active' | 'completed' | 'error' | 'timeout' | 'aborted' | 'saved';
|
|
55
|
+
defaultLabel: string;
|
|
56
|
+
className: string;
|
|
57
|
+
};
|
|
58
|
+
export declare function HistoryStats({ stats }: {
|
|
59
|
+
stats: SessionHistoryStats;
|
|
60
|
+
}): import("react").JSX.Element;
|
|
61
|
+
//# sourceMappingURL=session-history.d.ts.map
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* SkillDetailView — displays the selected skill's content in the main content area.
|
|
3
3
|
* Shown when currentView === 'skill'.
|
|
4
4
|
*/
|
|
5
|
-
export declare function SkillDetailView(
|
|
5
|
+
export declare function SkillDetailView(props0: {
|
|
6
6
|
className?: string;
|
|
7
7
|
}): import("react").JSX.Element;
|
|
8
8
|
//# sourceMappingURL=SkillDetailView.d.ts.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
type Variant = 'lite' | 'default' | 'pro';
|
|
2
|
+
/** Profile-wide prompt copies. The runtime still owns tool and environment layers. */
|
|
3
|
+
export declare function SystemPromptPresetEditor({ currentVariant, onBusyChange, onDirtyChange, }: {
|
|
4
|
+
currentVariant: Variant;
|
|
5
|
+
onBusyChange?: (busy: boolean) => void;
|
|
6
|
+
onDirtyChange?: (dirty: boolean) => void;
|
|
7
|
+
}): import("react").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=SystemPromptPresetEditor.d.ts.map
|
|
@@ -4,9 +4,16 @@ import '@xterm/xterm/css/xterm.css';
|
|
|
4
4
|
* sessions (see server/terminal-ws-handler.ts). It now manages multiple PTYs
|
|
5
5
|
* per project WebUI connection through tabs while keeping the dock itself in
|
|
6
6
|
* the normal flex layout, so the main app remains scrollable.
|
|
7
|
+
*
|
|
8
|
+
* Hiding the dock (`hidden`) keeps its terminals running; the composer strip
|
|
9
|
+
* shows them meanwhile. Closing the last one, or all, disposes the dock.
|
|
7
10
|
*/
|
|
8
|
-
export declare function TerminalPanel({ desktopShell, onClose, }: {
|
|
11
|
+
export declare function TerminalPanel({ desktopShell, hidden, onClose, onDispose, }: {
|
|
9
12
|
desktopShell?: boolean | undefined;
|
|
13
|
+
hidden?: boolean | undefined;
|
|
14
|
+
/** Hide the dock; its terminals keep running. */
|
|
10
15
|
onClose: () => void;
|
|
16
|
+
/** Every terminal is closed: the dock can go. */
|
|
17
|
+
onDispose: () => void;
|
|
11
18
|
}): import("react").JSX.Element;
|
|
12
19
|
//# sourceMappingURL=TerminalPanel.d.ts.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* WorkspaceDock —
|
|
2
|
+
* WorkspaceDock — session workspace controls in the left Session panel.
|
|
3
3
|
*
|
|
4
|
-
* The dock itself stays compact
|
|
4
|
+
* The dock itself stays compact. Selecting Goal, Fleet, Work,
|
|
5
5
|
* Worktrees, or Collab opens its content in WorkspaceDockInspector on the
|
|
6
6
|
* right, so the transcript never loses vertical space.
|
|
7
7
|
*
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { ChronicleEventView, ChronicleGraphResult, ChronicleSummary } from '@/types';
|
|
2
|
+
export type Health = {
|
|
3
|
+
eventLoop?: {
|
|
4
|
+
utilization?: number;
|
|
5
|
+
delayP95Ms?: number;
|
|
6
|
+
};
|
|
7
|
+
memory?: {
|
|
8
|
+
heapUsedBytes?: number;
|
|
9
|
+
};
|
|
10
|
+
chronicle?: {
|
|
11
|
+
pendingEvents?: number;
|
|
12
|
+
rejectedEvents?: number;
|
|
13
|
+
largestBatch?: number;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
export declare const emptySummary: ChronicleSummary;
|
|
17
|
+
export declare function signalTotal(summary: ChronicleSummary, signal: Signal, total: number): number;
|
|
18
|
+
export declare function cacheRatio(summary: ChronicleSummary): number;
|
|
19
|
+
export declare function matchesSignal(event: ChronicleEventView, signal: Signal): boolean;
|
|
20
|
+
export declare function formatMilliseconds(ms: number): string;
|
|
21
|
+
export declare function Field({ placeholder, value, onChange, onEnter, icon, }: {
|
|
22
|
+
placeholder: string;
|
|
23
|
+
value: string;
|
|
24
|
+
onChange: (v: string) => void;
|
|
25
|
+
onEnter: () => void;
|
|
26
|
+
icon?: React.ReactNode;
|
|
27
|
+
}): import("react").JSX.Element;
|
|
28
|
+
export declare function Insight({ icon, label, value, detail, tone, }: {
|
|
29
|
+
icon: React.ReactNode;
|
|
30
|
+
label: string;
|
|
31
|
+
value: number | string;
|
|
32
|
+
detail: string;
|
|
33
|
+
tone?: 'normal' | 'danger';
|
|
34
|
+
}): import("react").JSX.Element;
|
|
35
|
+
export declare function RuntimeStrip({ health }: {
|
|
36
|
+
health: Health;
|
|
37
|
+
}): import("react").JSX.Element;
|
|
38
|
+
export declare function EventRow({ event, active, onClick, }: {
|
|
39
|
+
event: ChronicleEventView;
|
|
40
|
+
active: boolean;
|
|
41
|
+
onClick: () => void;
|
|
42
|
+
}): import("react").JSX.Element;
|
|
43
|
+
export declare function Detail({ event, graph, }: {
|
|
44
|
+
event: ChronicleEventView;
|
|
45
|
+
graph: ChronicleGraphResult | null;
|
|
46
|
+
}): import("react").JSX.Element;
|
|
47
|
+
export declare function Empty({ text }: {
|
|
48
|
+
text: string;
|
|
49
|
+
}): import("react").JSX.Element;
|
|
50
|
+
export type Signal = 'all' | 'llm' | 'agents' | 'tools' | 'files' | 'failures';
|
|
51
|
+
//# sourceMappingURL=chronicle-event-detail.d.ts.map
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import type { SubagentView } from '@/stores';
|
|
2
|
+
export interface ContextDebugPayload {
|
|
3
|
+
total: number;
|
|
4
|
+
mode?: string | undefined;
|
|
5
|
+
policy?: unknown | undefined;
|
|
6
|
+
systemPrompt: number;
|
|
7
|
+
tools: {
|
|
8
|
+
total: number;
|
|
9
|
+
count: number;
|
|
10
|
+
breakdown: Array<{
|
|
11
|
+
name: string;
|
|
12
|
+
tokens: number;
|
|
13
|
+
}>;
|
|
14
|
+
};
|
|
15
|
+
messages: {
|
|
16
|
+
total: number;
|
|
17
|
+
count: number;
|
|
18
|
+
breakdown: Array<{
|
|
19
|
+
index: number;
|
|
20
|
+
role: string;
|
|
21
|
+
tokens: number;
|
|
22
|
+
preview: string;
|
|
23
|
+
}>;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
interface ZoneConfig {
|
|
27
|
+
labelKey: string;
|
|
28
|
+
emoji: string;
|
|
29
|
+
color: string;
|
|
30
|
+
bg: string;
|
|
31
|
+
text: string;
|
|
32
|
+
cssColor: string;
|
|
33
|
+
from: number;
|
|
34
|
+
to: number;
|
|
35
|
+
descKey: string;
|
|
36
|
+
}
|
|
37
|
+
export declare function zoneFor(pct: number): ZoneConfig;
|
|
38
|
+
export declare function fmtDuration(startedAt: number | null): string;
|
|
39
|
+
export declare function PressureSection({ pct, tokens, maxTokens, }: {
|
|
40
|
+
pct: number;
|
|
41
|
+
tokens: number;
|
|
42
|
+
maxTokens: number;
|
|
43
|
+
}): import("react").JSX.Element;
|
|
44
|
+
export declare function CompositionSection({ data, loading, }: {
|
|
45
|
+
data: ContextDebugPayload | null;
|
|
46
|
+
loading: boolean;
|
|
47
|
+
}): import("react").JSX.Element;
|
|
48
|
+
export declare function ThresholdSection({ pct }: {
|
|
49
|
+
pct: number;
|
|
50
|
+
}): import("react").JSX.Element;
|
|
51
|
+
export declare function CompactionSection({ pct, maxTokens }: {
|
|
52
|
+
pct: number;
|
|
53
|
+
maxTokens: number;
|
|
54
|
+
}): import("react").JSX.Element;
|
|
55
|
+
export declare function AgentFootprintSection({ agents }: {
|
|
56
|
+
agents: SubagentView[];
|
|
57
|
+
}): import("react").JSX.Element | null;
|
|
58
|
+
export declare function MetricsSection({ tokens, maxTokens, pct, model, provider, mode, uptime, iteration, contextMode, }: {
|
|
59
|
+
tokens: number;
|
|
60
|
+
maxTokens: number;
|
|
61
|
+
pct: number;
|
|
62
|
+
model: string;
|
|
63
|
+
provider: string;
|
|
64
|
+
mode: string;
|
|
65
|
+
uptime: string;
|
|
66
|
+
iteration: string;
|
|
67
|
+
contextMode: string;
|
|
68
|
+
}): import("react").JSX.Element;
|
|
69
|
+
export declare function SessionSection({ model, provider, mode, uptime, projectName, cwd, contextMode, }: {
|
|
70
|
+
model: string;
|
|
71
|
+
provider: string;
|
|
72
|
+
mode: string;
|
|
73
|
+
uptime: string;
|
|
74
|
+
projectName: string;
|
|
75
|
+
cwd: string;
|
|
76
|
+
contextMode: string;
|
|
77
|
+
}): import("react").JSX.Element;
|
|
78
|
+
export {};
|
|
79
|
+
//# sourceMappingURL=context-dashboard-sections.d.ts.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ReviewDiff — the Changes view's unified diff with line comments.
|
|
3
|
+
*
|
|
4
|
+
* Same row model and look as DiffView (shared `computeLineDiff`), plus a
|
|
5
|
+
* line-number gutter and a per-line "+" that opens an inline comment editor.
|
|
6
|
+
* Comments live in the project-scoped review store; a comment whose line no
|
|
7
|
+
* longer reads the same is listed above the diff as outdated instead of being
|
|
8
|
+
* pinned to whatever text now occupies that line number.
|
|
9
|
+
*/
|
|
10
|
+
import { type ReviewComment } from '@/stores/review-store';
|
|
11
|
+
export declare function CommentCard({ comment, outdated, }: {
|
|
12
|
+
comment: ReviewComment;
|
|
13
|
+
outdated?: boolean | undefined;
|
|
14
|
+
}): import("react").JSX.Element;
|
|
15
|
+
export declare const ReviewDiff: import("react").MemoExoticComponent<({ path, scope, oldText, newText, }: {
|
|
16
|
+
path: string;
|
|
17
|
+
scope: string;
|
|
18
|
+
oldText: string;
|
|
19
|
+
newText: string;
|
|
20
|
+
}) => import("react").JSX.Element>;
|
|
21
|
+
//# sourceMappingURL=ReviewDiff.d.ts.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ReviewTray — every review comment in the project, grouped by file, with the
|
|
3
|
+
* two ways out: send the whole review to the chat composer as one message, or
|
|
4
|
+
* discard it.
|
|
5
|
+
*
|
|
6
|
+
* "Send to chat" inserts into the composer rather than submitting, so the
|
|
7
|
+
* user picks how it goes out (a normal send when idle; queue or `btw` while a
|
|
8
|
+
* run is going) through the composer's existing send-mode handling.
|
|
9
|
+
*/
|
|
10
|
+
export declare function useScopedReviewComments(scope: string): import("@/stores/review-store").ReviewComment[];
|
|
11
|
+
export declare function ReviewTray({ scope, onOpenFile, }: {
|
|
12
|
+
scope: string;
|
|
13
|
+
onOpenFile: (path: string) => void;
|
|
14
|
+
}): import("react").JSX.Element;
|
|
15
|
+
//# sourceMappingURL=ReviewTray.d.ts.map
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The pure model behind ReviewDiff: line numbers for diff rows, where a
|
|
3
|
+
* comment anchors, and which comments still sit on the line they were
|
|
4
|
+
* written against.
|
|
5
|
+
*/
|
|
6
|
+
import type { DiffRow } from '@wrongstack/tools/tool-diff';
|
|
7
|
+
import type { ReviewComment } from '@/stores/review-store';
|
|
8
|
+
export interface NumberedDiffRow extends DiffRow {
|
|
9
|
+
oldLine?: number | undefined;
|
|
10
|
+
newLine?: number | undefined;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Attach 1-based line numbers: context lines advance both sides, removals the
|
|
14
|
+
* old side, additions the new side.
|
|
15
|
+
*/
|
|
16
|
+
export declare function numberDiffRows(rows: readonly DiffRow[]): NumberedDiffRow[];
|
|
17
|
+
/** Where a comment on this row anchors: removed lines on the old side, the rest on the new. */
|
|
18
|
+
export declare function anchorFor(row: NumberedDiffRow): {
|
|
19
|
+
side: 'old' | 'new';
|
|
20
|
+
line: number;
|
|
21
|
+
} | null;
|
|
22
|
+
export declare const anchorKey: (side: 'old' | 'new', line: number) => string;
|
|
23
|
+
/**
|
|
24
|
+
* Split a file's comments into those still sitting on an identical line
|
|
25
|
+
* (keyed by anchor) and those whose line changed underneath them.
|
|
26
|
+
*/
|
|
27
|
+
export declare function placeComments(rows: readonly NumberedDiffRow[], comments: readonly ReviewComment[]): {
|
|
28
|
+
byAnchor: Map<string, ReviewComment[]>;
|
|
29
|
+
outdated: ReviewComment[];
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=review-diff-model.d.ts.map
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import '@xyflow/react/dist/style.css';
|
|
2
|
+
export declare function useCodeMapFlow({ positionedNodes, deferredActiveOperations, deferredPulseActivities, selectedId, connected, incomingCounts, outgoingCounts, handleSelectNode, handleOpenNode, setHistoryFile, setFlowNodes, canvasGraph, deferredRecentActivities, setAgentTrailCount, setFlowEdges, fitSignature, lastFlowStructuralKey, flowRebuildTimer, lastFitSignature, fitView, activityFlowKey, }: {
|
|
3
|
+
positionedNodes: ReturnType<typeof import('./codemap-model.js').layoutGraph>;
|
|
4
|
+
deferredActiveOperations: import('../stores/codemap-activity-store.js').FileActivity[];
|
|
5
|
+
deferredPulseActivities: import('../stores/codemap-activity-store.js').FileActivity[];
|
|
6
|
+
selectedId: string | null;
|
|
7
|
+
connected: Set<string>;
|
|
8
|
+
incomingCounts: Map<string, number>;
|
|
9
|
+
outgoingCounts: Map<string, number>;
|
|
10
|
+
handleSelectNode: (node: import('./codemap-model.js').GraphNodeData) => void;
|
|
11
|
+
handleOpenNode: (node: import('./codemap-model.js').GraphNodeData) => void;
|
|
12
|
+
setHistoryFile: React.Dispatch<React.SetStateAction<string | null>>;
|
|
13
|
+
setFlowNodes: React.Dispatch<React.SetStateAction<import('@xyflow/react').Node[]>>;
|
|
14
|
+
canvasGraph: import('./codemap-model.js').CodeMapGraphResponse;
|
|
15
|
+
deferredRecentActivities: import('../stores/codemap-activity-store.js').FileActivity[];
|
|
16
|
+
setAgentTrailCount: React.Dispatch<React.SetStateAction<number>>;
|
|
17
|
+
setFlowEdges: React.Dispatch<React.SetStateAction<import('@xyflow/react').Edge[]>>;
|
|
18
|
+
fitSignature: string;
|
|
19
|
+
lastFlowStructuralKey: React.RefObject<string>;
|
|
20
|
+
flowRebuildTimer: React.RefObject<number | null>;
|
|
21
|
+
lastFitSignature: React.RefObject<string>;
|
|
22
|
+
fitView: import('@xyflow/react').FitView<import('@xyflow/react').Node>;
|
|
23
|
+
activityFlowKey: string;
|
|
24
|
+
}): void;
|
|
25
|
+
//# sourceMappingURL=use-code-map-flow.d.ts.map
|