handmux 0.29.2 → 0.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/connectors/claude/index.js +33 -562
- package/dist/connectors/codebuddy/index.js +49 -0
- package/dist/connectors/hookBridge.js +560 -0
- package/dist/hooks/handmux-codebuddy-notify.sh +116 -0
- package/dist/hooks/handmux-notify.sh +2 -0
- package/dist/hooks/handmux-write.cjs +72 -5
- package/dist/package.json +13 -13
- package/dist/public/assets/_basePickBy-BzC0P9Wg.js +1 -0
- package/dist/public/assets/_baseUniq-DNOfPYVY.js +1 -0
- package/dist/public/assets/abnfDiagram-O67JEVCF-BsRDIQEB.js +1 -0
- package/dist/public/assets/arc-DLtLfMnX.js +1 -0
- package/dist/public/assets/architectureDiagram-NJMV4G6O-DoIXhWqZ.js +36 -0
- package/dist/public/assets/blockDiagram-BEXU5L5S-W0HiOcVA.js +140 -0
- package/dist/public/assets/c4Diagram-YGBWAQC7-72uAUMvX.js +38 -0
- package/dist/public/assets/channel-CzALSnb0.js +1 -0
- package/dist/public/assets/chunk-2Q5K7J3B-B9wSRFQ0.js +1 -0
- package/dist/public/assets/chunk-3FUC2YCW-ryphp4s0.js +2 -0
- package/dist/public/assets/chunk-5VM5RSS4-Cm4KeKby.js +15 -0
- package/dist/public/assets/chunk-GTNCS2PH-Du4_i7r3.js +88 -0
- package/dist/public/assets/chunk-GWA4HPMP-CL1biVIA.js +1 -0
- package/dist/public/assets/chunk-JWPE2WC7-B8eAVfuB.js +1 -0
- package/dist/public/assets/chunk-NETBCI7D-D273GzYg.js +1 -0
- package/dist/public/assets/chunk-WEXAMYUT-DipTfRbc.js +1 -0
- package/dist/public/assets/chunk-XXDRQBXY-D4SqXrQ8.js +1 -0
- package/dist/public/assets/classDiagram-v2-NBCMYWYE-PrpnIXcA.js +217 -0
- package/dist/public/assets/cose-bilkent-JH36ORCC-BfcYMYTa.js +1 -0
- package/dist/public/assets/cynefin-OW5HDTMX-Du659bmz.js +178 -0
- package/dist/public/assets/cynefinDiagram-VND7K2PF-DR_2Copy.js +62 -0
- package/dist/public/assets/cytoscape.esm-C5JX3QLV.js +331 -0
- package/dist/public/assets/dagre-6A5THRUB-COsChaV5.js +4 -0
- package/dist/public/assets/defaultLocale-CrowFXzY.js +1 -0
- package/dist/public/assets/diagram-22UHCM2B-Cx2T1HvL.js +200 -0
- package/dist/public/assets/diagram-3UASUU5V-Cp04LOka.js +24 -0
- package/dist/public/assets/diagram-ATOU4E4O-DlqFSshY.js +3 -0
- package/dist/public/assets/diagram-CDSNMT55-goq40ctA.js +30 -0
- package/dist/public/assets/diagram-MLGK6HIB-Bdzjsy4r.js +24 -0
- package/dist/public/assets/diagram-MPIPVDR6-DtU7cM6P.js +41 -0
- package/dist/public/assets/ebnfDiagram-ZINNZB2B-XyVCfmED.js +1 -0
- package/dist/public/assets/elk-276RUBZZ-aHVIw-2x.js +27 -0
- package/dist/public/assets/erDiagram-OPXOYQCR-Bq_PhTIL.js +99 -0
- package/dist/public/assets/flowDiagram-KWPJA3E3-WuqnDSiF.js +213 -0
- package/dist/public/assets/ganttDiagram-FUAMR5RP-DZ4lXzkC.js +292 -0
- package/dist/public/assets/gitGraphDiagram-X574FWY7-t6l07b9g.js +106 -0
- package/dist/public/assets/graph-jWsD5Ro-.js +1 -0
- package/dist/public/assets/index-DiYff8oR.css +32 -0
- package/dist/public/assets/index-YZNK723o.js +203 -0
- package/dist/public/assets/infoDiagram-VRGFBTTK-iUGqoOFp.js +2 -0
- package/dist/public/assets/init-Gi6I4Gst.js +1 -0
- package/dist/public/assets/ishikawaDiagram-OU5B5YK6-B0TmoUOK.js +70 -0
- package/dist/public/assets/journeyDiagram-ZHPQQLJL-CQE61MCu.js +139 -0
- package/dist/public/assets/kanban-definition-PNTS6WVX-D2MWCUyS.js +89 -0
- package/dist/public/assets/katex-C5jXJg4s.js +257 -0
- package/dist/public/assets/linear-WKGxVNP1.js +1 -0
- package/dist/public/assets/mermaid.core-DPEwUsaj.js +311 -0
- package/dist/public/assets/mindmap-definition-NLK3R4M7-DsYEsBsI.js +96 -0
- package/dist/public/assets/ordinal-Cboi1Yqb.js +1 -0
- package/dist/public/assets/pegDiagram-GJSIUBJH-BS52Fbxt.js +1 -0
- package/dist/public/assets/pieDiagram-5QR66LMP-D4o8g7nW.js +39 -0
- package/dist/public/assets/quadrantDiagram-O4NWA36T-DnYUxWll.js +7 -0
- package/dist/public/assets/railroadDiagram-XR7U4H2S-BKy_7ULV.js +1 -0
- package/dist/public/assets/requirementDiagram-PLB6GJNP-Ce5F4u8K.js +84 -0
- package/dist/public/assets/sankeyDiagram-IPEJSGJF-CCJDrut_.js +40 -0
- package/dist/public/assets/sequenceDiagram-PO4LG4MO-D5E8ISM1.js +169 -0
- package/dist/public/assets/sizeCapture-INFHLROL-BW3KmxDN.js +1 -0
- package/dist/public/assets/stateDiagram-v2-GCMORJYK-Bw2ZzQOE.js +291 -0
- package/dist/public/assets/swimlanes-2SLR337P-CLJ-6Ex_.js +1 -0
- package/dist/public/assets/swimlanesDiagram-TC7HE7FX-BD8rQfV7.js +8 -0
- package/dist/public/assets/timeline-definition-EJHVYXUP-C_lFJ-4W.js +120 -0
- package/dist/public/assets/usecaseDiagram-POWQR4AR-DWXawL2A.js +370 -0
- package/dist/public/assets/vennDiagram-UO4OBE2U-D4O5oZal.js +34 -0
- package/dist/public/assets/wardleyDiagram-VNRHLVJA-B6HElk__.js +78 -0
- package/dist/public/assets/xychartDiagram-PMCCYNJV-C5OAXnJy.js +7 -0
- package/dist/public/index.html +2 -2
- package/dist/src/agent-runtime/adapter.js +54 -10
- package/dist/src/agent-runtime/builtinRuntime.js +67 -6
- package/dist/src/agent-runtime/conversation.js +49 -9
- package/dist/src/agent-runtime/interaction.js +26 -12
- package/dist/src/agent-runtime/interactionLiveHub.js +4 -0
- package/dist/src/agent-runtime/runtime.js +83 -27
- package/dist/src/agent-runtime/tmuxRuntime.js +36 -6
- package/dist/src/agents/claude.js +2 -19
- package/dist/src/agents/claudeInteraction.js +2 -132
- package/dist/src/agents/claudePaneInput.js +22 -22
- package/dist/src/agents/codebuddy.js +100 -0
- package/dist/src/agents/codebuddyConversation.js +414 -0
- package/dist/src/agents/codebuddyInteraction.js +4 -0
- package/dist/src/agents/codebuddyNativeTail.js +206 -0
- package/dist/src/agents/codebuddyPaneInput.js +76 -0
- package/dist/src/agents/codebuddyTranscriptParse.js +178 -0
- package/dist/src/agents/hookEvents.js +143 -0
- package/dist/src/agents/hookInteraction.js +178 -0
- package/dist/src/agents/index.js +2 -1
- package/dist/src/claudeEvents.js +4 -5
- package/dist/src/cli/agentIntegration.js +31 -2
- package/dist/src/cli/codebuddyHooks.js +286 -0
- package/dist/src/cli/hookScaffold.js +25 -12
- package/dist/src/cli/i18n/en.js +1 -1
- package/dist/src/cli/i18n/zh.js +1 -1
- package/dist/src/cli/state.js +4 -0
- package/dist/src/cli/supervisor.js +2 -1
- package/dist/src/codebuddyEvents.js +151 -0
- package/dist/src/docs.js +21 -7
- package/dist/src/logDetail.js +27 -0
- package/dist/src/paneInput.js +107 -10
- package/dist/src/pendingPrompt.js +21 -5
- package/dist/src/routes/files.js +4 -1
- package/dist/src/routes/system.js +12 -2
- package/dist/src/server.js +69 -8
- package/dist/src/trimCapture.js +1 -1
- package/dist/src/workspace/checkpointer.js +48 -4
- package/dist/src/workspace/lock.js +54 -10
- package/dist/src/workspace/runtime.js +23 -8
- package/dist/src/workspaceProtocol.js +1 -0
- package/package.json +4 -4
- package/dist/public/assets/index-2ghkmGbT.js +0 -356
- package/dist/public/assets/index-BjnnFTLC.css +0 -32
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
# 只做本地落盘:更新 JSON latest state,并在启用时追加有界 Bridge event spool。不联网、
|
|
8
8
|
# 不依赖服务进程是否在跑 → 永不阻塞 Claude(始终 exit 0)。服务端/Connector 稍后消费这些文件。
|
|
9
9
|
# 真正的读-改-写交给同目录的 handmux-write.js(node:真 JSON 解析 + 文件锁,多 pane 并发 hook 不丢更新)。
|
|
10
|
+
HANDMUX_AGENT=claude
|
|
11
|
+
export HANDMUX_AGENT
|
|
10
12
|
CFG="$(dirname "$0")/handmux-notify.env"
|
|
11
13
|
[ -f "$CFG" ] && . "$CFG"
|
|
12
14
|
PANE="${CLAUDE_PANE:-$TMUX_PANE}"
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
// handmux hook writer. Updates one JSON latest-state file keyed by tmux pane and, when configured,
|
|
3
|
+
// reports the Agent named by HANDMUX_AGENT (its notify script sets it) — defaulting to claude so an
|
|
4
|
+
// already-deployed script keeps writing exactly what it wrote before.
|
|
3
5
|
// appends the same effective lifecycle edge to a bounded durable Connector spool. Invoked by notify.sh:
|
|
4
6
|
// node handmux-write.cjs <file> <pane> <src> <ts> <host> <event-dir>
|
|
5
7
|
// [claude-pid] [claude-lstart] [claude-tty]
|
|
@@ -15,6 +17,10 @@
|
|
|
15
17
|
// or corrupt the file. Best-effort throughout and silent — the hook is fire-and-forget and must never
|
|
16
18
|
// fail Claude (the shell wrapper swallows errors and always exits 0).
|
|
17
19
|
const fs = require('node:fs');
|
|
20
|
+
|
|
21
|
+
// Which Agent this state and spool belong to. This writer is shared by every Agent's notify script, so the
|
|
22
|
+
// marking comes from the caller instead of a literal here.
|
|
23
|
+
const AGENT = String(process.env.HANDMUX_AGENT || '').trim() || 'claude';
|
|
18
24
|
const path = require('node:path');
|
|
19
25
|
|
|
20
26
|
const crypto = require('node:crypto');
|
|
@@ -51,6 +57,51 @@ function sameSourceProcess(previous) {
|
|
|
51
57
|
&& prior.tty === sourceProcess.tty;
|
|
52
58
|
}
|
|
53
59
|
|
|
60
|
+
// Same generation, but only on positive evidence. sameSourceProcess above answers "may I REVOKE what this row
|
|
61
|
+
// says?", and there an absent fingerprint is deliberately permissive — the Runtime independently verifies the
|
|
62
|
+
// process before anything is published. Carrying a pane's session forward is the opposite kind of claim: it
|
|
63
|
+
// ASSERTS "this pane is running that session", so an unproven match must not license it. Without that
|
|
64
|
+
// distinction a fingerprint that could not be determined (measured: a pane TTY carrying two rows) would let a
|
|
65
|
+
// brand-new process inherit a dead session's binding, and the phone's 对话 entry would open onto a stranger's
|
|
66
|
+
// transcript.
|
|
67
|
+
function sameKnownProcess(previous) {
|
|
68
|
+
const prior = previous?.process;
|
|
69
|
+
if (!sourceProcess || !prior) return false;
|
|
70
|
+
return prior.pid === sourceProcess.pid
|
|
71
|
+
&& prior.startedAt === sourceProcess.startedAt
|
|
72
|
+
&& prior.tty === sourceProcess.tty;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// A pane's SESSION is a property of the pane, not of whichever event happens to arrive next. Some
|
|
76
|
+
// Notifications carry no session_id at all — measured live: CodeBuddy fires `auth_success` for every running
|
|
77
|
+
// instance when its token refreshes, and two panes lost their binding in the same second — and this row is
|
|
78
|
+
// exactly where everything downstream reads that binding from: the Connector derives the run's session from
|
|
79
|
+
// it, and the phone's 对话 entry depends on it. Replacing the row wholesale with a session-less event erased
|
|
80
|
+
// the binding until that pane's next prompt, which for an idle pane can be a long time.
|
|
81
|
+
//
|
|
82
|
+
// Carry the identity forward when the event has none — but only while the same process owns the pane, so a
|
|
83
|
+
// replacement process can never inherit the session of a dead one. `cwd` is deliberately not carried: it can
|
|
84
|
+
// legitimately change between events, and the transcript is already identified by session (or by the pid
|
|
85
|
+
// registry, which knows the pane's own cwd).
|
|
86
|
+
// The only Notifications that say anything about the pane's turn — everything else is noise that must not
|
|
87
|
+
// overwrite the row (see the branch in update()). Both kinds are the same two the readers classify.
|
|
88
|
+
const PANE_STATE_NOTIFICATIONS = new Set(['permission_prompt', 'idle_prompt']);
|
|
89
|
+
|
|
90
|
+
const PANE_IDENTITY_FIELDS = ['session_id', 'transcript_path'];
|
|
91
|
+
function withPaneIdentity(payload, previous) {
|
|
92
|
+
if (!payload || typeof payload !== 'object' || Array.isArray(payload)) return payload;
|
|
93
|
+
const prior = previous && previous.payload;
|
|
94
|
+
if (!prior || typeof prior !== 'object' || Array.isArray(prior) || !sameKnownProcess(previous)) return payload;
|
|
95
|
+
const missing = PANE_IDENTITY_FIELDS.filter((field) => (
|
|
96
|
+
payload[field] === undefined && prior[field] !== undefined
|
|
97
|
+
));
|
|
98
|
+
if (missing.length === 0) return payload;
|
|
99
|
+
return Object.fromEntries([
|
|
100
|
+
...Object.entries(payload),
|
|
101
|
+
...missing.map((field) => [field, prior[field]]),
|
|
102
|
+
]);
|
|
103
|
+
}
|
|
104
|
+
|
|
54
105
|
let payload = {};
|
|
55
106
|
try { payload = JSON.parse(fs.readFileSync(0, 'utf8') || '{}'); } catch { /* unreadable stdin → {} */ }
|
|
56
107
|
|
|
@@ -129,8 +180,8 @@ function writeGapMarker(value) {
|
|
|
129
180
|
fs.writeFileSync(temporary, JSON.stringify({
|
|
130
181
|
version: 1,
|
|
131
182
|
type: 'gap',
|
|
132
|
-
agent:
|
|
133
|
-
eventId:
|
|
183
|
+
agent: AGENT,
|
|
184
|
+
eventId: `${AGENT}-gap-${Date.now()}-${process.pid}`,
|
|
134
185
|
paneId: value.paneId,
|
|
135
186
|
sessionId: typeof value.sessionId === 'string' ? value.sessionId : undefined,
|
|
136
187
|
...(value.process ? { process: value.process } : {}),
|
|
@@ -172,8 +223,8 @@ function writeBridgeEvent(sequence, rawTs, payload) {
|
|
|
172
223
|
const event = {
|
|
173
224
|
version: 1,
|
|
174
225
|
type: 'event',
|
|
175
|
-
agent:
|
|
176
|
-
eventId:
|
|
226
|
+
agent: AGENT,
|
|
227
|
+
eventId: `${AGENT}-hook-${sequence}`,
|
|
177
228
|
sequence,
|
|
178
229
|
paneId: pane,
|
|
179
230
|
src,
|
|
@@ -235,6 +286,22 @@ function update() {
|
|
|
235
286
|
// PermissionRequest is the authoritative opening edge. Claude later emits a generic Notification for
|
|
236
287
|
// the same blocked gate; retaining the earlier detailed row also prevents a second canonical unread.
|
|
237
288
|
applied = false;
|
|
289
|
+
} else if (src === 'notify' && !PANE_STATE_NOTIFICATIONS.has(payload?.notification_type)) {
|
|
290
|
+
// A Notification this pipeline does not act on — measured live: `auth_success`, which CodeBuddy fires
|
|
291
|
+
// for every running instance when its token refreshes (CodeBuddy's vocabulary also has
|
|
292
|
+
// `elicitation_dialog`, which no reader maps either). It reports nothing about the pane's turn, yet
|
|
293
|
+
// recording it as the pane's `src` REPLACED what the pane was actually doing — and this row is the only
|
|
294
|
+
// place the Connector, the roster and the conversation Core read that from. The pane's state then
|
|
295
|
+
// resolved to nothing at all: measured on this machine, two panes sat at an unresolvable state for
|
|
296
|
+
// hours, and a message queued for one of them waited for `idle` for seventeen hours without ever being
|
|
297
|
+
// sent (the Core only dispatches a queue when the session reads idle). It also cleared a live card —
|
|
298
|
+
// including 需要你, when a token refresh happened while a gate was open — and erased the pane's session
|
|
299
|
+
// binding on the way, which is the other half of what this function guards.
|
|
300
|
+
//
|
|
301
|
+
// So ignore the noise rather than let it ratchet the pane's record to "nothing known". The pane keeps
|
|
302
|
+
// the last event that actually said something, exactly as the two branches above keep a richer or a
|
|
303
|
+
// resting row.
|
|
304
|
+
applied = false;
|
|
238
305
|
} else if (src === 'end') {
|
|
239
306
|
// SessionEnd drops the pane on a clean exit. But /clear (and /resume) END the old session AND START a
|
|
240
307
|
// new one — SessionEnd(old) + SessionStart(new) fire as two async hooks, in either order. A late end for
|
|
@@ -249,7 +316,7 @@ function update() {
|
|
|
249
316
|
// one durable source order. Existing readers ignore the additive field.
|
|
250
317
|
const sequence = safeSequence(sequenceFloor);
|
|
251
318
|
obj[pane] = {
|
|
252
|
-
ts: Number(ts) || 0, src, host, payload, agent:
|
|
319
|
+
ts: Number(ts) || 0, src, host, payload: withPaneIdentity(payload, previous), agent: AGENT,
|
|
253
320
|
...(sourceProcess ? { process: sourceProcess } : {}),
|
|
254
321
|
...(sequence === null ? {} : { sequence }),
|
|
255
322
|
};
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "handmux",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.31.0",
|
|
4
4
|
"description": "A mobile vibe-coding cockpit — built on tmux: drive your live session, Claude Code / Codex — anything a terminal can run — from your phone.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "AGPL-3.0-only",
|
|
@@ -75,6 +75,18 @@
|
|
|
75
75
|
"vitest": "^2.0.0"
|
|
76
76
|
},
|
|
77
77
|
"whatsNew": [
|
|
78
|
+
{
|
|
79
|
+
"version": "0.31.0",
|
|
80
|
+
"date": "2026-09-22",
|
|
81
|
+
"zh": "CodeBuddy 对话接入 · Agent 状态更可靠",
|
|
82
|
+
"en": "CodeBuddy chat support · more reliable Agent state"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"version": "0.30.0",
|
|
86
|
+
"date": "2026-09-19",
|
|
87
|
+
"zh": "文档预览全面升级:朗读、目录、查找、图表",
|
|
88
|
+
"en": "A full document reader: read-aloud, outline, search, diagrams"
|
|
89
|
+
},
|
|
78
90
|
{
|
|
79
91
|
"version": "0.29.2",
|
|
80
92
|
"date": "2026-09-18",
|
|
@@ -110,18 +122,6 @@
|
|
|
110
122
|
"date": "2026-09-08",
|
|
111
123
|
"zh": "腾讯语音 · 终端光标修复 · Codex 对话恢复",
|
|
112
124
|
"en": "Tencent voice · terminal cursor fixes · Codex chat recovery"
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
"version": "0.27.0",
|
|
116
|
-
"date": "2026-09-05",
|
|
117
|
-
"zh": "腾讯语音输入 · 终端输入更准确",
|
|
118
|
-
"en": "Tencent voice input · more accurate terminal typing"
|
|
119
|
-
},
|
|
120
|
-
{
|
|
121
|
-
"version": "0.26.0",
|
|
122
|
-
"date": "2026-09-04",
|
|
123
|
-
"zh": "对话精细复制 · Pi 上下文状态",
|
|
124
|
-
"en": "Precise chat copy · Pi context status"
|
|
125
125
|
}
|
|
126
126
|
]
|
|
127
127
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Y as or,V as d,B as F,C as m,N as T,T as q,u as H,X as W,f as fr,m as ur,a2 as cr,$ as O,a5 as gr,G as Y,a7 as lr,h as dr,q as br,U as E,b as M,W as z,H as w,v as X,a0 as y,P as pr,a as yr,c as Tr,M as J,F as hr,t as $,l as vr,j as Ar,g as mr,J as Or,z as Q,a8 as wr,p as $r}from"./_baseUniq-DNOfPYVY.js";var Ir=/\s/;function xr(r){for(var n=r.length;n--&&Ir.test(r.charAt(n)););return n}var Pr=/^\s+/;function jr(r){return r&&r.slice(0,xr(r)+1).replace(Pr,"")}var B=NaN,Sr=/^[-+]0x[0-9a-f]+$/i,Fr=/^0b[01]+$/i,Er=/^0o[0-7]+$/i,Mr=parseInt;function Br(r){if(typeof r=="number")return r;if(or(r))return B;if(d(r)){var n=typeof r.valueOf=="function"?r.valueOf():r;r=d(n)?n+"":n}if(typeof r!="string")return r===0?r:+r;r=jr(r);var t=Fr.test(r);return t||Er.test(r)?Mr(r.slice(2),t?2:8):Sr.test(r)?B:+r}var C=1/0,Cr=17976931348623157e292;function _r(r){if(!r)return r===0?r:0;if(r=Br(r),r===C||r===-C){var n=r<0?-1:1;return n*Cr}return r===r?r:0}function Ur(r){var n=_r(r),t=n%1;return n===n?t?n-t:n:0}var _=Object.create,Lr=function(){function r(){}return function(n){if(!d(n))return{};if(_)return _(n);r.prototype=n;var t=new r;return r.prototype=void 0,t}}();function Nr(r,n){var t=-1,e=r.length;for(n||(n=Array(e));++t<e;)n[t]=r[t];return n}function Z(r,n,t){n=="__proto__"&&F?F(r,n,{configurable:!0,enumerable:!0,value:t,writable:!0}):r[n]=t}var Gr=Object.prototype,Kr=Gr.hasOwnProperty;function I(r,n,t){var e=r[n];(!(Kr.call(r,n)&&m(e,t))||t===void 0&&!(n in r))&&Z(r,n,t)}function h(r,n,t,e){var a=!t;t||(t={});for(var s=-1,i=n.length;++s<i;){var o=n[s],u=void 0;u===void 0&&(u=r[o]),a?Z(t,o,u):I(t,o,u)}return t}function V(r,n,t){if(!d(t))return!1;var e=typeof n;return(e=="number"?T(t)&&q(n,t.length):e=="string"&&n in t)?m(t[n],r):!1}function Tt(r){return H(function(n,t){var e=-1,a=t.length,s=a>1?t[a-1]:void 0,i=a>2?t[2]:void 0;for(s=r.length>3&&typeof s=="function"?(a--,s):void 0,i&&V(t[0],t[1],i)&&(s=a<3?void 0:s,a=1),n=Object(n);++e<a;){var o=t[e];o&&r(n,o,e,s)}return n})}function Dr(r){var n=[];if(r!=null)for(var t in Object(r))n.push(t);return n}var Rr=Object.prototype,qr=Rr.hasOwnProperty;function Hr(r){if(!d(r))return Dr(r);var n=W(r),t=[];for(var e in r)e=="constructor"&&(n||!qr.call(r,e))||t.push(e);return t}function v(r){return T(r)?fr(r,!0):Hr(r)}function ht(r){var n=r==null?0:r.length;return n?ur(r):[]}var k=cr(Object.getPrototypeOf,Object);function Wr(r,n){return r&&h(n,O(n),r)}function Yr(r,n){return r&&h(n,v(n),r)}var rr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,U=rr&&typeof module=="object"&&module&&!module.nodeType&&module,zr=U&&U.exports===rr,L=zr?gr.Buffer:void 0,N=L?L.allocUnsafe:void 0;function Xr(r,n){if(n)return r.slice();var t=r.length,e=N?N(t):new r.constructor(t);return r.copy(e),e}function Jr(r,n){return h(r,Y(r),n)}var Qr=Object.getOwnPropertySymbols,nr=Qr?function(r){for(var n=[];r;)dr(n,Y(r)),r=k(r);return n}:lr;function Zr(r,n){return h(r,nr(r),n)}function Vr(r){return br(r,v,nr)}var kr=Object.prototype,rn=kr.hasOwnProperty;function nn(r){var n=r.length,t=new r.constructor(n);return n&&typeof r[0]=="string"&&rn.call(r,"index")&&(t.index=r.index,t.input=r.input),t}function x(r){var n=new r.constructor(r.byteLength);return new E(n).set(new E(r)),n}function tn(r,n){var t=n?x(r.buffer):r.buffer;return new r.constructor(t,r.byteOffset,r.byteLength)}var en=/\w*$/;function an(r){var n=new r.constructor(r.source,en.exec(r));return n.lastIndex=r.lastIndex,n}var G=M?M.prototype:void 0,K=G?G.valueOf:void 0;function sn(r){return K?Object(K.call(r)):{}}function on(r,n){var t=n?x(r.buffer):r.buffer;return new r.constructor(t,r.byteOffset,r.length)}var fn="[object Boolean]",un="[object Date]",cn="[object Map]",gn="[object Number]",ln="[object RegExp]",dn="[object Set]",bn="[object String]",pn="[object Symbol]",yn="[object ArrayBuffer]",Tn="[object DataView]",hn="[object Float32Array]",vn="[object Float64Array]",An="[object Int8Array]",mn="[object Int16Array]",On="[object Int32Array]",wn="[object Uint8Array]",$n="[object Uint8ClampedArray]",In="[object Uint16Array]",xn="[object Uint32Array]";function Pn(r,n,t){var e=r.constructor;switch(n){case yn:return x(r);case fn:case un:return new e(+r);case Tn:return tn(r,t);case hn:case vn:case An:case mn:case On:case wn:case $n:case In:case xn:return on(r,t);case cn:return new e;case gn:case bn:return new e(r);case ln:return an(r);case dn:return new e;case pn:return sn(r)}}function jn(r){return typeof r.constructor=="function"&&!W(r)?Lr(k(r)):{}}var Sn="[object Map]";function Fn(r){return z(r)&&w(r)==Sn}var D=y&&y.isMap,En=D?X(D):Fn,Mn="[object Set]";function Bn(r){return z(r)&&w(r)==Mn}var R=y&&y.isSet,Cn=R?X(R):Bn,_n=1,Un=2,Ln=4,tr="[object Arguments]",Nn="[object Array]",Gn="[object Boolean]",Kn="[object Date]",Dn="[object Error]",er="[object Function]",Rn="[object GeneratorFunction]",qn="[object Map]",Hn="[object Number]",ar="[object Object]",Wn="[object RegExp]",Yn="[object Set]",zn="[object String]",Xn="[object Symbol]",Jn="[object WeakMap]",Qn="[object ArrayBuffer]",Zn="[object DataView]",Vn="[object Float32Array]",kn="[object Float64Array]",rt="[object Int8Array]",nt="[object Int16Array]",tt="[object Int32Array]",et="[object Uint8Array]",at="[object Uint8ClampedArray]",it="[object Uint16Array]",st="[object Uint32Array]",f={};f[tr]=f[Nn]=f[Qn]=f[Zn]=f[Gn]=f[Kn]=f[Vn]=f[kn]=f[rt]=f[nt]=f[tt]=f[qn]=f[Hn]=f[ar]=f[Wn]=f[Yn]=f[zn]=f[Xn]=f[et]=f[at]=f[it]=f[st]=!0;f[Dn]=f[er]=f[Jn]=!1;function A(r,n,t,e,a,s){var i,o=n&_n,u=n&Un,c=n&Ln;if(i!==void 0)return i;if(!d(r))return r;var g=J(r);if(g){if(i=nn(r),!o)return Nr(r,i)}else{var p=w(r),P=p==er||p==Rn;if(pr(r))return Xr(r,o);if(p==ar||p==tr||P&&!a){if(i=u||P?{}:jn(r),!o)return u?Zr(r,Yr(i,r)):Jr(r,Wr(i,r))}else{if(!f[p])return a?r:{};i=Pn(r,p,o)}}s||(s=new yr);var j=s.get(r);if(j)return j;s.set(r,i),Cn(r)?r.forEach(function(l){i.add(A(l,n,t,l,r,s))}):En(r)&&r.forEach(function(l,b){i.set(b,A(l,n,t,b,r,s))});var sr=c?u?Vr:hr:u?v:O,S=g?void 0:sr(r);return Tr(S||r,function(l,b){S&&(b=l,l=r[b]),I(i,b,A(l,n,t,b,r,s))}),i}var ir=Object.prototype,ot=ir.hasOwnProperty,vt=H(function(r,n){r=Object(r);var t=-1,e=n.length,a=e>2?n[2]:void 0;for(a&&V(n[0],n[1],a)&&(e=1);++t<e;)for(var s=n[t],i=v(s),o=-1,u=i.length;++o<u;){var c=i[o],g=r[c];(g===void 0||m(g,ir[c])&&!ot.call(r,c))&&(r[c]=s[c])}return r});function At(r){var n=r==null?0:r.length;return n?r[n-1]:void 0}function ft(r){return function(n,t,e){var a=Object(n);if(!T(n)){var s=$(t);n=O(n),t=function(o){return s(a[o],o,a)}}var i=r(n,t,e);return i>-1?a[s?n[i]:i]:void 0}}var ut=Math.max;function ct(r,n,t){var e=r==null?0:r.length;if(!e)return-1;var a=t==null?0:Ur(t);return a<0&&(a=ut(e+a,0)),vr(r,$(n),a)}var mt=ft(ct);function gt(r,n){var t=-1,e=T(r)?Array(r.length):[];return Ar(r,function(a,s,i){e[++t]=n(a,s,i)}),e}function Ot(r,n){var t=J(r)?mr:gt;return t(r,$(n))}var lt=Object.prototype,dt=lt.hasOwnProperty;function bt(r,n){return r!=null&&dt.call(r,n)}function wt(r,n){return r!=null&&Or(r,n,bt)}function pt(r,n,t,e){if(!d(r))return r;n=Q(n,r);for(var a=-1,s=n.length,i=s-1,o=r;o!=null&&++a<s;){var u=wr(n[a]),c=t;if(u==="__proto__"||u==="constructor"||u==="prototype")return r;if(a!=i){var g=o[u];c=void 0,c===void 0&&(c=d(g)?g:q(n[a+1])?[]:{})}I(o,u,c),o=o[u]}return r}function $t(r,n,t){for(var e=-1,a=n.length,s={};++e<a;){var i=n[e],o=$r(r,i);t(o,i)&&pt(s,Q(i,r),o)}return s}export{I as a,Z as b,A as c,gt as d,$t as e,Xr as f,on as g,Nr as h,h as i,Tt as j,vt as k,mt as l,ht as m,Vr as n,k as o,wt as p,jn as q,V as r,v as s,At as t,Ot as u,_r as v,Ur as w};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var Lr=typeof global=="object"&&global&&global.Object===Object&&global,te=typeof self=="object"&&self&&self.Object===Object&&self,w=Lr||te||Function("return this")(),y=w.Symbol,Fr=Object.prototype,ne=Fr.hasOwnProperty,ae=Fr.toString,j=y?y.toStringTag:void 0;function ie(r){var e=ne.call(r,j),t=r[j];try{r[j]=void 0;var n=!0}catch{}var a=ae.call(r);return n&&(e?r[j]=t:delete r[j]),a}var se=Object.prototype,oe=se.toString;function fe(r){return oe.call(r)}var ue="[object Null]",ce="[object Undefined]",lr=y?y.toStringTag:void 0;function R(r){return r==null?r===void 0?ce:ue:lr&&lr in Object(r)?ie(r):fe(r)}function m(r){return r!=null&&typeof r=="object"}var le="[object Symbol]";function er(r){return typeof r=="symbol"||m(r)&&R(r)==le}function Dr(r,e){for(var t=-1,n=r==null?0:r.length,a=Array(n);++t<n;)a[t]=e(r[t],t,r);return a}var h=Array.isArray,pr=y?y.prototype:void 0,gr=pr?pr.toString:void 0;function Nr(r){if(typeof r=="string")return r;if(h(r))return Dr(r,Nr)+"";if(er(r))return gr?gr.call(r):"";var e=r+"";return e=="0"&&1/r==-1/0?"-0":e}function tr(r){var e=typeof r;return r!=null&&(e=="object"||e=="function")}function H(r){return r}var pe="[object AsyncFunction]",ge="[object Function]",he="[object GeneratorFunction]",de="[object Proxy]";function Gr(r){if(!tr(r))return!1;var e=R(r);return e==ge||e==he||e==pe||e==de}var W=w["__core-js_shared__"],hr=function(){var r=/[^.]+$/.exec(W&&W.keys&&W.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();function _e(r){return!!hr&&hr in r}var ye=Function.prototype,be=ye.toString;function x(r){if(r!=null){try{return be.call(r)}catch{}try{return r+""}catch{}}return""}var ve=/[\\^$.*+?()[\]{}|]/g,Te=/^\[object .+?Constructor\]$/,we=Function.prototype,Ae=Object.prototype,Oe=we.toString,Pe=Ae.hasOwnProperty,$e=RegExp("^"+Oe.call(Pe).replace(ve,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Se(r){if(!tr(r)||_e(r))return!1;var e=Gr(r)?$e:Te;return e.test(x(r))}function me(r,e){return r==null?void 0:r[e]}function I(r,e){var t=me(r,e);return Se(t)?t:void 0}var V=I(w,"WeakMap");function Ee(r,e,t){switch(t.length){case 0:return r.call(e);case 1:return r.call(e,t[0]);case 2:return r.call(e,t[0],t[1]);case 3:return r.call(e,t[0],t[1],t[2])}return r.apply(e,t)}function xe(){}var Ie=800,Ce=16,Re=Date.now;function je(r){var e=0,t=0;return function(){var n=Re(),a=Ce-(n-t);if(t=n,a>0){if(++e>=Ie)return arguments[0]}else e=0;return r.apply(void 0,arguments)}}function Me(r){return function(){return r}}var dr=function(){try{var r=I(Object,"defineProperty");return r({},"",{}),r}catch{}}(),Le=dr?function(r,e){return dr(r,"toString",{configurable:!0,enumerable:!1,value:Me(e),writable:!0})}:H,Fe=je(Le);function De(r,e){for(var t=-1,n=r==null?0:r.length;++t<n&&e(r[t],t,r)!==!1;);return r}function Ne(r,e,t,n){for(var a=r.length,i=t+-1;++i<a;)if(e(r[i],i,r))return i;return-1}function Ge(r){return r!==r}function Ue(r,e,t){for(var n=t-1,a=r.length;++n<a;)if(r[n]===e)return n;return-1}function ze(r,e,t){return e===e?Ue(r,e,t):Ne(r,Ge,t)}function He(r,e){var t=r==null?0:r.length;return!!t&&ze(r,e,0)>-1}var Be=9007199254740991,Ke=/^(?:0|[1-9]\d*)$/;function Ur(r,e){var t=typeof r;return e=e??Be,!!e&&(t=="number"||t!="symbol"&&Ke.test(r))&&r>-1&&r%1==0&&r<e}function zr(r,e){return r===e||r!==r&&e!==e}var _r=Math.max;function qe(r,e,t){return e=_r(e===void 0?r.length-1:e,0),function(){for(var n=arguments,a=-1,i=_r(n.length-e,0),s=Array(i);++a<i;)s[a]=n[e+a];a=-1;for(var o=Array(e+1);++a<e;)o[a]=n[a];return o[e]=t(s),Ee(r,this,o)}}function Na(r,e){return Fe(qe(r,e,H),r+"")}var Xe=9007199254740991;function nr(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=Xe}function B(r){return r!=null&&nr(r.length)&&!Gr(r)}var Ze=Object.prototype;function Hr(r){var e=r&&r.constructor,t=typeof e=="function"&&e.prototype||Ze;return r===t}function Ye(r,e){for(var t=-1,n=Array(r);++t<r;)n[t]=e(t);return n}var We="[object Arguments]";function yr(r){return m(r)&&R(r)==We}var Br=Object.prototype,Je=Br.hasOwnProperty,Qe=Br.propertyIsEnumerable,K=yr(function(){return arguments}())?yr:function(r){return m(r)&&Je.call(r,"callee")&&!Qe.call(r,"callee")};function Ve(){return!1}var Kr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,br=Kr&&typeof module=="object"&&module&&!module.nodeType&&module,ke=br&&br.exports===Kr,vr=ke?w.Buffer:void 0,rt=vr?vr.isBuffer:void 0,z=rt||Ve,et="[object Arguments]",tt="[object Array]",nt="[object Boolean]",at="[object Date]",it="[object Error]",st="[object Function]",ot="[object Map]",ft="[object Number]",ut="[object Object]",ct="[object RegExp]",lt="[object Set]",pt="[object String]",gt="[object WeakMap]",ht="[object ArrayBuffer]",dt="[object DataView]",_t="[object Float32Array]",yt="[object Float64Array]",bt="[object Int8Array]",vt="[object Int16Array]",Tt="[object Int32Array]",wt="[object Uint8Array]",At="[object Uint8ClampedArray]",Ot="[object Uint16Array]",Pt="[object Uint32Array]",c={};c[_t]=c[yt]=c[bt]=c[vt]=c[Tt]=c[wt]=c[At]=c[Ot]=c[Pt]=!0;c[et]=c[tt]=c[ht]=c[nt]=c[dt]=c[at]=c[it]=c[st]=c[ot]=c[ft]=c[ut]=c[ct]=c[lt]=c[pt]=c[gt]=!1;function $t(r){return m(r)&&nr(r.length)&&!!c[R(r)]}function St(r){return function(e){return r(e)}}var qr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,M=qr&&typeof module=="object"&&module&&!module.nodeType&&module,mt=M&&M.exports===qr,J=mt&&Lr.process,Tr=function(){try{var r=M&&M.require&&M.require("util").types;return r||J&&J.binding&&J.binding("util")}catch{}}(),wr=Tr&&Tr.isTypedArray,ar=wr?St(wr):$t,Et=Object.prototype,xt=Et.hasOwnProperty;function It(r,e){var t=h(r),n=!t&&K(r),a=!t&&!n&&z(r),i=!t&&!n&&!a&&ar(r),s=t||n||a||i,o=s?Ye(r.length,String):[],f=o.length;for(var u in r)(e||xt.call(r,u))&&!(s&&(u=="length"||a&&(u=="offset"||u=="parent")||i&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||Ur(u,f)))&&o.push(u);return o}function Ct(r,e){return function(t){return r(e(t))}}var Rt=Ct(Object.keys,Object),jt=Object.prototype,Mt=jt.hasOwnProperty;function Xr(r){if(!Hr(r))return Rt(r);var e=[];for(var t in Object(r))Mt.call(r,t)&&t!="constructor"&&e.push(t);return e}function q(r){return B(r)?It(r):Xr(r)}var Lt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Ft=/^\w*$/;function ir(r,e){if(h(r))return!1;var t=typeof r;return t=="number"||t=="symbol"||t=="boolean"||r==null||er(r)?!0:Ft.test(r)||!Lt.test(r)||e!=null&&r in Object(e)}var L=I(Object,"create");function Dt(){this.__data__=L?L(null):{},this.size=0}function Nt(r){var e=this.has(r)&&delete this.__data__[r];return this.size-=e?1:0,e}var Gt="__lodash_hash_undefined__",Ut=Object.prototype,zt=Ut.hasOwnProperty;function Ht(r){var e=this.__data__;if(L){var t=e[r];return t===Gt?void 0:t}return zt.call(e,r)?e[r]:void 0}var Bt=Object.prototype,Kt=Bt.hasOwnProperty;function qt(r){var e=this.__data__;return L?e[r]!==void 0:Kt.call(e,r)}var Xt="__lodash_hash_undefined__";function Zt(r,e){var t=this.__data__;return this.size+=this.has(r)?0:1,t[r]=L&&e===void 0?Xt:e,this}function E(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var n=r[e];this.set(n[0],n[1])}}E.prototype.clear=Dt;E.prototype.delete=Nt;E.prototype.get=Ht;E.prototype.has=qt;E.prototype.set=Zt;function Yt(){this.__data__=[],this.size=0}function X(r,e){for(var t=r.length;t--;)if(zr(r[t][0],e))return t;return-1}var Wt=Array.prototype,Jt=Wt.splice;function Qt(r){var e=this.__data__,t=X(e,r);if(t<0)return!1;var n=e.length-1;return t==n?e.pop():Jt.call(e,t,1),--this.size,!0}function Vt(r){var e=this.__data__,t=X(e,r);return t<0?void 0:e[t][1]}function kt(r){return X(this.__data__,r)>-1}function rn(r,e){var t=this.__data__,n=X(t,r);return n<0?(++this.size,t.push([r,e])):t[n][1]=e,this}function A(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var n=r[e];this.set(n[0],n[1])}}A.prototype.clear=Yt;A.prototype.delete=Qt;A.prototype.get=Vt;A.prototype.has=kt;A.prototype.set=rn;var F=I(w,"Map");function en(){this.size=0,this.__data__={hash:new E,map:new(F||A),string:new E}}function tn(r){var e=typeof r;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?r!=="__proto__":r===null}function Z(r,e){var t=r.__data__;return tn(e)?t[typeof e=="string"?"string":"hash"]:t.map}function nn(r){var e=Z(this,r).delete(r);return this.size-=e?1:0,e}function an(r){return Z(this,r).get(r)}function sn(r){return Z(this,r).has(r)}function on(r,e){var t=Z(this,r),n=t.size;return t.set(r,e),this.size+=t.size==n?0:1,this}function O(r){var e=-1,t=r==null?0:r.length;for(this.clear();++e<t;){var n=r[e];this.set(n[0],n[1])}}O.prototype.clear=en;O.prototype.delete=nn;O.prototype.get=an;O.prototype.has=sn;O.prototype.set=on;var fn="Expected a function";function sr(r,e){if(typeof r!="function"||e!=null&&typeof e!="function")throw new TypeError(fn);var t=function(){var n=arguments,a=e?e.apply(this,n):n[0],i=t.cache;if(i.has(a))return i.get(a);var s=r.apply(this,n);return t.cache=i.set(a,s)||i,s};return t.cache=new(sr.Cache||O),t}sr.Cache=O;var un=500;function cn(r){var e=sr(r,function(n){return t.size===un&&t.clear(),n}),t=e.cache;return e}var ln=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,pn=/\\(\\)?/g,gn=cn(function(r){var e=[];return r.charCodeAt(0)===46&&e.push(""),r.replace(ln,function(t,n,a,i){e.push(a?i.replace(pn,"$1"):n||t)}),e});function hn(r){return r==null?"":Nr(r)}function Zr(r,e){return h(r)?r:ir(r,e)?[r]:gn(hn(r))}function Y(r){if(typeof r=="string"||er(r))return r;var e=r+"";return e=="0"&&1/r==-1/0?"-0":e}function Yr(r,e){e=Zr(e,r);for(var t=0,n=e.length;r!=null&&t<n;)r=r[Y(e[t++])];return t&&t==n?r:void 0}function dn(r,e,t){var n=r==null?void 0:Yr(r,e);return n===void 0?t:n}function Wr(r,e){for(var t=-1,n=e.length,a=r.length;++t<n;)r[a+t]=e[t];return r}var Ar=y?y.isConcatSpreadable:void 0;function _n(r){return h(r)||K(r)||!!(Ar&&r&&r[Ar])}function Ga(r,e,t,n,a){var i=-1,s=r.length;for(t||(t=_n),a||(a=[]);++i<s;){var o=r[i];t(o)?Wr(a,o):n||(a[a.length]=o)}return a}function yn(r,e,t,n){var a=-1,i=r==null?0:r.length;for(n&&i&&(t=r[++a]);++a<i;)t=e(t,r[a],a,r);return t}function bn(){this.__data__=new A,this.size=0}function vn(r){var e=this.__data__,t=e.delete(r);return this.size=e.size,t}function Tn(r){return this.__data__.get(r)}function wn(r){return this.__data__.has(r)}var An=200;function On(r,e){var t=this.__data__;if(t instanceof A){var n=t.__data__;if(!F||n.length<An-1)return n.push([r,e]),this.size=++t.size,this;t=this.__data__=new O(n)}return t.set(r,e),this.size=t.size,this}function T(r){var e=this.__data__=new A(r);this.size=e.size}T.prototype.clear=bn;T.prototype.delete=vn;T.prototype.get=Tn;T.prototype.has=wn;T.prototype.set=On;function Jr(r,e){for(var t=-1,n=r==null?0:r.length,a=0,i=[];++t<n;){var s=r[t];e(s,t,r)&&(i[a++]=s)}return i}function Pn(){return[]}var $n=Object.prototype,Sn=$n.propertyIsEnumerable,Or=Object.getOwnPropertySymbols,mn=Or?function(r){return r==null?[]:(r=Object(r),Jr(Or(r),function(e){return Sn.call(r,e)}))}:Pn;function En(r,e,t){var n=e(r);return h(r)?n:Wr(n,t(r))}function Pr(r){return En(r,q,mn)}var k=I(w,"DataView"),rr=I(w,"Promise"),C=I(w,"Set"),$r="[object Map]",xn="[object Object]",Sr="[object Promise]",mr="[object Set]",Er="[object WeakMap]",xr="[object DataView]",In=x(k),Cn=x(F),Rn=x(rr),jn=x(C),Mn=x(V),v=R;(k&&v(new k(new ArrayBuffer(1)))!=xr||F&&v(new F)!=$r||rr&&v(rr.resolve())!=Sr||C&&v(new C)!=mr||V&&v(new V)!=Er)&&(v=function(r){var e=R(r),t=e==xn?r.constructor:void 0,n=t?x(t):"";if(n)switch(n){case In:return xr;case Cn:return $r;case Rn:return Sr;case jn:return mr;case Mn:return Er}return e});var Ir=w.Uint8Array,Ln="__lodash_hash_undefined__";function Fn(r){return this.__data__.set(r,Ln),this}function Dn(r){return this.__data__.has(r)}function D(r){var e=-1,t=r==null?0:r.length;for(this.__data__=new O;++e<t;)this.add(r[e])}D.prototype.add=D.prototype.push=Fn;D.prototype.has=Dn;function Nn(r,e){for(var t=-1,n=r==null?0:r.length;++t<n;)if(e(r[t],t,r))return!0;return!1}function Qr(r,e){return r.has(e)}var Gn=1,Un=2;function Vr(r,e,t,n,a,i){var s=t&Gn,o=r.length,f=e.length;if(o!=f&&!(s&&f>o))return!1;var u=i.get(r),g=i.get(e);if(u&&g)return u==e&&g==r;var l=-1,p=!0,b=t&Un?new D:void 0;for(i.set(r,e),i.set(e,r);++l<o;){var d=r[l],_=e[l];if(n)var P=s?n(_,d,l,e,r,i):n(d,_,l,r,e,i);if(P!==void 0){if(P)continue;p=!1;break}if(b){if(!Nn(e,function($,S){if(!Qr(b,S)&&(d===$||a(d,$,t,n,i)))return b.push(S)})){p=!1;break}}else if(!(d===_||a(d,_,t,n,i))){p=!1;break}}return i.delete(r),i.delete(e),p}function zn(r){var e=-1,t=Array(r.size);return r.forEach(function(n,a){t[++e]=[a,n]}),t}function or(r){var e=-1,t=Array(r.size);return r.forEach(function(n){t[++e]=n}),t}var Hn=1,Bn=2,Kn="[object Boolean]",qn="[object Date]",Xn="[object Error]",Zn="[object Map]",Yn="[object Number]",Wn="[object RegExp]",Jn="[object Set]",Qn="[object String]",Vn="[object Symbol]",kn="[object ArrayBuffer]",ra="[object DataView]",Cr=y?y.prototype:void 0,Q=Cr?Cr.valueOf:void 0;function ea(r,e,t,n,a,i,s){switch(t){case ra:if(r.byteLength!=e.byteLength||r.byteOffset!=e.byteOffset)return!1;r=r.buffer,e=e.buffer;case kn:return!(r.byteLength!=e.byteLength||!i(new Ir(r),new Ir(e)));case Kn:case qn:case Yn:return zr(+r,+e);case Xn:return r.name==e.name&&r.message==e.message;case Wn:case Qn:return r==e+"";case Zn:var o=zn;case Jn:var f=n&Hn;if(o||(o=or),r.size!=e.size&&!f)return!1;var u=s.get(r);if(u)return u==e;n|=Bn,s.set(r,e);var g=Vr(o(r),o(e),n,a,i,s);return s.delete(r),g;case Vn:if(Q)return Q.call(r)==Q.call(e)}return!1}var ta=1,na=Object.prototype,aa=na.hasOwnProperty;function ia(r,e,t,n,a,i){var s=t&ta,o=Pr(r),f=o.length,u=Pr(e),g=u.length;if(f!=g&&!s)return!1;for(var l=f;l--;){var p=o[l];if(!(s?p in e:aa.call(e,p)))return!1}var b=i.get(r),d=i.get(e);if(b&&d)return b==e&&d==r;var _=!0;i.set(r,e),i.set(e,r);for(var P=s;++l<f;){p=o[l];var $=r[p],S=e[p];if(n)var cr=s?n(S,$,p,e,r,i):n($,S,p,r,e,i);if(!(cr===void 0?$===S||a($,S,t,n,i):cr)){_=!1;break}P||(P=p=="constructor")}if(_&&!P){var N=r.constructor,G=e.constructor;N!=G&&"constructor"in r&&"constructor"in e&&!(typeof N=="function"&&N instanceof N&&typeof G=="function"&&G instanceof G)&&(_=!1)}return i.delete(r),i.delete(e),_}var sa=1,Rr="[object Arguments]",jr="[object Array]",U="[object Object]",oa=Object.prototype,Mr=oa.hasOwnProperty;function fa(r,e,t,n,a,i){var s=h(r),o=h(e),f=s?jr:v(r),u=o?jr:v(e);f=f==Rr?U:f,u=u==Rr?U:u;var g=f==U,l=u==U,p=f==u;if(p&&z(r)){if(!z(e))return!1;s=!0,g=!1}if(p&&!g)return i||(i=new T),s||ar(r)?Vr(r,e,t,n,a,i):ea(r,e,f,t,n,a,i);if(!(t&sa)){var b=g&&Mr.call(r,"__wrapped__"),d=l&&Mr.call(e,"__wrapped__");if(b||d){var _=b?r.value():r,P=d?e.value():e;return i||(i=new T),a(_,P,t,n,i)}}return p?(i||(i=new T),ia(r,e,t,n,a,i)):!1}function fr(r,e,t,n,a){return r===e?!0:r==null||e==null||!m(r)&&!m(e)?r!==r&&e!==e:fa(r,e,t,n,fr,a)}var ua=1,ca=2;function la(r,e,t,n){var a=t.length,i=a;if(r==null)return!i;for(r=Object(r);a--;){var s=t[a];if(s[2]?s[1]!==r[s[0]]:!(s[0]in r))return!1}for(;++a<i;){s=t[a];var o=s[0],f=r[o],u=s[1];if(s[2]){if(f===void 0&&!(o in r))return!1}else{var g=new T,l;if(!(l===void 0?fr(u,f,ua|ca,n,g):l))return!1}}return!0}function kr(r){return r===r&&!tr(r)}function pa(r){for(var e=q(r),t=e.length;t--;){var n=e[t],a=r[n];e[t]=[n,a,kr(a)]}return e}function re(r,e){return function(t){return t==null?!1:t[r]===e&&(e!==void 0||r in Object(t))}}function ga(r){var e=pa(r);return e.length==1&&e[0][2]?re(e[0][0],e[0][1]):function(t){return t===r||la(t,r,e)}}function ha(r,e){return r!=null&&e in Object(r)}function da(r,e,t){e=Zr(e,r);for(var n=-1,a=e.length,i=!1;++n<a;){var s=Y(e[n]);if(!(i=r!=null&&t(r,s)))break;r=r[s]}return i||++n!=a?i:(a=r==null?0:r.length,!!a&&nr(a)&&Ur(s,a)&&(h(r)||K(r)))}function _a(r,e){return r!=null&&da(r,e,ha)}var ya=1,ba=2;function va(r,e){return ir(r)&&kr(e)?re(Y(r),e):function(t){var n=dn(t,r);return n===void 0&&n===e?_a(t,r):fr(e,n,ya|ba)}}function Ta(r){return function(e){return e==null?void 0:e[r]}}function wa(r){return function(e){return Yr(e,r)}}function Aa(r){return ir(r)?Ta(Y(r)):wa(r)}function ee(r){return typeof r=="function"?r:r==null?H:typeof r=="object"?h(r)?va(r[0],r[1]):ga(r):Aa(r)}function Oa(r){return function(e,t,n){for(var a=-1,i=Object(e),s=n(e),o=s.length;o--;){var f=s[++a];if(t(i[f],f,i)===!1)break}return e}}var Pa=Oa();function $a(r,e){return r&&Pa(r,e,q)}function Sa(r,e){return function(t,n){if(t==null)return t;if(!B(t))return r(t,n);for(var a=t.length,i=-1,s=Object(t);++i<a&&n(s[i],i,s)!==!1;);return t}}var ur=Sa($a);function Ua(r){return m(r)&&B(r)}function ma(r){return typeof r=="function"?r:H}function za(r,e){var t=h(r)?De:ur;return t(r,ma(e))}function Ea(r,e){var t=[];return ur(r,function(n,a,i){e(n,a,i)&&t.push(n)}),t}function Ha(r,e){var t=h(r)?Jr:Ea;return t(r,ee(e))}function xa(r,e){return Dr(e,function(t){return r[t]})}function Ba(r){return r==null?[]:xa(r,q(r))}var Ia="[object Map]",Ca="[object Set]",Ra=Object.prototype,ja=Ra.hasOwnProperty;function Ka(r){if(r==null)return!0;if(B(r)&&(h(r)||typeof r=="string"||typeof r.splice=="function"||z(r)||ar(r)||K(r)))return!r.length;var e=v(r);if(e==Ia||e==Ca)return!r.size;if(Hr(r))return!Xr(r).length;for(var t in r)if(ja.call(r,t))return!1;return!0}function qa(r){return r===void 0}function Ma(r,e,t,n,a){return a(r,function(i,s,o){t=n?(n=!1,i):e(t,i,s,o)}),t}function Xa(r,e,t){var n=h(r)?yn:Ma,a=arguments.length<3;return n(r,ee(e),t,a,ur)}var La=1/0,Fa=C&&1/or(new C([,-0]))[1]==La?function(r){return new C(r)}:xe,Da=200;function Za(r,e,t){var n=-1,a=He,i=r.length,s=!0,o=[],f=o;if(i>=Da){var u=Fa(r);if(u)return or(u);s=!1,a=Qr,f=new D}else f=o;r:for(;++n<i;){var g=r[n],l=g;if(g=g!==0?g:0,s&&l===l){for(var p=f.length;p--;)if(f[p]===l)continue r;o.push(g)}else a(f,l,t)||(f!==o&&f.push(l),o.push(g))}return o}export{q as $,Me as A,dr as B,zr as C,Ha as D,za as E,Pr as F,mn as G,v as H,_a as I,da as J,H as K,K as L,h as M,B as N,Ua as O,z as P,Ka as Q,Gr as R,D as S,Ur as T,Ir as U,tr as V,m as W,Hr as X,er as Y,ar as Z,qa as _,T as a,Tr as a0,xe as a1,Ct as a2,qe as a3,Xa as a4,w as a5,Fe as a6,Pn as a7,Y as a8,hn as a9,Ba as aa,y as b,De as c,Jr as d,He as e,It as f,Dr as g,Wr as h,Nn as i,ur as j,Ea as k,Ne as l,Ga as m,Pa as n,$a as o,Yr as p,En as q,R as r,ze as s,ee as t,Na as u,St as v,Za as w,Qr as x,ma as y,Zr as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g as p,r as u,d as n}from"./chunk-GTNCS2PH-Du4_i7r3.js";import{p as f}from"./chunk-JWPE2WC7-B8eAVfuB.js";import{c as a,aH as o}from"./mermaid.core-DPEwUsaj.js";import{M as c,c as d}from"./cynefin-OW5HDTMX-Du659bmz.js";import"./index-YZNK723o.js";var v=d().RailroadAbnf.parser.LangiumParser,i=a(e=>{const r=e.alternatives.map(g);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),g=a(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=a(e=>{if(e.includes("*")){const[t,s]=e.split("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=a(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=a(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return i(e.element);case"AbnfOptionalGroup":return{type:"optional",element:i(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=a(e=>({name:e.name,definition:i(e.definition)}),"transformRule"),h=a(e=>{f(e,n),e.title&&n.setTitle(e.title),e.rules.map(r=>n.addRule(P(r)))},"populateDb"),R={parse:a(e=>{n.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=v.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new c(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:n}},B={parser:R,db:n,renderer:u,styles:p};export{B as diagram};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{bx as ln,aW as an,I as z,bi as w,G as N,af as un,W as y,bo as on,bj as F,aP as _,d as rn,n as t,aN as tn,k as sn,e as fn}from"./mermaid.core-DPEwUsaj.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,j,I,v,A,O,a){var q=j-l,i=I-h,n=O-v,d=a-A,u=d*q-n*i;if(!(u*u<y))return u=(n*(h-A)-d*(l-v))/u,[l+u*q,h+u*i]}function Q(l,h,j,I,v,A,O){var a=l-j,q=h-I,i=(O?A:-A)/F(a*a+q*q),n=i*q,d=-i*a,u=l+n,s=h+d,f=j+n,c=I+d,S=(u+f)/2,o=(s+c)/2,m=f-u,g=c-s,R=m*m+g*g,T=v-A,P=u*c-f*s,D=(g<0?-1:1)*F(tn(0,T*T*R-P*P)),E=(P*g-m*D)/R,G=(-P*m-g*D)/R,b=(P*g+m*D)/R,p=(-P*m+g*D)/R,x=E-S,e=G-o,r=b-S,k=p-o;return x*x+e*e>r*r+k*k&&(E=b,G=p),{cx:E,cy:G,x01:-n,y01:-d,x11:E*(v/T-1),y11:G*(v/T-1)}}function hn(){var l=cn,h=yn,j=N(0),I=null,v=gn,A=dn,O=mn,a=null,q=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=A.apply(this,arguments)-un,S=rn(c-f),o=c>f;if(a||(a=n=q()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if(S>on-y)a.moveTo(s*z(f),s*w(f)),a.arc(0,0,s,f,c,!o),u>y&&(a.moveTo(u*z(c),u*w(c)),a.arc(0,0,u,c,f,o));else{var m=f,g=c,R=f,T=c,P=S,D=S,E=O.apply(this,arguments)/2,G=E>y&&(I?+I.apply(this,arguments):F(u*u+s*s)),b=_(rn(s-u)/2,+j.apply(this,arguments)),p=b,x=b,e,r;if(G>y){var k=sn(G/u*w(E)),H=sn(G/s*w(E));(P-=k*2)>y?(k*=o?1:-1,R+=k,T-=k):(P=0,R=T=(f+c)/2),(D-=H*2)>y?(H*=o?1:-1,m+=H,g-=H):(D=0,m=g=(f+c)/2)}var B=s*z(m),C=s*w(m),J=u*z(T),K=u*w(T);if(b>y){var L=s*z(g),M=s*w(g),U=u*z(R),V=u*w(R),W;if(S<an)if(W=pn(B,C,U,V,L,M,J,K)){var X=B-W[0],Y=C-W[1],Z=L-W[0],$=M-W[1],nn=1/w(fn((X*Z+Y*$)/(F(X*X+Y*Y)*F(Z*Z+$*$)))/2),en=F(W[0]*W[0]+W[1]*W[1]);p=_(b,(u-en)/(nn-1)),x=_(b,(s-en)/(nn+1))}else p=x=0}D>y?x>y?(e=Q(U,V,B,C,s,x,o),r=Q(L,M,J,K,s,x,o),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<b?a.arc(e.cx,e.cy,x,t(e.y01,e.x01),t(r.y01,r.x01),!o):(a.arc(e.cx,e.cy,x,t(e.y01,e.x01),t(e.y11,e.x11),!o),a.arc(0,0,s,t(e.cy+e.y11,e.cx+e.x11),t(r.cy+r.y11,r.cx+r.x11),!o),a.arc(r.cx,r.cy,x,t(r.y11,r.x11),t(r.y01,r.x01),!o))):(a.moveTo(B,C),a.arc(0,0,s,m,g,!o)):a.moveTo(B,C),!(u>y)||!(P>y)?a.lineTo(J,K):p>y?(e=Q(J,K,L,M,u,-p,o),r=Q(B,C,U,V,u,-p,o),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<b?a.arc(e.cx,e.cy,p,t(e.y01,e.x01),t(r.y01,r.x01),!o):(a.arc(e.cx,e.cy,p,t(e.y01,e.x01),t(e.y11,e.x11),!o),a.arc(0,0,u,t(e.cy+e.y11,e.cx+e.x11),t(r.cy+r.y11,r.cx+r.x11),o),a.arc(r.cx,r.cy,p,t(r.y11,r.x11),t(r.y01,r.x01),!o))):a.arc(0,0,u,T,R,o)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-an/2;return[z(d)*n,w(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:N(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:N(+n),i):h},i.cornerRadius=function(n){return arguments.length?(j=typeof n=="function"?n:N(+n),i):j},i.padRadius=function(n){return arguments.length?(I=n==null?null:typeof n=="function"?n:N(+n),i):I},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:N(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:N(+n),i):A},i.padAngle=function(n){return arguments.length?(O=typeof n=="function"?n:N(+n),i):O},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};
|