@parhelia/core 0.1.12350 → 0.1.12390

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 (252) hide show
  1. package/dist/agents-view/AgentsView.js +1 -1
  2. package/dist/agents-view/AgentsView.js.map +1 -1
  3. package/dist/components/ui/LanguageSelector.js +1 -3
  4. package/dist/components/ui/LanguageSelector.js.map +1 -1
  5. package/dist/components/ui/dialog.js +1 -1
  6. package/dist/components/ui/dialog.js.map +1 -1
  7. package/dist/config/config.js +56 -16
  8. package/dist/config/config.js.map +1 -1
  9. package/dist/config/notificationRoutes.js +10 -0
  10. package/dist/config/notificationRoutes.js.map +1 -1
  11. package/dist/config/types/workspace.d.ts +6 -0
  12. package/dist/config/types.d.ts +2 -5
  13. package/dist/editor/Editor.js +11 -4
  14. package/dist/editor/Editor.js.map +1 -1
  15. package/dist/editor/FieldListField.js +6 -4
  16. package/dist/editor/FieldListField.js.map +1 -1
  17. package/dist/editor/ai/AgentCostDisplay.d.ts +1 -0
  18. package/dist/editor/ai/AgentCostDisplay.js +1 -1
  19. package/dist/editor/ai/AgentCostDisplay.js.map +1 -1
  20. package/dist/editor/ai/AgentTerminal.js +144 -36
  21. package/dist/editor/ai/AgentTerminal.js.map +1 -1
  22. package/dist/editor/ai/AgentTerminalStatusBar.d.ts +2 -0
  23. package/dist/editor/ai/AgentTerminalStatusBar.js +22 -37
  24. package/dist/editor/ai/AgentTerminalStatusBar.js.map +1 -1
  25. package/dist/editor/ai/AiResponseMessage.js +0 -1
  26. package/dist/editor/ai/AiResponseMessage.js.map +1 -1
  27. package/dist/editor/ai/ContentInspectorPopover.d.ts +17 -0
  28. package/dist/editor/ai/ContentInspectorPopover.js +136 -0
  29. package/dist/editor/ai/ContentInspectorPopover.js.map +1 -0
  30. package/dist/editor/ai/ContextInfoBar.js +55 -2
  31. package/dist/editor/ai/ContextInfoBar.js.map +1 -1
  32. package/dist/editor/ai/InlineAiDialog.js +1 -7
  33. package/dist/editor/ai/InlineAiDialog.js.map +1 -1
  34. package/dist/editor/ai/ToolCallDisplay.d.ts +4 -0
  35. package/dist/editor/ai/ToolCallDisplay.js +43 -8
  36. package/dist/editor/ai/ToolCallDisplay.js.map +1 -1
  37. package/dist/editor/ai/dialogs/AgentDialogHandler.js +46 -22
  38. package/dist/editor/ai/dialogs/AgentDialogHandler.js.map +1 -1
  39. package/dist/editor/client/EditorShell.js +69 -26
  40. package/dist/editor/client/EditorShell.js.map +1 -1
  41. package/dist/editor/client/editContext.d.ts +3 -2
  42. package/dist/editor/client/hooks/useQuota.d.ts +2 -1
  43. package/dist/editor/client/hooks/useQuota.js.map +1 -1
  44. package/dist/editor/client/hooks/useSocketMessageHandler.js +28 -0
  45. package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
  46. package/dist/editor/client/operations.d.ts +1 -0
  47. package/dist/editor/client/operations.js +67 -15
  48. package/dist/editor/client/operations.js.map +1 -1
  49. package/dist/editor/client/waitForEditOperationTerminal.d.ts +11 -0
  50. package/dist/editor/client/waitForEditOperationTerminal.js +40 -0
  51. package/dist/editor/client/waitForEditOperationTerminal.js.map +1 -0
  52. package/dist/editor/commands/commands.d.ts +11 -1
  53. package/dist/editor/commands/commands.js +12 -1
  54. package/dist/editor/commands/commands.js.map +1 -1
  55. package/dist/editor/commands/customCommandConverter.d.ts +8 -1
  56. package/dist/editor/commands/customCommandConverter.js +33 -4
  57. package/dist/editor/commands/customCommandConverter.js.map +1 -1
  58. package/dist/editor/commands/handlers/uiActionHandlers.d.ts +6 -0
  59. package/dist/editor/commands/handlers/uiActionHandlers.js +84 -0
  60. package/dist/editor/commands/handlers/uiActionHandlers.js.map +1 -0
  61. package/dist/editor/commands/itemCommands.js +6 -2
  62. package/dist/editor/commands/itemCommands.js.map +1 -1
  63. package/dist/editor/commands/keyboardCommands.d.ts +10 -0
  64. package/dist/editor/commands/keyboardCommands.js +142 -0
  65. package/dist/editor/commands/keyboardCommands.js.map +1 -0
  66. package/dist/editor/commands/undo.d.ts +9 -15
  67. package/dist/editor/commands/undo.js +24 -0
  68. package/dist/editor/commands/undo.js.map +1 -1
  69. package/dist/editor/menubar/PageSelector.js +1 -3
  70. package/dist/editor/menubar/PageSelector.js.map +1 -1
  71. package/dist/editor/menubar/VersionSelector.js +1 -3
  72. package/dist/editor/menubar/VersionSelector.js.map +1 -1
  73. package/dist/editor/menubar/toolbar-sections/CustomCommandsToolbar.js +7 -36
  74. package/dist/editor/menubar/toolbar-sections/CustomCommandsToolbar.js.map +1 -1
  75. package/dist/editor/menubar/toolbar-sections/UtilityControls.js +10 -1
  76. package/dist/editor/menubar/toolbar-sections/UtilityControls.js.map +1 -1
  77. package/dist/editor/notifications/notificationRoutes.js +1 -0
  78. package/dist/editor/notifications/notificationRoutes.js.map +1 -1
  79. package/dist/editor/page-editor-chrome/InlineEditor.js +53 -36
  80. package/dist/editor/page-editor-chrome/InlineEditor.js.map +1 -1
  81. package/dist/editor/page-viewer/PageViewer.js +60 -6
  82. package/dist/editor/page-viewer/PageViewer.js.map +1 -1
  83. package/dist/editor/reviews/Comment.js +12 -10
  84. package/dist/editor/reviews/Comment.js.map +1 -1
  85. package/dist/editor/reviews/CommentDisplayPopover.js +1 -3
  86. package/dist/editor/reviews/CommentDisplayPopover.js.map +1 -1
  87. package/dist/editor/reviews/PreviewInfo.js +1 -4
  88. package/dist/editor/reviews/PreviewInfo.js.map +1 -1
  89. package/dist/editor/reviews/reviewCommands.js +4 -1
  90. package/dist/editor/reviews/reviewCommands.js.map +1 -1
  91. package/dist/editor/reviews/useReviews.d.ts +2 -2
  92. package/dist/editor/reviews/useReviews.js +12 -30
  93. package/dist/editor/reviews/useReviews.js.map +1 -1
  94. package/dist/editor/services/agentService.d.ts +26 -0
  95. package/dist/editor/services/agentService.js +41 -0
  96. package/dist/editor/services/agentService.js.map +1 -1
  97. package/dist/editor/services/aiService.d.ts +7 -1
  98. package/dist/editor/services/aiService.js +13 -1
  99. package/dist/editor/services/aiService.js.map +1 -1
  100. package/dist/editor/services/notificationService.d.ts +1 -0
  101. package/dist/editor/services/notificationService.js +1 -0
  102. package/dist/editor/services/notificationService.js.map +1 -1
  103. package/dist/editor/services/reviewsService.d.ts +2 -5
  104. package/dist/editor/services/reviewsService.js +0 -10
  105. package/dist/editor/services/reviewsService.js.map +1 -1
  106. package/dist/editor/services/systemService.d.ts +2 -1
  107. package/dist/editor/services/systemService.js +3 -0
  108. package/dist/editor/services/systemService.js.map +1 -1
  109. package/dist/editor/settings/QuotaInfo.js +15 -7
  110. package/dist/editor/settings/QuotaInfo.js.map +1 -1
  111. package/dist/editor/settings/index/useIndexStatus.js +1 -1
  112. package/dist/editor/settings/index/useIndexStatus.js.map +1 -1
  113. package/dist/editor/settings/panels/AgentProfileConfigPanel.d.ts +10 -0
  114. package/dist/editor/settings/panels/AgentProfileConfigPanel.js +61 -0
  115. package/dist/editor/settings/panels/AgentProfileConfigPanel.js.map +1 -0
  116. package/dist/editor/settings/panels/AgentsPanel.d.ts +0 -4
  117. package/dist/editor/settings/panels/AgentsPanel.js +101 -109
  118. package/dist/editor/settings/panels/AgentsPanel.js.map +1 -1
  119. package/dist/editor/settings/panels/CreateAgentProfileDialog.d.ts +7 -0
  120. package/dist/editor/settings/panels/CreateAgentProfileDialog.js +48 -0
  121. package/dist/editor/settings/panels/CreateAgentProfileDialog.js.map +1 -0
  122. package/dist/editor/settings/panels/GroupedFieldConfigPanel.d.ts +33 -0
  123. package/dist/editor/settings/panels/GroupedFieldConfigPanel.js +91 -0
  124. package/dist/editor/settings/panels/GroupedFieldConfigPanel.js.map +1 -0
  125. package/dist/editor/settings/panels/ModelConfigPanel.d.ts +10 -0
  126. package/dist/editor/settings/panels/ModelConfigPanel.js +51 -0
  127. package/dist/editor/settings/panels/ModelConfigPanel.js.map +1 -0
  128. package/dist/editor/settings/panels/ModelsPanel.js +201 -70
  129. package/dist/editor/settings/panels/ModelsPanel.js.map +1 -1
  130. package/dist/editor/settings/panels/ProjectTemplateAgentPanel.d.ts +10 -0
  131. package/dist/editor/settings/panels/ProjectTemplateAgentPanel.js +46 -0
  132. package/dist/editor/settings/panels/ProjectTemplateAgentPanel.js.map +1 -0
  133. package/dist/editor/settings/panels/ProjectTemplatesPanel.d.ts +2 -0
  134. package/dist/editor/settings/panels/ProjectTemplatesPanel.js +1340 -0
  135. package/dist/editor/settings/panels/ProjectTemplatesPanel.js.map +1 -0
  136. package/dist/editor/settings/panels/ProviderConfigPanel.d.ts +10 -0
  137. package/dist/editor/settings/panels/ProviderConfigPanel.js +32 -0
  138. package/dist/editor/settings/panels/ProviderConfigPanel.js.map +1 -0
  139. package/dist/editor/settings/panels/ProvidersPanel.js +46 -4
  140. package/dist/editor/settings/panels/ProvidersPanel.js.map +1 -1
  141. package/dist/editor/settings/panels/SearchConfigPanel.js +3 -3
  142. package/dist/editor/settings/panels/SearchConfigPanel.js.map +1 -1
  143. package/dist/editor/settings/panels/index.d.ts +1 -2
  144. package/dist/editor/settings/panels/index.js +1 -2
  145. package/dist/editor/settings/panels/index.js.map +1 -1
  146. package/dist/editor/sidebar/WorkspaceRailMobile.d.ts +1 -3
  147. package/dist/editor/sidebar/WorkspaceRailMobile.js +3 -5
  148. package/dist/editor/sidebar/WorkspaceRailMobile.js.map +1 -1
  149. package/dist/editor/ui/ItemNameDialogNew.js +15 -9
  150. package/dist/editor/ui/ItemNameDialogNew.js.map +1 -1
  151. package/dist/editor/utils/keyboardNavigation.d.ts +6 -20
  152. package/dist/editor/utils/keyboardNavigation.js +48 -139
  153. package/dist/editor/utils/keyboardNavigation.js.map +1 -1
  154. package/dist/revision.d.ts +2 -2
  155. package/dist/revision.js +2 -2
  156. package/dist/setup/services/setupWizardService.d.ts +8 -10
  157. package/dist/setup/services/setupWizardService.js +4 -17
  158. package/dist/setup/services/setupWizardService.js.map +1 -1
  159. package/dist/splash-screen/ModernSplashScreen.js +100 -18
  160. package/dist/splash-screen/ModernSplashScreen.js.map +1 -1
  161. package/dist/splash-screen/ParheliaAssistantChat.js +3 -22
  162. package/dist/splash-screen/ParheliaAssistantChat.js.map +1 -1
  163. package/dist/splash-screen/ParheliaLogo.js +87 -37
  164. package/dist/splash-screen/ParheliaLogo.js.map +1 -1
  165. package/dist/task-board/TaskBoardWorkspace.js +201 -66
  166. package/dist/task-board/TaskBoardWorkspace.js.map +1 -1
  167. package/dist/task-board/components/AssignAgentDialog.js +9 -4
  168. package/dist/task-board/components/AssignAgentDialog.js.map +1 -1
  169. package/dist/task-board/components/CreateProjectDialog.js +32 -34
  170. package/dist/task-board/components/CreateProjectDialog.js.map +1 -1
  171. package/dist/task-board/components/CreateTaskDialog.d.ts +2 -0
  172. package/dist/task-board/components/CreateTaskDialog.js +35 -11
  173. package/dist/task-board/components/CreateTaskDialog.js.map +1 -1
  174. package/dist/task-board/components/ProjectPropertiesPanel.js +7 -4
  175. package/dist/task-board/components/ProjectPropertiesPanel.js.map +1 -1
  176. package/dist/task-board/components/TaskAgentPanel.js +13 -4
  177. package/dist/task-board/components/TaskAgentPanel.js.map +1 -1
  178. package/dist/task-board/components/TaskAssigneePicker.d.ts +2 -2
  179. package/dist/task-board/components/TaskAssigneePicker.js +12 -4
  180. package/dist/task-board/components/TaskAssigneePicker.js.map +1 -1
  181. package/dist/task-board/components/TaskAttachmentsSection.js +1 -1
  182. package/dist/task-board/components/TaskAttachmentsSection.js.map +1 -1
  183. package/dist/task-board/components/TaskBoardProjectListSidebar.js.map +1 -1
  184. package/dist/task-board/components/TaskBoardTitlebar.js +1 -1
  185. package/dist/task-board/components/TaskBoardTitlebar.js.map +1 -1
  186. package/dist/task-board/components/TaskCard.js +2 -2
  187. package/dist/task-board/components/TaskCard.js.map +1 -1
  188. package/dist/task-board/components/TaskDetailPanel.js +2 -2
  189. package/dist/task-board/components/TaskDetailPanel.js.map +1 -1
  190. package/dist/task-board/components/TaskRow.js +2 -2
  191. package/dist/task-board/components/TaskRow.js.map +1 -1
  192. package/dist/task-board/components/WizardCommunicationCenter.d.ts +2 -0
  193. package/dist/task-board/components/WizardCommunicationCenter.js +19 -8
  194. package/dist/task-board/components/WizardCommunicationCenter.js.map +1 -1
  195. package/dist/task-board/components/WizardTaskDetailsPanel.js +1 -1
  196. package/dist/task-board/components/WizardTaskDetailsPanel.js.map +1 -1
  197. package/dist/task-board/index.d.ts +1 -0
  198. package/dist/task-board/index.js +1 -0
  199. package/dist/task-board/index.js.map +1 -1
  200. package/dist/task-board/services/taskService.d.ts +13 -2
  201. package/dist/task-board/services/taskService.js +26 -2
  202. package/dist/task-board/services/taskService.js.map +1 -1
  203. package/dist/task-board/types.d.ts +71 -5
  204. package/dist/task-board/views/DependencyGraphView.d.ts +39 -0
  205. package/dist/task-board/views/DependencyGraphView.js +702 -0
  206. package/dist/task-board/views/DependencyGraphView.js.map +1 -0
  207. package/dist/task-board/views/KanbanView.d.ts +0 -4
  208. package/dist/task-board/views/KanbanView.js +4 -10
  209. package/dist/task-board/views/KanbanView.js.map +1 -1
  210. package/dist/task-board/views/ListView.d.ts +0 -4
  211. package/dist/task-board/views/ListView.js +3 -9
  212. package/dist/task-board/views/ListView.js.map +1 -1
  213. package/dist/task-board/views/WizardView.js +4 -4
  214. package/dist/task-board/views/WizardView.js.map +1 -1
  215. package/dist/types.d.ts +23 -15
  216. package/package.json +11 -8
  217. package/dist/editor/settings/Setup.d.ts +0 -1
  218. package/dist/editor/settings/Setup.js +0 -211
  219. package/dist/editor/settings/Setup.js.map +0 -1
  220. package/dist/editor/settings/panels/DatabasePanel.d.ts +0 -6
  221. package/dist/editor/settings/panels/DatabasePanel.js +0 -50
  222. package/dist/editor/settings/panels/DatabasePanel.js.map +0 -1
  223. package/dist/editor/settings/setup-steps/AiSetupStep/EmbeddingsModelSection.d.ts +0 -2
  224. package/dist/editor/settings/setup-steps/AiSetupStep/EmbeddingsModelSection.js +0 -195
  225. package/dist/editor/settings/setup-steps/AiSetupStep/EmbeddingsModelSection.js.map +0 -1
  226. package/dist/editor/settings/setup-steps/AiSetupStep/index.d.ts +0 -2
  227. package/dist/editor/settings/setup-steps/AiSetupStep/index.js +0 -21
  228. package/dist/editor/settings/setup-steps/AiSetupStep/index.js.map +0 -1
  229. package/dist/editor/settings/setup-steps/AiSetupStep/provider/ProviderSection.d.ts +0 -1
  230. package/dist/editor/settings/setup-steps/AiSetupStep/provider/ProviderSection.js +0 -233
  231. package/dist/editor/settings/setup-steps/AiSetupStep/provider/ProviderSection.js.map +0 -1
  232. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersList.d.ts +0 -15
  233. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersList.js +0 -14
  234. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersList.js.map +0 -1
  235. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersSection.d.ts +0 -1
  236. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersSection.js +0 -94
  237. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersSection.js.map +0 -1
  238. package/dist/editor/settings/setup-steps/AiSetupStep/types.d.ts +0 -1
  239. package/dist/editor/settings/setup-steps/AiSetupStep/types.js +0 -2
  240. package/dist/editor/settings/setup-steps/AiSetupStep/types.js.map +0 -1
  241. package/dist/editor/settings/setup-steps/AiSetupStep/utils.d.ts +0 -5
  242. package/dist/editor/settings/setup-steps/AiSetupStep/utils.js +0 -44
  243. package/dist/editor/settings/setup-steps/AiSetupStep/utils.js.map +0 -1
  244. package/dist/editor/settings/setup-steps/IndexSetupStep.d.ts +0 -2
  245. package/dist/editor/settings/setup-steps/IndexSetupStep.js +0 -36
  246. package/dist/editor/settings/setup-steps/IndexSetupStep.js.map +0 -1
  247. package/dist/editor/settings/setup-steps/SettingsSetupStep.d.ts +0 -2
  248. package/dist/editor/settings/setup-steps/SettingsSetupStep.js +0 -111
  249. package/dist/editor/settings/setup-steps/SettingsSetupStep.js.map +0 -1
  250. package/dist/editor/settings/setup-steps/SetupOverview.d.ts +0 -14
  251. package/dist/editor/settings/setup-steps/SetupOverview.js +0 -38
  252. package/dist/editor/settings/setup-steps/SetupOverview.js.map +0 -1
