@vybestack/llxprt-code 0.8.0-nightly.260112.d9cf7fbc6 → 0.8.0-nightly.260113.cd34be5f1

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 (74) hide show
  1. package/dist/package.json +3 -3
  2. package/dist/src/generated/git-commit.d.ts +1 -1
  3. package/dist/src/generated/git-commit.js +1 -1
  4. package/dist/src/runtime/runtimeSettings.d.ts +1 -0
  5. package/dist/src/runtime/runtimeSettings.js +4 -0
  6. package/dist/src/runtime/runtimeSettings.js.map +1 -1
  7. package/dist/src/ui/AppContainer.js +49 -0
  8. package/dist/src/ui/AppContainer.js.map +1 -1
  9. package/dist/src/ui/commands/profileCommand.js +111 -9
  10. package/dist/src/ui/commands/profileCommand.js.map +1 -1
  11. package/dist/src/ui/commands/profileCommand.test.js +3 -6
  12. package/dist/src/ui/commands/profileCommand.test.js.map +1 -1
  13. package/dist/src/ui/commands/types.d.ts +12 -2
  14. package/dist/src/ui/commands/types.js.map +1 -1
  15. package/dist/src/ui/components/DialogManager.js +12 -0
  16. package/dist/src/ui/components/DialogManager.js.map +1 -1
  17. package/dist/src/ui/components/ProfileDetailDialog.d.ts +22 -0
  18. package/dist/src/ui/components/ProfileDetailDialog.js +113 -0
  19. package/dist/src/ui/components/ProfileDetailDialog.js.map +1 -0
  20. package/dist/src/ui/components/ProfileInlineEditor.d.ts +16 -0
  21. package/dist/src/ui/components/ProfileInlineEditor.js +216 -0
  22. package/dist/src/ui/components/ProfileInlineEditor.js.map +1 -0
  23. package/dist/src/ui/components/ProfileListDialog.d.ts +26 -0
  24. package/dist/src/ui/components/ProfileListDialog.js +172 -0
  25. package/dist/src/ui/components/ProfileListDialog.js.map +1 -0
  26. package/dist/src/ui/components/ProviderDialog.js +1 -1
  27. package/dist/src/ui/components/ProviderDialog.js.map +1 -1
  28. package/dist/src/ui/components/ProviderModelDialog.js +1 -1
  29. package/dist/src/ui/components/ProviderModelDialog.js.map +1 -1
  30. package/dist/src/ui/components/messages/GeminiMessage.test.js +74 -31
  31. package/dist/src/ui/components/messages/GeminiMessage.test.js.map +1 -1
  32. package/dist/src/ui/components/messages/ToolMessage.test.js +13 -37
  33. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
  34. package/dist/src/ui/contexts/RuntimeContext.d.ts +2 -1
  35. package/dist/src/ui/contexts/RuntimeContext.js +2 -1
  36. package/dist/src/ui/contexts/RuntimeContext.js.map +1 -1
  37. package/dist/src/ui/contexts/UIActionsContext.d.ts +10 -0
  38. package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
  39. package/dist/src/ui/contexts/UIStateContext.d.ts +17 -0
  40. package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
  41. package/dist/src/ui/hooks/atCommandProcessor.js +25 -1
  42. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  43. package/dist/src/ui/hooks/atCommandProcessor.test.js +127 -91
  44. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
  45. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +3 -0
  46. package/dist/src/ui/hooks/slashCommandProcessor.js +28 -0
  47. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  48. package/dist/src/ui/hooks/useEditorSettings.test.js +3 -0
  49. package/dist/src/ui/hooks/useEditorSettings.test.js.map +1 -1
  50. package/dist/src/ui/hooks/useFolderTrust.js +1 -1
  51. package/dist/src/ui/hooks/useFolderTrust.js.map +1 -1
  52. package/dist/src/ui/hooks/useProfileManagement.d.ts +40 -0
  53. package/dist/src/ui/hooks/useProfileManagement.js +350 -0
  54. package/dist/src/ui/hooks/useProfileManagement.js.map +1 -0
  55. package/dist/src/ui/hooks/useReactToolScheduler.js +103 -33
  56. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  57. package/dist/src/ui/hooks/useSessionRestore.test.js +103 -0
  58. package/dist/src/ui/hooks/useSessionRestore.test.js.map +1 -0
  59. package/dist/src/ui/hooks/useSlashCompletion.test.js +1 -1
  60. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -1
  61. package/dist/src/ui/hooks/useToolScheduler.test.js +322 -220
  62. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  63. package/dist/src/ui/layouts/DefaultAppLayout.js +3 -0
  64. package/dist/src/ui/layouts/DefaultAppLayout.js.map +1 -1
  65. package/dist/src/ui/reducers/appReducer.d.ts +5 -2
  66. package/dist/src/ui/reducers/appReducer.js +3 -0
  67. package/dist/src/ui/reducers/appReducer.js.map +1 -1
  68. package/dist/src/ui/reducers/appReducer.test.js +6 -0
  69. package/dist/src/ui/reducers/appReducer.test.js.map +1 -1
  70. package/dist/tsconfig.build.tsbuildinfo +1 -1
  71. package/package.json +3 -3
  72. package/dist/src/ui/components/messages/ToolMessageRawMarkdown.test.js +0 -30
  73. package/dist/src/ui/components/messages/ToolMessageRawMarkdown.test.js.map +0 -1
  74. /package/dist/src/ui/{components/messages/ToolMessageRawMarkdown.test.d.ts → hooks/useSessionRestore.test.d.ts} +0 -0
