@alpaca-editor/core 1.0.4174 → 1.0.4177

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 (58) hide show
  1. package/dist/agents-view/AgentsView.js +0 -20
  2. package/dist/agents-view/AgentsView.js.map +1 -1
  3. package/dist/editor/QuickItemSwitcher.js +5 -1
  4. package/dist/editor/QuickItemSwitcher.js.map +1 -1
  5. package/dist/editor/ai/AgentTerminal.js +47 -83
  6. package/dist/editor/ai/AgentTerminal.js.map +1 -1
  7. package/dist/editor/ai/Agents.js +7 -5
  8. package/dist/editor/ai/Agents.js.map +1 -1
  9. package/dist/editor/ai/AiResponseMessage.js +1 -1
  10. package/dist/editor/ai/AiResponseMessage.js.map +1 -1
  11. package/dist/editor/ai/ContextInfoBar.js +30 -64
  12. package/dist/editor/ai/ContextInfoBar.js.map +1 -1
  13. package/dist/editor/ai/useAgentStatus.js +81 -2
  14. package/dist/editor/ai/useAgentStatus.js.map +1 -1
  15. package/dist/editor/client/EditorShell.js +44 -7
  16. package/dist/editor/client/EditorShell.js.map +1 -1
  17. package/dist/editor/client/operations.js +30 -3
  18. package/dist/editor/client/operations.js.map +1 -1
  19. package/dist/editor/control-center/WebSocketMessages.js +0 -1
  20. package/dist/editor/control-center/WebSocketMessages.js.map +1 -1
  21. package/dist/editor/page-viewer/PageViewerFrame.js +14 -3
  22. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  23. package/dist/editor/reviews/commentAi.js +43 -32
  24. package/dist/editor/reviews/commentAi.js.map +1 -1
  25. package/dist/editor/services/agentService.d.ts +8 -4
  26. package/dist/editor/services/agentService.js +30 -53
  27. package/dist/editor/services/agentService.js.map +1 -1
  28. package/dist/editor/services/aiService.d.ts +19 -1
  29. package/dist/editor/services/aiService.js +78 -2
  30. package/dist/editor/services/aiService.js.map +1 -1
  31. package/dist/page-wizard/steps/ContentStep.js +35 -57
  32. package/dist/page-wizard/steps/ContentStep.js.map +1 -1
  33. package/dist/page-wizard/steps/MetaDataStep.js +14 -23
  34. package/dist/page-wizard/steps/MetaDataStep.js.map +1 -1
  35. package/dist/page-wizard/steps/SelectStep.js +12 -42
  36. package/dist/page-wizard/steps/SelectStep.js.map +1 -1
  37. package/dist/revision.d.ts +2 -2
  38. package/dist/revision.js +2 -2
  39. package/dist/styles.css +0 -8
  40. package/package.json +1 -1
  41. package/src/agents-view/AgentsView.tsx +1 -21
  42. package/src/editor/QuickItemSwitcher.tsx +23 -19
  43. package/src/editor/ai/AgentTerminal.tsx +83 -142
  44. package/src/editor/ai/Agents.tsx +9 -6
  45. package/src/editor/ai/AiResponseMessage.tsx +5 -1
  46. package/src/editor/ai/ContextInfoBar.tsx +34 -75
  47. package/src/editor/ai/useAgentStatus.ts +82 -4
  48. package/src/editor/client/EditorShell.tsx +62 -9
  49. package/src/editor/client/operations.ts +42 -4
  50. package/src/editor/control-center/WebSocketMessages.tsx +5 -1
  51. package/src/editor/page-viewer/PageViewerFrame.tsx +15 -2
  52. package/src/editor/reviews/commentAi.ts +48 -36
  53. package/src/editor/services/agentService.ts +38 -55
  54. package/src/editor/services/aiService.ts +110 -3
  55. package/src/page-wizard/steps/ContentStep.tsx +51 -81
  56. package/src/page-wizard/steps/MetaDataStep.tsx +52 -60
  57. package/src/page-wizard/steps/SelectStep.tsx +13 -51
  58. package/src/revision.ts +2 -2
