@parhelia/core 0.1.12390 → 0.1.12393

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 (40) hide show
  1. package/dist/editor/Editor.js +32 -17
  2. package/dist/editor/Editor.js.map +1 -1
  3. package/dist/editor/SetupWizard.js +20 -2
  4. package/dist/editor/SetupWizard.js.map +1 -1
  5. package/dist/editor/ai/AgentTerminal.js +14 -3
  6. package/dist/editor/ai/AgentTerminal.js.map +1 -1
  7. package/dist/editor/page-editor-chrome/useInlineAICompletion.js +283 -298
  8. package/dist/editor/page-editor-chrome/useInlineAICompletion.js.map +1 -1
  9. package/dist/editor/services/templateBuilderService.d.ts +7 -0
  10. package/dist/editor/services/templateBuilderService.js +7 -1
  11. package/dist/editor/services/templateBuilderService.js.map +1 -1
  12. package/dist/editor/settings/About.js +25 -19
  13. package/dist/editor/settings/About.js.map +1 -1
  14. package/dist/editor/setup-wizard/steps/CompleteStep.d.ts +2 -1
  15. package/dist/editor/setup-wizard/steps/CompleteStep.js +2 -1
  16. package/dist/editor/setup-wizard/steps/CompleteStep.js.map +1 -1
  17. package/dist/editor/setup-wizard/steps/LicenseActivationStep.d.ts +9 -0
  18. package/dist/editor/setup-wizard/steps/LicenseActivationStep.js +160 -0
  19. package/dist/editor/setup-wizard/steps/LicenseActivationStep.js.map +1 -0
  20. package/dist/editor/setup-wizard/steps/LicenseEmailStep.d.ts +10 -0
  21. package/dist/editor/setup-wizard/steps/LicenseEmailStep.js +101 -0
  22. package/dist/editor/setup-wizard/steps/LicenseEmailStep.js.map +1 -0
  23. package/dist/editor/template-wizard/TemplateStructureInlineEditor.js +422 -65
  24. package/dist/editor/template-wizard/TemplateStructureInlineEditor.js.map +1 -1
  25. package/dist/licensing/EmailEntry.js +1 -1
  26. package/dist/licensing/EmailEntry.js.map +1 -1
  27. package/dist/licensing/LicenseActivationForm.js +1 -1
  28. package/dist/licensing/LicenseActivationForm.js.map +1 -1
  29. package/dist/licensing/LicenseCodeEntry.js +2 -2
  30. package/dist/licensing/LicenseCodeEntry.js.map +1 -1
  31. package/dist/licensing/LicenseContext.js +18 -9
  32. package/dist/licensing/LicenseContext.js.map +1 -1
  33. package/dist/licensing/LicenseOverlay.js +2 -1
  34. package/dist/licensing/LicenseOverlay.js.map +1 -1
  35. package/dist/licensing/licenseService.d.ts +10 -0
  36. package/dist/licensing/licenseService.js +28 -0
  37. package/dist/licensing/licenseService.js.map +1 -1
  38. package/dist/revision.d.ts +2 -2
  39. package/dist/revision.js +2 -2
  40. package/package.json +1 -1
@@ -6,7 +6,7 @@ import { getUserInfo } from "./services/editService";
6
6
  import { getSystemStatus, getEditorSettings, saveUserPreferences, } from "./services/systemService";
7
7
  import uuid from "react-uuid";
8
8
  import { getConfiguration } from "../config/config";
9
- import { useEditContext } from "./client/editContext";
9
+ import { useMediaQuery } from "./client/hooks/useMediaQuery";
10
10
  import { MigrationsView } from "./MigrationsView";
11
11
  import { SetupWizard } from "./SetupWizard";
12
12
  import { AdminRequiredView } from "./AdminRequiredView";