@@ -22,6 +22,9 @@ import { ProviderDialog } from './ProviderDialog.js';
22
22
  import { ProviderModelDialog } from './ProviderModelDialog.js';
23
23
  import { LoadProfileDialog } from './LoadProfileDialog.js';
24
24
  import { ProfileCreateWizard } from './ProfileCreateWizard/index.js';
25
+ import { ProfileListDialog } from './ProfileListDialog.js';
26
+ import { ProfileDetailDialog } from './ProfileDetailDialog.js';
27
+ import { ProfileInlineEditor } from './ProfileInlineEditor.js';
25
28
  import { ToolsDialog } from './ToolsDialog.js';
26
29
  import { PrivacyNotice } from '../privacy/PrivacyNotice.js';
27
30
  import { WorkspaceMigrationDialog } from './WorkspaceMigrationDialog.js';
@@ -124,6 +127,15 @@ export const DialogManager = ({ addItem, terminalWidth, config, settings, }) =>
124
127
  if (uiState.isCreateProfileDialogOpen) {
125
128
  return (_jsx(Box, { flexDirection: "column", children: _jsx(ProfileCreateWizard, { onClose: uiActions.exitCreateProfileDialog, onLoadProfile: uiActions.handleProfileSelect, availableProviders: uiState.providerOptions }) }));
126
129
  }
