deepseekharness-remotecontrol 0.7.2 → 0.7.3
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.
|
@@ -28,37 +28,37 @@
|
|
|
28
28
|
fetch(link.href, fetchOpts);
|
|
29
29
|
}
|
|
30
30
|
})();
|
|
31
|
-
// node_modules
|
|
31
|
+
// node_modules/preact/dist/preact.mjs
|
|
32
32
|
var n;
|
|
33
33
|
var t;
|
|
34
|
-
var i;
|
|
35
34
|
var u;
|
|
35
|
+
var i;
|
|
36
36
|
var f;
|
|
37
|
-
var e;
|
|
38
37
|
var o;
|
|
38
|
+
var e;
|
|
39
39
|
var l;
|
|
40
40
|
var c;
|
|
41
41
|
var a;
|
|
42
42
|
var h = Symbol.for("pv");
|
|
43
43
|
var p = {};
|
|
44
|
-
var
|
|
45
|
-
var
|
|
44
|
+
var y = [];
|
|
45
|
+
var v = /^m(i|n|o|s|text|space)$/;
|
|
46
46
|
var w = Array.isArray;
|
|
47
|
-
var d =
|
|
47
|
+
var d = y.slice;
|
|
48
48
|
var _ = Object.assign;
|
|
49
49
|
function g(n) {
|
|
50
50
|
n && n.parentNode && n.remove();
|
|
51
51
|
}
|
|
52
52
|
function k(n, t, r) {
|
|
53
|
-
var
|
|
54
|
-
for (f in t) "key" == f ?
|
|
55
|
-
return
|
|
53
|
+
var u, i, f, o = {}, e = arguments.length;
|
|
54
|
+
for (f in t) "key" == f ? u = t[f] : "ref" == f && "function" != typeof n ? i = t[f] : o[f] = t[f];
|
|
55
|
+
return e > 2 && (o.children = e > 3 ? d.call(arguments, 2) : r), m(n, o, u, i, null);
|
|
56
56
|
}
|
|
57
|
-
function m(r,
|
|
58
|
-
var
|
|
57
|
+
function m(r, u, i, f, o) {
|
|
58
|
+
var e = {
|
|
59
59
|
type: r,
|
|
60
|
-
props:
|
|
61
|
-
key:
|
|
60
|
+
props: u,
|
|
61
|
+
key: i,
|
|
62
62
|
ref: f,
|
|
63
63
|
__k: null,
|
|
64
64
|
__: null,
|
|
@@ -66,13 +66,13 @@ function m(r, i, u, f, e) {
|
|
|
66
66
|
__e: null,
|
|
67
67
|
__c: null,
|
|
68
68
|
constructor: h,
|
|
69
|
-
__v:
|
|
69
|
+
__v: o || ++t,
|
|
70
70
|
__i: -1,
|
|
71
71
|
__u: 0
|
|
72
72
|
};
|
|
73
|
-
return !
|
|
73
|
+
return !o && n.vnode && n.vnode(e), e;
|
|
74
74
|
}
|
|
75
|
-
function
|
|
75
|
+
function $(n) {
|
|
76
76
|
return n.children;
|
|
77
77
|
}
|
|
78
78
|
function x(n, t) {
|
|
@@ -83,73 +83,76 @@ function S(n, t) {
|
|
|
83
83
|
for (var r; t < n.__k.length; t++) if ((r = n.__k[t]) && r.__e) return r.__e;
|
|
84
84
|
return "function" != typeof n.type || n.props.__P ? null : S(n);
|
|
85
85
|
}
|
|
86
|
-
function C(
|
|
86
|
+
function C(t) {
|
|
87
|
+
var r, u = t.__v, i = u.__e, f = [], o = [], e = t.__P;
|
|
88
|
+
e && ((r = _({ constructor: h }, u)).__v = u.__v + 1, n.vnode && n.vnode(r), z(e, r, u, t.__n, e.namespaceURI, 32 & u.__u ? [i] : null, f, i || S(u), 32 & u.__u, o), r.__v = u.__v, r.__.__k[r.__i] = r, E(f, r, o), u.__ = u.__e = null, r.__e != i && j(r));
|
|
89
|
+
}
|
|
90
|
+
function j(n) {
|
|
87
91
|
if ((n = n.__) && n.__c && !n.props.__P) return n.__e = null, n.__k.some(function(t) {
|
|
88
92
|
return t && (n.__e = t.__e);
|
|
89
|
-
}),
|
|
93
|
+
}), j(n);
|
|
90
94
|
}
|
|
91
|
-
function
|
|
92
|
-
(8 & t.__g || (t.__g |= 8,
|
|
95
|
+
function L(t) {
|
|
96
|
+
(8 & t.__g || (t.__g |= 8, u.push(t), f++)) && i == n.debounceRendering || ((i = n.debounceRendering) || queueMicrotask)(H);
|
|
93
97
|
}
|
|
94
|
-
function
|
|
95
|
-
var t, r, o, l, c, a, s, p, v;
|
|
98
|
+
function H() {
|
|
96
99
|
try {
|
|
97
|
-
for (
|
|
100
|
+
for (var n, t = 1; u.length;) u.length > t && u.sort(o), n = u.shift(), t = u.length, 8 & n.__g && C(n);
|
|
98
101
|
} finally {
|
|
99
|
-
(f =
|
|
102
|
+
(f = u.length) && (i || queueMicrotask)(H);
|
|
100
103
|
}
|
|
101
104
|
}
|
|
102
|
-
function
|
|
103
|
-
var s, h,
|
|
104
|
-
for (l =
|
|
105
|
+
function I(n, t, r, u, i, f, o, e, l, c, a) {
|
|
106
|
+
var s, h, v, w, d, _, g = u.__k || y, k = t.length;
|
|
107
|
+
for (l = q(r, t, g, l, k), s = 0; s < k; s++) null != (v = r.__k[s]) && (h = ~v.__i && g[v.__i] || p, v.__i = s, _ = z(n, v, h, i, f, o, e, l, c, a), w = v.__e, (h.ref != v.ref || 8 & h.__u) && (h.ref && G(h.ref, null, v, h), v.ref && a.push(v.ref, v.__c || w, v)), d = d || w, 4 & v.__u ? (l = A(v, l, n, !h.__v), h.__e && (h.__e = null)) : "function" == typeof v.type && void 0 !== _ ? l = _ : w && (l = w.nextSibling), v.__u &= -21);
|
|
105
108
|
return r.__e = d, l;
|
|
106
109
|
}
|
|
107
|
-
function
|
|
108
|
-
var f,
|
|
109
|
-
for (f = 0; f <
|
|
110
|
+
function q(n, t, r, u, i) {
|
|
111
|
+
var f, o, e, l, c, a, s, p, y, v = r.length, d = v, _ = 0, g = 0, k = n.__k = Array(i);
|
|
112
|
+
for (f = 0; f < i; f++) null != (o = t[f]) && "boolean" != typeof o && "function" != typeof o ? ("object" != typeof o || o.constructor === String ? o = k[f] = m(null, o) : w(o) ? o = k[f] = m($, { children: o }) : o.constructor === h && o.__b ? o = k[f] = m(o.type, o.props, o.key, o.ref, o.__v) : k[f] = o, l = f + _, o.__ = n, o.__b = n.__b + 1, e = null, ~(c = o.__i = P(o, r, l, d)) && (d--, (e = r[c]) && (e.__u |= 2)), e && e.__v ? (o.__u |= 16, c == l - 1 ? _-- : c == l + 1 ? _++ : c != l && (c > l ? _-- : _++, g = 1)) : (~c || (i > v ? _-- : i < v && _++), "function" != typeof o.type && (o.__u |= 4))) : k[f] = null;
|
|
110
113
|
if (g) {
|
|
111
|
-
for (a = [], s = [], f = 0; f <
|
|
112
|
-
for (_ = 0, p = a.length; _ < p;) a[
|
|
113
|
-
a[_] =
|
|
114
|
+
for (a = [], s = [], f = 0; f < i; f++) if ((o = k[f]) && 16 & o.__u) {
|
|
115
|
+
for (_ = 0, p = a.length; _ < p;) a[y = _ + p >> 1] < o.__i ? _ = y + 1 : p = y;
|
|
116
|
+
a[_] = o.__i, s[f] = _ + 1;
|
|
114
117
|
}
|
|
115
118
|
for (_ = a.length; f--;) s[f] && (s[f] == _ ? _-- : k[f].__u |= 4);
|
|
116
119
|
}
|
|
117
|
-
if (d) for (f = 0; f <
|
|
118
|
-
return
|
|
120
|
+
if (d) for (f = 0; f < v; f++) !(e = r[f]) || 2 & e.__u || (e.__e == u && (u = S(e)), J(e, e));
|
|
121
|
+
return u;
|
|
119
122
|
}
|
|
120
|
-
function
|
|
121
|
-
var
|
|
123
|
+
function A(n, t, r, u) {
|
|
124
|
+
var i, f, o, e;
|
|
122
125
|
if ("function" == typeof n.type) {
|
|
123
126
|
if (n.props.__P) return t;
|
|
124
|
-
if (
|
|
127
|
+
if (i = n.__k) for (f = 0; f < i.length; f++) i[f] && (i[f].__ = n, t = A(i[f], t, r, !1));
|
|
125
128
|
return t;
|
|
126
129
|
}
|
|
127
|
-
for (t && !t.parentNode && (t = S(n)) && !t.parentNode && (t = null),
|
|
128
|
-
for (
|
|
130
|
+
for (t && !t.parentNode && (t = S(n)) && !t.parentNode && (t = null), o = n.__e, e = t; e && 8 == e.nodeType;) e = e.nextSibling;
|
|
131
|
+
for (o != e && (!u && r.moveBefore && o.parentNode ? r.moveBefore(o, t) : r.insertBefore(o, t || null)), t = o; (t = t && t.nextSibling) && 8 == t.nodeType && !t.data.startsWith("$s"););
|
|
129
132
|
return t;
|
|
130
133
|
}
|
|
131
|
-
function
|
|
132
|
-
var
|
|
133
|
-
if (null ===
|
|
134
|
-
if (
|
|
135
|
-
for (
|
|
136
|
-
for (
|
|
134
|
+
function P(n, t, r, u) {
|
|
135
|
+
var i, f = n.key, o = n.type, e = t[r], l = e && !(2 & e.__u);
|
|
136
|
+
if (null === e && null == f || l && f == e.key && o == e.type) return r;
|
|
137
|
+
if (u > (l ? 1 : 0)) {
|
|
138
|
+
for (i = r - 1; i >= 0; i--) if ((e = t[i]) && !(2 & e.__u) && f == e.key && o == e.type) return i;
|
|
139
|
+
for (i = r + 1; i < t.length; i++) if ((e = t[i]) && !(2 & e.__u) && f == e.key && o == e.type) return i;
|
|
137
140
|
}
|
|
138
141
|
return -1;
|
|
139
142
|
}
|
|
140
|
-
function
|
|
143
|
+
function T(n, t, r) {
|
|
141
144
|
r ??= "", "-" == t[0] ? n.setProperty(t, r) : n[t] = r;
|
|
142
145
|
}
|
|
143
|
-
function
|
|
144
|
-
var f,
|
|
146
|
+
function N(n, t, r, u, i) {
|
|
147
|
+
var f, o;
|
|
145
148
|
if ("style" == t) if ("string" == typeof r) n.style.cssText = r;
|
|
146
149
|
else {
|
|
147
|
-
if ("string" == typeof
|
|
148
|
-
if (r) for (t in r)
|
|
150
|
+
if ("string" == typeof u && (n.style.cssText = u = ""), u) for (t in u) r && t in r || T(n.style, t);
|
|
151
|
+
if (r) for (t in r) u && r[t] == u[t] || T(n.style, t, r[t]);
|
|
149
152
|
}
|
|
150
|
-
else if ("o" == t[0] && "n" == t[1]) (n.__e || (n.__e = {}))[t] = r, r &&
|
|
153
|
+
else if ("o" == t[0] && "n" == t[1]) "function" != typeof r && (r = null), "function" != typeof u && (u = null), (n.__e || (n.__e = {}))[t] = r, r && u || (o = a[t] || (a[t] = V(t)), (n.__a || (n.__a = {}))[t] = c, f = t != (t = t.replace(l, "$1")), (t = t.slice(2))[0] < "a" && (t = t.toLowerCase()), r ? n.addEventListener(t, o, f) : n.removeEventListener(t, o, f));
|
|
151
154
|
else {
|
|
152
|
-
if ("http://www.w3.org/2000/svg" ==
|
|
155
|
+
if ("http://www.w3.org/2000/svg" == i) t = t.replace(/xlink(H|:h)/, "h").replace(/sName$/, "s");
|
|
153
156
|
else if ("width" != t && "height" != t && "href" != t && "list" != t && "form" != t && "tabIndex" != t && "download" != t && "rowSpan" != t && "colSpan" != t && "role" != t && "popover" != t && t in n) try {
|
|
154
157
|
n[t] = null == r ? "" : r;
|
|
155
158
|
return;
|
|
@@ -158,65 +161,65 @@ function T(n, t, r, i, u) {
|
|
|
158
161
|
null == r || !1 === r && "-" != t[4] ? n.removeAttribute(t) : n.setAttribute(t, "popover" == t && 1 == r ? "" : r);
|
|
159
162
|
}
|
|
160
163
|
}
|
|
161
|
-
function
|
|
164
|
+
function V(t) {
|
|
162
165
|
return function(r) {
|
|
163
|
-
var
|
|
164
|
-
if (
|
|
165
|
-
if (
|
|
166
|
-
else if (r[
|
|
167
|
-
return
|
|
166
|
+
var u = this.__e;
|
|
167
|
+
if (u) {
|
|
168
|
+
if (u = u[t], null == r[e]) r[e] = c++;
|
|
169
|
+
else if (r[e] < this.__a[t]) return;
|
|
170
|
+
return u(n.event ? n.event(r) : r);
|
|
168
171
|
}
|
|
169
172
|
};
|
|
170
173
|
}
|
|
171
|
-
function
|
|
172
|
-
var s, p,
|
|
174
|
+
function z(t, r, u, i, f, o, e, l, c, a) {
|
|
175
|
+
var s, p, v, d, k, b, m, M, C, j, L, H, q, A, O, P, T, N, V = r.type;
|
|
173
176
|
if (r.constructor !== h) return null;
|
|
174
|
-
128 &
|
|
177
|
+
128 & u.__u && (c = 32 & u.__u, s = u.__c.__z) && (r.__u |= c, p = o = [], 8 == s.nodeType ? l = B(s, o) : o.push(s), l = o[0] || l), (s = n.__b) && s(r);
|
|
175
178
|
n: if ("function" == typeof V) {
|
|
176
|
-
|
|
179
|
+
v = e.length;
|
|
177
180
|
try {
|
|
178
|
-
if (
|
|
179
|
-
if (
|
|
180
|
-
r.__v !=
|
|
181
|
+
if (M = r.props, C = (s = V.prototype) && s.render, j = (s = V.contextType) && i[s.__c], L = s ? j ? j.props.value : s.__ : i, (d = u.__c) ? (r.__c = d, 2 & d.__g && (d.__g |= 1)) : (C ? r.__c = d = new V(M, L) : (r.__c = d = new x(M, L), d.constructor = V, d.render = K), j && j.sub(d), d.state || (d.state = {}), d.__n = i, d.__g |= 8, d.__h = [], d.__k = []), C && (d.__s || (d.__s = d.state), V.getDerivedStateFromProps && (d.__s == d.state && (d.__s = _({}, d.__s)), _(d.__s, V.getDerivedStateFromProps(M, d.__s)))), k = d.props, b = d.state, d.__v = r, u.__c) {
|
|
182
|
+
if (M !== k && C && !V.getDerivedStateFromProps && d.componentWillReceiveProps && d.componentWillReceiveProps(M, L), r.__v == u.__v && !(8 & d.__g) || !(4 & d.__g) && d.shouldComponentUpdate && !1 === d.shouldComponentUpdate(M, d.__s, L)) {
|
|
183
|
+
r.__v != u.__v && (d.props = M, d.state = d.__s, d.__g &= -9), r.__e = u.__e, r.__k = u.__k, r.__k.some(function(n) {
|
|
181
184
|
n && (n.__ = r);
|
|
182
|
-
}),
|
|
185
|
+
}), y.push.apply(d.__h, d.__k), d.__k = [], d.__h.length && e.push(d), l = S(u);
|
|
183
186
|
break n;
|
|
184
187
|
}
|
|
185
|
-
d.componentWillUpdate && d.componentWillUpdate(
|
|
188
|
+
d.componentWillUpdate && d.componentWillUpdate(M, d.__s, L), C && d.componentDidUpdate && d.__h.push(function() {
|
|
186
189
|
d.componentDidUpdate(k, b, m);
|
|
187
190
|
});
|
|
188
191
|
} else C && !V.getDerivedStateFromProps && d.componentWillMount && d.componentWillMount(), C && d.componentDidMount && d.__h.push(d.componentDidMount);
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
d.__g &= -9,
|
|
192
|
+
d.context = L, d.props = M, d.__P = t, d.__g &= -5, H = n.__r, q = C ? 25 : 0;
|
|
193
|
+
do
|
|
194
|
+
d.__g &= -9, H && H(r), s = d.render(d.props, d.state = d.__s, d.context);
|
|
192
195
|
while (8 & d.__g && ++q < 25);
|
|
193
|
-
d.state = d.__s, d.getChildContext && (
|
|
194
|
-
n &&
|
|
195
|
-
}),
|
|
196
|
+
C && (y.push.apply(d.__h, d.__k), d.__k = []), d.state = d.__s, d.getChildContext && (i = _({}, i, d.getChildContext())), C && u.__c && d.getSnapshotBeforeUpdate && (m = d.getSnapshotBeforeUpdate(k, b)), A = s && s.type === $ && null == s.key ? s.props.children : s, M.__P && (s = l, f = (t = M.__P).namespaceURI, c = o = null, u.props && u.props.__P != t && (u.__k.some(function(n) {
|
|
197
|
+
n && J(n, n);
|
|
198
|
+
}), u.__k = null), l = u.__k ? S(u, 0) : null), l = I(t, w(A) ? A : [A], r, u, i, f, o, e, l, c, a), M.__P && (r.__e = null, l = s), r.__u &= -161, p && p.some(g), d.__h.length && e.push(d), 1 & d.__g && (d.__g &= -4);
|
|
196
199
|
} catch (t) {
|
|
197
|
-
if (
|
|
198
|
-
if (
|
|
199
|
-
for (~(T =
|
|
200
|
-
for (; T <
|
|
201
|
-
if (
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
200
|
+
if (e.length = v, r.__v = null, c || o) if (t && t.then) {
|
|
201
|
+
if (r.__u |= 128 | c, o) {
|
|
202
|
+
for (~(T = o.indexOf(l || void 0)) || (T = o.length); (N = o[T - 1]) && 8 == N.nodeType;) T--;
|
|
203
|
+
for (; T < o.length; T++) if (N = o[T]) if (o[T] = null, O) {
|
|
204
|
+
if (N == P) break;
|
|
205
|
+
} else {
|
|
206
|
+
if (8 != N.nodeType) break;
|
|
207
|
+
N.data.startsWith("$s") && (P = B(O = N));
|
|
205
208
|
}
|
|
206
209
|
}
|
|
207
|
-
if (!
|
|
210
|
+
if (!O) {
|
|
208
211
|
for (; l && 8 == l.nodeType && l.nextSibling;) l = l.nextSibling;
|
|
209
|
-
|
|
212
|
+
O = l;
|
|
210
213
|
}
|
|
211
|
-
(s =
|
|
212
|
-
} else
|
|
213
|
-
else r.__e =
|
|
214
|
-
r.__k || (r.__k =
|
|
214
|
+
(s = B(O = r.__c.__z || (r.__c.__z = O))) ? (r.__e = O, l = s) : r.__e = l, l = l && l.nextSibling;
|
|
215
|
+
} else o && o.some(g);
|
|
216
|
+
else r.__e = u.__e;
|
|
217
|
+
r.__k || (r.__k = u.__k || []), t && t.then || D(r), n.__e(t, r, u);
|
|
215
218
|
}
|
|
216
|
-
} else l = r.__e =
|
|
219
|
+
} else l = r.__e = F(u.__e, r, u, i, f, o, e, c, a, t);
|
|
217
220
|
return (s = n.diffed) && s(r), l;
|
|
218
221
|
}
|
|
219
|
-
function
|
|
222
|
+
function B(n, t) {
|
|
220
223
|
if (n && 8 == n.nodeType && n.data.startsWith("$s")) for (var r = 1; n = n.nextSibling;) {
|
|
221
224
|
if (8 == n.nodeType) {
|
|
222
225
|
if (n.data.startsWith("$s")) r++;
|
|
@@ -225,11 +228,11 @@ function z(n, t) {
|
|
|
225
228
|
t && t.push(n);
|
|
226
229
|
}
|
|
227
230
|
}
|
|
228
|
-
function
|
|
229
|
-
n && (n.__c && (n.__c.__g |= 4), n.__k && n.__k.some(
|
|
231
|
+
function D(n) {
|
|
232
|
+
n && (n.__c && (n.__c.__g |= 4), n.__k && n.__k.some(D));
|
|
230
233
|
}
|
|
231
|
-
function
|
|
232
|
-
for (var
|
|
234
|
+
function E(t, r, u) {
|
|
235
|
+
for (var i = 0; i < u.length;) G(u[i++], u[i++], u[i++]);
|
|
233
236
|
n.__c && n.__c(r, t), t.some(function(r) {
|
|
234
237
|
try {
|
|
235
238
|
t = r.__h, r.__h = [], t.some(function(n) {
|
|
@@ -240,58 +243,58 @@ function D(t, r, i) {
|
|
|
240
243
|
}
|
|
241
244
|
});
|
|
242
245
|
}
|
|
243
|
-
function
|
|
244
|
-
var s, h,
|
|
245
|
-
if ("svg" ==
|
|
246
|
-
for (s = 0; s <
|
|
247
|
-
t = k,
|
|
246
|
+
function F(t, r, u, i, f, o, e, l, c, a) {
|
|
247
|
+
var s, h, y, _, k, b, m, M, $ = u.props || p, x = r.props, C = r.type;
|
|
248
|
+
if ("svg" == C ? f = "http://www.w3.org/2000/svg" : "math" == C ? f = "http://www.w3.org/1998/Math/MathML" : f || (f = "http://www.w3.org/1999/xhtml"), o) {
|
|
249
|
+
for (s = 0; s < o.length; s++) if ((k = o[s]) && (C ? k.localName == C : 3 == k.nodeType)) {
|
|
250
|
+
t = k, o[s] = null;
|
|
248
251
|
break;
|
|
249
252
|
}
|
|
250
253
|
}
|
|
251
254
|
if (!t) {
|
|
252
|
-
if (
|
|
253
|
-
t =
|
|
254
|
-
}
|
|
255
|
-
if (
|
|
256
|
-
if (a = "template" ==
|
|
257
|
-
for (s in
|
|
258
|
-
for (s in
|
|
259
|
-
h ? (l ||
|
|
260
|
-
} else
|
|
255
|
+
if (M = a.ownerDocument || document, !C) return M.createTextNode(x);
|
|
256
|
+
t = M.createElementNS(f, C, x.is ? x : a), l && (n.__m && n.__m(r, o), l = !1), o = null;
|
|
257
|
+
}
|
|
258
|
+
if (C) {
|
|
259
|
+
if (a = "template" == C && t.content || t, o = "textarea" == C && null != x.defaultValue ? null : o && d.call(a.childNodes), !l && o) for ($ = {}, s = 0; s < t.attributes.length; s++) $[(k = t.attributes[s]).name] = k.value;
|
|
260
|
+
for (s in $) k = $[s], "dangerouslySetInnerHTML" == s ? y = k : "children" == s || s in x || "value" == s && "defaultValue" in x || "checked" == s && "defaultChecked" in x || N(t, s, null, k, f);
|
|
261
|
+
for (s in x) k = x[s], "children" == s ? _ = k : "dangerouslySetInnerHTML" == s ? h = k : "value" == s ? b = k : "checked" == s ? m = k : l && "function" != typeof k || $[s] === k || N(t, s, k, $[s], f);
|
|
262
|
+
h ? (l || y && (h.__html == y.__html || h.__html == t.innerHTML) || (t.innerHTML = h.__html), r.__k = []) : (y && (t.textContent = ""), ("foreignObject" == C || "http://www.w3.org/1998/Math/MathML" == f && v.test(C)) && (f = "http://www.w3.org/1999/xhtml"), I(a, w(_) ? _ : [_], r, u, i, f, o, e, o ? o[0] : u.__k && S(u, 0), l, c), o && o.some(g)), l && "textarea" != C || (s = "value", "progress" == C && null == b ? t.removeAttribute(s) : null == b || b === t[s] && ("progress" != C || b) || N(t, s, b, $[s], f), s = "checked", null != m && m != t[s] && N(t, s, m, $[s], f));
|
|
263
|
+
} else $ === x || l && t.data == x || (t.data = x);
|
|
261
264
|
return t;
|
|
262
265
|
}
|
|
263
|
-
function
|
|
266
|
+
function G(t, r, u, i) {
|
|
264
267
|
try {
|
|
265
|
-
"function" == typeof t ? r ? r.__x = t(r) || 1 :
|
|
268
|
+
"function" == typeof t ? r ? r.__x = t(r) || 1 : i && (i = i.__c || i.__e) && (r = i.__x) && (i.__x = null, "function" == typeof r ? r() : t(null)) : t.current = r;
|
|
266
269
|
} catch (t) {
|
|
267
|
-
n.__e(t,
|
|
270
|
+
n.__e(t, u);
|
|
268
271
|
}
|
|
269
272
|
}
|
|
270
|
-
function
|
|
271
|
-
var
|
|
272
|
-
if (n.unmount && n.unmount(t), !(
|
|
273
|
-
if (
|
|
274
|
-
|
|
273
|
+
function J(t, r, u) {
|
|
274
|
+
var i, f, o, e;
|
|
275
|
+
if (n.unmount && n.unmount(t), !(i = t.ref) || i.current && i.current != t.__e || G(i, null, r, t), i = t.__c) {
|
|
276
|
+
if (i.componentWillUnmount) try {
|
|
277
|
+
i.componentWillUnmount();
|
|
275
278
|
} catch (t) {
|
|
276
279
|
n.__e(t, r);
|
|
277
280
|
}
|
|
278
|
-
|
|
281
|
+
i.__P = i.__n = null;
|
|
279
282
|
}
|
|
280
|
-
if (
|
|
281
|
-
!
|
|
283
|
+
if (i = t.__k) for (e = 0; e < i.length; e++) i[e] && J(i[e], r, "function" != typeof t.type || u && !t.props.__P);
|
|
284
|
+
!u && (i = t.__c) && (i = i.__z) && (f = B(i, o = [])) && (i == t.__e && o.some(g), g(f), g(i)), u || g(t.__e), t.__e = t.__c = t.__ = null;
|
|
282
285
|
}
|
|
283
|
-
function
|
|
286
|
+
function K(n, t, r) {
|
|
284
287
|
return this.constructor(n, r);
|
|
285
288
|
}
|
|
286
|
-
function
|
|
287
|
-
var
|
|
288
|
-
n.__ && n.__(t, r), 9 == r.nodeType && (r = r.documentElement),
|
|
289
|
+
function Q(t, r) {
|
|
290
|
+
var u, i, f, o;
|
|
291
|
+
n.__ && n.__(t, r), 9 == r.nodeType && (r = r.documentElement), i = (u = t && 32 & t.__u) ? null : r.__k, r.__k = m($, { children: [t] }), f = [], o = [], z(r, r.__k, i || p, p, r.namespaceURI, i ? null : r.firstChild ? d.call(r.childNodes) : null, f, i ? i.__e : r.firstChild, u, o), E(f, r.__k, o), r.__k.props.children = null;
|
|
289
292
|
}
|
|
290
|
-
n = { __e: function(n, t, r,
|
|
291
|
-
for (var
|
|
292
|
-
|
|
293
|
+
n = { __e: function(n, t, r, u) {
|
|
294
|
+
for (var i, o, e; t = t.__;) if ((i = t.__c) && !(1 & i.__g)) {
|
|
295
|
+
i.__g |= 4;
|
|
293
296
|
try {
|
|
294
|
-
if ((
|
|
297
|
+
if ((e = (o = i.constructor) && o.getDerivedStateFromError) && i.setState(o.getDerivedStateFromError(n)), i.componentDidCatch && (i.componentDidCatch(n, u || {}), e = 1), e && 8 & i.__g) return void (i.__g |= 2);
|
|
295
298
|
} catch (t) {
|
|
296
299
|
n = t;
|
|
297
300
|
}
|
|
@@ -299,15 +302,15 @@ n = { __e: function(n, t, r, i) {
|
|
|
299
302
|
throw f = 0, n;
|
|
300
303
|
} }, t = 0, x.prototype.setState = function(n, t) {
|
|
301
304
|
var r = this.__s;
|
|
302
|
-
r && r != this.state || (r = this.__s = _({}, this.state)), "function" == typeof n && (n = n(_({}, r), this.props)), n && (_(r, n), this.__v && (t && this.__k.push(t),
|
|
305
|
+
r && r != this.state || (r = this.__s = _({}, this.state)), "function" == typeof n && (n = n(_({}, r), this.props)), n && (_(r, n), this.__v && (t && this.__k.push(t), L(this)));
|
|
303
306
|
}, x.prototype.forceUpdate = function(n) {
|
|
304
|
-
this.__v && (this.__g |= 4, n && this.__h.push(n),
|
|
305
|
-
}, x.prototype.render =
|
|
307
|
+
this.__v && (this.__g |= 4, n && this.__h.push(n), L(this));
|
|
308
|
+
}, x.prototype.render = $, u = [], f = 0, o = function(n, t) {
|
|
306
309
|
return n.__v.__b - t.__v.__b;
|
|
307
|
-
},
|
|
310
|
+
}, e = Symbol(), l = /(PointerCapture)$|Capture$/i, c = 0, a = {};
|
|
308
311
|
// hub/web/src/components/TopBar.tsx
|
|
309
312
|
function TopBar() {
|
|
310
|
-
return /* @__PURE__ */ k(
|
|
313
|
+
return /* @__PURE__ */ k($, null, /* @__PURE__ */ k("header", {
|
|
311
314
|
class: "top-bar",
|
|
312
315
|
id: "mobileTopHostBtn"
|
|
313
316
|
}, /* @__PURE__ */ k("div", { class: "top-bar-left" }, /* @__PURE__ */ k("button", {
|
|
@@ -551,7 +554,7 @@ function Sheets() {
|
|
|
551
554
|
const closeIfBackdrop = (sheetId) => (e) => {
|
|
552
555
|
if (e.target === e.currentTarget) window.closeSheet?.(sheetId);
|
|
553
556
|
};
|
|
554
|
-
return /* @__PURE__ */ k(
|
|
557
|
+
return /* @__PURE__ */ k($, null, /* @__PURE__ */ k("div", {
|
|
555
558
|
class: "sheet-backdrop",
|
|
556
559
|
id: "hostSheet",
|
|
557
560
|
onClick: closeIfBackdrop("hostSheet")
|
|
@@ -911,7 +914,7 @@ var HARNESS_SVG_SPRITE = `<svg id="dshHarnessSvgDefs" width="24" height="24" vie
|
|
|
911
914
|
</defs>
|
|
912
915
|
</svg>`;
|
|
913
916
|
function App() {
|
|
914
|
-
return /* @__PURE__ */ k(
|
|
917
|
+
return /* @__PURE__ */ k($, null, /* @__PURE__ */ k("div", {
|
|
915
918
|
style: "position:fixed;left:-9999px;top:-9999px;width:24px;height:24px;overflow:hidden;opacity:0;pointer-events:none;",
|
|
916
919
|
"aria-hidden": "true",
|
|
917
920
|
dangerouslySetInnerHTML: { __html: HARNESS_SVG_SPRITE }
|
|
@@ -2786,7 +2789,6 @@ var EXACT_ZH_TO_EN = {
|
|
|
2786
2789
|
"⚠️ 暂无在线电脑": "⚠️ No Computer Online",
|
|
2787
2790
|
"选择模型": "Select Model",
|
|
2788
2791
|
"🤖 默认模型": "🤖 Default Model",
|
|
2789
|
-
"🤖 DeepSeek 默认模型": "🤖 DeepSeek Default",
|
|
2790
2792
|
"🖼️ 截图": "🖼️ Screenshot",
|
|
2791
2793
|
"📁 选择项目文件夹": "📁 Select Project Folder",
|
|
2792
2794
|
"搜索项目名称或路径...": "Search project name or path...",
|
|
@@ -9420,6 +9422,6 @@ function initHubController() {
|
|
|
9420
9422
|
// hub/web/src/main.tsx
|
|
9421
9423
|
var root = document.getElementById("app");
|
|
9422
9424
|
if (root) {
|
|
9423
|
-
|
|
9425
|
+
Q(/* @__PURE__ */ k(App, null), root);
|
|
9424
9426
|
initHubController();
|
|
9425
9427
|
}
|
package/hub/public/index.html
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
<link rel="manifest" href="/manifest.json" />
|
|
11
11
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
|
|
12
12
|
<title>DeepSeek Harness 自托管全功能总控台</title>
|
|
13
|
-
<script type="module" crossorigin src="/assets/index-
|
|
13
|
+
<script type="module" crossorigin src="/assets/index-Dsqj_rGF.js"></script>
|
|
14
14
|
<link rel="stylesheet" crossorigin href="/assets/index-Cr6cHgkF.css">
|
|
15
15
|
</head>
|
|
16
16
|
<body class="PhoneFrameMode">
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "deepseekharness-remotecontrol",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "Mobile Web & Feishu Remote Control Hub for DeepSeek Harness (DSH), Antigravity, Codex, Claude Code, WorkBuddy, and Doubao.",
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
],
|
|
61
61
|
"repository": {
|
|
62
62
|
"type": "git",
|
|
63
|
-
"url": "
|
|
63
|
+
"url": "https://github.com/oscarka/deepseekharness-remotecontrol"
|
|
64
64
|
},
|
|
65
65
|
"homepage": "https://github.com/oscarka/deepseekharness-remotecontrol#readme",
|
|
66
66
|
"bugs": {
|
package/screenshots.json
CHANGED
package/dsh-feishu/README.md
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
# dsh-feishu
|
|
2
|
-
|
|
3
|
-
把正在运行的 DSH 任务接到飞书,用**长连接**远程查看、停止、审批和继续;同时支持接入 **Google Cloud Run 页面总控台** 实现多台电脑共享同一个飞书机器人、一键切换主控电脑、以及页面化一键迁移/清理 DSH 数据。
|
|
4
|
-
|
|
5
|
-
## 使用方式
|
|
6
|
-
|
|
7
|
-
平时不推送。离开电脑时发「连接」(或点卡片上的「连接远程」)进入远程模式:
|
|
8
|
-
|
|
9
|
-
1. 先告诉你**有几个任务正在运行**。
|
|
10
|
-
2. 其余任务按最后互动时间排序。
|
|
11
|
-
3. 连接卡片顶部是「需要你」收件箱:待审批可直接批准/拒绝,最近异常和刚完成的任务可直接查看。
|
|
12
|
-
4. 点任意任务的「查看详情」直接打开,不用先选中或切换。
|
|
13
|
-
5. 运行中的任务只能停止;已完成/空闲的任务在详情底部有输入框,输入后直接让它继续。
|
|
14
|
-
6. 输入框提交后,**同一张详情卡**先变成「已发送,执行中…」,结果出来后原地变回可继续的状态;不会留下旧的输入框或停止按钮。
|
|
15
|
-
7. 连接期间只推**任务完成/异常**和**审批**;2 小时无操作自动断开。
|
|
16
|
-
8. 完成/异常推送**本身就是一张任务卡**:直接显示渲染后的输出和输入框,不需要再点「查看详情」。同一任务的新推送会把旧卡归档,避免留下多个可输入框。
|
|
17
|
-
9. 多台电脑接入 `FEISHU_HUB_URL` 时,发送 `主机` 或 `!hosts` 即可在飞书卡片中查看所有电脑并一键切换当前控制的电脑。
|
|
18
|
-
|
|
19
|
-
## 安装
|
|
20
|
-
|
|
21
|
-
Desktop App 使用 `desktop` profile:
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
dsh plugin --profile desktop add /path/to/deepseekharness-remotecontrol/dsh-feishu
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
创建密钥文件(不要提交、不要发到聊天里):
|
|
28
|
-
|
|
29
|
-
```bash
|
|
30
|
-
install -m 600 /dev/null ~/.dsh/feishu.env
|
|
31
|
-
cat > ~/.dsh/feishu.env <<'EOF'
|
|
32
|
-
FEISHU_HOST_NAME=MacBook-Pro
|
|
33
|
-
FEISHU_APP_ID=cli_xxxxxxxxxxxxxxxx
|
|
34
|
-
FEISHU_APP_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
|
35
|
-
FEISHU_ALLOWED_OPEN_IDS=ou_xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
|
36
|
-
# 可选:接入 Google Cloud Run 页面总控台以支持多电脑切换与一键迁移
|
|
37
|
-
FEISHU_HUB_URL=https://your-service.run.app
|
|
38
|
-
FEISHU_HUB_TOKEN=your-secret-token
|
|
39
|
-
EOF
|
|
40
|
-
chmod 600 ~/.dsh/feishu.env
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
`FEISHU_ALLOWED_OPEN_IDS` 逗号分隔。第一次可以先留空,给机器人发 `/whoami` 拿 `open_id`,再填入并重启。
|
|
44
|
-
|
|
45
|
-
## 命令
|
|
46
|
-
|
|
47
|
-
| 命令 | 作用 |
|
|
48
|
-
| --- | --- |
|
|
49
|
-
| `连接` / `!connect` | 进入远程模式,显示运行数和任务列表 |
|
|
50
|
-
| `断开` / `!disconnect` | 退出远程模式 |
|
|
51
|
-
| `!sessions` | 任务列表;`!sessions all` 包含空会话 |
|
|
52
|
-
| `主机` / `!hosts` | 查看多台电脑状态并在飞书内一键切换主控电脑 |
|
|
53
|
-
| `!host <id>` | 切换飞书主控到指定电脑 |
|
|
54
|
-
| `!web` | 查看 Web 页面总控台地址 |
|
|
55
|
-
| `!approve <code>` | 批准一次 |
|
|
56
|
-
| `!deny <code>` | 拒绝 |
|
|
57
|
-
| `!whoami` | 查看自己的 `open_id`(允许列表为空时也可用) |
|
|
58
|
-
| `!ping` | 检查桥是否在线 |
|
|
59
|
-
| `!help` | 使用说明 |
|
|
60
|
-
|
|
61
|
-
## 测试
|
|
62
|
-
|
|
63
|
-
```bash
|
|
64
|
-
cd dsh-feishu
|
|
65
|
-
npm test
|
|
66
|
-
```
|