@@ -1,7 +1,7 @@
1
1
  import { useState, useEffect } from "react";
2
2
  import { WizardData } from "../PageWizard";
3
3
  import { useEditContext } from "../../editor/client/editContext";
4
- import { executePrompt } from "../../editor/services/aiService";
4
+ import { executePromptWithJsonResult } from "../../editor/services/aiService";
5
5
  import { createWizardAiContext } from "../service";
6
6
  import { cn } from "../../lib/utils";
7
7
  import { Textarea } from "../../components/ui/textarea";
@@ -123,15 +123,15 @@ export function SelectStep({
123
123
  2,
124
124
  )}`;
125
125
 
126
- // Call the executePrompt function with the prompt
126
+ // Call the executePromptWithJsonResult function with the prompt
127
127
  const abortController = new AbortController();
128
- const result = await executePrompt(
128
+ const options = await executePromptWithJsonResult<Option[]>(
129
129
  [
130
130
  {
131
131
  content: `You are a helpful assistant that generates options for a wizard select step.
132
132
 
133
133
  Return a JSON array of objects with the following structure:
134
- [{ "value": "option_value", "label": "Option Label", "description": "Brief description" }]
134
+ [{ "value": "option_value", "label": "Option Label", "description": "Brief description", id: "unique_id" }]
135
135
 
136
136
  Create ${step.fields.numberOfOptions || 5} relevant options.`,
137
137
  name: "system",
@@ -150,54 +150,16 @@ Create ${step.fields.numberOfOptions || 5} relevant options.`,
150
150
  { signal: abortController.signal },
151
151
  );
152
152
 
153
- // Parse the result and set options
154
- if (result && result.messages && result.messages.length > 0) {
155
- try {
156
- const lastMessage = result.messages[result.messages.length - 1];
157
- if (lastMessage && lastMessage.content) {
158
- const parsed: any = JSON.parse(lastMessage.content);
159
- const optionsArray: any[] = Array.isArray(parsed)
160
- ? parsed
161
- : Array.isArray(parsed?.options)
162
- ? parsed.options
163
- : [];
164
-
165
- if (!Array.isArray(optionsArray) || optionsArray.length === 0) {
166
- throw new Error("Parsed response did not contain any options");
167
- }
168
-
169
- const normalizedOptions: Option[] = optionsArray.map(
170
- (opt: any, index: number) => ({
171
- id: String(opt?.id ?? opt?.value ?? index),
172
- title: String(
173
- opt?.title ??
174
- opt?.label ??
175
- opt?.name ??
176
- `Option ${index + 1}`,
177
- ),
178
- description: String(
179
- opt?.description ?? opt?.details ?? opt?.summary ?? "",
180
- ),
181
- }),
182
- );
183
-
184
- setOptions(normalizedOptions);
185
- setInternalState((state: any) => ({
186
- ...state,
187
- [step.id + "options"]: normalizedOptions,
188
- }));
189
- }
190
- } catch (parseError) {
191
- console.error("Error parsing options:", parseError);
192
- setError(
193
- "Failed to parse options. The response was not in the expected format.",
194
- );
195
- }
196
- } else {
197
- setError("No options were generated. Please try again.");
198
- }
153
+ // Set the parsed options
154
+ setOptions(options);
155
+ setInternalState((state: any) => ({
156
+ ...state,
157
+ [step.id + "options"]: options,
158
+ }));
199
159
  } catch (err) {
200
- setError("Failed to generate options. Please try again.");
160
+ const errorMessage =
161
+ err instanceof Error ? err.message : "Failed to generate options.";
162
+ setError(errorMessage);
201
163
  console.error("Error generating options:", err);
202
164
  } finally {
203
165
  setLoading(false);
package/src/revision.ts CHANGED
@@ -1,2 +1,2 @@
1
- export const version = "1.0.4174";
2
- export const buildDate = "2025-10-21 01:59:37";
1
+ export const version = "1.0.4177";
2
+ export const buildDate = "2025-10-21 14:56:45";