130
+ if (uiState.isProfileListDialogOpen) {
131
+ return (_jsx(Box, { flexDirection: "column", children: _jsx(ProfileListDialog, { profiles: uiState.profileListItems, onSelect: uiActions.loadProfileFromDetail, onClose: uiActions.closeProfileListDialog, onViewDetail: uiActions.viewProfileDetail, isLoading: uiState.profileDialogLoading, defaultProfileName: uiState.defaultProfileName ?? undefined, activeProfileName: uiState.activeProfileName ?? undefined }) }));
132
+ }
133
+ if (uiState.isProfileDetailDialogOpen) {
134
+ return (_jsx(Box, { flexDirection: "column", children: _jsx(ProfileDetailDialog, { profileName: uiState.selectedProfileName ?? '', profile: uiState.selectedProfileData, onClose: uiActions.closeProfileDetailDialog, onLoad: uiActions.loadProfileFromDetail, onDelete: uiActions.deleteProfileFromDetail, onSetDefault: uiActions.setProfileAsDefault, onEdit: uiActions.openProfileEditor, isLoading: uiState.profileDialogLoading, isDefault: uiState.selectedProfileName === uiState.defaultProfileName, isActive: uiState.selectedProfileName === uiState.activeProfileName, error: uiState.profileDialogError ?? undefined }) }));
135
+ }
136
+ if (uiState.isProfileEditorDialogOpen && uiState.selectedProfileData) {
137
+ return (_jsx(Box, { flexDirection: "column", children: _jsx(ProfileInlineEditor, { profileName: uiState.selectedProfileName ?? '', profile: uiState.selectedProfileData, onSave: uiActions.saveProfileFromEditor, onCancel: uiActions.closeProfileEditor, error: uiState.profileDialogError ?? undefined }) }));
138
+ }
127
139
  if (uiState.isToolsDialogOpen) {
128
140
  return (_jsx(Box, { flexDirection: "column", children: _jsx(ToolsDialog, { tools: uiState.toolsDialogTools, action: uiState.toolsDialogAction, disabledTools: uiState.toolsDialogDisabledTools, onSelect: uiActions.handleToolsSelect, onClose: uiActions.exitToolsDialog }) }));
129
141
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DialogManager.js","sourceRoot":"","sources":["../../../../src/ui/components/DialogManager.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DialogManager.js","sourceRoot":"","sources":["../../../../src/ui/components/DialogManager.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import React from 'react';
7
+ import type { Profile } from '@vybestack/llxprt-code-core';
8
+ interface ProfileDetailDialogProps {
9
+ profileName: string;
10
+ profile: Profile | null;
11
+ onClose: () => void;
12
+ onLoad: (profileName: string) => void;
13
+ onDelete: (profileName: string) => void;
14
+ onSetDefault: (profileName: string) => void;
15
+ onEdit: (profileName: string) => void;
16
+ isLoading?: boolean;
17
+ isDefault?: boolean;
18
+ isActive?: boolean;
19
+ error?: string;
20
+ }
21
+ export declare const ProfileDetailDialog: React.FC<ProfileDetailDialogProps>;
22
+ export {};
@@ -0,0 +1,113 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * @license
4
+ * Copyright 2025 Vybestack LLC
5
+ * SPDX-License-Identifier: Apache-2.0
6
+ */
7
+ import { useState } from 'react';
8
+ import { Box, Text } from 'ink';
9
+ import { SemanticColors } from '../colors.js';
10
+ import { useResponsive } from '../hooks/useResponsive.js';
11
+ import { useKeypress } from '../hooks/useKeypress.js';
12
+ /**
13
+ * Allowlist of ephemeralSettings keys that are safe to display.
14
+ * Any key NOT in this set will be hidden to prevent accidental secret leakage.
15
+ */
16
+ const SAFE_EPHEMERAL_KEYS = new Set([
17
+ 'baseurl',
18
+ 'endpoint',
19
+ 'url',
20
+ 'timeout',
21
+ 'maxretries',
22
+ 'retries',
23
+ 'region',
24
+ 'debug',
25
+ 'loglevel',
26
+ 'version',
27
+ 'apiversion',
28
+ 'organization',
29
+ 'orgid',
30
+ 'project',
31
+ 'projectid',
32
+ 'maxtokens',
33
+ 'temperature',
34
+ 'topp',
35
+ 'topk',
36
+ 'stream',
37
+ 'safetysettings',
38
+ ]);
39
+ // Type guard for load balancer profile
40
+ function isLoadBalancerProfile(profile) {
41
+ const p = profile;
42
+ return (profile.type === 'loadbalancer' &&
43
+ Array.isArray(p.profiles) &&
44
+ typeof p.policy === 'string');
45
+ }
46
+ export const ProfileDetailDialog = ({ profileName, profile, onClose, onLoad, onDelete, onSetDefault, onEdit, isLoading = false, isDefault = false, isActive = false, error, }) => {
47
+ const { isNarrow, width } = useResponsive();
48
+ const [confirmDelete, setConfirmDelete] = useState(false);
49
+ useKeypress((key) => {
50
+ if (key.name === 'escape') {
51
+ if (confirmDelete) {
52
+ setConfirmDelete(false);
53
+ }
54
+ else {
55
+ return onClose();
56
+ }
57
+ }
58
+ // On error / missing profile screens, only Esc should do anything.
59
+ if (error || !profile) {
60
+ return;
61
+ }
62
+ if (confirmDelete) {
63
+ if (key.sequence === 'y' || key.sequence === 'Y') {
64
+ onDelete(profileName);
65
+ }
66
+ else if (key.sequence === 'n' || key.sequence === 'N') {
67
+ setConfirmDelete(false);
68
+ }
69
+ return;
70
+ }
71
+ // Quick actions
72
+ if (key.sequence === 'l') {
73
+ return onLoad(profileName);
74
+ }
75
+ if (key.sequence === 'e') {
76
+ return onEdit(profileName);
77
+ }
78
+ if (key.sequence === 'd') {
79
+ setConfirmDelete(true);
80
+ }
81
+ if (key.sequence === 's') {
82
+ return onSetDefault(profileName);
83
+ }
84
+ }, { isActive: !isLoading });
85
+ if (isLoading) {
86
+ return (_jsx(Box, { borderStyle: "round", borderColor: SemanticColors.border.default, flexDirection: "column", padding: 1, children: _jsx(Text, { color: SemanticColors.text.primary, children: "Loading profile..." }) }));
87
+ }
88
+ if (error) {
89
+ return (_jsxs(Box, { borderStyle: "round", borderColor: SemanticColors.status.error, flexDirection: "column", padding: 1, children: [_jsx(Text, { bold: true, color: SemanticColors.status.error, children: "Error Loading Profile" }), _jsx(Text, { color: SemanticColors.text.secondary, children: error }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: SemanticColors.text.secondary, children: "Press Esc to go back" }) })] }));
90
+ }
91
+ if (!profile) {
92
+ return (_jsxs(Box, { borderStyle: "round", borderColor: SemanticColors.border.default, flexDirection: "column", padding: 1, children: [_jsxs(Text, { color: SemanticColors.text.secondary, children: ["Profile not found: ", profileName] }), _jsx(Text, { color: SemanticColors.text.secondary, children: "Press Esc to go back" })] }));
93
+ }
94
+ // Render JSON config in a readable format
95
+ const renderConfig = () => {
96
+ if (isLoadBalancerProfile(profile)) {
97
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { color: SemanticColors.text.secondary, children: "Type: " }), _jsx(Text, { color: SemanticColors.text.accent, children: "Load Balancer" })] }), _jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { color: SemanticColors.text.secondary, children: "Policy: " }), _jsx(Text, { color: SemanticColors.text.primary, children: profile.policy })] }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { color: SemanticColors.text.secondary, children: "Member Profiles:" }), profile.profiles.map((p) => (_jsxs(Text, { color: SemanticColors.text.primary, children: [' ', "- ", p] }, p)))] })] }));
98
+ }
99
+ // Standard profile
100
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { color: SemanticColors.text.secondary, children: "Type: " }), _jsx(Text, { color: SemanticColors.text.primary, children: "Standard" })] }), _jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { color: SemanticColors.text.secondary, children: "Provider: " }), _jsx(Text, { color: SemanticColors.text.accent, children: profile.provider })] }), _jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { color: SemanticColors.text.secondary, children: "Model: " }), _jsx(Text, { color: SemanticColors.text.primary, children: profile.model })] }), profile.modelParams && Object.keys(profile.modelParams).length > 0 && (_jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { color: SemanticColors.text.secondary, children: "Model Parameters:" }), Object.entries(profile.modelParams).map(([key, value]) => (_jsxs(Text, { color: SemanticColors.text.primary, children: [' ', key, ": ", JSON.stringify(value)] }, key)))] })), profile.ephemeralSettings && (_jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { color: SemanticColors.text.secondary, children: "Settings:" }), Object.entries(profile.ephemeralSettings)
101
+ .filter(([key]) => SAFE_EPHEMERAL_KEYS.has(key.toLowerCase()))
102
+ .filter(([, value]) => value !== undefined && value !== null)
103
+ .slice(0, 10) // Limit displayed settings
104
+ .map(([key, value]) => (_jsxs(Text, { color: SemanticColors.text.primary, children: [' ', key, ": ", JSON.stringify(value)] }, key)))] })), profile.auth && (_jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { color: SemanticColors.text.secondary, children: "Authentication:" }), _jsxs(Text, { color: SemanticColors.text.primary, children: [' ', "Type: ", profile.auth.type] }), profile.auth.buckets && profile.auth.buckets.length > 0 && (_jsxs(Text, { color: SemanticColors.text.primary, children: [' ', "Buckets: ", profile.auth.buckets.join(', ')] }))] }))] }));
105
+ };
106
+ // Delete confirmation overlay
107
+ if (confirmDelete) {
108
+ return (_jsxs(Box, { borderStyle: "round", borderColor: SemanticColors.status.warning, flexDirection: "column", padding: 1, width: Math.min(width, 60), children: [_jsx(Text, { bold: true, color: SemanticColors.status.warning, children: "Delete Profile?" }), _jsx(Box, { marginY: 1, children: _jsxs(Text, { color: SemanticColors.text.primary, children: ["Are you sure you want to delete \"", profileName, "\"?"] }) }), _jsx(Text, { color: SemanticColors.text.secondary, children: "This action cannot be undone." }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: SemanticColors.text.accent, children: "Press y to confirm, n or Esc to cancel" }) })] }));
109
+ }
110
+ const dialogWidth = isNarrow ? undefined : Math.min(width, 80);
111
+ return (_jsxs(Box, { borderStyle: "round", borderColor: SemanticColors.border.default, flexDirection: "column", padding: 1, width: dialogWidth, children: [_jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { bold: true, color: SemanticColors.text.accent, children: profileName }), isActive && (_jsx(Text, { color: SemanticColors.status.success, children: " (Active)" })), isDefault && (_jsx(Text, { color: SemanticColors.text.secondary, children: " (Default)" }))] }), renderConfig(), _jsx(Box, { marginTop: 1, borderStyle: "single", borderTop: true, borderBottom: false, borderLeft: false, borderRight: false, borderColor: SemanticColors.border.default, paddingTop: 1, children: _jsxs(Text, { color: SemanticColors.text.secondary, children: ["Actions: ", _jsx(Text, { color: SemanticColors.text.accent, children: "l" }), "=load", ' ', _jsx(Text, { color: SemanticColors.text.accent, children: "e" }), "=edit", ' ', _jsx(Text, { color: SemanticColors.text.accent, children: "d" }), "=delete", ' ', _jsx(Text, { color: SemanticColors.text.accent, children: "s" }), "=set-default", ' ', _jsx(Text, { color: SemanticColors.text.secondary, children: "Esc" }), "=back"] }) })] }));
112
+ };
113
+ //# sourceMappingURL=ProfileDetailDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProfileDetailDialog.js","sourceRoot":"","sources":["../../../../src/ui/components/ProfileDetailDialog.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAiBtD;;;GAGG;AACH,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,SAAS;IACT,UAAU;IACV,KAAK;IACL,SAAS;IACT,YAAY;IACZ,SAAS;IACT,QAAQ;IACR,OAAO;IACP,UAAU;IACV,SAAS;IACT,YAAY;IACZ,cAAc;IACd,OAAO;IACP,SAAS;IACT,WAAW;IACX,WAAW;IACX,aAAa;IACb,MAAM;IACN,MAAM;IACN,QAAQ;IACR,gBAAgB;CACjB,CAAC,CAAC;AAEH,uCAAuC;AACvC,SAAS,qBAAqB,CAAC,OAAgB;IAK7C,MAAM,CAAC,GAAG,OAA6C,CAAC;IACxD,OAAO,CACL,OAAO,CAAC,IAAI,KAAK,cAAc;QAC/B,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;QACzB,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAC7B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAuC,CAAC,EACtE,WAAW,EACX,OAAO,EACP,OAAO,EACP,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,SAAS,GAAG,KAAK,EACjB,SAAS,GAAG,KAAK,EACjB,QAAQ,GAAG,KAAK,EAChB,KAAK,GACN,EAAE,EAAE;IACH,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,aAAa,EAAE,CAAC;IAC5C,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1D,WAAW,CACT,CAAC,GAAG,EAAE,EAAE;QACN,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,aAAa,EAAE,CAAC;gBAClB,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,OAAO,OAAO,EAAE,CAAC;YACnB,CAAC;QACH,CAAC;QAED,mEAAmE;QACnE,IAAI,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;gBACjD,QAAQ,CAAC,WAAW,CAAC,CAAC;YACxB,CAAC;iBAAM,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;gBACxD,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;YACD,OAAO;QACT,CAAC;QAED,gBAAgB;QAChB,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC;QAC7B,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC;QAC7B,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;YACzB,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;YACzB,OAAO,YAAY,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,CACzB,CAAC;IAEF,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,KAAC,GAAG,IACF,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,EAC1C,aAAa,EAAC,QAAQ,EACtB,OAAO,EAAE,CAAC,YAEV,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,OAAO,mCAA2B,GAC/D,CACP,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CACL,MAAC,GAAG,IACF,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,EACxC,aAAa,EAAC,QAAQ,EACtB,OAAO,EAAE,CAAC,aAEV,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,sCAEtC,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,YAAG,KAAK,GAAQ,EAC1D,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YACf,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,qCAEnC,GACH,IACF,CACP,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CACL,MAAC,GAAG,IACF,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,EAC1C,aAAa,EAAC,QAAQ,EACtB,OAAO,EAAE,CAAC,aAEV,MAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,oCACpB,WAAW,IAC1B,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,qCAA6B,IACnE,CACP,CAAC;IACJ,CAAC;IAED,0CAA0C;IAC1C,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,MAAC,GAAG,IAAC,YAAY,EAAE,CAAC,aAClB,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,uBAAe,EACzD,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,8BAAsB,IACzD,EACN,MAAC,GAAG,IAAC,YAAY,EAAE,CAAC,aAClB,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,yBAAiB,EAC3D,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,OAAO,YAAG,OAAO,CAAC,MAAM,GAAQ,IAC7D,EACN,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,aACzC,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,iCAAyB,EAClE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CACnC,MAAC,IAAI,IAAS,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,OAAO,aAC7C,IAAI,QAAI,CAAC,KADD,CAAC,CAEL,CACR,CAAC,IACE,IACF,CACP,CAAC;QACJ,CAAC;QAED,mBAAmB;QACnB,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,MAAC,GAAG,IAAC,YAAY,EAAE,CAAC,aAClB,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,uBAAe,EACzD,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,OAAO,yBAAiB,IACrD,EACN,MAAC,GAAG,IAAC,YAAY,EAAE,CAAC,aAClB,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,2BAAmB,EAC7D,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,YAAG,OAAO,CAAC,QAAQ,GAAQ,IAC9D,EACN,MAAC,GAAG,IAAC,YAAY,EAAE,CAAC,aAClB,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,wBAAgB,EAC1D,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,OAAO,YAAG,OAAO,CAAC,KAAK,GAAQ,IAC5D,EAGL,OAAO,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CACrE,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,aACzC,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,kCAA0B,EACnE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CACzD,MAAC,IAAI,IAAW,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,OAAO,aAC/C,IAAI,EACJ,GAAG,QAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAFpB,GAAG,CAGP,CACR,CAAC,IACE,CACP,EAGA,OAAO,CAAC,iBAAiB,IAAI,CAC5B,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,aACzC,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,0BAAkB,EAC3D,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC;6BACvC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;6BAC7D,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;6BAC5D,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,2BAA2B;6BACxC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CACrB,MAAC,IAAI,IAAW,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,OAAO,aAC/C,IAAI,EACJ,GAAG,QAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAFpB,GAAG,CAGP,CACR,CAAC,IACA,CACP,EAGA,OAAO,CAAC,IAAI,IAAI,CACf,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,aACzC,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,gCAAwB,EAClE,MAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,OAAO,aACrC,IAAI,YAAQ,OAAO,CAAC,IAAI,CAAC,IAAI,IACzB,EACN,OAAO,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1D,MAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,OAAO,aACrC,IAAI,eAAW,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAC1C,CACR,IACG,CACP,IACG,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,8BAA8B;IAC9B,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,CACL,MAAC,GAAG,IACF,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,EAC1C,aAAa,EAAC,QAAQ,EACtB,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,aAE1B,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,gCAExC,EACP,KAAC,GAAG,IAAC,OAAO,EAAE,CAAC,YACb,MAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,OAAO,mDACC,WAAW,WAC7C,GACH,EACN,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,8CAEnC,EACP,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YACf,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,uDAEhC,GACH,IACF,CACP,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAE/D,OAAO,CACL,MAAC,GAAG,IACF,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,EAC1C,aAAa,EAAC,QAAQ,EACtB,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,WAAW,aAGlB,MAAC,GAAG,IAAC,YAAY,EAAE,CAAC,aAClB,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,YACzC,WAAW,GACP,EACN,QAAQ,IAAI,CACX,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,0BAAkB,CAC7D,EACA,SAAS,IAAI,CACZ,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,2BAAmB,CAC9D,IACG,EAGL,YAAY,EAAE,EAGf,KAAC,GAAG,IACF,SAAS,EAAE,CAAC,EACZ,WAAW,EAAC,QAAQ,EACpB,SAAS,QACT,YAAY,EAAE,KAAK,EACnB,UAAU,EAAE,KAAK,EACjB,WAAW,EAAE,KAAK,EAClB,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,EAC1C,UAAU,EAAE,CAAC,YAEb,MAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,0BAC/B,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,kBAAU,WAAM,GAAG,EACnE,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,kBAAU,WAAM,GAAG,EAC1D,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,kBAAU,aAAQ,GAAG,EAC5D,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,kBAAU,kBAAa,GAAG,EACjE,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,oBAAY,aACjD,GACH,IACF,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import React from 'react';
7
+ import type { Profile } from '@vybestack/llxprt-code-core';
8
+ interface ProfileInlineEditorProps {
9
+ profileName: string;
10
+ profile: Profile;
11
+ onSave: (profileName: string, updatedProfile: Profile) => void;
12
+ onCancel: () => void;
13
+ error?: string;
14
+ }
15
+ export declare const ProfileInlineEditor: React.FC<ProfileInlineEditorProps>;
16
+ export {};
@@ -0,0 +1,216 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * @license
4
+ * Copyright 2025 Vybestack LLC
5
+ * SPDX-License-Identifier: Apache-2.0
6
+ */
7
+ import { useState, useEffect, useMemo } from 'react';
8
+ import { Box, Text } from 'ink';
9
+ import { SemanticColors } from '../colors.js';
10
+ import { useResponsive } from '../hooks/useResponsive.js';
11
+ import { useKeypress } from '../hooks/useKeypress.js';
12
+ /**
13
+ * Validates a profile structure. Returns error message or null if valid.
14
+ */
15
+ function validateProfile(profile) {
16
+ if (typeof profile !== 'object' || profile === null) {
17
+ return 'Invalid profile: must be an object';
18
+ }
19
+ const p = profile;
20
+ if (!('version' in p) || typeof p.version !== 'string') {
21
+ return 'Missing or invalid version';
22
+ }
23
+ if (!('type' in p) || typeof p.type !== 'string') {
24
+ return 'Missing or invalid type';
25
+ }
26
+ if (p.type === 'standard') {
27
+ if (!('provider' in p) || typeof p.provider !== 'string' || !p.provider) {
28
+ return 'Standard profile requires provider';
29
+ }
30
+ if (!('model' in p) || typeof p.model !== 'string' || !p.model) {
31
+ return 'Standard profile requires model';
32
+ }
33
+ }
34
+ else if (p.type === 'loadbalancer') {
35
+ if (!('profiles' in p) || !Array.isArray(p.profiles)) {
36
+ return 'Load balancer requires profiles array';
37
+ }
38
+ if (p.profiles.length === 0) {
39
+ return 'Load balancer requires at least one profile';
40
+ }
41
+ if (!p.profiles.every((item) => typeof item === 'string')) {
42
+ return 'Profiles must be strings';
43
+ }
44
+ if (!('policy' in p) || typeof p.policy !== 'string' || !p.policy) {
45
+ return 'Load balancer requires policy';
46
+ }
47
+ }
48
+ else {
49
+ return `Unknown profile type: ${p.type}`;
50
+ }
51
+ return null;
52
+ }
53
+ // Simple JSON editor that allows line-by-line editing
54
+ export const ProfileInlineEditor = ({ profileName, profile, onSave, onCancel, error: externalError, }) => {
55
+ const { width } = useResponsive();
56
+ // Convert profile to formatted JSON lines
57
+ const formatProfile = (p) => {
58
+ const json = JSON.stringify(p, null, 2);
59
+ return json.split('\n');
60
+ };
61
+ const [lines, setLines] = useState(() => formatProfile(profile));
62
+ const [cursorLine, setCursorLine] = useState(0);
63
+ const [isEditing, setIsEditing] = useState(false);
64
+ const [editBuffer, setEditBuffer] = useState('');
65
+ const [validationError, setValidationError] = useState(null);
66
+ const [hasChanges, setHasChanges] = useState(false);
67
+ // Visible window for scrolling
68
+ const maxVisibleLines = 15;
69
+ const [scrollOffset, setScrollOffset] = useState(0);
70
+ // Reset editor when a different profile is loaded into the dialog.
71
+ useEffect(() => {
72
+ setLines(formatProfile(profile));
73
+ setCursorLine(0);
74
+ setScrollOffset(0);
75
+ setIsEditing(false);
76
+ setEditBuffer('');
77
+ setValidationError(null);
78
+ setHasChanges(false);
79
+ }, [profileName, profile]);
80
+ // Ensure cursor line is visible
81
+ useEffect(() => {
82
+ if (cursorLine < scrollOffset) {
83
+ setScrollOffset(cursorLine);
84
+ }
85
+ else if (cursorLine >= scrollOffset + maxVisibleLines) {
86
+ setScrollOffset(cursorLine - maxVisibleLines + 1);
87
+ }
88
+ }, [cursorLine, scrollOffset, maxVisibleLines]);
89
+ // Validate JSON on changes
90
+ const validateJson = useMemo(() => {
91
+ try {
92
+ const jsonString = lines.join('\n');
93
+ JSON.parse(jsonString);
94
+ return null;
95
+ }
96
+ catch (e) {
97
+ return e instanceof Error ? e.message : 'Invalid JSON';
98
+ }
99
+ }, [lines]);
100
+ // Clear stale validation errors when JSON becomes valid
101
+ useEffect(() => {
102
+ if (!validateJson) {
103
+ setValidationError(null);
104
+ }
105
+ }, [validateJson]);
106
+ useKeypress((key) => {
107
+ if (isEditing) {
108
+ // Edit mode
109
+ if (key.name === 'escape') {
110
+ // Cancel line edit
111
+ setIsEditing(false);
112
+ setEditBuffer('');
113
+ return;
114
+ }
115
+ if (key.name === 'return') {
116
+ // Commit line edit
117
+ const newLines = [...lines];
118
+ newLines[cursorLine] = editBuffer;
119
+ setLines(newLines);
120
+ setIsEditing(false);
121
+ setEditBuffer('');
122
+ setHasChanges(true);
123
+ return;
124
+ }
125
+ if (key.name === 'backspace' || key.name === 'delete') {
126
+ setEditBuffer((prev) => prev.slice(0, -1));
127
+ return;
128
+ }
129
+ if (key.sequence &&
130
+ typeof key.sequence === 'string' &&
131
+ !key.ctrl &&
132
+ !key.meta &&
133
+ key.insertable !== false) {
134
+ setEditBuffer((prev) => prev + key.sequence);
135
+ return;
136
+ }
137
+ return;
138
+ }
139
+ // Navigation mode
140
+ if (key.name === 'escape') {
141
+ onCancel();
142
+ return;
143
+ }
144
+ // Save
145
+ if (key.ctrl && key.name === 's') {
146
+ if (validateJson) {
147
+ setValidationError(validateJson);
148
+ return;
149
+ }
150
+ try {
151
+ const updatedProfile = JSON.parse(lines.join('\n'));
152
+ // Comprehensive profile validation
153
+ const profileError = validateProfile(updatedProfile);
154
+ if (profileError) {
155
+ setValidationError(profileError);
156
+ return;
157
+ }
158
+ onSave(profileName, updatedProfile);
159
+ }
160
+ catch (e) {
161
+ setValidationError(e instanceof Error ? e.message : 'Invalid JSON');
162
+ }
163
+ return;
164
+ }
165
+ // Navigation
166
+ if (key.name === 'up' || key.sequence === 'k') {
167
+ setCursorLine((prev) => Math.max(0, prev - 1));
168
+ return;
169
+ }
170
+ if (key.name === 'down' || key.sequence === 'j') {
171
+ setCursorLine((prev) => Math.min(lines.length - 1, prev + 1));
172
+ return;
173
+ }
174
+ // Enter edit mode
175
+ if (key.name === 'return' || key.sequence === 'e') {
176
+ setIsEditing(true);
177
+ setEditBuffer(lines[cursorLine]);
178
+ setValidationError(null);
179
+ return;
180
+ }
181
+ // Page up/down
182
+ if (key.name === 'pageup') {
183
+ setCursorLine((prev) => Math.max(0, prev - maxVisibleLines));
184
+ return;
185
+ }
186
+ if (key.name === 'pagedown') {
187
+ setCursorLine((prev) => Math.min(lines.length - 1, prev + maxVisibleLines));
188
+ return;
189
+ }
190
+ // Home/End
191
+ if (key.sequence === 'g') {
192
+ setCursorLine(0);
193
+ return;
194
+ }
195
+ if (key.sequence === 'G') {
196
+ setCursorLine(lines.length - 1);
197
+ return;
198
+ }
199
+ }, { isActive: true });
200
+ const visibleLines = lines.slice(scrollOffset, scrollOffset + maxVisibleLines);
201
+ const dialogWidth = Math.min(width, 90);
202
+ return (_jsxs(Box, { borderStyle: "round", borderColor: validateJson
203
+ ? SemanticColors.status.error
204
+ : hasChanges
205
+ ? SemanticColors.status.warning
206
+ : SemanticColors.border.default, flexDirection: "column", padding: 1, width: dialogWidth, children: [_jsxs(Box, { marginBottom: 1, children: [_jsxs(Text, { bold: true, color: SemanticColors.text.accent, children: ["Edit: ", profileName] }), hasChanges && (_jsx(Text, { color: SemanticColors.status.warning, children: " (modified)" }))] }), (validationError || externalError || validateJson) && (_jsx(Box, { marginBottom: 1, children: _jsxs(Text, { color: SemanticColors.status.error, children: ["Error: ", validationError || externalError || validateJson] }) })), _jsx(Box, { flexDirection: "column", marginBottom: 1, children: visibleLines.map((line, idx) => {
207
+ const actualLine = scrollOffset + idx;
208
+ const isCurrentLine = actualLine === cursorLine;
209
+ return (_jsxs(Box, { children: [_jsx(Box, { width: 4, children: _jsx(Text, { color: isCurrentLine
210
+ ? SemanticColors.text.accent
211
+ : SemanticColors.text.secondary, children: String(actualLine + 1).padStart(3, ' ') }) }), isEditing && isCurrentLine ? (_jsx(Box, { children: _jsxs(Text, { color: SemanticColors.text.accent, children: [editBuffer, _jsx(Text, { color: SemanticColors.text.accent, children: "\u258C" })] }) })) : (_jsxs(Text, { color: isCurrentLine
212
+ ? SemanticColors.text.accent
213
+ : SemanticColors.text.primary, bold: isCurrentLine, children: [isCurrentLine ? '› ' : ' ', line] }))] }, actualLine));
214
+ }) }), lines.length > maxVisibleLines && (_jsx(Box, { marginBottom: 1, children: _jsxs(Text, { color: SemanticColors.text.secondary, children: ["Lines ", scrollOffset + 1, "-", Math.min(scrollOffset + maxVisibleLines, lines.length), " of", ' ', lines.length] }) })), _jsx(Box, { borderStyle: "single", borderTop: true, borderBottom: false, borderLeft: false, borderRight: false, borderColor: SemanticColors.border.default, paddingTop: 1, children: isEditing ? (_jsxs(Text, { color: SemanticColors.text.secondary, children: ["Editing line ", cursorLine + 1, ". Enter=commit, Esc=cancel"] })) : (_jsx(Text, { color: SemanticColors.text.secondary, children: "\u2191/\u2193=navigate, Enter/e=edit line, Ctrl+S=save, Esc=cancel" })) })] }));
215
+ };
216
+ //# sourceMappingURL=ProfileInlineEditor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProfileInlineEditor.js","sourceRoot":"","sources":["../../../../src/ui/components/ProfileInlineEditor.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import React from 'react';
7
+ export interface ProfileListItem {
8
+ name: string;
9
+ type: 'standard' | 'loadbalancer';
10
+ provider?: string;
11
+ model?: string;
12
+ isDefault?: boolean;
13
+ isActive?: boolean;
14
+ loadError?: boolean;
15
+ }
16
+ interface ProfileListDialogProps {
17
+ profiles: ProfileListItem[];
18
+ onSelect: (profileName: string) => void;
19
+ onClose: () => void;
20
+ onViewDetail: (profileName: string) => void;
21
+ isLoading?: boolean;
22
+ defaultProfileName?: string;
23
+ activeProfileName?: string;
24
+ }
25
+ export declare const ProfileListDialog: React.FC<ProfileListDialogProps>;
26
+ export {};