@xenosystem/agent-interface-ui 0.1.36 → 0.1.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (244) hide show
  1. package/dist/adapters/agentHostPlatformBridge.d.ts.map +1 -1
  2. package/dist/adapters/agentHostPlatformBridge.js +21 -1
  3. package/dist/adapters/agentHostPlatformBridge.js.map +1 -1
  4. package/dist/agent.css +2180 -7
  5. package/dist/components/agent/AgentAuthGate.d.ts +86 -0
  6. package/dist/components/agent/AgentAuthGate.d.ts.map +1 -0
  7. package/dist/components/agent/AgentAuthGate.js +189 -0
  8. package/dist/components/agent/AgentAuthGate.js.map +1 -0
  9. package/dist/components/agent/AgentInterface.d.ts +8 -1
  10. package/dist/components/agent/AgentInterface.d.ts.map +1 -1
  11. package/dist/components/agent/AgentInterface.js +27 -8
  12. package/dist/components/agent/AgentInterface.js.map +1 -1
  13. package/dist/components/agent/settings/sections/AccountWorkspacePanel.d.ts.map +1 -1
  14. package/dist/components/agent/settings/sections/AccountWorkspacePanel.js +37 -6
  15. package/dist/components/agent/settings/sections/AccountWorkspacePanel.js.map +1 -1
  16. package/dist/components/agent/settings/sections/WorkspaceDirectoryAccessSection.d.ts.map +1 -1
  17. package/dist/components/agent/settings/sections/WorkspaceDirectoryAccessSection.js +1 -0
  18. package/dist/components/agent/settings/sections/WorkspaceDirectoryAccessSection.js.map +1 -1
  19. package/dist/components/product/XenoAgentProductHeader.d.ts +2 -1
  20. package/dist/components/product/XenoAgentProductHeader.d.ts.map +1 -1
  21. package/dist/components/product/XenoAgentProductHeader.js +2 -2
  22. package/dist/components/product/XenoAgentProductHeader.js.map +1 -1
  23. package/dist/index.d.ts +10 -0
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +27 -4
  26. package/dist/index.js.map +1 -1
  27. package/dist/stores/workspaceStore.d.ts.map +1 -1
  28. package/dist/stores/workspaceStore.js +1 -0
  29. package/dist/stores/workspaceStore.js.map +1 -1
  30. package/package.json +8 -7
  31. package/src/agent.css +5 -0
  32. package/src/fonts/inter/OFL.txt +92 -0
  33. package/src/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2 +0 -0
  34. package/src/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2 +0 -0
  35. package/src/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2 +0 -0
  36. package/src/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2 +0 -0
  37. package/src/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2 +0 -0
  38. package/src/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2 +0 -0
  39. package/src/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2 +0 -0
  40. package/src/fonts/inter.css +75 -0
  41. package/dist/adapters/xenoAgentCompatibilityBridge.d.ts +0 -14
  42. package/dist/adapters/xenoAgentCompatibilityBridge.d.ts.map +0 -1
  43. package/dist/adapters/xenoAgentCompatibilityBridge.js +0 -247
  44. package/dist/adapters/xenoAgentCompatibilityBridge.js.map +0 -1
  45. package/dist/adapters/xenoAgentHostCatalog.d.ts +0 -40
  46. package/dist/adapters/xenoAgentHostCatalog.d.ts.map +0 -1
  47. package/dist/adapters/xenoAgentHostCatalog.js +0 -231
  48. package/dist/adapters/xenoAgentHostCatalog.js.map +0 -1
  49. package/dist/components/agent/AIStatusIndicator.d.ts +0 -25
  50. package/dist/components/agent/AIStatusIndicator.d.ts.map +0 -1
  51. package/dist/components/agent/AIStatusIndicator.js +0 -85
  52. package/dist/components/agent/AIStatusIndicator.js.map +0 -1
  53. package/dist/components/agent/AgentNotificationBanner.d.ts +0 -10
  54. package/dist/components/agent/AgentNotificationBanner.d.ts.map +0 -1
  55. package/dist/components/agent/AgentNotificationBanner.js +0 -28
  56. package/dist/components/agent/AgentNotificationBanner.js.map +0 -1
  57. package/dist/components/agent/AgentView.d.ts +0 -185
  58. package/dist/components/agent/AgentView.d.ts.map +0 -1
  59. package/dist/components/agent/AgentView.js +0 -7850
  60. package/dist/components/agent/AgentView.js.map +0 -1
  61. package/dist/components/agent/AssistantTurnStatusNotice.d.ts +0 -16
  62. package/dist/components/agent/AssistantTurnStatusNotice.d.ts.map +0 -1
  63. package/dist/components/agent/AssistantTurnStatusNotice.js +0 -54
  64. package/dist/components/agent/AssistantTurnStatusNotice.js.map +0 -1
  65. package/dist/components/agent/CommandToolCard.d.ts +0 -11
  66. package/dist/components/agent/CommandToolCard.d.ts.map +0 -1
  67. package/dist/components/agent/CommandToolCard.js +0 -29
  68. package/dist/components/agent/CommandToolCard.js.map +0 -1
  69. package/dist/components/agent/GhostTextArea.d.ts +0 -13
  70. package/dist/components/agent/GhostTextArea.d.ts.map +0 -1
  71. package/dist/components/agent/GhostTextArea.js +0 -21
  72. package/dist/components/agent/GhostTextArea.js.map +0 -1
  73. package/dist/components/agent/LiveConversationCollaboration.d.ts +0 -27
  74. package/dist/components/agent/LiveConversationCollaboration.d.ts.map +0 -1
  75. package/dist/components/agent/LiveConversationCollaboration.js +0 -127
  76. package/dist/components/agent/LiveConversationCollaboration.js.map +0 -1
  77. package/dist/components/agent/SdkSessionPanel.d.ts +0 -25
  78. package/dist/components/agent/SdkSessionPanel.d.ts.map +0 -1
  79. package/dist/components/agent/SdkSessionPanel.js +0 -15
  80. package/dist/components/agent/SdkSessionPanel.js.map +0 -1
  81. package/dist/components/agent/SlashCommandAutocomplete.d.ts +0 -12
  82. package/dist/components/agent/SlashCommandAutocomplete.d.ts.map +0 -1
  83. package/dist/components/agent/SlashCommandAutocomplete.js +0 -33
  84. package/dist/components/agent/SlashCommandAutocomplete.js.map +0 -1
  85. package/dist/components/agent/collaborationWindow.d.ts +0 -11
  86. package/dist/components/agent/collaborationWindow.d.ts.map +0 -1
  87. package/dist/components/agent/collaborationWindow.js +0 -10
  88. package/dist/components/agent/collaborationWindow.js.map +0 -1
  89. package/dist/components/agent/conversationCollaborationAppendJournal.d.ts +0 -25
  90. package/dist/components/agent/conversationCollaborationAppendJournal.d.ts.map +0 -1
  91. package/dist/components/agent/conversationCollaborationAppendJournal.js +0 -118
  92. package/dist/components/agent/conversationCollaborationAppendJournal.js.map +0 -1
  93. package/dist/components/agent/conversationCollaborationController.d.ts +0 -96
  94. package/dist/components/agent/conversationCollaborationController.d.ts.map +0 -1
  95. package/dist/components/agent/conversationCollaborationController.js +0 -597
  96. package/dist/components/agent/conversationCollaborationController.js.map +0 -1
  97. package/dist/components/agent/destructiveConfirmation.d.ts +0 -76
  98. package/dist/components/agent/destructiveConfirmation.d.ts.map +0 -1
  99. package/dist/components/agent/destructiveConfirmation.js +0 -231
  100. package/dist/components/agent/destructiveConfirmation.js.map +0 -1
  101. package/dist/components/agent/editorOperationAuthority.d.ts +0 -29
  102. package/dist/components/agent/editorOperationAuthority.d.ts.map +0 -1
  103. package/dist/components/agent/editorOperationAuthority.js +0 -73
  104. package/dist/components/agent/editorOperationAuthority.js.map +0 -1
  105. package/dist/components/agent/mainAssistant.d.ts +0 -24
  106. package/dist/components/agent/mainAssistant.d.ts.map +0 -1
  107. package/dist/components/agent/mainAssistant.js +0 -24
  108. package/dist/components/agent/mainAssistant.js.map +0 -1
  109. package/dist/components/agent/nativeTuiComposerInput.d.ts +0 -42
  110. package/dist/components/agent/nativeTuiComposerInput.d.ts.map +0 -1
  111. package/dist/components/agent/nativeTuiComposerInput.js +0 -51
  112. package/dist/components/agent/nativeTuiComposerInput.js.map +0 -1
  113. package/dist/components/agent/settings/shared/InAppConfirmationDialog.d.ts +0 -25
  114. package/dist/components/agent/settings/shared/InAppConfirmationDialog.d.ts.map +0 -1
  115. package/dist/components/agent/settings/shared/InAppConfirmationDialog.js +0 -89
  116. package/dist/components/agent/settings/shared/InAppConfirmationDialog.js.map +0 -1
  117. package/dist/components/agent/toolCardDisplay.d.ts +0 -24
  118. package/dist/components/agent/toolCardDisplay.d.ts.map +0 -1
  119. package/dist/components/agent/toolCardDisplay.js +0 -85
  120. package/dist/components/agent/toolCardDisplay.js.map +0 -1
  121. package/dist/components/agent/webJobProgressView.d.ts +0 -90
  122. package/dist/components/agent/webJobProgressView.d.ts.map +0 -1
  123. package/dist/components/agent/webJobProgressView.js +0 -104
  124. package/dist/components/agent/webJobProgressView.js.map +0 -1
  125. package/dist/components/ui/CodeBlock.d.ts +0 -8
  126. package/dist/components/ui/CodeBlock.d.ts.map +0 -1
  127. package/dist/components/ui/CodeBlock.js +0 -89
  128. package/dist/components/ui/CodeBlock.js.map +0 -1
  129. package/dist/platformApiTypes.d.ts +0 -4176
  130. package/dist/platformApiTypes.d.ts.map +0 -1
  131. package/dist/platformApiTypes.js +0 -2
  132. package/dist/platformApiTypes.js.map +0 -1
  133. package/dist/platformBridge.d.ts +0 -43
  134. package/dist/platformBridge.d.ts.map +0 -1
  135. package/dist/platformBridge.js +0 -67
  136. package/dist/platformBridge.js.map +0 -1
  137. package/dist/providerSelector.d.ts +0 -28
  138. package/dist/providerSelector.d.ts.map +0 -1
  139. package/dist/providerSelector.js +0 -104
  140. package/dist/providerSelector.js.map +0 -1
  141. package/dist/services/connectionMode.d.ts +0 -13
  142. package/dist/services/connectionMode.d.ts.map +0 -1
  143. package/dist/services/connectionMode.js +0 -31
  144. package/dist/services/connectionMode.js.map +0 -1
  145. package/dist/sessionTabs.d.ts +0 -48
  146. package/dist/sessionTabs.d.ts.map +0 -1
  147. package/dist/sessionTabs.js +0 -106
  148. package/dist/sessionTabs.js.map +0 -1
  149. package/dist/stores/acpAgentStore.d.ts +0 -264
  150. package/dist/stores/acpAgentStore.d.ts.map +0 -1
  151. package/dist/stores/acpAgentStore.js +0 -825
  152. package/dist/stores/acpAgentStore.js.map +0 -1
  153. package/dist/stores/agentChatStore.d.ts +0 -693
  154. package/dist/stores/agentChatStore.d.ts.map +0 -1
  155. package/dist/stores/agentChatStore.js +0 -5876
  156. package/dist/stores/agentChatStore.js.map +0 -1
  157. package/dist/stores/authStore.d.ts +0 -26
  158. package/dist/stores/authStore.d.ts.map +0 -1
  159. package/dist/stores/authStore.js +0 -163
  160. package/dist/stores/authStore.js.map +0 -1
  161. package/dist/stores/suggestionStore.d.ts +0 -36
  162. package/dist/stores/suggestionStore.d.ts.map +0 -1
  163. package/dist/stores/suggestionStore.js +0 -187
  164. package/dist/stores/suggestionStore.js.map +0 -1
  165. package/dist/stores/tabStore.d.ts +0 -30
  166. package/dist/stores/tabStore.d.ts.map +0 -1
  167. package/dist/stores/tabStore.js +0 -252
  168. package/dist/stores/tabStore.js.map +0 -1
  169. package/dist/stores/xenoChatStore.d.ts +0 -88
  170. package/dist/stores/xenoChatStore.d.ts.map +0 -1
  171. package/dist/stores/xenoChatStore.js +0 -583
  172. package/dist/stores/xenoChatStore.js.map +0 -1
  173. package/dist/types/agentEditor.d.ts +0 -40
  174. package/dist/types/agentEditor.d.ts.map +0 -1
  175. package/dist/types/agentEditor.js +0 -2
  176. package/dist/types/agentEditor.js.map +0 -1
  177. package/dist/types/agentRuntimeProvider.d.ts +0 -2
  178. package/dist/types/agentRuntimeProvider.d.ts.map +0 -1
  179. package/dist/types/agentRuntimeProvider.js +0 -2
  180. package/dist/types/agentRuntimeProvider.js.map +0 -1
  181. package/dist/utils/acpExecutionAuthority.d.ts +0 -26
  182. package/dist/utils/acpExecutionAuthority.d.ts.map +0 -1
  183. package/dist/utils/acpExecutionAuthority.js +0 -46
  184. package/dist/utils/acpExecutionAuthority.js.map +0 -1
  185. package/dist/utils/advertisedReasoning.d.ts +0 -25
  186. package/dist/utils/advertisedReasoning.d.ts.map +0 -1
  187. package/dist/utils/advertisedReasoning.js +0 -62
  188. package/dist/utils/advertisedReasoning.js.map +0 -1
  189. package/dist/utils/agentAttachedContextPrompt.d.ts +0 -2
  190. package/dist/utils/agentAttachedContextPrompt.d.ts.map +0 -1
  191. package/dist/utils/agentAttachedContextPrompt.js +0 -2
  192. package/dist/utils/agentAttachedContextPrompt.js.map +0 -1
  193. package/dist/utils/agentModelContext.d.ts +0 -2
  194. package/dist/utils/agentModelContext.d.ts.map +0 -1
  195. package/dist/utils/agentModelContext.js +0 -2
  196. package/dist/utils/agentModelContext.js.map +0 -1
  197. package/dist/utils/agentReasoningEffort.d.ts +0 -3
  198. package/dist/utils/agentReasoningEffort.d.ts.map +0 -1
  199. package/dist/utils/agentReasoningEffort.js +0 -2
  200. package/dist/utils/agentReasoningEffort.js.map +0 -1
  201. package/dist/utils/agentRuntimeProvider.d.ts +0 -3
  202. package/dist/utils/agentRuntimeProvider.d.ts.map +0 -1
  203. package/dist/utils/agentRuntimeProvider.js +0 -2
  204. package/dist/utils/agentRuntimeProvider.js.map +0 -1
  205. package/dist/utils/clipboardCopy.d.ts +0 -4
  206. package/dist/utils/clipboardCopy.d.ts.map +0 -1
  207. package/dist/utils/clipboardCopy.js +0 -27
  208. package/dist/utils/clipboardCopy.js.map +0 -1
  209. package/dist/utils/cloudModels.d.ts +0 -3
  210. package/dist/utils/cloudModels.d.ts.map +0 -1
  211. package/dist/utils/cloudModels.js +0 -181
  212. package/dist/utils/cloudModels.js.map +0 -1
  213. package/dist/utils/conversationRuntime.d.ts +0 -3
  214. package/dist/utils/conversationRuntime.d.ts.map +0 -1
  215. package/dist/utils/conversationRuntime.js +0 -2
  216. package/dist/utils/conversationRuntime.js.map +0 -1
  217. package/dist/utils/fileCreateIntent.d.ts +0 -16
  218. package/dist/utils/fileCreateIntent.d.ts.map +0 -1
  219. package/dist/utils/fileCreateIntent.js +0 -123
  220. package/dist/utils/fileCreateIntent.js.map +0 -1
  221. package/dist/utils/legacyAgentRuntimeEvents.d.ts +0 -2
  222. package/dist/utils/legacyAgentRuntimeEvents.d.ts.map +0 -1
  223. package/dist/utils/legacyAgentRuntimeEvents.js +0 -2
  224. package/dist/utils/legacyAgentRuntimeEvents.js.map +0 -1
  225. package/dist/utils/markdownWindowsPaths.d.ts +0 -2
  226. package/dist/utils/markdownWindowsPaths.d.ts.map +0 -1
  227. package/dist/utils/markdownWindowsPaths.js +0 -2
  228. package/dist/utils/markdownWindowsPaths.js.map +0 -1
  229. package/dist/utils/modelAvailability.d.ts +0 -11
  230. package/dist/utils/modelAvailability.d.ts.map +0 -1
  231. package/dist/utils/modelAvailability.js +0 -10
  232. package/dist/utils/modelAvailability.js.map +0 -1
  233. package/dist/utils/providerAvailability.d.ts +0 -8
  234. package/dist/utils/providerAvailability.d.ts.map +0 -1
  235. package/dist/utils/providerAvailability.js +0 -13
  236. package/dist/utils/providerAvailability.js.map +0 -1
  237. package/dist/utils/providerCommandArgs.d.ts +0 -11
  238. package/dist/utils/providerCommandArgs.d.ts.map +0 -1
  239. package/dist/utils/providerCommandArgs.js +0 -18
  240. package/dist/utils/providerCommandArgs.js.map +0 -1
  241. package/dist/utils/workspaceSelectionContinuation.d.ts +0 -2
  242. package/dist/utils/workspaceSelectionContinuation.d.ts.map +0 -1
  243. package/dist/utils/workspaceSelectionContinuation.js +0 -2
  244. package/dist/utils/workspaceSelectionContinuation.js.map +0 -1
