wepscli 0.1.0 → 0.1.5
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.
- package/README.md +9 -8
- package/dist/WEPSCLI-shell/agent-runtime-events.js +194 -0
- package/dist/WEPSCLI-shell/agent-runtime-events.js.map +1 -0
- package/dist/WEPSCLI-shell/agent-runtime-helpers.js +117 -0
- package/dist/WEPSCLI-shell/agent-runtime-helpers.js.map +1 -0
- package/dist/WEPSCLI-shell/agent-runtime-types.js +1 -0
- package/dist/WEPSCLI-shell/agent-runtime-types.js.map +1 -0
- package/dist/WEPSCLI-shell/agent-runtime.js +42 -294
- package/dist/WEPSCLI-shell/agent-runtime.js.map +1 -1
- package/dist/WEPSCLI-shell/approval-overlay.js.map +1 -1
- package/dist/WEPSCLI-shell/chat-components.js +13 -6
- package/dist/WEPSCLI-shell/chat-components.js.map +1 -1
- package/dist/WEPSCLI-shell/file-change-preview.js.map +1 -1
- package/dist/WEPSCLI-shell/runtime-recovery.js.map +1 -1
- package/dist/WEPSCLI-shell/session-consistency.js +9 -0
- package/dist/WEPSCLI-shell/session-consistency.js.map +1 -0
- package/dist/WEPSCLI-shell/shell-app.js +169 -259
- package/dist/WEPSCLI-shell/shell-app.js.map +1 -1
- package/dist/WEPSCLI-shell/shell-keyboard.js +135 -0
- package/dist/WEPSCLI-shell/shell-keyboard.js.map +1 -0
- package/dist/WEPSCLI-shell/shell-modes.js.map +1 -1
- package/dist/WEPSCLI-shell/shell-prompt-controller.js +93 -0
- package/dist/WEPSCLI-shell/shell-prompt-controller.js.map +1 -0
- package/dist/WEPSCLI-shell/shell-status.js +16 -0
- package/dist/WEPSCLI-shell/shell-status.js.map +1 -0
- package/dist/WEPSCLI-shell/skill-commands.js +7 -0
- package/dist/WEPSCLI-shell/skill-commands.js.map +1 -0
- package/dist/WEPSCLI-shell/slash-commands.js +68 -7
- package/dist/WEPSCLI-shell/slash-commands.js.map +1 -1
- package/dist/WEPSCLI-shell/tool-approval.js.map +1 -1
- package/dist/WEPSCLI-shell/tool-diff.js.map +1 -1
- package/dist/WEPSCLI-shell/tool-file-changes.js.map +1 -1
- package/dist/WEPSCLI-shell/tool-message-detail.js.map +1 -1
- package/dist/WEPSCLI-shell/tool-messages.js.map +1 -1
- package/dist/WEPSCLI-shell/transcript-panel.js.map +1 -1
- package/dist/config.js +3 -0
- package/dist/config.js.map +1 -1
- package/dist/main.js.map +1 -1
- package/dist/skills/skill-add-flow.js +88 -0
- package/dist/skills/skill-add-flow.js.map +1 -0
- package/dist/skills/skill-service.js +123 -0
- package/dist/skills/skill-service.js.map +1 -0
- package/package.json +28 -24
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useKeyboard","For","Show","createEffect","createMemo","createSignal","getSlashCommands","wepscliShellTheme","theme","ChatTopBar","props","_el$","_$createElement","_el$2","_el$3","_el$4","_el$5","_el$6","_el$7","_$insertNode","_$setProp","_$insert","logo","truncateText","sessionTitle","statusLabel","_$createComponent","Chip","label","providerLabel","tone","onClick","onAction","modelLabel","_$effect","_p$","_v$","header","_v$2","accentStrong","_v$3","text","_v$4","muted","e","t","a","o","undefined","ChatTranscript","_el$8","_el$9","_el$0","_el$10","_el$11","_el$12","_$createTextNode","activeModelLabel","when","messages","length","fallback","_el$13","_el$14","_el$16","_el$17","emptyHint","_v$9","panelAlt","_v$0","border","_v$1","_v$10","_v$11","i","children","each","message","MessageBubble","_v$5","panel","_v$6","_v$7","accent","_v$8","ChatComposer","inputRef","draftValue","setDraftValue","value","slashIndex","setSlashIndex","slashOptions","visibleSlashOptions","slice","nextValue","trim","startsWith","evt","focused","name","preventDefault","current","command","onSelectSlashCommand","id","updateValue","onInput","submitCurrentValue","matchingCommands","onSubmit","_el$19","_el$20","_el$21","_el$22","_el$23","_el$24","_c$","_$memo","_el$25","option","index","_el$26","_el$27","_v$30","_v$31","background","_v$28","_v$29","_$use","ref","modeLabel","_v$12","_v$13","_v$14","_v$15","onFocus","_v$16","_v$17","_v$18","_v$19","_v$20","_v$21","_v$22","_v$23","_v$24","modeBackgroundColor","modeTone","_v$25","_v$26","onModeClick","_v$27","modeForegroundColor","n","s","h","r","d","l","u","c","w","m","f","ChatSidebar","_el$28","_el$29","_el$31","_el$33","_el$35","MetaRow","sessionSummary","recentSessions","session","_el$37","_el$38","_el$39","_el$40","_el$41","onOpenSession","title","state","toUpperCase","summary","_v$38","_v$39","_v$40","_v$41","success","_v$42","MiniChip","_v$32","panelMuted","_v$33","_v$34","_v$35","_v$36","_v$37","OverlayPicker","_el$42","_el$43","_el$44","_el$45","_el$46","_el$48","description","options","_el$51","_$p","warning","_el$49","_el$50","_el$53","_el$54","_el$55","_el$56","onSelect","_c$2","badge","_el$57","selectedIndex","_v$49","_v$50","_v$51","_v$43","_v$44","_v$45","_v$46","_v$47","onClose","_v$48","role","_el$58","_el$59","_el$60","_el$61","_el$62","time","content","_v$52","_v$53","_v$54","_el$63","_el$64","_el$65","_v$55","_v$56","backgroundColor","foregroundColor","_el$66","_el$67","maxLength","Math","max","danger"],"sources":["chat-components.tsx"],"sourcesContent":["import { useKeyboard } from \"@opentui/solid\";\nimport { For, Show, createEffect, createMemo, createSignal } from \"solid-js\";\nimport { getSlashCommands } from \"./slash-commands.js\";\nimport type { ShellModeTone } from \"./shell-modes.js\";\nimport { wepscliShellTheme as theme } from \"./theme.js\";\nimport type { ToolMessageState } from \"./tool-messages.js\";\nimport type { OverlayOption } from \"./types.js\";\n\r\nexport type ComposerInputRef = {\r\n\tvalue?: string;\r\n\tplainText?: string;\r\n\tfocus(): void;\r\n\tblur(): void;\r\n\tsetText?(text: string): void;\r\n};\r\nexport type ChatMessageRole = \"system\" | \"user\" | \"assistant\";\r\nexport type ChatMessageKind = \"default\" | \"status\" | \"tool\" | \"reasoning\";\r\n\r\nexport interface ChatMessage {\r\n\tid: string;\r\n\trole: ChatMessageRole;\r\n\tcontent: string;\r\n\ttime: string;\r\n\tkind?: ChatMessageKind;\r\n\tcollapsible?: boolean;\r\n\texpanded?: boolean;\r\n\ttool?: ToolMessageState;\r\n}\r\n\r\nexport function ChatTopBar(props: {\r\n\tlogo: string;\r\n\tsessionTitle: string;\r\n\tproviderLabel: string;\r\n\tmodelLabel: string;\r\n\tstatusLabel: string;\r\n\tonAction: (id: string) => void;\r\n}) {\r\n\treturn (\r\n\t\t<box flexShrink={0} backgroundColor={theme.header} paddingLeft={2} paddingRight={2} paddingTop={1} paddingBottom={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t<box flexDirection=\"row\" gap={1} minWidth={0} flexGrow={1}>\r\n\t\t\t\t\t<text fg={theme.accentStrong}>{props.logo}</text>\r\n\t\t\t\t\t<text fg={theme.text}>{truncateText(props.sessionTitle, 40)}</text>\r\n\t\t\t\t</box>\r\n\t\t\t\t<text fg={theme.muted}>{truncateText(props.statusLabel, 40)}</text>\r\n\t\t\t</box>\r\n\t\t\t<box flexDirection=\"row\" gap={1}>\r\n\t\t\t\t<Chip label={`Provider ${truncateText(props.providerLabel, 14)}`} tone=\"accent\" onClick={() => props.onAction(\"overlay:provider\")} />\r\n\t\t\t\t<Chip label={`Model ${truncateText(props.modelLabel, 14)}`} tone=\"muted\" onClick={() => props.onAction(\"overlay:model\")} />\r\n\t\t\t\t<Chip label=\"New\" tone=\"accent\" onClick={() => props.onAction(\"session:new\")} />\r\n\t\t\t\t<Chip label=\"Sessions\" tone=\"muted\" onClick={() => props.onAction(\"overlay:session\")} />\r\n\t\t\t</box>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nexport function ChatTranscript(props: { messages: ChatMessage[]; emptyHint: string; activeModelLabel: string }) {\r\n\treturn (\r\n\t\t<box flexGrow={1} minHeight={0} backgroundColor={theme.panel} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={theme.border} padding={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t<text fg={theme.accent}>Conversation</text>\r\n\t\t\t\t<text fg={theme.muted}>{truncateText(props.activeModelLabel, 32)}</text>\r\n\t\t\t</box>\r\n\t\t\t<scrollbox flexGrow={1} minHeight={0}>\r\n\t\t\t\t<box flexDirection=\"column\" gap={1}>\r\n\t\t\t\t\t<Show\r\n\t\t\t\t\t\twhen={props.messages.length > 0}\r\n\t\t\t\t\t\tfallback={\r\n\t\t\t\t\t\t\t<box backgroundColor={theme.panelAlt} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={theme.border} padding={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t\t\t\t\t\t<text fg={theme.accentStrong}>Ready for a task</text>\r\n\t\t\t\t\t\t\t\t<text fg={theme.text} wrapMode=\"word\">{props.emptyHint}</text>\r\n\t\t\t\t\t\t\t\t<text fg={theme.muted} wrapMode=\"word\">Enter a prompt below, or type / for commands.</text>\r\n\t\t\t\t\t\t\t</box>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<For each={props.messages}>{(message) => <MessageBubble message={message} />}</For>\r\n\t\t\t\t\t</Show>\r\n\t\t\t\t</box>\r\n\t\t\t</scrollbox>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nexport function ChatComposer(props: {\n\tfocused: boolean;\n\tvalue: string;\n\tproviderLabel: string;\n\tmodelLabel: string;\n\tmodeLabel: string;\n\tmodeTone: ShellModeTone;\n\tinputRef: (ref: ComposerInputRef) => void;\n\tonAction: (id: string) => void;\n\tonFocus: () => void;\n\tonInput: (value: string) => void;\n\tonModeClick: () => void;\n\tonSubmit: (value: string) => void;\n\tonSelectSlashCommand: (id: string) => void;\n}) {\n\tlet inputRef: ComposerInputRef | undefined;\r\n\tconst [draftValue, setDraftValue] = createSignal(props.value);\r\n\tconst [slashIndex, setSlashIndex] = createSignal(0);\r\n\tconst slashOptions = createMemo(() => getSlashCommands(draftValue()));\r\n\tconst visibleSlashOptions = createMemo(() => slashOptions().slice(0, 6));\r\n\r\n\tcreateEffect(() => {\r\n\t\tconst nextValue = props.value;\r\n\t\tsetDraftValue(nextValue);\r\n\t\tif (!nextValue.trim().startsWith(\"/\")) setSlashIndex(0);\r\n\t});\r\n\r\n\tuseKeyboard((evt) => {\r\n\t\tif (!props.focused || visibleSlashOptions().length === 0 || !draftValue().trim().startsWith(\"/\")) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (evt.name === \"up\") {\r\n\t\t\tevt.preventDefault();\r\n\t\t\tsetSlashIndex((current) => (current <= 0 ? visibleSlashOptions().length - 1 : current - 1));\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (evt.name === \"down\") {\r\n\t\t\tevt.preventDefault();\r\n\t\t\tsetSlashIndex((current) => (current + 1) % visibleSlashOptions().length);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (evt.name === \"return\") {\r\n\t\t\tconst command = visibleSlashOptions()[slashIndex()] ?? visibleSlashOptions()[0];\r\n\t\t\tif (!command) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tevt.preventDefault();\r\n\t\t\tprops.onSelectSlashCommand(command.id);\r\n\t\t}\r\n\t});\r\n\r\n\tfunction updateValue(nextValue: string) {\r\n\t\tsetDraftValue(nextValue);\r\n\t\tif (!nextValue.trim().startsWith(\"/\")) setSlashIndex(0);\r\n\t\tprops.onInput(nextValue);\r\n\t}\r\n\r\n\tfunction submitCurrentValue(value: string) {\r\n\t\tconst matchingCommands = getSlashCommands(value).slice(0, 6);\r\n\t\tif (value.trim().startsWith(\"/\") && matchingCommands.length > 0) {\r\n\t\t\tconst command = matchingCommands[slashIndex()] ?? matchingCommands[0];\r\n\t\t\tif (command) {\r\n\t\t\t\tprops.onSelectSlashCommand(command.id);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\t\tprops.onSubmit(value);\r\n\t}\r\n\r\n\treturn (\n\t\t<box flexShrink={0} backgroundColor={theme.panelAlt} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={props.focused ? theme.accent : theme.border} paddingLeft={1} paddingRight={1} paddingTop={0} paddingBottom={0} flexDirection=\"column\" gap={0}>\n\t\t\t{visibleSlashOptions().length > 0 ? (\n\t\t\t\t<box backgroundColor={theme.panel} border={[\"bottom\"]} borderColor={theme.border} paddingLeft={1} paddingRight={1} paddingTop={0} paddingBottom={0} flexDirection=\"column\" gap={0}>\r\n\t\t\t\t\t<For each={visibleSlashOptions()}>\r\n\t\t\t\t\t\t{(option, index) => (\r\n\t\t\t\t\t\t\t<box backgroundColor={slashIndex() === index() ? theme.accent : theme.panelAlt} paddingLeft={1} paddingRight={1} flexDirection=\"row\" onMouseUp={() => props.onSelectSlashCommand(option.id)}>\r\n\t\t\t\t\t\t\t\t<text fg={slashIndex() === index() ? theme.background : theme.text}>{truncateText(option.label, 24)}</text>\r\n\t\t\t\t\t\t\t</box>\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t</For>\r\n\t\t\t\t</box>\n\t\t\t) : null}\n\t\t\t<box backgroundColor={theme.panelAlt} paddingLeft={0} paddingRight={0} paddingTop={0} paddingBottom={0} flexDirection=\"row\" gap={0} onMouseUp={props.onFocus}>\n\t\t\t\t<box flexGrow={1} minWidth={0}>\n\t\t\t\t\t<input\n\t\t\t\t\t\tref={(ref: ComposerInputRef) => {\n\t\t\t\t\t\t\tinputRef = ref;\n\t\t\t\t\t\t\tprops.inputRef(ref);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tfocused={props.focused}\n\t\t\t\t\t\tvalue={draftValue()}\n\t\t\t\t\t\tplaceholder=\"Type / or ask\"\n\t\t\t\t\t\tbackgroundColor={theme.panelAlt}\n\t\t\t\t\t\ttextColor={theme.text}\n\t\t\t\t\t\tfocusedBackgroundColor={theme.panelAlt}\n\t\t\t\t\t\tfocusedTextColor={theme.text}\n\t\t\t\t\t\tcursorColor={theme.accent}\n\t\t\t\t\t\tonMouseUp={props.onFocus}\n\t\t\t\t\t\tonInput={(value: string) => updateValue(value)}\n\t\t\t\t\t\tonSubmit={(value: string) => submitCurrentValue(value)}\n\t\t\t\t\t/>\n\t\t\t\t</box>\n\t\t\t\t<box\n\t\t\t\t\tflexShrink={0}\n\t\t\t\t\twidth={14}\n\t\t\t\t\tbackgroundColor={modeBackgroundColor(props.modeTone)}\n\t\t\t\t\tborder={[\"left\"]}\n\t\t\t\t\tborderColor={props.focused ? theme.accent : theme.border}\n\t\t\t\t\tpaddingLeft={1}\n\t\t\t\t\tpaddingRight={1}\n\t\t\t\t\talignItems=\"center\"\n\t\t\t\t\tjustifyContent=\"center\"\n\t\t\t\t\tonMouseUp={props.onModeClick}\n\t\t\t\t>\n\t\t\t\t\t<text fg={modeForegroundColor(props.modeTone)}>{truncateText(props.modeLabel, 12)}</text>\n\t\t\t\t</box>\n\t\t\t</box>\n\t\t</box>\n\t);\n}\n\r\nexport function ChatSidebar(props: {\r\n\tsessionTitle: string;\r\n\tsessionSummary: string;\r\n\tproviderLabel: string;\r\n\tmodelLabel: string;\r\n\trecentSessions: { id: string; title: string; summary: string; state: string }[];\r\n\tonOpenSession: (id: string) => void;\r\n\tonAction: (id: string) => void;\r\n}) {\r\n\treturn (\r\n\t\t<box width={34} backgroundColor={theme.panelMuted} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={theme.border} padding={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t<text fg={theme.accent}>Context</text>\r\n\t\t\t<MetaRow label=\"Session\" value={truncateText(props.sessionTitle, 18)} />\r\n\t\t\t<MetaRow label=\"Summary\" value={truncateText(props.sessionSummary, 18)} />\r\n\t\t\t<MetaRow label=\"Provider\" value={truncateText(props.providerLabel, 18)} />\r\n\t\t\t<MetaRow label=\"Model\" value={truncateText(props.modelLabel, 18)} />\r\n\t\t\t<text fg={theme.accent}>Recent chats</text>\r\n\t\t\t<For each={props.recentSessions.slice(0, 4)}>\r\n\t\t\t\t{(session) => (\r\n\t\t\t\t\t<box backgroundColor={theme.panel} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={theme.border} padding={1} flexDirection=\"column\" gap={1} onMouseUp={() => props.onOpenSession(session.id)}>\r\n\t\t\t\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t\t\t\t<text fg={theme.text}>{truncateText(session.title, 20)}</text>\r\n\t\t\t\t\t\t\t<text fg={session.state === \"active\" ? theme.success : theme.muted}>{truncateText(session.state.toUpperCase(), 8)}</text>\r\n\t\t\t\t\t\t</box>\r\n\t\t\t\t\t\t<text fg={theme.muted} wrapMode=\"word\">{truncateText(session.summary, 28)}</text>\r\n\t\t\t\t\t</box>\r\n\t\t\t\t)}\r\n\t\t\t</For>\r\n\t\t\t<text fg={theme.accent}>Shortcuts</text>\r\n\t\t\t<text fg={theme.muted} wrapMode=\"word\">Tab focus | h home | p provider | m model | s sessions</text>\r\n\t\t\t<MiniChip label=\"Provider\" tone=\"accent\" onClick={() => props.onAction(\"overlay:provider\")} />\r\n\t\t\t<MiniChip label=\"Model\" tone=\"muted\" onClick={() => props.onAction(\"overlay:model\")} />\r\n\t\t\t<MiniChip label=\"New chat\" tone=\"accent\" onClick={() => props.onAction(\"session:new\")} />\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nexport function OverlayPicker(props: {\r\n\ttitle: string;\r\n\tdescription: string;\r\n\toptions: OverlayOption[];\r\n\tselectedIndex: number;\r\n\tonClose: () => void;\r\n\tonSelect: (id: string, index: number) => void;\r\n}) {\r\n\treturn (\r\n\t\t<box position=\"absolute\" width=\"100%\" height=\"100%\" alignItems=\"center\" justifyContent=\"center\">\r\n\t\t\t<box width=\"70%\" maxWidth={80} backgroundColor={theme.panelAlt} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={theme.accent} padding={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t\t<text fg={theme.accentStrong}>{truncateText(props.title, 32)}</text>\r\n\t\t\t\t\t<text fg={theme.muted} onMouseUp={props.onClose}>esc</text>\r\n\t\t\t\t</box>\r\n\t\t\t\t<text fg={theme.muted} wrapMode=\"word\">{truncateText(props.description, 96)}</text>\r\n\t\t\t\t<Show when={props.options.length > 0} fallback={<text fg={theme.warning}>No options are available yet.</text>}>\r\n\t\t\t\t\t<scrollbox maxHeight={12}>\r\n\t\t\t\t\t\t<box flexDirection=\"column\" gap={1}>\r\n\t\t\t\t\t\t\t<For each={props.options}>\r\n\t\t\t\t\t\t\t\t{(option, index) => (\r\n\t\t\t\t\t\t\t\t\t<box\r\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={props.selectedIndex === index() ? theme.accent : theme.panel}\r\n\t\t\t\t\t\t\t\t\t\tpaddingLeft={1}\r\n\t\t\t\t\t\t\t\t\t\tpaddingRight={1}\r\n\t\t\t\t\t\t\t\t\t\tpaddingTop={1}\r\n\t\t\t\t\t\t\t\t\t\tpaddingBottom={1}\r\n\t\t\t\t\t\t\t\t\t\tflexDirection=\"column\"\r\n\t\t\t\t\t\t\t\t\t\tonMouseUp={() => props.onSelect(option.id, index())}\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t\t\t\t\t\t\t\t<text fg={props.selectedIndex === index() ? theme.background : theme.text}>{truncateText(option.label, 28)}</text>\r\n\t\t\t\t\t\t\t\t\t\t\t{option.badge ? <text fg={props.selectedIndex === index() ? theme.background : theme.success}>{truncateText(option.badge, 10)}</text> : null}\r\n\t\t\t\t\t\t\t\t\t\t</box>\r\n\t\t\t\t\t\t\t\t\t\t<text fg={props.selectedIndex === index() ? theme.background : theme.muted} wrapMode=\"word\">{option.description}</text>\r\n\t\t\t\t\t\t\t\t\t</box>\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t</For>\r\n\t\t\t\t\t\t</box>\r\n\t\t\t\t\t</scrollbox>\r\n\t\t\t\t</Show>\r\n\t\t\t</box>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nfunction MessageBubble(props: { message: ChatMessage }) {\r\n\tconst tone = props.message.role === \"user\" ? theme.accent : props.message.role === \"assistant\" ? theme.success : theme.muted;\r\n\treturn (\r\n\t\t<box backgroundColor={theme.panelAlt} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={tone} padding={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t<text fg={tone}>{props.message.role.toUpperCase()}</text>\r\n\t\t\t\t<text fg={theme.muted}>{truncateText(props.message.time, 12)}</text>\r\n\t\t\t</box>\r\n\t\t\t<text fg={theme.text} wrapMode=\"word\">{props.message.content}</text>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nfunction MetaRow(props: { label: string; value: string }) {\r\n\treturn (\r\n\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t<text fg={theme.muted}>{props.label}</text>\r\n\t\t\t<text fg={theme.text}>{truncateText(props.value, 18)}</text>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nfunction Chip(props: { label: string; tone: \"accent\" | \"muted\"; onClick: () => void }) {\r\n\tconst backgroundColor = props.tone === \"accent\" ? theme.accent : theme.panel;\r\n\tconst foregroundColor = props.tone === \"accent\" ? theme.background : theme.text;\r\n\treturn (\r\n\t\t<box backgroundColor={backgroundColor} paddingLeft={1} paddingRight={1} onMouseUp={props.onClick}>\r\n\t\t\t<text fg={foregroundColor}>{truncateText(props.label, 24)}</text>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nfunction MiniChip(props: { label: string; tone: \"accent\" | \"muted\"; onClick: () => void }) {\r\n\treturn <Chip {...props} />;\r\n}\r\n\r\nfunction truncateText(value: string, maxLength: number): string {\n\treturn value.length <= maxLength ? value : `${value.slice(0, Math.max(0, maxLength - 3))}...`;\n}\n\nfunction modeBackgroundColor(tone: ShellModeTone): string {\n\tswitch (tone) {\n\t\tcase \"accent\":\n\t\t\treturn theme.accent;\n\t\tcase \"warning\":\n\t\t\treturn theme.warning;\n\t\tcase \"muted\":\n\t\t\treturn theme.panelMuted;\n\t\tcase \"danger\":\n\t\t\treturn theme.danger;\n\t}\n}\n\nfunction modeForegroundColor(tone: ShellModeTone): string {\n\tswitch (tone) {\n\t\tcase \"accent\":\n\t\tcase \"warning\":\n\t\tcase \"danger\":\n\t\t\treturn theme.background;\n\t\tcase \"muted\":\n\t\t\treturn theme.text;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useKeyboard","For","Show","createEffect","createMemo","createSignal","getSlashCommands","shouldInsertSlashCommand","wepscliShellTheme","theme","ChatTopBar","props","_el$","_$createElement","_el$2","_el$3","_el$4","_el$5","_el$6","_el$7","_$insertNode","_$setProp","_$insert","logo","truncateText","sessionTitle","statusLabel","_$createComponent","Chip","label","providerLabel","tone","onClick","onAction","modelLabel","_$effect","_p$","_v$","header","_v$2","accentStrong","_v$3","text","_v$4","muted","e","t","a","o","undefined","ChatTranscript","_el$8","_el$9","_el$0","_el$10","_el$11","_el$12","_$createTextNode","activeModelLabel","when","messages","length","fallback","_el$13","_el$14","_el$16","_el$17","emptyHint","_v$9","panelAlt","_v$0","border","_v$1","_v$10","_v$11","i","children","each","message","MessageBubble","_v$5","panel","_v$6","_v$7","accent","_v$8","ChatComposer","inputRef","draftValue","setDraftValue","value","slashIndex","setSlashIndex","slashOptions","slashCommands","visibleSlashOptions","slice","nextValue","trim","startsWith","evt","focused","name","preventDefault","current","command","selectSlashCommand","id","updateValue","onInput","commandId","onSelectSlashCommand","submitCurrentValue","matchingCommands","onSubmit","_el$19","_el$20","_el$21","_el$22","_el$23","_el$24","_c$","_$memo","_el$25","option","index","_el$26","_el$27","_v$30","_v$31","background","_v$28","_v$29","_$use","ref","modeLabel","_v$12","_v$13","_v$14","_v$15","onFocus","_v$16","_v$17","_v$18","_v$19","_v$20","_v$21","_v$22","_v$23","_v$24","modeBackgroundColor","modeTone","_v$25","_v$26","onModeClick","_v$27","modeForegroundColor","n","s","h","r","d","l","u","c","w","m","f","ChatSidebar","_el$28","_el$29","_el$31","_el$33","_el$35","MetaRow","sessionSummary","recentSessions","session","_el$37","_el$38","_el$39","_el$40","_el$41","onOpenSession","title","state","toUpperCase","summary","_v$38","_v$39","_v$40","_v$41","success","_v$42","MiniChip","_v$32","panelMuted","_v$33","_v$34","_v$35","_v$36","_v$37","OverlayPicker","_el$42","_el$43","_el$44","_el$45","_el$46","_el$48","description","options","_el$51","_$p","warning","_el$49","_el$50","_el$53","_el$54","_el$55","_el$56","onSelect","_c$2","badge","_el$57","selectedIndex","_v$49","_v$50","_v$51","_v$43","_v$44","_v$45","_v$46","_v$47","onClose","_v$48","role","_el$58","_el$59","_el$60","_el$61","_el$62","time","content","_v$52","_v$53","_v$54","_el$63","_el$64","_el$65","_v$55","_v$56","backgroundColor","foregroundColor","_el$66","_el$67","maxLength","Math","max","danger"],"sources":["chat-components.tsx"],"sourcesContent":["import { useKeyboard } from \"@opentui/solid\";\r\nimport { For, Show, createEffect, createMemo, createSignal } from \"solid-js\";\r\nimport { getSlashCommands, shouldInsertSlashCommand } from \"./slash-commands.js\";\nimport type { ShellModeTone } from \"./shell-modes.js\";\nimport { wepscliShellTheme as theme } from \"./theme.js\";\nimport type { ToolMessageState } from \"./tool-messages.js\";\nimport type { OverlayOption, SlashCommandItem } from \"./types.js\";\n\r\nexport type ComposerInputRef = {\r\n\tvalue?: string;\r\n\tplainText?: string;\r\n\tfocus(): void;\r\n\tblur(): void;\r\n\tsetText?(text: string): void;\r\n};\r\nexport type ChatMessageRole = \"system\" | \"user\" | \"assistant\";\r\nexport type ChatMessageKind = \"default\" | \"status\" | \"tool\" | \"reasoning\";\r\n\r\nexport interface ChatMessage {\r\n\tid: string;\r\n\trole: ChatMessageRole;\r\n\tcontent: string;\r\n\ttime: string;\r\n\tkind?: ChatMessageKind;\r\n\tcollapsible?: boolean;\r\n\texpanded?: boolean;\r\n\ttool?: ToolMessageState;\r\n}\r\n\r\nexport function ChatTopBar(props: {\r\n\tlogo: string;\r\n\tsessionTitle: string;\r\n\tproviderLabel: string;\r\n\tmodelLabel: string;\r\n\tstatusLabel: string;\r\n\tonAction: (id: string) => void;\r\n}) {\r\n\treturn (\r\n\t\t<box flexShrink={0} backgroundColor={theme.header} paddingLeft={2} paddingRight={2} paddingTop={1} paddingBottom={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t<box flexDirection=\"row\" gap={1} minWidth={0} flexGrow={1}>\r\n\t\t\t\t\t<text fg={theme.accentStrong}>{props.logo}</text>\r\n\t\t\t\t\t<text fg={theme.text}>{truncateText(props.sessionTitle, 40)}</text>\r\n\t\t\t\t</box>\r\n\t\t\t\t<text fg={theme.muted}>{truncateText(props.statusLabel, 40)}</text>\r\n\t\t\t</box>\r\n\t\t\t<box flexDirection=\"row\" gap={1}>\r\n\t\t\t\t<Chip label={`Provider ${truncateText(props.providerLabel, 14)}`} tone=\"accent\" onClick={() => props.onAction(\"overlay:provider\")} />\r\n\t\t\t\t<Chip label={`Model ${truncateText(props.modelLabel, 14)}`} tone=\"muted\" onClick={() => props.onAction(\"overlay:model\")} />\r\n\t\t\t\t<Chip label=\"New\" tone=\"accent\" onClick={() => props.onAction(\"session:new\")} />\r\n\t\t\t\t<Chip label=\"Sessions\" tone=\"muted\" onClick={() => props.onAction(\"overlay:session\")} />\r\n\t\t\t</box>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nexport function ChatTranscript(props: { messages: ChatMessage[]; emptyHint: string; activeModelLabel: string }) {\r\n\treturn (\r\n\t\t<box flexGrow={1} minHeight={0} backgroundColor={theme.panel} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={theme.border} padding={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t<text fg={theme.accent}>Conversation</text>\r\n\t\t\t\t<text fg={theme.muted}>{truncateText(props.activeModelLabel, 32)}</text>\r\n\t\t\t</box>\r\n\t\t\t<scrollbox flexGrow={1} minHeight={0}>\r\n\t\t\t\t<box flexDirection=\"column\" gap={1}>\r\n\t\t\t\t\t<Show\r\n\t\t\t\t\t\twhen={props.messages.length > 0}\r\n\t\t\t\t\t\tfallback={\r\n\t\t\t\t\t\t\t<box backgroundColor={theme.panelAlt} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={theme.border} padding={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t\t\t\t\t\t<text fg={theme.accentStrong}>Ready for a task</text>\r\n\t\t\t\t\t\t\t\t<text fg={theme.text} wrapMode=\"word\">{props.emptyHint}</text>\r\n\t\t\t\t\t\t\t\t<text fg={theme.muted} wrapMode=\"word\">Enter a prompt below, or type / for commands.</text>\r\n\t\t\t\t\t\t\t</box>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<For each={props.messages}>{(message) => <MessageBubble message={message} />}</For>\r\n\t\t\t\t\t</Show>\r\n\t\t\t\t</box>\r\n\t\t\t</scrollbox>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nexport function ChatComposer(props: {\r\n\tfocused: boolean;\r\n\tvalue: string;\r\n\tproviderLabel: string;\r\n\tmodelLabel: string;\r\n\tmodeLabel: string;\r\n\tmodeTone: ShellModeTone;\r\n\tinputRef: (ref: ComposerInputRef) => void;\r\n\tonAction: (id: string) => void;\r\n\tonFocus: () => void;\r\n\tonInput: (value: string) => void;\n\tonModeClick: () => void;\n\tonSubmit: (value: string) => void;\n\tonSelectSlashCommand: (id: string) => void;\n\tslashCommands?: SlashCommandItem[];\n}) {\n\tlet inputRef: ComposerInputRef | undefined;\n\tconst [draftValue, setDraftValue] = createSignal(props.value);\n\tconst [slashIndex, setSlashIndex] = createSignal(0);\n\tconst slashOptions = createMemo(() => getSlashCommands(draftValue(), props.slashCommands ?? []));\n\tconst visibleSlashOptions = createMemo(() => slashOptions().slice(0, 6));\n\r\n\tcreateEffect(() => {\r\n\t\tconst nextValue = props.value;\r\n\t\tsetDraftValue(nextValue);\r\n\t\tif (!nextValue.trim().startsWith(\"/\")) setSlashIndex(0);\r\n\t});\r\n\r\n\tuseKeyboard((evt) => {\r\n\t\tif (!props.focused || visibleSlashOptions().length === 0 || !draftValue().trim().startsWith(\"/\")) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (evt.name === \"up\") {\r\n\t\t\tevt.preventDefault();\r\n\t\t\tsetSlashIndex((current) => (current <= 0 ? visibleSlashOptions().length - 1 : current - 1));\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (evt.name === \"down\") {\r\n\t\t\tevt.preventDefault();\r\n\t\t\tsetSlashIndex((current) => (current + 1) % visibleSlashOptions().length);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (evt.name === \"return\") {\n\t\t\tconst command = visibleSlashOptions()[slashIndex()] ?? visibleSlashOptions()[0];\n\t\t\tif (!command) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tevt.preventDefault();\n\t\t\tselectSlashCommand(command.id);\n\t\t}\n\t});\r\n\r\n\tfunction updateValue(nextValue: string) {\n\t\tsetDraftValue(nextValue);\n\t\tif (!nextValue.trim().startsWith(\"/\")) setSlashIndex(0);\n\t\tprops.onInput(nextValue);\n\t}\n\n\tfunction selectSlashCommand(commandId: string) {\n\t\tif (shouldInsertSlashCommand(commandId)) {\n\t\t\tupdateValue(`${commandId} `);\n\t\t\treturn;\n\t\t}\n\t\tprops.onSelectSlashCommand(commandId);\n\t}\n\n\tfunction submitCurrentValue(value: string) {\n\t\tconst matchingCommands = getSlashCommands(value, props.slashCommands ?? []).slice(0, 6);\n\t\tif (value.trim().startsWith(\"/\") && matchingCommands.length > 0) {\n\t\t\tconst command = matchingCommands[slashIndex()] ?? matchingCommands[0];\n\t\t\tif (command) {\n\t\t\t\tselectSlashCommand(command.id);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tprops.onSubmit(value);\n\t}\r\n\r\n\treturn (\r\n\t\t<box flexShrink={0} backgroundColor={theme.panelAlt} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={props.focused ? theme.accent : theme.border} paddingLeft={1} paddingRight={1} paddingTop={0} paddingBottom={0} flexDirection=\"column\" gap={0}>\r\n\t\t\t{visibleSlashOptions().length > 0 ? (\r\n\t\t\t\t<box backgroundColor={theme.panel} border={[\"bottom\"]} borderColor={theme.border} paddingLeft={1} paddingRight={1} paddingTop={0} paddingBottom={0} flexDirection=\"column\" gap={0}>\r\n\t\t\t\t\t<For each={visibleSlashOptions()}>\n\t\t\t\t\t\t{(option, index) => (\n\t\t\t\t\t\t\t<box backgroundColor={slashIndex() === index() ? theme.accent : theme.panelAlt} paddingLeft={1} paddingRight={1} flexDirection=\"row\" onMouseUp={() => selectSlashCommand(option.id)}>\n\t\t\t\t\t\t\t\t<text fg={slashIndex() === index() ? theme.background : theme.text}>{truncateText(option.label, 24)}</text>\n\t\t\t\t\t\t\t</box>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</For>\r\n\t\t\t\t</box>\r\n\t\t\t) : null}\r\n\t\t\t<box backgroundColor={theme.panelAlt} paddingLeft={0} paddingRight={0} paddingTop={0} paddingBottom={0} flexDirection=\"row\" gap={0} onMouseUp={props.onFocus}>\r\n\t\t\t\t<box flexGrow={1} minWidth={0}>\r\n\t\t\t\t\t<input\r\n\t\t\t\t\t\tref={(ref: ComposerInputRef) => {\r\n\t\t\t\t\t\t\tinputRef = ref;\r\n\t\t\t\t\t\t\tprops.inputRef(ref);\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t\tfocused={props.focused}\r\n\t\t\t\t\t\tvalue={draftValue()}\r\n\t\t\t\t\t\tplaceholder=\"Type / or ask\"\r\n\t\t\t\t\t\tbackgroundColor={theme.panelAlt}\r\n\t\t\t\t\t\ttextColor={theme.text}\r\n\t\t\t\t\t\tfocusedBackgroundColor={theme.panelAlt}\r\n\t\t\t\t\t\tfocusedTextColor={theme.text}\r\n\t\t\t\t\t\tcursorColor={theme.accent}\r\n\t\t\t\t\t\tonMouseUp={props.onFocus}\r\n\t\t\t\t\t\tonInput={(value: string) => updateValue(value)}\r\n\t\t\t\t\t\tonSubmit={(value: string) => submitCurrentValue(value)}\r\n\t\t\t\t\t/>\r\n\t\t\t\t</box>\r\n\t\t\t\t<box\r\n\t\t\t\t\tflexShrink={0}\r\n\t\t\t\t\twidth={14}\r\n\t\t\t\t\tbackgroundColor={modeBackgroundColor(props.modeTone)}\r\n\t\t\t\t\tborder={[\"left\"]}\r\n\t\t\t\t\tborderColor={props.focused ? theme.accent : theme.border}\r\n\t\t\t\t\tpaddingLeft={1}\r\n\t\t\t\t\tpaddingRight={1}\r\n\t\t\t\t\talignItems=\"center\"\r\n\t\t\t\t\tjustifyContent=\"center\"\r\n\t\t\t\t\tonMouseUp={props.onModeClick}\r\n\t\t\t\t>\r\n\t\t\t\t\t<text fg={modeForegroundColor(props.modeTone)}>{truncateText(props.modeLabel, 12)}</text>\r\n\t\t\t\t</box>\r\n\t\t\t</box>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nexport function ChatSidebar(props: {\r\n\tsessionTitle: string;\r\n\tsessionSummary: string;\r\n\tproviderLabel: string;\r\n\tmodelLabel: string;\r\n\trecentSessions: { id: string; title: string; summary: string; state: string }[];\r\n\tonOpenSession: (id: string) => void;\r\n\tonAction: (id: string) => void;\r\n}) {\r\n\treturn (\r\n\t\t<box width={34} backgroundColor={theme.panelMuted} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={theme.border} padding={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t<text fg={theme.accent}>Context</text>\r\n\t\t\t<MetaRow label=\"Session\" value={truncateText(props.sessionTitle, 18)} />\r\n\t\t\t<MetaRow label=\"Summary\" value={truncateText(props.sessionSummary, 18)} />\r\n\t\t\t<MetaRow label=\"Provider\" value={truncateText(props.providerLabel, 18)} />\r\n\t\t\t<MetaRow label=\"Model\" value={truncateText(props.modelLabel, 18)} />\r\n\t\t\t<text fg={theme.accent}>Recent chats</text>\r\n\t\t\t<For each={props.recentSessions.slice(0, 4)}>\r\n\t\t\t\t{(session) => (\r\n\t\t\t\t\t<box backgroundColor={theme.panel} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={theme.border} padding={1} flexDirection=\"column\" gap={1} onMouseUp={() => props.onOpenSession(session.id)}>\r\n\t\t\t\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t\t\t\t<text fg={theme.text}>{truncateText(session.title, 20)}</text>\r\n\t\t\t\t\t\t\t<text fg={session.state === \"active\" ? theme.success : theme.muted}>{truncateText(session.state.toUpperCase(), 8)}</text>\r\n\t\t\t\t\t\t</box>\r\n\t\t\t\t\t\t<text fg={theme.muted} wrapMode=\"word\">{truncateText(session.summary, 28)}</text>\r\n\t\t\t\t\t</box>\r\n\t\t\t\t)}\r\n\t\t\t</For>\r\n\t\t\t<text fg={theme.accent}>Shortcuts</text>\r\n\t\t\t<text fg={theme.muted} wrapMode=\"word\">Tab focus | h home | p provider | m model | s sessions</text>\r\n\t\t\t<MiniChip label=\"Provider\" tone=\"accent\" onClick={() => props.onAction(\"overlay:provider\")} />\r\n\t\t\t<MiniChip label=\"Model\" tone=\"muted\" onClick={() => props.onAction(\"overlay:model\")} />\r\n\t\t\t<MiniChip label=\"New chat\" tone=\"accent\" onClick={() => props.onAction(\"session:new\")} />\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nexport function OverlayPicker(props: {\r\n\ttitle: string;\r\n\tdescription: string;\r\n\toptions: OverlayOption[];\r\n\tselectedIndex: number;\r\n\tonClose: () => void;\r\n\tonSelect: (id: string, index: number) => void;\r\n}) {\r\n\treturn (\r\n\t\t<box position=\"absolute\" width=\"100%\" height=\"100%\" alignItems=\"center\" justifyContent=\"center\">\r\n\t\t\t<box width=\"70%\" maxWidth={80} backgroundColor={theme.panelAlt} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={theme.accent} padding={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t\t<text fg={theme.accentStrong}>{truncateText(props.title, 32)}</text>\r\n\t\t\t\t\t<text fg={theme.muted} onMouseUp={props.onClose}>esc</text>\r\n\t\t\t\t</box>\r\n\t\t\t\t<text fg={theme.muted} wrapMode=\"word\">{truncateText(props.description, 96)}</text>\r\n\t\t\t\t<Show when={props.options.length > 0} fallback={<text fg={theme.warning}>No options are available yet.</text>}>\r\n\t\t\t\t\t<scrollbox maxHeight={12}>\r\n\t\t\t\t\t\t<box flexDirection=\"column\" gap={1}>\r\n\t\t\t\t\t\t\t<For each={props.options}>\r\n\t\t\t\t\t\t\t\t{(option, index) => (\r\n\t\t\t\t\t\t\t\t\t<box\r\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={props.selectedIndex === index() ? theme.accent : theme.panel}\r\n\t\t\t\t\t\t\t\t\t\tpaddingLeft={1}\r\n\t\t\t\t\t\t\t\t\t\tpaddingRight={1}\r\n\t\t\t\t\t\t\t\t\t\tpaddingTop={1}\r\n\t\t\t\t\t\t\t\t\t\tpaddingBottom={1}\r\n\t\t\t\t\t\t\t\t\t\tflexDirection=\"column\"\r\n\t\t\t\t\t\t\t\t\t\tonMouseUp={() => props.onSelect(option.id, index())}\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t\t\t\t\t\t\t\t<text fg={props.selectedIndex === index() ? theme.background : theme.text}>{truncateText(option.label, 28)}</text>\r\n\t\t\t\t\t\t\t\t\t\t\t{option.badge ? <text fg={props.selectedIndex === index() ? theme.background : theme.success}>{truncateText(option.badge, 10)}</text> : null}\r\n\t\t\t\t\t\t\t\t\t\t</box>\r\n\t\t\t\t\t\t\t\t\t\t<text fg={props.selectedIndex === index() ? theme.background : theme.muted} wrapMode=\"word\">{option.description}</text>\r\n\t\t\t\t\t\t\t\t\t</box>\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t</For>\r\n\t\t\t\t\t\t</box>\r\n\t\t\t\t\t</scrollbox>\r\n\t\t\t\t</Show>\r\n\t\t\t</box>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nfunction MessageBubble(props: { message: ChatMessage }) {\r\n\tconst tone = props.message.role === \"user\" ? theme.accent : props.message.role === \"assistant\" ? theme.success : theme.muted;\r\n\treturn (\r\n\t\t<box backgroundColor={theme.panelAlt} border={[\"top\", \"right\", \"bottom\", \"left\"]} borderColor={tone} padding={1} flexDirection=\"column\" gap={1}>\r\n\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t<text fg={tone}>{props.message.role.toUpperCase()}</text>\r\n\t\t\t\t<text fg={theme.muted}>{truncateText(props.message.time, 12)}</text>\r\n\t\t\t</box>\r\n\t\t\t<text fg={theme.text} wrapMode=\"word\">{props.message.content}</text>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nfunction MetaRow(props: { label: string; value: string }) {\r\n\treturn (\r\n\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t<text fg={theme.muted}>{props.label}</text>\r\n\t\t\t<text fg={theme.text}>{truncateText(props.value, 18)}</text>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nfunction Chip(props: { label: string; tone: \"accent\" | \"muted\"; onClick: () => void }) {\r\n\tconst backgroundColor = props.tone === \"accent\" ? theme.accent : theme.panel;\r\n\tconst foregroundColor = props.tone === \"accent\" ? theme.background : theme.text;\r\n\treturn (\r\n\t\t<box backgroundColor={backgroundColor} paddingLeft={1} paddingRight={1} onMouseUp={props.onClick}>\r\n\t\t\t<text fg={foregroundColor}>{truncateText(props.label, 24)}</text>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nfunction MiniChip(props: { label: string; tone: \"accent\" | \"muted\"; onClick: () => void }) {\r\n\treturn <Chip {...props} />;\r\n}\r\n\r\nfunction truncateText(value: string, maxLength: number): string {\r\n\treturn value.length <= maxLength ? value : `${value.slice(0, Math.max(0, maxLength - 3))}...`;\r\n}\r\n\r\nfunction modeBackgroundColor(tone: ShellModeTone): string {\r\n\tswitch (tone) {\r\n\t\tcase \"accent\":\r\n\t\t\treturn theme.accent;\r\n\t\tcase \"warning\":\r\n\t\t\treturn theme.warning;\r\n\t\tcase \"muted\":\r\n\t\t\treturn theme.panelMuted;\r\n\t\tcase \"danger\":\r\n\t\t\treturn theme.danger;\r\n\t}\r\n}\r\n\r\nfunction modeForegroundColor(tone: ShellModeTone): string {\r\n\tswitch (tone) {\r\n\t\tcase \"accent\":\r\n\t\tcase \"warning\":\r\n\t\tcase \"danger\":\r\n\t\t\treturn theme.background;\r\n\t\tcase \"muted\":\r\n\t\t\treturn theme.text;\r\n\t}\r\n}\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["For","Show","formatToolDiffStats","toolFileChangeLocation","wepscliShellTheme","theme","MAX_DIFF_LINES","MAX_PREVIEW_LINES","diffLineColor","line","kind","success","danger","text","muted","formatDiffLine","rawText","prefix","lineNumber","padStart","content","sliceMultiline","maxLines","lines","replace","split","visibleLines","slice","hiddenLineCount","Math","max","length","previewLabel","change","changeTone","warning","accent","DiffPreview","props","_el$","_$createElement","_$setProp","_$insert","_$createComponent","each","children","_el$5","_$effect","_$p","when","_el$2","_el$3","_$createTextNode","_el$4","_$insertNode","_p$","_v$","panelMuted","_v$2","border","e","t","undefined","WritePreview","preview","previewText","_el$6","_el$0","_el$7","_el$8","_el$9","_v$3","_v$4","FileChangeCard","_el$1","_el$10","_el$11","_el$12","_el$13","toUpperCase","summary","diffLines","_el$14","_el$15","_el$16","diffStats","_v$5","_v$6","_$memo","_el$17","_v$7","panelAlt","_v$8","_v$9","accentStrong","_v$0","_v$1","a","o","i","FileChangeCardList","_el$18","_c$","title","_el$19","changes"],"sources":["file-change-preview.tsx"],"sourcesContent":["import { For, Show } from \"solid-js\";\nimport { formatToolDiffStats, toolFileChangeLocation, type ToolDiffLine, type ToolFileChange } from \"./tool-file-changes.js\";\nimport { wepscliShellTheme as theme } from \"./theme.js\";\n\nconst MAX_DIFF_LINES = 48;\nconst MAX_PREVIEW_LINES = 16;\n\nfunction diffLineColor(line: ToolDiffLine): string {\n\tswitch (line.kind) {\n\t\tcase \"added\":\n\t\t\treturn theme.success;\n\t\tcase \"removed\":\n\t\t\treturn theme.danger;\n\t\tcase \"context\":\n\t\t\treturn theme.text;\n\t\tcase \"meta\":\n\t\t\treturn theme.muted;\n\t}\n}\n\nfunction formatDiffLine(line: ToolDiffLine): string {\n\tif (line.kind === \"meta\") {\n\t\treturn line.rawText;\n\t}\n\tconst prefix = line.kind === \"added\" ? \"+\" : line.kind === \"removed\" ? \"-\" : \" \";\n\tconst lineNumber = line.lineNumber?.padStart(4, \" \") ?? \" \";\n\treturn `${prefix}${lineNumber} ${line.content}`;\n}\n\nfunction sliceMultiline(text: string, maxLines: number): { visibleLines: string[]; hiddenLineCount: number } {\n\tconst lines = text.replace(/\\r/g, \"\").split(\"\\n\");\n\treturn {\n\t\tvisibleLines: lines.slice(0, maxLines),\n\t\thiddenLineCount: Math.max(0, lines.length - maxLines),\n\t};\n}\n\nfunction previewLabel(change: ToolFileChange): string {\n\treturn change.kind === \"edit\" ? \"Diff\" : \"Preview\";\n}\n\nfunction changeTone(change: ToolFileChange): string {\n\treturn change.kind === \"edit\" ? theme.warning : theme.accent;\n}\n\nfunction DiffPreview(props: { lines: ToolDiffLine[] }) {\n\tconst visibleLines = () => props.lines.slice(0, MAX_DIFF_LINES);\n\tconst hiddenLineCount = () => Math.max(0, props.lines.length - MAX_DIFF_LINES);\n\n\treturn (\n\t\t<box backgroundColor={theme.panelMuted} border={[\"left\"]} borderColor={theme.border} paddingLeft={1} flexDirection=\"column\" gap={0}>\n\t\t\t<For each={visibleLines()}>{(line) => <text fg={diffLineColor(line)}>{formatDiffLine(line)}</text>}</For>\n\t\t\t<Show when={hiddenLineCount() > 0}>\n\t\t\t\t<text fg={theme.muted}>... {hiddenLineCount()} more diff lines</text>\n\t\t\t</Show>\n\t\t</box>\n\t);\n}\n\nfunction WritePreview(props: { previewText: string }) {\n\tconst preview = () => sliceMultiline(props.previewText, MAX_PREVIEW_LINES);\n\n\treturn (\n\t\t<box backgroundColor={theme.panelMuted} border={[\"left\"]} borderColor={theme.border} paddingLeft={1} flexDirection=\"column\" gap={0}>\n\t\t\t<For each={preview().visibleLines}>{(line) => <text fg={theme.text}>{line || \" \"}</text>}</For>\n\t\t\t<Show when={preview().hiddenLineCount > 0}>\n\t\t\t\t<text fg={theme.muted}>... {preview().hiddenLineCount} more preview lines</text>\n\t\t\t</Show>\n\t\t</box>\n\t);\n}\n\nexport function FileChangeCard(props: { change: ToolFileChange }) {\n\treturn (\n\t\t<box\n\t\t\tbackgroundColor={theme.panelAlt}\n\t\t\tborder={[\"top\", \"right\", \"bottom\", \"left\"]}\n\t\t\tborderColor={changeTone(props.change)}\n\t\t\tpadding={1}\n\t\t\tflexDirection=\"column\"\n\t\t\tgap={1}\n\t\t>\n\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\n\t\t\t\t<text fg={theme.accentStrong}>{toolFileChangeLocation(props.change)}</text>\n\t\t\t\t<text fg={changeTone(props.change)}>{props.change.kind.toUpperCase()}</text>\n\t\t\t</box>\n\t\t\t<text fg={theme.muted} wrapMode=\"word\">{props.change.summary}</text>\n\t\t\t<Show when={props.change.diffLines?.length}>\n\t\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\n\t\t\t\t\t<text fg={theme.accent}>{previewLabel(props.change)}</text>\n\t\t\t\t\t<text fg={theme.muted}>{formatToolDiffStats(props.change.diffStats) ?? \"\"}</text>\n\t\t\t\t</box>\n\t\t\t\t<DiffPreview lines={props.change.diffLines!} />\n\t\t\t</Show>\n\t\t\t<Show when={!props.change.diffLines?.length && props.change.previewText}>\n\t\t\t\t<text fg={theme.accent}>{previewLabel(props.change)}</text>\n\t\t\t\t<WritePreview previewText={props.change.previewText!} />\n\t\t\t</Show>\n\t\t</box>\n\t);\n}\n\nexport function FileChangeCardList(props: { changes: ToolFileChange[]; title?: string }) {\n\treturn (\n\t\t<box flexDirection=\"column\" gap={1}>\n\t\t\t{props.title ? <text fg={theme.accent}>{props.title}</text> : null}\n\t\t\t<For each={props.changes}>{(change) => <FileChangeCard change={change} />}</For>\n\t\t</box>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["For","Show","formatToolDiffStats","toolFileChangeLocation","wepscliShellTheme","theme","MAX_DIFF_LINES","MAX_PREVIEW_LINES","diffLineColor","line","kind","success","danger","text","muted","formatDiffLine","rawText","prefix","lineNumber","padStart","content","sliceMultiline","maxLines","lines","replace","split","visibleLines","slice","hiddenLineCount","Math","max","length","previewLabel","change","changeTone","warning","accent","DiffPreview","props","_el$","_$createElement","_$setProp","_$insert","_$createComponent","each","children","_el$5","_$effect","_$p","when","_el$2","_el$3","_$createTextNode","_el$4","_$insertNode","_p$","_v$","panelMuted","_v$2","border","e","t","undefined","WritePreview","preview","previewText","_el$6","_el$0","_el$7","_el$8","_el$9","_v$3","_v$4","FileChangeCard","_el$1","_el$10","_el$11","_el$12","_el$13","toUpperCase","summary","diffLines","_el$14","_el$15","_el$16","diffStats","_v$5","_v$6","_$memo","_el$17","_v$7","panelAlt","_v$8","_v$9","accentStrong","_v$0","_v$1","a","o","i","FileChangeCardList","_el$18","_c$","title","_el$19","changes"],"sources":["file-change-preview.tsx"],"sourcesContent":["import { For, Show } from \"solid-js\";\r\nimport { formatToolDiffStats, toolFileChangeLocation, type ToolDiffLine, type ToolFileChange } from \"./tool-file-changes.js\";\r\nimport { wepscliShellTheme as theme } from \"./theme.js\";\r\n\r\nconst MAX_DIFF_LINES = 48;\r\nconst MAX_PREVIEW_LINES = 16;\r\n\r\nfunction diffLineColor(line: ToolDiffLine): string {\r\n\tswitch (line.kind) {\r\n\t\tcase \"added\":\r\n\t\t\treturn theme.success;\r\n\t\tcase \"removed\":\r\n\t\t\treturn theme.danger;\r\n\t\tcase \"context\":\r\n\t\t\treturn theme.text;\r\n\t\tcase \"meta\":\r\n\t\t\treturn theme.muted;\r\n\t}\r\n}\r\n\r\nfunction formatDiffLine(line: ToolDiffLine): string {\r\n\tif (line.kind === \"meta\") {\r\n\t\treturn line.rawText;\r\n\t}\r\n\tconst prefix = line.kind === \"added\" ? \"+\" : line.kind === \"removed\" ? \"-\" : \" \";\r\n\tconst lineNumber = line.lineNumber?.padStart(4, \" \") ?? \" \";\r\n\treturn `${prefix}${lineNumber} ${line.content}`;\r\n}\r\n\r\nfunction sliceMultiline(text: string, maxLines: number): { visibleLines: string[]; hiddenLineCount: number } {\r\n\tconst lines = text.replace(/\\r/g, \"\").split(\"\\n\");\r\n\treturn {\r\n\t\tvisibleLines: lines.slice(0, maxLines),\r\n\t\thiddenLineCount: Math.max(0, lines.length - maxLines),\r\n\t};\r\n}\r\n\r\nfunction previewLabel(change: ToolFileChange): string {\r\n\treturn change.kind === \"edit\" ? \"Diff\" : \"Preview\";\r\n}\r\n\r\nfunction changeTone(change: ToolFileChange): string {\r\n\treturn change.kind === \"edit\" ? theme.warning : theme.accent;\r\n}\r\n\r\nfunction DiffPreview(props: { lines: ToolDiffLine[] }) {\r\n\tconst visibleLines = () => props.lines.slice(0, MAX_DIFF_LINES);\r\n\tconst hiddenLineCount = () => Math.max(0, props.lines.length - MAX_DIFF_LINES);\r\n\r\n\treturn (\r\n\t\t<box backgroundColor={theme.panelMuted} border={[\"left\"]} borderColor={theme.border} paddingLeft={1} flexDirection=\"column\" gap={0}>\r\n\t\t\t<For each={visibleLines()}>{(line) => <text fg={diffLineColor(line)}>{formatDiffLine(line)}</text>}</For>\r\n\t\t\t<Show when={hiddenLineCount() > 0}>\r\n\t\t\t\t<text fg={theme.muted}>... {hiddenLineCount()} more diff lines</text>\r\n\t\t\t</Show>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nfunction WritePreview(props: { previewText: string }) {\r\n\tconst preview = () => sliceMultiline(props.previewText, MAX_PREVIEW_LINES);\r\n\r\n\treturn (\r\n\t\t<box backgroundColor={theme.panelMuted} border={[\"left\"]} borderColor={theme.border} paddingLeft={1} flexDirection=\"column\" gap={0}>\r\n\t\t\t<For each={preview().visibleLines}>{(line) => <text fg={theme.text}>{line || \" \"}</text>}</For>\r\n\t\t\t<Show when={preview().hiddenLineCount > 0}>\r\n\t\t\t\t<text fg={theme.muted}>... {preview().hiddenLineCount} more preview lines</text>\r\n\t\t\t</Show>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nexport function FileChangeCard(props: { change: ToolFileChange }) {\r\n\treturn (\r\n\t\t<box\r\n\t\t\tbackgroundColor={theme.panelAlt}\r\n\t\t\tborder={[\"top\", \"right\", \"bottom\", \"left\"]}\r\n\t\t\tborderColor={changeTone(props.change)}\r\n\t\t\tpadding={1}\r\n\t\t\tflexDirection=\"column\"\r\n\t\t\tgap={1}\r\n\t\t>\r\n\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t<text fg={theme.accentStrong}>{toolFileChangeLocation(props.change)}</text>\r\n\t\t\t\t<text fg={changeTone(props.change)}>{props.change.kind.toUpperCase()}</text>\r\n\t\t\t</box>\r\n\t\t\t<text fg={theme.muted} wrapMode=\"word\">{props.change.summary}</text>\r\n\t\t\t<Show when={props.change.diffLines?.length}>\r\n\t\t\t\t<box flexDirection=\"row\" justifyContent=\"space-between\" gap={1}>\r\n\t\t\t\t\t<text fg={theme.accent}>{previewLabel(props.change)}</text>\r\n\t\t\t\t\t<text fg={theme.muted}>{formatToolDiffStats(props.change.diffStats) ?? \"\"}</text>\r\n\t\t\t\t</box>\r\n\t\t\t\t<DiffPreview lines={props.change.diffLines!} />\r\n\t\t\t</Show>\r\n\t\t\t<Show when={!props.change.diffLines?.length && props.change.previewText}>\r\n\t\t\t\t<text fg={theme.accent}>{previewLabel(props.change)}</text>\r\n\t\t\t\t<WritePreview previewText={props.change.previewText!} />\r\n\t\t\t</Show>\r\n\t\t</box>\r\n\t);\r\n}\r\n\r\nexport function FileChangeCardList(props: { changes: ToolFileChange[]; title?: string }) {\r\n\treturn (\r\n\t\t<box flexDirection=\"column\" gap={1}>\r\n\t\t\t{props.title ? <text fg={theme.accent}>{props.title}</text> : null}\r\n\t\t\t<For each={props.changes}>{(change) => <FileChangeCard change={change} />}</For>\r\n\t\t</box>\r\n\t);\r\n}\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getRuntimeRecoveryHint","message","normalized","toLowerCase","includes","label","nextStep"],"sources":["runtime-recovery.ts"],"sourcesContent":["export interface RuntimeRecoveryHint {\n\tlabel: string;\n\tnextStep: string;\n}\n\nexport function getRuntimeRecoveryHint(message: string): RuntimeRecoveryHint | undefined {\n\tconst normalized = message.toLowerCase();\n\n\tif (\n\t\tnormalized.includes(\"no api key\") ||\n\t\tnormalized.includes(\"api key\") ||\n\t\tnormalized.includes(\"unauthorized\") ||\n\t\tnormalized.includes(\"forbidden\") ||\n\t\tnormalized.includes(\"401\") ||\n\t\tnormalized.includes(\"403\")\n\t) {\n\t\treturn {\n\t\t\tlabel: \"Provider auth issue - ready\",\n\t\t\tnextStep: \"Next: check the active provider credentials, then use /providers or /provider add to fix the endpoint or API key.\",\n\t\t};\n\t}\n\n\tif (\n\t\tnormalized.includes(\"no provider profile selected\") ||\n\t\tnormalized.includes(\"unknown provider profile\") ||\n\t\tnormalized.includes(\"provider profile\")\n\t) {\n\t\treturn {\n\t\t\tlabel: \"Provider setup issue - ready\",\n\t\t\tnextStep: \"Next: use /providers to switch provider, or /provider add to create a working provider profile.\",\n\t\t};\n\t}\n\n\tif (\n\t\tnormalized.includes(\"no model configured\") ||\n\t\t(normalized.includes(\"model\") && (normalized.includes(\"unavailable\") || normalized.includes(\"not found\") || normalized.includes(\"unknown\")))\n\t) {\n\t\treturn {\n\t\t\tlabel: \"Model issue - ready\",\n\t\t\tnextStep: \"Next: use /models to switch to an available model, or /providers to change the active provider.\",\n\t\t};\n\t}\n\n\tif (\n\t\tnormalized.includes(\"rate limit\") ||\n\t\tnormalized.includes(\"429\") ||\n\t\tnormalized.includes(\"too many requests\") ||\n\t\tnormalized.includes(\"quota\")\n\t) {\n\t\treturn {\n\t\t\tlabel: \"Provider busy - ready\",\n\t\t\tnextStep: \"Next: wait and retry, or switch models/providers with /models or /providers.\",\n\t\t};\n\t}\n\n\tif (\n\t\tnormalized.includes(\"fetch failed\") ||\n\t\tnormalized.includes(\"network\") ||\n\t\tnormalized.includes(\"timeout\") ||\n\t\tnormalized.includes(\"timed out\") ||\n\t\tnormalized.includes(\"enotfound\") ||\n\t\tnormalized.includes(\"econn\") ||\n\t\tnormalized.includes(\"socket\") ||\n\t\tnormalized.includes(\"tls\")\n\t) {\n\t\treturn {\n\t\t\tlabel: \"Provider connection issue - ready\",\n\t\t\tnextStep: \"Next: verify the base URL and network path, then retry. If needed, switch provider with /providers.\",\n\t\t};\n\t}\n\n\treturn {\n\t\tlabel: \"Request failed - ready\",\n\t\tnextStep: \"Next: adjust the request and retry. Use /debug if the failure keeps repeating.\",\n\t};\n}\n"],"mappings":"AAKA,OAAO,SAASA,sBAAsBA,CAACC,OAAe,EAAmC;EACxF,MAAMC,UAAU,GAAGD,OAAO,CAACE,WAAW,CAAC,CAAC;EAExC,IACCD,UAAU,CAACE,QAAQ,CAAC,YAAY,CAAC,IACjCF,UAAU,CAACE,QAAQ,CAAC,SAAS,CAAC,IAC9BF,UAAU,CAACE,QAAQ,CAAC,cAAc,CAAC,IACnCF,UAAU,CAACE,QAAQ,CAAC,WAAW,CAAC,IAChCF,UAAU,CAACE,QAAQ,CAAC,KAAK,CAAC,IAC1BF,UAAU,CAACE,QAAQ,CAAC,KAAK,CAAC,EACzB;IACD,OAAO;MACNC,KAAK,EAAE,6BAA6B;MACpCC,QAAQ,EAAE;IACX,CAAC;EACF;EAEA,IACCJ,UAAU,CAACE,QAAQ,CAAC,8BAA8B,CAAC,IACnDF,UAAU,CAACE,QAAQ,CAAC,0BAA0B,CAAC,IAC/CF,UAAU,CAACE,QAAQ,CAAC,kBAAkB,CAAC,EACtC;IACD,OAAO;MACNC,KAAK,EAAE,8BAA8B;MACrCC,QAAQ,EAAE;IACX,CAAC;EACF;EAEA,IACCJ,UAAU,CAACE,QAAQ,CAAC,qBAAqB,CAAC,IACzCF,UAAU,CAACE,QAAQ,CAAC,OAAO,CAAC,KAAKF,UAAU,CAACE,QAAQ,CAAC,aAAa,CAAC,IAAIF,UAAU,CAACE,QAAQ,CAAC,WAAW,CAAC,IAAIF,UAAU,CAACE,QAAQ,CAAC,SAAS,CAAC,CAAE,EAC3I;IACD,OAAO;MACNC,KAAK,EAAE,qBAAqB;MAC5BC,QAAQ,EAAE;IACX,CAAC;EACF;EAEA,IACCJ,UAAU,CAACE,QAAQ,CAAC,YAAY,CAAC,IACjCF,UAAU,CAACE,QAAQ,CAAC,KAAK,CAAC,IAC1BF,UAAU,CAACE,QAAQ,CAAC,mBAAmB,CAAC,IACxCF,UAAU,CAACE,QAAQ,CAAC,OAAO,CAAC,EAC3B;IACD,OAAO;MACNC,KAAK,EAAE,uBAAuB;MAC9BC,QAAQ,EAAE;IACX,CAAC;EACF;EAEA,IACCJ,UAAU,CAACE,QAAQ,CAAC,cAAc,CAAC,IACnCF,UAAU,CAACE,QAAQ,CAAC,SAAS,CAAC,IAC9BF,UAAU,CAACE,QAAQ,CAAC,SAAS,CAAC,IAC9BF,UAAU,CAACE,QAAQ,CAAC,WAAW,CAAC,IAChCF,UAAU,CAACE,QAAQ,CAAC,WAAW,CAAC,IAChCF,UAAU,CAACE,QAAQ,CAAC,OAAO,CAAC,IAC5BF,UAAU,CAACE,QAAQ,CAAC,QAAQ,CAAC,IAC7BF,UAAU,CAACE,QAAQ,CAAC,KAAK,CAAC,EACzB;IACD,OAAO;MACNC,KAAK,EAAE,mCAAmC;MAC1CC,QAAQ,EAAE;IACX,CAAC;EACF;EAEA,OAAO;IACND,KAAK,EAAE,wBAAwB;IAC/BC,QAAQ,EAAE;EACX,CAAC;AACF","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["getRuntimeRecoveryHint","message","normalized","toLowerCase","includes","label","nextStep"],"sources":["runtime-recovery.ts"],"sourcesContent":["export interface RuntimeRecoveryHint {\r\n\tlabel: string;\r\n\tnextStep: string;\r\n}\r\n\r\nexport function getRuntimeRecoveryHint(message: string): RuntimeRecoveryHint | undefined {\r\n\tconst normalized = message.toLowerCase();\r\n\r\n\tif (\r\n\t\tnormalized.includes(\"no api key\") ||\r\n\t\tnormalized.includes(\"api key\") ||\r\n\t\tnormalized.includes(\"unauthorized\") ||\r\n\t\tnormalized.includes(\"forbidden\") ||\r\n\t\tnormalized.includes(\"401\") ||\r\n\t\tnormalized.includes(\"403\")\r\n\t) {\r\n\t\treturn {\r\n\t\t\tlabel: \"Provider auth issue - ready\",\r\n\t\t\tnextStep: \"Next: check the active provider credentials, then use /providers or /provider add to fix the endpoint or API key.\",\r\n\t\t};\r\n\t}\r\n\r\n\tif (\r\n\t\tnormalized.includes(\"no provider profile selected\") ||\r\n\t\tnormalized.includes(\"unknown provider profile\") ||\r\n\t\tnormalized.includes(\"provider profile\")\r\n\t) {\r\n\t\treturn {\r\n\t\t\tlabel: \"Provider setup issue - ready\",\r\n\t\t\tnextStep: \"Next: use /providers to switch provider, or /provider add to create a working provider profile.\",\r\n\t\t};\r\n\t}\r\n\r\n\tif (\r\n\t\tnormalized.includes(\"no model configured\") ||\r\n\t\t(normalized.includes(\"model\") && (normalized.includes(\"unavailable\") || normalized.includes(\"not found\") || normalized.includes(\"unknown\")))\r\n\t) {\r\n\t\treturn {\r\n\t\t\tlabel: \"Model issue - ready\",\r\n\t\t\tnextStep: \"Next: use /models to switch to an available model, or /providers to change the active provider.\",\r\n\t\t};\r\n\t}\r\n\r\n\tif (\r\n\t\tnormalized.includes(\"rate limit\") ||\r\n\t\tnormalized.includes(\"429\") ||\r\n\t\tnormalized.includes(\"too many requests\") ||\r\n\t\tnormalized.includes(\"quota\")\r\n\t) {\r\n\t\treturn {\r\n\t\t\tlabel: \"Provider busy - ready\",\r\n\t\t\tnextStep: \"Next: wait and retry, or switch models/providers with /models or /providers.\",\r\n\t\t};\r\n\t}\r\n\r\n\tif (\r\n\t\tnormalized.includes(\"fetch failed\") ||\r\n\t\tnormalized.includes(\"network\") ||\r\n\t\tnormalized.includes(\"timeout\") ||\r\n\t\tnormalized.includes(\"timed out\") ||\r\n\t\tnormalized.includes(\"enotfound\") ||\r\n\t\tnormalized.includes(\"econn\") ||\r\n\t\tnormalized.includes(\"socket\") ||\r\n\t\tnormalized.includes(\"tls\")\r\n\t) {\r\n\t\treturn {\r\n\t\t\tlabel: \"Provider connection issue - ready\",\r\n\t\t\tnextStep: \"Next: verify the base URL and network path, then retry. If needed, switch provider with /providers.\",\r\n\t\t};\r\n\t}\r\n\r\n\treturn {\r\n\t\tlabel: \"Request failed - ready\",\r\n\t\tnextStep: \"Next: adjust the request and retry. Use /debug if the failure keeps repeating.\",\r\n\t};\r\n}\r\n"],"mappings":"AAKA,OAAO,SAASA,sBAAsBA,CAACC,OAAe,EAAmC;EACxF,MAAMC,UAAU,GAAGD,OAAO,CAACE,WAAW,CAAC,CAAC;EAExC,IACCD,UAAU,CAACE,QAAQ,CAAC,YAAY,CAAC,IACjCF,UAAU,CAACE,QAAQ,CAAC,SAAS,CAAC,IAC9BF,UAAU,CAACE,QAAQ,CAAC,cAAc,CAAC,IACnCF,UAAU,CAACE,QAAQ,CAAC,WAAW,CAAC,IAChCF,UAAU,CAACE,QAAQ,CAAC,KAAK,CAAC,IAC1BF,UAAU,CAACE,QAAQ,CAAC,KAAK,CAAC,EACzB;IACD,OAAO;MACNC,KAAK,EAAE,6BAA6B;MACpCC,QAAQ,EAAE;IACX,CAAC;EACF;EAEA,IACCJ,UAAU,CAACE,QAAQ,CAAC,8BAA8B,CAAC,IACnDF,UAAU,CAACE,QAAQ,CAAC,0BAA0B,CAAC,IAC/CF,UAAU,CAACE,QAAQ,CAAC,kBAAkB,CAAC,EACtC;IACD,OAAO;MACNC,KAAK,EAAE,8BAA8B;MACrCC,QAAQ,EAAE;IACX,CAAC;EACF;EAEA,IACCJ,UAAU,CAACE,QAAQ,CAAC,qBAAqB,CAAC,IACzCF,UAAU,CAACE,QAAQ,CAAC,OAAO,CAAC,KAAKF,UAAU,CAACE,QAAQ,CAAC,aAAa,CAAC,IAAIF,UAAU,CAACE,QAAQ,CAAC,WAAW,CAAC,IAAIF,UAAU,CAACE,QAAQ,CAAC,SAAS,CAAC,CAAE,EAC3I;IACD,OAAO;MACNC,KAAK,EAAE,qBAAqB;MAC5BC,QAAQ,EAAE;IACX,CAAC;EACF;EAEA,IACCJ,UAAU,CAACE,QAAQ,CAAC,YAAY,CAAC,IACjCF,UAAU,CAACE,QAAQ,CAAC,KAAK,CAAC,IAC1BF,UAAU,CAACE,QAAQ,CAAC,mBAAmB,CAAC,IACxCF,UAAU,CAACE,QAAQ,CAAC,OAAO,CAAC,EAC3B;IACD,OAAO;MACNC,KAAK,EAAE,uBAAuB;MAC9BC,QAAQ,EAAE;IACX,CAAC;EACF;EAEA,IACCJ,UAAU,CAACE,QAAQ,CAAC,cAAc,CAAC,IACnCF,UAAU,CAACE,QAAQ,CAAC,SAAS,CAAC,IAC9BF,UAAU,CAACE,QAAQ,CAAC,SAAS,CAAC,IAC9BF,UAAU,CAACE,QAAQ,CAAC,WAAW,CAAC,IAChCF,UAAU,CAACE,QAAQ,CAAC,WAAW,CAAC,IAChCF,UAAU,CAACE,QAAQ,CAAC,OAAO,CAAC,IAC5BF,UAAU,CAACE,QAAQ,CAAC,QAAQ,CAAC,IAC7BF,UAAU,CAACE,QAAQ,CAAC,KAAK,CAAC,EACzB;IACD,OAAO;MACNC,KAAK,EAAE,mCAAmC;MAC1CC,QAAQ,EAAE;IACX,CAAC;EACF;EAEA,OAAO;IACND,KAAK,EAAE,wBAAwB;IAC/BC,QAAQ,EAAE;EACX,CAAC;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export function getSessionApprovalRequest(requests, sessionId) {
|
|
2
|
+
if (!sessionId) {
|
|
3
|
+
return undefined;
|
|
4
|
+
}
|
|
5
|
+
return requests.find(request => request.sessionId === sessionId);
|
|
6
|
+
}
|
|
7
|
+
export function nextFocusRegionForSession(sessionId, requests) {
|
|
8
|
+
return getSessionApprovalRequest(requests, sessionId) ? "overlay" : "composer";
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getSessionApprovalRequest","requests","sessionId","undefined","find","request","nextFocusRegionForSession"],"sources":["session-consistency.ts"],"sourcesContent":["import type { ToolApprovalRequest } from \"./tool-approval.js\";\nimport type { ShellFocus } from \"./types.js\";\n\nexport function getSessionApprovalRequest(\n\trequests: ToolApprovalRequest[],\n\tsessionId?: string,\n): ToolApprovalRequest | undefined {\n\tif (!sessionId) {\n\t\treturn undefined;\n\t}\n\treturn requests.find((request) => request.sessionId === sessionId);\n}\n\nexport function nextFocusRegionForSession(\n\tsessionId: string | undefined,\n\trequests: ToolApprovalRequest[],\n): ShellFocus {\n\treturn getSessionApprovalRequest(requests, sessionId) ? \"overlay\" : \"composer\";\n}\n"],"mappings":"AAGA,OAAO,SAASA,yBAAyBA,CACxCC,QAA+B,EAC/BC,SAAkB,EACgB;EAClC,IAAI,CAACA,SAAS,EAAE;IACf,OAAOC,SAAS;EACjB;EACA,OAAOF,QAAQ,CAACG,IAAI,CAAEC,OAAO,IAAKA,OAAO,CAACH,SAAS,KAAKA,SAAS,CAAC;AACnE;AAEA,OAAO,SAASI,yBAAyBA,CACxCJ,SAA6B,EAC7BD,QAA+B,EAClB;EACb,OAAOD,yBAAyB,CAACC,QAAQ,EAAEC,SAAS,CAAC,GAAG,SAAS,GAAG,UAAU;AAC/E","ignoreList":[]}
|