初次提交

This commit is contained in:
root
2025-07-17 18:12:56 +08:00
commit 8781bbf0f5
57 changed files with 15162 additions and 0 deletions

BIN
static/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 705 KiB

View File

@@ -0,0 +1,65 @@
.mcp-server-panel {
padding: 20px;
display: flex;
flex-direction: column;
height: 100%;
min-height: 100%;
max-height: 100%;
overflow-y: auto;
box-sizing: border-box;
}
header h2 {
margin: 0 0 20px 0;
font-size: 18px;
}
section {
margin-bottom: 20px;
padding: 15px;
background: var(--color-normal-fill-emphasis);
border-radius: 4px;
}
section h3 {
margin: 0 0 15px 0;
font-size: 14px;
font-weight: 600;
}
.status-value {
font-weight: 600;
}
.status-value.running {
color: var(--color-success-fill);
}
.status-value.stopped {
color: var(--color-warn-fill);
}
.server-controls {
display: flex;
justify-content: center;
padding: 20px;
}
.server-controls ui-button {
min-width: 150px;
}
.connection-details {
margin-top: 10px;
}
footer {
margin-top: auto;
padding-top: 20px;
display: flex;
justify-content: flex-end;
}
ui-prop {
margin-bottom: 10px;
}

View File

@@ -0,0 +1,64 @@
<div class="mcp-server-panel">
<header>
<h2 id="panelTitle"></h2>
</header>
<section class="server-status">
<h3 id="serverStatusLabel"></h3>
<div class="status-info">
<ui-prop>
<ui-label id="serverStatusLabelProp" slot="label"></ui-label>
<ui-label id="serverStatusValue" slot="content" class="status-value" :class="statusClass"></ui-label>
</ui-prop>
<ui-prop v-if="serverRunning">
<ui-label id="connectedLabel" slot="label"></ui-label>
<ui-label id="connectedClients" slot="content"></ui-label>
</ui-prop>
</div>
</section>
<section class="server-controls">
<ui-button id="toggleServerBtn" @click="toggleServer" :disabled="isProcessing" class="primary"></ui-button>
</section>
<section class="server-settings">
<h3 id="settingsLabel"></h3>
<ui-prop>
<ui-label id="portLabel" slot="label"></ui-label>
<ui-num-input id="portInput" slot="content"
:min="1024" :max="65535" :step="1"
:disabled="serverRunning">
</ui-num-input>
</ui-prop>
<ui-prop>
<ui-label id="autoStartLabel" slot="label"></ui-label>
<ui-checkbox id="autoStartInput" slot="content"></ui-checkbox>
</ui-prop>
<ui-prop>
<ui-label id="debugLogLabel" slot="label"></ui-label>
<ui-checkbox id="debugLogInput" slot="content"></ui-checkbox>
</ui-prop>
<ui-prop>
<ui-label id="maxConnectionsLabel" slot="label"></ui-label>
<ui-num-input id="maxConnInput" slot="content"
:min="1" :max="100" :step="1">
</ui-num-input>
</ui-prop>
</section>
<section class="server-info" v-if="serverRunning">
<h3 id="connectionInfoLabel"></h3>
<div class="connection-details">
<ui-prop>
<ui-label id="httpUrlLabel" slot="label"></ui-label>
<ui-input id="httpUrlInput" slot="content" :value="httpUrl" readonly>
<ui-button id="copyBtn" slot="suffix" @click="copyUrl"></ui-button>
</ui-input>
</ui-prop>
</div>
</section>
<footer>
<ui-button id="saveSettingsBtn" @click="saveSettings" :disabled="!settingsChanged"></ui-button>
</footer>
</div>