@@ -1,252 +0,0 @@
1
- import { create } from 'zustand';
2
- const TAB_LABELS = {
3
- hub: 'HUB',
4
- agent: 'AGENT',
5
- code: 'CODE',
6
- ide: 'IDE',
7
- chat: 'CHAT',
8
- tool: 'TOOL',
9
- };
10
- const TAB_INTERFACE_NAMES = {
11
- hub: 'HUB INTERFACE',
12
- agent: 'AGENT INTERFACE',
13
- code: 'CODE INTERFACE',
14
- ide: 'IDE INTERFACE',
15
- chat: 'CHAT INTERFACE',
16
- tool: 'TOOL INTERFACE',
17
- };
18
- export const TOOL_TAB_LABELS = {
19
- 'image-gen': 'IMAGE GEN',
20
- 'video-gen': 'VIDEO GEN',
21
- 'upscaler': 'UPSCALER',
22
- 'bg-removal': 'BG REMOVAL',
23
- 'resize': 'RESIZE',
24
- 'converter': 'CONVERTER',
25
- 'compressor': 'COMPRESSOR',
26
- 'asset-extractor': 'ASSET EXTRACTOR',
27
- 'ui-asset-extractor': 'UI ASSET EXTRACTOR',
28
- 'material-generator': 'MATERIAL GEN',
29
- 'pdf-merge': 'PDF MERGE',
30
- 'latex-compiler': 'LATEX',
31
- 'capture': 'CAPTURE',
32
- 'whisper': 'WHISPER',
33
- };
34
- const TAB_STATE_STORAGE_KEY = 'xeno.hub.tabs.v1';
35
- const DEFAULT_TABS = [
36
- { id: '1', type: 'hub', label: 'HUB', pinned: true },
37
- { id: '2', type: 'agent', label: 'AGENT', pinned: true },
38
- { id: '3', type: 'code', label: 'CODE', pinned: true },
39
- ];
40
- const VALID_TAB_TYPES = new Set(['hub', 'agent', 'code', 'ide', 'chat', 'tool']);
41
- let nextId = 4;
42
- function syncNextId(tabs) {
43
- const maxNumericId = tabs.reduce((max, tab) => {
44
- const numeric = Number(tab.id);
45
- return Number.isFinite(numeric) ? Math.max(max, numeric) : max;
46
- }, 3);
47
- nextId = Math.max(4, maxNumericId + 1);
48
- }
49
- function normalizeTab(raw) {
50
- if (!raw || typeof raw !== 'object')
51
- return null;
52
- const candidate = raw;
53
- if (typeof candidate.id !== 'string' || candidate.id.length === 0)
54
- return null;
55
- if (!candidate.type || !VALID_TAB_TYPES.has(candidate.type))
56
- return null;
57
- if (candidate.type === 'tool') {
58
- if (!candidate.toolId || !isToolTabId(candidate.toolId))
59
- return null;
60
- return {
61
- id: candidate.id,
62
- type: 'tool',
63
- label: TOOL_TAB_LABELS[candidate.toolId],
64
- toolId: candidate.toolId,
65
- };
66
- }
67
- return {
68
- id: candidate.id,
69
- type: candidate.type,
70
- label: TAB_LABELS[candidate.type],
71
- pinned: DEFAULT_TABS.some((tab) => tab.id === candidate.id && tab.type === candidate.type) || undefined,
72
- };
73
- }
74
- function getToolTabLabel(toolId, existingTabs) {
75
- const baseLabel = TOOL_TAB_LABELS[toolId];
76
- const instanceCount = existingTabs.filter((tab) => tab.type === 'tool' && tab.toolId === toolId).length;
77
- return instanceCount === 0 ? baseLabel : `${baseLabel} ${instanceCount + 1}`;
78
- }
79
- function relabelToolTabs(tabs) {
80
- const counts = new Map();
81
- return tabs.map((tab) => {
82
- if (tab.type !== 'tool' || !tab.toolId)
83
- return tab;
84
- const nextCount = (counts.get(tab.toolId) || 0) + 1;
85
- counts.set(tab.toolId, nextCount);
86
- return {
87
- ...tab,
88
- label: nextCount === 1 ? TOOL_TAB_LABELS[tab.toolId] : `${TOOL_TAB_LABELS[tab.toolId]} ${nextCount}`,
89
- };
90
- });
91
- }
92
- function normalizeTabs(rawTabs) {
93
- const restored = Array.isArray(rawTabs)
94
- ? rawTabs.map(normalizeTab).filter((tab) => Boolean(tab))
95
- : [];
96
- const pinnedTabs = DEFAULT_TABS.map((defaultTab) => ({
97
- id: defaultTab.id,
98
- type: defaultTab.type,
99
- label: defaultTab.label,
100
- pinned: true,
101
- }));
102
- const customTabs = restored.filter((tab) => !DEFAULT_TABS.some((defaultTab) => defaultTab.id === tab.id));
103
- const tabs = relabelToolTabs([...pinnedTabs, ...customTabs]);
104
- syncNextId(tabs);
105
- return tabs;
106
- }
107
- function persistTabState(tabs, activeTabId) {
108
- if (typeof window === 'undefined')
109
- return;
110
- try {
111
- window.localStorage.setItem(TAB_STATE_STORAGE_KEY, JSON.stringify({ tabs, activeTabId }));
112
- }
113
- catch {
114
- // Tab persistence is a convenience layer; never block core navigation.
115
- }
116
- }
117
- function loadInitialTabState() {
118
- if (typeof window === 'undefined') {
119
- syncNextId(DEFAULT_TABS);
120
- return { tabs: DEFAULT_TABS, activeTabId: '1' };
121
- }
122
- try {
123
- const raw = window.localStorage.getItem(TAB_STATE_STORAGE_KEY);
124
- if (!raw) {
125
- syncNextId(DEFAULT_TABS);
126
- return { tabs: DEFAULT_TABS, activeTabId: '1' };
127
- }
128
- const parsed = JSON.parse(raw);
129
- const tabs = normalizeTabs(parsed.tabs);
130
- const activeTabId = typeof parsed.activeTabId === 'string' && tabs.some((tab) => tab.id === parsed.activeTabId)
131
- ? parsed.activeTabId
132
- : tabs[0]?.id || '1';
133
- return { tabs, activeTabId };
134
- }
135
- catch {
136
- syncNextId(DEFAULT_TABS);
137
- return { tabs: DEFAULT_TABS, activeTabId: '1' };
138
- }
139
- }
140
- function createTab(type) {
141
- return {
142
- id: String(nextId++),
143
- type,
144
- label: TAB_LABELS[type],
145
- };
146
- }
147
- function createToolTab(toolId, existingTabs = []) {
148
- return {
149
- id: String(nextId++),
150
- type: 'tool',
151
- label: getToolTabLabel(toolId, existingTabs),
152
- toolId,
153
- };
154
- }
155
- export function getInterfaceName(type) {
156
- return TAB_INTERFACE_NAMES[type];
157
- }
158
- export function isToolTabId(value) {
159
- return value in TOOL_TAB_LABELS;
160
- }
161
- const initialTabState = loadInitialTabState();
162
- export const useTabStore = create((set, get) => ({
163
- tabs: initialTabState.tabs,
164
- activeTabId: initialTabState.activeTabId,
165
- pendingHubSection: null,
166
- addTab: (type) => {
167
- const tab = createTab(type);
168
- set((state) => {
169
- const tabs = [...state.tabs, tab];
170
- persistTabState(tabs, tab.id);
171
- return { tabs, activeTabId: tab.id };
172
- });
173
- },
174
- openToolTab: (toolId, options) => {
175
- const { tabs, activeTabId } = get();
176
- const shouldActivate = options?.activate !== false;
177
- const existing = options?.newInstance
178
- ? undefined
179
- : tabs.find((tab) => tab.type === 'tool' && tab.toolId === toolId);
180
- if (existing) {
181
- if (shouldActivate) {
182
- set({ activeTabId: existing.id });
183
- persistTabState(tabs, existing.id);
184
- }
185
- else {
186
- persistTabState(tabs, activeTabId);
187
- }
188
- return;
189
- }
190
- const tab = createToolTab(toolId, tabs);
191
- set((state) => {
192
- const tabs = [...state.tabs, tab];
193
- const nextActiveTabId = shouldActivate ? tab.id : state.activeTabId;
194
- persistTabState(tabs, nextActiveTabId);
195
- return { tabs, activeTabId: nextActiveTabId };
196
- });
197
- },
198
- removeTab: (tabId) => {
199
- const { tabs, activeTabId } = get();
200
- const tab = tabs.find((t) => t.id === tabId);
201
- if (!tab || tab.pinned)
202
- return; // Don't remove pinned tabs
203
- if (tabs.length <= 1)
204
- return; // Don't remove last tab
205
- const idx = tabs.findIndex((t) => t.id === tabId);
206
- const newTabs = tabs.filter((t) => t.id !== tabId);
207
- // If removing the active tab, activate the nearest one
208
- let newActiveId = activeTabId;
209
- if (activeTabId === tabId) {
210
- const newIdx = Math.min(idx, newTabs.length - 1);
211
- newActiveId = newTabs[newIdx].id;
212
- }
213
- set({ tabs: newTabs, activeTabId: newActiveId });
214
- persistTabState(newTabs, newActiveId);
215
- },
216
- setActiveTab: (tabId) => {
217
- const { tabs } = get();
218
- if (!tabs.some((tab) => tab.id === tabId))
219
- return;
220
- set({ activeTabId: tabId });
221
- persistTabState(tabs, tabId);
222
- },
223
- duplicateTab: (tabId) => {
224
- const { tabs } = get();
225
- const source = tabs.find((t) => t.id === tabId);
226
- if (!source)
227
- return;
228
- const tab = source.type === 'tool' && source.toolId
229
- ? createToolTab(source.toolId, tabs)
230
- : createTab(source.type);
231
- const idx = tabs.findIndex((t) => t.id === tabId);
232
- const newTabs = [...tabs];
233
- newTabs.splice(idx + 1, 0, tab);
234
- set({ tabs: newTabs, activeTabId: tab.id });
235
- persistTabState(newTabs, tab.id);
236
- },
237
- navigateToHubSection: (section) => {
238
- const { tabs } = get();
239
- const hubTab = tabs.find(t => t.type === 'hub');
240
- if (hubTab) {
241
- set({ activeTabId: hubTab.id, pendingHubSection: section });
242
- persistTabState(tabs, hubTab.id);
243
- }
244
- },
245
- consumePendingHubSection: () => {
246
- const section = get().pendingHubSection;
247
- if (section)
248
- set({ pendingHubSection: null });
249
- return section;
250
- },
251
- }));
252
- //# sourceMappingURL=tabStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tabStore.js","sourceRoot":"","sources":["../../src/stores/tabStore.ts"],"names":[],"mappings":"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"}
@@ -1,88 +0,0 @@
1
- export interface CodeExecution {
2
- id: string;
3
- language: 'python' | 'javascript';
4
- code: string;
5
- status: 'pending' | 'running' | 'completed' | 'error';
6
- stdout?: string;
7
- stderr?: string;
8
- exitCode?: number | null;
9
- durationMs?: number;
10
- files?: string[];
11
- error?: string;
12
- }
13
- export interface XenoChatMessage {
14
- id: string;
15
- role: 'user' | 'assistant';
16
- content: string;
17
- thinking?: string;
18
- showThinking?: boolean;
19
- isThinking?: boolean;
20
- isStreaming?: boolean;
21
- error?: string;
22
- timestamp: number;
23
- codeExecutions?: CodeExecution[];
24
- }
25
- export interface XenoChatConversation {
26
- id: string;
27
- messages: XenoChatMessage[];
28
- title: string;
29
- model: string;
30
- createdAt: number;
31
- lastMessageAt: number;
32
- }
33
- export interface ModelInfo {
34
- id: string;
35
- name: string;
36
- provider: 'cloud' | 'local';
37
- parameterSize?: string | null;
38
- family?: string | null;
39
- supportsThinking?: boolean;
40
- }
41
- export interface RuntimeInfo {
42
- python: {
43
- available: boolean;
44
- version: string | null;
45
- command: string | null;
46
- };
47
- node: {
48
- available: boolean;
49
- version: string | null;
50
- };
51
- }
52
- interface XenoChatState {
53
- conversations: Record<string, XenoChatConversation>;
54
- activeConversationId: string | null;
55
- activeRequestId: string | null;
56
- defaultModel: string;
57
- availableModels: ModelInfo[];
58
- modelsLoading: boolean;
59
- modelsError: string | null;
60
- runtimes: RuntimeInfo | null;
61
- isExecutingCode: boolean;
62
- serverConnected: boolean;
63
- creatingConversation: boolean;
64
- createConversation: (model?: string) => string;
65
- setActiveConversation: (id: string | null) => void;
66
- deleteConversation: (id: string) => void;
67
- renameConversation: (id: string, title: string) => void;
68
- sendMessage: (conversationId: string, content: string, options?: {
69
- enableThinking?: boolean;
70
- }) => void;
71
- appendChunk: (requestId: string, content: string, thinking: string) => void;
72
- finalizeStream: (requestId: string) => void;
73
- setStreamError: (requestId: string, error: string) => void;
74
- abort: () => void;
75
- setDefaultModel: (modelId: string) => void;
76
- setConversationModel: (conversationId: string, modelId: string) => void;
77
- fetchModels: () => Promise<void>;
78
- detectRuntimes: () => Promise<void>;
79
- updateCodeExecution: (messageId: string, executionId: string, updates: Partial<CodeExecution>) => void;
80
- executeCodeBlock: (conversationId: string, messageId: string, execution: CodeExecution) => Promise<void>;
81
- sendFollowup: (conversationId: string, resultContent: string) => void;
82
- setServerConnected: (connected: boolean) => void;
83
- loadLocalConversations: () => Promise<void>;
84
- }
85
- export declare const useXenoChatStore: import("zustand").UseBoundStore<import("zustand").StoreApi<XenoChatState>>;
86
- export declare function setupXenoChatListeners(): () => void;
87
- export {};
88
- //# sourceMappingURL=xenoChatStore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"xenoChatStore.d.ts","sourceRoot":"","sources":["../../src/stores/xenoChatStore.ts"],"names":[],"mappings":"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"}