standalone

This commit is contained in:
2026-05-28 01:25:53 +08:00
parent ca9cc62b8c
commit 16847a78ca
12 changed files with 859 additions and 443 deletions

View File

@@ -65,7 +65,6 @@ export class LauncherViewProvider implements vscode.WebviewViewProvider {
function getHtml(version: string, betaToolsEnabled: boolean): string {
const visibleTools = sortToolsForDisplay(TOOLS.filter(tool => betaToolsEnabled || !tool.beta));
const hiddenBetaCount = TOOLS.filter(tool => tool.beta).length - visibleTools.filter(tool => tool.beta).length;
const toolButtons = visibleTools.map(renderToolButton).join('\n');
return `<!DOCTYPE html>
<html>
@@ -140,38 +139,35 @@ function getHtml(version: string, betaToolsEnabled: boolean): string {
font-size: 10px;
text-transform: uppercase;
}
.beta-toggle {
margin-top: 12px;
.footer {
margin-top: auto;
padding-top: 8px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
color: var(--vscode-descriptionForeground);
font-size: 8px;
border-top: 1px solid var(--vscode-panel-border);
}
.beta-toggle button {
width: 100%;
padding: 7px 9px;
.beta-toggle {
padding: 0;
background: transparent;
color: var(--vscode-foreground);
border: 1px solid var(--vscode-panel-border);
border-radius: 5px;
color: var(--vscode-descriptionForeground);
border: 0;
cursor: pointer;
text-align: left;
font: inherit;
}
.beta-toggle button:hover {
background: var(--vscode-list-hoverBackground, var(--vscode-button-secondaryHoverBackground));
}
.beta-note {
display: block;
margin-top: 3px;
color: var(--vscode-descriptionForeground);
font-size: 10px;
line-height: 1.3;
opacity: 0.72;
}
.footer {
margin-top: 8px;
color: var(--vscode-descriptionForeground);
font-size: 8px;
text-align: right;
.beta-toggle:hover {
opacity: 1;
text-decoration: underline;
}
.footer-version {
opacity: 0.75;
text-align: right;
}
</style>
</head>
@@ -179,13 +175,10 @@ function getHtml(version: string, betaToolsEnabled: boolean): string {
<div class="tools">
${toolButtons}
</div>
<div class="beta-toggle">
<button id="betaToggle" data-enabled="${betaToolsEnabled ? 'true' : 'false'}">
${betaToolsEnabled ? 'Disable Beta Tools' : 'Enable Beta Tools'}
<span class="beta-note">${betaToolsEnabled ? 'Beta tools are visible in this launcher.' : `${hiddenBetaCount} beta tool(s) hidden until enabled.`}</span>
</button>
<div class="footer">
<button id="betaToggle" class="beta-toggle" data-enabled="${betaToolsEnabled ? 'true' : 'false'}">${betaToolsEnabled ? 'Hide beta' : 'Show beta'}</button>
<span class="footer-version">${version} - JJGC 00784</span>
</div>
<div class="footer">${version} - JJGC 00784</div>
<script>
const vscode = acquireVsCodeApi();
document.querySelectorAll('.tool-btn').forEach((btn) => {