@@ -1,233 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import React from "react";
3
- import { Select } from "../../../../../components/ui/select";
4
- import { Input } from "../../../../../components/ui/input";
5
- import { Button } from "../../../../../components/ui/button";
6
- import { CheckCircle, RefreshCw } from "lucide-react";
7
- import { useEditContext } from "../../../../client/editContext";
8
- import { getChildren } from "../../../../services/contentService";
9
- import { findByName, resolvePathUnderContent } from "../utils";
10
- export function ProviderSection() {
11
- const editContext = useEditContext();
12
- const [aiProvider, setAiProvider] = React.useState("");
13
- const [apiKey, setApiKey] = React.useState("");
14
- const [aiBusy, setAiBusy] = React.useState(false);
15
- const [aiError, setAiError] = React.useState(null);
16
- const [providers, setProviders] = React.useState([]);
17
- const [loadingProviders, setLoadingProviders] = React.useState(false);
18
- const [providersError, setProvidersError] = React.useState(null);
19
- const lastLoadAtRef = React.useRef(0);
20
- const isLoadingRef = React.useRef(false);
21
- const userLang = editContext?.item?.language || "en";
22
- const sessionId = editContext?.sessionId;
23
- const aiOptions = React.useMemo(() => [
24
- { value: "openai", label: "OpenAI" },
25
- { value: "azure-openai", label: "Azure OpenAI" },
26
- { value: "openrouter", label: "OpenRouter" },
27
- ], []);
28
- const loadProviders = React.useCallback(async (options) => {
29
- if (!sessionId)
30
- return;
31
- try {
32
- const now = Date.now();
33
- const MIN_INTERVAL_MS = 2000;
34
- if (!options?.force) {
35
- if (isLoadingRef.current)
36
- return;
37
- if (now - lastLoadAtRef.current < MIN_INTERVAL_MS)
38
- return;
39
- }
40
- isLoadingRef.current = true;
41
- lastLoadAtRef.current = now;
42
- setLoadingProviders(true);
43
- setProvidersError(null);
44
- const settingsItem = await resolvePathUnderContent(sessionId, userLang, ["Settings", "Editor"]);
45
- if (!settingsItem) {
46
- setProviders([]);
47
- return;
48
- }
49
- const children = (await getChildren(settingsItem.id, sessionId, [], false, userLang, "path"));
50
- const aiProvidersParent = findByName(children, "Ai Providers");
51
- if (!aiProvidersParent) {
52
- setProviders([]);
53
- return;
54
- }
55
- const providerChildren = (await getChildren(aiProvidersParent.id, sessionId, [], false, userLang, "path"));
56
- setProviders(providerChildren || []);
57
- }
58
- catch (e) {
59
- setProvidersError(e?.message || "Failed to load AI providers");
60
- }
61
- finally {
62
- isLoadingRef.current = false;
63
- setLoadingProviders(false);
64
- }
65
- }, [sessionId, userLang]);
66
- const createAiProvider = React.useCallback(async () => {
67
- if (!aiProvider || !editContext)
68
- return;
69
- try {
70
- setAiBusy(true);
71
- setAiError(null);
72
- const settingsItem = await resolvePathUnderContent(editContext.sessionId, userLang, ["Settings", "Editor"]);
73
- if (!settingsItem)
74
- throw new Error("Editor settings item not found. Create it first.");
75
- const children = (await getChildren(settingsItem.id, editContext.sessionId, [], false, userLang, "path"));
76
- let aiProvidersParent = findByName(children, "Ai Providers");
77
- if (!aiProvidersParent) {
78
- const aiProvidersTemplateId = "4592f2e0-06e4-470e-9820-7fd4ea148e00";
79
- const createdContainer = await editContext.operations.createItem(settingsItem, aiProvidersTemplateId, "Ai Providers");
80
- if (!createdContainer)
81
- throw new Error("Failed to create 'Ai Providers' container");
82
- aiProvidersParent = {
83
- id: createdContainer.id,
84
- name: "Ai Providers",
85
- thumbUrl: "",
86
- previewUrl: "",
87
- templateId: "",
88
- icon: "",
89
- hasChildren: false,
90
- isComponent: false,
91
- displayName: "Ai Providers",
92
- language: userLang,
93
- version: 0,
94
- hasLayout: false,
95
- };
96
- }
97
- const providerTemplateId = "a6358b92-a9ea-4dd8-b4e1-7d6d3a3b9c40";
98
- const providerName = aiProvider === "openai"
99
- ? "OpenAI"
100
- : aiProvider === "azure-openai"
101
- ? "Azure OpenAI"
102
- : "Open Router";
103
- // Find or create provider
104
- let providerItem = null;
105
- const providerChildren = (await getChildren(aiProvidersParent.id, editContext.sessionId, [], false, userLang, "path"));
106
- const existingProvider = findByName(providerChildren, providerName);
107
- if (existingProvider) {
108
- providerItem = {
109
- id: existingProvider.id,
110
- language: userLang,
111
- version: 0,
112
- };
113
- }
114
- else {
115
- const created = await editContext.operations.createItem({
116
- id: aiProvidersParent.id,
117
- language: userLang,
118
- version: 0,
119
- }, providerTemplateId, providerName);
120
- if (!created)
121
- throw new Error("Failed to create AI provider");
122
- providerItem = created;
123
- }
124
- // Set API key if provided
125
- if (apiKey && providerItem) {
126
- const apiKeyFieldId = "db07ae53-459a-4314-89b3-ab2721df2b4f";
127
- await editContext.operations.editField({
128
- field: {
129
- fieldId: apiKeyFieldId,
130
- item: {
131
- id: providerItem.id,
132
- language: userLang,
133
- version: 0,
134
- },
135
- },
136
- value: apiKey,
137
- rawValue: apiKey,
138
- refresh: "delayed",
139
- });
140
- }
141
- // Ensure Ai Models container exists
142
- let aiModelsParent = findByName(children, "Ai Models");
143
- if (!aiModelsParent) {
144
- const aiModelsTemplateId = "e5f6a7b8-9c0d-1e2f-3a4b-5c6d7e8f9a0b";
145
- const createdModels = await editContext.operations.createItem(settingsItem, aiModelsTemplateId, "Ai Models");
146
- if (!createdModels)
147
- throw new Error("Failed to create 'Ai Models' container");
148
- aiModelsParent = {
149
- id: createdModels.id,
150
- name: "Ai Models",
151
- thumbUrl: "",
152
- previewUrl: "",
153
- templateId: "",
154
- icon: "",
155
- hasChildren: false,
156
- isComponent: false,
157
- displayName: "Ai Models",
158
- language: userLang,
159
- version: 0,
160
- hasLayout: false,
161
- };
162
- }
163
- // Create default models if missing and link to endpoint
164
- const modelsToEnsure = ["gpt-5", "gpt5-high", "image-1"];
165
- const modelTemplateId = "d2e3f4a5-4b5c-5c6d-bf0b-3e4f5a6b7c8e";
166
- const modelNameFieldId = "f1e2d3c4-5b6a-7980-8e9f-1a2b3c4d5e6f";
167
- const modelProviderFieldId = "cbade708-ce95-4f54-81b7-308ea61a76a6";
168
- const modelChildren = (await getChildren(aiModelsParent.id, editContext.sessionId, [], false, userLang, "path"));
169
- for (const modelName of modelsToEnsure) {
170
- let modelNode = findByName(modelChildren, modelName);
171
- if (!modelNode) {
172
- const createdModel = await editContext.operations.createItem({
173
- id: aiModelsParent.id,
174
- language: userLang,
175
- version: 0,
176
- }, modelTemplateId, modelName);
177
- if (!createdModel)
178
- throw new Error(`Failed to create model '${modelName}'`);
179
- modelNode = {
180
- id: createdModel.id,
181
- name: modelName,
182
- displayName: modelName,
183
- thumbUrl: "",
184
- previewUrl: "",
185
- templateId: "",
186
- icon: "",
187
- hasChildren: false,
188
- isComponent: false,
189
- language: userLang,
190
- version: 0,
191
- hasLayout: false,
192
- };
193
- await editContext.operations.editField({
194
- field: {
195
- fieldId: modelNameFieldId,
196
- item: { id: modelNode.id, language: userLang, version: 0 },
197
- },
198
- value: modelName,
199
- rawValue: modelName,
200
- refresh: "delayed",
201
- });
202
- const providerGuid = `{${providerItem.id
203
- .replace(/[{}()]/g, "")
204
- .toUpperCase()}}`;
205
- await editContext.operations.editField({
206
- field: {
207
- fieldId: modelProviderFieldId,
208
- item: { id: modelNode.id, language: userLang, version: 0 },
209
- },
210
- rawValue: providerGuid,
211
- refresh: "delayed",
212
- });
213
- }
214
- }
215
- editContext.requestRefresh?.("immediate");
216
- editContext.showToast?.(`Added '${providerName}' AI provider successfully`);
217
- await loadProviders({ force: true });
218
- setAiProvider("");
219
- setApiKey("");
220
- }
221
- catch (e) {
222
- setAiError(e?.message || "Failed to add AI provider");
223
- }
224
- finally {
225
- setAiBusy(false);
226
- }
227
- }, [aiProvider, editContext, userLang, apiKey, loadProviders]);
228
- React.useEffect(() => {
229
- loadProviders({ force: true });
230
- }, [loadProviders]);
231
- return (_jsxs(_Fragment, { children: [_jsx("div", { className: "flex items-center justify-between gap-2", children: _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(CheckCircle, { strokeWidth: 1, className: "h-4 w-4 text-green-600" }), _jsx("span", { className: "text-sm text-gray-700", children: "Select provider and add provider" })] }) }), _jsxs("div", { className: "mt-3", children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("span", { className: "text-xs text-gray-600", children: "Existing providers" }), _jsxs(Button, { size: "sm", disabled: loadingProviders, onClick: () => loadProviders({ force: true }), children: [loadingProviders ? (_jsx(RefreshCw, { strokeWidth: 1, className: "h-4 w-4 animate-spin" })) : (_jsx(RefreshCw, { strokeWidth: 1, className: "h-4 w-4" })), "Refresh"] })] }), _jsxs("div", { className: "mt-2", children: [providersError && (_jsx("div", { className: "rounded border border-red-200 bg-red-50 p-2 text-xs whitespace-pre-wrap text-red-700", children: providersError })), !providersError && (_jsx(_Fragment, { children: loadingProviders ? (_jsxs("div", { className: "flex items-center gap-2 text-xs text-gray-500", children: [_jsx(RefreshCw, { strokeWidth: 1, className: "h-4 w-4 animate-spin" }), "Loading providers\u2026"] })) : providers.length > 0 ? (_jsx("ul", { className: "list-disc pl-5 text-xs text-gray-700", children: providers.map((ep) => (_jsx("li", { children: ep.displayName || ep.name }, ep.id))) })) : (_jsx("div", { className: "text-xs text-gray-500", children: "No AI providers found." })) }))] })] }), _jsxs("div", { className: "mt-3 flex flex-col items-stretch gap-2", children: [_jsx(Select, { value: aiProvider, onValueChange: setAiProvider, options: aiOptions, placeholder: "Choose provider" }), aiProvider && (_jsx(Input, { type: "password", name: "ai-provider-api-key", autoComplete: "new-password", autoCapitalize: "none", spellCheck: false, placeholder: "API key", value: apiKey, onChange: (e) => setApiKey(e.target.value) })), _jsxs(Button, { size: "sm", disabled: !aiProvider || !apiKey || aiBusy, onClick: createAiProvider, children: [aiBusy ? (_jsx(RefreshCw, { strokeWidth: 1, className: "h-4 w-4 animate-spin" })) : (_jsx(CheckCircle, { strokeWidth: 1, className: "h-4 w-4" })), "Add provider"] })] }), aiError && (_jsx("div", { className: "mt-2 rounded border border-red-200 bg-red-50 p-2 text-xs whitespace-pre-wrap text-red-700", children: aiError }))] }));
232
- }
233
- //# sourceMappingURL=ProviderSection.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProviderSection.js","sourceRoot":"","sources":["../../../../../../src/editor/settings/setup-steps/AiSetupStep/provider/ProviderSection.tsx"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import type { StepState } from "../types";
2
- interface RequiredContainerDef {
3
- name: string;
4
- templateId: string;
5
- }
6
- interface RequiredContainersListProps {
7
- requiredContainers: RequiredContainerDef[];
8
- containerStates: Record<string, StepState>;
9
- busyMap: Record<string, boolean>;
10
- canFix: boolean;
11
- containersError: string | null;
12
- onFixContainer: (name: string, templateId: string) => void;
13
- }
14
- export declare function RequiredContainersList(props: RequiredContainersListProps): import("react/jsx-runtime").JSX.Element;
15
- export {};
@@ -1,14 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { Button } from "../../../../../components/ui/button";
3
- import { AlertCircle, CheckCircle, RefreshCw } from "lucide-react";
4
- export function RequiredContainersList(props) {
5
- const { requiredContainers, containerStates, busyMap, canFix, containersError, onFixContainer, } = props;
6
- return (_jsxs(_Fragment, { children: [_jsx("div", { className: "flex flex-col gap-2", children: requiredContainers
7
- .filter((rc) => containerStates[rc.name] === "error")
8
- .map((rc) => (_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsxs("div", { className: "flex items-center gap-2", children: [containerStates[rc.name] === "checking" ? (_jsx(RefreshCw, { strokeWidth: 1, className: "h-4 w-4 animate-spin text-amber-600" })) : containerStates[rc.name] === "success" ? (_jsx(CheckCircle, { strokeWidth: 1, className: "h-4 w-4 text-green-600" })) : (_jsx(AlertCircle, { strokeWidth: 1, className: "h-4 w-4 text-red-600" })), _jsx("span", { className: "text-sm text-gray-700", children: containerStates[rc.name] === "checking"
9
- ? `Checking ${rc.name}...`
10
- : containerStates[rc.name] === "success"
11
- ? `${rc.name} present`
12
- : `${rc.name} missing` })] }), containerStates[rc.name] !== "success" && (_jsxs(Button, { size: "sm", onClick: () => onFixContainer(rc.name, rc.templateId), disabled: !canFix || !!busyMap[rc.name], children: [busyMap[rc.name] ? (_jsx(RefreshCw, { strokeWidth: 1, className: "h-4 w-4 animate-spin" })) : (_jsx(CheckCircle, { strokeWidth: 1, className: "h-4 w-4" })), "Fix"] }))] }, rc.name))) }), containersError && (_jsx("div", { className: "mt-2 rounded border border-yellow-200 bg-yellow-50 p-2 text-xs whitespace-pre-wrap text-yellow-800", children: containersError }))] }));
13
- }
14
- //# sourceMappingURL=RequiredContainersList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RequiredContainersList.js","sourceRoot":"","sources":["../../../../../../src/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersList.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAiBnE,MAAM,UAAU,sBAAsB,CAAC,KAAkC;IACvE,MAAM,EACJ,kBAAkB,EAClB,eAAe,EACf,OAAO,EACP,MAAM,EACN,eAAe,EACf,cAAc,GACf,GAAG,KAAK,CAAC;IAEV,OAAO,CACL,8BACE,cAAK,SAAS,EAAC,qBAAqB,YACjC,kBAAkB;qBAChB,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC;qBACpD,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CACX,eAEE,SAAS,EAAC,yCAAyC,aAEnD,eAAK,SAAS,EAAC,yBAAyB,aACrC,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CACzC,KAAC,SAAS,IACR,WAAW,EAAE,CAAC,EACd,SAAS,EAAC,qCAAqC,GAC/C,CACH,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAC3C,KAAC,WAAW,IACV,WAAW,EAAE,CAAC,EACd,SAAS,EAAC,wBAAwB,GAClC,CACH,CAAC,CAAC,CAAC,CACF,KAAC,WAAW,IACV,WAAW,EAAE,CAAC,EACd,SAAS,EAAC,sBAAsB,GAChC,CACH,EACD,eAAM,SAAS,EAAC,uBAAuB,YACpC,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,UAAU;wCACtC,CAAC,CAAC,YAAY,EAAE,CAAC,IAAI,KAAK;wCAC1B,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,SAAS;4CACtC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,UAAU;4CACtB,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,UAAU,GACrB,IACH,EACL,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,SAAS,IAAI,CACzC,MAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,EACrD,QAAQ,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,aAEtC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAClB,KAAC,SAAS,IACR,WAAW,EAAE,CAAC,EACd,SAAS,EAAC,sBAAsB,GAChC,CACH,CAAC,CAAC,CAAC,CACF,KAAC,WAAW,IAAC,WAAW,EAAE,CAAC,EAAE,SAAS,EAAC,SAAS,GAAG,CACpD,WAEM,CACV,KA5CI,EAAE,CAAC,IAAI,CA6CR,CACP,CAAC,GACA,EACL,eAAe,IAAI,CAClB,cAAK,SAAS,EAAC,oGAAoG,YAChH,eAAe,GACZ,CACP,IACA,CACJ,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- export declare function RequiredContainersSection(): import("react/jsx-runtime").JSX.Element;
@@ -1,94 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import React from "react";
3
- import { useEditContext } from "../../../../client/editContext";
4
- import { getChildren } from "../../../../services/contentService";
5
- import { RequiredContainersList } from "./RequiredContainersList";
6
- import { findByName, resolvePathUnderContent } from "../utils";
7
- export function RequiredContainersSection() {
8
- const editContext = useEditContext();
9
- const userLang = editContext?.item?.language || "en";
10
- const requiredContainers = React.useMemo(() => [
11
- { name: "Ai Models", templateId: "e5f6a7b8-9c0d-1e2f-3a4b-5c6d7e8f9a0b" },
12
- {
13
- name: "Ai Providers",
14
- templateId: "4592f2e0-06e4-470e-9820-7fd4ea148e00",
15
- },
16
- {
17
- name: "Ai Profiles",
18
- templateId: "4298ab78-2aaa-4d5f-bb3a-0bd321b86063",
19
- },
20
- {
21
- name: "Content Schemas",
22
- templateId: "5214a52b-6c45-4671-97f2-703fe24e3d09",
23
- },
24
- { name: "Ai Quotas", templateId: "7a08ff28-70ed-459b-a7f2-db2a78d88f46" },
25
- {
26
- name: "AI Generators",
27
- templateId: "9430a3e9-7397-4598-9a55-2b263c927497",
28
- },
29
- { name: "AI Tools", templateId: "7e3f9d9d-8e84-4e57-b12e-6e9c99d4fd11" },
30
- ], []);
31
- const [parheliaSettingsItem, setParheliaSettingsItem] = React.useState(null);
32
- const [containersError, setContainersError] = React.useState(null);
33
- const [containerStates, setContainerStates] = React.useState({});
34
- const [busyMap, setBusyMap] = React.useState({});
35
- const checkRequiredContainers = React.useCallback(async () => {
36
- try {
37
- setContainersError(null);
38
- const initialStates = {};
39
- for (const rc of requiredContainers)
40
- initialStates[rc.name] = "checking";
41
- setContainerStates(initialStates);
42
- const settingsItem = await resolvePathUnderContent(editContext?.sessionId, userLang, ["Settings", "Parhelia"]);
43
- if (!settingsItem) {
44
- setParheliaSettingsItem(null);
45
- const errorMsg = "Parhelia settings item not found. Create it first.";
46
- setContainersError(errorMsg);
47
- const errorStates = {};
48
- for (const rc of requiredContainers)
49
- errorStates[rc.name] = "error";
50
- setContainerStates(errorStates);
51
- return;
52
- }
53
- setParheliaSettingsItem(settingsItem);
54
- const children = (await getChildren(settingsItem.id, editContext.sessionId, [], false, userLang, "path"));
55
- const states = {};
56
- for (const rc of requiredContainers) {
57
- const exists = !!findByName(children, rc.name);
58
- states[rc.name] = exists ? "success" : "error";
59
- }
60
- setContainerStates(states);
61
- }
62
- catch (e) {
63
- setContainersError(e?.message || "Failed to check AI containers");
64
- const errorStates = {};
65
- for (const rc of requiredContainers)
66
- errorStates[rc.name] = "error";
67
- setContainerStates(errorStates);
68
- }
69
- }, [editContext, requiredContainers, userLang]);
70
- React.useEffect(() => {
71
- checkRequiredContainers();
72
- }, [checkRequiredContainers]);
73
- const createContainer = React.useCallback(async (name, templateId) => {
74
- if (!parheliaSettingsItem || !editContext)
75
- return;
76
- try {
77
- setBusyMap((s) => ({ ...s, [name]: true }));
78
- setContainersError(null);
79
- const created = await editContext.operations.createItem(parheliaSettingsItem, templateId, name);
80
- if (!created)
81
- throw new Error(`Failed to create '${name}'`);
82
- setContainerStates((s) => ({ ...s, [name]: "success" }));
83
- }
84
- catch (e) {
85
- setContainersError(e?.message || `Failed to create '${name}'`);
86
- setContainerStates((s) => ({ ...s, [name]: "error" }));
87
- }
88
- finally {
89
- setBusyMap((s) => ({ ...s, [name]: false }));
90
- }
91
- }, [parheliaSettingsItem, editContext]);
92
- return (_jsx(RequiredContainersList, { requiredContainers: requiredContainers, containerStates: containerStates, busyMap: busyMap, canFix: !!parheliaSettingsItem, containersError: containersError, onFixContainer: createContainer }));
93
- }
94
- //# sourceMappingURL=RequiredContainersSection.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RequiredContainersSection.js","sourceRoot":"","sources":["../../../../../../src/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersSection.tsx"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export type StepState = "idle" | "checking" | "success" | "error";
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/editor/settings/setup-steps/AiSetupStep/types.ts"],"names":[],"mappings":""}
@@ -1,5 +0,0 @@
1
- import type { ItemTreeNodeData } from "../../../services/contentService";
2
- import type { ItemDescriptor } from "../../../pageModel";
3
- export declare function findByName(items: ItemTreeNodeData[], name: string): ItemTreeNodeData | undefined;
4
- export declare function resolvePathUnderContent(sessionId: string | undefined, userLang: string, names: string[]): Promise<ItemDescriptor | null>;
5
- export declare function resolvePathUnderSystem(sessionId: string | undefined, userLang: string, names: string[]): Promise<ItemDescriptor | null>;
@@ -1,44 +0,0 @@
1
- import { getChildren } from "../../../services/contentService";
2
- import { contentItemId } from "../../../../config/config";
3
- export function findByName(items, name) {
4
- const target = name.toLowerCase();
5
- return items.find((x) => (x.displayName || x.name || "").toLowerCase() ===
6
- target);
7
- }
8
- export async function resolvePathUnderContent(sessionId, userLang, names) {
9
- if (!sessionId)
10
- return null;
11
- let currentId = contentItemId;
12
- for (const segment of names) {
13
- const children = (await getChildren(currentId, sessionId, [], false, userLang, "path"));
14
- const next = findByName(children, segment);
15
- if (!next)
16
- return null;
17
- currentId = next.id;
18
- }
19
- return {
20
- id: currentId,
21
- language: userLang,
22
- version: 0,
23
- };
24
- }
25
- export async function resolvePathUnderSystem(sessionId, userLang, names) {
26
- if (!sessionId)
27
- return null;
28
- // Start from /sitecore/system
29
- const systemRootId = "/sitecore/system";
30
- let currentId = systemRootId;
31
- for (const segment of names) {
32
- const children = (await getChildren(currentId, sessionId, [], false, userLang, "path"));
33
- const next = findByName(children, segment);
34
- if (!next)
35
- return null;
36
- currentId = next.id;
37
- }
38
- return {
39
- id: currentId,
40
- language: userLang,
41
- version: 0,
42
- };
43
- }
44
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/editor/settings/setup-steps/AiSetupStep/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAG/D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,MAAM,UAAU,UAAU,CACxB,KAAyB,EACzB,IAAY;IAEZ,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAClC,OAAO,KAAK,CAAC,IAAI,CACf,CAAC,CAAC,EAAE,EAAE,CACH,CAAE,CAAC,CAAC,WAAsB,IAAI,CAAC,CAAC,IAAI,IAAI,EAAE,CAAY,CAAC,WAAW,EAAE;QACrE,MAAM,CACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,SAA6B,EAC7B,QAAgB,EAChB,KAAe;IAEf,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAC5B,IAAI,SAAS,GAAG,aAAa,CAAC;IAC9B,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,CAAC,MAAM,WAAW,CACjC,SAAS,EACT,SAAS,EACT,EAAE,EACF,KAAK,EACL,QAAQ,EACR,MAAM,CACP,CAAkC,CAAC;QACpC,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC;IACtB,CAAC;IACD,OAAO;QACL,EAAE,EAAE,SAAS;QACb,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,CAAC;KACO,CAAC;AACtB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,SAA6B,EAC7B,QAAgB,EAChB,KAAe;IAEf,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAC5B,8BAA8B;IAC9B,MAAM,YAAY,GAAG,kBAAkB,CAAC;IACxC,IAAI,SAAS,GAAG,YAAY,CAAC;IAC7B,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,CAAC,MAAM,WAAW,CACjC,SAAS,EACT,SAAS,EACT,EAAE,EACF,KAAK,EACL,QAAQ,EACR,MAAM,CACP,CAAkC,CAAC;QACpC,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC;IACtB,CAAC;IACD,OAAO;QACL,EAAE,EAAE,SAAS;QACb,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,CAAC;KACO,CAAC;AACtB,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function IndexSetupStep(): import("react/jsx-runtime").JSX.Element;
2
- export default IndexSetupStep;
@@ -1,36 +0,0 @@
1
- import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
- import { useCallback, useEffect, useState } from "react";
3
- import { Card } from "../../../components/ui/card";
4
- import { Button } from "../../../components/ui/button";
5
- import { Badge } from "../../../components/ui/badge";
6
- import { ExternalLink, Link2 } from "lucide-react";
7
- import { getCombinedIndexStatus } from "../../services/indexService";
8
- import { useEditContext } from "../../client/editContext";
9
- import { EmbeddingsModelSection } from "./AiSetupStep/EmbeddingsModelSection";
10
- export function IndexSetupStep() {
11
- const [indexCount, setIndexCount] = useState(null);
12
- const [indexLoading, setIndexLoading] = useState(false);
13
- const editContext = useEditContext();
14
- const goToIndexPanel = useCallback(() => {
15
- // Ensure URL reflects the target view and panel before switching views
16
- editContext?.updateUrl({ view: "settings", ccpanel: "search-index" });
17
- editContext?.switchWorkspace("settings");
18
- }, [editContext]);
19
- const loadIndex = useCallback(async () => {
20
- try {
21
- setIndexLoading(true);
22
- const data = await getCombinedIndexStatus();
23
- const count = data?.indexStatus?.numberOfIndexedItems ?? null;
24
- setIndexCount(typeof count === "number" ? count : null);
25
- }
26
- finally {
27
- setIndexLoading(false);
28
- }
29
- }, []);
30
- useEffect(() => {
31
- loadIndex();
32
- }, [loadIndex]);
33
- return (_jsxs(Card, { icon: _jsx(Link2, { strokeWidth: 1, className: "h-5 w-5" }), title: "Search index", description: "Shows number of indexed items and links to Index panel.", children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("div", { className: "flex items-center gap-2", children: _jsxs(Badge, { variant: "outline", children: ["Indexed Items:", " ", indexLoading ? "..." : (indexCount ?? 0).toLocaleString()] }) }), _jsxs(Button, { size: "sm", variant: "outline", onClick: goToIndexPanel, children: [_jsx(ExternalLink, { strokeWidth: 1, className: "h-4 w-4" }), "Open Index"] })] }), _jsx(EmbeddingsModelSection, {})] }));
34
- }
35
- export default IndexSetupStep;
36
- //# sourceMappingURL=IndexSetupStep.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IndexSetupStep.js","sourceRoot":"","sources":["../../../../src/editor/settings/setup-steps/IndexSetupStep.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAE9E,MAAM,UAAU,cAAc;IAC5B,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAClE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACtC,uEAAuE;QACvE,WAAW,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;QACtE,WAAW,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACvC,IAAI,CAAC;YACH,eAAe,CAAC,IAAI,CAAC,CAAC;YACtB,MAAM,IAAI,GAAG,MAAM,sBAAsB,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,IAAI,EAAE,WAAW,EAAE,oBAAoB,IAAI,IAAI,CAAC;YAC9D,aAAa,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;gBAAS,CAAC;YACT,eAAe,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,EAAE,CAAC;IACd,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,OAAO,CACL,MAAC,IAAI,IACH,IAAI,EAAE,KAAC,KAAK,IAAC,WAAW,EAAE,CAAC,EAAE,SAAS,EAAC,SAAS,GAAG,EACnD,KAAK,EAAC,cAAc,EACpB,WAAW,EAAC,yDAAyD,aAErE,eAAK,SAAS,EAAC,yCAAyC,aACtD,cAAK,SAAS,EAAC,yBAAyB,YACtC,MAAC,KAAK,IAAC,OAAO,EAAC,SAAS,+BACP,GAAG,EACjB,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,cAAc,EAAE,IACpD,GACJ,EACN,MAAC,MAAM,IAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAE,cAAc,aACzD,KAAC,YAAY,IAAC,WAAW,EAAE,CAAC,EAAE,SAAS,EAAC,SAAS,GAAG,kBAE7C,IACL,EACN,KAAC,sBAAsB,KAAG,IACrB,CACR,CAAC;AACJ,CAAC;AAED,eAAe,cAAc,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function SettingsSetupStep(): import("react/jsx-runtime").JSX.Element;
2
- export default SettingsSetupStep;