@@ -17,7 +17,8 @@ export function Editor({ configure, className, page, children, }) {
17
17
  const [systemStatus, setSystemStatus] = useState();
18
18
  const [parheliaSettings, setParheliaSettings] = useState();
19
19
  const [hasLicenseError, setHasLicenseError] = useState(false);
20
- const editContext = useEditContext();
20
+ // Same breakpoint as EditorShell — EditContext is not available here (provider is inside Shell)
21
+ const isMobile = useMediaQuery("(max-width: 767px)");
21
22
  const hasInitializedRef = useRef(false);
22
23
  const [sessionId] = useState(() => {
23
24
  if (typeof window === "undefined") {
@@ -93,7 +94,7 @@ export function Editor({ configure, className, page, children, }) {
93
94
  if (hasMigrationIssue || settingsMissing)
94
95
  return;
95
96
  const config = configure({
96
- configuration: getConfiguration(editContext?.isMobile ?? false),
97
+ configuration: getConfiguration(isMobile),
97
98
  userInfo: userInfo,
98
99
  });
99
100
  setConfig(config);
@@ -103,26 +104,40 @@ export function Editor({ configure, className, page, children, }) {
103
104
  configure,
104
105
  hasMigrationIssue,
105
106
  settingsMissing,
106
- editContext?.isMobile,
107
+ isMobile,
107
108
  ]);
108
- // If there's a license error, render LicenseProvider to show the activation dialog
109
- if (hasLicenseError && !userInfo) {
110
- return (_jsx(LicenseProvider, { children: _jsx(LicenseOverlay, {}) }));
111
- }
112
- if (!userInfo || !systemStatus)
113
- return null;
114
- // Show migrations view for database/migration issues
115
- if (hasMigrationIssue) {
116
- return (_jsx(MigrationsView, { isAdmin: userInfo.user.isAdministrator ?? false, onMigrationsComplete: handleRefreshStatus }));
117
- }
118
- // Show setup wizard if settings are missing
109
+ // Show setup wizard if settings are missing (includes integrated license activation)
110
+ // This takes priority over license overlay because setup includes license steps
119
111
  if (settingsMissing) {
120
- if (userInfo.user.isAdministrator) {
112
+ if (userInfo?.user.isAdministrator) {
121
113
  return (_jsx(SetupWizard, { onComplete: handleRefreshStatus, settingsExist: systemStatus.settingsExist }));
122
114
  }
123
- else {
115
+ else if (userInfo) {
124
116
  return _jsx(AdminRequiredView, {});
125
117
  }
118
+ // Safety fallback: if user info failed due license checks during setup,
119
+ // still show setup wizard (license steps are integrated there).
120
+ if (hasLicenseError) {
121
+ return (_jsx(SetupWizard, { onComplete: handleRefreshStatus, settingsExist: systemStatus.settingsExist }));
122
+ }
123
+ // If setup is needed but user info is still loading, wait.
124
+ return null;
125
+ }
126
+ // When setup is complete, /parhelia/userinfo can fail with a license-only error (no
127
+ // UserInfo payload). `hasLicenseError` is set but `userInfo` stays unset — still show
128
+ // the activation overlay so we never render a blank shell forever.
129
+ if ((!userInfo && !hasLicenseError) || !systemStatus)
130
+ return null;
131
+ // License-only userinfo failure: no UserInfo to render shell; show activation UI first.
132
+ // (Must run before MigrationsView, which requires `userInfo`.)
133
+ if (hasLicenseError) {
134
+ return (_jsx(LicenseProvider, { children: _jsx(LicenseOverlay, {}) }));
135
+ }
136
+ // Narrowing: after `hasLicenseError` is false, line 181 implies `userInfo` is set.
137
+ if (!userInfo)
138
+ return null;
139
+ if (hasMigrationIssue) {
140
+ return (_jsx(MigrationsView, { isAdmin: userInfo.user.isAdministrator ?? false, onMigrationsComplete: handleRefreshStatus }));
126
141
  }
127
142
  if (!config)
128
143
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"Editor.js","sourceRoot":"","sources":["../../src/editor/Editor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Editor.js","sourceRoot":"","sources":["../../src/editor/Editor.tsx"],"names":[],"mappings":"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"}
@@ -2,11 +2,16 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState } from "react";
3
3
  import { WelcomeStep } from "./setup-wizard/steps/WelcomeStep";
4
4
  import { CreateSettingsStep } from "./setup-wizard/steps/CreateSettingsStep";
5
+ import { LicenseEmailStep, } from "./setup-wizard/steps/LicenseEmailStep";
6
+ import { LicenseActivationStep } from "./setup-wizard/steps/LicenseActivationStep";
5
7
  import { ProviderStep } from "./setup-wizard/steps/ProviderStep";
6
8
  import { ModelSelectionStep } from "./setup-wizard/steps/ModelSelectionStep";
7
9
  import { CompleteStep } from "./setup-wizard/steps/CompleteStep";
8
10
  export function SetupWizard({ onComplete, settingsExist }) {
9
11
  const [currentStep, setCurrentStep] = useState("welcome");
12
+ const [licenseEmail, setLicenseEmail] = useState("");
13
+ const [licenseMode, setLicenseMode] = useState("trial_form");
14
+ const [licenseConfigured, setLicenseConfigured] = useState(false);
10
15
  const [providerId, setProviderId] = useState();
11
16
  const [chatModelId, setChatModelId] = useState();
12
17
  const [imageModelId, setImageModelId] = useState();
@@ -14,6 +19,8 @@ export function SetupWizard({ onComplete, settingsExist }) {
14
19
  const steps = [
15
20
  "welcome",
16
21
  ...(settingsExist ? [] : ["create-settings"]),
22
+ "license-email",
23
+ "license-activation",
17
24
  "provider",
18
25
  "chat-model",
19
26
  "image-model",
@@ -40,7 +47,18 @@ export function SetupWizard({ onComplete, settingsExist }) {
40
47
  }
41
48
  } });
42
49
  case "create-settings":
43
- return _jsx(CreateSettingsStep, { onNext: () => setCurrentStep("provider"), onBack: handleBack });
50
+ return (_jsx(CreateSettingsStep, { onNext: () => setCurrentStep("license-email"), onBack: handleBack }));
51
+ case "license-email":
52
+ return (_jsx(LicenseEmailStep, { onNext: ({ email, mode }) => {
53
+ setLicenseEmail(email);
54
+ setLicenseMode(mode);
55
+ setCurrentStep("license-activation");
56
+ }, onBack: handleBack }));
57
+ case "license-activation":
58
+ return (_jsx(LicenseActivationStep, { email: licenseEmail, mode: licenseMode, onBack: handleBack, onActivated: () => {
59
+ setLicenseConfigured(true);
60
+ setCurrentStep("provider");
61
+ } }));
44
62
  case "provider":
45
63
  return (_jsx(ProviderStep, { onNext: (id) => {
46
64
  setProviderId(id);
@@ -62,7 +80,7 @@ export function SetupWizard({ onComplete, settingsExist }) {
62
80
  setCurrentStep("complete");
63
81
  }, onSkip: () => setCurrentStep("complete"), onBack: handleBack }));
64
82
  case "complete":
65
- return (_jsx(CompleteStep, { chatModelId: chatModelId, imageModelId: imageModelId, embeddingsModelId: embeddingsModelId, onFinish: onComplete, onBack: handleBack }));
83
+ return (_jsx(CompleteStep, { licenseConfigured: licenseConfigured, chatModelId: chatModelId, imageModelId: imageModelId, embeddingsModelId: embeddingsModelId, onFinish: onComplete, onBack: handleBack }));
66
84
  }
67
85
  };
68
86
  const getStepProgress = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"SetupWizard.js","sourceRoot":"","sources":["../../src/editor/SetupWizard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SetupWizard.js","sourceRoot":"","sources":["../../src/editor/SetupWizard.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAEL,gBAAgB,GACjB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAkBjE,MAAM,UAAU,WAAW,CAAC,EAAE,UAAU,EAAE,aAAa,EAAoB;IACzE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAa,SAAS,CAAC,CAAC;IACtE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAwB,YAAY,CAAC,CAAC;IACpF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,EAAU,CAAC;IACvD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,EAAU,CAAC;IACzD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,EAAU,CAAC;IAC3D,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,EAAU,CAAC;IAErE,MAAM,KAAK,GAAiB;QAC1B,SAAS;QACT,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,iBAA0B,CAAC,CAAC;QACtD,eAAe;QACf,oBAAoB;QACpB,UAAU;QACV,YAAY;QACZ,aAAa;QACb,kBAAkB;QAClB,UAAU;KACX,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;YACzC,IAAI,QAAQ,EAAE,CAAC;gBACb,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,QAAQ,WAAW,EAAE,CAAC;YACpB,KAAK,SAAS;gBACZ,OAAO,KAAC,WAAW,IAAC,MAAM,EAAE,GAAG,EAAE;wBAC/B,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;wBAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;wBACzC,IAAI,QAAQ,EAAE,CAAC;4BACb,cAAc,CAAC,QAAQ,CAAC,CAAC;wBAC3B,CAAC;oBACH,CAAC,GAAI,CAAC;YAER,KAAK,iBAAiB;gBACpB,OAAO,CACL,KAAC,kBAAkB,IACjB,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,EAC7C,MAAM,EAAE,UAAU,GAClB,CACH,CAAC;YAEJ,KAAK,eAAe;gBAClB,OAAO,CACL,KAAC,gBAAgB,IACf,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;wBAC1B,eAAe,CAAC,KAAK,CAAC,CAAC;wBACvB,cAAc,CAAC,IAAI,CAAC,CAAC;wBACrB,cAAc,CAAC,oBAAoB,CAAC,CAAC;oBACvC,CAAC,EACD,MAAM,EAAE,UAAU,GAClB,CACH,CAAC;YAEJ,KAAK,oBAAoB;gBACvB,OAAO,CACL,KAAC,qBAAqB,IACpB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,UAAU,EAClB,WAAW,EAAE,GAAG,EAAE;wBAChB,oBAAoB,CAAC,IAAI,CAAC,CAAC;wBAC3B,cAAc,CAAC,UAAU,CAAC,CAAC;oBAC7B,CAAC,GACD,CACH,CAAC;YAEJ,KAAK,UAAU;gBACb,OAAO,CACL,KAAC,YAAY,IACX,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;wBACb,aAAa,CAAC,EAAE,CAAC,CAAC;wBAClB,cAAc,CAAC,YAAY,CAAC,CAAC;oBAC/B,CAAC,EACD,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,YAAY,CAAC,EAC1C,MAAM,EAAE,UAAU,GAClB,CACH,CAAC;YAEJ,KAAK,YAAY;gBACf,OAAO,CACL,KAAC,kBAAkB,IACjB,QAAQ,EAAC,MAAM,EACf,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;wBACb,cAAc,CAAC,EAAE,CAAC,CAAC;wBACnB,cAAc,CAAC,aAAa,CAAC,CAAC;oBAChC,CAAC,EACD,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,EAC3C,MAAM,EAAE,UAAU,GAClB,CACH,CAAC;YAEJ,KAAK,aAAa;gBAChB,OAAO,CACL,KAAC,kBAAkB,IACjB,QAAQ,EAAC,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;wBACb,eAAe,CAAC,EAAE,CAAC,CAAC;wBACpB,cAAc,CAAC,kBAAkB,CAAC,CAAC;oBACrC,CAAC,EACD,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAChD,MAAM,EAAE,UAAU,GAClB,CACH,CAAC;YAEJ,KAAK,kBAAkB;gBACrB,OAAO,CACL,KAAC,kBAAkB,IACjB,QAAQ,EAAC,YAAY,EACrB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;wBACb,oBAAoB,CAAC,EAAE,CAAC,CAAC;wBACzB,cAAc,CAAC,UAAU,CAAC,CAAC;oBAC7B,CAAC,EACD,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,EACxC,MAAM,EAAE,UAAU,GAClB,CACH,CAAC;YAEJ,KAAK,UAAU;gBACb,OAAO,CACL,KAAC,YAAY,IACX,iBAAiB,EAAE,iBAAiB,EACpC,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,UAAU,GAClB,CACH,CAAC;QACN,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACzC,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;IAC5C,CAAC,CAAC;IAEF,OAAO,CACL,cAAK,SAAS,EAAC,yFAAyF,YACtG,eAAK,SAAS,EAAC,kBAAkB,aAC/B,eAAK,SAAS,EAAC,6DAA6D,aAE1E,cAAK,SAAS,EAAC,wBAAwB,YACrC,cACE,SAAS,EAAC,yDAAyD,EACnE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,eAAe,EAAE,GAAG,EAAE,GACzC,GACE,EAEN,cAAK,SAAS,EAAC,sCAAsC,YAClD,UAAU,EAAE,IAD4C,WAAW,CAEhE,IACF,EAGN,cAAK,SAAS,EAAC,gCAAgC,YAC5C,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CACxB,cAEE,SAAS,EAAE,kDACT,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,mBAC7C,EAAE,IAHG,IAAI,CAIT,CACH,CAAC,GACE,IACF,GACF,CACP,CAAC;AACJ,CAAC"}
@@ -3529,9 +3529,20 @@ export function AgentTerminal({ agentStub, initialMetadata, profiles, isActive =
3529
3529
  ? (profiles.find((p) => p.id?.toLowerCase() === normalizedProfileId) ??
3530
3530
  profiles[0])
3531
3531
  : profiles[0];
3532
- if (candidate && (!activeProfile || activeProfile.id !== candidate.id)) {
3533
- setActiveProfile(candidate);
3534
- }
3532
+ if (!candidate)
3533
+ return;
3534
+ // Keep active profile in sync whenever the matching entry in `profiles` changes —
3535
+ // not only when the profile id changes. Otherwise allowedSkills (and similar fields)
3536
+ // that are merged in the parent after async loads never update (e.g. Template Builder
3537
+ // settings skills merged into the profile).
3538
+ setActiveProfile((prev) => {
3539
+ if (!prev || prev.id !== candidate.id)
3540
+ return candidate;
3541
+ const skillKey = (p) => JSON.stringify((p.allowedSkills ?? []).map((s) => [String(s?.id ?? ""), String(s?.name ?? "")]));
3542
+ if (skillKey(prev) === skillKey(candidate))
3543
+ return prev;
3544
+ return candidate;
3545
+ });
3535
3546
  }, [profiles, agent?.profileId, agentStub.profileId]);
3536
3547
  // Clear queued prompts when agent changes or is new;
3537
3548
  // initial fetch is handled by loadAgent() for better performance and reliability