protocol-proxy 1.1.3 → 1.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/package.json +1 -1
- package/public/app.js +19 -7
package/package.json
CHANGED
package/public/app.js
CHANGED
|
@@ -134,13 +134,19 @@ function renderProviderOptions() {
|
|
|
134
134
|
const providers = loadProviders();
|
|
135
135
|
const currentUrl = getSelectedProviderUrl();
|
|
136
136
|
|
|
137
|
-
container.innerHTML = providers.map(p =>
|
|
137
|
+
container.innerHTML = providers.map(p => {
|
|
138
|
+
// 优先从服务端配置取供应商名称
|
|
139
|
+
const serverProxy = proxies.find(pr => pr.target?.providerUrl === p.url);
|
|
140
|
+
const displayName = (p.name && p.name !== p.url) ? p.name
|
|
141
|
+
: (serverProxy?.target?.providerName && serverProxy.target.providerName !== p.url) ? serverProxy.target.providerName
|
|
142
|
+
: p.url;
|
|
143
|
+
return `
|
|
138
144
|
<div class="model-option${p.url === currentUrl ? ' selected' : ''}" data-url="${escapeHtml(p.url)}">
|
|
139
|
-
<span class="model-option-name">${escapeHtml(
|
|
140
|
-
|
|
145
|
+
<span class="model-option-name">${escapeHtml(displayName)}</span>
|
|
146
|
+
${displayName !== p.url ? `<span style="color:#64748b;font-size:12px;margin-left:4px">${escapeHtml(p.url)}</span>` : ''}
|
|
141
147
|
<button type="button" class="model-option-delete" data-delete-url="${escapeHtml(p.url)}" title="删除此供应商">×</button>
|
|
142
148
|
</div>
|
|
143
|
-
`).join('');
|
|
149
|
+
`}).join('');
|
|
144
150
|
|
|
145
151
|
if (providers.length === 0) {
|
|
146
152
|
container.innerHTML = '<div style="padding:8px 12px;color:#64748b;font-size:13px">暂无供应商,请在下方添加</div>';
|
|
@@ -176,9 +182,15 @@ function selectProvider(url) {
|
|
|
176
182
|
document.getElementById('target-url').value = url || '';
|
|
177
183
|
const provider = findProviderByUrl(url);
|
|
178
184
|
document.getElementById('target-protocol').value = url ? (provider?.protocol || detectProtocol(url)) : '';
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
185
|
+
if (url) {
|
|
186
|
+
const serverProxy = proxies.find(pr => pr.target?.providerUrl === url);
|
|
187
|
+
const name = (provider?.name && provider.name !== url) ? provider.name
|
|
188
|
+
: (serverProxy?.target?.providerName && serverProxy.target.providerName !== url) ? serverProxy.target.providerName
|
|
189
|
+
: null;
|
|
190
|
+
document.getElementById('provider-dropdown-value').textContent = name ? `${name} - ${url}` : url;
|
|
191
|
+
} else {
|
|
192
|
+
document.getElementById('provider-dropdown-value').textContent = '选择供应商...';
|
|
193
|
+
}
|
|
182
194
|
// 切换供应商后刷新模型列表
|
|
183
195
|
renderModelOptions();
|
|
184
196
|
updateModelAddState();
|