@wenaixi/dsh-superpower 7.5.8 → 7.7.0
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 +19 -43
- package/README.zh.md +23 -48
- package/lib/catalog.d.ts +2 -2
- package/lib/catalog.d.ts.map +1 -1
- package/lib/catalog.js +23 -14
- package/lib/catalog.js.map +1 -1
- package/lib/client.js +269 -137
- package/lib/document.d.ts.map +1 -1
- package/lib/document.js +0 -4
- package/lib/document.js.map +1 -1
- package/lib/superpowers.d.ts +5 -0
- package/lib/superpowers.d.ts.map +1 -1
- package/lib/superpowers.js +19 -5
- package/lib/superpowers.js.map +1 -1
- package/lib/switches.d.ts.map +1 -1
- package/lib/switches.js +1 -3
- package/lib/switches.js.map +1 -1
- package/locale/en.json +1 -1
- package/locale/zh.json +1 -1
- package/package.json +5 -3
- package/skills/using-superpowers/SKILL.md +1 -1
- package/skills/using-superpowers/references/dsh-tools.md +204 -25
package/lib/client.js
CHANGED
|
@@ -29,14 +29,9 @@ window.__ModuleLoader__.load({
|
|
|
29
29
|
// 宿主条目 id,同时也是 settings 命名空间键;与 cordis.patch.yml 的 id 逐字相同
|
|
30
30
|
var SETTINGS_NAMESPACE = 'superpowers';
|
|
31
31
|
var PACKAGE_NAME = '@wenaixi/dsh-superpower';
|
|
32
|
-
var PROVIDER_NAME = 'superpowers';
|
|
33
|
-
var PROVIDER_RANK = 10;
|
|
34
|
-
var SKILL_SOURCE = 'bundled';
|
|
35
|
-
/* 面板所在的包版本。写死而非从宿主取:浏览器侧读不到 package.json,
|
|
36
|
-
而版本号正是排查「装的是哪一版、界面是不是这一版」时唯一能直接看到的东西。 */
|
|
37
|
-
var PACKAGE_VERSION = '7.5.8';
|
|
38
32
|
var NS = 'dsh-superpower';
|
|
39
33
|
var DISABLED_FIELD = 'disabled';
|
|
34
|
+
var LANGUAGE_FIELD = 'language';
|
|
40
35
|
/* v7.3.0 及之前的双侧禁言表。面板写入成功后会把它们 unset,
|
|
41
36
|
这里仍需列出:迁移那批操作的路径必须与 schema 里的字段名逐字一致。 */
|
|
42
37
|
var LEGACY_FIELDS = ['modelDisabled', 'userDisabled'];
|
|
@@ -79,12 +74,13 @@ window.__ModuleLoader__.load({
|
|
|
79
74
|
empty: '没有匹配的技能',
|
|
80
75
|
writeFailed: '保存失败',
|
|
81
76
|
hostUnavailable: '当前宿主未提供本插件的配置通道,开关暂不可用',
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
77
|
+
|
|
78
|
+
langTitle: '技能介绍语言(用户「/」唤出菜单及模型可见)',
|
|
79
|
+
langNote: '仅切换技能描述(用户输入「/」唤出与模型可见),技能正文保持英文原版。',
|
|
80
|
+
langZh: '中文',
|
|
81
|
+
langEn: 'English',
|
|
82
|
+
langAuto: '跟随宿主(自动)',
|
|
83
|
+
langUnsetHint: '未配置:当前跟随宿主界面语言({lang}),可在上方显式切换。仅切换技能描述(用户「/」唤出与模型可见),技能正文保持英文原版。',
|
|
88
84
|
};
|
|
89
85
|
|
|
90
86
|
var en = {
|
|
@@ -101,12 +97,13 @@ window.__ModuleLoader__.load({
|
|
|
101
97
|
empty: 'No matching skill',
|
|
102
98
|
writeFailed: 'Save failed',
|
|
103
99
|
hostUnavailable: 'The Host does not expose this bundle configuration channel; switches are unavailable',
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
100
|
+
|
|
101
|
+
langTitle: 'Skill introduction language (visible in "/" slash menu & model)',
|
|
102
|
+
langNote: 'Switches only skill descriptions (visible when typing "/" and to the model); skill bodies stay the English originals.',
|
|
103
|
+
langZh: '中文',
|
|
104
|
+
langEn: 'English',
|
|
105
|
+
langAuto: 'Follow host (auto)',
|
|
106
|
+
langUnsetHint: 'Not set: follows host interface language ({lang}); switch explicitly above. Switches only skill descriptions (visible when typing "/" and to model); skill bodies stay English.',
|
|
110
107
|
};
|
|
111
108
|
|
|
112
109
|
/* 官方样式注入契约:style[data-plugin-css="<包名>/<文件名>"],宿主据此在
|
|
@@ -117,10 +114,7 @@ window.__ModuleLoader__.load({
|
|
|
117
114
|
'.spSw{display:flex;flex-direction:column;gap:12px;color:var(--dsw-alias-label-primary);font:var(--dsw-font-s-14)}',
|
|
118
115
|
'.spSwTitle{margin:0;font:var(--dsw-font-s-strong-14);color:var(--dsw-alias-label-primary)}',
|
|
119
116
|
'.spSwIntro{margin:0;font:var(--dsw-font-xs-13);color:var(--dsw-alias-label-secondary)}',
|
|
120
|
-
|
|
121
|
-
'.spSwMeta{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;list-style:none}',
|
|
122
|
-
'.spSwMetaItem{display:inline-flex;gap:6px;font:var(--dsw-font-xxs-12);color:var(--dsw-alias-label-tertiary)}',
|
|
123
|
-
'.spSwMetaItem code{padding:1px 6px;border-radius:var(--dsw-radius-xs);background:var(--dsw-alias-bg-layer-2);color:var(--dsw-alias-label-secondary);font:inherit}',
|
|
117
|
+
|
|
124
118
|
/* 工具条:左按钮右搜索框 */
|
|
125
119
|
'.spSwBar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}',
|
|
126
120
|
'.spSwSearch{flex:1 1 220px;min-width:0}',
|
|
@@ -135,12 +129,10 @@ window.__ModuleLoader__.load({
|
|
|
135
129
|
'.spSwErr{margin:4px 0 0;font:var(--dsw-font-xxxs-11);color:var(--dsw-alias-state-error-primary)}',
|
|
136
130
|
/* 右侧单开关:标签在左、开关在右 */
|
|
137
131
|
'.spSwSwitch{flex:none;display:flex;align-items:center;gap:10px}',
|
|
138
|
-
/*
|
|
139
|
-
'.spSwLangBar{display:flex;
|
|
140
|
-
'.
|
|
141
|
-
'.
|
|
142
|
-
'.spSwLangBtn:disabled{opacity:.5;cursor:default}',
|
|
143
|
-
'.spSwLangNote{margin:0;font:var(--dsw-font-xxs-12);color:var(--dsw-alias-label-tertiary)}',
|
|
132
|
+
/* 语言切换三段选择器:面板顶部全局,中文 / English / 跟随宿主(自动) */
|
|
133
|
+
'.spSwLangBar{display:flex;flex-direction:column;gap:6px;margin-top:2px}',
|
|
134
|
+
'.spSwLangTitle{margin:0;font:var(--dsw-font-xs-strong-13);color:var(--dsw-alias-label-primary)}',
|
|
135
|
+
'.spSwLangNote{margin:0;font:var(--dsw-font-xxs-12);color:var(--dsw-alias-label-tertiary);line-height:1.5}',
|
|
144
136
|
'.spSwLangFailure{margin:0;font:var(--dsw-font-xxs-12);color:var(--dsw-alias-error)}',
|
|
145
137
|
'.spSwSwitchLabel{white-space:nowrap;font:var(--dsw-font-xxs-12);color:var(--dsw-alias-label-secondary)}',
|
|
146
138
|
'.spSwEmpty{margin:0;padding:24px 0;font:var(--dsw-font-xs-13);color:var(--dsw-alias-label-tertiary);text-align:center}',
|
|
@@ -157,93 +149,238 @@ window.__ModuleLoader__.load({
|
|
|
157
149
|
}
|
|
158
150
|
|
|
159
151
|
/**
|
|
160
|
-
*
|
|
161
|
-
*
|
|
162
|
-
* 清理动作与主写合在同一次 mutate 里,因为 ConfigForm 的 mutate 是一批
|
|
163
|
-
* 操作共享一个 revision 栅栏、一次校验、一次持久化决策。这样不存在
|
|
164
|
-
* 「新表写了一部分、旧表还留着」的中间态,也省掉每技能一次额外往返。
|
|
165
|
-
* op 为 enable 时 unset 路径即恢复继承的默认值。
|
|
166
|
-
*/
|
|
167
|
-
/* 语言偏好字段:'zh' | 'en' 显式固定;缺失时跟随宿主界面语言(locale active)。 */
|
|
168
|
-
var LANGUAGE_FIELD = 'language';
|
|
169
|
-
/* 目标语言字面量:单按钮显示「点击后变成的语言」,刻意不随宿主词典。 */
|
|
170
|
-
var SP_LANG_ZH = '中文';
|
|
171
|
-
var SP_LANG_EN = 'English';
|
|
172
|
-
|
|
173
|
-
/**
|
|
174
|
-
* 读取当前语言偏好。缺项与非 en 值一律回退中文(与宿主侧 readSwitches 同规则)。
|
|
152
|
+
* 读取当前语言偏好(三态):'zh'/'en' 显式值原样;缺项为 undefined(跟随宿主)。
|
|
153
|
+
* 与宿主侧 readSwitches 同规则,缺失绝不折叠成 zh —— 否则面板无法表达「跟随宿主」。
|
|
175
154
|
*/
|
|
176
155
|
function readLanguage(value) {
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
function switchOps(name, op) {
|
|
181
|
-
var ops = op === 'disable'
|
|
182
|
-
? [{ op: 'set', path: [DISABLED_FIELD, name], value: true }]
|
|
183
|
-
: [{ op: 'unset', path: [DISABLED_FIELD, name] }];
|
|
184
|
-
return ops.concat(LEGACY_FIELDS.map(function (field) {
|
|
185
|
-
return { op: 'unset', path: [field] };
|
|
186
|
-
}));
|
|
156
|
+
var raw = value && value[LANGUAGE_FIELD];
|
|
157
|
+
return raw === 'zh' || raw === 'en' ? raw : undefined;
|
|
187
158
|
}
|
|
188
159
|
|
|
189
160
|
/**
|
|
190
|
-
*
|
|
191
|
-
*
|
|
192
|
-
* 用户只要在面板动过一次开关,profile 里就只剩 disabled 一个字段。
|
|
161
|
+
* 客户端配置控制器深度模块 (Deep Module):
|
|
162
|
+
* 将 DSH ConfigForm 订阅、批处理 ops 拍平、旧表原子继承、disposed 拦截与堆栈归集彻底封闭在门后。
|
|
193
163
|
*/
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
164
|
+
class SwitchPanelModel {
|
|
165
|
+
constructor(scope, options) {
|
|
166
|
+
this.scope = scope;
|
|
167
|
+
this.t = (options && options.t) || ((k) => k);
|
|
168
|
+
this.allNames = (options && options.allNames) || [];
|
|
169
|
+
this.listeners = new Set();
|
|
170
|
+
this.pending = {};
|
|
171
|
+
this.failures = {};
|
|
172
|
+
this.unsubscribe = null;
|
|
173
|
+
this._bindScope(scope);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
_bindScope(scope) {
|
|
177
|
+
if (this.scope !== scope) {
|
|
178
|
+
if (this.unsubscribe) {
|
|
179
|
+
this.unsubscribe();
|
|
180
|
+
this.unsubscribe = null;
|
|
181
|
+
}
|
|
182
|
+
this.scope = scope;
|
|
183
|
+
}
|
|
184
|
+
if (this.scope && typeof this.scope.subscribe === 'function' && !this.unsubscribe) {
|
|
185
|
+
this.unsubscribe = this.scope.subscribe(() => this._notify());
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
updateScope(nextScope) {
|
|
190
|
+
this._bindScope(nextScope);
|
|
191
|
+
this._notify();
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
subscribe(listener) {
|
|
195
|
+
this.listeners.add(listener);
|
|
196
|
+
return () => this.listeners.delete(listener);
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
_notify() {
|
|
200
|
+
this.listeners.forEach((fn) => {
|
|
201
|
+
try { fn(); } catch (e) {}
|
|
199
202
|
});
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
var
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
getSnapshot() {
|
|
206
|
+
var snap = (this.scope && typeof this.scope.getSnapshot === 'function')
|
|
207
|
+
? this.scope.getSnapshot()
|
|
208
|
+
: { status: 'loading', writable: false, value: {} };
|
|
209
|
+
var value = snap.value || {};
|
|
210
|
+
var rawDisabled = value[DISABLED_FIELD] || {};
|
|
211
|
+
var legacyActive = Object.keys(rawDisabled).length === 0;
|
|
212
|
+
var disabled = !legacyActive
|
|
213
|
+
? rawDisabled
|
|
214
|
+
: Object.assign({}, value.modelDisabled || {}, value.userDisabled || {});
|
|
215
|
+
var language = readLanguage(value);
|
|
216
|
+
|
|
217
|
+
return {
|
|
218
|
+
status: snap.status || 'ready',
|
|
219
|
+
writable: snap.writable !== false && snap.mode !== 'memory',
|
|
220
|
+
disabled: disabled,
|
|
221
|
+
legacyActive: legacyActive,
|
|
222
|
+
language: language,
|
|
223
|
+
langConfigured: language !== undefined,
|
|
224
|
+
langValue: language !== undefined ? language : 'auto',
|
|
225
|
+
pending: this.pending,
|
|
226
|
+
failures: this.failures,
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
_buildOps(names, op, legacyCarry) {
|
|
231
|
+
var list = Array.isArray(names) ? names : [names];
|
|
232
|
+
var ops = [];
|
|
233
|
+
if (legacyCarry) {
|
|
234
|
+
Object.keys(legacyCarry).forEach(function (key) {
|
|
235
|
+
if (legacyCarry[key] === true && list.indexOf(key) < 0) {
|
|
236
|
+
ops.push({ op: 'set', path: [DISABLED_FIELD, key], value: true });
|
|
237
|
+
}
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
list.forEach(function (name) {
|
|
241
|
+
if (op === 'disable') {
|
|
242
|
+
ops.push({ op: 'set', path: [DISABLED_FIELD, name], value: true });
|
|
243
|
+
} else {
|
|
244
|
+
ops.push({ op: 'unset', path: [DISABLED_FIELD, name] });
|
|
245
|
+
}
|
|
210
246
|
});
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
247
|
+
return ops.concat(LEGACY_FIELDS.map(function (field) {
|
|
248
|
+
return { op: 'unset', path: [field] };
|
|
249
|
+
}));
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
async _submit(names, ops) {
|
|
253
|
+
if (!this.scope || this.scope.disposed || typeof this.scope.mutate !== 'function') {
|
|
254
|
+
var err = new Error(this.t('hostUnavailable'));
|
|
255
|
+
console.error('[dsh-superpower] form.mutate failed:', err);
|
|
256
|
+
this._setFailures(names, this.t('writeFailed') + ': ' + err.message);
|
|
257
|
+
return false;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
this._setPending(names, true);
|
|
261
|
+
this._clearFailures(names);
|
|
262
|
+
|
|
263
|
+
try {
|
|
264
|
+
var accepted = await this.scope.mutate(ops);
|
|
265
|
+
if (accepted === false) {
|
|
266
|
+
throw new Error(this.t('writeFailed'));
|
|
267
|
+
}
|
|
268
|
+
this._clearFailures(names);
|
|
269
|
+
return true;
|
|
270
|
+
} catch (error) {
|
|
271
|
+
console.error('[dsh-superpower] form.mutate failed:', error);
|
|
272
|
+
var msg = this.t('writeFailed') + ': ' + String(error && error.message ? error.message : error);
|
|
273
|
+
this._setFailures(names, msg);
|
|
274
|
+
return false;
|
|
275
|
+
} finally {
|
|
276
|
+
this._setPending(names, false);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
_setPending(names, isPending) {
|
|
281
|
+
var next = Object.assign({}, this.pending);
|
|
282
|
+
names.forEach(function (name) {
|
|
283
|
+
if (isPending) next[name] = true;
|
|
284
|
+
else delete next[name];
|
|
220
285
|
});
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
}
|
|
286
|
+
this.pending = next;
|
|
287
|
+
this._notify();
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
_setFailures(names, message) {
|
|
291
|
+
var next = Object.assign({}, this.failures);
|
|
292
|
+
names.forEach(function (name) { next[name] = message; });
|
|
293
|
+
this.failures = next;
|
|
294
|
+
this._notify();
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
_clearFailures(names) {
|
|
298
|
+
var next = Object.assign({}, this.failures);
|
|
299
|
+
var changed = false;
|
|
300
|
+
names.forEach(function (name) {
|
|
301
|
+
if (next[name]) {
|
|
302
|
+
delete next[name];
|
|
303
|
+
changed = true;
|
|
304
|
+
}
|
|
305
|
+
});
|
|
306
|
+
if (changed) {
|
|
307
|
+
this.failures = next;
|
|
308
|
+
this._notify();
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
toggle(name, nextState) {
|
|
313
|
+
var snap = this.getSnapshot();
|
|
314
|
+
var op = nextState ? 'enable' : 'disable';
|
|
315
|
+
var legacyCarry = snap.legacyActive ? snap.disabled : null;
|
|
316
|
+
var ops = this._buildOps([name], op, legacyCarry);
|
|
317
|
+
return this._submit([name], ops);
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
setLanguage(next) {
|
|
321
|
+
var ops = next === 'auto'
|
|
322
|
+
? [{ op: 'unset', path: [LANGUAGE_FIELD] }]
|
|
323
|
+
: [{ op: 'set', path: [LANGUAGE_FIELD], value: next }];
|
|
324
|
+
return this._submit(['language'], ops);
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
enableAll() {
|
|
328
|
+
var ops = this._buildOps(this.allNames, 'enable');
|
|
329
|
+
return this._submit(this.allNames, ops);
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
disableAll() {
|
|
333
|
+
var ops = this._buildOps(this.allNames, 'disable');
|
|
334
|
+
return this._submit(this.allNames, ops);
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
resetAll() {
|
|
338
|
+
// Q2 裁决:恢复默认纯粹重置技能禁言表,保持语言偏好正交独立
|
|
339
|
+
return this.enableAll();
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
dispose() {
|
|
343
|
+
if (this.unsubscribe) {
|
|
344
|
+
this.unsubscribe();
|
|
345
|
+
this.unsubscribe = null;
|
|
346
|
+
}
|
|
347
|
+
this.listeners.clear();
|
|
348
|
+
}
|
|
224
349
|
}
|
|
225
350
|
|
|
226
351
|
/**
|
|
227
|
-
*
|
|
352
|
+
* 技能开关面板 (View)。纯渲染视图,完全由 SwitchPanelModel 控制器驱动。
|
|
228
353
|
*
|
|
229
|
-
* props.
|
|
230
|
-
* props.actions 是本面板独占的写操作面。
|
|
354
|
+
* props.actions.form 是本面板绑定的 ConfigForm 控制器。
|
|
231
355
|
*/
|
|
232
356
|
function SkillSwitchPanel(props) {
|
|
233
357
|
var t = props.t;
|
|
234
358
|
var form = props.actions.form;
|
|
235
|
-
var state = props.useSwitches(function (value) { return value; });
|
|
236
359
|
var hostActive = props.useLocaleActive(function (v) { return v && v.preference === 'en' ? 'en' : 'zh'; });
|
|
360
|
+
var allNames = SKILL_CATALOG.map(function (skill) { return skill.name; });
|
|
361
|
+
|
|
362
|
+
var modelRef = React.useRef(null);
|
|
363
|
+
if (!modelRef.current) {
|
|
364
|
+
modelRef.current = new SwitchPanelModel(form, { t: t, allNames: allNames });
|
|
365
|
+
} else {
|
|
366
|
+
modelRef.current.updateScope(form);
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
React.useEffect(() => {
|
|
370
|
+
return () => {
|
|
371
|
+
if (modelRef.current) modelRef.current.dispose();
|
|
372
|
+
};
|
|
373
|
+
}, []);
|
|
374
|
+
|
|
375
|
+
var state = React.useSyncExternalStore(
|
|
376
|
+
(listener) => modelRef.current.subscribe(listener),
|
|
377
|
+
() => modelRef.current.getSnapshot()
|
|
378
|
+
);
|
|
379
|
+
var controller = modelRef.current;
|
|
237
380
|
|
|
238
381
|
var keywordState = React.useState('');
|
|
239
382
|
var keyword = keywordState[0];
|
|
240
383
|
var setKeyword = keywordState[1];
|
|
241
|
-
var pendingState = React.useState({});
|
|
242
|
-
var pending = pendingState[0];
|
|
243
|
-
var setPending = pendingState[1];
|
|
244
|
-
var failuresState = React.useState({});
|
|
245
|
-
var failures = failuresState[0];
|
|
246
|
-
var setFailures = failuresState[1];
|
|
247
384
|
|
|
248
385
|
if (state.status !== 'ready') {
|
|
249
386
|
return h('div', { className: 'spSw' },
|
|
@@ -251,15 +388,18 @@ window.__ModuleLoader__.load({
|
|
|
251
388
|
h('p', { className: 'spSwIntro' }, t('hostUnavailable')));
|
|
252
389
|
}
|
|
253
390
|
|
|
254
|
-
var
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
var
|
|
258
|
-
var
|
|
259
|
-
|
|
391
|
+
var disabled = state.disabled;
|
|
392
|
+
var language = state.language;
|
|
393
|
+
var langConfigured = state.langConfigured;
|
|
394
|
+
var langValue = state.langValue;
|
|
395
|
+
var langOptions = [
|
|
396
|
+
{ value: 'zh', label: t('langZh') },
|
|
397
|
+
{ value: 'en', label: t('langEn') },
|
|
398
|
+
{ value: 'auto', label: t('langAuto') },
|
|
399
|
+
];
|
|
400
|
+
var writable = state.writable;
|
|
260
401
|
|
|
261
402
|
var lower = keyword.trim().toLowerCase();
|
|
262
|
-
/* 描述取词:按当前语言偏好取对应语言文本,两侧都参与搜索过滤。 */
|
|
263
403
|
var skillText = function (skill) {
|
|
264
404
|
var effective = language === undefined ? hostActive : language;
|
|
265
405
|
return effective === 'en' && skill.descriptionEn ? skill.descriptionEn : skill.description;
|
|
@@ -273,11 +413,9 @@ window.__ModuleLoader__.load({
|
|
|
273
413
|
|| (skill.descriptionEn || '').toLowerCase().indexOf(lower) >= 0;
|
|
274
414
|
});
|
|
275
415
|
|
|
276
|
-
var allNames = SKILL_CATALOG.map(function (skill) { return skill.name; });
|
|
277
|
-
|
|
278
416
|
var rows = shown.map(function (skill) {
|
|
279
|
-
var busy = !!pending[skill.name] || !writable;
|
|
280
|
-
var failure = failures[skill.name];
|
|
417
|
+
var busy = !!state.pending[skill.name] || !writable;
|
|
418
|
+
var failure = state.failures[skill.name];
|
|
281
419
|
var on = !isBlocked(disabled, skill.name);
|
|
282
420
|
return h('li', { key: skill.name, className: 'spSwItem' },
|
|
283
421
|
h('div', { className: 'spSwMain' },
|
|
@@ -292,7 +430,7 @@ window.__ModuleLoader__.load({
|
|
|
292
430
|
label: t('invocable') + ' ' + skill.name,
|
|
293
431
|
title: t('invocableHint'),
|
|
294
432
|
onChange: function (next) {
|
|
295
|
-
|
|
433
|
+
controller.toggle(skill.name, next);
|
|
296
434
|
},
|
|
297
435
|
})));
|
|
298
436
|
});
|
|
@@ -301,51 +439,41 @@ window.__ModuleLoader__.load({
|
|
|
301
439
|
h('h4', { className: 'spSwTitle' }, t('title')),
|
|
302
440
|
h('p', { className: 'spSwIntro' }, t('intro')),
|
|
303
441
|
h('div', { className: 'spSwLangBar' },
|
|
304
|
-
h('
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
failures['language'] ? h('span', { className: 'spSwLangFailure', role: 'alert' }, failures['language']) : null),
|
|
317
|
-
|
|
318
|
-
h('li', { className: 'spSwMetaItem' }, t('provider'), h('code', null, PROVIDER_NAME)),
|
|
319
|
-
h('li', { className: 'spSwMetaItem' }, t('rank'), h('code', null, String(PROVIDER_RANK))),
|
|
320
|
-
h('li', { className: 'spSwMetaItem' }, t('source'), h('code', null, SKILL_SOURCE)),
|
|
321
|
-
h('li', { className: 'spSwMetaItem' }, t('build'), h('code', null, PACKAGE_VERSION))),
|
|
442
|
+
h('div', { className: 'spSwLangTitle' }, t('langTitle')),
|
|
443
|
+
h(P.SegmentedControl, {
|
|
444
|
+
id: 'spSwLang',
|
|
445
|
+
label: t('langTitle'),
|
|
446
|
+
value: langValue,
|
|
447
|
+
options: langOptions,
|
|
448
|
+
disabled: !writable || !!state.pending['language'],
|
|
449
|
+
onChange: function (next) { controller.setLanguage(next); },
|
|
450
|
+
}),
|
|
451
|
+
!langConfigured
|
|
452
|
+
? h('p', { className: 'spSwLangNote' }, t('langUnsetHint', { lang: t(hostActive === 'en' ? 'langEn' : 'langZh') }))
|
|
453
|
+
: h('p', { className: 'spSwLangNote' }, t('langNote')),
|
|
454
|
+
state.failures['language'] ? h('span', { className: 'spSwLangFailure', role: 'alert' }, state.failures['language']) : null),
|
|
455
|
+
|
|
322
456
|
h('div', { className: 'spSwBar' },
|
|
323
457
|
h(P.Button, {
|
|
324
458
|
variant: 'outline',
|
|
325
459
|
size: 'sm',
|
|
326
460
|
disabled: !writable,
|
|
327
461
|
title: t('resetHint'),
|
|
328
|
-
onClick: function () {
|
|
329
|
-
submit(form, t, allNames, 'enable', setPending, setFailures);
|
|
330
|
-
},
|
|
462
|
+
onClick: function () { controller.enableAll(); },
|
|
331
463
|
}, t('enableAll')),
|
|
332
464
|
h(P.Button, {
|
|
333
465
|
variant: 'outline',
|
|
334
466
|
size: 'sm',
|
|
335
467
|
disabled: !writable,
|
|
336
468
|
title: t('disableAllHint'),
|
|
337
|
-
onClick: function () {
|
|
338
|
-
submit(form, t, allNames, 'disable', setPending, setFailures);
|
|
339
|
-
},
|
|
469
|
+
onClick: function () { controller.disableAll(); },
|
|
340
470
|
}, t('disableAll')),
|
|
341
471
|
h(P.Button, {
|
|
342
472
|
variant: 'ghost',
|
|
343
473
|
size: 'sm',
|
|
344
474
|
disabled: !writable,
|
|
345
475
|
title: t('resetHint'),
|
|
346
|
-
onClick: function () {
|
|
347
|
-
submit(form, t, allNames, 'enable', setPending, setFailures);
|
|
348
|
-
},
|
|
476
|
+
onClick: function () { controller.resetAll(); },
|
|
349
477
|
}, t('resetAll')),
|
|
350
478
|
h(P.Input, {
|
|
351
479
|
className: 'spSwSearch',
|
|
@@ -371,12 +499,15 @@ window.__ModuleLoader__.load({
|
|
|
371
499
|
|
|
372
500
|
/* 注入面板样式。必须真注入:类名只写在 CSS 字符串里而不落进 <head>,
|
|
373
501
|
面板会退回浏览器默认样式(16px 正文、无行高、无分隔线),且无任何报错。 */
|
|
374
|
-
if (typeof document !== 'undefined'
|
|
375
|
-
var tag = document.
|
|
376
|
-
tag
|
|
377
|
-
|
|
502
|
+
if (typeof document !== 'undefined') {
|
|
503
|
+
var tag = document.querySelector('style[data-plugin-css=' + JSON.stringify(CSS_ID) + ']');
|
|
504
|
+
if (!tag) {
|
|
505
|
+
tag = document.createElement('style');
|
|
506
|
+
tag.dataset.plugin = PACKAGE_NAME;
|
|
507
|
+
tag.dataset.pluginCss = CSS_ID;
|
|
508
|
+
document.head.appendChild(tag);
|
|
509
|
+
}
|
|
378
510
|
tag.textContent = CSS;
|
|
379
|
-
document.head.appendChild(tag);
|
|
380
511
|
}
|
|
381
512
|
|
|
382
513
|
var form = ctx.configForms.get(SETTINGS_NAMESPACE);
|
|
@@ -401,6 +532,7 @@ window.__ModuleLoader__.load({
|
|
|
401
532
|
|
|
402
533
|
exports.apply = apply;
|
|
403
534
|
exports.inject = ['slots', 'configForms', 'locale'];
|
|
535
|
+
exports.SwitchPanelModel = SwitchPanelModel;
|
|
404
536
|
return module.exports;
|
|
405
537
|
},
|
|
406
538
|
});
|
package/lib/document.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../src/document.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAG7E,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,OAAO,CAAA;IACvB,aAAa,EAAE,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,OAAO,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,qBAAqB,CAAA;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC/B;
|
|
1
|
+
{"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../src/document.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAG7E,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,OAAO,CAAA;IACvB,aAAa,EAAE,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,OAAO,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,qBAAqB,CAAA;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC/B;AAiGD,qBAAa,aAAa;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,2DAA2D;IAC3D,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,UAAU,EAAE,qBAAqB,CAAA;IAC1C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAEpD,OAAO;IAgCP;;OAEG;WACU,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAWrF;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,SAAa,GAAG,aAAa;IAKpE;;OAEG;WACU,QAAQ,IAAI,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAkD3D;;OAEG;IACH,cAAc,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,MAAM;IAI9C;;OAEG;IACH,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,cAAc;IAiBvF;;OAEG;IACH,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,eAAe;CAe5E"}
|
package/lib/document.js
CHANGED
|
@@ -20,10 +20,6 @@ function stringField(data, key) {
|
|
|
20
20
|
const v = data[key];
|
|
21
21
|
return typeof v === 'string' && v.length > 0 ? v : undefined;
|
|
22
22
|
}
|
|
23
|
-
function optionalString(data, key) {
|
|
24
|
-
const v = data[key];
|
|
25
|
-
return typeof v === 'string' && v.length > 0 ? { [key]: v } : {};
|
|
26
|
-
}
|
|
27
23
|
function frontmatterBoolean(data, key) {
|
|
28
24
|
if (!Object.hasOwn(data, key))
|
|
29
25
|
return undefined;
|
package/lib/document.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document.js","sourceRoot":"","sources":["../src/document.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,CAAA;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAsBpD,8EAA8E;AAC9E,6BAA6B;AAC7B,8EAA8E;AAE9E,SAAS,WAAW,CAAC,IAA6B,EAAE,GAAW;IAC7D,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;IACnB,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AAC9D,CAAC;AAED,SAAS,
|
|
1
|
+
{"version":3,"file":"document.js","sourceRoot":"","sources":["../src/document.ts"],"names":[],"mappings":"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"}
|
package/lib/superpowers.d.ts
CHANGED
|
@@ -20,6 +20,11 @@ declare module '@deepseek-ai/cordis' {
|
|
|
20
20
|
* @mode emit
|
|
21
21
|
*/
|
|
22
22
|
'loader/volatile-update'(paths: readonly (readonly string[])[]): void;
|
|
23
|
+
/**
|
|
24
|
+
* 宿主配置重载通知(在 profile 补丁应用后广播),宿主界面语言变更经此收敛。
|
|
25
|
+
* @mode emit
|
|
26
|
+
*/
|
|
27
|
+
'app-boot/config-reload'(): void;
|
|
23
28
|
}
|
|
24
29
|
}
|
|
25
30
|
export declare const Config: Schema<Config>;
|
package/lib/superpowers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"superpowers.d.ts","sourceRoot":"","sources":["../src/superpowers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAQ5D,OAAO,MAAM,MAAM,0BAA0B,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAI7C,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,KAAK,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAC3F,OAAO,EAAE,aAAa,EAAE,KAAK,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAQ1E,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,MAAM;QACd;;;;WAIG;QACH,wBAAwB,CAAC,KAAK,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GAAG,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"superpowers.d.ts","sourceRoot":"","sources":["../src/superpowers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAQ5D,OAAO,MAAM,MAAM,0BAA0B,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAI7C,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,KAAK,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAC3F,OAAO,EAAE,aAAa,EAAE,KAAK,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAQ1E,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,MAAM;QACd;;;;WAIG;QACH,wBAAwB,CAAC,KAAK,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GAAG,IAAI,CAAA;QACrE;;;WAGG;QACH,wBAAwB,IAAI,IAAI,CAAA;KACjC;CACF;AAMD,eAAO,MAAM,MAAM,EAmC0C,MAAM,CAAC,MAAM,CAAC,CAAA;AAE3E,MAAM,WAAW,MAAM;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,wDAAwD;IACxD,QAAQ,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC,CAAA;IAC3C,2CAA2C;IAC3C,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAC3C,wCAAwC;IACxC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAChD,kCAAkC;IAClC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;CAChD;AAMD,eAAO,MAAM,IAAI,gBAAgB,CAAA;AACjC,eAAO,MAAM,MAAM,qBAAsB,CAAA;AA8GzC,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CA6CxD;;;;;;;;;AAED,wBAA2E"}
|