maestro-flow 0.4.3 → 0.4.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/.claude/commands/maestro-collab.md +1 -1
- package/.claude/commands/maestro-composer.md +1 -1
- package/.claude/commands/maestro-impeccable.md +1 -1
- package/.claude/commands/maestro-learn.md +1 -1
- package/.claude/commands/maestro-overlay.md +1 -1
- package/.claude/commands/maestro-quick.md +1 -1
- package/.claude/commands/maestro-ralph.md +1 -1
- package/.claude/commands/maestro-tools-execute.md +1 -1
- package/.claude/commands/maestro-tools-register.md +1 -1
- package/.claude/commands/maestro.md +1 -1
- package/.claude/commands/manage-issue-discover.md +1 -1
- package/.claude/commands/manage-issue.md +1 -1
- package/.claude/commands/manage-knowhow-capture.md +3 -1
- package/.claude/commands/manage-knowhow.md +1 -1
- package/.claude/commands/manage-learn.md +1 -1
- package/.claude/commands/manage-status.md +1 -0
- package/.claude/commands/manage-wiki.md +1 -1
- package/.claude/commands/quality-auto-test.md +1 -2
- package/.claude/commands/quality-refactor.md +1 -1
- package/.claude/commands/quality-test.md +5 -0
- package/.claude/commands/security-audit.md +1 -0
- package/.claude/commands/spec-add.md +6 -3
- package/.claude/commands/spec-setup.md +0 -3
- package/dashboard/dist/assets/{ArtifactsPage-iJZtYsmR.js → ArtifactsPage-CVh0Z2I2.js} +3 -3
- package/dashboard/dist/assets/{ChatInput-DNnDLdQF.js → ChatInput-CBI3qHQQ.js} +2 -2
- package/dashboard/dist/assets/ChatPage-BjJ9CYox.js +22 -0
- package/dashboard/dist/assets/CollabPage-CprGGO9y.js +1 -0
- package/dashboard/dist/assets/{ExecutionPanel-BKV3GZ7Q.js → ExecutionPanel-CClxD7cH.js} +1 -1
- package/dashboard/dist/assets/KanbanPage-copqjdPg.js +16 -0
- package/dashboard/dist/assets/MaestroCoordinatePage-CioZjQ9N.js +4 -0
- package/dashboard/dist/assets/{MarkdownRenderer-cYFfe1uX.js → MarkdownRenderer-CtUhoxCT.js} +1 -1
- package/dashboard/dist/assets/McpPage-BcPPcJpr.js +21 -0
- package/dashboard/dist/assets/{MeetingRoomPage-wnvT7wlB.js → MeetingRoomPage-BgmAKxU-.js} +1 -1
- package/dashboard/dist/assets/{OutputPanel-DDL90Idy.js → OutputPanel-DgT3gMyp.js} +1 -1
- package/dashboard/dist/assets/{ProblemsPanel-zFN9IIs0.js → ProblemsPanel-BmG7rxoG.js} +1 -1
- package/dashboard/dist/assets/{RequirementBoardPage-DOPJoT0I.js → RequirementBoardPage-k8YoeQ0r.js} +1 -1
- package/dashboard/dist/assets/{RequirementPage-CEVquRgM.js → RequirementPage-Da2354px.js} +1 -1
- package/dashboard/dist/assets/{RoomsPage-D5USEWDh.js → RoomsPage-BtqDiYaU.js} +1 -1
- package/dashboard/dist/assets/SpecsPage-ByPVH_M3.js +36 -0
- package/dashboard/dist/assets/{TeamsPage-DlcEmr_Q.js → TeamsPage-sFDLN30L.js} +1 -1
- package/dashboard/dist/assets/{TreeBrowser-Y48Wz-QY.js → TreeBrowser-oEx8YJXV.js} +1 -1
- package/dashboard/dist/assets/WorkflowPage-JrX7CVHh.js +6 -0
- package/dashboard/dist/assets/{arrow-left-NCUOENvg.js → arrow-left-DYvgSdIH.js} +1 -1
- package/dashboard/dist/assets/{check-o7nfGNHf.js → check-jcgYBWVR.js} +1 -1
- package/dashboard/dist/assets/{chevron-right-BXySK2fn.js → chevron-right-DvZ5sMOg.js} +1 -1
- package/dashboard/dist/assets/{circle-cooAwnAR.js → circle-DYT-zoRZ.js} +1 -1
- package/dashboard/dist/assets/{circle-alert-DcSBokh4.js → circle-alert-Bfbv3gt4.js} +1 -1
- package/dashboard/dist/assets/{circle-check-Cd-jce4j.js → circle-check-D82WnpbI.js} +1 -1
- package/dashboard/dist/assets/{circle-check-big-BN7Mdp4i.js → circle-check-big-CPVD1GKF.js} +1 -1
- package/dashboard/dist/assets/{code-BQa9oL1n.js → code-B3bKFGI4.js} +1 -1
- package/dashboard/dist/assets/{columns-3-BzgxelGx.js → columns-3-BeMAQCix.js} +1 -1
- package/dashboard/dist/assets/{download-swRJnate.js → download-BCtpoWYB.js} +1 -1
- package/dashboard/dist/assets/en-2h6fD0j8.js +1 -0
- package/dashboard/dist/assets/{folder-DbGbLNFN.js → folder-CTj6SNNu.js} +1 -1
- package/dashboard/dist/assets/index-6-yE5Yl9.css +1 -0
- package/dashboard/dist/assets/{index-DIoMBMbv.js → index-BxR_3IbJ.js} +1 -1
- package/dashboard/dist/assets/{index-DLBN_7fb.js → index-CWBJLu42.js} +1 -1
- package/dashboard/dist/assets/index-DpcPd-UG.js +236 -0
- package/dashboard/dist/assets/{list-BTRAIvDq.js → list-BMv8pIQn.js} +1 -1
- package/dashboard/dist/assets/{loader-NHtB6Mdn.js → loader-DdM4VOgF.js} +1 -1
- package/dashboard/dist/assets/{minus-BjMxRTET.js → minus-D15s2E__.js} +1 -1
- package/dashboard/dist/assets/{pen-line-C4_O16H0.js → pen-line-DO6o4xWz.js} +1 -1
- package/dashboard/dist/assets/{pencil-DTmKhyDY.js → pencil-qGxg9jOe.js} +1 -1
- package/dashboard/dist/assets/{proxy-Dtx5p6IO.js → proxy-DOffTzwA.js} +1 -1
- package/dashboard/dist/assets/refresh-cw-C9UNdLCy.js +6 -0
- package/dashboard/dist/assets/{rows-2-GR1dZtRu.js → rows-2-CifAA5SL.js} +1 -1
- package/dashboard/dist/assets/{search-DVtgy2W7.js → search-pe7pU1YN.js} +1 -1
- package/dashboard/dist/assets/{shallow-BOmvDNsv.js → shallow-r7YynQYA.js} +1 -1
- package/dashboard/dist/assets/table-Bh772iIw.js +6 -0
- package/dashboard/dist/assets/{team-types-BPeOvVdA.js → team-types-C_HqX2p2.js} +1 -1
- package/dashboard/dist/assets/{terminal-CzogW4cl.js → terminal-EpmtGBlw.js} +1 -1
- package/dashboard/dist/assets/{trash-2-52LATVfW.js → trash-2-Xen46iNQ.js} +1 -1
- package/dashboard/dist/assets/{users-DLFE2voE.js → users-BLueDPxF.js} +1 -1
- package/dashboard/dist/assets/{zap-DhiYlgyZ.js → zap-DsQCPF61.js} +1 -1
- package/dashboard/dist/assets/zh-CN-r3AvxxOL.js +1 -0
- package/dashboard/dist/index.html +2 -2
- package/dashboard/dist-server/dashboard/src/server/routes/settings.js +70 -1
- package/dashboard/dist-server/dashboard/src/server/routes/settings.js.map +1 -1
- package/dashboard/dist-server/src/types/index.d.ts +48 -6
- package/dist/src/commands/coordinate.d.ts.map +1 -1
- package/dist/src/commands/coordinate.js +2 -0
- package/dist/src/commands/coordinate.js.map +1 -1
- package/dist/src/commands/hooks.d.ts.map +1 -1
- package/dist/src/commands/hooks.js +201 -6
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/spec.d.ts.map +1 -1
- package/dist/src/commands/spec.js +466 -0
- package/dist/src/commands/spec.js.map +1 -1
- package/dist/src/config/index.d.ts +5 -1
- package/dist/src/config/index.d.ts.map +1 -1
- package/dist/src/config/index.js +42 -0
- package/dist/src/config/index.js.map +1 -1
- package/dist/src/hooks/keyword-spec-injector.d.ts.map +1 -1
- package/dist/src/hooks/keyword-spec-injector.js +106 -10
- package/dist/src/hooks/keyword-spec-injector.js.map +1 -1
- package/dist/src/hooks/plugins/spec-analytics-plugin.d.ts +13 -0
- package/dist/src/hooks/plugins/spec-analytics-plugin.d.ts.map +1 -0
- package/dist/src/hooks/plugins/spec-analytics-plugin.js +92 -0
- package/dist/src/hooks/plugins/spec-analytics-plugin.js.map +1 -0
- package/dist/src/hooks/plugins/spec-injection-plugin.d.ts.map +1 -1
- package/dist/src/hooks/plugins/spec-injection-plugin.js +57 -4
- package/dist/src/hooks/plugins/spec-injection-plugin.js.map +1 -1
- package/dist/src/hooks/spec-analytics.d.ts +128 -0
- package/dist/src/hooks/spec-analytics.d.ts.map +1 -0
- package/dist/src/hooks/spec-analytics.js +311 -0
- package/dist/src/hooks/spec-analytics.js.map +1 -0
- package/dist/src/hooks/spec-injector.d.ts.map +1 -1
- package/dist/src/hooks/spec-injector.js +140 -6
- package/dist/src/hooks/spec-injector.js.map +1 -1
- package/dist/src/tools/spec-keyword-index.d.ts.map +1 -1
- package/dist/src/tools/spec-keyword-index.js +23 -6
- package/dist/src/tools/spec-keyword-index.js.map +1 -1
- package/dist/src/tools/spec-loader.d.ts +20 -0
- package/dist/src/tools/spec-loader.d.ts.map +1 -1
- package/dist/src/tools/spec-loader.js +58 -7
- package/dist/src/tools/spec-loader.js.map +1 -1
- package/dist/src/tools/store-knowhow.d.ts.map +1 -1
- package/dist/src/tools/store-knowhow.js +26 -1
- package/dist/src/tools/store-knowhow.js.map +1 -1
- package/dist/src/tui/config-ui/ConfigHub.d.ts +1 -1
- package/dist/src/tui/config-ui/ConfigHub.d.ts.map +1 -1
- package/dist/src/tui/config-ui/ConfigHub.js +16 -10
- package/dist/src/tui/config-ui/ConfigHub.js.map +1 -1
- package/dist/src/tui/config-ui/ConfigSourcesView.d.ts.map +1 -1
- package/dist/src/tui/config-ui/ConfigSourcesView.js +3 -2
- package/dist/src/tui/config-ui/ConfigSourcesView.js.map +1 -1
- package/dist/src/tui/config-ui/HooksPanel.d.ts.map +1 -1
- package/dist/src/tui/config-ui/HooksPanel.js +15 -19
- package/dist/src/tui/config-ui/HooksPanel.js.map +1 -1
- package/dist/src/tui/config-ui/SkillConfigDashboard.d.ts.map +1 -1
- package/dist/src/tui/config-ui/SkillConfigDashboard.js +5 -9
- package/dist/src/tui/config-ui/SkillConfigDashboard.js.map +1 -1
- package/dist/src/tui/config-ui/SkillParamEditor.d.ts.map +1 -1
- package/dist/src/tui/config-ui/SkillParamEditor.js +1 -3
- package/dist/src/tui/config-ui/SkillParamEditor.js.map +1 -1
- package/dist/src/tui/config-ui/SkillsList.d.ts.map +1 -1
- package/dist/src/tui/config-ui/SkillsList.js +7 -9
- package/dist/src/tui/config-ui/SkillsList.js.map +1 -1
- package/dist/src/tui/config-ui/SpecAnalyticsPanel.d.ts +6 -0
- package/dist/src/tui/config-ui/SpecAnalyticsPanel.d.ts.map +1 -0
- package/dist/src/tui/config-ui/SpecAnalyticsPanel.js +164 -0
- package/dist/src/tui/config-ui/SpecAnalyticsPanel.js.map +1 -0
- package/dist/src/tui/config-ui/SpecPanel.d.ts.map +1 -1
- package/dist/src/tui/config-ui/SpecPanel.js +918 -20
- package/dist/src/tui/config-ui/SpecPanel.js.map +1 -1
- package/dist/src/tui/config-ui/index.d.ts +3 -1
- package/dist/src/tui/config-ui/index.d.ts.map +1 -1
- package/dist/src/tui/config-ui/index.js +4 -0
- package/dist/src/tui/config-ui/index.js.map +1 -1
- package/dist/src/tui/install-ui/BackupConfig.d.ts.map +1 -1
- package/dist/src/tui/install-ui/BackupConfig.js +3 -2
- package/dist/src/tui/install-ui/BackupConfig.js.map +1 -1
- package/dist/src/tui/install-ui/BlueprintPreview.d.ts.map +1 -1
- package/dist/src/tui/install-ui/BlueprintPreview.js +7 -6
- package/dist/src/tui/install-ui/BlueprintPreview.js.map +1 -1
- package/dist/src/tui/install-ui/ComponentGrid.d.ts.map +1 -1
- package/dist/src/tui/install-ui/ComponentGrid.js +3 -2
- package/dist/src/tui/install-ui/ComponentGrid.js.map +1 -1
- package/dist/src/tui/install-ui/ConfigPanel.d.ts.map +1 -1
- package/dist/src/tui/install-ui/ConfigPanel.js +4 -3
- package/dist/src/tui/install-ui/ConfigPanel.js.map +1 -1
- package/dist/src/tui/install-ui/CyberItem.d.ts.map +1 -1
- package/dist/src/tui/install-ui/CyberItem.js +7 -6
- package/dist/src/tui/install-ui/CyberItem.js.map +1 -1
- package/dist/src/tui/install-ui/CyberdeckBlueprint.d.ts.map +1 -1
- package/dist/src/tui/install-ui/CyberdeckBlueprint.js +2 -1
- package/dist/src/tui/install-ui/CyberdeckBlueprint.js.map +1 -1
- package/dist/src/tui/install-ui/ExecutionView.d.ts.map +1 -1
- package/dist/src/tui/install-ui/ExecutionView.js +3 -2
- package/dist/src/tui/install-ui/ExecutionView.js.map +1 -1
- package/dist/src/tui/install-ui/GradientHeader.d.ts.map +1 -1
- package/dist/src/tui/install-ui/GradientHeader.js +2 -1
- package/dist/src/tui/install-ui/GradientHeader.js.map +1 -1
- package/dist/src/tui/install-ui/HooksConfig.d.ts.map +1 -1
- package/dist/src/tui/install-ui/HooksConfig.js +8 -8
- package/dist/src/tui/install-ui/HooksConfig.js.map +1 -1
- package/dist/src/tui/install-ui/InstallConfirm.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallConfirm.js +4 -3
- package/dist/src/tui/install-ui/InstallConfirm.js.map +1 -1
- package/dist/src/tui/install-ui/InstallExecution.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallExecution.js +3 -2
- package/dist/src/tui/install-ui/InstallExecution.js.map +1 -1
- package/dist/src/tui/install-ui/InstallFlow.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallFlow.js +3 -2
- package/dist/src/tui/install-ui/InstallFlow.js.map +1 -1
- package/dist/src/tui/install-ui/InstallHub.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallHub.js +9 -8
- package/dist/src/tui/install-ui/InstallHub.js.map +1 -1
- package/dist/src/tui/install-ui/InstallResult.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallResult.js +3 -2
- package/dist/src/tui/install-ui/InstallResult.js.map +1 -1
- package/dist/src/tui/install-ui/McpConfig.d.ts.map +1 -1
- package/dist/src/tui/install-ui/McpConfig.js +4 -3
- package/dist/src/tui/install-ui/McpConfig.js.map +1 -1
- package/dist/src/tui/install-ui/ResultDashboard.d.ts.map +1 -1
- package/dist/src/tui/install-ui/ResultDashboard.js +3 -2
- package/dist/src/tui/install-ui/ResultDashboard.js.map +1 -1
- package/dist/src/tui/install-ui/ReviewPanel.d.ts.map +1 -1
- package/dist/src/tui/install-ui/ReviewPanel.js +2 -1
- package/dist/src/tui/install-ui/ReviewPanel.js.map +1 -1
- package/dist/src/tui/install-ui/StatuslineConfig.d.ts.map +1 -1
- package/dist/src/tui/install-ui/StatuslineConfig.js +3 -2
- package/dist/src/tui/install-ui/StatuslineConfig.js.map +1 -1
- package/dist/src/tui/install-ui/StepSelector.d.ts.map +1 -1
- package/dist/src/tui/install-ui/StepSelector.js +11 -10
- package/dist/src/tui/install-ui/StepSelector.js.map +1 -1
- package/dist/src/tui/overlay-ui/OverlayList.d.ts.map +1 -1
- package/dist/src/tui/overlay-ui/OverlayList.js +8 -12
- package/dist/src/tui/overlay-ui/OverlayList.js.map +1 -1
- package/dist/src/tui/shared/components.d.ts +56 -0
- package/dist/src/tui/shared/components.d.ts.map +1 -0
- package/dist/src/tui/shared/components.js +55 -0
- package/dist/src/tui/shared/components.js.map +1 -0
- package/dist/src/tui/shared/helpers.d.ts +24 -0
- package/dist/src/tui/shared/helpers.d.ts.map +1 -0
- package/dist/src/tui/shared/helpers.js +49 -0
- package/dist/src/tui/shared/helpers.js.map +1 -0
- package/dist/src/tui/shared/index.d.ts +4 -0
- package/dist/src/tui/shared/index.d.ts.map +1 -0
- package/dist/src/tui/shared/index.js +7 -0
- package/dist/src/tui/shared/index.js.map +1 -0
- package/dist/src/tui/shared/tokens.d.ts +79 -0
- package/dist/src/tui/shared/tokens.d.ts.map +1 -0
- package/dist/src/tui/shared/tokens.js +81 -0
- package/dist/src/tui/shared/tokens.js.map +1 -0
- package/dist/src/tui/tools-ui/CommandReference.d.ts.map +1 -1
- package/dist/src/tui/tools-ui/CommandReference.js +2 -4
- package/dist/src/tui/tools-ui/CommandReference.js.map +1 -1
- package/dist/src/tui/tools-ui/ConfigSources.d.ts.map +1 -1
- package/dist/src/tui/tools-ui/ConfigSources.js +3 -2
- package/dist/src/tui/tools-ui/ConfigSources.js.map +1 -1
- package/dist/src/tui/tools-ui/RegisterSettings.d.ts.map +1 -1
- package/dist/src/tui/tools-ui/RegisterSettings.js +2 -1
- package/dist/src/tui/tools-ui/RegisterSettings.js.map +1 -1
- package/dist/src/tui/tools-ui/RoleMappings.d.ts.map +1 -1
- package/dist/src/tui/tools-ui/RoleMappings.js +3 -5
- package/dist/src/tui/tools-ui/RoleMappings.js.map +1 -1
- package/dist/src/tui/tools-ui/ToolsDashboard.d.ts.map +1 -1
- package/dist/src/tui/tools-ui/ToolsDashboard.js +3 -5
- package/dist/src/tui/tools-ui/ToolsDashboard.js.map +1 -1
- package/dist/src/tui/tools-ui/ToolsOverview.d.ts.map +1 -1
- package/dist/src/tui/tools-ui/ToolsOverview.js +3 -5
- package/dist/src/tui/tools-ui/ToolsOverview.js.map +1 -1
- package/dist/src/tui/uninstall-ui/UninstallFlow.d.ts.map +1 -1
- package/dist/src/tui/uninstall-ui/UninstallFlow.js +8 -7
- package/dist/src/tui/uninstall-ui/UninstallFlow.js.map +1 -1
- package/dist/src/types/index.d.ts +48 -6
- package/dist/src/types/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/workflows/knowhow.md +15 -1
- package/workflows/specs-add.md +12 -4
- package/dashboard/dist/assets/ChatPage-BjBibfE4.js +0 -22
- package/dashboard/dist/assets/CollabPage-8lUMUol_.js +0 -1
- package/dashboard/dist/assets/KanbanPage-diY3QmGd.js +0 -21
- package/dashboard/dist/assets/McpPage-COjuIf7U.js +0 -21
- package/dashboard/dist/assets/SpecsPage-BOwBin_o.js +0 -36
- package/dashboard/dist/assets/SupervisorPage-5iRyMU5T.js +0 -6
- package/dashboard/dist/assets/WorkflowPage-CmQaRVgL.js +0 -6
- package/dashboard/dist/assets/en-C_BD3UCD.js +0 -1
- package/dashboard/dist/assets/index-BEUaOz_b.css +0 -1
- package/dashboard/dist/assets/index-uIqUCT8y.js +0 -236
- package/dashboard/dist/assets/table-DCzuJAFh.js +0 -6
- package/dashboard/dist/assets/zh-CN-DvQKfow3.js +0 -1
|
@@ -7,6 +7,7 @@ import { checkSkillContextHook } from '../../commands/config.js';
|
|
|
7
7
|
import { SkillsList } from './SkillsList.js';
|
|
8
8
|
import { SkillParamEditor } from './SkillParamEditor.js';
|
|
9
9
|
import { ConfigSourcesView } from './ConfigSourcesView.js';
|
|
10
|
+
import { C, SP, BORDER, SYM, pad, KeyHints, SectionHeader, StatusBadge } from '../shared/index.js';
|
|
10
11
|
export function SkillConfigDashboard({ workDir, initialView, editSkill }) {
|
|
11
12
|
const { exit } = useApp();
|
|
12
13
|
const [view, setView] = useState(initialView ?? 'dashboard');
|
|
@@ -51,14 +52,9 @@ export function SkillConfigDashboard({ workDir, initialView, editSkill }) {
|
|
|
51
52
|
// Dashboard view
|
|
52
53
|
const configuredSkills = Object.entries(config.skills);
|
|
53
54
|
const totalCommands = commandDefs.size;
|
|
54
|
-
return (
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: "green", children: " \u2713" }), _jsx(Text, { bold: true, children: padRight(name, 28) }), _jsxs(Text, { dimColor: true, children: [paramCount, " param", paramCount !== 1 ? 's' : ''] })] }, name));
|
|
59
|
-
}), configuredSkills.length > 8 && (_jsxs(Text, { dimColor: true, children: [" ... and ", configuredSkills.length - 8, " more"] }))] })), _jsx(Text, { children: " " }), _jsxs(Box, { gap: 2, children: [_jsx(Text, { color: "cyan", children: "[1]" }), _jsx(Text, { children: "Skills" }), _jsx(Text, { color: "cyan", children: "[2]" }), _jsx(Text, { children: "Config Sources" })] }), _jsx(Text, { dimColor: true, children: " [q] Quit" })] }) }));
|
|
60
|
-
}
|
|
61
|
-
function padRight(s, width) {
|
|
62
|
-
return s.length >= width ? s : s + ' '.repeat(width - s.length);
|
|
55
|
+
return (_jsxs(Box, { flexDirection: "column", paddingX: SP.detailPadX, children: [_jsxs(Box, { ...BORDER.primary, flexDirection: "column", paddingX: SP.panelPadX, paddingY: SP.panelPadY, children: [_jsx(SectionHeader, { title: "MAESTRO SKILL CONFIG" }), _jsx(Text, { children: " " }), _jsxs(Box, { gap: SP.tabGap, children: [_jsx(Text, { children: "Commands discovered:" }), _jsx(Text, { bold: true, color: C.success, children: totalCommands })] }), _jsxs(Box, { gap: SP.tabGap, children: [_jsx(Text, { children: "Skills with defaults:" }), _jsx(Text, { bold: true, color: C.warning, children: configuredSkills.length })] }), _jsxs(Box, { gap: SP.tabGap, children: [_jsx(Text, { children: "Hook (skill-context):" }), _jsx(StatusBadge, { enabled: hookStatus === 'installed', labels: { on: 'installed', off: 'not installed' } })] }), hookStatus === 'not-installed' && (_jsx(Box, { marginTop: SP.sectionGap, children: _jsx(Text, { color: C.error, children: " Parameter injection requires the skill-context hook." }) })), hookStatus === 'not-installed' && (_jsx(Text, { dimColor: true, children: " Run: maestro hooks install --level standard" })), configuredSkills.length > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: "Configured:" }), configuredSkills.slice(0, 8).map(([name, defaults]) => {
|
|
56
|
+
const paramCount = Object.keys(defaults.params).length;
|
|
57
|
+
return (_jsxs(Box, { gap: SP.inlineGap, children: [_jsxs(Text, { color: C.success, children: [" ", SYM.enabled] }), _jsx(Text, { bold: true, children: pad(name, 28) }), _jsxs(Text, { dimColor: true, children: [paramCount, " param", paramCount !== 1 ? 's' : ''] })] }, name));
|
|
58
|
+
}), configuredSkills.length > 8 && (_jsxs(Text, { dimColor: true, children: [" ... and ", configuredSkills.length - 8, " more"] }))] })), _jsx(Text, { children: " " }), _jsxs(Box, { gap: SP.tabGap, children: [_jsx(Text, { color: C.primary, children: "[1]" }), _jsx(Text, { children: "Skills" }), _jsx(Text, { color: C.primary, children: "[2]" }), _jsx(Text, { children: "Config Sources" })] })] }), _jsx(KeyHints, { hints: "[1-2] Select [q] Quit" })] }));
|
|
63
59
|
}
|
|
64
60
|
//# sourceMappingURL=SkillConfigDashboard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkillConfigDashboard.js","sourceRoot":"","sources":["../../../../src/tui/config-ui/SkillConfigDashboard.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAClD,OAAO,EACL,eAAe,GAEhB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,kBAAkB,GAEnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"SkillConfigDashboard.js","sourceRoot":"","sources":["../../../../src/tui/config-ui/SkillConfigDashboard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkillParamEditor.d.ts","sourceRoot":"","sources":["../../../../src/tui/config-ui/SkillParamEditor.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,UAAU,EAEhB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"SkillParamEditor.d.ts","sourceRoot":"","sources":["../../../../src/tui/config-ui/SkillParamEditor.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,UAAU,EAEhB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,8BAA8B,CAAC;AAGtC,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAID,wBAAgB,gBAAgB,CAAC,EAC/B,SAAS,EACT,UAAU,EACV,MAAM,EACN,OAAO,EACP,MAAM,EACN,QAAQ,GACT,EAAE,qBAAqB,2CAoMvB"}
|
|
@@ -4,6 +4,7 @@ import { Box, Text, useInput } from 'ink';
|
|
|
4
4
|
import { TextInput } from '@inkjs/ui';
|
|
5
5
|
import { getConfigurableParams, } from '../../config/argument-hint-parser.js';
|
|
6
6
|
import { setSkillParam, unsetSkillParam, } from '../../config/skill-config.js';
|
|
7
|
+
import { pad } from '../shared/index.js';
|
|
7
8
|
export function SkillParamEditor({ skillName, commandDef, config, workDir, onBack, onReload, }) {
|
|
8
9
|
const params = useMemo(() => {
|
|
9
10
|
if (!commandDef)
|
|
@@ -156,7 +157,4 @@ function parseInputValue(raw, param) {
|
|
|
156
157
|
}
|
|
157
158
|
return raw;
|
|
158
159
|
}
|
|
159
|
-
function pad(s, width) {
|
|
160
|
-
return s.length >= width ? s.slice(0, width) : s + ' '.repeat(width - s.length);
|
|
161
|
-
}
|
|
162
160
|
//# sourceMappingURL=SkillParamEditor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkillParamEditor.js","sourceRoot":"","sources":["../../../../src/tui/config-ui/SkillParamEditor.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EACL,qBAAqB,GAGtB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,aAAa,EACb,eAAe,GAEhB,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"SkillParamEditor.js","sourceRoot":"","sources":["../../../../src/tui/config-ui/SkillParamEditor.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkillsList.d.ts","sourceRoot":"","sources":["../../../../src/tui/config-ui/SkillsList.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,UAAU,EAChB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"SkillsList.d.ts","sourceRoot":"","sources":["../../../../src/tui/config-ui/SkillsList.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,UAAU,EAChB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,8BAA8B,CAAC;AAGtC,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,eAAe,CAAC;IACxB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,eAAe,2CAiHrG"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useState, useMemo } from 'react';
|
|
3
3
|
import { Box, Text, useInput } from 'ink';
|
|
4
4
|
import { TextInput } from '@inkjs/ui';
|
|
5
5
|
import { getConfigurableParams, } from '../../config/argument-hint-parser.js';
|
|
6
6
|
import { resetSkillConfig, } from '../../config/skill-config.js';
|
|
7
|
+
import { C, SYM, SP, pad, wrapCursor, KeyHints, SectionHeader } from '../shared/index.js';
|
|
7
8
|
export function SkillsList({ config, commandDefs, workDir, onBack, onEdit, onReload }) {
|
|
8
9
|
const [cursor, setCursor] = useState(0);
|
|
9
10
|
const [filter, setFilter] = useState('');
|
|
@@ -56,9 +57,9 @@ export function SkillsList({ config, commandDefs, workDir, onBack, onEdit, onRel
|
|
|
56
57
|
return;
|
|
57
58
|
}
|
|
58
59
|
if (key.upArrow)
|
|
59
|
-
setCursor(c => c
|
|
60
|
+
setCursor(c => wrapCursor(c, -1, filtered.length));
|
|
60
61
|
if (key.downArrow)
|
|
61
|
-
setCursor(c => c
|
|
62
|
+
setCursor(c => wrapCursor(c, 1, filtered.length));
|
|
62
63
|
if (key.return && filtered.length > 0) {
|
|
63
64
|
onEdit(filtered[cursor].name);
|
|
64
65
|
}
|
|
@@ -74,7 +75,7 @@ export function SkillsList({ config, commandDefs, workDir, onBack, onEdit, onRel
|
|
|
74
75
|
}
|
|
75
76
|
}
|
|
76
77
|
});
|
|
77
|
-
return (_jsxs(Box, { flexDirection: "column", paddingX:
|
|
78
|
+
return (_jsxs(Box, { flexDirection: "column", paddingX: SP.detailPadX, children: [_jsx(SectionHeader, { title: `Skills (${filtered.length}/${allSkills.length})` }), filterMode ? (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: "yellow", children: "Filter:" }), _jsx(TextInput, { defaultValue: filter, onSubmit: (val) => { setFilter(val); setFilterMode(false); setCursor(0); } })] })) : (filter && _jsxs(Text, { dimColor: true, children: ["Filter: ", filter] })), _jsx(Text, { children: " " }), _jsxs(Box, { gap: 1, children: [_jsxs(Text, { dimColor: true, children: [' ', pad('Skill', 28)] }), _jsx(Text, { dimColor: true, children: pad('Params', 8) }), _jsx(Text, { dimColor: true, children: pad('Set', 6) }), _jsx(Text, { dimColor: true, children: "Hint" })] }), _jsx(Text, { dimColor: true, children: ' ' + '─'.repeat(85) }), visible.map((skill, i) => {
|
|
78
79
|
const idx = pageStart + i;
|
|
79
80
|
const active = idx === cursor;
|
|
80
81
|
const color = active ? 'cyan' : undefined;
|
|
@@ -82,10 +83,7 @@ export function SkillsList({ config, commandDefs, workDir, onBack, onEdit, onRel
|
|
|
82
83
|
const hint = skill.def.argumentHint.length > 38
|
|
83
84
|
? skill.def.argumentHint.slice(0, 35) + '...'
|
|
84
85
|
: skill.def.argumentHint;
|
|
85
|
-
return (_jsxs(Box, { gap: 1, children: [_jsxs(Text, { color: hasConfig ?
|
|
86
|
-
}), filtered.length > PAGE_SIZE && (_jsxs(Text, { dimColor: true, children: [" Page ", Math.floor(cursor / PAGE_SIZE) + 1, "/", Math.ceil(filtered.length / PAGE_SIZE)] })), _jsx(
|
|
87
|
-
}
|
|
88
|
-
function pad(s, width) {
|
|
89
|
-
return s.length >= width ? s.slice(0, width) : s + ' '.repeat(width - s.length);
|
|
86
|
+
return (_jsxs(Box, { gap: 1, children: [_jsxs(Text, { color: hasConfig ? C.success : color, children: [active ? SYM.cursor : ' ', hasConfig ? SYM.dot : ' '] }), _jsx(Text, { bold: active, color: color, children: pad(skill.name, 28) }), _jsx(Text, { color: color, children: pad(String(skill.configurable), 8) }), _jsx(Text, { color: hasConfig ? C.warning : undefined, dimColor: !hasConfig, children: pad(hasConfig ? String(skill.configured) : '—', 6) }), _jsx(Text, { dimColor: true, children: hint || '(no params)' })] }, skill.name));
|
|
87
|
+
}), filtered.length > PAGE_SIZE && (_jsxs(Text, { dimColor: true, children: [" Page ", Math.floor(cursor / PAGE_SIZE) + 1, "/", Math.ceil(filtered.length / PAGE_SIZE)] })), _jsx(KeyHints, { hints: "[\u2191\u2193] Navigate [Enter] Edit [/] Filter [x] Clear defaults [Esc] Back" })] }));
|
|
90
88
|
}
|
|
91
89
|
//# sourceMappingURL=SkillsList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkillsList.js","sourceRoot":"","sources":["../../../../src/tui/config-ui/SkillsList.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EACL,qBAAqB,GAEtB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,gBAAgB,GAEjB,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"SkillsList.js","sourceRoot":"","sources":["../../../../src/tui/config-ui/SkillsList.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export interface SpecAnalyticsPanelProps {
|
|
2
|
+
workDir: string;
|
|
3
|
+
onBack?: () => void;
|
|
4
|
+
}
|
|
5
|
+
export declare function SpecAnalyticsPanel({ workDir, onBack }: SpecAnalyticsPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
//# sourceMappingURL=SpecAnalyticsPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpecAnalyticsPanel.d.ts","sourceRoot":"","sources":["../../../../src/tui/config-ui/SpecAnalyticsPanel.tsx"],"names":[],"mappings":"AAaA,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAgBD,wBAAgB,kBAAkB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,uBAAuB,2CAuG9E"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useState, useEffect, useMemo } from 'react';
|
|
3
|
+
import { Box, Text, useInput, useApp } from 'ink';
|
|
4
|
+
import { C, BORDER, SP, pad } from '../shared/index.js';
|
|
5
|
+
const VIEW_TABS = [
|
|
6
|
+
{ key: 's', mode: 'summary', label: 'summary' },
|
|
7
|
+
{ key: 'r', mode: 'recent', label: 'recent' },
|
|
8
|
+
{ key: 'k', mode: 'keywords', label: 'keywords' },
|
|
9
|
+
{ key: 'a', mode: 'agents', label: 'agents' },
|
|
10
|
+
{ key: 'h', mode: 'hooks', label: 'hooks' },
|
|
11
|
+
];
|
|
12
|
+
// ---------------------------------------------------------------------------
|
|
13
|
+
// Component
|
|
14
|
+
// ---------------------------------------------------------------------------
|
|
15
|
+
export function SpecAnalyticsPanel({ workDir, onBack }) {
|
|
16
|
+
const { exit } = useApp();
|
|
17
|
+
const [mode, setMode] = useState('summary');
|
|
18
|
+
const [entries, setEntries] = useState([]);
|
|
19
|
+
const [stats, setStats] = useState(null);
|
|
20
|
+
const [loading, setLoading] = useState(true);
|
|
21
|
+
const [cursor, setCursor] = useState(0);
|
|
22
|
+
const [expandedIdx, setExpandedIdx] = useState(null);
|
|
23
|
+
// Load data
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
(async () => {
|
|
26
|
+
const { readAnalytics, computeStats, getLogFileSize } = await import('../../hooks/spec-analytics.js');
|
|
27
|
+
const all = readAnalytics(workDir);
|
|
28
|
+
const fileSize = getLogFileSize(workDir);
|
|
29
|
+
setEntries(all);
|
|
30
|
+
setStats(computeStats(all, fileSize));
|
|
31
|
+
setLoading(false);
|
|
32
|
+
})();
|
|
33
|
+
}, [workDir]);
|
|
34
|
+
// Filtered entries for recent view
|
|
35
|
+
const recentEntries = useMemo(() => {
|
|
36
|
+
return [...entries].reverse().slice(0, 100);
|
|
37
|
+
}, [entries]);
|
|
38
|
+
useInput((input, key) => {
|
|
39
|
+
// Mode switching
|
|
40
|
+
for (const tab of VIEW_TABS) {
|
|
41
|
+
if (input === tab.key && !key.ctrl) {
|
|
42
|
+
setMode(tab.mode);
|
|
43
|
+
setCursor(0);
|
|
44
|
+
setExpandedIdx(null);
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
if (input === 'q' || key.escape) {
|
|
49
|
+
if (onBack) {
|
|
50
|
+
onBack();
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
exit();
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
// Cursor navigation for list views
|
|
57
|
+
if (mode === 'recent' || mode === 'keywords' || mode === 'agents' || mode === 'hooks') {
|
|
58
|
+
if (key.upArrow) {
|
|
59
|
+
setCursor(c => Math.max(0, c - 1));
|
|
60
|
+
setExpandedIdx(null);
|
|
61
|
+
}
|
|
62
|
+
if (key.downArrow) {
|
|
63
|
+
setCursor(c => c + 1);
|
|
64
|
+
setExpandedIdx(null);
|
|
65
|
+
}
|
|
66
|
+
if (key.return) {
|
|
67
|
+
setExpandedIdx(prev => prev === cursor ? null : cursor);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
if (loading) {
|
|
72
|
+
return (_jsx(Box, { flexDirection: "column", paddingX: 1, children: _jsxs(Box, { ...BORDER.primary, flexDirection: "column", paddingX: SP.panelPadX, paddingY: SP.panelPadY, children: [_jsx(Text, { bold: true, color: C.primary, children: "SPEC ANALYTICS" }), _jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: "Loading analytics data..." })] }) }));
|
|
73
|
+
}
|
|
74
|
+
if (!stats || entries.length === 0) {
|
|
75
|
+
return (_jsx(Box, { flexDirection: "column", paddingX: 1, children: _jsxs(Box, { ...BORDER.primary, flexDirection: "column", paddingX: SP.panelPadX, paddingY: SP.panelPadY, children: [_jsx(Text, { bold: true, color: C.primary, children: "SPEC ANALYTICS" }), _jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: "No analytics data yet. Spec injection events will be recorded automatically." }), _jsx(Text, { children: " " }), _jsx(Text, { dimColor: true, children: " [q] back" })] }) }));
|
|
76
|
+
}
|
|
77
|
+
return (_jsx(Box, { flexDirection: "column", paddingX: 1, children: _jsxs(Box, { ...BORDER.primary, flexDirection: "column", paddingX: SP.panelPadX, paddingY: SP.panelPadY, children: [_jsx(Text, { bold: true, color: C.primary, children: "SPEC ANALYTICS" }), _jsx(Text, { children: " " }), _jsx(Box, { gap: 1, children: VIEW_TABS.map(tab => (_jsx(Box, { children: tab.mode === mode
|
|
78
|
+
? _jsx(Text, { bold: true, inverse: true, color: C.primary, children: ` [${tab.key}]${tab.label} ` })
|
|
79
|
+
: _jsx(Text, { dimColor: true, children: ` [${tab.key}]${tab.label} ` }) }, tab.key))) }), _jsx(Text, { children: " " }), mode === 'summary' && _jsx(SummaryView, { stats: stats }), mode === 'recent' && _jsx(RecentView, { entries: recentEntries, cursor: cursor, expandedIdx: expandedIdx }), mode === 'keywords' && _jsx(KeywordsView, { stats: stats, cursor: cursor }), mode === 'agents' && _jsx(AgentsView, { stats: stats, cursor: cursor }), mode === 'hooks' && _jsx(HooksView, { stats: stats, cursor: cursor }), _jsx(Text, { children: " " }), _jsxs(Text, { dimColor: true, children: [" [s/r/k/a/h] mode [q] back", mode !== 'summary' ? ' [↑↓] navigate [↵] expand' : ''] })] }) }));
|
|
80
|
+
}
|
|
81
|
+
// ---------------------------------------------------------------------------
|
|
82
|
+
// Sub-views
|
|
83
|
+
// ---------------------------------------------------------------------------
|
|
84
|
+
function SummaryView({ stats }) {
|
|
85
|
+
const hitColor = stats.hitRate >= 80 ? C.success : stats.hitRate >= 50 ? C.warning : C.error;
|
|
86
|
+
const sizeKB = (stats.logFileSize / 1024).toFixed(1);
|
|
87
|
+
const earliest = stats.timeRange.earliest ? stats.timeRange.earliest.slice(0, 10) : '—';
|
|
88
|
+
const latest = stats.timeRange.latest ? stats.timeRange.latest.slice(0, 10) : '—';
|
|
89
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { gap: 2, children: [_jsx(Text, { children: "Total injections:" }), _jsx(Text, { bold: true, children: stats.totalInjections })] }), _jsxs(Box, { gap: 2, children: [_jsx(Text, { children: "Successful:" }), _jsx(Text, { bold: true, color: C.success, children: stats.successfulInjections }), _jsxs(Text, { color: hitColor, children: ["(", stats.hitRate.toFixed(1), "%)"] })] }), _jsxs(Box, { gap: 2, children: [_jsx(Text, { children: "Failed:" }), _jsx(Text, { bold: true, color: C.error, children: stats.failedInjections }), _jsxs(Text, { dimColor: true, children: ["(", (100 - stats.hitRate).toFixed(1), "%)"] })] }), _jsx(Text, { children: " " }), _jsx(Text, { bold: true, children: "By Source:" }), Object.entries(stats.bySource).map(([src, s]) => {
|
|
90
|
+
const rate = s.total > 0 ? ((s.injected / s.total) * 100).toFixed(1) : '0.0';
|
|
91
|
+
return (_jsxs(Box, { gap: 1, children: [_jsxs(Text, { children: [" ", pad(src, 28)] }), _jsx(Text, { bold: true, children: String(s.total).padStart(4) }), _jsxs(Text, { dimColor: true, children: [" (", rate, "% hit)"] })] }, src));
|
|
92
|
+
}), Object.keys(stats.byBudgetAction).length > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsx(Text, { bold: true, children: "Budget Actions:" }), _jsxs(Text, { children: [" ", Object.entries(stats.byBudgetAction).map(([k, v]) => `${k}: ${v}`).join(' ')] })] })), Object.keys(stats.byCategory).length > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsx(Text, { bold: true, children: "Categories:" }), _jsxs(Text, { children: [" ", Object.entries(stats.byCategory).sort((a, b) => b[1] - a[1]).map(([k, v]) => `${k}: ${v}`).join(' ')] })] })), stats.hookStats.totalInvocations > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsxs(Text, { bold: true, children: ["Hook Invocations: ", _jsx(Text, { color: C.primary, children: stats.hookStats.totalInvocations })] }), _jsxs(Text, { children: [" ", Object.entries(stats.hookStats.byHook).sort((a, b) => b[1] - a[1]).map(([k, v]) => `${k}: ${v}`).join(' ')] })] })), Object.keys(stats.cliStats).length > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsx(Text, { bold: true, children: "CLI Endpoints:" }), _jsxs(Text, { children: [" ", Object.entries(stats.cliStats).sort((a, b) => b[1] - a[1]).map(([k, v]) => `${k}: ${v}`).join(' ')] })] })), _jsx(Text, { children: " " }), _jsxs(Text, { dimColor: true, children: [" Log: ", sizeKB, " KB | ", stats.totalEntries, " entries | ", earliest, " ~ ", latest] })] }));
|
|
93
|
+
}
|
|
94
|
+
function RecentView({ entries, cursor, expandedIdx }) {
|
|
95
|
+
const PAGE_SIZE = 20;
|
|
96
|
+
const safeC = Math.min(cursor, Math.max(0, entries.length - 1));
|
|
97
|
+
const pageStart = Math.max(0, safeC - Math.floor(PAGE_SIZE / 2));
|
|
98
|
+
const visible = entries.slice(pageStart, pageStart + PAGE_SIZE);
|
|
99
|
+
if (entries.length === 0)
|
|
100
|
+
return _jsx(Text, { dimColor: true, children: "No events recorded." });
|
|
101
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { dimColor: true, children: [" Showing ", visible.length, " of ", entries.length, " events (newest first)"] }), _jsx(Text, { children: " " }), visible.map((entry, i) => {
|
|
102
|
+
const idx = pageStart + i;
|
|
103
|
+
const selected = idx === safeC;
|
|
104
|
+
const expanded = idx === expandedIdx;
|
|
105
|
+
const ts = entry.timestamp.slice(11, 19);
|
|
106
|
+
if (entry.type === 'injection') {
|
|
107
|
+
const icon = entry.inject ? '\u2713' : '\u2717';
|
|
108
|
+
const iconColor = entry.inject ? C.success : C.error;
|
|
109
|
+
const src = entry.source.replace('spec-', '').slice(0, 18).padEnd(18);
|
|
110
|
+
const agent = (entry.agentType ?? entry.inferredCategory ?? '').slice(0, 20).padEnd(20);
|
|
111
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { children: [_jsxs(Text, { color: selected ? C.primary : undefined, bold: selected, children: [selected ? '\u25B6' : ' ', " ", ts, " "] }), _jsx(Text, { color: iconColor, children: icon }), _jsxs(Text, { children: [" ", src, " ", agent, " "] }), _jsxs(Text, { dimColor: true, children: [entry.specCount, " specs"] }), entry.matchedKeywords && entry.matchedKeywords.length > 0 && (_jsxs(Text, { color: C.warning, children: [" kw:[", entry.matchedKeywords.slice(0, 3).join(','), "]"] })), entry.reason && _jsxs(Text, { dimColor: true, children: [" (", entry.reason, ")"] })] }), expanded && (_jsxs(Box, { flexDirection: "column", paddingLeft: 4, children: [_jsxs(Text, { dimColor: true, children: [" ID: ", entry.id] }), entry.promptSnippet && _jsxs(Text, { dimColor: true, children: [" Prompt: ", entry.promptSnippet.slice(0, 100), "..."] }), entry.categories.length > 0 && _jsxs(Text, { dimColor: true, children: [" Categories: ", entry.categories.join(', ')] }), entry.budgetAction && _jsxs(Text, { dimColor: true, children: [" Budget: ", entry.budgetAction] }), _jsxs(Text, { dimColor: true, children: [" Content: ", entry.contentLength, " chars"] }), entry.matchedEntryIds && _jsxs(Text, { dimColor: true, children: [" Entries: ", entry.matchedEntryIds.join(', ')] }), entry.totalPromptKeywords != null && _jsxs(Text, { dimColor: true, children: [" Prompt keywords: ", entry.totalPromptKeywords, " Dedup filtered: ", entry.dedupFilteredCount ?? 0] })] }))] }, entry.id));
|
|
112
|
+
}
|
|
113
|
+
if (entry.type === 'cli') {
|
|
114
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { children: [_jsxs(Text, { color: selected ? C.primary : undefined, bold: selected, children: [selected ? '\u25B6' : ' ', " ", ts, " "] }), _jsx(Text, { color: C.primary, children: "CLI" }), _jsxs(Text, { children: [" ", entry.command.padEnd(25)] }), _jsx(Text, { dimColor: true, children: JSON.stringify(entry.args) })] }), expanded && (_jsx(Box, { paddingLeft: 4, children: _jsxs(Text, { dimColor: true, children: [" ID: ", entry.id, " Full args: ", JSON.stringify(entry.args, null, 2)] }) }))] }, entry.id));
|
|
115
|
+
}
|
|
116
|
+
if (entry.type === 'hook') {
|
|
117
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { children: [_jsxs(Text, { color: selected ? C.primary : undefined, bold: selected, children: [selected ? '\u25B6' : ' ', " ", ts, " "] }), _jsx(Text, { color: C.warning, children: "HOOK" }), _jsxs(Text, { children: [" ", entry.hookName.padEnd(20)] }), entry.nodeId && _jsxs(Text, { dimColor: true, children: [" node:", entry.nodeId] }), entry.outcome && _jsxs(Text, { dimColor: true, children: [" outcome:", entry.outcome] })] }), expanded && entry.data && (_jsx(Box, { paddingLeft: 4, children: _jsxs(Text, { dimColor: true, children: [" ", JSON.stringify(entry.data)] }) }))] }, entry.id));
|
|
118
|
+
}
|
|
119
|
+
return null;
|
|
120
|
+
})] }));
|
|
121
|
+
}
|
|
122
|
+
function KeywordsView({ stats, cursor }) {
|
|
123
|
+
const kws = stats.keywordStats.topKeywords;
|
|
124
|
+
if (kws.length === 0) {
|
|
125
|
+
return _jsx(Text, { dimColor: true, children: "No keyword matches recorded yet." });
|
|
126
|
+
}
|
|
127
|
+
const maxCount = kws[0]?.count ?? 1;
|
|
128
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { gap: 2, children: [_jsx(Text, { children: "Total keyword matches:" }), _jsx(Text, { bold: true, color: C.success, children: stats.keywordStats.totalMatches })] }), _jsxs(Box, { gap: 2, children: [_jsx(Text, { children: "Avg matched/prompt:" }), _jsx(Text, { bold: true, children: stats.keywordStats.avgMatchedPerPrompt.toFixed(1) })] }), _jsxs(Box, { gap: 2, children: [_jsx(Text, { children: "Dedup filtered total:" }), _jsx(Text, { bold: true, color: C.warning, children: stats.keywordStats.dedupFilteredTotal })] }), _jsx(Text, { children: " " }), _jsx(Text, { bold: true, children: "Top Keywords (by match count):" }), _jsx(Text, { children: " " }), kws.map((kw, i) => {
|
|
129
|
+
const selected = i === cursor;
|
|
130
|
+
const barLen = Math.max(1, Math.round((kw.count / maxCount) * 30));
|
|
131
|
+
const bar = '\u2588'.repeat(barLen);
|
|
132
|
+
return (_jsxs(Box, { gap: 1, children: [_jsxs(Text, { color: selected ? C.primary : undefined, bold: selected, children: [selected ? '\u25B6' : ' ', " ", pad(kw.keyword, 22)] }), _jsx(Text, { color: C.success, children: bar }), _jsxs(Text, { bold: true, children: [" ", kw.count] })] }, kw.keyword));
|
|
133
|
+
})] }));
|
|
134
|
+
}
|
|
135
|
+
function AgentsView({ stats, cursor }) {
|
|
136
|
+
const agents = Object.entries(stats.byAgentType)
|
|
137
|
+
.map(([name, s]) => ({ name, ...s, rate: s.total > 0 ? (s.injected / s.total) * 100 : 0 }))
|
|
138
|
+
.sort((a, b) => b.total - a.total);
|
|
139
|
+
if (agents.length === 0) {
|
|
140
|
+
return _jsx(Text, { dimColor: true, children: "No agent data recorded yet." });
|
|
141
|
+
}
|
|
142
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { bold: true, children: "Agent Type Injection Statistics:" }), _jsx(Text, { children: " " }), _jsxs(Box, { gap: 1, children: [_jsxs(Text, { dimColor: true, children: [" ", 'Agent/Category'.padEnd(28)] }), _jsx(Text, { dimColor: true, children: 'Total'.padStart(6) }), _jsx(Text, { dimColor: true, children: 'Hit'.padStart(6) }), _jsx(Text, { dimColor: true, children: 'Miss'.padStart(6) }), _jsx(Text, { dimColor: true, children: 'Rate'.padStart(8) })] }), agents.map((a, i) => {
|
|
143
|
+
const selected = i === cursor;
|
|
144
|
+
const rateColor = a.rate >= 80 ? C.success : a.rate >= 50 ? C.warning : C.error;
|
|
145
|
+
return (_jsxs(Box, { gap: 1, children: [_jsxs(Text, { color: selected ? C.primary : undefined, bold: selected, children: [selected ? '\u25B6' : ' ', " ", pad(a.name, 27)] }), _jsx(Text, { children: String(a.total).padStart(6) }), _jsx(Text, { color: C.success, children: String(a.injected).padStart(6) }), _jsx(Text, { color: C.error, children: String(a.total - a.injected).padStart(6) }), _jsx(Text, { color: rateColor, children: (a.rate.toFixed(1) + '%').padStart(8) })] }, a.name));
|
|
146
|
+
})] }));
|
|
147
|
+
}
|
|
148
|
+
function HooksView({ stats, cursor }) {
|
|
149
|
+
const hooks = Object.entries(stats.hookStats.byHook)
|
|
150
|
+
.sort((a, b) => b[1] - a[1]);
|
|
151
|
+
const plugins = Object.entries(stats.hookStats.byPlugin)
|
|
152
|
+
.sort((a, b) => b[1] - a[1]);
|
|
153
|
+
if (hooks.length === 0) {
|
|
154
|
+
return _jsx(Text, { dimColor: true, children: "No hook invocations recorded yet." });
|
|
155
|
+
}
|
|
156
|
+
const maxCount = hooks[0]?.[1] ?? 1;
|
|
157
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { gap: 2, children: [_jsx(Text, { children: "Total hook invocations:" }), _jsx(Text, { bold: true, color: C.primary, children: stats.hookStats.totalInvocations })] }), stats.hookStats.avgDurationMs > 0 && (_jsxs(Box, { gap: 2, children: [_jsx(Text, { children: "Avg duration:" }), _jsxs(Text, { bold: true, children: [stats.hookStats.avgDurationMs.toFixed(1), "ms"] })] })), _jsx(Text, { children: " " }), _jsx(Text, { bold: true, children: "By Hook Name:" }), _jsx(Text, { children: " " }), hooks.map(([name, count], i) => {
|
|
158
|
+
const selected = i === cursor;
|
|
159
|
+
const barLen = Math.max(1, Math.round((count / maxCount) * 30));
|
|
160
|
+
const bar = '\u2588'.repeat(barLen);
|
|
161
|
+
return (_jsxs(Box, { gap: 1, children: [_jsxs(Text, { color: selected ? C.primary : undefined, bold: selected, children: [selected ? '\u25B6' : ' ', " ", pad(name, 20)] }), _jsx(Text, { color: C.warning, children: bar }), _jsxs(Text, { bold: true, children: [" ", count] })] }, name));
|
|
162
|
+
}), plugins.length > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsx(Text, { bold: true, children: "By Plugin:" }), plugins.map(([name, count]) => (_jsxs(Box, { gap: 1, children: [_jsxs(Text, { children: [" ", pad(name, 20)] }), _jsx(Text, { bold: true, children: count })] }, name)))] }))] }));
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=SpecAnalyticsPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpecAnalyticsPanel.js","sourceRoot":"","sources":["../../../../src/tui/config-ui/SpecAnalyticsPanel.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAkBxD,MAAM,SAAS,GAAqD;IAClE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;IAC/C,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC7C,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;IACjD,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC7C,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;CAC5C,CAAC;AAEF,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,MAAM,UAAU,kBAAkB,CAAC,EAAE,OAAO,EAAE,MAAM,EAA2B;IAC7E,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAW,SAAS,CAAC,CAAC;IACtD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAsB,EAAE,CAAC,CAAC;IAChE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAA8B,IAAI,CAAC,CAAC;IACtE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEpE,YAAY;IACZ,SAAS,CAAC,GAAG,EAAE;QACb,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;YACtG,MAAM,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YACnC,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;YACzC,UAAU,CAAC,GAAG,CAAC,CAAC;YAChB,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;YACtC,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,mCAAmC;IACnC,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC9C,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,iBAAiB;QACjB,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,IAAI,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;QACxG,CAAC;QAED,IAAI,KAAK,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAChC,IAAI,MAAM,EAAE,CAAC;gBAAC,MAAM,EAAE,CAAC;gBAAC,OAAO;YAAC,CAAC;YACjC,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QAED,mCAAmC;QACnC,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACtF,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAAC,CAAC;YAC9E,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;gBAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAAC,CAAC;YACnE,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAAC,CAAC;QAC9E,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,YACrC,MAAC,GAAG,OAAK,MAAM,CAAC,OAAO,EAAE,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,CAAC,SAAS,aAC5F,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,CAAC,CAAC,OAAO,+BAAuB,EAClD,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,QAAQ,gDAAiC,IAC3C,GACF,CACP,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,YACrC,MAAC,GAAG,OAAK,MAAM,CAAC,OAAO,EAAE,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,CAAC,SAAS,aAC5F,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,CAAC,CAAC,OAAO,+BAAuB,EAClD,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,QAAQ,mGAAoF,EAClG,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,QAAQ,iCAAkB,IAC5B,GACF,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,YACrC,MAAC,GAAG,OAAK,MAAM,CAAC,OAAO,EAAE,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,CAAC,SAAS,aAC5F,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,CAAC,CAAC,OAAO,+BAAuB,EAClD,KAAC,IAAI,oBAAS,EAGd,KAAC,GAAG,IAAC,GAAG,EAAE,CAAC,YACR,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CACpB,KAAC,GAAG,cACD,GAAG,CAAC,IAAI,KAAK,IAAI;4BAChB,CAAC,CAAC,KAAC,IAAI,IAAC,IAAI,QAAC,OAAO,QAAC,KAAK,EAAE,CAAC,CAAC,OAAO,YAAG,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,GAAG,GAAQ;4BAC5E,CAAC,CAAC,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,GAAG,GAAQ,IAHhD,GAAG,CAAC,GAAG,CAKX,CACP,CAAC,GACE,EACN,KAAC,IAAI,oBAAS,EAGb,IAAI,KAAK,SAAS,IAAI,KAAC,WAAW,IAAC,KAAK,EAAE,KAAK,GAAI,EACnD,IAAI,KAAK,QAAQ,IAAI,KAAC,UAAU,IAAC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAI,EACrG,IAAI,KAAK,UAAU,IAAI,KAAC,YAAY,IAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,EACrE,IAAI,KAAK,QAAQ,IAAI,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,EACjE,IAAI,KAAK,OAAO,IAAI,KAAC,SAAS,IAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,EAEhE,KAAC,IAAI,oBAAS,EACd,MAAC,IAAI,IAAC,QAAQ,mDAA8B,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAAE,IAAQ,IACvG,GACF,CACP,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,SAAS,WAAW,CAAC,EAAE,KAAK,EAAmC;IAC7D,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7F,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACxF,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAElF,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,oCAAyB,EAC9B,KAAC,IAAI,IAAC,IAAI,kBAAE,KAAK,CAAC,eAAe,GAAQ,IACrC,EACN,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,8BAAmB,EACxB,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,CAAC,CAAC,OAAO,YAAG,KAAK,CAAC,oBAAoB,GAAQ,EAChE,MAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,kBAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,IACvD,EACN,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,0BAAe,EACpB,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,CAAC,CAAC,KAAK,YAAG,KAAK,CAAC,gBAAgB,GAAQ,EAC1D,MAAC,IAAI,IAAC,QAAQ,wBAAG,CAAC,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,IACvD,EAEN,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,IAAI,iCAAkB,EAC3B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;gBAC/C,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC7E,OAAO,CACL,MAAC,GAAG,IAAW,GAAG,EAAE,CAAC,aACnB,MAAC,IAAI,qBAAI,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,IAAQ,EAC7B,KAAC,IAAI,IAAC,IAAI,kBAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAQ,EAC/C,MAAC,IAAI,IAAC,QAAQ,yBAAI,IAAI,cAAc,KAH5B,GAAG,CAIP,CACP,CAAC;YACJ,CAAC,CAAC,EAGD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAC/C,8BACE,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,IAAI,sCAAuB,EACjC,MAAC,IAAI,qBAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAQ,IAC7F,CACJ,EAGA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAC3C,8BACE,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,IAAI,kCAAmB,EAC7B,MAAC,IAAI,qBAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAQ,IACrH,CACJ,EAGA,KAAK,CAAC,SAAS,CAAC,gBAAgB,GAAG,CAAC,IAAI,CACvC,8BACE,KAAC,IAAI,oBAAS,EACd,MAAC,IAAI,IAAC,IAAI,yCAAmB,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,YAAG,KAAK,CAAC,SAAS,CAAC,gBAAgB,GAAQ,IAAO,EACrG,MAAC,IAAI,qBAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAQ,IAC3H,CACJ,EAGA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CACzC,8BACE,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,IAAI,qCAAsB,EAChC,MAAC,IAAI,qBAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAQ,IACnH,CACJ,EAED,KAAC,IAAI,oBAAS,EACd,MAAC,IAAI,IAAC,QAAQ,8BAAS,MAAM,YAAQ,KAAK,CAAC,YAAY,iBAAa,QAAQ,SAAK,MAAM,IAAQ,IAC3F,CACP,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAgF;IAChI,MAAM,SAAS,GAAG,EAAE,CAAC;IACrB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC,CAAC;IAEhE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAC,IAAI,IAAC,QAAQ,0CAA2B,CAAC;IAE3E,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,MAAC,IAAI,IAAC,QAAQ,iCAAY,OAAO,CAAC,MAAM,UAAM,OAAO,CAAC,MAAM,8BAA8B,EAC1F,KAAC,IAAI,oBAAS,EACb,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;gBACxB,MAAM,GAAG,GAAG,SAAS,GAAG,CAAC,CAAC;gBAC1B,MAAM,QAAQ,GAAG,GAAG,KAAK,KAAK,CAAC;gBAC/B,MAAM,QAAQ,GAAG,GAAG,KAAK,WAAW,CAAC;gBACrC,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBAEzC,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;oBAChD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBACrD,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACtE,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBAExF,OAAO,CACL,MAAC,GAAG,IAAgB,aAAa,EAAC,QAAQ,aACxC,MAAC,GAAG,eACF,MAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,aAC1D,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAG,EAAE,SAAS,EAC1C,KAAC,IAAI,IAAC,KAAK,EAAE,SAAS,YAAG,IAAI,GAAQ,EACrC,MAAC,IAAI,oBAAG,GAAG,OAAG,KAAK,SAAS,EAC5B,MAAC,IAAI,IAAC,QAAQ,mBAAE,KAAK,CAAC,SAAS,cAAc,EAC5C,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,CAC5D,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,sBAAQ,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CACnF,EACA,KAAK,CAAC,MAAM,IAAI,MAAC,IAAI,IAAC,QAAQ,yBAAI,KAAK,CAAC,MAAM,SAAS,IACpD,EACL,QAAQ,IAAI,CACX,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAE,CAAC,aACxC,MAAC,IAAI,IAAC,QAAQ,6BAAQ,KAAK,CAAC,EAAE,IAAQ,EACrC,KAAK,CAAC,aAAa,IAAI,MAAC,IAAI,IAAC,QAAQ,iCAAY,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,WAAW,EAC7F,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,MAAC,IAAI,IAAC,QAAQ,qCAAgB,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAQ,EAChG,KAAK,CAAC,YAAY,IAAI,MAAC,IAAI,IAAC,QAAQ,iCAAY,KAAK,CAAC,YAAY,IAAQ,EAC3E,MAAC,IAAI,IAAC,QAAQ,kCAAa,KAAK,CAAC,aAAa,cAAc,EAC3D,KAAK,CAAC,eAAe,IAAI,MAAC,IAAI,IAAC,QAAQ,kCAAa,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAQ,EAC5F,KAAK,CAAC,mBAAmB,IAAI,IAAI,IAAI,MAAC,IAAI,IAAC,QAAQ,0CAAqB,KAAK,CAAC,mBAAmB,wBAAoB,KAAK,CAAC,kBAAkB,IAAI,CAAC,IAAQ,IACvJ,CACP,KAtBO,KAAK,CAAC,EAAE,CAuBZ,CACP,CAAC;gBACJ,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;oBACzB,OAAO,CACL,MAAC,GAAG,IAAgB,aAAa,EAAC,QAAQ,aACxC,MAAC,GAAG,eACF,MAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,aAC1D,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAG,EAAE,SAAS,EAC1C,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,oBAAY,EAClC,MAAC,IAAI,oBAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAQ,EACxC,KAAC,IAAI,IAAC,QAAQ,kBAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAQ,IAC9C,EACL,QAAQ,IAAI,CACX,KAAC,GAAG,IAAC,WAAW,EAAE,CAAC,YACjB,MAAC,IAAI,IAAC,QAAQ,6BAAQ,KAAK,CAAC,EAAE,mBAAe,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAQ,GACpF,CACP,KAZO,KAAK,CAAC,EAAE,CAaZ,CACP,CAAC;gBACJ,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC1B,OAAO,CACL,MAAC,GAAG,IAAgB,aAAa,EAAC,QAAQ,aACxC,MAAC,GAAG,eACF,MAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,aAC1D,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAG,EAAE,SAAS,EAC1C,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,qBAAa,EACnC,MAAC,IAAI,oBAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,IAAQ,EACxC,KAAK,CAAC,MAAM,IAAI,MAAC,IAAI,IAAC,QAAQ,6BAAQ,KAAK,CAAC,MAAM,IAAQ,EAC1D,KAAK,CAAC,OAAO,IAAI,MAAC,IAAI,IAAC,QAAQ,gCAAW,KAAK,CAAC,OAAO,IAAQ,IAC5D,EACL,QAAQ,IAAI,KAAK,CAAC,IAAI,IAAI,CACzB,KAAC,GAAG,IAAC,WAAW,EAAE,CAAC,YACjB,MAAC,IAAI,IAAC,QAAQ,yBAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAQ,GAChD,CACP,KAbO,KAAK,CAAC,EAAE,CAcZ,CACP,CAAC;gBACJ,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,IACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAmD;IACtF,MAAM,GAAG,GAAG,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC;IAE3C,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAC,IAAI,IAAC,QAAQ,uDAAwC,CAAC;IAChE,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;IAEpC,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,yCAA8B,EACnC,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,CAAC,CAAC,OAAO,YAAG,KAAK,CAAC,YAAY,CAAC,YAAY,GAAQ,IACjE,EACN,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,sCAA2B,EAChC,KAAC,IAAI,IAAC,IAAI,kBAAE,KAAK,CAAC,YAAY,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAQ,IACjE,EACN,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,wCAA6B,EAClC,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,CAAC,CAAC,OAAO,YAAG,KAAK,CAAC,YAAY,CAAC,kBAAkB,GAAQ,IACvE,EAEN,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,IAAI,qDAAsC,EAChD,KAAC,IAAI,oBAAS,EACb,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;gBACjB,MAAM,QAAQ,GAAG,CAAC,KAAK,MAAM,CAAC;gBAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBACnE,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACpC,OAAO,CACL,MAAC,GAAG,IAAkB,GAAG,EAAE,CAAC,aAC1B,MAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,aAC1D,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAG,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAC3C,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,YAAG,GAAG,GAAQ,EACpC,MAAC,IAAI,IAAC,IAAI,wBAAG,EAAE,CAAC,KAAK,IAAQ,KALrB,EAAE,CAAC,OAAO,CAMd,CACP,CAAC;YACJ,CAAC,CAAC,IACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAmD;IACpF,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;SAC7C,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SAC1F,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAErC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,KAAC,IAAI,IAAC,QAAQ,kDAAmC,CAAC;IAC3D,CAAC;IAED,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,IAAI,uDAAwC,EAClD,KAAC,IAAI,oBAAS,EACd,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,MAAC,IAAI,IAAC,QAAQ,yBAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,IAAQ,EACrD,KAAC,IAAI,IAAC,QAAQ,kBAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAQ,EAC3C,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAQ,EACzC,KAAC,IAAI,IAAC,QAAQ,kBAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAQ,EAC1C,KAAC,IAAI,IAAC,QAAQ,kBAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAQ,IACtC,EACL,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACnB,MAAM,QAAQ,GAAG,CAAC,KAAK,MAAM,CAAC;gBAC9B,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAChF,OAAO,CACL,MAAC,GAAG,IAAc,GAAG,EAAE,CAAC,aACtB,MAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,aAC1D,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IACvC,EACP,KAAC,IAAI,cAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAQ,EAC1C,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,YAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAQ,EAC/D,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,KAAK,YAAG,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAQ,EACvE,KAAC,IAAI,IAAC,KAAK,EAAE,SAAS,YAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAQ,KAP9D,CAAC,CAAC,IAAI,CAQV,CACP,CAAC;YACJ,CAAC,CAAC,IACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAAmD;IACnF,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;SACjD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;SACrD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,KAAC,IAAI,IAAC,QAAQ,wDAAyC,CAAC;IACjE,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEpC,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,0CAA+B,EACpC,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,CAAC,CAAC,OAAO,YAAG,KAAK,CAAC,SAAS,CAAC,gBAAgB,GAAQ,IAClE,EACL,KAAK,CAAC,SAAS,CAAC,aAAa,GAAG,CAAC,IAAI,CACpC,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,gCAAqB,EAC1B,MAAC,IAAI,IAAC,IAAI,mBAAE,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,IAC1D,CACP,EAED,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,IAAI,oCAAqB,EAC/B,KAAC,IAAI,oBAAS,EACb,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC9B,MAAM,QAAQ,GAAG,CAAC,KAAK,MAAM,CAAC;gBAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBAChE,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACpC,OAAO,CACL,MAAC,GAAG,IAAY,GAAG,EAAE,CAAC,aACpB,MAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,aAC1D,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAG,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,IACrC,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,YAAG,GAAG,GAAQ,EACpC,MAAC,IAAI,IAAC,IAAI,wBAAG,KAAK,IAAQ,KALlB,IAAI,CAMR,CACP,CAAC;YACJ,CAAC,CAAC,EAED,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CACrB,8BACE,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,IAAI,iCAAkB,EAC3B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAC9B,MAAC,GAAG,IAAY,GAAG,EAAE,CAAC,aACpB,MAAC,IAAI,qBAAI,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,IAAQ,EAC9B,KAAC,IAAI,IAAC,IAAI,kBAAE,KAAK,GAAQ,KAFjB,IAAI,CAGR,CACP,CAAC,IACD,CACJ,IACG,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpecPanel.d.ts","sourceRoot":"","sources":["../../../../src/tui/config-ui/SpecPanel.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SpecPanel.d.ts","sourceRoot":"","sources":["../../../../src/tui/config-ui/SpecPanel.tsx"],"names":[],"mappings":"AA2BA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AA6DD,wBAAgB,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,cAAc,2CAsF5D"}
|