@opentiny/next-sdk 0.2.9 → 0.2.10
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/agent/AgentModelProvider.ts +10 -3
- package/agent/type.ts +3 -3
- package/dist/agent/type.d.ts +3 -0
- package/dist/index.es.dev.js +36 -22
- package/dist/index.es.js +2117 -2105
- package/dist/index.js +320 -308
- package/dist/index.umd.dev.js +36 -22
- package/dist/index.umd.js +38 -38
- package/dist/remoter/createRemoter.d.ts +3 -2
- package/dist/webagent.dev.js +15891 -15877
- package/dist/webagent.es.dev.js +15891 -15877
- package/dist/webagent.es.js +3154 -3142
- package/dist/webagent.js +35 -35
- package/package.json +1 -1
- package/remoter/createRemoter.ts +44 -23
package/dist/index.js
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
import { default as Qn } from "ajv";
|
|
2
2
|
import { z as G } from "zod";
|
|
3
3
|
import { z as eo } from "zod";
|
|
4
|
-
import { MessageChannelServerTransport as
|
|
4
|
+
import { MessageChannelServerTransport as Ee, createTransportPair as zt, MessageChannelClientTransport as Re, sseOptions as Dt, streamOptions as Ht, createSseProxy as Ft, createSocketProxy as Bt, createStreamProxy as Vt, MessageChannelTransport as Wt } from "@opentiny/next";
|
|
5
5
|
import { AuthClientProvider as ro } from "@opentiny/next";
|
|
6
|
-
import { McpServer as
|
|
6
|
+
import { McpServer as lt } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
7
7
|
import { ResourceTemplate as oo } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
8
8
|
import { UriTemplate as io } from "@modelcontextprotocol/sdk/shared/uriTemplate.js";
|
|
9
9
|
import { completable as co } from "@modelcontextprotocol/sdk/server/completable.js";
|
|
10
10
|
import { getDisplayName as uo } from "@modelcontextprotocol/sdk/shared/metadataUtils.js";
|
|
11
|
-
import { InMemoryTransport as
|
|
11
|
+
import { InMemoryTransport as Jt } from "@modelcontextprotocol/sdk/inMemory.js";
|
|
12
12
|
import { InMemoryTransport as ho } from "@modelcontextprotocol/sdk/inMemory.js";
|
|
13
|
-
import { SetLevelRequestSchema as De, SubscribeRequestSchema as
|
|
14
|
-
import { Client as
|
|
15
|
-
import { SSEClientTransport as
|
|
16
|
-
import { StreamableHTTPClientTransport as
|
|
17
|
-
import { WebSocketClientTransport as
|
|
13
|
+
import { SetLevelRequestSchema as De, SubscribeRequestSchema as Gt, UnsubscribeRequestSchema as Kt, ListResourcesRequestSchema as Yt, RootsListChangedNotificationSchema as Qt, CallToolResultSchema as Xt, ElicitRequestSchema as e2, CreateMessageRequestSchema as t2, ListRootsRequestSchema as r2, ToolListChangedNotificationSchema as n2, PromptListChangedNotificationSchema as o2, ResourceListChangedNotificationSchema as s2, ResourceUpdatedNotificationSchema as i2, LoggingMessageNotificationSchema as a2, JSONRPCMessageSchema as Ie } from "@modelcontextprotocol/sdk/types.js";
|
|
14
|
+
import { Client as dt } from "@modelcontextprotocol/sdk/client/index.js";
|
|
15
|
+
import { SSEClientTransport as he } from "@modelcontextprotocol/sdk/client/sse.js";
|
|
16
|
+
import { StreamableHTTPClientTransport as me } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
|
|
17
|
+
import { WebSocketClientTransport as c2 } from "@modelcontextprotocol/sdk/client/websocket.js";
|
|
18
18
|
import He from "qrcode";
|
|
19
|
-
import { dynamicTool as
|
|
20
|
-
import { TypeValidationError as
|
|
19
|
+
import { dynamicTool as l2, jsonSchema as d2, generateText as Fe, streamText as ye, stepCountIs as u2, tool as p2 } from "ai";
|
|
20
|
+
import { TypeValidationError as xe, JSONParseError as Be, InvalidArgumentError as h2, AISDKError as oe } from "@ai-sdk/provider";
|
|
21
21
|
import * as Ve from "zod/v4";
|
|
22
22
|
import { z as i } from "zod/v4";
|
|
23
23
|
import { ZodFirstPartyTypeKind as w } from "zod/v3";
|
|
24
|
-
import { createOpenAI as
|
|
25
|
-
import { createDeepSeek as
|
|
24
|
+
import { createOpenAI as m2 } from "@ai-sdk/openai";
|
|
25
|
+
import { createDeepSeek as f2 } from "@ai-sdk/deepseek";
|
|
26
26
|
class kn {
|
|
27
27
|
constructor(e, r) {
|
|
28
28
|
const n = {
|
|
@@ -35,7 +35,7 @@ class kn {
|
|
|
35
35
|
completions: {},
|
|
36
36
|
logging: {}
|
|
37
37
|
};
|
|
38
|
-
this.server = new
|
|
38
|
+
this.server = new lt(e || n, r || { capabilities: o }), this.server.server.oninitialized = () => {
|
|
39
39
|
this.oninitialized?.();
|
|
40
40
|
}, this.server.server.onclose = () => {
|
|
41
41
|
this.onclose?.();
|
|
@@ -47,7 +47,7 @@ class kn {
|
|
|
47
47
|
* Connects the server to a transport via the specified option.
|
|
48
48
|
*/
|
|
49
49
|
async connect(e) {
|
|
50
|
-
return typeof e.start == "function" ? (this.transport = e, this.transport.onclose = void 0, this.transport.onerror = void 0, this.transport.onmessage = void 0) : (this.transport = new
|
|
50
|
+
return typeof e.start == "function" ? (this.transport = e, this.transport.onclose = void 0, this.transport.onerror = void 0, this.transport.onmessage = void 0) : (this.transport = new Ee(e), await this.transport.listen()), await this.server.connect(this.transport), this.transport;
|
|
51
51
|
}
|
|
52
52
|
/**
|
|
53
53
|
* Closes the connection.
|
|
@@ -189,13 +189,13 @@ class kn {
|
|
|
189
189
|
* Registers a handler for the subscribe request.
|
|
190
190
|
*/
|
|
191
191
|
onSubscribe(e) {
|
|
192
|
-
this.server.server.setRequestHandler(
|
|
192
|
+
this.server.server.setRequestHandler(Gt, e);
|
|
193
193
|
}
|
|
194
194
|
/**
|
|
195
195
|
* Registers a handler for the unsubscribe request.
|
|
196
196
|
*/
|
|
197
197
|
onUnsubscribe(e) {
|
|
198
|
-
this.server.server.setRequestHandler(
|
|
198
|
+
this.server.server.setRequestHandler(Kt, e);
|
|
199
199
|
}
|
|
200
200
|
/**
|
|
201
201
|
* Registers a handler for the set log level request.
|
|
@@ -207,13 +207,13 @@ class kn {
|
|
|
207
207
|
* Registers a handler for the list tools request.
|
|
208
208
|
*/
|
|
209
209
|
onListResources(e) {
|
|
210
|
-
this.server.server.setRequestHandler(
|
|
210
|
+
this.server.server.setRequestHandler(Yt, e);
|
|
211
211
|
}
|
|
212
212
|
/**
|
|
213
213
|
* Registers a handler for the roots list changed notification.
|
|
214
214
|
*/
|
|
215
215
|
onRootsListChanged(e) {
|
|
216
|
-
this.server.server.setNotificationHandler(
|
|
216
|
+
this.server.server.setNotificationHandler(Qt, e);
|
|
217
217
|
}
|
|
218
218
|
/**
|
|
219
219
|
* Close the transport for window.addEventListener('pagehide')
|
|
@@ -222,8 +222,8 @@ class kn {
|
|
|
222
222
|
e.persisted || this.transport && typeof this.transport.close == "function" && await this.transport.close();
|
|
223
223
|
}
|
|
224
224
|
}
|
|
225
|
-
const Sn = (t, e) => new
|
|
226
|
-
class
|
|
225
|
+
const Sn = (t, e) => new Ee(t, e), Pn = () => zt(), Tn = (t) => t instanceof Ee, Mn = (t) => t instanceof lt;
|
|
226
|
+
class g2 {
|
|
227
227
|
constructor(e, r) {
|
|
228
228
|
const n = {
|
|
229
229
|
name: "web-mcp-client",
|
|
@@ -233,7 +233,7 @@ class h2 {
|
|
|
233
233
|
sampling: {},
|
|
234
234
|
elicitation: {}
|
|
235
235
|
};
|
|
236
|
-
this.client = new
|
|
236
|
+
this.client = new dt(e || n, r || { capabilities: o }), this.client.onclose = () => {
|
|
237
237
|
this.onclose?.();
|
|
238
238
|
}, this.client.onerror = (s) => {
|
|
239
239
|
this.onerror?.(s);
|
|
@@ -250,7 +250,7 @@ class h2 {
|
|
|
250
250
|
const u = { client: this.client, url: r, token: n, sessionId: o };
|
|
251
251
|
let g;
|
|
252
252
|
return await (async () => {
|
|
253
|
-
const { transport: f, sessionId: y } = s === "sse" ? await
|
|
253
|
+
const { transport: f, sessionId: y } = s === "sse" ? await Ft(u) : s === "socket" ? await Bt(u) : await Vt(u);
|
|
254
254
|
f.onerror = async (h) => {
|
|
255
255
|
c?.(h);
|
|
256
256
|
}, g = { transport: f, sessionId: y };
|
|
@@ -258,14 +258,14 @@ class h2 {
|
|
|
258
258
|
}
|
|
259
259
|
const d = new URL(r);
|
|
260
260
|
let l;
|
|
261
|
-
if (s === "channel" && (l = new
|
|
262
|
-
const u =
|
|
263
|
-
l = new Ie(d, u), await this.client.connect(l);
|
|
264
|
-
}
|
|
265
|
-
if (s === "socket" && (l = new s2(new URL(`${r}?sessionId=${o}&token=${n}`)), l.sessionId = o, await this.client.connect(l)), typeof l > "u") {
|
|
266
|
-
const u = zt(n, o);
|
|
261
|
+
if (s === "channel" && (l = new Re(r), await this.client.connect(l)), s === "sse") {
|
|
262
|
+
const u = Dt(n, o);
|
|
267
263
|
l = new he(d, u), await this.client.connect(l);
|
|
268
264
|
}
|
|
265
|
+
if (s === "socket" && (l = new c2(new URL(`${r}?sessionId=${o}&token=${n}`)), l.sessionId = o, await this.client.connect(l)), typeof l > "u") {
|
|
266
|
+
const u = Ht(n, o);
|
|
267
|
+
l = new me(d, u), await this.client.connect(l);
|
|
268
|
+
}
|
|
269
269
|
return this.transport = l, { transport: this.transport, sessionId: this.transport.sessionId };
|
|
270
270
|
}
|
|
271
271
|
/**
|
|
@@ -356,7 +356,7 @@ class h2 {
|
|
|
356
356
|
* Calls a tool on the server with the given parameters.
|
|
357
357
|
*/
|
|
358
358
|
async callTool(e, r) {
|
|
359
|
-
return await this.client.callTool(e,
|
|
359
|
+
return await this.client.callTool(e, Xt, r);
|
|
360
360
|
}
|
|
361
361
|
/**
|
|
362
362
|
* Lists all tools available on the server.
|
|
@@ -416,65 +416,65 @@ class h2 {
|
|
|
416
416
|
* Registers a handler for the elicitation request.
|
|
417
417
|
*/
|
|
418
418
|
onElicit(e) {
|
|
419
|
-
this.client.setRequestHandler(
|
|
419
|
+
this.client.setRequestHandler(e2, e);
|
|
420
420
|
}
|
|
421
421
|
/**
|
|
422
422
|
* Registers a handler for the create LLM message request.
|
|
423
423
|
*/
|
|
424
424
|
onCreateMessage(e) {
|
|
425
|
-
this.client.setRequestHandler(
|
|
425
|
+
this.client.setRequestHandler(t2, e);
|
|
426
426
|
}
|
|
427
427
|
/**
|
|
428
428
|
* Registers a handler for the list roots request.
|
|
429
429
|
*/
|
|
430
430
|
onListRoots(e) {
|
|
431
|
-
this.client.setRequestHandler(
|
|
431
|
+
this.client.setRequestHandler(r2, e);
|
|
432
432
|
}
|
|
433
433
|
/**
|
|
434
434
|
* Registers a handler for the tool list changed notification.
|
|
435
435
|
*/
|
|
436
436
|
onToolListChanged(e) {
|
|
437
|
-
this.client.setNotificationHandler(
|
|
437
|
+
this.client.setNotificationHandler(n2, e);
|
|
438
438
|
}
|
|
439
439
|
/**
|
|
440
440
|
* Registers a handler for the prompt list changed notification.
|
|
441
441
|
*/
|
|
442
442
|
onPromptListChanged(e) {
|
|
443
|
-
this.client.setNotificationHandler(
|
|
443
|
+
this.client.setNotificationHandler(o2, e);
|
|
444
444
|
}
|
|
445
445
|
/**
|
|
446
446
|
* Registers a handler for the resource list changed notification.
|
|
447
447
|
*/
|
|
448
448
|
onResourceListChanged(e) {
|
|
449
|
-
this.client.setNotificationHandler(
|
|
449
|
+
this.client.setNotificationHandler(s2, e);
|
|
450
450
|
}
|
|
451
451
|
/**
|
|
452
452
|
* Registers a handler for the resource updated notification.
|
|
453
453
|
*/
|
|
454
454
|
onResourceUpdated(e) {
|
|
455
|
-
this.client.setNotificationHandler(
|
|
455
|
+
this.client.setNotificationHandler(i2, e);
|
|
456
456
|
}
|
|
457
457
|
/**
|
|
458
458
|
* Registers a handler for the logging message notification.
|
|
459
459
|
*/
|
|
460
460
|
onLoggingMessage(e) {
|
|
461
|
-
this.client.setNotificationHandler(
|
|
461
|
+
this.client.setNotificationHandler(a2, e);
|
|
462
462
|
}
|
|
463
463
|
/**
|
|
464
464
|
* Close the transport for window.addEventListener('pagehide')
|
|
465
465
|
*/
|
|
466
466
|
async onPagehide(e) {
|
|
467
|
-
e.persisted || (
|
|
467
|
+
e.persisted || (y2(this.transport) ? await this.transport.terminateSession() : this.transport && typeof this.transport.close == "function" && await this.transport.close());
|
|
468
468
|
}
|
|
469
469
|
}
|
|
470
|
-
const En = (t, e) => new
|
|
470
|
+
const En = (t, e) => new he(t, e), Rn = (t, e) => new me(t, e), In = (t, e) => new Re(t, e), An = (t) => t instanceof he, y2 = (t) => t instanceof me, On = (t) => t instanceof Re, $n = (t) => t instanceof dt, D = (t, e, r) => {
|
|
471
471
|
window.postMessage({ type: t, direction: r, data: e }, "*");
|
|
472
|
-
},
|
|
472
|
+
}, We = (t, e, r) => {
|
|
473
473
|
const n = async function(o) {
|
|
474
474
|
o.source === window && o.data.type === t && o.data.direction === r && await e(o.data.data);
|
|
475
475
|
};
|
|
476
476
|
return window.addEventListener("message", n), () => window.removeEventListener("message", n);
|
|
477
|
-
},
|
|
477
|
+
}, Le = (t, e, r) => {
|
|
478
478
|
if (r.endsWith("content"))
|
|
479
479
|
chrome.tabs.query({}, (n) => {
|
|
480
480
|
n.forEach((o) => {
|
|
@@ -483,7 +483,7 @@ const En = (t, e) => new Ie(t, e), Rn = (t, e) => new he(t, e), In = (t, e) => n
|
|
|
483
483
|
});
|
|
484
484
|
else
|
|
485
485
|
return chrome.runtime.sendMessage({ direction: r, type: t, data: e });
|
|
486
|
-
},
|
|
486
|
+
}, ke = (t, e, r, n) => {
|
|
487
487
|
const o = (s, a, c) => {
|
|
488
488
|
if (s.type === t && s.direction === r && (!n || n && s.tabId === n)) {
|
|
489
489
|
const { data: d } = s;
|
|
@@ -492,14 +492,14 @@ const En = (t, e) => new Ie(t, e), Rn = (t, e) => new he(t, e), In = (t, e) => n
|
|
|
492
492
|
};
|
|
493
493
|
return chrome.runtime.onMessage.addListener(o), () => chrome.runtime.onMessage.removeListener(o);
|
|
494
494
|
};
|
|
495
|
-
class
|
|
495
|
+
class w2 {
|
|
496
496
|
constructor(e) {
|
|
497
|
-
this._isStarted = !1, this._isClosed = !1, this.targetSessionId = e, this._messageListener =
|
|
497
|
+
this._isStarted = !1, this._isClosed = !1, this.targetSessionId = e, this._messageListener = ke(
|
|
498
498
|
"mcp-server-to-client",
|
|
499
499
|
(r) => {
|
|
500
500
|
try {
|
|
501
501
|
if (r.sessionId !== this.targetSessionId) return;
|
|
502
|
-
const n =
|
|
502
|
+
const n = Ie.parse(r.mcpMessage);
|
|
503
503
|
this.onmessage?.(n);
|
|
504
504
|
} catch (n) {
|
|
505
505
|
console.log("【Client Transport】处理server消息错误:", n);
|
|
@@ -525,7 +525,7 @@ class f2 {
|
|
|
525
525
|
const n = chrome.sessionRegistry.get(this.targetSessionId);
|
|
526
526
|
this._throwError(() => !n, `【Client Transport】sessionRegistry中未找到${this.targetSessionId}`);
|
|
527
527
|
const o = n.tabIds[n.tabIds.length - 1];
|
|
528
|
-
|
|
528
|
+
Le(
|
|
529
529
|
"mcp-client-to-server",
|
|
530
530
|
{ sessionId: this.targetSessionId, tabId: o, mcpMessage: e },
|
|
531
531
|
"side->content"
|
|
@@ -547,7 +547,7 @@ const Ae = () => typeof crypto < "u" && crypto.randomUUID ? crypto.randomUUID()
|
|
|
547
547
|
});
|
|
548
548
|
class Un {
|
|
549
549
|
constructor(e = null) {
|
|
550
|
-
this._isStarted = !1, this._isClosed = !1, this._lastRegistration = null, this.sessionId = e || Ae(), this._messageListener1 =
|
|
550
|
+
this._isStarted = !1, this._isClosed = !1, this._lastRegistration = null, this.sessionId = e || Ae(), this._messageListener1 = We(
|
|
551
551
|
"sidepanel-ready-to-page",
|
|
552
552
|
() => {
|
|
553
553
|
this._lastRegistration && this._isStarted && this.notifyRegistration(this._lastRegistration).catch((r) => {
|
|
@@ -555,12 +555,12 @@ class Un {
|
|
|
555
555
|
});
|
|
556
556
|
},
|
|
557
557
|
"content->page"
|
|
558
|
-
), this._messageListener2 =
|
|
558
|
+
), this._messageListener2 = We(
|
|
559
559
|
"mcp-client-to-server-to-page",
|
|
560
560
|
(r) => {
|
|
561
561
|
if (r.sessionId !== this.sessionId) return;
|
|
562
562
|
console.log("【Page Svr Transport】 即将处理 mcpMessage", r.mcpMessage);
|
|
563
|
-
const n =
|
|
563
|
+
const n = Ie.parse(r.mcpMessage);
|
|
564
564
|
this.onmessage?.(n), r.mcpMessage.params?.name && D(
|
|
565
565
|
"update-page-app-message",
|
|
566
566
|
{ status: "run", message: r.mcpMessage.params?.name },
|
|
@@ -632,7 +632,7 @@ class Un {
|
|
|
632
632
|
}
|
|
633
633
|
class Nn {
|
|
634
634
|
constructor(e = null, r) {
|
|
635
|
-
this._isStarted = !1, this._isClosed = !1, this._lastRegistration = null, this.sessionId = e || Ae(), this.tabId = r,
|
|
635
|
+
this._isStarted = !1, this._isClosed = !1, this._lastRegistration = null, this.sessionId = e || Ae(), this.tabId = r, ke(
|
|
636
636
|
"sidepanel-ready",
|
|
637
637
|
() => {
|
|
638
638
|
this._lastRegistration && this._isStarted && this.notifyRegistration(this._lastRegistration).catch((n) => {
|
|
@@ -654,13 +654,13 @@ class Nn {
|
|
|
654
654
|
async start() {
|
|
655
655
|
if (console.log("【Content Svr Transport】 启动 start", this.sessionId), !this._isStarted) {
|
|
656
656
|
if (this._isClosed) throw new Error("【Content Svr Transport】 已关闭,无法重新启动");
|
|
657
|
-
|
|
657
|
+
ke(
|
|
658
658
|
"mcp-client-to-server",
|
|
659
659
|
(e) => {
|
|
660
660
|
if (!(e.sessionId !== this.sessionId || e.tabId !== this.tabId))
|
|
661
661
|
try {
|
|
662
662
|
console.log("【Content Svr Transport】 即将处理 mcpMessage", e.mcpMessage);
|
|
663
|
-
const r =
|
|
663
|
+
const r = Ie.parse(e.mcpMessage);
|
|
664
664
|
this.onmessage?.(r), e.mcpMessage.params?.name && D(
|
|
665
665
|
"update-page-app-message",
|
|
666
666
|
{ status: "run", message: e.mcpMessage.params?.name },
|
|
@@ -680,7 +680,7 @@ class Nn {
|
|
|
680
680
|
async send(e, r) {
|
|
681
681
|
this._throwError(() => !this._isStarted, "【Content Svr Transport】 未启动,无法发送消息"), this._throwError(() => this._isClosed, "【Content Svr Transport】 已关闭,无法发送消息");
|
|
682
682
|
try {
|
|
683
|
-
console.log("【Content Svr Transport】 发送消息到 MCP Client", e),
|
|
683
|
+
console.log("【Content Svr Transport】 发送消息到 MCP Client", e), Le(
|
|
684
684
|
"mcp-server-to-client",
|
|
685
685
|
{
|
|
686
686
|
sessionId: this.sessionId,
|
|
@@ -699,7 +699,7 @@ class Nn {
|
|
|
699
699
|
}
|
|
700
700
|
/** 通知 Sidepanel 此 Server 已启动并准备接受连接 */
|
|
701
701
|
async notifyRegistration(e) {
|
|
702
|
-
this._isStarted && (this._lastRegistration = e,
|
|
702
|
+
this._isStarted && (this._lastRegistration = e, Le(
|
|
703
703
|
"mcp-server-register",
|
|
704
704
|
{
|
|
705
705
|
sessionId: this.sessionId,
|
|
@@ -721,7 +721,7 @@ class Nn {
|
|
|
721
721
|
}
|
|
722
722
|
}
|
|
723
723
|
}
|
|
724
|
-
class
|
|
724
|
+
class v2 {
|
|
725
725
|
constructor(e, { size: r = 200, margin: n = 4, color: o = "#000", bgColor: s = "#fff" }) {
|
|
726
726
|
this.value = e, this.size = r, this.margin = n, this.color = o, this.bgColor = s;
|
|
727
727
|
}
|
|
@@ -750,7 +750,7 @@ class g2 {
|
|
|
750
750
|
e.src = await this.toDataURL();
|
|
751
751
|
}
|
|
752
752
|
}
|
|
753
|
-
const
|
|
753
|
+
const C2 = {
|
|
754
754
|
content: "",
|
|
755
755
|
placement: "top",
|
|
756
756
|
trigger: "hover",
|
|
@@ -759,10 +759,10 @@ const y2 = {
|
|
|
759
759
|
container: document.body,
|
|
760
760
|
className: "tiny-remoter-native-tooltip"
|
|
761
761
|
};
|
|
762
|
-
class
|
|
762
|
+
class _2 {
|
|
763
763
|
constructor(e, r = {}) {
|
|
764
764
|
if (this.tip = null, this.showTimer = 0, this.hideTimer = 0, this.clickOutside = null, this.el = typeof e == "string" ? document.querySelector(e) : e, !this.el) throw new Error("Tooltip: invalid element");
|
|
765
|
-
this.opts = { ...
|
|
765
|
+
this.opts = { ...C2, ...r }, this.bindEvents();
|
|
766
766
|
}
|
|
767
767
|
/* 公开 API */
|
|
768
768
|
open() {
|
|
@@ -848,11 +848,11 @@ class w2 {
|
|
|
848
848
|
return !!this.tip?.parentNode;
|
|
849
849
|
}
|
|
850
850
|
}
|
|
851
|
-
const
|
|
851
|
+
const Je = "tiny-remoter-native-tooltip-style";
|
|
852
852
|
(() => {
|
|
853
|
-
if (document.getElementById(
|
|
853
|
+
if (document.getElementById(Je)) return;
|
|
854
854
|
const t = document.createElement("style");
|
|
855
|
-
t.id =
|
|
855
|
+
t.id = Je, t.textContent = `
|
|
856
856
|
.tiny-remoter-native-tooltip {
|
|
857
857
|
position: absolute;
|
|
858
858
|
z-index: 9999;
|
|
@@ -901,7 +901,7 @@ const We = "tiny-remoter-native-tooltip-style";
|
|
|
901
901
|
}
|
|
902
902
|
`, document.head.appendChild(t);
|
|
903
903
|
})();
|
|
904
|
-
const v2 = "data:image/svg+xml,%3csvg%20viewBox='0%200%2040%2039.9692'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='40.000000'%20height='39.969238'%20fill='none'%20customFrame='url(%23clipPath_3)'%3e%3cdefs%3e%3cclipPath%20id='clipPath_3'%3e%3crect%20width='40.000000'%20height='39.969238'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_4'%3e%3crect%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='7.984619'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_5'%3e%3crect%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='9.984619'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_6'%3e%3crect%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='9.984619'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_7'%3e%3crect%20width='21.666666'%20height='13.333333'%20x='20.000000'%20y='9.984619'%20rx='6.666667'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_8'%3e%3crect%20width='6.666667'%20height='6.666667'%20x='23.333496'%20y='9.984619'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3c/defs%3e%3crect%20id='2'%20width='40.000000'%20height='39.969238'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(239,246,255)'%20/%3e%3cg%20id='物业'%20clip-path='url(%23clipPath_4)'%20customFrame='url(%23clipPath_4)'%3e%3crect%20id='物业'%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='7.984619'%20/%3e%3cg%20id='物业服务'%3e%3cg%20id='00公共/红点/图标+红点'%20customFrame='url(%23clipPath_5)'%3e%3crect%20id='00公共/红点/图标+红点'%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='9.984619'%20/%3e%3cg%20id='common_chats_line'%20customFrame='url(%23clipPath_6)'%3e%3crect%20id='common_chats_line'%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='9.984619'%20/%3e%3cpath%20id='形状'%20d='M28.3332%2019.9847C28.3332%2015.3823%2024.6022%2011.6514%2019.9998%2011.6514C15.3975%2011.6514%2011.6665%2015.3823%2011.6665%2019.9847C11.6665%2024.5871%2015.3975%2028.318%2019.9998%2028.318C21.0018%2028.318%2021.9624%2028.1412%2022.8522%2027.8171L26.581%2028.1578C26.7205%2028.1706%2026.8611%2028.1598%2026.9971%2028.1259C27.6669%2027.959%2028.0746%2027.2806%2027.9077%2026.6108L27.2716%2024.0578C27.9477%2022.8535%2028.3332%2021.4641%2028.3332%2019.9847ZM19.9998%2013.1514C16.2259%2013.1514%2013.1665%2016.2108%2013.1665%2019.9847C13.1665%2023.7586%2016.2259%2026.818%2019.9998%2026.818C20.8089%2026.818%2021.5967%2026.678%2022.3388%2026.4077C22.505%2026.3471%2022.6803%2026.3166%2022.8565%2026.3171L22.9887%2026.3233L26.3665%2026.6322L25.8161%2024.4205C25.7352%2024.0958%2025.7655%2023.7548%2025.8997%2023.4512L25.9636%2023.3236C26.5311%2022.3126%2026.8332%2021.1723%2026.8332%2019.9847C26.8332%2016.2108%2023.7738%2013.1514%2019.9998%2013.1514ZM23.1152%2021.2468C23.352%2020.9069%2023.2684%2020.4394%2022.9286%2020.2026C22.5887%2019.9659%2022.1212%2020.0494%2021.8845%2020.3893C21.2894%2021.2433%2020.4268%2021.7347%2019.5102%2021.7347C18.9513%2021.7347%2018.4132%2021.554%2017.9375%2021.2122C17.6011%2020.9705%2017.1325%2021.0472%2016.8908%2021.3836C16.6491%2021.7199%2016.7258%2022.1886%2017.0622%2022.4303C17.7879%2022.9518%2018.6305%2023.2347%2019.5102%2023.2347C20.9394%2023.2347%2022.2505%2022.4878%2023.1152%2021.2468Z'%20fill='rgb(65,142,255)'%20fill-rule='evenodd'%20/%3e%3c/g%3e%3cg%20id='00公共/3位数红点'%20opacity='0'%20customFrame='url(%23clipPath_7)'%3e%3crect%20id='00公共/3位数红点'%20width='21.666666'%20height='13.333333'%20x='20.000000'%20y='9.984619'%20rx='6.666667'%20opacity='0'%20fill='rgb(243,111,100)'%20/%3e%3cpath%20id='文本'%20d='M26.0421%2013.4421C26.4259%2013.4421%2026.7677%2013.5255%2027.0675%2013.6923C27.3672%2013.8591%2027.6005%2014.0931%2027.7673%2014.3942C27.9342%2014.694%2028.0176%2015.0351%2028.0176%2015.4176C28.0176%2015.7173%2027.9633%2015.994%2027.8548%2016.2476C27.7463%2016.4999%2027.5673%2016.8315%2027.3177%2017.2425L25.859%2019.6432L25.0167%2019.6432L26.276%2017.5924C26.3534%2017.4704%2026.4307%2017.3564%2026.508%2017.2507C26.3357%2017.3063%2026.1445%2017.3341%2025.9342%2017.3341C25.5721%2017.3341%2025.2493%2017.2479%2024.9658%2017.0757C24.6837%2016.9034%2024.4633%2016.6701%2024.3046%2016.3758C24.1459%2016.0815%2024.0666%2015.7566%2024.0666%2015.4013C24.0666%2015.0351%2024.1513%2014.7021%2024.3209%2014.4023C24.4904%2014.1012%2024.7264%2013.8659%2025.0289%2013.6964C25.3314%2013.5268%2025.6691%2013.4421%2026.0421%2013.4421ZM26.0421%2016.6505C26.4029%2016.6505%2026.6904%2016.5325%2026.9047%2016.2965C27.119%2016.0605%2027.2262%2015.7539%2027.2262%2015.3769C27.2262%2014.9985%2027.119%2014.694%2026.9047%2014.4634C26.6904%2014.2328%2026.4029%2014.1175%2026.0421%2014.1175C25.6867%2014.1175%2025.4019%2014.2342%2025.1876%2014.4674C24.9733%2014.7007%2024.8661%2015.0039%2024.8661%2015.3769C24.8661%2015.7539%2024.9719%2016.0605%2025.1835%2016.2965C25.3951%2016.5325%2025.6813%2016.6505%2026.0421%2016.6505ZM30.7921%2013.4421C31.1759%2013.4421%2031.5177%2013.5255%2031.8175%2013.6923C32.1172%2013.8591%2032.3505%2014.0931%2032.5173%2014.3942C32.6842%2014.694%2032.7676%2015.0351%2032.7676%2015.4176C32.7676%2015.7173%2032.7133%2015.994%2032.6048%2016.2476C32.4963%2016.4999%2032.3173%2016.8315%2032.0677%2017.2425L30.609%2019.6432L29.7667%2019.6432L31.026%2017.5924C31.1034%2017.4704%2031.1807%2017.3564%2031.258%2017.2507C31.0857%2017.3063%2030.8945%2017.3341%2030.6842%2017.3341C30.3221%2017.3341%2029.9993%2017.2479%2029.7158%2017.0757C29.4337%2016.9034%2029.2133%2016.6701%2029.0546%2016.3758C28.8959%2016.0815%2028.8166%2015.7566%2028.8166%2015.4013C28.8166%2015.0351%2028.9013%2014.7021%2029.0709%2014.4023C29.2404%2014.1012%2029.4764%2013.8659%2029.7789%2013.6964C30.0814%2013.5268%2030.4191%2013.4421%2030.7921%2013.4421ZM30.7921%2016.6505C31.1529%2016.6505%2031.4404%2016.5325%2031.6547%2016.2965C31.869%2016.0605%2031.9762%2015.7539%2031.9762%2015.3769C31.9762%2014.9985%2031.869%2014.694%2031.6547%2014.4634C31.4404%2014.2328%2031.1529%2014.1175%2030.7921%2014.1175C30.4367%2014.1175%2030.1519%2014.2342%2029.9376%2014.4674C29.7233%2014.7007%2029.6161%2015.0039%2029.6161%2015.3769C29.6161%2015.7539%2029.7219%2016.0605%2029.9335%2016.2965C30.1451%2016.5325%2030.4313%2016.6505%2030.7921%2016.6505ZM35.2674%2014.6851L35.9001%2014.6851L35.9001%2016.3188L37.5339%2016.3188L37.5339%2016.9516L35.9001%2016.9516L35.9001%2018.5853L35.2674%2018.5853L35.2674%2016.9516L33.6337%2016.9516L33.6337%2016.3188L35.2674%2016.3188L35.2674%2014.6851Z'%20fill='rgb(255,255,255)'%20fill-rule='nonzero'%20/%3e%3c/g%3e%3cg%20id='00公共/单红点'%20opacity='0'%20customFrame='url(%23clipPath_8)'%3e%3crect%20id='00公共/单红点'%20width='6.666667'%20height='6.666667'%20x='23.333496'%20y='9.984619'%20opacity='0'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3ccircle%20id='红点'%20cx='26.6668301'%20cy='13.3179522'%20r='3.33333325'%20fill='rgb(243,111,100)'%20/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e", C2 = "data:image/svg+xml,%3csvg%20viewBox='0%200%2040%2040'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='40.000000'%20height='40.000000'%20fill='none'%20customFrame='url(%23clipPath_12)'%3e%3cdefs%3e%3cclipPath%20id='clipPath_12'%3e%3crect%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_13'%3e%3crect%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_14'%3e%3crect%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3c/defs%3e%3crect%20id='4'%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(234,255,244)'%20/%3e%3cg%20id='我的信息'%20clip-path='url(%23clipPath_13)'%20customFrame='url(%23clipPath_13)'%3e%3crect%20id='我的信息'%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20/%3e%3cg%20id='组合%208'%20customFrame='url(%23clipPath_14)'%3e%3crect%20id='组合%208'%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20/%3e%3cpath%20id='合并'%20d='M28.4994%2012.3142C28.4994%2012.2578%2028.4937%2012.2018%2028.4825%2012.1465C28.4713%2012.0911%2028.4547%2012.0373%2028.4327%2011.9851C28.4107%2011.933%2028.3836%2011.8835%2028.3516%2011.8365C28.3197%2011.7896%2028.2834%2011.7461%2028.2427%2011.7062C28.202%2011.6663%2028.1579%2011.6307%2028.1101%2011.5993C28.0622%2011.568%2028.0117%2011.5415%2027.9585%2011.5199C27.9054%2011.4983%2027.8506%2011.4819%2027.7942%2011.4709C27.7378%2011.4599%2027.6806%2011.4544%2027.6231%2011.4544L24.1832%2011.5199L24.1832%2010L29.0796%2010C29.1472%2010%2029.2143%2010.0065%2029.2806%2010.0194C29.347%2010.0324%2029.4114%2010.0516%2029.4739%2010.077C29.5364%2010.1024%2029.5961%2010.1336%2029.6523%2010.1705C29.7086%2010.2074%2029.7605%2010.2493%2029.8084%2010.2963C29.8562%2010.3433%2029.8991%2010.3944%2029.9367%2010.4496C29.9743%2010.5048%2030.006%2010.5631%2030.0319%2010.6244C30.0578%2010.6858%2030.0773%2010.7491%2030.0905%2010.8142C30.1037%2010.8794%2030.1104%2010.9451%2030.1104%2011.0115L30.1832%2014.4522L28.4992%2014.5L28.4994%2012.3142ZM11.6995%2012.3143C11.6995%2012.2579%2011.7051%2012.2019%2011.7163%2012.1466C11.7275%2012.0912%2011.7441%2012.0374%2011.7661%2011.9852C11.7882%2011.9331%2011.8152%2011.8836%2011.8472%2011.8366C11.8791%2011.7897%2011.9155%2011.7462%2011.9562%2011.7063C11.9968%2011.6664%2012.0409%2011.6308%2012.0888%2011.5994C12.1366%2011.5681%2012.1871%2011.5416%2012.2403%2011.52C12.2934%2011.4984%2012.3482%2011.482%2012.4046%2011.471C12.4611%2011.46%2012.5182%2011.4545%2012.5758%2011.4545L16.0157%2011.52L16.0157%2010.0001L11.1193%2010.0001C11.0516%2010.0001%2010.9846%2010.0066%2010.9182%2010.0196C10.8518%2010.0325%2010.7874%2010.0517%2010.7249%2010.0771C10.6624%2010.1025%2010.6028%2010.1337%2010.5465%2010.1706C10.4902%2010.2075%2010.4383%2010.2494%2010.3904%2010.2964C10.3426%2010.3434%2010.2997%2010.3945%2010.2621%2010.4497C10.2245%2010.5049%2010.1929%2010.5632%2010.167%2010.6245C10.1411%2010.6859%2010.1215%2010.7492%2010.1083%2010.8143C10.0951%2010.8795%2010.0885%2010.9452%2010.0884%2011.0116L10.0157%2014.4523L11.6997%2014.5L11.6995%2012.3143ZM25.3135%2021.8051L25.3135%2022.8167C25.7656%2022.8929%2026.2209%2022.9249%2026.6792%2022.9127C28.3381%2022.9127%2029.1675%2022.326%2029.1675%2021.1527C29.1733%2020.9869%2029.151%2020.825%2029.1006%2020.667C29.0503%2020.509%2028.9747%2020.3641%2028.8742%2020.2322C28.767%2020.1025%2028.6403%2019.9963%2028.4938%2019.9134C28.3474%2019.8306%2028.191%2019.7767%2028.0246%2019.7517L28.0246%2019.7011C28.0971%2019.6839%2028.1676%2019.6606%2028.236%2019.6311C28.3044%2019.6016%2028.3698%2019.5665%2028.4321%2019.5257C28.4944%2019.4848%2028.5526%2019.4389%2028.6069%2019.3879C28.6613%2019.3369%2028.7109%2019.2816%2028.7556%2019.222C28.8003%2019.1624%2028.8394%2019.0994%2028.8732%2019.033C28.9069%2018.9665%2028.9346%2018.8977%2028.9564%2018.8265C28.9782%2018.7552%2028.9937%2018.6826%2029.0028%2018.6086C29.0119%2018.5347%2029.0145%2018.4605%2029.0107%2018.3861C29.0217%2018.2675%2029.0176%2018.1495%2028.9984%2018.0319C28.9791%2017.9144%2028.9454%2017.8012%2028.8971%2017.6923C28.8489%2017.5834%2028.7875%2017.4823%2028.7134%2017.3891C28.6393%2017.2959%2028.5547%2017.2135%2028.4595%2017.1419C28.219%2017.0003%2027.963%2016.8972%2027.6915%2016.8326C27.4199%2016.7679%2027.1449%2016.7446%2026.8664%2016.7626C26.6258%2016.7621%2026.3864%2016.7791%2026.1482%2016.8132C25.9479%2016.8386%2025.7504%2016.8791%2025.5563%2016.9346L25.5563%2017.8854C25.743%2017.8264%2025.9337%2017.7842%2026.128%2017.759C26.3276%2017.73%2026.5282%2017.7148%2026.7298%2017.7134C27.0252%2017.6949%2027.3049%2017.7523%2027.5692%2017.8854C27.6168%2017.9161%2027.6595%2017.9525%2027.6972%2017.9947C27.7348%2018.037%2027.766%2018.0835%2027.791%2018.1343C27.816%2018.1851%2027.8337%2018.2383%2027.8441%2018.294C27.8545%2018.3496%2027.8573%2018.4056%2027.8525%2018.462C27.8566%2018.5278%2027.8514%2018.5927%2027.8367%2018.657C27.822%2018.7212%2027.7986%2018.7821%2027.7663%2018.8395C27.734%2018.897%2027.694%2018.9487%2027.6468%2018.9946C27.5995%2019.0405%2027.5468%2019.0787%2027.4885%2019.1093C27.1544%2019.2631%2026.8037%2019.3306%2026.4364%2019.3117L25.9862%2019.3117L25.9862%2020.1917L26.4466%2020.1917C26.8409%2020.1669%2027.2202%2020.2309%2027.5845%2020.3839C27.6459%2020.4167%2027.7011%2020.4576%2027.7505%2020.5066C27.7999%2020.5556%2027.8412%2020.6107%2027.8745%2020.6718C27.9077%2020.733%2027.9315%2020.7976%2027.9458%2020.8656C27.9602%2020.9337%2027.9644%2021.0024%2027.9587%2021.0717C27.9648%2021.1402%2027.9612%2021.2083%2027.9478%2021.2757C27.9344%2021.3432%2027.912%2021.4074%2027.8801%2021.4683C27.8483%2021.5293%2027.8086%2021.5846%2027.7609%2021.6341C27.7132%2021.6837%2027.6593%2021.7254%2027.5996%2021.7596C27.2884%2021.9045%2026.9613%2021.9685%2026.6184%2021.9518C26.1786%2021.9465%2025.7436%2021.8977%2025.3135%2021.8051ZM21.3382%2018.6238C21.3445%2018.5593%2021.343%2018.495%2021.3335%2018.4308C21.3241%2018.3667%2021.3069%2018.3046%2021.2822%2018.2447C21.2575%2018.1847%2021.226%2018.1287%2021.1876%2018.0765C21.1492%2018.0242%2021.1049%2017.9774%2021.055%2017.936C20.9359%2017.8608%2020.808%2017.806%2020.6714%2017.7714C20.5349%2017.7368%2020.3964%2017.7242%2020.2558%2017.7337C19.8009%2017.7395%2019.356%2017.8087%2018.9208%2017.9411L18.9208%2016.9598C19.4252%2016.8181%2019.9393%2016.7524%2020.4633%2016.7626C20.7322%2016.7484%2020.9964%2016.7773%2021.256%2016.8491C21.5156%2016.9209%2021.7571%2017.032%2021.9806%2017.1824C22.0729%2017.2601%2022.1548%2017.3474%2022.2263%2017.4446C22.2978%2017.5418%2022.3567%2017.646%2022.4034%2017.7573C22.45%2017.8686%2022.483%2017.9838%2022.5021%2018.1029C22.5213%2018.222%2022.5261%2018.3417%2022.5167%2018.462C22.5245%2018.7882%2022.4655%2019.1017%2022.3396%2019.4027C22.1879%2019.7384%2021.984%2020.0384%2021.7277%2020.3029C21.3021%2020.7337%2020.8502%2021.135%2020.3721%2021.5067L19.9928%2021.8051L19.9928%2021.8759L22.6938%2021.8759L22.6938%2022.8419L18.5464%2022.8419L18.5464%2021.7697C19.2882%2021.1796%2019.8579%2020.6975%2020.2558%2020.3232C20.574%2020.0432%2020.8523%2019.728%2021.0905%2019.3774C21.1675%2019.2665%2021.2269%2019.1469%2021.2691%2019.0187C21.3113%2018.8904%2021.3344%2018.7588%2021.3382%2018.6238ZM12.3102%2017.2127L12.3102%2018.1939L13.7769%2017.9107L13.7769%2022.8419L14.9605%2022.8419L14.9605%2016.8486L14.0957%2016.8486L12.3102%2017.2127ZM28.5524%2028.0475C28.5524%2028.104%2028.5467%2028.1599%2028.5353%2028.2152C28.5239%2028.2706%2028.5071%2028.3244%2028.4849%2028.3766C28.4626%2028.4287%2028.4352%2028.4782%2028.4028%2028.5252C28.3705%2028.5721%2028.3337%2028.6156%2028.2925%2028.6555C28.2513%2028.6954%2028.2067%2028.731%2028.1583%2028.7624C28.1098%2028.7937%2028.0587%2028.8202%2028.0049%2028.8418C27.9511%2028.8634%2027.8957%2028.8798%2027.8385%2028.8908C27.7814%2028.9018%2027.7235%2028.9073%2027.6653%2028.9073L24.1832%2028.8418L24.1832%2030.3617L29.1397%2030.3617C29.2082%2030.3617%2029.276%2030.3552%2029.3432%2030.3423C29.4104%2030.3293%2029.4756%2030.3101%2029.5389%2030.2847C29.6022%2030.2593%2029.6625%2030.2281%2029.7195%2030.1912C29.7765%2030.1543%2029.829%2030.1124%2029.8774%2030.0654C29.9259%2030.0184%2029.9693%2029.9673%2030.0074%2029.9121C30.0454%2029.8569%2030.0774%2029.7986%2030.1037%2029.7373C30.1299%2029.6759%2030.1497%2029.6126%2030.163%2029.5475C30.1764%2029.4823%2030.1831%2029.4166%2030.1832%2029.3502L30.1832%2026.0478L28.4785%2026L28.5524%2028.0475ZM11.6308%2028.0099C11.6308%2028.0664%2011.6365%2028.1223%2011.6479%2028.1777C11.6592%2028.233%2011.676%2028.2868%2011.6983%2028.339C11.7206%2028.3911%2011.748%2028.4406%2011.7803%2028.4876C11.8127%2028.5345%2011.8495%2028.578%2011.8906%2028.6179C11.9318%2028.6578%2011.9765%2028.6934%2012.0249%2028.7248C12.0733%2028.7562%2012.1244%2028.7826%2012.1783%2028.8042C12.2321%2028.8259%2012.2875%2028.8422%2012.3446%2028.8532C12.4017%2028.8642%2012.4596%2028.8697%2012.5178%2028.8698L16%2028.8042L16%2030.3241L11.0435%2030.3241C10.975%2030.3241%2010.9071%2030.3176%2010.8399%2030.3047C10.7727%2030.2917%2010.7076%2030.2725%2010.6443%2030.2471C10.581%2030.2217%2010.5206%2030.1906%2010.4637%2030.1537C10.4067%2030.1168%2010.3542%2030.0748%2010.3057%2030.0278C10.2573%2029.9809%2010.2138%2029.9298%2010.1758%2029.8745C10.1377%2029.8193%2010.1057%2029.7611%2010.0795%2029.6997C10.0533%2029.6383%2010.0335%2029.575%2010.0201%2029.5099C10.0068%2029.4448%2010%2029.379%2010%2029.3126L10%2026.0478L11.7047%2026L11.6308%2028.0099Z'%20fill='rgb(14,191,241)'%20fill-rule='evenodd'%20/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", _2 = "data:image/svg+xml,%3csvg%20viewBox='0%200%2040%2040'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='40.000000'%20height='40.000000'%20fill='none'%20customFrame='url(%23clipPath_9)'%3e%3cdefs%3e%3cclipPath%20id='clipPath_9'%3e%3crect%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_10'%3e%3crect%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_11'%3e%3crect%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3c/defs%3e%3crect%20id='3'%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(236,250,254)'%20/%3e%3cg%20id='画板%202310'%20customFrame='url(%23clipPath_10)'%3e%3crect%20id='画板%202310'%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3cg%20id='人事服务'%3e%3cg%20id='ic_public_link'%20clip-path='url(%23clipPath_11)'%20customFrame='url(%23clipPath_11)'%3e%3crect%20id='ic_public_link'%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20/%3e%3cpath%20id='path1'%20d='M9.9999%2019.9917C9.9999%2018.4292%209.99573%2016.8667%209.9999%2015.3042C9.99573%2014.5459%2010.0916%2013.7917%2010.2749%2013.0626C10.6874%2011.5126%2011.6957%2010.5917%2013.2457%2010.2334C14.0207%2010.0667%2014.8166%209.98756%2015.6082%2010.0001C18.6041%2010.0001%2021.5999%2010.0001%2024.5999%2010.0001C25.3541%209.99589%2026.1082%2010.0792%2026.8457%2010.2584C28.4416%2010.6459%2029.3999%2011.6584%2029.7624%2013.2501C29.9291%2014.0001%2030.0041%2014.7667%2029.9957%2015.5376C29.9957%2018.5667%2029.9957%2021.5959%2029.9957%2024.6209C29.9999%2025.3709%2029.9166%2026.1209%2029.7416%2026.8459C29.3499%2028.4459%2028.3332%2029.3959%2026.7457%2029.7626C25.9666%2029.9292%2025.1749%2030.0084%2024.3791%2029.9959C21.3957%2029.9959%2018.4124%2029.9959%2015.4291%2029.9959C14.6666%2030.0042%2013.9082%2029.9167%2013.1666%2029.7417C11.5624%2029.3542%2010.5999%2028.3376%2010.2374%2026.7376C10.0499%2025.9251%209.9999%2025.1126%209.9999%2024.2917C9.9999%2022.8584%209.9999%2021.4251%209.9999%2019.9917Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='evenodd'%20/%3e%3ccircle%20id='path2'%20cx='20'%20cy='20'%20r='10'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3cpath%20id='path3'%20d='M25.0333%2021.8666L26.9%2020C28.8083%2018.0916%2028.8083%2015%2026.9%2013.0958C24.9958%2011.1875%2021.9041%2011.1875%2020%2013.0958L18.1291%2014.9625M21.8666%2025.0333L20%2026.9C18.0916%2028.8083%2015%2028.8083%2013.0958%2026.9C11.1875%2024.9958%2011.1875%2021.9041%2013.0958%2020L14.9625%2018.1291'%20fill-rule='nonzero'%20stroke='rgb(14,191,241)'%20stroke-linecap='round'%20stroke-width='1.25'%20/%3e%3cpath%20id='pah4'%20d='M18.125%2021.875L21.875%2018.125'%20stroke='rgb(14,191,241)'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.25'%20/%3e%3cpath%20id='path5'%20d='M25.8207%2019.2626L24.0457%2021.0376C23.7998%2021.2834%2023.6748%2021.5292%2023.6748%2021.7751C23.6748%2022.0209%2023.7998%2022.2667%2024.0457%2022.5126C24.1498%2022.6167%2024.2665%2022.6959%2024.3915%2022.7459C24.5123%2022.7917%2024.6415%2022.8167%2024.779%2022.8167C24.9207%2022.8167%2025.0498%2022.7917%2025.1665%2022.7459C25.2957%2022.6959%2025.4123%2022.6167%2025.5165%2022.5126L27.2915%2020.7334C27.8165%2020.2126%2028.2165%2019.6334%2028.4957%2019.0001C28.5082%2018.9667%2028.5248%2018.9334%2028.5373%2018.8959C28.554%2018.8626%2028.5665%2018.8292%2028.579%2018.7917C28.8332%2018.1501%2028.9582%2017.4584%2028.9582%2016.7209C28.9582%2015.9792%2028.8332%2015.2876%2028.579%2014.6459C28.5665%2014.6084%2028.554%2014.5751%2028.5373%2014.5417C28.5248%2014.5042%2028.5082%2014.4709%2028.4957%2014.4376C28.2165%2013.8042%2027.8165%2013.2292%2027.2915%2012.7042C26.7707%2012.1792%2026.1915%2011.7792%2025.5582%2011.5001C25.5248%2011.4876%2025.4915%2011.4709%2025.454%2011.4584C25.4207%2011.4417%2025.3873%2011.4292%2025.354%2011.4167C24.7082%2011.1667%2024.0165%2011.0417%2023.279%2011.0417C22.5373%2011.0417%2021.8457%2011.1667%2021.204%2011.4167C21.1665%2011.4292%2021.1332%2011.4417%2021.0998%2011.4584C21.0623%2011.4709%2021.029%2011.4876%2020.9957%2011.5001C20.3623%2011.7792%2019.7832%2012.1792%2019.2623%2012.7042L17.4832%2014.4792C17.379%2014.5834%2017.2998%2014.7001%2017.2498%2014.8292C17.204%2014.9501%2017.179%2015.0751%2017.179%2015.2167C17.179%2015.3542%2017.204%2015.4834%2017.2498%2015.6042C17.2998%2015.7292%2017.379%2015.8459%2017.4832%2015.9542C17.5915%2016.0584%2017.7082%2016.1376%2017.8332%2016.1876C17.954%2016.2334%2018.0832%2016.2584%2018.2207%2016.2584C18.3623%2016.2584%2018.4915%2016.2334%2018.6082%2016.1876C18.7373%2016.1376%2018.854%2016.0584%2018.9582%2015.9542L20.7332%2014.1751C21.0873%2013.8209%2021.4748%2013.5584%2021.8957%2013.3834C22.3165%2013.2084%2022.779%2013.1251%2023.279%2013.1251C23.7748%2013.1251%2024.2373%2013.2084%2024.6582%2013.3834C25.079%2013.5584%2025.4665%2013.8209%2025.8207%2014.1751C26.1748%2014.5292%2026.4373%2014.9167%2026.6123%2015.3376C26.7873%2015.7584%2026.8748%2016.2167%2026.8748%2016.7209C26.8748%2017.2209%2026.7873%2017.6792%2026.6123%2018.1001C26.4373%2018.5209%2026.1748%2018.9084%2025.8207%2019.2626ZM13.3832%2021.8959C13.5582%2021.4751%2013.8207%2021.0876%2014.1748%2020.7334L15.954%2018.9584C16.0582%2018.8542%2016.1373%2018.7376%2016.1873%2018.6084C16.2332%2018.4876%2016.2582%2018.3626%2016.2582%2018.2209C16.2582%2018.0834%2016.2332%2017.9542%2016.1873%2017.8334C16.1373%2017.7084%2016.0582%2017.5917%2015.954%2017.4834C15.7082%2017.2417%2015.4623%2017.1167%2015.2165%2017.1167C14.9707%2017.1167%2014.7248%2017.2417%2014.479%2017.4834L12.704%2019.2626C12.179%2019.7876%2011.779%2020.3626%2011.4998%2020.9959C11.4873%2021.0292%2011.4707%2021.0626%2011.4582%2021.1001C11.4415%2021.1334%2011.429%2021.1667%2011.4165%2021.2042C11.1665%2021.8459%2011.0415%2022.5376%2011.0415%2023.2792C11.0415%2024.0167%2011.1665%2024.7084%2011.4165%2025.3542C11.429%2025.3876%2011.4415%2025.4209%2011.4582%2025.4584C11.4707%2025.4917%2011.4873%2025.5251%2011.4998%2025.5584C11.779%2026.1917%2012.179%2026.7709%2012.704%2027.2917C13.2248%2027.8167%2013.804%2028.2167%2014.4373%2028.4959C14.4707%2028.5084%2014.504%2028.5251%2014.5415%2028.5376C14.5748%2028.5542%2014.6082%2028.5667%2014.6457%2028.5792C15.2873%2028.8292%2015.979%2028.9584%2016.7207%2028.9584C17.4582%2028.9584%2018.1498%2028.8292%2018.7915%2028.5792C18.829%2028.5667%2018.8623%2028.5542%2018.8957%2028.5376C18.9332%2028.5251%2018.9665%2028.5084%2018.9998%2028.4959C19.6332%2028.2167%2020.2123%2027.8167%2020.7332%2027.2917L22.5123%2025.5167C22.6165%2025.4126%2022.6957%2025.2959%2022.7457%2025.1667C22.7915%2025.0459%2022.8165%2024.9209%2022.8165%2024.7792C22.8165%2024.6417%2022.7915%2024.5126%2022.7457%2024.3917C22.6957%2024.2667%2022.6165%2024.1501%2022.5123%2024.0417C22.2665%2023.8001%2022.0207%2023.6751%2021.7748%2023.6751C21.529%2023.6751%2021.2832%2023.8001%2021.0373%2024.0417L19.2623%2025.8209C18.9082%2026.1751%2018.5207%2026.4376%2018.0998%2026.6126C17.679%2026.7876%2017.2165%2026.8751%2016.7207%2026.8751C16.2207%2026.8751%2015.7582%2026.7876%2015.3373%2026.6126C14.9165%2026.4376%2014.529%2026.1751%2014.1748%2025.8209C13.8207%2025.4667%2013.5582%2025.0792%2013.3832%2024.6584C13.2082%2024.2376%2013.1248%2023.7792%2013.1248%2023.2792C13.1248%2022.7751%2013.2082%2022.3167%2013.3832%2021.8959Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='evenodd'%20/%3e%3cpath%20id='path6'%20d='M21.8127%2016.7458C21.746%2016.7874%2021.6877%2016.8374%2021.6293%2016.8916L16.8918%2021.6291C16.8377%2021.6874%2016.7877%2021.7499%2016.746%2021.8124C16.7127%2021.8624%2016.6877%2021.9166%2016.6627%2021.9749C16.6377%2022.0374%2016.6168%2022.1041%2016.6043%2022.1708C16.5918%2022.2333%2016.5835%2022.2999%2016.5835%2022.3666C16.5835%2022.4333%2016.5918%2022.4999%2016.6043%2022.5666C16.6168%2022.6333%2016.6377%2022.6999%2016.6627%2022.7624C16.6877%2022.8166%2016.7127%2022.8708%2016.746%2022.9208C16.7877%2022.9874%2016.8377%2023.0499%2016.8918%2023.1041C16.946%2023.1583%2017.0085%2023.2083%2017.0752%2023.2499C17.1252%2023.2833%2017.1793%2023.3083%2017.2335%2023.3333C17.3002%2023.3583%2017.3627%2023.3791%2017.4293%2023.3916C17.496%2023.4041%2017.5627%2023.4124%2017.6293%2023.4124C17.696%2023.4124%2017.7627%2023.4041%2017.8252%2023.3916C17.8918%2023.3791%2017.9585%2023.3583%2018.021%2023.3333C18.0793%2023.3083%2018.1335%2023.2833%2018.1835%2023.2499C18.246%2023.2083%2018.3085%2023.1583%2018.3668%2023.1041L23.1043%2018.3666C23.1585%2018.3083%2023.2085%2018.2499%2023.2502%2018.1833C23.2835%2018.1333%2023.3085%2018.0791%2023.3335%2018.0208C23.3585%2017.9583%2023.3793%2017.8916%2023.3918%2017.8249C23.4043%2017.7624%2023.4127%2017.6958%2023.4127%2017.6291C23.4127%2017.5624%2023.4043%2017.4958%2023.3918%2017.4291C23.3793%2017.3624%2023.3585%2017.2999%2023.3335%2017.2333C23.3085%2017.1791%2023.2835%2017.1249%2023.2502%2017.0749C23.2085%2017.0083%2023.1585%2016.9458%2023.1043%2016.8916C23.046%2016.8374%2022.9877%2016.7874%2022.921%2016.7458C22.871%2016.7124%2022.8168%2016.6874%2022.7627%2016.6624C22.696%2016.6374%2022.6335%2016.6166%2022.5668%2016.6041C22.5002%2016.5916%2022.4335%2016.5833%2022.3668%2016.5833C22.3002%2016.5833%2022.2335%2016.5916%2022.171%2016.6041C22.1043%2016.6166%2022.0377%2016.6374%2021.9752%2016.6624C21.9168%2016.6874%2021.8627%2016.7124%2021.8127%2016.7458Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='evenodd'%20/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e", b2 = "data:image/svg+xml,%3csvg%20viewBox='0%200%2040%2040'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='40.000000'%20height='40.000000'%20fill='none'%20customFrame='url(%23clipPath_0)'%3e%3cdefs%3e%3cclipPath%20id='clipPath_0'%3e%3crect%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_1'%3e%3crect%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_2'%3e%3crect%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3c/defs%3e%3crect%20id='1'%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(236,250,254)'%20/%3e%3cg%20id='车辆'%20clip-path='url(%23clipPath_1)'%20customFrame='url(%23clipPath_1)'%3e%3crect%20id='车辆'%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20/%3e%3cg%20id='编组'%3e%3cg%20id='ic_public_qrcode'%20clip-path='url(%23clipPath_2)'%20customFrame='url(%23clipPath_2)'%3e%3crect%20id='ic_public_qrcode'%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20/%3e%3cg%20id='ic_public_qrcode_1_1'%3e%3cpath%20id='ic_public_qrcode_2_0'%20d='M10.6273%2019.9924C10.6273%2018.5277%2010.6222%2017.0631%2010.6273%2015.5985C10.6243%2014.8898%2010.7114%2014.1836%2010.8865%2013.4968C11.2702%2012.0432%2012.2171%2011.1805%2013.6693%2010.8458C14.3974%2010.6885%2015.1411%2010.6148%2015.886%2010.6261C18.6946%2010.6261%2021.5035%2010.6261%2024.3127%2010.6261C25.0221%2010.6217%2025.7295%2010.7029%2026.4195%2010.8678C27.9156%2011.2339%2028.8134%2012.1816%2029.1554%2013.6725C29.3092%2014.3772%2029.3826%2015.097%2029.3744%2015.8182C29.3744%2018.6571%2029.3744%2021.4963%2029.3744%2024.3357C29.3782%2025.0383%2029.2973%2025.7388%2029.1334%2026.422C28.7673%2027.9189%2027.8153%2028.8123%2026.3243%2029.1543C25.5961%2029.311%2024.8524%2029.3847%2024.1076%2029.374C21.3107%2029.374%2018.514%2029.374%2015.7176%2029.374C15.0027%2029.3798%2014.2897%2029.2999%2013.5939%2029.136C12.0912%2028.7698%2011.189%2027.8178%2010.8477%2026.3195C10.6734%2025.5579%2010.6273%2024.7941%2010.6273%2024.0237C10.6273%2022.6802%2010.6273%2021.3364%2010.6273%2019.9924Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='nonzero'%20/%3e%3cpath%20id='ic_public_qrcode_2_0'%20d='M10.6273%2015.5985C10.6243%2014.8898%2010.7114%2014.1836%2010.8865%2013.4968C11.2702%2012.0432%2012.2171%2011.1805%2013.6693%2010.8458C14.3974%2010.6885%2015.1411%2010.6148%2015.886%2010.6261C18.6946%2010.6261%2021.5035%2010.6261%2024.3127%2010.6261C25.0221%2010.6217%2025.7295%2010.7029%2026.4195%2010.8678C27.9156%2011.2339%2028.8134%2012.1816%2029.1554%2013.6725C29.3092%2014.3772%2029.3826%2015.097%2029.3744%2015.8182C29.3744%2018.6571%2029.3744%2021.4963%2029.3744%2024.3357C29.3782%2025.0383%2029.2973%2025.7388%2029.1334%2026.422C28.7673%2027.9189%2027.8153%2028.8123%2026.3243%2029.1543C25.5961%2029.311%2024.8524%2029.3847%2024.1076%2029.374C21.3107%2029.374%2018.514%2029.374%2015.7176%2029.374C15.0027%2029.3798%2014.2897%2029.2999%2013.5939%2029.136C12.0912%2028.7698%2011.189%2027.8178%2010.8477%2026.3195C10.6734%2025.5579%2010.6273%2024.7941%2010.6273%2024.0237C10.6273%2022.6802%2010.6273%2021.3364%2010.6273%2019.9924C10.6273%2018.5277%2010.6222%2017.0631%2010.6273%2015.5985Z'%20fill-rule='nonzero'%20stroke='rgb(255,255,255)'%20stroke-opacity='0'%20stroke-width='1.25'%20/%3e%3cpath%20id='ic_public_qrcode_2_1'%20d='M10.6273%2015.5985C10.6243%2014.8898%2010.7114%2014.1836%2010.8865%2013.4968C11.2702%2012.0432%2012.2171%2011.1805%2013.6693%2010.8458C14.3974%2010.6885%2015.1411%2010.6148%2015.886%2010.6261C18.6946%2010.6261%2021.5035%2010.6261%2024.3127%2010.6261C25.0221%2010.6217%2025.7295%2010.7029%2026.4195%2010.8678C27.9156%2011.2339%2028.8134%2012.1816%2029.1554%2013.6725C29.3092%2014.3772%2029.3826%2015.097%2029.3744%2015.8182C29.3744%2018.6571%2029.3744%2021.4963%2029.3744%2024.3357C29.3782%2025.0383%2029.2973%2025.7388%2029.1334%2026.422C28.7673%2027.9189%2027.8153%2028.8123%2026.3243%2029.1543C25.5961%2029.311%2024.8524%2029.3847%2024.1076%2029.374C21.3107%2029.374%2018.514%2029.374%2015.7176%2029.374C15.0027%2029.3798%2014.2897%2029.2999%2013.5939%2029.136C12.0912%2028.7698%2011.189%2027.8178%2010.8477%2026.3195C10.6734%2025.5579%2010.6273%2024.7941%2010.6273%2024.0237C10.6273%2022.6802%2010.6273%2021.3364%2010.6273%2019.9924C10.6273%2018.5277%2010.6222%2017.0631%2010.6273%2015.5985Z'%20opacity='0.200000003'%20fill-rule='nonzero'%20stroke='rgb(255,255,255)'%20stroke-opacity='0'%20stroke-width='1.25'%20/%3e%3ccircle%20id='ic_public_qrcode_2_2'%20cx='20'%20cy='20'%20r='10'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3cpath%20id='ic_public_qrcode_2_3'%20d='M17.5%2011.25C17.9602%2011.25%2018.3333%2011.6231%2018.3333%2012.0833L18.3333%2017.5C18.3333%2017.9602%2017.9602%2018.3333%2017.5%2018.3333L12.0833%2018.3333C11.6231%2018.3333%2011.25%2017.9602%2011.25%2017.5L11.25%2012.0833C11.25%2011.6231%2011.6231%2011.25%2012.0833%2011.25L17.5%2011.25ZM17.5%2021.6667C17.9602%2021.6667%2018.3333%2022.0398%2018.3333%2022.5L18.3333%2027.9167C18.3333%2028.3769%2017.9602%2028.75%2017.5%2028.75L12.0833%2028.75C11.6231%2028.75%2011.25%2028.3769%2011.25%2027.9167L11.25%2022.5C11.25%2022.0398%2011.6231%2021.6667%2012.0833%2021.6667L17.5%2021.6667ZM27.9167%2011.25C28.3769%2011.25%2028.75%2011.6231%2028.75%2012.0833L28.75%2017.5C28.75%2017.9602%2028.3769%2018.3333%2027.9167%2018.3333L22.5%2018.3333C22.0398%2018.3333%2021.6667%2017.9602%2021.6667%2017.5L21.6667%2012.0833C21.6667%2011.6231%2022.0398%2011.25%2022.5%2011.25L27.9167%2011.25Z'%20fill-rule='evenodd'%20stroke='rgb(14,191,241)'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.25'%20/%3e%3cpath%20id='ic_public_qrcode_2_4'%20d='M17.5002%2010.8333C18.1905%2010.8333%2018.7502%2011.3929%2018.7502%2012.0833L18.7502%2017.4999C18.7502%2018.1903%2018.1905%2018.7499%2017.5002%2018.7499L12.0835%2018.7499C11.3931%2018.7499%2010.8335%2018.1903%2010.8335%2017.4999L10.8335%2012.0833C10.8335%2011.3929%2011.3931%2010.8333%2012.0835%2010.8333L17.5002%2010.8333ZM17.5002%2011.6666L12.0835%2011.6666C11.8534%2011.6666%2011.6668%2011.8531%2011.6668%2012.0833L11.6668%2017.4999C11.6668%2017.73%2011.8534%2017.9166%2012.0835%2017.9166L17.5002%2017.9166C17.7303%2017.9166%2017.9168%2017.73%2017.9168%2017.4999L17.9168%2012.0833C17.9168%2011.8531%2017.7303%2011.6666%2017.5002%2011.6666ZM17.5002%2021.2499C18.1905%2021.2499%2018.7502%2021.8096%2018.7502%2022.4999L18.7502%2027.9166C18.7502%2028.6069%2018.1905%2029.1666%2017.5002%2029.1666L12.0835%2029.1666C11.3931%2029.1666%2010.8335%2028.6069%2010.8335%2027.9166L10.8335%2022.4999C10.8335%2021.8096%2011.3931%2021.2499%2012.0835%2021.2499L17.5002%2021.2499ZM17.5002%2022.0833L12.0835%2022.0833C11.8534%2022.0833%2011.6668%2022.2698%2011.6668%2022.4999L11.6668%2027.9166C11.6668%2028.1467%2011.8534%2028.3333%2012.0835%2028.3333L17.5002%2028.3333C17.7303%2028.3333%2017.9168%2028.1467%2017.9168%2027.9166L17.9168%2022.4999C17.9168%2022.2698%2017.7303%2022.0833%2017.5002%2022.0833ZM27.9168%2010.8333C28.6072%2010.8333%2029.1668%2011.3929%2029.1668%2012.0833L29.1668%2017.4999C29.1668%2018.1903%2028.6072%2018.7499%2027.9168%2018.7499L22.5002%2018.7499C21.8098%2018.7499%2021.2502%2018.1903%2021.2502%2017.4999L21.2502%2012.0833C21.2502%2011.3929%2021.8098%2010.8333%2022.5002%2010.8333L27.9168%2010.8333ZM27.9168%2011.6666L22.5002%2011.6666C22.27%2011.6666%2022.0835%2011.8531%2022.0835%2012.0833L22.0835%2017.4999C22.0835%2017.73%2022.27%2017.9166%2022.5002%2017.9166L27.9168%2017.9166C28.1469%2017.9166%2028.3335%2017.73%2028.3335%2017.4999L28.3335%2012.0833C28.3335%2011.8531%2028.1469%2011.6666%2027.9168%2011.6666Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='nonzero'%20/%3e%3cpath%20id='ic_public_qrcode_2_4'%20d='M18.7502%2012.0833L18.7502%2017.4999C18.7502%2018.1903%2018.1905%2018.7499%2017.5002%2018.7499L12.0835%2018.7499C11.3931%2018.7499%2010.8335%2018.1903%2010.8335%2017.4999L10.8335%2012.0833C10.8335%2011.3929%2011.3931%2010.8333%2012.0835%2010.8333L17.5002%2010.8333C18.1905%2010.8333%2018.7502%2011.3929%2018.7502%2012.0833ZM12.0835%2011.6666C11.8534%2011.6666%2011.6668%2011.8531%2011.6668%2012.0833L11.6668%2017.4999C11.6668%2017.73%2011.8534%2017.9166%2012.0835%2017.9166L17.5002%2017.9166C17.7303%2017.9166%2017.9168%2017.73%2017.9168%2017.4999L17.9168%2012.0833C17.9168%2011.8531%2017.7303%2011.6666%2017.5002%2011.6666L12.0835%2011.6666ZM18.7502%2022.4999L18.7502%2027.9166C18.7502%2028.6069%2018.1905%2029.1666%2017.5002%2029.1666L12.0835%2029.1666C11.3931%2029.1666%2010.8335%2028.6069%2010.8335%2027.9166L10.8335%2022.4999C10.8335%2021.8096%2011.3931%2021.2499%2012.0835%2021.2499L17.5002%2021.2499C18.1905%2021.2499%2018.7502%2021.8096%2018.7502%2022.4999ZM12.0835%2022.0833C11.8534%2022.0833%2011.6668%2022.2698%2011.6668%2022.4999L11.6668%2027.9166C11.6668%2028.1467%2011.8534%2028.3333%2012.0835%2028.3333L17.5002%2028.3333C17.7303%2028.3333%2017.9168%2028.1467%2017.9168%2027.9166L17.9168%2022.4999C17.9168%2022.2698%2017.7303%2022.0833%2017.5002%2022.0833L12.0835%2022.0833ZM29.1668%2012.0833L29.1668%2017.4999C29.1668%2018.1903%2028.6072%2018.7499%2027.9168%2018.7499L22.5002%2018.7499C21.8098%2018.7499%2021.2502%2018.1903%2021.2502%2017.4999L21.2502%2012.0833C21.2502%2011.3929%2021.8098%2010.8333%2022.5002%2010.8333L27.9168%2010.8333C28.6072%2010.8333%2029.1668%2011.3929%2029.1668%2012.0833ZM22.5002%2011.6666C22.27%2011.6666%2022.0835%2011.8531%2022.0835%2012.0833L22.0835%2017.4999C22.0835%2017.73%2022.27%2017.9166%2022.5002%2017.9166L27.9168%2017.9166C28.1469%2017.9166%2028.3335%2017.73%2028.3335%2017.4999L28.3335%2012.0833C28.3335%2011.8531%2028.1469%2011.6666%2027.9168%2011.6666L22.5002%2011.6666Z'%20fill-rule='nonzero'%20stroke='rgb(255,255,255)'%20stroke-opacity='0'%20stroke-linejoin='round'%20stroke-width='1.25'%20/%3e%3cpath%20id='ic_public_qrcode_2_5'%20d='M27.9165%2021.6667L27.9165%2024.5834L28.7498%2024.5834L28.7498%2021.6667L27.9165%2021.6667ZM24.5832%2021.6667L24.5832%2022.639L24.5828%2022.6388L24.5832%2024.5834L23.6109%2024.5834L23.6107%2022.6388L21.6665%2022.639L21.6665%2021.6667L24.5832%2021.6667ZM21.6665%2025.8334L21.6665%2028.7501L22.4998%2028.7501L22.4998%2025.8334L21.6665%2025.8334ZM27.9165%2027.9167L27.9165%2028.7501L28.7498%2028.7501L28.7498%2027.9167L27.9165%2027.9167ZM25.8332%2025.8334L25.8332%2026.6667L26.6665%2026.6667L26.6665%2025.8334L25.8332%2025.8334Z'%20fill='rgb(14,191,241)'%20fill-rule='nonzero'%20/%3e%3cpath%20id='ic_public_qrcode_2_5'%20d='M27.9165%2024.5834L28.7498%2024.5834L28.7498%2021.6667L27.9165%2021.6667L27.9165%2024.5834ZM24.5832%2022.639L24.5828%2022.6388L24.5832%2024.5834L23.6109%2024.5834L23.6107%2022.6388L21.6665%2022.639L21.6665%2021.6667L24.5832%2021.6667L24.5832%2022.639ZM21.6665%2028.7501L22.4998%2028.7501L22.4998%2025.8334L21.6665%2025.8334L21.6665%2028.7501ZM27.9165%2028.7501L28.7498%2028.7501L28.7498%2027.9167L27.9165%2027.9167L27.9165%2028.7501ZM25.8332%2026.6667L26.6665%2026.6667L26.6665%2025.8334L25.8332%2025.8334L25.8332%2026.6667Z'%20fill-rule='nonzero'%20stroke='rgb(14,191,241)'%20stroke-linejoin='round'%20stroke-width='1.25'%20/%3e%3cpath%20id='ic_public_qrcode_2_6'%20d='M14.375%2014.375L14.375%2015.2083L15.2083%2015.2083L15.2083%2014.375L14.375%2014.375ZM14.375%2024.7917L14.375%2025.625L15.2083%2025.625L15.2083%2024.7917L14.375%2024.7917ZM24.7917%2014.375L24.7917%2015.2083L25.625%2015.2083L25.625%2014.375L24.7917%2014.375Z'%20fill='rgb(14,191,241)'%20fill-rule='nonzero'%20/%3e%3cpath%20id='ic_public_qrcode_2_6'%20d='M14.375%2015.2083L15.2083%2015.2083L15.2083%2014.375L14.375%2014.375L14.375%2015.2083ZM14.375%2025.625L15.2083%2025.625L15.2083%2024.7917L14.375%2024.7917L14.375%2025.625ZM24.7917%2015.2083L25.625%2015.2083L25.625%2014.375L24.7917%2014.375L24.7917%2015.2083Z'%20fill-rule='nonzero'%20stroke='rgb(14,191,241)'%20stroke-linejoin='round'%20stroke-width='1.25'%20/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e", x2 = "data:image/svg+xml,%3csvg%20viewBox='0%200%2012%2012'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='12.000000'%20height='12.000000'%20fill='none'%3e%3cdefs%3e%3cfilter%20id='pixso_custom_mask_type_luminance'%3e%3cfeColorMatrix%20type='matrix'%20values='1%200%200%200%200%200%201%200%200%200%200%200%201%200%200%200%200%200%201%200%20'%20/%3e%3c/filter%3e%3c/defs%3e%3cmask%20id='mask_0'%20width='11.999876'%20height='11.999876'%20x='0.000000'%20y='0.000000'%20maskUnits='userSpaceOnUse'%3e%3cg%20filter='url(%23pixso_custom_mask_type_luminance)'%3e%3cg%20id='mask401_19830'%3e%3cpath%20id='蒙版'%20d='M0%200L11.9999%200L11.9999%2011.9999L0%2011.9999L0%200ZM2.69992%201.34999L8.09977%201.34999C9.5082%201.34999%2010.6498%202.49167%2010.6498%203.89998L10.6498%209.2999C10.6498%2010.7082%209.5082%2011.8499%208.09977%2011.8499L2.69992%2011.8499C1.29149%2011.8499%200.149901%2010.7082%200.149901%209.2999L0.149901%203.89998C0.149901%202.49167%201.29149%201.34999%202.69992%201.34999Z'%20fill='rgb(196,196,196)'%20fill-rule='evenodd'%20/%3e%3c/g%3e%3c/g%3e%3c/mask%3e%3crect%20id='ic_public_copy'%20width='12.000000'%20height='12.000000'%20x='0.000000'%20y='0.000000'%20/%3e%3crect%20id='ic_public_copy-复制/base/ic_public_copy'%20width='11.999876'%20height='11.999876'%20x='0.000000'%20y='0.000000'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3cpath%20id='path1'%20d='M0.000134537%205.99497C0.000134537%205.05748%20-0.00236544%204.11999%200.000134537%203.1825C-0.00236544%202.72751%200.055134%202.27501%200.165133%201.83752C0.41263%200.907526%201.01762%200.355032%201.94761%200.140034C2.41261%200.040035%202.8901%20-0.00746449%203.3651%203.54269e-05C5.16258%203.54269e-05%206.96006%203.54269e-05%208.76004%203.54269e-05C9.21254%20-0.00246455%209.66503%200.0475349%2010.1075%200.155034C11.065%200.387531%2011.64%200.995025%2011.8575%201.95002C11.9575%202.40001%2012.005%202.86001%2011.9975%203.3225C11.9975%205.13998%2011.9975%206.95746%2011.9975%208.77244C12%209.22244%2011.95%209.67243%2011.845%2010.1099C11.61%2011.0674%2011%2011.6374%2010.0475%2011.8574C9.58003%2011.9574%209.10504%2012.0049%208.62754%2011.9974C6.83756%2011.9974%205.04758%2011.9974%203.2576%2011.9974C2.80011%2012.0024%202.34511%2011.9499%201.90011%2011.8449C0.937625%2011.6124%200.360131%2011.0024%200.142633%2010.0424C0.0301342%209.55494%200.000134537%209.06744%200.000134537%208.57495C0.000134537%207.71495%200.000134537%206.85496%200.000134537%205.99497Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='evenodd'%20/%3e%3ccircle%20id='path2'%20cx='5.99993801'%20cy='5.99993801'%20r='5.99993801'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3cg%20id='mask'%20mask='url(%23mask_0)'%3e%3cg%20id='组合%208'%3e%3cpath%20id='path'%20d='M11.1%203.89993L11.1%206.8999C11.1%208.55488%209.75502%209.89737%208.10004%209.89737L5.10007%209.89737C3.44258%209.89737%202.1001%208.55488%202.1001%206.8999L2.1001%203.89993C2.1001%202.24245%203.44258%200.897461%205.10007%200.897461L8.10004%200.897461C9.75502%200.897461%2011.1%202.24245%2011.1%203.89993Z'%20fill-rule='nonzero'%20stroke='rgb(25,25,25)'%20stroke-linejoin='round'%20stroke-width='0.749992251'%20/%3e%3c/g%3e%3c/g%3e%3cpath%20id='path4'%20d='M2.10008%202.39746L8.10002%202.39746C8.92751%202.39746%209.6%203.06995%209.6%203.89995L9.6%209.89738C9.6%2010.7274%208.92751%2011.3999%208.10002%2011.3999L2.10008%2011.3999C1.27009%2011.3999%200.600098%2010.7274%200.600098%209.89738L0.600098%203.89995C0.600098%203.06995%201.27009%202.39746%202.10008%202.39746Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='evenodd'%20/%3e%3cpath%20id='path4'%20d='M9.6%203.89995L9.6%209.89738C9.6%2010.7274%208.92751%2011.3999%208.10002%2011.3999L2.10008%2011.3999C1.27009%2011.3999%200.600098%2010.7274%200.600098%209.89738L0.600098%203.89995C0.600098%203.06995%201.27009%202.39746%202.10008%202.39746L8.10002%202.39746C8.92751%202.39746%209.6%203.06995%209.6%203.89995Z'%20fill-rule='nonzero'%20stroke='rgb(25,25,25)'%20stroke-linejoin='round'%20stroke-width='0.749992251'%20/%3e%3c/svg%3e", L2 = "https://chat.opentiny.design", k2 = "https://ai.opentiny.design/next-remoter", S2 = "https://ai.opentiny.design/next-remoter/svgs/logo-next-no-bg-left.svg", Ge = (t) => {
|
|
904
|
+
const ut = "data:image/svg+xml,%3csvg%20viewBox='0%200%2040%2039.9692'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='40.000000'%20height='39.969238'%20fill='none'%20customFrame='url(%23clipPath_3)'%3e%3cdefs%3e%3cclipPath%20id='clipPath_3'%3e%3crect%20width='40.000000'%20height='39.969238'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_4'%3e%3crect%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='7.984619'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_5'%3e%3crect%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='9.984619'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_6'%3e%3crect%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='9.984619'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_7'%3e%3crect%20width='21.666666'%20height='13.333333'%20x='20.000000'%20y='9.984619'%20rx='6.666667'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_8'%3e%3crect%20width='6.666667'%20height='6.666667'%20x='23.333496'%20y='9.984619'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3c/defs%3e%3crect%20id='2'%20width='40.000000'%20height='39.969238'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(239,246,255)'%20/%3e%3cg%20id='物业'%20clip-path='url(%23clipPath_4)'%20customFrame='url(%23clipPath_4)'%3e%3crect%20id='物业'%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='7.984619'%20/%3e%3cg%20id='物业服务'%3e%3cg%20id='00公共/红点/图标+红点'%20customFrame='url(%23clipPath_5)'%3e%3crect%20id='00公共/红点/图标+红点'%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='9.984619'%20/%3e%3cg%20id='common_chats_line'%20customFrame='url(%23clipPath_6)'%3e%3crect%20id='common_chats_line'%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='9.984619'%20/%3e%3cpath%20id='形状'%20d='M28.3332%2019.9847C28.3332%2015.3823%2024.6022%2011.6514%2019.9998%2011.6514C15.3975%2011.6514%2011.6665%2015.3823%2011.6665%2019.9847C11.6665%2024.5871%2015.3975%2028.318%2019.9998%2028.318C21.0018%2028.318%2021.9624%2028.1412%2022.8522%2027.8171L26.581%2028.1578C26.7205%2028.1706%2026.8611%2028.1598%2026.9971%2028.1259C27.6669%2027.959%2028.0746%2027.2806%2027.9077%2026.6108L27.2716%2024.0578C27.9477%2022.8535%2028.3332%2021.4641%2028.3332%2019.9847ZM19.9998%2013.1514C16.2259%2013.1514%2013.1665%2016.2108%2013.1665%2019.9847C13.1665%2023.7586%2016.2259%2026.818%2019.9998%2026.818C20.8089%2026.818%2021.5967%2026.678%2022.3388%2026.4077C22.505%2026.3471%2022.6803%2026.3166%2022.8565%2026.3171L22.9887%2026.3233L26.3665%2026.6322L25.8161%2024.4205C25.7352%2024.0958%2025.7655%2023.7548%2025.8997%2023.4512L25.9636%2023.3236C26.5311%2022.3126%2026.8332%2021.1723%2026.8332%2019.9847C26.8332%2016.2108%2023.7738%2013.1514%2019.9998%2013.1514ZM23.1152%2021.2468C23.352%2020.9069%2023.2684%2020.4394%2022.9286%2020.2026C22.5887%2019.9659%2022.1212%2020.0494%2021.8845%2020.3893C21.2894%2021.2433%2020.4268%2021.7347%2019.5102%2021.7347C18.9513%2021.7347%2018.4132%2021.554%2017.9375%2021.2122C17.6011%2020.9705%2017.1325%2021.0472%2016.8908%2021.3836C16.6491%2021.7199%2016.7258%2022.1886%2017.0622%2022.4303C17.7879%2022.9518%2018.6305%2023.2347%2019.5102%2023.2347C20.9394%2023.2347%2022.2505%2022.4878%2023.1152%2021.2468Z'%20fill='rgb(65,142,255)'%20fill-rule='evenodd'%20/%3e%3c/g%3e%3cg%20id='00公共/3位数红点'%20opacity='0'%20customFrame='url(%23clipPath_7)'%3e%3crect%20id='00公共/3位数红点'%20width='21.666666'%20height='13.333333'%20x='20.000000'%20y='9.984619'%20rx='6.666667'%20opacity='0'%20fill='rgb(243,111,100)'%20/%3e%3cpath%20id='文本'%20d='M26.0421%2013.4421C26.4259%2013.4421%2026.7677%2013.5255%2027.0675%2013.6923C27.3672%2013.8591%2027.6005%2014.0931%2027.7673%2014.3942C27.9342%2014.694%2028.0176%2015.0351%2028.0176%2015.4176C28.0176%2015.7173%2027.9633%2015.994%2027.8548%2016.2476C27.7463%2016.4999%2027.5673%2016.8315%2027.3177%2017.2425L25.859%2019.6432L25.0167%2019.6432L26.276%2017.5924C26.3534%2017.4704%2026.4307%2017.3564%2026.508%2017.2507C26.3357%2017.3063%2026.1445%2017.3341%2025.9342%2017.3341C25.5721%2017.3341%2025.2493%2017.2479%2024.9658%2017.0757C24.6837%2016.9034%2024.4633%2016.6701%2024.3046%2016.3758C24.1459%2016.0815%2024.0666%2015.7566%2024.0666%2015.4013C24.0666%2015.0351%2024.1513%2014.7021%2024.3209%2014.4023C24.4904%2014.1012%2024.7264%2013.8659%2025.0289%2013.6964C25.3314%2013.5268%2025.6691%2013.4421%2026.0421%2013.4421ZM26.0421%2016.6505C26.4029%2016.6505%2026.6904%2016.5325%2026.9047%2016.2965C27.119%2016.0605%2027.2262%2015.7539%2027.2262%2015.3769C27.2262%2014.9985%2027.119%2014.694%2026.9047%2014.4634C26.6904%2014.2328%2026.4029%2014.1175%2026.0421%2014.1175C25.6867%2014.1175%2025.4019%2014.2342%2025.1876%2014.4674C24.9733%2014.7007%2024.8661%2015.0039%2024.8661%2015.3769C24.8661%2015.7539%2024.9719%2016.0605%2025.1835%2016.2965C25.3951%2016.5325%2025.6813%2016.6505%2026.0421%2016.6505ZM30.7921%2013.4421C31.1759%2013.4421%2031.5177%2013.5255%2031.8175%2013.6923C32.1172%2013.8591%2032.3505%2014.0931%2032.5173%2014.3942C32.6842%2014.694%2032.7676%2015.0351%2032.7676%2015.4176C32.7676%2015.7173%2032.7133%2015.994%2032.6048%2016.2476C32.4963%2016.4999%2032.3173%2016.8315%2032.0677%2017.2425L30.609%2019.6432L29.7667%2019.6432L31.026%2017.5924C31.1034%2017.4704%2031.1807%2017.3564%2031.258%2017.2507C31.0857%2017.3063%2030.8945%2017.3341%2030.6842%2017.3341C30.3221%2017.3341%2029.9993%2017.2479%2029.7158%2017.0757C29.4337%2016.9034%2029.2133%2016.6701%2029.0546%2016.3758C28.8959%2016.0815%2028.8166%2015.7566%2028.8166%2015.4013C28.8166%2015.0351%2028.9013%2014.7021%2029.0709%2014.4023C29.2404%2014.1012%2029.4764%2013.8659%2029.7789%2013.6964C30.0814%2013.5268%2030.4191%2013.4421%2030.7921%2013.4421ZM30.7921%2016.6505C31.1529%2016.6505%2031.4404%2016.5325%2031.6547%2016.2965C31.869%2016.0605%2031.9762%2015.7539%2031.9762%2015.3769C31.9762%2014.9985%2031.869%2014.694%2031.6547%2014.4634C31.4404%2014.2328%2031.1529%2014.1175%2030.7921%2014.1175C30.4367%2014.1175%2030.1519%2014.2342%2029.9376%2014.4674C29.7233%2014.7007%2029.6161%2015.0039%2029.6161%2015.3769C29.6161%2015.7539%2029.7219%2016.0605%2029.9335%2016.2965C30.1451%2016.5325%2030.4313%2016.6505%2030.7921%2016.6505ZM35.2674%2014.6851L35.9001%2014.6851L35.9001%2016.3188L37.5339%2016.3188L37.5339%2016.9516L35.9001%2016.9516L35.9001%2018.5853L35.2674%2018.5853L35.2674%2016.9516L33.6337%2016.9516L33.6337%2016.3188L35.2674%2016.3188L35.2674%2014.6851Z'%20fill='rgb(255,255,255)'%20fill-rule='nonzero'%20/%3e%3c/g%3e%3cg%20id='00公共/单红点'%20opacity='0'%20customFrame='url(%23clipPath_8)'%3e%3crect%20id='00公共/单红点'%20width='6.666667'%20height='6.666667'%20x='23.333496'%20y='9.984619'%20opacity='0'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3ccircle%20id='红点'%20cx='26.6668301'%20cy='13.3179522'%20r='3.33333325'%20fill='rgb(243,111,100)'%20/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e", pt = "data:image/svg+xml,%3csvg%20viewBox='0%200%2040%2040'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='40.000000'%20height='40.000000'%20fill='none'%20customFrame='url(%23clipPath_12)'%3e%3cdefs%3e%3cclipPath%20id='clipPath_12'%3e%3crect%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_13'%3e%3crect%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_14'%3e%3crect%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3c/defs%3e%3crect%20id='4'%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(234,255,244)'%20/%3e%3cg%20id='我的信息'%20clip-path='url(%23clipPath_13)'%20customFrame='url(%23clipPath_13)'%3e%3crect%20id='我的信息'%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20/%3e%3cg%20id='组合%208'%20customFrame='url(%23clipPath_14)'%3e%3crect%20id='组合%208'%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20/%3e%3cpath%20id='合并'%20d='M28.4994%2012.3142C28.4994%2012.2578%2028.4937%2012.2018%2028.4825%2012.1465C28.4713%2012.0911%2028.4547%2012.0373%2028.4327%2011.9851C28.4107%2011.933%2028.3836%2011.8835%2028.3516%2011.8365C28.3197%2011.7896%2028.2834%2011.7461%2028.2427%2011.7062C28.202%2011.6663%2028.1579%2011.6307%2028.1101%2011.5993C28.0622%2011.568%2028.0117%2011.5415%2027.9585%2011.5199C27.9054%2011.4983%2027.8506%2011.4819%2027.7942%2011.4709C27.7378%2011.4599%2027.6806%2011.4544%2027.6231%2011.4544L24.1832%2011.5199L24.1832%2010L29.0796%2010C29.1472%2010%2029.2143%2010.0065%2029.2806%2010.0194C29.347%2010.0324%2029.4114%2010.0516%2029.4739%2010.077C29.5364%2010.1024%2029.5961%2010.1336%2029.6523%2010.1705C29.7086%2010.2074%2029.7605%2010.2493%2029.8084%2010.2963C29.8562%2010.3433%2029.8991%2010.3944%2029.9367%2010.4496C29.9743%2010.5048%2030.006%2010.5631%2030.0319%2010.6244C30.0578%2010.6858%2030.0773%2010.7491%2030.0905%2010.8142C30.1037%2010.8794%2030.1104%2010.9451%2030.1104%2011.0115L30.1832%2014.4522L28.4992%2014.5L28.4994%2012.3142ZM11.6995%2012.3143C11.6995%2012.2579%2011.7051%2012.2019%2011.7163%2012.1466C11.7275%2012.0912%2011.7441%2012.0374%2011.7661%2011.9852C11.7882%2011.9331%2011.8152%2011.8836%2011.8472%2011.8366C11.8791%2011.7897%2011.9155%2011.7462%2011.9562%2011.7063C11.9968%2011.6664%2012.0409%2011.6308%2012.0888%2011.5994C12.1366%2011.5681%2012.1871%2011.5416%2012.2403%2011.52C12.2934%2011.4984%2012.3482%2011.482%2012.4046%2011.471C12.4611%2011.46%2012.5182%2011.4545%2012.5758%2011.4545L16.0157%2011.52L16.0157%2010.0001L11.1193%2010.0001C11.0516%2010.0001%2010.9846%2010.0066%2010.9182%2010.0196C10.8518%2010.0325%2010.7874%2010.0517%2010.7249%2010.0771C10.6624%2010.1025%2010.6028%2010.1337%2010.5465%2010.1706C10.4902%2010.2075%2010.4383%2010.2494%2010.3904%2010.2964C10.3426%2010.3434%2010.2997%2010.3945%2010.2621%2010.4497C10.2245%2010.5049%2010.1929%2010.5632%2010.167%2010.6245C10.1411%2010.6859%2010.1215%2010.7492%2010.1083%2010.8143C10.0951%2010.8795%2010.0885%2010.9452%2010.0884%2011.0116L10.0157%2014.4523L11.6997%2014.5L11.6995%2012.3143ZM25.3135%2021.8051L25.3135%2022.8167C25.7656%2022.8929%2026.2209%2022.9249%2026.6792%2022.9127C28.3381%2022.9127%2029.1675%2022.326%2029.1675%2021.1527C29.1733%2020.9869%2029.151%2020.825%2029.1006%2020.667C29.0503%2020.509%2028.9747%2020.3641%2028.8742%2020.2322C28.767%2020.1025%2028.6403%2019.9963%2028.4938%2019.9134C28.3474%2019.8306%2028.191%2019.7767%2028.0246%2019.7517L28.0246%2019.7011C28.0971%2019.6839%2028.1676%2019.6606%2028.236%2019.6311C28.3044%2019.6016%2028.3698%2019.5665%2028.4321%2019.5257C28.4944%2019.4848%2028.5526%2019.4389%2028.6069%2019.3879C28.6613%2019.3369%2028.7109%2019.2816%2028.7556%2019.222C28.8003%2019.1624%2028.8394%2019.0994%2028.8732%2019.033C28.9069%2018.9665%2028.9346%2018.8977%2028.9564%2018.8265C28.9782%2018.7552%2028.9937%2018.6826%2029.0028%2018.6086C29.0119%2018.5347%2029.0145%2018.4605%2029.0107%2018.3861C29.0217%2018.2675%2029.0176%2018.1495%2028.9984%2018.0319C28.9791%2017.9144%2028.9454%2017.8012%2028.8971%2017.6923C28.8489%2017.5834%2028.7875%2017.4823%2028.7134%2017.3891C28.6393%2017.2959%2028.5547%2017.2135%2028.4595%2017.1419C28.219%2017.0003%2027.963%2016.8972%2027.6915%2016.8326C27.4199%2016.7679%2027.1449%2016.7446%2026.8664%2016.7626C26.6258%2016.7621%2026.3864%2016.7791%2026.1482%2016.8132C25.9479%2016.8386%2025.7504%2016.8791%2025.5563%2016.9346L25.5563%2017.8854C25.743%2017.8264%2025.9337%2017.7842%2026.128%2017.759C26.3276%2017.73%2026.5282%2017.7148%2026.7298%2017.7134C27.0252%2017.6949%2027.3049%2017.7523%2027.5692%2017.8854C27.6168%2017.9161%2027.6595%2017.9525%2027.6972%2017.9947C27.7348%2018.037%2027.766%2018.0835%2027.791%2018.1343C27.816%2018.1851%2027.8337%2018.2383%2027.8441%2018.294C27.8545%2018.3496%2027.8573%2018.4056%2027.8525%2018.462C27.8566%2018.5278%2027.8514%2018.5927%2027.8367%2018.657C27.822%2018.7212%2027.7986%2018.7821%2027.7663%2018.8395C27.734%2018.897%2027.694%2018.9487%2027.6468%2018.9946C27.5995%2019.0405%2027.5468%2019.0787%2027.4885%2019.1093C27.1544%2019.2631%2026.8037%2019.3306%2026.4364%2019.3117L25.9862%2019.3117L25.9862%2020.1917L26.4466%2020.1917C26.8409%2020.1669%2027.2202%2020.2309%2027.5845%2020.3839C27.6459%2020.4167%2027.7011%2020.4576%2027.7505%2020.5066C27.7999%2020.5556%2027.8412%2020.6107%2027.8745%2020.6718C27.9077%2020.733%2027.9315%2020.7976%2027.9458%2020.8656C27.9602%2020.9337%2027.9644%2021.0024%2027.9587%2021.0717C27.9648%2021.1402%2027.9612%2021.2083%2027.9478%2021.2757C27.9344%2021.3432%2027.912%2021.4074%2027.8801%2021.4683C27.8483%2021.5293%2027.8086%2021.5846%2027.7609%2021.6341C27.7132%2021.6837%2027.6593%2021.7254%2027.5996%2021.7596C27.2884%2021.9045%2026.9613%2021.9685%2026.6184%2021.9518C26.1786%2021.9465%2025.7436%2021.8977%2025.3135%2021.8051ZM21.3382%2018.6238C21.3445%2018.5593%2021.343%2018.495%2021.3335%2018.4308C21.3241%2018.3667%2021.3069%2018.3046%2021.2822%2018.2447C21.2575%2018.1847%2021.226%2018.1287%2021.1876%2018.0765C21.1492%2018.0242%2021.1049%2017.9774%2021.055%2017.936C20.9359%2017.8608%2020.808%2017.806%2020.6714%2017.7714C20.5349%2017.7368%2020.3964%2017.7242%2020.2558%2017.7337C19.8009%2017.7395%2019.356%2017.8087%2018.9208%2017.9411L18.9208%2016.9598C19.4252%2016.8181%2019.9393%2016.7524%2020.4633%2016.7626C20.7322%2016.7484%2020.9964%2016.7773%2021.256%2016.8491C21.5156%2016.9209%2021.7571%2017.032%2021.9806%2017.1824C22.0729%2017.2601%2022.1548%2017.3474%2022.2263%2017.4446C22.2978%2017.5418%2022.3567%2017.646%2022.4034%2017.7573C22.45%2017.8686%2022.483%2017.9838%2022.5021%2018.1029C22.5213%2018.222%2022.5261%2018.3417%2022.5167%2018.462C22.5245%2018.7882%2022.4655%2019.1017%2022.3396%2019.4027C22.1879%2019.7384%2021.984%2020.0384%2021.7277%2020.3029C21.3021%2020.7337%2020.8502%2021.135%2020.3721%2021.5067L19.9928%2021.8051L19.9928%2021.8759L22.6938%2021.8759L22.6938%2022.8419L18.5464%2022.8419L18.5464%2021.7697C19.2882%2021.1796%2019.8579%2020.6975%2020.2558%2020.3232C20.574%2020.0432%2020.8523%2019.728%2021.0905%2019.3774C21.1675%2019.2665%2021.2269%2019.1469%2021.2691%2019.0187C21.3113%2018.8904%2021.3344%2018.7588%2021.3382%2018.6238ZM12.3102%2017.2127L12.3102%2018.1939L13.7769%2017.9107L13.7769%2022.8419L14.9605%2022.8419L14.9605%2016.8486L14.0957%2016.8486L12.3102%2017.2127ZM28.5524%2028.0475C28.5524%2028.104%2028.5467%2028.1599%2028.5353%2028.2152C28.5239%2028.2706%2028.5071%2028.3244%2028.4849%2028.3766C28.4626%2028.4287%2028.4352%2028.4782%2028.4028%2028.5252C28.3705%2028.5721%2028.3337%2028.6156%2028.2925%2028.6555C28.2513%2028.6954%2028.2067%2028.731%2028.1583%2028.7624C28.1098%2028.7937%2028.0587%2028.8202%2028.0049%2028.8418C27.9511%2028.8634%2027.8957%2028.8798%2027.8385%2028.8908C27.7814%2028.9018%2027.7235%2028.9073%2027.6653%2028.9073L24.1832%2028.8418L24.1832%2030.3617L29.1397%2030.3617C29.2082%2030.3617%2029.276%2030.3552%2029.3432%2030.3423C29.4104%2030.3293%2029.4756%2030.3101%2029.5389%2030.2847C29.6022%2030.2593%2029.6625%2030.2281%2029.7195%2030.1912C29.7765%2030.1543%2029.829%2030.1124%2029.8774%2030.0654C29.9259%2030.0184%2029.9693%2029.9673%2030.0074%2029.9121C30.0454%2029.8569%2030.0774%2029.7986%2030.1037%2029.7373C30.1299%2029.6759%2030.1497%2029.6126%2030.163%2029.5475C30.1764%2029.4823%2030.1831%2029.4166%2030.1832%2029.3502L30.1832%2026.0478L28.4785%2026L28.5524%2028.0475ZM11.6308%2028.0099C11.6308%2028.0664%2011.6365%2028.1223%2011.6479%2028.1777C11.6592%2028.233%2011.676%2028.2868%2011.6983%2028.339C11.7206%2028.3911%2011.748%2028.4406%2011.7803%2028.4876C11.8127%2028.5345%2011.8495%2028.578%2011.8906%2028.6179C11.9318%2028.6578%2011.9765%2028.6934%2012.0249%2028.7248C12.0733%2028.7562%2012.1244%2028.7826%2012.1783%2028.8042C12.2321%2028.8259%2012.2875%2028.8422%2012.3446%2028.8532C12.4017%2028.8642%2012.4596%2028.8697%2012.5178%2028.8698L16%2028.8042L16%2030.3241L11.0435%2030.3241C10.975%2030.3241%2010.9071%2030.3176%2010.8399%2030.3047C10.7727%2030.2917%2010.7076%2030.2725%2010.6443%2030.2471C10.581%2030.2217%2010.5206%2030.1906%2010.4637%2030.1537C10.4067%2030.1168%2010.3542%2030.0748%2010.3057%2030.0278C10.2573%2029.9809%2010.2138%2029.9298%2010.1758%2029.8745C10.1377%2029.8193%2010.1057%2029.7611%2010.0795%2029.6997C10.0533%2029.6383%2010.0335%2029.575%2010.0201%2029.5099C10.0068%2029.4448%2010%2029.379%2010%2029.3126L10%2026.0478L11.7047%2026L11.6308%2028.0099Z'%20fill='rgb(14,191,241)'%20fill-rule='evenodd'%20/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", ht = "data:image/svg+xml,%3csvg%20viewBox='0%200%2040%2040'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='40.000000'%20height='40.000000'%20fill='none'%20customFrame='url(%23clipPath_9)'%3e%3cdefs%3e%3cclipPath%20id='clipPath_9'%3e%3crect%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_10'%3e%3crect%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_11'%3e%3crect%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3c/defs%3e%3crect%20id='3'%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(236,250,254)'%20/%3e%3cg%20id='画板%202310'%20customFrame='url(%23clipPath_10)'%3e%3crect%20id='画板%202310'%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3cg%20id='人事服务'%3e%3cg%20id='ic_public_link'%20clip-path='url(%23clipPath_11)'%20customFrame='url(%23clipPath_11)'%3e%3crect%20id='ic_public_link'%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20/%3e%3cpath%20id='path1'%20d='M9.9999%2019.9917C9.9999%2018.4292%209.99573%2016.8667%209.9999%2015.3042C9.99573%2014.5459%2010.0916%2013.7917%2010.2749%2013.0626C10.6874%2011.5126%2011.6957%2010.5917%2013.2457%2010.2334C14.0207%2010.0667%2014.8166%209.98756%2015.6082%2010.0001C18.6041%2010.0001%2021.5999%2010.0001%2024.5999%2010.0001C25.3541%209.99589%2026.1082%2010.0792%2026.8457%2010.2584C28.4416%2010.6459%2029.3999%2011.6584%2029.7624%2013.2501C29.9291%2014.0001%2030.0041%2014.7667%2029.9957%2015.5376C29.9957%2018.5667%2029.9957%2021.5959%2029.9957%2024.6209C29.9999%2025.3709%2029.9166%2026.1209%2029.7416%2026.8459C29.3499%2028.4459%2028.3332%2029.3959%2026.7457%2029.7626C25.9666%2029.9292%2025.1749%2030.0084%2024.3791%2029.9959C21.3957%2029.9959%2018.4124%2029.9959%2015.4291%2029.9959C14.6666%2030.0042%2013.9082%2029.9167%2013.1666%2029.7417C11.5624%2029.3542%2010.5999%2028.3376%2010.2374%2026.7376C10.0499%2025.9251%209.9999%2025.1126%209.9999%2024.2917C9.9999%2022.8584%209.9999%2021.4251%209.9999%2019.9917Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='evenodd'%20/%3e%3ccircle%20id='path2'%20cx='20'%20cy='20'%20r='10'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3cpath%20id='path3'%20d='M25.0333%2021.8666L26.9%2020C28.8083%2018.0916%2028.8083%2015%2026.9%2013.0958C24.9958%2011.1875%2021.9041%2011.1875%2020%2013.0958L18.1291%2014.9625M21.8666%2025.0333L20%2026.9C18.0916%2028.8083%2015%2028.8083%2013.0958%2026.9C11.1875%2024.9958%2011.1875%2021.9041%2013.0958%2020L14.9625%2018.1291'%20fill-rule='nonzero'%20stroke='rgb(14,191,241)'%20stroke-linecap='round'%20stroke-width='1.25'%20/%3e%3cpath%20id='pah4'%20d='M18.125%2021.875L21.875%2018.125'%20stroke='rgb(14,191,241)'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.25'%20/%3e%3cpath%20id='path5'%20d='M25.8207%2019.2626L24.0457%2021.0376C23.7998%2021.2834%2023.6748%2021.5292%2023.6748%2021.7751C23.6748%2022.0209%2023.7998%2022.2667%2024.0457%2022.5126C24.1498%2022.6167%2024.2665%2022.6959%2024.3915%2022.7459C24.5123%2022.7917%2024.6415%2022.8167%2024.779%2022.8167C24.9207%2022.8167%2025.0498%2022.7917%2025.1665%2022.7459C25.2957%2022.6959%2025.4123%2022.6167%2025.5165%2022.5126L27.2915%2020.7334C27.8165%2020.2126%2028.2165%2019.6334%2028.4957%2019.0001C28.5082%2018.9667%2028.5248%2018.9334%2028.5373%2018.8959C28.554%2018.8626%2028.5665%2018.8292%2028.579%2018.7917C28.8332%2018.1501%2028.9582%2017.4584%2028.9582%2016.7209C28.9582%2015.9792%2028.8332%2015.2876%2028.579%2014.6459C28.5665%2014.6084%2028.554%2014.5751%2028.5373%2014.5417C28.5248%2014.5042%2028.5082%2014.4709%2028.4957%2014.4376C28.2165%2013.8042%2027.8165%2013.2292%2027.2915%2012.7042C26.7707%2012.1792%2026.1915%2011.7792%2025.5582%2011.5001C25.5248%2011.4876%2025.4915%2011.4709%2025.454%2011.4584C25.4207%2011.4417%2025.3873%2011.4292%2025.354%2011.4167C24.7082%2011.1667%2024.0165%2011.0417%2023.279%2011.0417C22.5373%2011.0417%2021.8457%2011.1667%2021.204%2011.4167C21.1665%2011.4292%2021.1332%2011.4417%2021.0998%2011.4584C21.0623%2011.4709%2021.029%2011.4876%2020.9957%2011.5001C20.3623%2011.7792%2019.7832%2012.1792%2019.2623%2012.7042L17.4832%2014.4792C17.379%2014.5834%2017.2998%2014.7001%2017.2498%2014.8292C17.204%2014.9501%2017.179%2015.0751%2017.179%2015.2167C17.179%2015.3542%2017.204%2015.4834%2017.2498%2015.6042C17.2998%2015.7292%2017.379%2015.8459%2017.4832%2015.9542C17.5915%2016.0584%2017.7082%2016.1376%2017.8332%2016.1876C17.954%2016.2334%2018.0832%2016.2584%2018.2207%2016.2584C18.3623%2016.2584%2018.4915%2016.2334%2018.6082%2016.1876C18.7373%2016.1376%2018.854%2016.0584%2018.9582%2015.9542L20.7332%2014.1751C21.0873%2013.8209%2021.4748%2013.5584%2021.8957%2013.3834C22.3165%2013.2084%2022.779%2013.1251%2023.279%2013.1251C23.7748%2013.1251%2024.2373%2013.2084%2024.6582%2013.3834C25.079%2013.5584%2025.4665%2013.8209%2025.8207%2014.1751C26.1748%2014.5292%2026.4373%2014.9167%2026.6123%2015.3376C26.7873%2015.7584%2026.8748%2016.2167%2026.8748%2016.7209C26.8748%2017.2209%2026.7873%2017.6792%2026.6123%2018.1001C26.4373%2018.5209%2026.1748%2018.9084%2025.8207%2019.2626ZM13.3832%2021.8959C13.5582%2021.4751%2013.8207%2021.0876%2014.1748%2020.7334L15.954%2018.9584C16.0582%2018.8542%2016.1373%2018.7376%2016.1873%2018.6084C16.2332%2018.4876%2016.2582%2018.3626%2016.2582%2018.2209C16.2582%2018.0834%2016.2332%2017.9542%2016.1873%2017.8334C16.1373%2017.7084%2016.0582%2017.5917%2015.954%2017.4834C15.7082%2017.2417%2015.4623%2017.1167%2015.2165%2017.1167C14.9707%2017.1167%2014.7248%2017.2417%2014.479%2017.4834L12.704%2019.2626C12.179%2019.7876%2011.779%2020.3626%2011.4998%2020.9959C11.4873%2021.0292%2011.4707%2021.0626%2011.4582%2021.1001C11.4415%2021.1334%2011.429%2021.1667%2011.4165%2021.2042C11.1665%2021.8459%2011.0415%2022.5376%2011.0415%2023.2792C11.0415%2024.0167%2011.1665%2024.7084%2011.4165%2025.3542C11.429%2025.3876%2011.4415%2025.4209%2011.4582%2025.4584C11.4707%2025.4917%2011.4873%2025.5251%2011.4998%2025.5584C11.779%2026.1917%2012.179%2026.7709%2012.704%2027.2917C13.2248%2027.8167%2013.804%2028.2167%2014.4373%2028.4959C14.4707%2028.5084%2014.504%2028.5251%2014.5415%2028.5376C14.5748%2028.5542%2014.6082%2028.5667%2014.6457%2028.5792C15.2873%2028.8292%2015.979%2028.9584%2016.7207%2028.9584C17.4582%2028.9584%2018.1498%2028.8292%2018.7915%2028.5792C18.829%2028.5667%2018.8623%2028.5542%2018.8957%2028.5376C18.9332%2028.5251%2018.9665%2028.5084%2018.9998%2028.4959C19.6332%2028.2167%2020.2123%2027.8167%2020.7332%2027.2917L22.5123%2025.5167C22.6165%2025.4126%2022.6957%2025.2959%2022.7457%2025.1667C22.7915%2025.0459%2022.8165%2024.9209%2022.8165%2024.7792C22.8165%2024.6417%2022.7915%2024.5126%2022.7457%2024.3917C22.6957%2024.2667%2022.6165%2024.1501%2022.5123%2024.0417C22.2665%2023.8001%2022.0207%2023.6751%2021.7748%2023.6751C21.529%2023.6751%2021.2832%2023.8001%2021.0373%2024.0417L19.2623%2025.8209C18.9082%2026.1751%2018.5207%2026.4376%2018.0998%2026.6126C17.679%2026.7876%2017.2165%2026.8751%2016.7207%2026.8751C16.2207%2026.8751%2015.7582%2026.7876%2015.3373%2026.6126C14.9165%2026.4376%2014.529%2026.1751%2014.1748%2025.8209C13.8207%2025.4667%2013.5582%2025.0792%2013.3832%2024.6584C13.2082%2024.2376%2013.1248%2023.7792%2013.1248%2023.2792C13.1248%2022.7751%2013.2082%2022.3167%2013.3832%2021.8959Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='evenodd'%20/%3e%3cpath%20id='path6'%20d='M21.8127%2016.7458C21.746%2016.7874%2021.6877%2016.8374%2021.6293%2016.8916L16.8918%2021.6291C16.8377%2021.6874%2016.7877%2021.7499%2016.746%2021.8124C16.7127%2021.8624%2016.6877%2021.9166%2016.6627%2021.9749C16.6377%2022.0374%2016.6168%2022.1041%2016.6043%2022.1708C16.5918%2022.2333%2016.5835%2022.2999%2016.5835%2022.3666C16.5835%2022.4333%2016.5918%2022.4999%2016.6043%2022.5666C16.6168%2022.6333%2016.6377%2022.6999%2016.6627%2022.7624C16.6877%2022.8166%2016.7127%2022.8708%2016.746%2022.9208C16.7877%2022.9874%2016.8377%2023.0499%2016.8918%2023.1041C16.946%2023.1583%2017.0085%2023.2083%2017.0752%2023.2499C17.1252%2023.2833%2017.1793%2023.3083%2017.2335%2023.3333C17.3002%2023.3583%2017.3627%2023.3791%2017.4293%2023.3916C17.496%2023.4041%2017.5627%2023.4124%2017.6293%2023.4124C17.696%2023.4124%2017.7627%2023.4041%2017.8252%2023.3916C17.8918%2023.3791%2017.9585%2023.3583%2018.021%2023.3333C18.0793%2023.3083%2018.1335%2023.2833%2018.1835%2023.2499C18.246%2023.2083%2018.3085%2023.1583%2018.3668%2023.1041L23.1043%2018.3666C23.1585%2018.3083%2023.2085%2018.2499%2023.2502%2018.1833C23.2835%2018.1333%2023.3085%2018.0791%2023.3335%2018.0208C23.3585%2017.9583%2023.3793%2017.8916%2023.3918%2017.8249C23.4043%2017.7624%2023.4127%2017.6958%2023.4127%2017.6291C23.4127%2017.5624%2023.4043%2017.4958%2023.3918%2017.4291C23.3793%2017.3624%2023.3585%2017.2999%2023.3335%2017.2333C23.3085%2017.1791%2023.2835%2017.1249%2023.2502%2017.0749C23.2085%2017.0083%2023.1585%2016.9458%2023.1043%2016.8916C23.046%2016.8374%2022.9877%2016.7874%2022.921%2016.7458C22.871%2016.7124%2022.8168%2016.6874%2022.7627%2016.6624C22.696%2016.6374%2022.6335%2016.6166%2022.5668%2016.6041C22.5002%2016.5916%2022.4335%2016.5833%2022.3668%2016.5833C22.3002%2016.5833%2022.2335%2016.5916%2022.171%2016.6041C22.1043%2016.6166%2022.0377%2016.6374%2021.9752%2016.6624C21.9168%2016.6874%2021.8627%2016.7124%2021.8127%2016.7458Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='evenodd'%20/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e", mt = "data:image/svg+xml,%3csvg%20viewBox='0%200%2040%2040'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='40.000000'%20height='40.000000'%20fill='none'%20customFrame='url(%23clipPath_0)'%3e%3cdefs%3e%3cclipPath%20id='clipPath_0'%3e%3crect%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_1'%3e%3crect%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3cclipPath%20id='clipPath_2'%3e%3crect%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20fill='rgb(255,255,255)'%20/%3e%3c/clipPath%3e%3c/defs%3e%3crect%20id='1'%20width='40.000000'%20height='40.000000'%20x='0.000000'%20y='0.000000'%20rx='12.000000'%20fill='rgb(236,250,254)'%20/%3e%3cg%20id='车辆'%20clip-path='url(%23clipPath_1)'%20customFrame='url(%23clipPath_1)'%3e%3crect%20id='车辆'%20width='24.000000'%20height='24.000000'%20x='8.000000'%20y='8.000000'%20/%3e%3cg%20id='编组'%3e%3cg%20id='ic_public_qrcode'%20clip-path='url(%23clipPath_2)'%20customFrame='url(%23clipPath_2)'%3e%3crect%20id='ic_public_qrcode'%20width='20.000000'%20height='20.000000'%20x='10.000000'%20y='10.000000'%20/%3e%3cg%20id='ic_public_qrcode_1_1'%3e%3cpath%20id='ic_public_qrcode_2_0'%20d='M10.6273%2019.9924C10.6273%2018.5277%2010.6222%2017.0631%2010.6273%2015.5985C10.6243%2014.8898%2010.7114%2014.1836%2010.8865%2013.4968C11.2702%2012.0432%2012.2171%2011.1805%2013.6693%2010.8458C14.3974%2010.6885%2015.1411%2010.6148%2015.886%2010.6261C18.6946%2010.6261%2021.5035%2010.6261%2024.3127%2010.6261C25.0221%2010.6217%2025.7295%2010.7029%2026.4195%2010.8678C27.9156%2011.2339%2028.8134%2012.1816%2029.1554%2013.6725C29.3092%2014.3772%2029.3826%2015.097%2029.3744%2015.8182C29.3744%2018.6571%2029.3744%2021.4963%2029.3744%2024.3357C29.3782%2025.0383%2029.2973%2025.7388%2029.1334%2026.422C28.7673%2027.9189%2027.8153%2028.8123%2026.3243%2029.1543C25.5961%2029.311%2024.8524%2029.3847%2024.1076%2029.374C21.3107%2029.374%2018.514%2029.374%2015.7176%2029.374C15.0027%2029.3798%2014.2897%2029.2999%2013.5939%2029.136C12.0912%2028.7698%2011.189%2027.8178%2010.8477%2026.3195C10.6734%2025.5579%2010.6273%2024.7941%2010.6273%2024.0237C10.6273%2022.6802%2010.6273%2021.3364%2010.6273%2019.9924Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='nonzero'%20/%3e%3cpath%20id='ic_public_qrcode_2_0'%20d='M10.6273%2015.5985C10.6243%2014.8898%2010.7114%2014.1836%2010.8865%2013.4968C11.2702%2012.0432%2012.2171%2011.1805%2013.6693%2010.8458C14.3974%2010.6885%2015.1411%2010.6148%2015.886%2010.6261C18.6946%2010.6261%2021.5035%2010.6261%2024.3127%2010.6261C25.0221%2010.6217%2025.7295%2010.7029%2026.4195%2010.8678C27.9156%2011.2339%2028.8134%2012.1816%2029.1554%2013.6725C29.3092%2014.3772%2029.3826%2015.097%2029.3744%2015.8182C29.3744%2018.6571%2029.3744%2021.4963%2029.3744%2024.3357C29.3782%2025.0383%2029.2973%2025.7388%2029.1334%2026.422C28.7673%2027.9189%2027.8153%2028.8123%2026.3243%2029.1543C25.5961%2029.311%2024.8524%2029.3847%2024.1076%2029.374C21.3107%2029.374%2018.514%2029.374%2015.7176%2029.374C15.0027%2029.3798%2014.2897%2029.2999%2013.5939%2029.136C12.0912%2028.7698%2011.189%2027.8178%2010.8477%2026.3195C10.6734%2025.5579%2010.6273%2024.7941%2010.6273%2024.0237C10.6273%2022.6802%2010.6273%2021.3364%2010.6273%2019.9924C10.6273%2018.5277%2010.6222%2017.0631%2010.6273%2015.5985Z'%20fill-rule='nonzero'%20stroke='rgb(255,255,255)'%20stroke-opacity='0'%20stroke-width='1.25'%20/%3e%3cpath%20id='ic_public_qrcode_2_1'%20d='M10.6273%2015.5985C10.6243%2014.8898%2010.7114%2014.1836%2010.8865%2013.4968C11.2702%2012.0432%2012.2171%2011.1805%2013.6693%2010.8458C14.3974%2010.6885%2015.1411%2010.6148%2015.886%2010.6261C18.6946%2010.6261%2021.5035%2010.6261%2024.3127%2010.6261C25.0221%2010.6217%2025.7295%2010.7029%2026.4195%2010.8678C27.9156%2011.2339%2028.8134%2012.1816%2029.1554%2013.6725C29.3092%2014.3772%2029.3826%2015.097%2029.3744%2015.8182C29.3744%2018.6571%2029.3744%2021.4963%2029.3744%2024.3357C29.3782%2025.0383%2029.2973%2025.7388%2029.1334%2026.422C28.7673%2027.9189%2027.8153%2028.8123%2026.3243%2029.1543C25.5961%2029.311%2024.8524%2029.3847%2024.1076%2029.374C21.3107%2029.374%2018.514%2029.374%2015.7176%2029.374C15.0027%2029.3798%2014.2897%2029.2999%2013.5939%2029.136C12.0912%2028.7698%2011.189%2027.8178%2010.8477%2026.3195C10.6734%2025.5579%2010.6273%2024.7941%2010.6273%2024.0237C10.6273%2022.6802%2010.6273%2021.3364%2010.6273%2019.9924C10.6273%2018.5277%2010.6222%2017.0631%2010.6273%2015.5985Z'%20opacity='0.200000003'%20fill-rule='nonzero'%20stroke='rgb(255,255,255)'%20stroke-opacity='0'%20stroke-width='1.25'%20/%3e%3ccircle%20id='ic_public_qrcode_2_2'%20cx='20'%20cy='20'%20r='10'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3cpath%20id='ic_public_qrcode_2_3'%20d='M17.5%2011.25C17.9602%2011.25%2018.3333%2011.6231%2018.3333%2012.0833L18.3333%2017.5C18.3333%2017.9602%2017.9602%2018.3333%2017.5%2018.3333L12.0833%2018.3333C11.6231%2018.3333%2011.25%2017.9602%2011.25%2017.5L11.25%2012.0833C11.25%2011.6231%2011.6231%2011.25%2012.0833%2011.25L17.5%2011.25ZM17.5%2021.6667C17.9602%2021.6667%2018.3333%2022.0398%2018.3333%2022.5L18.3333%2027.9167C18.3333%2028.3769%2017.9602%2028.75%2017.5%2028.75L12.0833%2028.75C11.6231%2028.75%2011.25%2028.3769%2011.25%2027.9167L11.25%2022.5C11.25%2022.0398%2011.6231%2021.6667%2012.0833%2021.6667L17.5%2021.6667ZM27.9167%2011.25C28.3769%2011.25%2028.75%2011.6231%2028.75%2012.0833L28.75%2017.5C28.75%2017.9602%2028.3769%2018.3333%2027.9167%2018.3333L22.5%2018.3333C22.0398%2018.3333%2021.6667%2017.9602%2021.6667%2017.5L21.6667%2012.0833C21.6667%2011.6231%2022.0398%2011.25%2022.5%2011.25L27.9167%2011.25Z'%20fill-rule='evenodd'%20stroke='rgb(14,191,241)'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='1.25'%20/%3e%3cpath%20id='ic_public_qrcode_2_4'%20d='M17.5002%2010.8333C18.1905%2010.8333%2018.7502%2011.3929%2018.7502%2012.0833L18.7502%2017.4999C18.7502%2018.1903%2018.1905%2018.7499%2017.5002%2018.7499L12.0835%2018.7499C11.3931%2018.7499%2010.8335%2018.1903%2010.8335%2017.4999L10.8335%2012.0833C10.8335%2011.3929%2011.3931%2010.8333%2012.0835%2010.8333L17.5002%2010.8333ZM17.5002%2011.6666L12.0835%2011.6666C11.8534%2011.6666%2011.6668%2011.8531%2011.6668%2012.0833L11.6668%2017.4999C11.6668%2017.73%2011.8534%2017.9166%2012.0835%2017.9166L17.5002%2017.9166C17.7303%2017.9166%2017.9168%2017.73%2017.9168%2017.4999L17.9168%2012.0833C17.9168%2011.8531%2017.7303%2011.6666%2017.5002%2011.6666ZM17.5002%2021.2499C18.1905%2021.2499%2018.7502%2021.8096%2018.7502%2022.4999L18.7502%2027.9166C18.7502%2028.6069%2018.1905%2029.1666%2017.5002%2029.1666L12.0835%2029.1666C11.3931%2029.1666%2010.8335%2028.6069%2010.8335%2027.9166L10.8335%2022.4999C10.8335%2021.8096%2011.3931%2021.2499%2012.0835%2021.2499L17.5002%2021.2499ZM17.5002%2022.0833L12.0835%2022.0833C11.8534%2022.0833%2011.6668%2022.2698%2011.6668%2022.4999L11.6668%2027.9166C11.6668%2028.1467%2011.8534%2028.3333%2012.0835%2028.3333L17.5002%2028.3333C17.7303%2028.3333%2017.9168%2028.1467%2017.9168%2027.9166L17.9168%2022.4999C17.9168%2022.2698%2017.7303%2022.0833%2017.5002%2022.0833ZM27.9168%2010.8333C28.6072%2010.8333%2029.1668%2011.3929%2029.1668%2012.0833L29.1668%2017.4999C29.1668%2018.1903%2028.6072%2018.7499%2027.9168%2018.7499L22.5002%2018.7499C21.8098%2018.7499%2021.2502%2018.1903%2021.2502%2017.4999L21.2502%2012.0833C21.2502%2011.3929%2021.8098%2010.8333%2022.5002%2010.8333L27.9168%2010.8333ZM27.9168%2011.6666L22.5002%2011.6666C22.27%2011.6666%2022.0835%2011.8531%2022.0835%2012.0833L22.0835%2017.4999C22.0835%2017.73%2022.27%2017.9166%2022.5002%2017.9166L27.9168%2017.9166C28.1469%2017.9166%2028.3335%2017.73%2028.3335%2017.4999L28.3335%2012.0833C28.3335%2011.8531%2028.1469%2011.6666%2027.9168%2011.6666Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='nonzero'%20/%3e%3cpath%20id='ic_public_qrcode_2_4'%20d='M18.7502%2012.0833L18.7502%2017.4999C18.7502%2018.1903%2018.1905%2018.7499%2017.5002%2018.7499L12.0835%2018.7499C11.3931%2018.7499%2010.8335%2018.1903%2010.8335%2017.4999L10.8335%2012.0833C10.8335%2011.3929%2011.3931%2010.8333%2012.0835%2010.8333L17.5002%2010.8333C18.1905%2010.8333%2018.7502%2011.3929%2018.7502%2012.0833ZM12.0835%2011.6666C11.8534%2011.6666%2011.6668%2011.8531%2011.6668%2012.0833L11.6668%2017.4999C11.6668%2017.73%2011.8534%2017.9166%2012.0835%2017.9166L17.5002%2017.9166C17.7303%2017.9166%2017.9168%2017.73%2017.9168%2017.4999L17.9168%2012.0833C17.9168%2011.8531%2017.7303%2011.6666%2017.5002%2011.6666L12.0835%2011.6666ZM18.7502%2022.4999L18.7502%2027.9166C18.7502%2028.6069%2018.1905%2029.1666%2017.5002%2029.1666L12.0835%2029.1666C11.3931%2029.1666%2010.8335%2028.6069%2010.8335%2027.9166L10.8335%2022.4999C10.8335%2021.8096%2011.3931%2021.2499%2012.0835%2021.2499L17.5002%2021.2499C18.1905%2021.2499%2018.7502%2021.8096%2018.7502%2022.4999ZM12.0835%2022.0833C11.8534%2022.0833%2011.6668%2022.2698%2011.6668%2022.4999L11.6668%2027.9166C11.6668%2028.1467%2011.8534%2028.3333%2012.0835%2028.3333L17.5002%2028.3333C17.7303%2028.3333%2017.9168%2028.1467%2017.9168%2027.9166L17.9168%2022.4999C17.9168%2022.2698%2017.7303%2022.0833%2017.5002%2022.0833L12.0835%2022.0833ZM29.1668%2012.0833L29.1668%2017.4999C29.1668%2018.1903%2028.6072%2018.7499%2027.9168%2018.7499L22.5002%2018.7499C21.8098%2018.7499%2021.2502%2018.1903%2021.2502%2017.4999L21.2502%2012.0833C21.2502%2011.3929%2021.8098%2010.8333%2022.5002%2010.8333L27.9168%2010.8333C28.6072%2010.8333%2029.1668%2011.3929%2029.1668%2012.0833ZM22.5002%2011.6666C22.27%2011.6666%2022.0835%2011.8531%2022.0835%2012.0833L22.0835%2017.4999C22.0835%2017.73%2022.27%2017.9166%2022.5002%2017.9166L27.9168%2017.9166C28.1469%2017.9166%2028.3335%2017.73%2028.3335%2017.4999L28.3335%2012.0833C28.3335%2011.8531%2028.1469%2011.6666%2027.9168%2011.6666L22.5002%2011.6666Z'%20fill-rule='nonzero'%20stroke='rgb(255,255,255)'%20stroke-opacity='0'%20stroke-linejoin='round'%20stroke-width='1.25'%20/%3e%3cpath%20id='ic_public_qrcode_2_5'%20d='M27.9165%2021.6667L27.9165%2024.5834L28.7498%2024.5834L28.7498%2021.6667L27.9165%2021.6667ZM24.5832%2021.6667L24.5832%2022.639L24.5828%2022.6388L24.5832%2024.5834L23.6109%2024.5834L23.6107%2022.6388L21.6665%2022.639L21.6665%2021.6667L24.5832%2021.6667ZM21.6665%2025.8334L21.6665%2028.7501L22.4998%2028.7501L22.4998%2025.8334L21.6665%2025.8334ZM27.9165%2027.9167L27.9165%2028.7501L28.7498%2028.7501L28.7498%2027.9167L27.9165%2027.9167ZM25.8332%2025.8334L25.8332%2026.6667L26.6665%2026.6667L26.6665%2025.8334L25.8332%2025.8334Z'%20fill='rgb(14,191,241)'%20fill-rule='nonzero'%20/%3e%3cpath%20id='ic_public_qrcode_2_5'%20d='M27.9165%2024.5834L28.7498%2024.5834L28.7498%2021.6667L27.9165%2021.6667L27.9165%2024.5834ZM24.5832%2022.639L24.5828%2022.6388L24.5832%2024.5834L23.6109%2024.5834L23.6107%2022.6388L21.6665%2022.639L21.6665%2021.6667L24.5832%2021.6667L24.5832%2022.639ZM21.6665%2028.7501L22.4998%2028.7501L22.4998%2025.8334L21.6665%2025.8334L21.6665%2028.7501ZM27.9165%2028.7501L28.7498%2028.7501L28.7498%2027.9167L27.9165%2027.9167L27.9165%2028.7501ZM25.8332%2026.6667L26.6665%2026.6667L26.6665%2025.8334L25.8332%2025.8334L25.8332%2026.6667Z'%20fill-rule='nonzero'%20stroke='rgb(14,191,241)'%20stroke-linejoin='round'%20stroke-width='1.25'%20/%3e%3cpath%20id='ic_public_qrcode_2_6'%20d='M14.375%2014.375L14.375%2015.2083L15.2083%2015.2083L15.2083%2014.375L14.375%2014.375ZM14.375%2024.7917L14.375%2025.625L15.2083%2025.625L15.2083%2024.7917L14.375%2024.7917ZM24.7917%2014.375L24.7917%2015.2083L25.625%2015.2083L25.625%2014.375L24.7917%2014.375Z'%20fill='rgb(14,191,241)'%20fill-rule='nonzero'%20/%3e%3cpath%20id='ic_public_qrcode_2_6'%20d='M14.375%2015.2083L15.2083%2015.2083L15.2083%2014.375L14.375%2014.375L14.375%2015.2083ZM14.375%2025.625L15.2083%2025.625L15.2083%2024.7917L14.375%2024.7917L14.375%2025.625ZM24.7917%2015.2083L25.625%2015.2083L25.625%2014.375L24.7917%2014.375L24.7917%2015.2083Z'%20fill-rule='nonzero'%20stroke='rgb(14,191,241)'%20stroke-linejoin='round'%20stroke-width='1.25'%20/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e", b2 = "data:image/svg+xml,%3csvg%20viewBox='0%200%2012%2012'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='12.000000'%20height='12.000000'%20fill='none'%3e%3cdefs%3e%3cfilter%20id='pixso_custom_mask_type_luminance'%3e%3cfeColorMatrix%20type='matrix'%20values='1%200%200%200%200%200%201%200%200%200%200%200%201%200%200%200%200%200%201%200%20'%20/%3e%3c/filter%3e%3c/defs%3e%3cmask%20id='mask_0'%20width='11.999876'%20height='11.999876'%20x='0.000000'%20y='0.000000'%20maskUnits='userSpaceOnUse'%3e%3cg%20filter='url(%23pixso_custom_mask_type_luminance)'%3e%3cg%20id='mask401_19830'%3e%3cpath%20id='蒙版'%20d='M0%200L11.9999%200L11.9999%2011.9999L0%2011.9999L0%200ZM2.69992%201.34999L8.09977%201.34999C9.5082%201.34999%2010.6498%202.49167%2010.6498%203.89998L10.6498%209.2999C10.6498%2010.7082%209.5082%2011.8499%208.09977%2011.8499L2.69992%2011.8499C1.29149%2011.8499%200.149901%2010.7082%200.149901%209.2999L0.149901%203.89998C0.149901%202.49167%201.29149%201.34999%202.69992%201.34999Z'%20fill='rgb(196,196,196)'%20fill-rule='evenodd'%20/%3e%3c/g%3e%3c/g%3e%3c/mask%3e%3crect%20id='ic_public_copy'%20width='12.000000'%20height='12.000000'%20x='0.000000'%20y='0.000000'%20/%3e%3crect%20id='ic_public_copy-复制/base/ic_public_copy'%20width='11.999876'%20height='11.999876'%20x='0.000000'%20y='0.000000'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3cpath%20id='path1'%20d='M0.000134537%205.99497C0.000134537%205.05748%20-0.00236544%204.11999%200.000134537%203.1825C-0.00236544%202.72751%200.055134%202.27501%200.165133%201.83752C0.41263%200.907526%201.01762%200.355032%201.94761%200.140034C2.41261%200.040035%202.8901%20-0.00746449%203.3651%203.54269e-05C5.16258%203.54269e-05%206.96006%203.54269e-05%208.76004%203.54269e-05C9.21254%20-0.00246455%209.66503%200.0475349%2010.1075%200.155034C11.065%200.387531%2011.64%200.995025%2011.8575%201.95002C11.9575%202.40001%2012.005%202.86001%2011.9975%203.3225C11.9975%205.13998%2011.9975%206.95746%2011.9975%208.77244C12%209.22244%2011.95%209.67243%2011.845%2010.1099C11.61%2011.0674%2011%2011.6374%2010.0475%2011.8574C9.58003%2011.9574%209.10504%2012.0049%208.62754%2011.9974C6.83756%2011.9974%205.04758%2011.9974%203.2576%2011.9974C2.80011%2012.0024%202.34511%2011.9499%201.90011%2011.8449C0.937625%2011.6124%200.360131%2011.0024%200.142633%2010.0424C0.0301342%209.55494%200.000134537%209.06744%200.000134537%208.57495C0.000134537%207.71495%200.000134537%206.85496%200.000134537%205.99497Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='evenodd'%20/%3e%3ccircle%20id='path2'%20cx='5.99993801'%20cy='5.99993801'%20r='5.99993801'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20/%3e%3cg%20id='mask'%20mask='url(%23mask_0)'%3e%3cg%20id='组合%208'%3e%3cpath%20id='path'%20d='M11.1%203.89993L11.1%206.8999C11.1%208.55488%209.75502%209.89737%208.10004%209.89737L5.10007%209.89737C3.44258%209.89737%202.1001%208.55488%202.1001%206.8999L2.1001%203.89993C2.1001%202.24245%203.44258%200.897461%205.10007%200.897461L8.10004%200.897461C9.75502%200.897461%2011.1%202.24245%2011.1%203.89993Z'%20fill-rule='nonzero'%20stroke='rgb(25,25,25)'%20stroke-linejoin='round'%20stroke-width='0.749992251'%20/%3e%3c/g%3e%3c/g%3e%3cpath%20id='path4'%20d='M2.10008%202.39746L8.10002%202.39746C8.92751%202.39746%209.6%203.06995%209.6%203.89995L9.6%209.89738C9.6%2010.7274%208.92751%2011.3999%208.10002%2011.3999L2.10008%2011.3999C1.27009%2011.3999%200.600098%2010.7274%200.600098%209.89738L0.600098%203.89995C0.600098%203.06995%201.27009%202.39746%202.10008%202.39746Z'%20fill='rgb(255,255,255)'%20fill-opacity='0'%20fill-rule='evenodd'%20/%3e%3cpath%20id='path4'%20d='M9.6%203.89995L9.6%209.89738C9.6%2010.7274%208.92751%2011.3999%208.10002%2011.3999L2.10008%2011.3999C1.27009%2011.3999%200.600098%2010.7274%200.600098%209.89738L0.600098%203.89995C0.600098%203.06995%201.27009%202.39746%202.10008%202.39746L8.10002%202.39746C8.92751%202.39746%209.6%203.06995%209.6%203.89995Z'%20fill-rule='nonzero'%20stroke='rgb(25,25,25)'%20stroke-linejoin='round'%20stroke-width='0.749992251'%20/%3e%3c/svg%3e", x2 = "https://chat.opentiny.design", L2 = "https://ai.opentiny.design/next-remoter", k2 = "https://ai.opentiny.design/next-remoter/svgs/logo-next-no-bg-left.svg", S2 = (t) => {
|
|
905
905
|
const e = !!t.sessionId;
|
|
906
906
|
return [
|
|
907
907
|
{
|
|
@@ -909,14 +909,14 @@ const v2 = "data:image/svg+xml,%3csvg%20viewBox='0%200%2040%2039.9692'%20xmlns='
|
|
|
909
909
|
show: e,
|
|
910
910
|
text: "扫码登录",
|
|
911
911
|
desc: "使用手机遥控页面",
|
|
912
|
-
icon:
|
|
912
|
+
icon: mt
|
|
913
913
|
},
|
|
914
914
|
{
|
|
915
915
|
action: "ai-chat",
|
|
916
916
|
show: !0,
|
|
917
917
|
text: "打开对话框",
|
|
918
918
|
desc: "支持在网页端操作AI",
|
|
919
|
-
icon:
|
|
919
|
+
icon: ut
|
|
920
920
|
},
|
|
921
921
|
{
|
|
922
922
|
action: "remote-url",
|
|
@@ -926,7 +926,7 @@ const v2 = "data:image/svg+xml,%3csvg%20viewBox='0%200%2040%2039.9692'%20xmlns='
|
|
|
926
926
|
active: !0,
|
|
927
927
|
tip: t.remoteUrl,
|
|
928
928
|
showCopyIcon: !0,
|
|
929
|
-
icon:
|
|
929
|
+
icon: ht
|
|
930
930
|
},
|
|
931
931
|
{
|
|
932
932
|
action: "remote-control",
|
|
@@ -935,7 +935,7 @@ const v2 = "data:image/svg+xml,%3csvg%20viewBox='0%200%2040%2039.9692'%20xmlns='
|
|
|
935
935
|
desc: e ? `${t.sessionId.slice(-6)}` : "",
|
|
936
936
|
know: !0,
|
|
937
937
|
showCopyIcon: !0,
|
|
938
|
-
icon:
|
|
938
|
+
icon: pt
|
|
939
939
|
}
|
|
940
940
|
];
|
|
941
941
|
};
|
|
@@ -955,16 +955,16 @@ class P2 {
|
|
|
955
955
|
});
|
|
956
956
|
}, this.readyTips = (r) => {
|
|
957
957
|
const n = document.getElementById(r);
|
|
958
|
-
n && new
|
|
958
|
+
n && new _2(n, {
|
|
959
959
|
content: "复制",
|
|
960
960
|
placement: "top",
|
|
961
961
|
trigger: "hover"
|
|
962
962
|
});
|
|
963
963
|
}, this.options = {
|
|
964
964
|
...e,
|
|
965
|
-
qrCodeUrl: e.qrCodeUrl ||
|
|
966
|
-
remoteUrl: e.remoteUrl ||
|
|
967
|
-
logoUrl: e.logoUrl ||
|
|
965
|
+
qrCodeUrl: e.qrCodeUrl || L2,
|
|
966
|
+
remoteUrl: e.remoteUrl || x2,
|
|
967
|
+
logoUrl: e.logoUrl || k2
|
|
968
968
|
}, e.menuItems && e.menuItems.length === 0 ? this.menuItems = [] : this.menuItems = this.mergeMenuItems(e.menuItems), this.init();
|
|
969
969
|
}
|
|
970
970
|
// 计算 sessionPrefix 属性
|
|
@@ -973,18 +973,21 @@ class P2 {
|
|
|
973
973
|
}
|
|
974
974
|
/**
|
|
975
975
|
* 合并菜单项配置。
|
|
976
|
-
* -
|
|
977
|
-
* -
|
|
976
|
+
* - 用户明确传入 menuItems:直接使用用户配置,不受 sessionId 限制;未传 icon 时自动补充默认图标
|
|
977
|
+
* - 有 sessionId 且未传 menuItems:使用默认菜单
|
|
978
|
+
* - 无 sessionId 且未传 menuItems:不渲染任何下拉菜单,仅保留点击浮标打开对话框的能力
|
|
978
979
|
*/
|
|
979
980
|
mergeMenuItems(e) {
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
981
|
+
const r = {
|
|
982
|
+
"qr-code": mt,
|
|
983
|
+
"ai-chat": ut,
|
|
984
|
+
"remote-url": ht,
|
|
985
|
+
"remote-control": pt
|
|
986
|
+
};
|
|
987
|
+
return e ? e.map((n) => ({
|
|
988
|
+
...n,
|
|
989
|
+
icon: n.icon ?? r[n.action]
|
|
990
|
+
})) : this.options.sessionId ? S2(this.options) : [];
|
|
988
991
|
}
|
|
989
992
|
init() {
|
|
990
993
|
this.createFloatingBlock(), this.createDropdownMenu(), this.bindEvents(), this.addStyles();
|
|
@@ -1008,11 +1011,11 @@ class P2 {
|
|
|
1008
1011
|
<div class="tiny-remoter-dropdown-item__content">
|
|
1009
1012
|
<div title="${r.tip}">${r.text}</div>
|
|
1010
1013
|
<div class="tiny-remoter-dropdown-item__desc-wrapper">
|
|
1011
|
-
<div class="tiny-remoter-dropdown-item__desc ${r.active ? "tiny-remoter-dropdown-item__desc--active" : ""} ${r.know ? "tiny-remoter-dropdown-item__desc--know" : ""}">${r.desc}</div>
|
|
1014
|
+
<div class="tiny-remoter-dropdown-item__desc ${r.active ? "tiny-remoter-dropdown-item__desc--active" : ""} ${r.know ? "tiny-remoter-dropdown-item__desc--know" : ""}">${r.desc ?? ""}</div>
|
|
1012
1015
|
<div>
|
|
1013
1016
|
${r.showCopyIcon ? `
|
|
1014
1017
|
<div class="tiny-remoter-copy-icon" id="${r.action}" data-action="${r.action}">
|
|
1015
|
-
<img src="${
|
|
1018
|
+
<img src="${b2}"/>
|
|
1016
1019
|
</div>
|
|
1017
1020
|
` : ""}
|
|
1018
1021
|
</div>
|
|
@@ -1081,10 +1084,12 @@ class P2 {
|
|
|
1081
1084
|
this.closeDropdown();
|
|
1082
1085
|
}
|
|
1083
1086
|
copyRemoteControl() {
|
|
1084
|
-
this.
|
|
1087
|
+
const e = this.menuItems.find((n) => n.action === "remote-control"), r = e?.desc || e?.text || (this.options.sessionId ? this.options.sessionId.slice(-6) : "");
|
|
1088
|
+
r && this.copyToClipboard(r);
|
|
1085
1089
|
}
|
|
1086
1090
|
copyRemoteURL() {
|
|
1087
|
-
this.options.sessionId
|
|
1091
|
+
const e = this.menuItems.find((s) => s.action === "remote-url"), r = this.options.sessionId ? this.options.remoteUrl + this.sessionPrefix + this.options.sessionId : "", o = (e?.desc && e.desc !== this.options.remoteUrl ? e.desc : void 0) || r || e?.text || "";
|
|
1092
|
+
o && this.copyToClipboard(o);
|
|
1088
1093
|
}
|
|
1089
1094
|
// 实现复制到剪贴板功能
|
|
1090
1095
|
async copyToClipboard(e) {
|
|
@@ -1113,7 +1118,7 @@ class P2 {
|
|
|
1113
1118
|
// 创建二维码弹窗(无 sessionId 时不展示)
|
|
1114
1119
|
async showQRCode() {
|
|
1115
1120
|
if (!this.options.sessionId) return;
|
|
1116
|
-
const r = await new
|
|
1121
|
+
const r = await new v2((this.options.qrCodeUrl || "") + this.sessionPrefix + this.options.sessionId, {}).toDataURL(), n = this.createModal(
|
|
1117
1122
|
"扫码前往智能遥控器",
|
|
1118
1123
|
`
|
|
1119
1124
|
<div style="text-align: center; padding: 32px;">
|
|
@@ -1582,19 +1587,19 @@ class P2 {
|
|
|
1582
1587
|
}
|
|
1583
1588
|
}
|
|
1584
1589
|
const jn = (t = {}) => new P2(t);
|
|
1585
|
-
class
|
|
1590
|
+
class Ge extends Error {
|
|
1586
1591
|
constructor(e, r) {
|
|
1587
1592
|
super(e), this.name = "ParseError", this.type = r.type, this.field = r.field, this.value = r.value, this.line = r.line;
|
|
1588
1593
|
}
|
|
1589
1594
|
}
|
|
1590
|
-
function
|
|
1595
|
+
function we(t) {
|
|
1591
1596
|
}
|
|
1592
1597
|
function T2(t) {
|
|
1593
1598
|
if (typeof t == "function")
|
|
1594
1599
|
throw new TypeError(
|
|
1595
1600
|
"`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?"
|
|
1596
1601
|
);
|
|
1597
|
-
const { onEvent: e =
|
|
1602
|
+
const { onEvent: e = we, onError: r = we, onRetry: n = we, onComment: o } = t;
|
|
1598
1603
|
let s = "", a = !0, c, d = "", l = "";
|
|
1599
1604
|
function u(h) {
|
|
1600
1605
|
const m = a ? h.replace(/^\xEF\xBB\xBF/, "") : h, [v, b] = M2(`${s}${m}`);
|
|
@@ -1633,7 +1638,7 @@ function T2(t) {
|
|
|
1633
1638
|
break;
|
|
1634
1639
|
case "retry":
|
|
1635
1640
|
/^\d+$/.test(m) ? n(parseInt(m, 10)) : r(
|
|
1636
|
-
new
|
|
1641
|
+
new Ge(`Invalid \`retry\` value: "${m}"`, {
|
|
1637
1642
|
type: "invalid-retry",
|
|
1638
1643
|
value: m,
|
|
1639
1644
|
line: v
|
|
@@ -1642,7 +1647,7 @@ function T2(t) {
|
|
|
1642
1647
|
break;
|
|
1643
1648
|
default:
|
|
1644
1649
|
r(
|
|
1645
|
-
new
|
|
1650
|
+
new Ge(
|
|
1646
1651
|
`Unknown field "${h.length > 20 ? `${h.slice(0, 20)}…` : h}"`,
|
|
1647
1652
|
{ type: "unknown-field", field: h, value: m, line: v }
|
|
1648
1653
|
)
|
|
@@ -1683,7 +1688,7 @@ function M2(t) {
|
|
|
1683
1688
|
}
|
|
1684
1689
|
return [e, r];
|
|
1685
1690
|
}
|
|
1686
|
-
class
|
|
1691
|
+
class Se extends TransformStream {
|
|
1687
1692
|
constructor({ onError: e, onRetry: r, onComment: n } = {}) {
|
|
1688
1693
|
let o;
|
|
1689
1694
|
super({
|
|
@@ -1720,14 +1725,14 @@ var E2 = ({
|
|
|
1720
1725
|
if (t == null)
|
|
1721
1726
|
return o;
|
|
1722
1727
|
if (r.includes(n))
|
|
1723
|
-
throw new
|
|
1728
|
+
throw new h2({
|
|
1724
1729
|
argument: "separator",
|
|
1725
1730
|
message: `The separator "${n}" must not be part of the alphabet "${r}".`
|
|
1726
1731
|
});
|
|
1727
1732
|
return () => `${t}${n}${o()}`;
|
|
1728
1733
|
};
|
|
1729
1734
|
E2();
|
|
1730
|
-
function
|
|
1735
|
+
function ft(t = globalThis) {
|
|
1731
1736
|
var e, r, n;
|
|
1732
1737
|
return t.window ? "runtime/browser" : (e = t.navigator) != null && e.userAgent ? `runtime/${t.navigator.userAgent.toLowerCase()}` : (n = (r = t.process) == null ? void 0 : r.versions) != null && n.node ? `runtime/node.js/${t.process.version.substring(0)}` : t.EdgeRuntime ? "runtime/vercel-edge" : "runtime/unknown";
|
|
1733
1738
|
}
|
|
@@ -1746,7 +1751,7 @@ function R2(t) {
|
|
|
1746
1751
|
}
|
|
1747
1752
|
return e;
|
|
1748
1753
|
}
|
|
1749
|
-
function
|
|
1754
|
+
function gt(t, ...e) {
|
|
1750
1755
|
const r = new Headers(R2(t)), n = r.get("user-agent") || "";
|
|
1751
1756
|
return r.set(
|
|
1752
1757
|
"user-agent",
|
|
@@ -1754,7 +1759,7 @@ function ht(t, ...e) {
|
|
|
1754
1759
|
), Object.fromEntries(r.entries());
|
|
1755
1760
|
}
|
|
1756
1761
|
var I2 = /"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/, A2 = /"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;
|
|
1757
|
-
function
|
|
1762
|
+
function Ke(t) {
|
|
1758
1763
|
const e = JSON.parse(t);
|
|
1759
1764
|
return e === null || typeof e != "object" || I2.test(t) === !1 && A2.test(t) === !1 ? e : O2(e);
|
|
1760
1765
|
}
|
|
@@ -1781,10 +1786,10 @@ function $2(t) {
|
|
|
1781
1786
|
try {
|
|
1782
1787
|
Error.stackTraceLimit = 0;
|
|
1783
1788
|
} catch {
|
|
1784
|
-
return
|
|
1789
|
+
return Ke(t);
|
|
1785
1790
|
}
|
|
1786
1791
|
try {
|
|
1787
|
-
return
|
|
1792
|
+
return Ke(t);
|
|
1788
1793
|
} finally {
|
|
1789
1794
|
Error.stackTraceLimit = e;
|
|
1790
1795
|
}
|
|
@@ -1795,21 +1800,21 @@ function Oe(t) {
|
|
|
1795
1800
|
const { properties: r } = t;
|
|
1796
1801
|
if (r != null)
|
|
1797
1802
|
for (const n of Object.keys(r))
|
|
1798
|
-
r[n] =
|
|
1803
|
+
r[n] = q(r[n]);
|
|
1799
1804
|
}
|
|
1800
|
-
t.items != null && (t.items = Array.isArray(t.items) ? t.items.map(
|
|
1805
|
+
t.items != null && (t.items = Array.isArray(t.items) ? t.items.map(q) : q(t.items)), t.anyOf != null && (t.anyOf = t.anyOf.map(q)), t.allOf != null && (t.allOf = t.allOf.map(q)), t.oneOf != null && (t.oneOf = t.oneOf.map(q));
|
|
1801
1806
|
const { definitions: e } = t;
|
|
1802
1807
|
if (e != null)
|
|
1803
1808
|
for (const r of Object.keys(e))
|
|
1804
|
-
e[r] =
|
|
1809
|
+
e[r] = q(e[r]);
|
|
1805
1810
|
return t;
|
|
1806
1811
|
}
|
|
1807
|
-
function
|
|
1812
|
+
function q(t) {
|
|
1808
1813
|
return typeof t == "boolean" ? t : Oe(t);
|
|
1809
1814
|
}
|
|
1810
1815
|
var U2 = Symbol(
|
|
1811
1816
|
"Let zodToJsonSchema decide on which parser to use"
|
|
1812
|
-
),
|
|
1817
|
+
), Ye = {
|
|
1813
1818
|
name: void 0,
|
|
1814
1819
|
$refStrategy: "root",
|
|
1815
1820
|
basePath: ["#"],
|
|
@@ -1830,10 +1835,10 @@ var U2 = Symbol(
|
|
|
1830
1835
|
base64Strategy: "contentEncoding:base64",
|
|
1831
1836
|
nameStrategy: "ref"
|
|
1832
1837
|
}, N2 = (t) => typeof t == "string" ? {
|
|
1833
|
-
...
|
|
1838
|
+
...Ye,
|
|
1834
1839
|
name: t
|
|
1835
1840
|
} : {
|
|
1836
|
-
...
|
|
1841
|
+
...Ye,
|
|
1837
1842
|
...t
|
|
1838
1843
|
};
|
|
1839
1844
|
function T() {
|
|
@@ -1869,18 +1874,18 @@ function Z2(t) {
|
|
|
1869
1874
|
}
|
|
1870
1875
|
return e;
|
|
1871
1876
|
}
|
|
1872
|
-
function
|
|
1877
|
+
function q2() {
|
|
1873
1878
|
return { type: "boolean" };
|
|
1874
1879
|
}
|
|
1875
|
-
function
|
|
1880
|
+
function yt(t, e) {
|
|
1876
1881
|
return _(t.type._def, e);
|
|
1877
1882
|
}
|
|
1878
|
-
var
|
|
1879
|
-
function
|
|
1883
|
+
var z2 = (t, e) => _(t.innerType._def, e);
|
|
1884
|
+
function wt(t, e, r) {
|
|
1880
1885
|
const n = r ?? e.dateStrategy;
|
|
1881
1886
|
if (Array.isArray(n))
|
|
1882
1887
|
return {
|
|
1883
|
-
anyOf: n.map((o, s) =>
|
|
1888
|
+
anyOf: n.map((o, s) => wt(t, e, o))
|
|
1884
1889
|
};
|
|
1885
1890
|
switch (n) {
|
|
1886
1891
|
case "string":
|
|
@@ -1930,7 +1935,7 @@ function B2(t) {
|
|
|
1930
1935
|
};
|
|
1931
1936
|
}
|
|
1932
1937
|
var V2 = (t) => "type" in t && t.type === "string" ? !1 : "allOf" in t;
|
|
1933
|
-
function
|
|
1938
|
+
function W2(t, e) {
|
|
1934
1939
|
const r = [
|
|
1935
1940
|
_(t.left._def, {
|
|
1936
1941
|
...e,
|
|
@@ -1954,7 +1959,7 @@ function J2(t, e) {
|
|
|
1954
1959
|
}
|
|
1955
1960
|
}), n.length ? { allOf: n } : void 0;
|
|
1956
1961
|
}
|
|
1957
|
-
function
|
|
1962
|
+
function J2(t) {
|
|
1958
1963
|
const e = typeof t.value;
|
|
1959
1964
|
return e !== "bigint" && e !== "number" && e !== "boolean" && e !== "string" ? {
|
|
1960
1965
|
type: Array.isArray(t.value) ? "array" : "object"
|
|
@@ -1963,7 +1968,7 @@ function W2(t) {
|
|
|
1963
1968
|
const: t.value
|
|
1964
1969
|
};
|
|
1965
1970
|
}
|
|
1966
|
-
var
|
|
1971
|
+
var ve = void 0, O = {
|
|
1967
1972
|
/**
|
|
1968
1973
|
* `c` was changed to `[cC]` to replicate /i flag
|
|
1969
1974
|
*/
|
|
@@ -1985,10 +1990,10 @@ var we = void 0, O = {
|
|
|
1985
1990
|
* Fix in Zod:
|
|
1986
1991
|
* https://github.com/colinhacks/zod/commit/9340fd51e48576a75adc919bff65dbc4a5d4c99b
|
|
1987
1992
|
*/
|
|
1988
|
-
emoji: () => (
|
|
1993
|
+
emoji: () => (ve === void 0 && (ve = RegExp(
|
|
1989
1994
|
"^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",
|
|
1990
1995
|
"u"
|
|
1991
|
-
)),
|
|
1996
|
+
)), ve),
|
|
1992
1997
|
/**
|
|
1993
1998
|
* Unused
|
|
1994
1999
|
*/
|
|
@@ -2008,7 +2013,7 @@ var we = void 0, O = {
|
|
|
2008
2013
|
nanoid: /^[a-zA-Z0-9_-]{21}$/,
|
|
2009
2014
|
jwt: /^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/
|
|
2010
2015
|
};
|
|
2011
|
-
function
|
|
2016
|
+
function vt(t, e) {
|
|
2012
2017
|
const r = {
|
|
2013
2018
|
type: "string"
|
|
2014
2019
|
};
|
|
@@ -2052,7 +2057,7 @@ function gt(t, e) {
|
|
|
2052
2057
|
case "startsWith":
|
|
2053
2058
|
k(
|
|
2054
2059
|
r,
|
|
2055
|
-
RegExp(`^${
|
|
2060
|
+
RegExp(`^${Ce(n.value, e)}`),
|
|
2056
2061
|
n.message,
|
|
2057
2062
|
e
|
|
2058
2063
|
);
|
|
@@ -2060,7 +2065,7 @@ function gt(t, e) {
|
|
|
2060
2065
|
case "endsWith":
|
|
2061
2066
|
k(
|
|
2062
2067
|
r,
|
|
2063
|
-
RegExp(`${
|
|
2068
|
+
RegExp(`${Ce(n.value, e)}$`),
|
|
2064
2069
|
n.message,
|
|
2065
2070
|
e
|
|
2066
2071
|
);
|
|
@@ -2083,7 +2088,7 @@ function gt(t, e) {
|
|
|
2083
2088
|
case "includes": {
|
|
2084
2089
|
k(
|
|
2085
2090
|
r,
|
|
2086
|
-
RegExp(
|
|
2091
|
+
RegExp(Ce(n.value, e)),
|
|
2087
2092
|
n.message,
|
|
2088
2093
|
e
|
|
2089
2094
|
);
|
|
@@ -2132,7 +2137,7 @@ function gt(t, e) {
|
|
|
2132
2137
|
}
|
|
2133
2138
|
return r;
|
|
2134
2139
|
}
|
|
2135
|
-
function
|
|
2140
|
+
function Ce(t, e) {
|
|
2136
2141
|
return e.patternStrategy === "escape" ? K2(t) : t;
|
|
2137
2142
|
}
|
|
2138
2143
|
var G2 = new Set(
|
|
@@ -2158,11 +2163,11 @@ function k(t, e, r, n) {
|
|
|
2158
2163
|
t.pattern || (o = t.allOf) != null && o.some((s) => s.pattern) ? (t.allOf || (t.allOf = []), t.pattern && (t.allOf.push({
|
|
2159
2164
|
pattern: t.pattern
|
|
2160
2165
|
}), delete t.pattern), t.allOf.push({
|
|
2161
|
-
pattern:
|
|
2166
|
+
pattern: Qe(e, n),
|
|
2162
2167
|
...r && n.errorMessages && { errorMessage: { pattern: r } }
|
|
2163
|
-
})) : t.pattern =
|
|
2168
|
+
})) : t.pattern = Qe(e, n);
|
|
2164
2169
|
}
|
|
2165
|
-
function
|
|
2170
|
+
function Qe(t, e) {
|
|
2166
2171
|
var r;
|
|
2167
2172
|
if (!e.applyRegexFlags || !t.flags)
|
|
2168
2173
|
return t.source;
|
|
@@ -2221,7 +2226,7 @@ function Xe(t, e) {
|
|
|
2221
2226
|
}
|
|
2222
2227
|
return s;
|
|
2223
2228
|
}
|
|
2224
|
-
function
|
|
2229
|
+
function Ct(t, e) {
|
|
2225
2230
|
var r, n, o, s, a, c;
|
|
2226
2231
|
const d = {
|
|
2227
2232
|
type: "object",
|
|
@@ -2231,7 +2236,7 @@ function yt(t, e) {
|
|
|
2231
2236
|
})) != null ? r : e.allowedAdditionalProperties
|
|
2232
2237
|
};
|
|
2233
2238
|
if (((n = t.keyType) == null ? void 0 : n._def.typeName) === w.ZodString && ((o = t.keyType._def.checks) != null && o.length)) {
|
|
2234
|
-
const { type: l, ...u } =
|
|
2239
|
+
const { type: l, ...u } = vt(t.keyType._def, e);
|
|
2235
2240
|
return {
|
|
2236
2241
|
...d,
|
|
2237
2242
|
propertyNames: u
|
|
@@ -2245,7 +2250,7 @@ function yt(t, e) {
|
|
|
2245
2250
|
}
|
|
2246
2251
|
};
|
|
2247
2252
|
if (((a = t.keyType) == null ? void 0 : a._def.typeName) === w.ZodBranded && t.keyType._def.type._def.typeName === w.ZodString && ((c = t.keyType._def.type._def.checks) != null && c.length)) {
|
|
2248
|
-
const { type: l, ...u } =
|
|
2253
|
+
const { type: l, ...u } = yt(
|
|
2249
2254
|
t.keyType._def,
|
|
2250
2255
|
e
|
|
2251
2256
|
);
|
|
@@ -2259,7 +2264,7 @@ function yt(t, e) {
|
|
|
2259
2264
|
}
|
|
2260
2265
|
function Y2(t, e) {
|
|
2261
2266
|
if (e.mapStrategy === "record")
|
|
2262
|
-
return
|
|
2267
|
+
return Ct(t, e);
|
|
2263
2268
|
const r = _(t.keyType._def, {
|
|
2264
2269
|
...e,
|
|
2265
2270
|
currentPath: [...e.currentPath, "items", "items", "0"]
|
|
@@ -2295,7 +2300,7 @@ function er() {
|
|
|
2295
2300
|
type: "null"
|
|
2296
2301
|
};
|
|
2297
2302
|
}
|
|
2298
|
-
var
|
|
2303
|
+
var Pe = {
|
|
2299
2304
|
ZodString: "string",
|
|
2300
2305
|
ZodNumber: "number",
|
|
2301
2306
|
ZodBigInt: "integer",
|
|
@@ -2305,10 +2310,10 @@ var Se = {
|
|
|
2305
2310
|
function tr(t, e) {
|
|
2306
2311
|
const r = t.options instanceof Map ? Array.from(t.options.values()) : t.options;
|
|
2307
2312
|
if (r.every(
|
|
2308
|
-
(n) => n._def.typeName in
|
|
2313
|
+
(n) => n._def.typeName in Pe && (!n._def.checks || !n._def.checks.length)
|
|
2309
2314
|
)) {
|
|
2310
2315
|
const n = r.reduce((o, s) => {
|
|
2311
|
-
const a =
|
|
2316
|
+
const a = Pe[s._def.typeName];
|
|
2312
2317
|
return a && !o.includes(a) ? [...o, a] : o;
|
|
2313
2318
|
}, []);
|
|
2314
2319
|
return {
|
|
@@ -2376,7 +2381,7 @@ function nr(t, e) {
|
|
|
2376
2381
|
) && (!t.innerType._def.checks || !t.innerType._def.checks.length))
|
|
2377
2382
|
return {
|
|
2378
2383
|
type: [
|
|
2379
|
-
|
|
2384
|
+
Pe[t.innerType._def.typeName],
|
|
2380
2385
|
"null"
|
|
2381
2386
|
]
|
|
2382
2387
|
};
|
|
@@ -2532,7 +2537,7 @@ function mr() {
|
|
|
2532
2537
|
var fr = (t, e) => _(t.innerType._def, e), gr = (t, e, r) => {
|
|
2533
2538
|
switch (e) {
|
|
2534
2539
|
case w.ZodString:
|
|
2535
|
-
return
|
|
2540
|
+
return vt(t, r);
|
|
2536
2541
|
case w.ZodNumber:
|
|
2537
2542
|
return or(t);
|
|
2538
2543
|
case w.ZodObject:
|
|
@@ -2540,9 +2545,9 @@ var fr = (t, e) => _(t.innerType._def, e), gr = (t, e, r) => {
|
|
|
2540
2545
|
case w.ZodBigInt:
|
|
2541
2546
|
return Z2(t);
|
|
2542
2547
|
case w.ZodBoolean:
|
|
2543
|
-
return
|
|
2548
|
+
return q2();
|
|
2544
2549
|
case w.ZodDate:
|
|
2545
|
-
return
|
|
2550
|
+
return wt(t, r);
|
|
2546
2551
|
case w.ZodUndefined:
|
|
2547
2552
|
return hr();
|
|
2548
2553
|
case w.ZodNull:
|
|
@@ -2553,13 +2558,13 @@ var fr = (t, e) => _(t.innerType._def, e), gr = (t, e, r) => {
|
|
|
2553
2558
|
case w.ZodDiscriminatedUnion:
|
|
2554
2559
|
return tr(t, r);
|
|
2555
2560
|
case w.ZodIntersection:
|
|
2556
|
-
return
|
|
2561
|
+
return W2(t, r);
|
|
2557
2562
|
case w.ZodTuple:
|
|
2558
2563
|
return pr(t, r);
|
|
2559
2564
|
case w.ZodRecord:
|
|
2560
|
-
return
|
|
2565
|
+
return Ct(t, r);
|
|
2561
2566
|
case w.ZodLiteral:
|
|
2562
|
-
return
|
|
2567
|
+
return J2(t);
|
|
2563
2568
|
case w.ZodEnum:
|
|
2564
2569
|
return B2(t);
|
|
2565
2570
|
case w.ZodNativeEnum:
|
|
@@ -2588,11 +2593,11 @@ var fr = (t, e) => _(t.innerType._def, e), gr = (t, e, r) => {
|
|
|
2588
2593
|
case w.ZodDefault:
|
|
2589
2594
|
return H2(t, r);
|
|
2590
2595
|
case w.ZodBranded:
|
|
2591
|
-
return
|
|
2596
|
+
return yt(t, r);
|
|
2592
2597
|
case w.ZodReadonly:
|
|
2593
2598
|
return fr(t, r);
|
|
2594
2599
|
case w.ZodCatch:
|
|
2595
|
-
return
|
|
2600
|
+
return z2(t, r);
|
|
2596
2601
|
case w.ZodPipeline:
|
|
2597
2602
|
return lr(t, r);
|
|
2598
2603
|
case w.ZodFunction:
|
|
@@ -2713,12 +2718,12 @@ var wr = (t, e) => {
|
|
|
2713
2718
|
}
|
|
2714
2719
|
};
|
|
2715
2720
|
return d.$schema = "http://json-schema.org/draft-07/schema#", d;
|
|
2716
|
-
},
|
|
2721
|
+
}, Te = Symbol.for("vercel.ai.schema");
|
|
2717
2722
|
function Q(t, {
|
|
2718
2723
|
validate: e
|
|
2719
2724
|
} = {}) {
|
|
2720
2725
|
return {
|
|
2721
|
-
[
|
|
2726
|
+
[Te]: !0,
|
|
2722
2727
|
_type: void 0,
|
|
2723
2728
|
// should never be used directly
|
|
2724
2729
|
get jsonSchema() {
|
|
@@ -2728,9 +2733,9 @@ function Q(t, {
|
|
|
2728
2733
|
};
|
|
2729
2734
|
}
|
|
2730
2735
|
function br(t) {
|
|
2731
|
-
return typeof t == "object" && t !== null &&
|
|
2736
|
+
return typeof t == "object" && t !== null && Te in t && t[Te] === !0 && "jsonSchema" in t && "validate" in t;
|
|
2732
2737
|
}
|
|
2733
|
-
function
|
|
2738
|
+
function _t(t) {
|
|
2734
2739
|
return t == null ? Q({ properties: {}, additionalProperties: !1 }) : br(t) ? t : "~standard" in t ? t["~standard"].vendor === "zod" ? Pr(t) : xr(t) : t();
|
|
2735
2740
|
}
|
|
2736
2741
|
function xr(t) {
|
|
@@ -2745,7 +2750,7 @@ function xr(t) {
|
|
|
2745
2750
|
const r = await t["~standard"].validate(e);
|
|
2746
2751
|
return "value" in r ? { success: !0, value: r.value } : {
|
|
2747
2752
|
success: !1,
|
|
2748
|
-
error: new
|
|
2753
|
+
error: new xe({
|
|
2749
2754
|
value: e,
|
|
2750
2755
|
cause: r.issues
|
|
2751
2756
|
})
|
|
@@ -2796,25 +2801,25 @@ function Sr(t) {
|
|
|
2796
2801
|
function Pr(t, e) {
|
|
2797
2802
|
return Sr(t) ? kr(t) : Lr(t);
|
|
2798
2803
|
}
|
|
2799
|
-
async function
|
|
2804
|
+
async function bt({
|
|
2800
2805
|
value: t,
|
|
2801
2806
|
schema: e,
|
|
2802
2807
|
context: r
|
|
2803
2808
|
}) {
|
|
2804
|
-
const n =
|
|
2809
|
+
const n = _t(e);
|
|
2805
2810
|
try {
|
|
2806
2811
|
if (n.validate == null)
|
|
2807
2812
|
return { success: !0, value: t, rawValue: t };
|
|
2808
2813
|
const o = await n.validate(t);
|
|
2809
2814
|
return o.success ? { success: !0, value: o.value, rawValue: t } : {
|
|
2810
2815
|
success: !1,
|
|
2811
|
-
error:
|
|
2816
|
+
error: xe.wrap({ value: t, cause: o.error, context: r }),
|
|
2812
2817
|
rawValue: t
|
|
2813
2818
|
};
|
|
2814
2819
|
} catch (o) {
|
|
2815
2820
|
return {
|
|
2816
2821
|
success: !1,
|
|
2817
|
-
error:
|
|
2822
|
+
error: xe.wrap({ value: t, cause: o, context: r }),
|
|
2818
2823
|
rawValue: t
|
|
2819
2824
|
};
|
|
2820
2825
|
}
|
|
@@ -2825,7 +2830,7 @@ async function Tr({
|
|
|
2825
2830
|
}) {
|
|
2826
2831
|
try {
|
|
2827
2832
|
const r = $2(t);
|
|
2828
|
-
return e == null ? { success: !0, value: r, rawValue: r } : await
|
|
2833
|
+
return e == null ? { success: !0, value: r, rawValue: r } : await bt({ value: r, schema: e });
|
|
2829
2834
|
} catch (r) {
|
|
2830
2835
|
return {
|
|
2831
2836
|
success: !1,
|
|
@@ -2868,7 +2873,7 @@ async function Or(t) {
|
|
|
2868
2873
|
code_challenge: r
|
|
2869
2874
|
};
|
|
2870
2875
|
}
|
|
2871
|
-
var $r = "AI_MCPClientError",
|
|
2876
|
+
var $r = "AI_MCPClientError", xt = `vercel.ai.error.${$r}`, Ur = Symbol.for(xt), Xe, et, C = class extends (et = oe, Xe = Ur, et) {
|
|
2872
2877
|
constructor({
|
|
2873
2878
|
name: t = "MCPClientError",
|
|
2874
2879
|
message: e,
|
|
@@ -2876,10 +2881,10 @@ var $r = "AI_MCPClientError", Ct = `vercel.ai.error.${$r}`, Ur = Symbol.for(Ct),
|
|
|
2876
2881
|
data: n,
|
|
2877
2882
|
code: o
|
|
2878
2883
|
}) {
|
|
2879
|
-
super({ name: t, message: e, cause: r }), this[
|
|
2884
|
+
super({ name: t, message: e, cause: r }), this[Xe] = !0, this.data = n, this.code = o;
|
|
2880
2885
|
}
|
|
2881
2886
|
static isInstance(t) {
|
|
2882
|
-
return oe.hasMarker(t,
|
|
2887
|
+
return oe.hasMarker(t, xt);
|
|
2883
2888
|
}
|
|
2884
2889
|
}, B = "2025-06-18", Nr = [
|
|
2885
2890
|
B,
|
|
@@ -2888,14 +2893,14 @@ var $r = "AI_MCPClientError", Ct = `vercel.ai.error.${$r}`, Ur = Symbol.for(Ct),
|
|
|
2888
2893
|
], jr = i.optional(i.record(i.string(), i.unknown())), Zr = i.looseObject({
|
|
2889
2894
|
name: i.string(),
|
|
2890
2895
|
version: i.string()
|
|
2891
|
-
}),
|
|
2896
|
+
}), fe = i.looseObject({
|
|
2892
2897
|
_meta: i.optional(i.object({}).loose())
|
|
2893
|
-
}), N =
|
|
2898
|
+
}), N = fe, Lt = i.object({
|
|
2894
2899
|
method: i.string(),
|
|
2895
|
-
params: i.optional(
|
|
2896
|
-
}),
|
|
2900
|
+
params: i.optional(fe)
|
|
2901
|
+
}), kt = i.object({
|
|
2897
2902
|
applyDefaults: i.optional(i.boolean())
|
|
2898
|
-
}).loose(),
|
|
2903
|
+
}).loose(), qr = i.looseObject({
|
|
2899
2904
|
experimental: i.optional(i.object({}).loose()),
|
|
2900
2905
|
logging: i.optional(i.object({}).loose()),
|
|
2901
2906
|
prompts: i.optional(
|
|
@@ -2914,14 +2919,14 @@ var $r = "AI_MCPClientError", Ct = `vercel.ai.error.${$r}`, Ur = Symbol.for(Ct),
|
|
|
2914
2919
|
listChanged: i.optional(i.boolean())
|
|
2915
2920
|
})
|
|
2916
2921
|
),
|
|
2917
|
-
elicitation: i.optional(
|
|
2922
|
+
elicitation: i.optional(kt)
|
|
2918
2923
|
});
|
|
2919
2924
|
i.object({
|
|
2920
|
-
elicitation: i.optional(
|
|
2925
|
+
elicitation: i.optional(kt)
|
|
2921
2926
|
}).loose();
|
|
2922
|
-
var
|
|
2927
|
+
var zr = N.extend({
|
|
2923
2928
|
protocolVersion: i.string(),
|
|
2924
|
-
capabilities:
|
|
2929
|
+
capabilities: qr,
|
|
2925
2930
|
serverInfo: Zr,
|
|
2926
2931
|
instructions: i.optional(i.string())
|
|
2927
2932
|
}), Ue = N.extend({
|
|
@@ -2949,10 +2954,10 @@ var qr = N.extend({
|
|
|
2949
2954
|
_meta: jr
|
|
2950
2955
|
}).loose(), Hr = Ue.extend({
|
|
2951
2956
|
tools: i.array(Dr)
|
|
2952
|
-
}),
|
|
2957
|
+
}), St = i.object({
|
|
2953
2958
|
type: i.literal("text"),
|
|
2954
2959
|
text: i.string()
|
|
2955
|
-
}).loose(),
|
|
2960
|
+
}).loose(), Pt = i.object({
|
|
2956
2961
|
type: i.literal("image"),
|
|
2957
2962
|
data: i.base64(),
|
|
2958
2963
|
mimeType: i.string()
|
|
@@ -2965,7 +2970,7 @@ var qr = N.extend({
|
|
|
2965
2970
|
size: i.optional(i.number())
|
|
2966
2971
|
}).loose(), Br = Ue.extend({
|
|
2967
2972
|
resources: i.array(Fr)
|
|
2968
|
-
}),
|
|
2973
|
+
}), Tt = i.object({
|
|
2969
2974
|
/**
|
|
2970
2975
|
* The URI of this resource.
|
|
2971
2976
|
*/
|
|
@@ -2982,16 +2987,16 @@ var qr = N.extend({
|
|
|
2982
2987
|
* The MIME type of this resource, if known.
|
|
2983
2988
|
*/
|
|
2984
2989
|
mimeType: i.optional(i.string())
|
|
2985
|
-
}).loose(),
|
|
2990
|
+
}).loose(), Mt = Tt.extend({
|
|
2986
2991
|
text: i.string()
|
|
2987
|
-
}),
|
|
2992
|
+
}), Et = Tt.extend({
|
|
2988
2993
|
blob: i.base64()
|
|
2989
|
-
}),
|
|
2994
|
+
}), Rt = i.object({
|
|
2990
2995
|
type: i.literal("resource"),
|
|
2991
|
-
resource: i.union([
|
|
2996
|
+
resource: i.union([Mt, Et])
|
|
2992
2997
|
}).loose(), Vr = N.extend({
|
|
2993
2998
|
content: i.array(
|
|
2994
|
-
i.union([
|
|
2999
|
+
i.union([St, Pt, Rt])
|
|
2995
3000
|
),
|
|
2996
3001
|
/**
|
|
2997
3002
|
* @see https://modelcontextprotocol.io/specification/2025-06-18/server/tools#structured-content
|
|
@@ -3002,17 +3007,17 @@ var qr = N.extend({
|
|
|
3002
3007
|
N.extend({
|
|
3003
3008
|
toolResult: i.unknown()
|
|
3004
3009
|
})
|
|
3005
|
-
),
|
|
3010
|
+
), Wr = i.object({
|
|
3006
3011
|
uriTemplate: i.string(),
|
|
3007
3012
|
name: i.string(),
|
|
3008
3013
|
title: i.optional(i.string()),
|
|
3009
3014
|
description: i.optional(i.string()),
|
|
3010
3015
|
mimeType: i.optional(i.string())
|
|
3011
|
-
}).loose(),
|
|
3012
|
-
resourceTemplates: i.array(
|
|
3016
|
+
}).loose(), Jr = N.extend({
|
|
3017
|
+
resourceTemplates: i.array(Wr)
|
|
3013
3018
|
}), Gr = N.extend({
|
|
3014
3019
|
contents: i.array(
|
|
3015
|
-
i.union([
|
|
3020
|
+
i.union([Mt, Et])
|
|
3016
3021
|
)
|
|
3017
3022
|
}), Kr = i.object({
|
|
3018
3023
|
name: i.string(),
|
|
@@ -3028,17 +3033,17 @@ var qr = N.extend({
|
|
|
3028
3033
|
}), Xr = i.object({
|
|
3029
3034
|
role: i.union([i.literal("user"), i.literal("assistant")]),
|
|
3030
3035
|
content: i.union([
|
|
3031
|
-
|
|
3032
|
-
|
|
3033
|
-
|
|
3036
|
+
St,
|
|
3037
|
+
Pt,
|
|
3038
|
+
Rt
|
|
3034
3039
|
])
|
|
3035
3040
|
}).loose(), e0 = N.extend({
|
|
3036
3041
|
description: i.optional(i.string()),
|
|
3037
3042
|
messages: i.array(Xr)
|
|
3038
|
-
}), t0 =
|
|
3043
|
+
}), t0 = fe.extend({
|
|
3039
3044
|
message: i.string(),
|
|
3040
3045
|
requestedSchema: i.unknown()
|
|
3041
|
-
}),
|
|
3046
|
+
}), tt = Lt.extend({
|
|
3042
3047
|
method: i.literal("elicitation/create"),
|
|
3043
3048
|
params: t0
|
|
3044
3049
|
}), r0 = N.extend({
|
|
@@ -3048,15 +3053,15 @@ var qr = N.extend({
|
|
|
3048
3053
|
i.literal("cancel")
|
|
3049
3054
|
]),
|
|
3050
3055
|
content: i.optional(i.record(i.string(), i.unknown()))
|
|
3051
|
-
}),
|
|
3052
|
-
jsonrpc: i.literal(
|
|
3056
|
+
}), ge = "2.0", n0 = i.object({
|
|
3057
|
+
jsonrpc: i.literal(ge),
|
|
3053
3058
|
id: i.union([i.string(), i.number().int()])
|
|
3054
|
-
}).merge(
|
|
3055
|
-
jsonrpc: i.literal(
|
|
3059
|
+
}).merge(Lt).strict(), o0 = i.object({
|
|
3060
|
+
jsonrpc: i.literal(ge),
|
|
3056
3061
|
id: i.union([i.string(), i.number().int()]),
|
|
3057
3062
|
result: N
|
|
3058
3063
|
}).strict(), s0 = i.object({
|
|
3059
|
-
jsonrpc: i.literal(
|
|
3064
|
+
jsonrpc: i.literal(ge),
|
|
3060
3065
|
id: i.union([i.string(), i.number().int()]),
|
|
3061
3066
|
error: i.object({
|
|
3062
3067
|
code: i.number().int(),
|
|
@@ -3064,18 +3069,18 @@ var qr = N.extend({
|
|
|
3064
3069
|
data: i.optional(i.unknown())
|
|
3065
3070
|
})
|
|
3066
3071
|
}).strict(), i0 = i.object({
|
|
3067
|
-
jsonrpc: i.literal(
|
|
3072
|
+
jsonrpc: i.literal(ge)
|
|
3068
3073
|
}).merge(
|
|
3069
3074
|
i.object({
|
|
3070
3075
|
method: i.string(),
|
|
3071
|
-
params: i.optional(
|
|
3076
|
+
params: i.optional(fe)
|
|
3072
3077
|
})
|
|
3073
3078
|
).strict(), K = i.union([
|
|
3074
3079
|
n0,
|
|
3075
3080
|
i0,
|
|
3076
3081
|
o0,
|
|
3077
3082
|
s0
|
|
3078
|
-
]),
|
|
3083
|
+
]), It = typeof __PACKAGE_VERSION__ < "u" ? __PACKAGE_VERSION__ : "0.0.0-test", At = i.object({
|
|
3079
3084
|
access_token: i.string(),
|
|
3080
3085
|
id_token: i.string().optional(),
|
|
3081
3086
|
// Optional for OAuth 2.1, but necessary in OpenID Connect
|
|
@@ -3111,7 +3116,7 @@ var qr = N.extend({
|
|
|
3111
3116
|
authorization_details_types_supported: i.array(i.string()).optional(),
|
|
3112
3117
|
dpop_signing_alg_values_supported: i.array(i.string()).optional(),
|
|
3113
3118
|
dpop_bound_access_tokens_required: i.boolean().optional()
|
|
3114
|
-
}).passthrough(),
|
|
3119
|
+
}).passthrough(), Ot = i.object({
|
|
3115
3120
|
issuer: i.string(),
|
|
3116
3121
|
authorization_endpoint: S,
|
|
3117
3122
|
token_endpoint: S,
|
|
@@ -3137,7 +3142,7 @@ var qr = N.extend({
|
|
|
3137
3142
|
claims_supported: i.array(i.string()).optional(),
|
|
3138
3143
|
token_endpoint_auth_methods_supported: i.array(i.string()).optional()
|
|
3139
3144
|
}).passthrough(), l0 = c0.merge(
|
|
3140
|
-
|
|
3145
|
+
Ot.pick({
|
|
3141
3146
|
code_challenge_methods_supported: !0
|
|
3142
3147
|
})
|
|
3143
3148
|
), d0 = i.object({
|
|
@@ -3168,16 +3173,16 @@ var qr = N.extend({
|
|
|
3168
3173
|
error_uri: i.string().optional()
|
|
3169
3174
|
}), h0 = u0.merge(
|
|
3170
3175
|
d0
|
|
3171
|
-
), m0 = "AI_MCPClientOAuthError",
|
|
3176
|
+
), m0 = "AI_MCPClientOAuthError", $t = `vercel.ai.error.${m0}`, f0 = Symbol.for($t), rt, nt, X = class extends (nt = oe, rt = f0, nt) {
|
|
3172
3177
|
constructor({
|
|
3173
3178
|
name: t = "MCPClientOAuthError",
|
|
3174
3179
|
message: e,
|
|
3175
3180
|
cause: r
|
|
3176
3181
|
}) {
|
|
3177
|
-
super({ name: t, message: e, cause: r }), this[
|
|
3182
|
+
super({ name: t, message: e, cause: r }), this[rt] = !0;
|
|
3178
3183
|
}
|
|
3179
3184
|
static isInstance(t) {
|
|
3180
|
-
return oe.hasMarker(t,
|
|
3185
|
+
return oe.hasMarker(t, $t);
|
|
3181
3186
|
}
|
|
3182
3187
|
}, H = class extends X {
|
|
3183
3188
|
};
|
|
@@ -3244,7 +3249,7 @@ async function Ne(t, e, r = fetch) {
|
|
|
3244
3249
|
throw n;
|
|
3245
3250
|
}
|
|
3246
3251
|
}
|
|
3247
|
-
async function
|
|
3252
|
+
async function ot(t, e, r = fetch) {
|
|
3248
3253
|
return await Ne(t, {
|
|
3249
3254
|
"MCP-Protocol-Version": e
|
|
3250
3255
|
}, r);
|
|
@@ -3262,10 +3267,10 @@ async function _0(t, e, r, n) {
|
|
|
3262
3267
|
const u = v0(e, a.pathname);
|
|
3263
3268
|
d = new URL(u, (s = n?.metadataServerUrl) != null ? s : a), d.search = a.search;
|
|
3264
3269
|
}
|
|
3265
|
-
let l = await
|
|
3270
|
+
let l = await ot(d, c, r);
|
|
3266
3271
|
if (!n?.metadataUrl && C0(l, a.pathname)) {
|
|
3267
3272
|
const u = new URL(`/.well-known/${e}`, a);
|
|
3268
|
-
l = await
|
|
3273
|
+
l = await ot(u, c, r);
|
|
3269
3274
|
}
|
|
3270
3275
|
return l;
|
|
3271
3276
|
}
|
|
@@ -3334,7 +3339,7 @@ async function L0(t, {
|
|
|
3334
3339
|
);
|
|
3335
3340
|
}
|
|
3336
3341
|
if (c === "oauth")
|
|
3337
|
-
return
|
|
3342
|
+
return Ot.parse(await d.json());
|
|
3338
3343
|
{
|
|
3339
3344
|
const l = l0.parse(
|
|
3340
3345
|
await d.json()
|
|
@@ -3375,11 +3380,11 @@ async function k0(t, {
|
|
|
3375
3380
|
d
|
|
3376
3381
|
), l.searchParams.set("redirect_uri", String(n)), s && l.searchParams.set("state", s), o && l.searchParams.set("scope", o), o?.includes("offline_access") && l.searchParams.append("prompt", "consent"), a && l.searchParams.set("resource", a.href), { authorizationUrl: l, codeVerifier: g };
|
|
3377
3382
|
}
|
|
3378
|
-
function
|
|
3383
|
+
function Ut(t, e) {
|
|
3379
3384
|
const r = t.client_secret !== void 0;
|
|
3380
3385
|
return e.length === 0 ? r ? "client_secret_post" : "none" : r && e.includes("client_secret_basic") ? "client_secret_basic" : r && e.includes("client_secret_post") ? "client_secret_post" : e.includes("none") ? "none" : r ? "client_secret_post" : "none";
|
|
3381
3386
|
}
|
|
3382
|
-
function
|
|
3387
|
+
function Nt(t, e, r, n) {
|
|
3383
3388
|
const { client_id: o, client_secret: s } = e;
|
|
3384
3389
|
switch (t) {
|
|
3385
3390
|
case "client_secret_basic":
|
|
@@ -3450,11 +3455,11 @@ async function M0(t, {
|
|
|
3450
3455
|
if (c)
|
|
3451
3456
|
c(p, f, t, e);
|
|
3452
3457
|
else {
|
|
3453
|
-
const h = (l = e?.token_endpoint_auth_methods_supported) != null ? l : [], m =
|
|
3458
|
+
const h = (l = e?.token_endpoint_auth_methods_supported) != null ? l : [], m = Ut(
|
|
3454
3459
|
r,
|
|
3455
3460
|
h
|
|
3456
3461
|
);
|
|
3457
|
-
|
|
3462
|
+
Nt(m, r, p, f);
|
|
3458
3463
|
}
|
|
3459
3464
|
a && f.set("resource", a.href);
|
|
3460
3465
|
const y = await (d ?? fetch)(g, {
|
|
@@ -3464,7 +3469,7 @@ async function M0(t, {
|
|
|
3464
3469
|
});
|
|
3465
3470
|
if (!y.ok)
|
|
3466
3471
|
throw await je(y);
|
|
3467
|
-
return
|
|
3472
|
+
return At.parse(await y.json());
|
|
3468
3473
|
}
|
|
3469
3474
|
async function E0(t, {
|
|
3470
3475
|
metadata: e,
|
|
@@ -3494,11 +3499,11 @@ async function E0(t, {
|
|
|
3494
3499
|
if (s)
|
|
3495
3500
|
s(u, g, t, e);
|
|
3496
3501
|
else {
|
|
3497
|
-
const f = (c = e?.token_endpoint_auth_methods_supported) != null ? c : [], y =
|
|
3502
|
+
const f = (c = e?.token_endpoint_auth_methods_supported) != null ? c : [], y = Ut(
|
|
3498
3503
|
r,
|
|
3499
3504
|
f
|
|
3500
3505
|
);
|
|
3501
|
-
|
|
3506
|
+
Nt(y, r, u, g);
|
|
3502
3507
|
}
|
|
3503
3508
|
o && g.set("resource", o.href);
|
|
3504
3509
|
const p = await (a ?? fetch)(l, {
|
|
@@ -3508,7 +3513,7 @@ async function E0(t, {
|
|
|
3508
3513
|
});
|
|
3509
3514
|
if (!p.ok)
|
|
3510
3515
|
throw await je(p);
|
|
3511
|
-
return
|
|
3516
|
+
return At.parse({
|
|
3512
3517
|
refresh_token: n,
|
|
3513
3518
|
...await p.json()
|
|
3514
3519
|
});
|
|
@@ -3541,12 +3546,12 @@ async function R0(t, {
|
|
|
3541
3546
|
async function de(t, e) {
|
|
3542
3547
|
var r, n;
|
|
3543
3548
|
try {
|
|
3544
|
-
return await
|
|
3549
|
+
return await _e(t, e);
|
|
3545
3550
|
} catch (o) {
|
|
3546
3551
|
if (o instanceof se || o instanceof ae)
|
|
3547
|
-
return await ((r = t.invalidateCredentials) == null ? void 0 : r.call(t, "all")), await
|
|
3552
|
+
return await ((r = t.invalidateCredentials) == null ? void 0 : r.call(t, "all")), await _e(t, e);
|
|
3548
3553
|
if (o instanceof ie)
|
|
3549
|
-
return await ((n = t.invalidateCredentials) == null ? void 0 : n.call(t, "tokens")), await
|
|
3554
|
+
return await ((n = t.invalidateCredentials) == null ? void 0 : n.call(t, "tokens")), await _e(t, e);
|
|
3550
3555
|
throw o;
|
|
3551
3556
|
}
|
|
3552
3557
|
}
|
|
@@ -3568,7 +3573,7 @@ async function I0(t, e, r) {
|
|
|
3568
3573
|
return new URL(r.resource);
|
|
3569
3574
|
}
|
|
3570
3575
|
}
|
|
3571
|
-
async function
|
|
3576
|
+
async function _e(t, {
|
|
3572
3577
|
serverUrl: e,
|
|
3573
3578
|
authorizationCode: r,
|
|
3574
3579
|
scope: n,
|
|
@@ -3674,10 +3679,10 @@ var A0 = class {
|
|
|
3674
3679
|
const r = await this.authProvider.tokens();
|
|
3675
3680
|
r?.access_token && (e.Authorization = `Bearer ${r.access_token}`);
|
|
3676
3681
|
}
|
|
3677
|
-
return
|
|
3682
|
+
return gt(
|
|
3678
3683
|
e,
|
|
3679
|
-
`ai-sdk/${
|
|
3680
|
-
|
|
3684
|
+
`ai-sdk/${It}`,
|
|
3685
|
+
ft()
|
|
3681
3686
|
);
|
|
3682
3687
|
}
|
|
3683
3688
|
async start() {
|
|
@@ -3717,7 +3722,7 @@ var A0 = class {
|
|
|
3717
3722
|
});
|
|
3718
3723
|
return (c = this.onerror) == null || c.call(this, h), e(h);
|
|
3719
3724
|
}
|
|
3720
|
-
const p = u.body.pipeThrough(new TextDecoderStream()).pipeThrough(new
|
|
3725
|
+
const p = u.body.pipeThrough(new TextDecoderStream()).pipeThrough(new Se()).getReader(), f = async () => {
|
|
3721
3726
|
var y, h, m;
|
|
3722
3727
|
try {
|
|
3723
3728
|
for (; ; ) {
|
|
@@ -3842,10 +3847,10 @@ var A0 = class {
|
|
|
3842
3847
|
const r = await this.authProvider.tokens();
|
|
3843
3848
|
r?.access_token && (e.Authorization = `Bearer ${r.access_token}`);
|
|
3844
3849
|
}
|
|
3845
|
-
return
|
|
3850
|
+
return gt(
|
|
3846
3851
|
e,
|
|
3847
|
-
`ai-sdk/${
|
|
3848
|
-
|
|
3852
|
+
`ai-sdk/${It}`,
|
|
3853
|
+
ft()
|
|
3849
3854
|
);
|
|
3850
3855
|
}
|
|
3851
3856
|
async start() {
|
|
@@ -3926,22 +3931,22 @@ var A0 = class {
|
|
|
3926
3931
|
});
|
|
3927
3932
|
throw (c = this.onerror) == null || c.call(this, M), M;
|
|
3928
3933
|
}
|
|
3929
|
-
const b = p.body.pipeThrough(new TextDecoderStream()).pipeThrough(new
|
|
3934
|
+
const b = p.body.pipeThrough(new TextDecoderStream()).pipeThrough(new Se()).getReader();
|
|
3930
3935
|
(async () => {
|
|
3931
3936
|
var M, P, E;
|
|
3932
3937
|
try {
|
|
3933
3938
|
for (; ; ) {
|
|
3934
|
-
const { done: R, value:
|
|
3939
|
+
const { done: R, value: z } = await b.read();
|
|
3935
3940
|
if (R) return;
|
|
3936
|
-
const { event: I, data: j } =
|
|
3941
|
+
const { event: I, data: j } = z;
|
|
3937
3942
|
if (I === "message")
|
|
3938
3943
|
try {
|
|
3939
|
-
const
|
|
3940
|
-
(M = this.onmessage) == null || M.call(this,
|
|
3941
|
-
} catch (
|
|
3944
|
+
const W = K.parse(JSON.parse(j));
|
|
3945
|
+
(M = this.onmessage) == null || M.call(this, W);
|
|
3946
|
+
} catch (W) {
|
|
3942
3947
|
const A = new C({
|
|
3943
3948
|
message: "MCP HTTP Transport Error: Failed to parse message",
|
|
3944
|
-
cause:
|
|
3949
|
+
cause: W
|
|
3945
3950
|
});
|
|
3946
3951
|
(P = this.onerror) == null || P.call(this, A);
|
|
3947
3952
|
}
|
|
@@ -4032,7 +4037,7 @@ var A0 = class {
|
|
|
4032
4037
|
(s = this.onerror) == null || s.call(this, y);
|
|
4033
4038
|
return;
|
|
4034
4039
|
}
|
|
4035
|
-
const p = l.body.pipeThrough(new TextDecoderStream()).pipeThrough(new
|
|
4040
|
+
const p = l.body.pipeThrough(new TextDecoderStream()).pipeThrough(new Se()).getReader(), f = async () => {
|
|
4036
4041
|
var y, h, m, v;
|
|
4037
4042
|
try {
|
|
4038
4043
|
for (; ; ) {
|
|
@@ -4044,11 +4049,11 @@ var A0 = class {
|
|
|
4044
4049
|
const R = K.parse(JSON.parse(P));
|
|
4045
4050
|
(y = this.onmessage) == null || y.call(this, R);
|
|
4046
4051
|
} catch (R) {
|
|
4047
|
-
const
|
|
4052
|
+
const z = new C({
|
|
4048
4053
|
message: "MCP HTTP Transport Error: Failed to parse message",
|
|
4049
4054
|
cause: R
|
|
4050
4055
|
});
|
|
4051
|
-
(h = this.onerror) == null || h.call(this,
|
|
4056
|
+
(h = this.onerror) == null || h.call(this, z);
|
|
4052
4057
|
}
|
|
4053
4058
|
}
|
|
4054
4059
|
} catch (b) {
|
|
@@ -4083,7 +4088,7 @@ function U0(t) {
|
|
|
4083
4088
|
return "start" in t && typeof t.start == "function" && "send" in t && typeof t.send == "function" && "close" in t && typeof t.close == "function";
|
|
4084
4089
|
}
|
|
4085
4090
|
var N0 = "1.0.0";
|
|
4086
|
-
function
|
|
4091
|
+
function st({
|
|
4087
4092
|
output: t
|
|
4088
4093
|
}) {
|
|
4089
4094
|
const e = t;
|
|
@@ -4134,7 +4139,7 @@ var Z0 = class {
|
|
|
4134
4139
|
clientInfo: this.clientInfo
|
|
4135
4140
|
}
|
|
4136
4141
|
},
|
|
4137
|
-
resultSchema:
|
|
4142
|
+
resultSchema: zr
|
|
4138
4143
|
});
|
|
4139
4144
|
if (t === void 0)
|
|
4140
4145
|
throw new C({
|
|
@@ -4295,7 +4300,7 @@ var Z0 = class {
|
|
|
4295
4300
|
try {
|
|
4296
4301
|
return this.request({
|
|
4297
4302
|
request: { method: "resources/templates/list" },
|
|
4298
|
-
resultSchema:
|
|
4303
|
+
resultSchema: Jr,
|
|
4299
4304
|
options: t
|
|
4300
4305
|
});
|
|
4301
4306
|
} catch (e) {
|
|
@@ -4382,14 +4387,14 @@ var Z0 = class {
|
|
|
4382
4387
|
additionalProperties: !1
|
|
4383
4388
|
}),
|
|
4384
4389
|
execute: y,
|
|
4385
|
-
toModelOutput:
|
|
4390
|
+
toModelOutput: st
|
|
4386
4391
|
}) : {
|
|
4387
4392
|
description: c,
|
|
4388
4393
|
title: g,
|
|
4389
4394
|
inputSchema: e[s].inputSchema,
|
|
4390
4395
|
...f != null ? { outputSchema: f } : {},
|
|
4391
4396
|
execute: y,
|
|
4392
|
-
toModelOutput:
|
|
4397
|
+
toModelOutput: st
|
|
4393
4398
|
};
|
|
4394
4399
|
o[s] = { ...h, _meta: u };
|
|
4395
4400
|
}
|
|
@@ -4400,9 +4405,9 @@ var Z0 = class {
|
|
|
4400
4405
|
*/
|
|
4401
4406
|
async extractStructuredContent(t, e, r) {
|
|
4402
4407
|
if ("structuredContent" in t && t.structuredContent != null) {
|
|
4403
|
-
const n = await
|
|
4408
|
+
const n = await bt({
|
|
4404
4409
|
value: t.structuredContent,
|
|
4405
|
-
schema:
|
|
4410
|
+
schema: _t(e)
|
|
4406
4411
|
});
|
|
4407
4412
|
if (!n.success)
|
|
4408
4413
|
throw new C({
|
|
@@ -4461,7 +4466,7 @@ var Z0 = class {
|
|
|
4461
4466
|
return this.getPromptInternal({ name: t, args: e, options: r });
|
|
4462
4467
|
}
|
|
4463
4468
|
onElicitationRequest(t, e) {
|
|
4464
|
-
if (t !==
|
|
4469
|
+
if (t !== tt)
|
|
4465
4470
|
throw new C({
|
|
4466
4471
|
message: "Unsupported request schema. Only ElicitationRequestSchema is supported."
|
|
4467
4472
|
});
|
|
@@ -4491,7 +4496,7 @@ var Z0 = class {
|
|
|
4491
4496
|
});
|
|
4492
4497
|
return;
|
|
4493
4498
|
}
|
|
4494
|
-
const e =
|
|
4499
|
+
const e = tt.safeParse({
|
|
4495
4500
|
method: t.method,
|
|
4496
4501
|
params: t.params
|
|
4497
4502
|
});
|
|
@@ -4559,15 +4564,15 @@ var Z0 = class {
|
|
|
4559
4564
|
);
|
|
4560
4565
|
}
|
|
4561
4566
|
};
|
|
4562
|
-
const
|
|
4567
|
+
const q0 = async (t) => {
|
|
4563
4568
|
const e = {};
|
|
4564
4569
|
try {
|
|
4565
4570
|
const r = await t.listTools();
|
|
4566
4571
|
for (const { name: n, description: o, inputSchema: s } of r.tools) {
|
|
4567
4572
|
const a = async (c, d) => t.callTool({ name: n, arguments: c }, { signal: d?.abortSignal });
|
|
4568
|
-
e[n] =
|
|
4573
|
+
e[n] = l2({
|
|
4569
4574
|
description: o,
|
|
4570
|
-
inputSchema:
|
|
4575
|
+
inputSchema: d2({
|
|
4571
4576
|
...s,
|
|
4572
4577
|
properties: s.properties ?? {},
|
|
4573
4578
|
additionalProperties: !1
|
|
@@ -4580,7 +4585,7 @@ const z0 = async (t) => {
|
|
|
4580
4585
|
throw r;
|
|
4581
4586
|
}
|
|
4582
4587
|
};
|
|
4583
|
-
function
|
|
4588
|
+
function z0(t) {
|
|
4584
4589
|
const e = Object.entries(t);
|
|
4585
4590
|
if (e.length === 0)
|
|
4586
4591
|
return "";
|
|
@@ -4630,7 +4635,7 @@ Thought: 用户想要获取今天的日期,我需要调用日期相关的工
|
|
|
4630
4635
|
- 如果不需要调用工具,直接给出最终答案即可
|
|
4631
4636
|
`, r;
|
|
4632
4637
|
}
|
|
4633
|
-
function
|
|
4638
|
+
function it(t, e) {
|
|
4634
4639
|
if (!t || typeof t != "string")
|
|
4635
4640
|
return null;
|
|
4636
4641
|
const r = t.match(/<tool_call>([\s\S]*?)<\/tool_call>/i);
|
|
@@ -4644,8 +4649,8 @@ function at(t, e) {
|
|
|
4644
4649
|
return null;
|
|
4645
4650
|
}
|
|
4646
4651
|
const D0 = {
|
|
4647
|
-
openai:
|
|
4648
|
-
deepseek:
|
|
4652
|
+
openai: m2,
|
|
4653
|
+
deepseek: f2
|
|
4649
4654
|
};
|
|
4650
4655
|
class Zn {
|
|
4651
4656
|
constructor({ llmConfig: e, mcpServers: r }) {
|
|
@@ -4668,11 +4673,18 @@ class Zn {
|
|
|
4668
4673
|
async _createOneClient(e) {
|
|
4669
4674
|
try {
|
|
4670
4675
|
let r;
|
|
4671
|
-
if ("type" in e && e.type.toLocaleLowerCase() === "streamablehttp"
|
|
4676
|
+
if ("type" in e && e.type.toLocaleLowerCase() === "streamablehttp") {
|
|
4677
|
+
const o = e, s = o.headers ? { headers: o.headers } : void 0;
|
|
4678
|
+
r = new me(new URL(o.url), { requestInit: s });
|
|
4679
|
+
} else if ("type" in e && e.type === "sse") {
|
|
4680
|
+
const o = e, s = o.headers ? { headers: o.headers } : void 0;
|
|
4681
|
+
r = new he(new URL(o.url), { requestInit: s });
|
|
4682
|
+
} else "type" in e && e.type === "extension" ? r = new w2(e.sessionId) : "transport" in e ? r = e.transport : r = e;
|
|
4683
|
+
if (e.useAISdkClient ?? !1) {
|
|
4672
4684
|
const o = await j0({ transport: r });
|
|
4673
4685
|
return o.__transport__ = r, o;
|
|
4674
4686
|
} else {
|
|
4675
|
-
const o = new
|
|
4687
|
+
const o = new g2(
|
|
4676
4688
|
{ name: "mcp-web-client", version: "1.0.0" },
|
|
4677
4689
|
{ capabilities: { roots: { listChanged: !0 }, sampling: {}, elicitation: {} } }
|
|
4678
4690
|
);
|
|
@@ -4686,7 +4698,7 @@ class Zn {
|
|
|
4686
4698
|
async _closeOneClient(e) {
|
|
4687
4699
|
try {
|
|
4688
4700
|
const r = e.__transport__;
|
|
4689
|
-
if (r && r instanceof
|
|
4701
|
+
if (r && r instanceof Jt || r && r instanceof Wt)
|
|
4690
4702
|
return;
|
|
4691
4703
|
await r?.terminateSession?.(), await r?.close?.(), await e?.close?.();
|
|
4692
4704
|
} catch {
|
|
@@ -4709,7 +4721,7 @@ class Zn {
|
|
|
4709
4721
|
if (!e)
|
|
4710
4722
|
return null;
|
|
4711
4723
|
try {
|
|
4712
|
-
return typeof e.tools == "function" ? await e.tools() : await
|
|
4724
|
+
return typeof e.tools == "function" ? await e.tools() : await q0(e);
|
|
4713
4725
|
} catch (n) {
|
|
4714
4726
|
return this.onError && this.onError(n?.message || `Failed to query tools for ${r}`, n), console.error(`Failed to query tools for ${r}`, n), null;
|
|
4715
4727
|
}
|
|
@@ -4790,7 +4802,7 @@ class Zn {
|
|
|
4790
4802
|
}
|
|
4791
4803
|
/** 生成 ReAct 模式的系统提示词(包含工具描述) */
|
|
4792
4804
|
_generateReActSystemPrompt(e, r, n) {
|
|
4793
|
-
const o =
|
|
4805
|
+
const o = z0(e);
|
|
4794
4806
|
return n ? `${n}${o}` : `你是一个智能助手,可以通过调用工具来完成任务。
|
|
4795
4807
|
${o}`;
|
|
4796
4808
|
}
|
|
@@ -4817,7 +4829,7 @@ ${o}`;
|
|
|
4817
4829
|
let c = [];
|
|
4818
4830
|
o.message && !o.messages ? c.push({ role: "user", content: o.message }) : o.messages ? c = [...o.messages] : c = [...this.responseMessages];
|
|
4819
4831
|
const d = typeof r == "string" ? r : r?.modelId || "default-model", u = { role: "system", content: this._generateReActSystemPrompt(s, d, o.system) }, g = c[0]?.role === "system" ? c : [u, ...c];
|
|
4820
|
-
return e ===
|
|
4832
|
+
return e === ye ? this._chatReActStream(g, s, d, n, o) : this._chatReActNonStream(g, s, d, n, o);
|
|
4821
4833
|
}
|
|
4822
4834
|
/**
|
|
4823
4835
|
* 检查消息内容是否包含图片
|
|
@@ -4886,7 +4898,7 @@ ${o}`;
|
|
|
4886
4898
|
...y
|
|
4887
4899
|
})).text, v = { role: "assistant", content: m };
|
|
4888
4900
|
d.push(v), a.push(v);
|
|
4889
|
-
const b =
|
|
4901
|
+
const b = it(m, r);
|
|
4890
4902
|
if (!b)
|
|
4891
4903
|
return this.responseMessages = a, {
|
|
4892
4904
|
text: m,
|
|
@@ -4925,7 +4937,7 @@ ${x.success ? JSON.stringify(x.result) : `工具执行失败 - ${x.error}`}
|
|
|
4925
4937
|
m++;
|
|
4926
4938
|
const x = a._buildMessagesForModel(y, h, b), { tools: M, ...P } = s;
|
|
4927
4939
|
delete P.system, delete P.onFinish;
|
|
4928
|
-
const E = await
|
|
4940
|
+
const E = await ye({
|
|
4929
4941
|
...P,
|
|
4930
4942
|
model: c,
|
|
4931
4943
|
messages: x
|
|
@@ -4937,9 +4949,9 @@ ${x.success ? JSON.stringify(x.result) : `工具执行失败 - ${x.error}`}
|
|
|
4937
4949
|
text: L.text
|
|
4938
4950
|
})) : L.type === "text-start" ? p.enqueue({ type: "text-start" }) : L.type === "text-end" || L.type === "finish-step" || L.type === "finish" || L.type === "start" || L.type === "start-step" || p.enqueue(L);
|
|
4939
4951
|
v += R;
|
|
4940
|
-
const
|
|
4941
|
-
h.push(
|
|
4942
|
-
const I =
|
|
4952
|
+
const z = { role: "assistant", content: v };
|
|
4953
|
+
h.push(z), f.push(z);
|
|
4954
|
+
const I = it(v, r);
|
|
4943
4955
|
if (!I) {
|
|
4944
4956
|
p.enqueue({ type: "text-end" }), p.enqueue({ type: "finish-step" }), p.enqueue({ type: "finish" }), p.close(), a.responseMessages = f, d({ messages: f });
|
|
4945
4957
|
return;
|
|
@@ -4954,11 +4966,11 @@ ${x.success ? JSON.stringify(x.result) : `工具执行失败 - ${x.error}`}
|
|
|
4954
4966
|
id: j,
|
|
4955
4967
|
toolName: I.toolName
|
|
4956
4968
|
});
|
|
4957
|
-
const
|
|
4969
|
+
const W = JSON.stringify(I.arguments, null, 2);
|
|
4958
4970
|
p.enqueue({
|
|
4959
4971
|
type: "tool-input-delta",
|
|
4960
4972
|
id: j,
|
|
4961
|
-
delta:
|
|
4973
|
+
delta: W
|
|
4962
4974
|
}), p.enqueue({
|
|
4963
4975
|
type: "tool-input-end",
|
|
4964
4976
|
id: j
|
|
@@ -4975,11 +4987,11 @@ ${x.success ? JSON.stringify(x.result) : `工具执行失败 - ${x.error}`}
|
|
|
4975
4987
|
const { screenshot: L, ...re } = A.result;
|
|
4976
4988
|
Z = re;
|
|
4977
4989
|
}
|
|
4978
|
-
let
|
|
4990
|
+
let J = "";
|
|
4979
4991
|
if (A.success) {
|
|
4980
|
-
Z && Array.isArray(Z.content) && Z.content.length > 0 && Z.content[0].text ?
|
|
4992
|
+
Z && Array.isArray(Z.content) && Z.content.length > 0 && Z.content[0].text ? J = Z.content[0].text : J = JSON.stringify(Z);
|
|
4981
4993
|
let L = `<tool_response>
|
|
4982
|
-
${
|
|
4994
|
+
${J}
|
|
4983
4995
|
</tool_response>`;
|
|
4984
4996
|
te && (L += `
|
|
4985
4997
|
请检查截图以确认操作是否成功。如果成功,请继续下一步;如果失败,请重试。`), p.enqueue({
|
|
@@ -4999,11 +5011,11 @@ ${W}
|
|
|
4999
5011
|
};
|
|
5000
5012
|
h.push(re), f.push(re), v = "";
|
|
5001
5013
|
} else
|
|
5002
|
-
|
|
5014
|
+
J = `工具执行失败 - ${A.error}`, p.enqueue({
|
|
5003
5015
|
type: "tool-error",
|
|
5004
5016
|
toolCallId: j,
|
|
5005
5017
|
input: I.arguments,
|
|
5006
|
-
error: { message:
|
|
5018
|
+
error: { message: J }
|
|
5007
5019
|
});
|
|
5008
5020
|
}
|
|
5009
5021
|
p.enqueue({ type: "text-end" }), p.enqueue({ type: "finish-step" }), p.enqueue({ type: "finish" }), p.close(), a.responseMessages = f, d({ messages: f });
|
|
@@ -5024,7 +5036,7 @@ ${W}
|
|
|
5024
5036
|
const s = this._tempMergeTools(o.tools, !1), a = {
|
|
5025
5037
|
// @ts-ignore ProviderV2 是所有llm的父类, 在每一个具体的llm 类都有一个选择model的函数用法
|
|
5026
5038
|
model: this.llm(r),
|
|
5027
|
-
stopWhen:
|
|
5039
|
+
stopWhen: u2(n),
|
|
5028
5040
|
...o,
|
|
5029
5041
|
tools: s,
|
|
5030
5042
|
activeTools: this._getActiveToolNames(s)
|
|
@@ -5046,16 +5058,16 @@ ${W}
|
|
|
5046
5058
|
return this._chat(Fe, e);
|
|
5047
5059
|
}
|
|
5048
5060
|
async chatStream(e) {
|
|
5049
|
-
return this._chat(
|
|
5061
|
+
return this._chat(ye, e);
|
|
5050
5062
|
}
|
|
5051
5063
|
}
|
|
5052
|
-
let U = null, ue = null,
|
|
5064
|
+
let U = null, ue = null, at = null, ne = 0;
|
|
5053
5065
|
const H0 = "next-sdk-tool-body-glow";
|
|
5054
5066
|
function ee() {
|
|
5055
5067
|
return typeof window < "u" && typeof document < "u";
|
|
5056
5068
|
}
|
|
5057
5069
|
function F0() {
|
|
5058
|
-
if (!ee() ||
|
|
5070
|
+
if (!ee() || at) return;
|
|
5059
5071
|
const t = document.createElement("style");
|
|
5060
5072
|
t.textContent = `
|
|
5061
5073
|
.${H0} {
|
|
@@ -5225,7 +5237,7 @@ function F0() {
|
|
|
5225
5237
|
transform: scale(1) translateY(0);
|
|
5226
5238
|
}
|
|
5227
5239
|
}
|
|
5228
|
-
`, document.head.appendChild(t),
|
|
5240
|
+
`, document.head.appendChild(t), at = t;
|
|
5229
5241
|
}
|
|
5230
5242
|
function B0() {
|
|
5231
5243
|
if (!ee() || U) return;
|
|
@@ -5254,7 +5266,7 @@ function B0() {
|
|
|
5254
5266
|
function V0(t) {
|
|
5255
5267
|
ee() && (B0(), !(!U || !ue) && (U.classList.remove("next-sdk-tool-overlay--exit"), ue.textContent = t.label));
|
|
5256
5268
|
}
|
|
5257
|
-
function
|
|
5269
|
+
function W0() {
|
|
5258
5270
|
if (!U) return;
|
|
5259
5271
|
U.classList.add("next-sdk-tool-overlay--exit");
|
|
5260
5272
|
const t = U;
|
|
@@ -5264,11 +5276,11 @@ function J0() {
|
|
|
5264
5276
|
};
|
|
5265
5277
|
t.addEventListener("animationend", n), r = setTimeout(n, 500);
|
|
5266
5278
|
}
|
|
5267
|
-
function
|
|
5279
|
+
function J0(t) {
|
|
5268
5280
|
ee() && (ne += 1, V0(t));
|
|
5269
5281
|
}
|
|
5270
5282
|
function G0() {
|
|
5271
|
-
!ee() || ne <= 0 || (ne -= 1, ne === 0 &&
|
|
5283
|
+
!ee() || ne <= 0 || (ne -= 1, ne === 0 && W0());
|
|
5272
5284
|
}
|
|
5273
5285
|
function K0(t, e, r) {
|
|
5274
5286
|
if (!r) return;
|
|
@@ -5277,14 +5289,14 @@ function K0(t, e, r) {
|
|
|
5277
5289
|
label: r.label || n
|
|
5278
5290
|
};
|
|
5279
5291
|
}
|
|
5280
|
-
const
|
|
5292
|
+
const jt = "next-sdk:tool-call", Me = "next-sdk:tool-response", Ze = "next-sdk:page-ready", Y0 = "next-sdk:page-leave", Q0 = "next-sdk:remoter-ready", X0 = "next-sdk:route-state-initial", F = /* @__PURE__ */ new Map(), pe = (t) => t.replace(/\/+$/, "") || "/", qe = /* @__PURE__ */ new Set();
|
|
5281
5293
|
function en() {
|
|
5282
|
-
typeof window < "u" &&
|
|
5294
|
+
typeof window < "u" && qe.add({ win: window, origin: window.location.origin || "*" });
|
|
5283
5295
|
}
|
|
5284
5296
|
en();
|
|
5285
|
-
function
|
|
5297
|
+
function ct(t, e) {
|
|
5286
5298
|
const r = { type: t, route: e };
|
|
5287
|
-
|
|
5299
|
+
qe.forEach(({ win: n, origin: o }) => {
|
|
5288
5300
|
try {
|
|
5289
5301
|
n.postMessage(r, o);
|
|
5290
5302
|
} catch {
|
|
@@ -5295,10 +5307,10 @@ function tn() {
|
|
|
5295
5307
|
typeof window > "u" || window.addEventListener("message", (t) => {
|
|
5296
5308
|
if (t.data?.type !== Q0 || !t.source || t.origin !== window.location.origin) return;
|
|
5297
5309
|
const e = t.source;
|
|
5298
|
-
|
|
5310
|
+
qe.add({ win: e, origin: t.origin || "*" });
|
|
5299
5311
|
const r = {
|
|
5300
5312
|
type: X0,
|
|
5301
|
-
toolRouteMap: Array.from(
|
|
5313
|
+
toolRouteMap: Array.from(ze.entries()),
|
|
5302
5314
|
activeRoutes: Array.from(F.keys())
|
|
5303
5315
|
};
|
|
5304
5316
|
try {
|
|
@@ -5308,11 +5320,11 @@ function tn() {
|
|
|
5308
5320
|
});
|
|
5309
5321
|
}
|
|
5310
5322
|
tn();
|
|
5311
|
-
const
|
|
5312
|
-
function zn() {
|
|
5313
|
-
return new Map(qe);
|
|
5314
|
-
}
|
|
5323
|
+
const ze = /* @__PURE__ */ new Map();
|
|
5315
5324
|
function qn() {
|
|
5325
|
+
return new Map(ze);
|
|
5326
|
+
}
|
|
5327
|
+
function zn() {
|
|
5316
5328
|
return new Set(F.keys());
|
|
5317
5329
|
}
|
|
5318
5330
|
let Y = null;
|
|
@@ -5394,11 +5406,11 @@ function nn(t, e, r = 3e4, n) {
|
|
|
5394
5406
|
u(), c(new Error(`工具 [${t}] 调用超时 (${r}ms),请检查目标页面是否正确调用了 registerPageTool`));
|
|
5395
5407
|
}, r);
|
|
5396
5408
|
const g = (m) => {
|
|
5397
|
-
m.source === window && m.data?.type ===
|
|
5409
|
+
m.source === window && m.data?.type === Me && m.data.callId === s && (u(), m.data.error ? c(new Error(m.data.error)) : a(m.data.result));
|
|
5398
5410
|
};
|
|
5399
5411
|
window.addEventListener("message", g);
|
|
5400
5412
|
const p = () => {
|
|
5401
|
-
window.postMessage({ type:
|
|
5413
|
+
window.postMessage({ type: jt, callId: s, toolName: t, route: e, input: o }, window.location.origin || "*");
|
|
5402
5414
|
};
|
|
5403
5415
|
let f = !1;
|
|
5404
5416
|
const y = () => {
|
|
@@ -5406,7 +5418,7 @@ function nn(t, e, r = 3e4, n) {
|
|
|
5406
5418
|
};
|
|
5407
5419
|
(async () => {
|
|
5408
5420
|
try {
|
|
5409
|
-
if (n &&
|
|
5421
|
+
if (n && J0(n), F.get(e)) {
|
|
5410
5422
|
y();
|
|
5411
5423
|
return;
|
|
5412
5424
|
}
|
|
@@ -5428,7 +5440,7 @@ function Fn(t) {
|
|
|
5428
5440
|
if (typeof a == "function")
|
|
5429
5441
|
return c(o, s, a);
|
|
5430
5442
|
const { route: d, timeout: l, invokeEffect: u } = a;
|
|
5431
|
-
|
|
5443
|
+
ze.set(o, d);
|
|
5432
5444
|
const g = K0(o, s?.title, u);
|
|
5433
5445
|
return c(o, s, nn(o, d, l, g));
|
|
5434
5446
|
} : Reflect.get(e, r, n);
|
|
@@ -5437,16 +5449,16 @@ function Fn(t) {
|
|
|
5437
5449
|
}
|
|
5438
5450
|
function Bn(t) {
|
|
5439
5451
|
const { route: e, handlers: r } = t, n = (a) => a.replace(/\/+$/, "") || "/", o = n(e ?? window.location.pathname), s = async (a) => {
|
|
5440
|
-
if (a.source !== window || a.data?.type !==
|
|
5452
|
+
if (a.source !== window || a.data?.type !== jt || n(String(a.data?.route ?? "")) !== o || !(a.data.toolName in r))
|
|
5441
5453
|
return;
|
|
5442
5454
|
const { callId: c, toolName: d, input: l } = a.data;
|
|
5443
5455
|
try {
|
|
5444
5456
|
const u = await r[d](l);
|
|
5445
|
-
window.postMessage({ type:
|
|
5457
|
+
window.postMessage({ type: Me, callId: c, result: u }, window.location.origin || "*");
|
|
5446
5458
|
} catch (u) {
|
|
5447
5459
|
window.postMessage(
|
|
5448
5460
|
{
|
|
5449
|
-
type:
|
|
5461
|
+
type: Me,
|
|
5450
5462
|
callId: c,
|
|
5451
5463
|
error: u instanceof Error ? u.message : String(u)
|
|
5452
5464
|
},
|
|
@@ -5454,12 +5466,12 @@ function Bn(t) {
|
|
|
5454
5466
|
);
|
|
5455
5467
|
}
|
|
5456
5468
|
};
|
|
5457
|
-
return F.set(o, !0), window.addEventListener("message", s),
|
|
5458
|
-
F.delete(o), window.removeEventListener("message", s),
|
|
5469
|
+
return F.set(o, !0), window.addEventListener("message", s), ct(Ze, o), () => {
|
|
5470
|
+
F.delete(o), window.removeEventListener("message", s), ct(Y0, o);
|
|
5459
5471
|
};
|
|
5460
5472
|
}
|
|
5461
|
-
const
|
|
5462
|
-
function
|
|
5473
|
+
const Zt = /^\.\/[^/]+\/SKILL\.md$/, on = /^---\s*\n([\s\S]+?)\s*\n---/;
|
|
5474
|
+
function qt(t) {
|
|
5463
5475
|
const e = t.match(on);
|
|
5464
5476
|
if (!e?.[1]) return null;
|
|
5465
5477
|
const r = e[1], n = r.match(/^name:\s*(.+)$/m), o = r.match(/^description:\s*(.+)$/m), s = n?.[1]?.trim(), a = o?.[1]?.trim();
|
|
@@ -5475,14 +5487,14 @@ function V(t) {
|
|
|
5475
5487
|
}
|
|
5476
5488
|
function sn(t) {
|
|
5477
5489
|
const e = V(t);
|
|
5478
|
-
return Object.keys(e).filter((r) =>
|
|
5490
|
+
return Object.keys(e).filter((r) => Zt.test(r));
|
|
5479
5491
|
}
|
|
5480
5492
|
function Vn(t) {
|
|
5481
|
-
const e = V(t), r = Object.keys(e).filter((o) =>
|
|
5493
|
+
const e = V(t), r = Object.keys(e).filter((o) => Zt.test(o)), n = [];
|
|
5482
5494
|
for (const o of r) {
|
|
5483
5495
|
const s = e[o];
|
|
5484
5496
|
if (!s) continue;
|
|
5485
|
-
const a =
|
|
5497
|
+
const a = qt(s);
|
|
5486
5498
|
a && n.push({
|
|
5487
5499
|
name: a.name,
|
|
5488
5500
|
description: a.description,
|
|
@@ -5491,7 +5503,7 @@ function Vn(t) {
|
|
|
5491
5503
|
}
|
|
5492
5504
|
return n;
|
|
5493
5505
|
}
|
|
5494
|
-
function
|
|
5506
|
+
function Wn(t) {
|
|
5495
5507
|
return t.length === 0 ? "" : `## 可用技能
|
|
5496
5508
|
|
|
5497
5509
|
${t.map((r) => `- **${r.name}**: ${r.description}`).join(`
|
|
@@ -5499,11 +5511,11 @@ ${t.map((r) => `- **${r.name}**: ${r.description}`).join(`
|
|
|
5499
5511
|
|
|
5500
5512
|
当需要用到某技能时,请使用 get_skill_content 工具获取该技能的完整文档内容。`;
|
|
5501
5513
|
}
|
|
5502
|
-
function
|
|
5514
|
+
function Jn(t) {
|
|
5503
5515
|
const e = V(t);
|
|
5504
5516
|
return Object.keys(e);
|
|
5505
5517
|
}
|
|
5506
|
-
function
|
|
5518
|
+
function be(t, e) {
|
|
5507
5519
|
const r = V(t), n = r[e];
|
|
5508
5520
|
if (n) return n;
|
|
5509
5521
|
const o = e.replace(/^\.?\//, "/"), s = Object.keys(r).find((a) => a.endsWith(o));
|
|
@@ -5515,7 +5527,7 @@ function an(t, e) {
|
|
|
5515
5527
|
for (const s of n) {
|
|
5516
5528
|
const a = r[s];
|
|
5517
5529
|
if (a) {
|
|
5518
|
-
const c =
|
|
5530
|
+
const c = qt(a);
|
|
5519
5531
|
if (c && c.name === e)
|
|
5520
5532
|
return s;
|
|
5521
5533
|
}
|
|
@@ -5533,7 +5545,7 @@ const cn = G.object({
|
|
|
5533
5545
|
function Gn(t) {
|
|
5534
5546
|
const e = V(t);
|
|
5535
5547
|
return {
|
|
5536
|
-
get_skill_content:
|
|
5548
|
+
get_skill_content: p2({
|
|
5537
5549
|
description: "根据技能名称或文档路径获取该技能的完整文档内容。如果你想根据相对路径查阅文件,请务必同时提供你当前所在的文件路径 currentPath。",
|
|
5538
5550
|
inputSchema: cn,
|
|
5539
5551
|
execute: (n) => {
|
|
@@ -5546,11 +5558,11 @@ function Gn(t) {
|
|
|
5546
5558
|
p >= 0 && (l = a.slice(0, p));
|
|
5547
5559
|
}
|
|
5548
5560
|
const u = `http://localhost/${l}/`;
|
|
5549
|
-
if (d = "." + new URL(s, u).pathname, c =
|
|
5561
|
+
if (d = "." + new URL(s, u).pathname, c = be(e, d), c === void 0 && (s.startsWith("./") || s.startsWith("../")) && a) {
|
|
5550
5562
|
const p = a.split("/");
|
|
5551
5563
|
if (p.length >= 2) {
|
|
5552
5564
|
const y = `http://localhost/${p[1]}/`, m = "." + new URL(s, y).pathname;
|
|
5553
|
-
c =
|
|
5565
|
+
c = be(e, m), c && (d = m);
|
|
5554
5566
|
}
|
|
5555
5567
|
}
|
|
5556
5568
|
if (c && !e[d]) {
|
|
@@ -5559,7 +5571,7 @@ function Gn(t) {
|
|
|
5559
5571
|
}
|
|
5560
5572
|
} else if (o) {
|
|
5561
5573
|
const l = an(e, o);
|
|
5562
|
-
l && (d = l, c =
|
|
5574
|
+
l && (d = l, c = be(e, l));
|
|
5563
5575
|
}
|
|
5564
5576
|
return c === void 0 ? {
|
|
5565
5577
|
error: "未找到对应技能文档",
|
|
@@ -5577,16 +5589,16 @@ export {
|
|
|
5577
5589
|
Qn as Ajv,
|
|
5578
5590
|
ro as AuthClientProvider,
|
|
5579
5591
|
Nn as ContentScriptServerTransport,
|
|
5580
|
-
|
|
5592
|
+
w2 as ExtensionClientTransport,
|
|
5581
5593
|
Un as ExtensionPageServerTransport,
|
|
5582
5594
|
ho as InMemoryTransport,
|
|
5583
5595
|
Y0 as MSG_PAGE_LEAVE,
|
|
5584
5596
|
Q0 as MSG_REMOTER_READY,
|
|
5585
5597
|
X0 as MSG_ROUTE_STATE_INITIAL,
|
|
5586
|
-
|
|
5598
|
+
v2 as QrCode,
|
|
5587
5599
|
oo as ResourceTemplate,
|
|
5588
5600
|
io as UriTemplate,
|
|
5589
|
-
|
|
5601
|
+
g2 as WebMcpClient,
|
|
5590
5602
|
kn as WebMcpServer,
|
|
5591
5603
|
co as completable,
|
|
5592
5604
|
In as createMessageChannelClientTransport,
|
|
@@ -5596,23 +5608,23 @@ export {
|
|
|
5596
5608
|
En as createSSEClientTransport,
|
|
5597
5609
|
Gn as createSkillTools,
|
|
5598
5610
|
Rn as createStreamableHTTPClientTransport,
|
|
5599
|
-
|
|
5600
|
-
|
|
5601
|
-
|
|
5611
|
+
Wn as formatSkillsForSystemPrompt,
|
|
5612
|
+
q0 as getAISDKTools,
|
|
5613
|
+
zn as getActiveRoutes,
|
|
5602
5614
|
uo as getDisplayName,
|
|
5603
5615
|
an as getMainSkillPathByName,
|
|
5604
5616
|
sn as getMainSkillPaths,
|
|
5605
|
-
|
|
5606
|
-
|
|
5617
|
+
be as getSkillMdContent,
|
|
5618
|
+
Jn as getSkillMdPaths,
|
|
5607
5619
|
Vn as getSkillOverviews,
|
|
5608
|
-
|
|
5620
|
+
qn as getToolRouteMap,
|
|
5609
5621
|
$n as isMcpClient,
|
|
5610
5622
|
Mn as isMcpServer,
|
|
5611
5623
|
On as isMessageChannelClientTransport,
|
|
5612
5624
|
Tn as isMessageChannelServerTransport,
|
|
5613
5625
|
An as isSSEClientTransport,
|
|
5614
|
-
|
|
5615
|
-
|
|
5626
|
+
y2 as isStreamableHTTPClientTransport,
|
|
5627
|
+
qt as parseSkillFrontMatter,
|
|
5616
5628
|
Hn as registerNavigateTool,
|
|
5617
5629
|
Bn as registerPageTool,
|
|
5618
5630
|
Dn as setNavigator,
|