elanous 0.2.0 → 0.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +6 -0
- package/README.md +17 -15
- package/apps/pwa/out/404/index.html +1 -1
- package/apps/pwa/out/404.html +1 -1
- package/apps/pwa/out/_next/static/chunks/06ef2eba-d1b99ac6d2ea663c.js +1 -0
- package/apps/pwa/out/_next/static/chunks/1413-7179a49332db5a80.js +1 -0
- package/apps/pwa/out/_next/static/chunks/150-25c277137a9638ab.js +1 -0
- package/apps/pwa/out/_next/static/chunks/1640-bc99ec23bbe29d12.js +1 -0
- package/apps/pwa/out/_next/static/chunks/1751.50b96ea9c37b49b6.js +1 -0
- package/apps/pwa/out/_next/static/chunks/2300-de059d0ab2a16630.js +1 -0
- package/apps/pwa/out/_next/static/chunks/2684-05b0a81e75298c16.js +1 -0
- package/apps/pwa/out/_next/static/chunks/3026-2ed7e317d9b02102.js +25 -0
- package/apps/pwa/out/_next/static/chunks/3611-77496ada38cd6358.js +1 -0
- package/apps/pwa/out/_next/static/chunks/3717-68957c4dc9ceec90.js +1 -0
- package/apps/pwa/out/_next/static/chunks/3929-46ba9af6f9d895cc.js +1 -0
- package/apps/pwa/out/_next/static/chunks/4015-62c5a3744698a8da.js +1 -0
- package/apps/pwa/out/_next/static/chunks/4217-3c4317a7905f9eeb.js +1 -0
- package/apps/pwa/out/_next/static/chunks/4240-3230f230fae2d7d5.js +1 -0
- package/apps/pwa/out/_next/static/chunks/4271-e53e075ebd48593b.js +1 -0
- package/apps/pwa/out/_next/static/chunks/4377.3b125fef79576dfd.js +5 -0
- package/apps/pwa/out/_next/static/chunks/4440-18bb160d95819f4e.js +1 -0
- package/apps/pwa/out/_next/static/chunks/4853-35fdbe6bdbcdc0fc.js +1 -0
- package/apps/pwa/out/_next/static/chunks/{2a79f15a-2013e4d421d6df88.js → 4daa2798-1363d725c79f3593.js} +1 -1
- package/apps/pwa/out/_next/static/chunks/5007-6a3b30e23ff68a6e.js +1 -0
- package/apps/pwa/out/_next/static/chunks/5244-12b424c42070f5ff.js +1 -0
- package/apps/pwa/out/_next/static/chunks/5348-bbf838e119661eee.js +1 -0
- package/apps/pwa/out/_next/static/chunks/5391-8793f88b03b30161.js +1 -0
- package/apps/pwa/out/_next/static/chunks/5611-df00af3e4e4a61bb.js +1 -0
- package/apps/pwa/out/_next/static/chunks/5890-dca2321773be829a.js +1 -0
- package/apps/pwa/out/_next/static/chunks/6123-37c9dc57ddaa7ab0.js +1 -0
- package/apps/pwa/out/_next/static/chunks/6588-b7975304a302ab91.js +1 -0
- package/apps/pwa/out/_next/static/chunks/6604-c03961962b6273b6.js +1 -0
- package/apps/pwa/out/_next/static/chunks/7109-cf8c87e968e83a65.js +1 -0
- package/apps/pwa/out/_next/static/chunks/7178-30f77877525a2efb.js +1 -0
- package/apps/pwa/out/_next/static/chunks/7262-871563fc9663730b.js +1 -0
- package/apps/pwa/out/_next/static/chunks/7294-f0eeebb92aa93459.js +1 -0
- package/apps/pwa/out/_next/static/chunks/7429-881af44deed6958f.js +1 -0
- package/apps/pwa/out/_next/static/chunks/{5927.8378481a12cc8044.js → 7527.943753b6ed829f09.js} +1 -1
- package/apps/pwa/out/_next/static/chunks/764-a01e858525a190c0.js +1 -0
- package/apps/pwa/out/_next/static/chunks/7868-e35d5f7985ecd3f1.js +1 -0
- package/apps/pwa/out/_next/static/chunks/8320-51484af7b01fdfa5.js +1 -0
- package/apps/pwa/out/_next/static/chunks/{6804.8ed6ab492bc5fc0a.js → 8617.465ca22a319c95b3.js} +1 -1
- package/apps/pwa/out/_next/static/chunks/{320-d7013ec072863e5e.js → 8918-482b30ce2a8ebf4c.js} +4 -4
- package/apps/pwa/out/_next/static/chunks/9131-52f5fad51cceca04.js +1 -0
- package/apps/pwa/out/_next/static/chunks/{2598.814f64e3268634e7.js → 9238.2cd5f47f4bf7a2c3.js} +1 -1
- package/apps/pwa/out/_next/static/chunks/9704-3221c102623c8d73.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/_not-found/page-70c404c7bb6d7f0f.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/approvals/page-3ffd80166b1050aa.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/autopilot/page-f89e9a303515a033.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/board/page-4f403cd060442c95.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/botlab/page-0ac5d053f0444d21.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/bots/page-4bcc63e272ae8205.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/chat/page-880734bd07d62882.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/control/page-72bd384898d88955.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/design-check/page-1018bbc9586ecae5.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/editor/page-de86f8c38076dd7b.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/healthz/route-70c404c7bb6d7f0f.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/intake/page-cd6447196d8bafe6.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/layout-e733630c47fa102b.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/live/page-d1c1a8357b161875.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/market/page-60c514128e81d787.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/missions/[id]/page-8b637b7e325e13c1.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/morning/page-bccce0babceae30f.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/not-found-63301d11dbe73836.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/observatory/page-a8cf0dc472060db2.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/page-02fba54881ccfa49.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/reflection/page-d5e8e90f0038f8de.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/scheduler/page-b1ef6824f494466a.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/sessions/page-d589bb0f233b1009.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/settings/devices/page-c9bbaebef4cda059.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/settings/page-3639ce7916b92fed.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/setup/done/page-7450ae7478955653.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/setup/layout-70c404c7bb6d7f0f.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/setup/page-b41ca4abfd618452.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/share/page-b333dd79ebee3fa9.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/showroom/page-8be1227492793655.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/tasks/page-6e03e9371b552e0d.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/term/page-911411e9fca18d03.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/trace/page-792170e649b37088.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/vault/page-c40463466937bc91.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/workflows/chat-ui/page-509c798b80384536.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/workflows/page-1cac2aa21d77c417.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/workspace/page-9626799d9b4a2cd1.js +1 -0
- package/apps/pwa/out/_next/static/chunks/app/worktrees/page-84cd419494e16b0f.js +1 -0
- package/apps/pwa/out/_next/static/chunks/f6f3850d-7f324c6566002113.js +1 -0
- package/apps/pwa/out/_next/static/chunks/framework-361487d2da603917.js +1 -0
- package/apps/pwa/out/_next/static/chunks/main-app-607f5beb94cb2e07.js +1 -0
- package/apps/pwa/out/_next/static/chunks/main-d0222d219e29dddf.js +1 -0
- package/apps/pwa/out/_next/static/chunks/pages/_app-a26980a31126decc.js +1 -0
- package/apps/pwa/out/_next/static/chunks/pages/_error-edb2b37decf23e4d.js +1 -0
- package/apps/pwa/out/_next/static/chunks/webpack-2bf59c720fe9542c.js +1 -0
- package/apps/pwa/out/_next/static/css/eaa74e8bb2f62269.css +1 -0
- package/apps/pwa/out/_next/static/ktMqfrBbf8BMGac0jqLrb/_buildManifest.js +1 -0
- package/apps/pwa/out/approvals/index.html +1 -0
- package/apps/pwa/out/approvals/index.txt +32 -0
- package/apps/pwa/out/autopilot/index.html +1 -1
- package/apps/pwa/out/autopilot/index.txt +29 -26
- package/apps/pwa/out/board/index.html +1 -0
- package/apps/pwa/out/board/index.txt +32 -0
- package/apps/pwa/out/botlab/index.html +1 -1
- package/apps/pwa/out/botlab/index.txt +26 -23
- package/apps/pwa/out/bots/index.html +1 -1
- package/apps/pwa/out/bots/index.txt +26 -23
- package/apps/pwa/out/chat/index.html +1 -2
- package/apps/pwa/out/chat/index.txt +26 -23
- package/apps/pwa/out/control/index.html +1 -1
- package/apps/pwa/out/control/index.txt +29 -26
- package/apps/pwa/out/design-check/index.html +1 -1
- package/apps/pwa/out/design-check/index.txt +29 -26
- package/apps/pwa/out/editor/index.html +1 -0
- package/apps/pwa/out/editor/index.txt +33 -0
- package/apps/pwa/out/healthz +1 -1
- package/apps/pwa/out/icons/elanous-16.png +0 -0
- package/apps/pwa/out/icons/elanous-180.png +0 -0
- package/apps/pwa/out/icons/elanous-192.png +0 -0
- package/apps/pwa/out/icons/elanous-32.png +0 -0
- package/apps/pwa/out/icons/elanous-512.png +0 -0
- package/apps/pwa/out/index.html +1 -1
- package/apps/pwa/out/index.txt +26 -23
- package/apps/pwa/out/intake/index.html +1 -1
- package/apps/pwa/out/intake/index.txt +29 -26
- package/apps/pwa/out/live/index.html +1 -0
- package/apps/pwa/out/live/index.txt +32 -0
- package/apps/pwa/out/manifest.webmanifest +5 -2
- package/apps/pwa/out/market/index.html +1 -0
- package/apps/pwa/out/market/index.txt +29 -0
- package/apps/pwa/out/missions/placeholder/index.html +1 -1
- package/apps/pwa/out/missions/placeholder/index.txt +26 -23
- package/apps/pwa/out/morning/index.html +1 -1
- package/apps/pwa/out/morning/index.txt +29 -26
- package/apps/pwa/out/observatory/index.html +1 -1
- package/apps/pwa/out/observatory/index.txt +29 -26
- package/apps/pwa/out/reflection/index.html +1 -1
- package/apps/pwa/out/reflection/index.txt +27 -24
- package/apps/pwa/out/scheduler/index.html +1 -1
- package/apps/pwa/out/scheduler/index.txt +29 -26
- package/apps/pwa/out/sessions/index.html +1 -1
- package/apps/pwa/out/sessions/index.txt +26 -23
- package/apps/pwa/out/settings/devices/index.html +1 -1
- package/apps/pwa/out/settings/devices/index.txt +29 -26
- package/apps/pwa/out/settings/index.html +1 -1
- package/apps/pwa/out/settings/index.txt +29 -26
- package/apps/pwa/out/setup/done/index.html +1 -1
- package/apps/pwa/out/setup/done/index.txt +29 -26
- package/apps/pwa/out/setup/index.html +1 -1
- package/apps/pwa/out/setup/index.txt +29 -26
- package/apps/pwa/out/share/index.html +1 -1
- package/apps/pwa/out/share/index.txt +29 -26
- package/apps/pwa/out/showroom/index.html +1 -1
- package/apps/pwa/out/showroom/index.txt +26 -23
- package/apps/pwa/out/sw-strategies.js +44 -0
- package/apps/pwa/out/sw.js +6 -44
- package/apps/pwa/out/tasks/index.html +1 -1
- package/apps/pwa/out/tasks/index.txt +29 -26
- package/apps/pwa/out/term/index.html +1 -1
- package/apps/pwa/out/term/index.txt +29 -26
- package/apps/pwa/out/trace/index.html +1 -0
- package/apps/pwa/out/trace/index.txt +32 -0
- package/apps/pwa/out/vault/index.html +1 -1
- package/apps/pwa/out/vault/index.txt +29 -26
- package/apps/pwa/out/workflows/chat-ui/index.html +1 -1
- package/apps/pwa/out/workflows/chat-ui/index.txt +29 -26
- package/apps/pwa/out/workflows/index.html +1 -1
- package/apps/pwa/out/workflows/index.txt +29 -27
- package/apps/pwa/out/workspace/index.html +1 -1
- package/apps/pwa/out/workspace/index.txt +29 -26
- package/apps/pwa/out/worktrees/index.html +1 -1
- package/apps/pwa/out/worktrees/index.txt +29 -26
- package/catalog/resources.yaml +14 -17
- package/docs/design/systems/LICENSE +201 -0
- package/docs/design/systems/NOTICE.md +29 -0
- package/docs/design/systems/SOURCE.json +291 -0
- package/docs/design/systems/application/DESIGN.md +71 -0
- package/docs/design/systems/application/manifest.json +54 -0
- package/docs/design/systems/application/tokens.css +63 -0
- package/docs/design/systems/artistic/DESIGN.md +71 -0
- package/docs/design/systems/artistic/manifest.json +54 -0
- package/docs/design/systems/artistic/tokens.css +63 -0
- package/docs/design/systems/bento/DESIGN.md +71 -0
- package/docs/design/systems/bento/manifest.json +54 -0
- package/docs/design/systems/bento/tokens.css +63 -0
- package/docs/design/systems/bold/DESIGN.md +71 -0
- package/docs/design/systems/bold/manifest.json +54 -0
- package/docs/design/systems/bold/tokens.css +63 -0
- package/docs/design/systems/brutalism/DESIGN.md +71 -0
- package/docs/design/systems/brutalism/manifest.json +54 -0
- package/docs/design/systems/brutalism/tokens.css +63 -0
- package/docs/design/systems/cafe/DESIGN.md +71 -0
- package/docs/design/systems/cafe/manifest.json +54 -0
- package/docs/design/systems/cafe/tokens.css +63 -0
- package/docs/design/systems/claymorphism/DESIGN.md +71 -0
- package/docs/design/systems/claymorphism/manifest.json +54 -0
- package/docs/design/systems/claymorphism/tokens.css +63 -0
- package/docs/design/systems/clean/DESIGN.md +71 -0
- package/docs/design/systems/clean/manifest.json +54 -0
- package/docs/design/systems/clean/tokens.css +63 -0
- package/docs/design/systems/colorful/DESIGN.md +71 -0
- package/docs/design/systems/colorful/manifest.json +54 -0
- package/docs/design/systems/colorful/tokens.css +63 -0
- package/docs/design/systems/contemporary/DESIGN.md +71 -0
- package/docs/design/systems/contemporary/manifest.json +54 -0
- package/docs/design/systems/contemporary/tokens.css +63 -0
- package/docs/design/systems/corporate/DESIGN.md +71 -0
- package/docs/design/systems/corporate/manifest.json +54 -0
- package/docs/design/systems/corporate/tokens.css +63 -0
- package/docs/design/systems/cosmic/DESIGN.md +71 -0
- package/docs/design/systems/cosmic/manifest.json +54 -0
- package/docs/design/systems/cosmic/tokens.css +63 -0
- package/docs/design/systems/creative/DESIGN.md +71 -0
- package/docs/design/systems/creative/manifest.json +54 -0
- package/docs/design/systems/creative/tokens.css +63 -0
- package/docs/design/systems/dashboard/DESIGN.md +71 -0
- package/docs/design/systems/dashboard/manifest.json +54 -0
- package/docs/design/systems/dashboard/tokens.css +63 -0
- package/docs/design/systems/default/DESIGN.md +62 -0
- package/docs/design/systems/default/manifest.json +69 -0
- package/docs/design/systems/default/tokens.css +200 -0
- package/docs/design/systems/dithered/DESIGN.md +71 -0
- package/docs/design/systems/dithered/manifest.json +54 -0
- package/docs/design/systems/dithered/tokens.css +63 -0
- package/docs/design/systems/doodle/DESIGN.md +71 -0
- package/docs/design/systems/doodle/manifest.json +54 -0
- package/docs/design/systems/doodle/tokens.css +63 -0
- package/docs/design/systems/dramatic/DESIGN.md +71 -0
- package/docs/design/systems/dramatic/manifest.json +54 -0
- package/docs/design/systems/dramatic/tokens.css +63 -0
- package/docs/design/systems/editorial/DESIGN.md +71 -0
- package/docs/design/systems/editorial/manifest.json +54 -0
- package/docs/design/systems/editorial/tokens.css +63 -0
- package/docs/design/systems/elegant/DESIGN.md +71 -0
- package/docs/design/systems/elegant/manifest.json +54 -0
- package/docs/design/systems/elegant/tokens.css +63 -0
- package/docs/design/systems/energetic/DESIGN.md +72 -0
- package/docs/design/systems/energetic/manifest.json +54 -0
- package/docs/design/systems/energetic/tokens.css +63 -0
- package/docs/design/systems/enterprise/DESIGN.md +71 -0
- package/docs/design/systems/enterprise/manifest.json +54 -0
- package/docs/design/systems/enterprise/tokens.css +63 -0
- package/docs/design/systems/expressive/DESIGN.md +71 -0
- package/docs/design/systems/expressive/manifest.json +54 -0
- package/docs/design/systems/expressive/tokens.css +63 -0
- package/docs/design/systems/fantasy/DESIGN.md +71 -0
- package/docs/design/systems/fantasy/manifest.json +54 -0
- package/docs/design/systems/fantasy/tokens.css +63 -0
- package/docs/design/systems/flat/DESIGN.md +71 -0
- package/docs/design/systems/flat/manifest.json +54 -0
- package/docs/design/systems/flat/tokens.css +63 -0
- package/docs/design/systems/friendly/DESIGN.md +71 -0
- package/docs/design/systems/friendly/manifest.json +54 -0
- package/docs/design/systems/friendly/tokens.css +63 -0
- package/docs/design/systems/glassmorphism/DESIGN.md +71 -0
- package/docs/design/systems/glassmorphism/manifest.json +54 -0
- package/docs/design/systems/glassmorphism/tokens.css +63 -0
- package/docs/design/systems/gradient/DESIGN.md +71 -0
- package/docs/design/systems/gradient/manifest.json +54 -0
- package/docs/design/systems/gradient/tokens.css +63 -0
- package/docs/design/systems/luxury/DESIGN.md +71 -0
- package/docs/design/systems/luxury/manifest.json +54 -0
- package/docs/design/systems/luxury/tokens.css +63 -0
- package/docs/design/systems/minimal/DESIGN.md +71 -0
- package/docs/design/systems/minimal/manifest.json +54 -0
- package/docs/design/systems/minimal/tokens.css +63 -0
- package/docs/design/systems/modern/DESIGN.md +71 -0
- package/docs/design/systems/modern/manifest.json +54 -0
- package/docs/design/systems/modern/tokens.css +63 -0
- package/docs/design/systems/mono/DESIGN.md +71 -0
- package/docs/design/systems/mono/manifest.json +54 -0
- package/docs/design/systems/mono/tokens.css +63 -0
- package/docs/design/systems/neobrutalism/DESIGN.md +71 -0
- package/docs/design/systems/neobrutalism/manifest.json +54 -0
- package/docs/design/systems/neobrutalism/tokens.css +63 -0
- package/docs/design/systems/neon/DESIGN.md +71 -0
- package/docs/design/systems/neon/manifest.json +54 -0
- package/docs/design/systems/neon/tokens.css +63 -0
- package/docs/design/systems/neumorphism/DESIGN.md +71 -0
- package/docs/design/systems/neumorphism/manifest.json +54 -0
- package/docs/design/systems/neumorphism/tokens.css +63 -0
- package/docs/design/systems/paper/DESIGN.md +71 -0
- package/docs/design/systems/paper/manifest.json +54 -0
- package/docs/design/systems/paper/tokens.css +63 -0
- package/docs/design/systems/perspective/DESIGN.md +71 -0
- package/docs/design/systems/perspective/manifest.json +54 -0
- package/docs/design/systems/perspective/tokens.css +63 -0
- package/docs/design/systems/premium/DESIGN.md +71 -0
- package/docs/design/systems/premium/manifest.json +54 -0
- package/docs/design/systems/premium/tokens.css +63 -0
- package/docs/design/systems/professional/DESIGN.md +71 -0
- package/docs/design/systems/professional/manifest.json +54 -0
- package/docs/design/systems/professional/tokens.css +63 -0
- package/docs/design/systems/publication/DESIGN.md +71 -0
- package/docs/design/systems/publication/manifest.json +54 -0
- package/docs/design/systems/publication/tokens.css +63 -0
- package/docs/design/systems/refined/DESIGN.md +71 -0
- package/docs/design/systems/refined/manifest.json +54 -0
- package/docs/design/systems/refined/tokens.css +63 -0
- package/docs/design/systems/retro/DESIGN.md +71 -0
- package/docs/design/systems/retro/manifest.json +54 -0
- package/docs/design/systems/retro/tokens.css +63 -0
- package/docs/design/systems/shadcn/DESIGN.md +71 -0
- package/docs/design/systems/shadcn/manifest.json +54 -0
- package/docs/design/systems/shadcn/tokens.css +255 -0
- package/docs/design/systems/simple/DESIGN.md +71 -0
- package/docs/design/systems/simple/manifest.json +54 -0
- package/docs/design/systems/simple/tokens.css +63 -0
- package/docs/design/systems/skeumorphism/DESIGN.md +71 -0
- package/docs/design/systems/skeumorphism/manifest.json +54 -0
- package/docs/design/systems/skeumorphism/tokens.css +63 -0
- package/docs/design/systems/sleek/DESIGN.md +71 -0
- package/docs/design/systems/sleek/manifest.json +54 -0
- package/docs/design/systems/sleek/tokens.css +63 -0
- package/docs/design/systems/spacious/DESIGN.md +71 -0
- package/docs/design/systems/spacious/manifest.json +54 -0
- package/docs/design/systems/spacious/tokens.css +63 -0
- package/docs/design/systems/storytelling/DESIGN.md +71 -0
- package/docs/design/systems/storytelling/manifest.json +54 -0
- package/docs/design/systems/storytelling/tokens.css +63 -0
- package/docs/design/systems/tom-modern/DESIGN.md +361 -0
- package/docs/design/systems/tom-modern/manifest.json +16 -0
- package/docs/design/systems/tom-modern/tokens.css +99 -0
- package/docs/design/systems/vibrant/DESIGN.md +71 -0
- package/docs/design/systems/vibrant/manifest.json +54 -0
- package/docs/design/systems/vibrant/tokens.css +63 -0
- package/docs/design/systems/vintage/DESIGN.md +71 -0
- package/docs/design/systems/vintage/manifest.json +54 -0
- package/docs/design/systems/vintage/tokens.css +63 -0
- package/docs/design/systems/warm-editorial/DESIGN.md +65 -0
- package/docs/design/systems/warm-editorial/manifest.json +54 -0
- package/docs/design/systems/warm-editorial/tokens.css +63 -0
- package/docs/goal-context/01-goal-authoring-checks.md +18 -0
- package/docs/goal-context/steward-directives-2026-09-28.md +42 -0
- package/graphs/catalog/catalog.yaml +615 -0
- package/graphs/default-loop.yaml +1 -1
- package/graphs/document-loop.yaml +1 -1
- package/graphs/examples/stale-draft-digest/digest.ts +26 -0
- package/graphs/examples/stale-draft-digest/recipes.yaml +8 -0
- package/graphs/examples/stale-draft-digest/stale-draft-digest.yaml +22 -0
- package/graphs/heal/heal-loop.yaml +155 -0
- package/graphs/heal/recipes.yaml +19 -0
- package/graphs/implement-loop.yaml +2 -2
- package/graphs/intake/intake-daily.yaml +55 -0
- package/graphs/intake/recipes.yaml +16 -0
- package/graphs/landing/landing-heal.yaml +22 -0
- package/graphs/landing/recipes.yaml +8 -0
- package/graphs/launch/launch-head.yaml +66 -0
- package/graphs/launch/recipes.yaml +8 -0
- package/graphs/operate-loop.yaml +1 -1
- package/graphs/ops/docs-publish.yaml +31 -0
- package/graphs/ops/recipes.yaml +8 -0
- package/graphs/release/recipes.yaml +45 -0
- package/graphs/release/release-loop.yaml +45 -0
- package/graphs/research-loop.yaml +1 -1
- package/graphs/steward/recipes.yaml +12 -0
- package/graphs/steward/steward.yaml +45 -0
- package/graphs/video/README.md +1 -0
- package/graphs/video/broll-line.yaml +54 -0
- package/graphs/video/explainer-line.yaml +58 -0
- package/package.json +9 -5
- package/plugins/job-coach/.agents/plugins/marketplace.json +12 -0
- package/plugins/job-coach/.codex-plugin/plugin.json +23 -0
- package/plugins/job-coach/.mcp.json +9 -0
- package/plugins/job-coach/README.md +32 -0
- package/plugins/job-coach/connectors/ncs/server.ts +90 -0
- package/plugins/job-coach/examples/interview-sample.md +11 -0
- package/plugins/job-coach/graphs/course-links.ts +46 -0
- package/plugins/job-coach/graphs/gap-judge.ts +44 -0
- package/plugins/job-coach/graphs/recipes.yaml +45 -0
- package/plugins/job-coach/graphs/report-enterprise.yaml +28 -0
- package/plugins/job-coach/graphs/report.yaml +20 -0
- package/plugins/job-coach/graphs/run-step.ts +302 -0
- package/plugins/job-coach/plugin.json +26 -0
- package/plugins/job-coach/plugin.ts +6 -0
- package/plugins/job-coach/skills/career-report/SKILL.md +6 -0
- package/plugins/job-coach/skills/enterprise-ai-fit/SKILL.md +8 -0
- package/plugins/job-coach/skills/enterprise-competency/SKILL.md +8 -0
- package/plugins/job-coach/skills/enterprise-needs/SKILL.md +8 -0
- package/plugins/job-coach/skills/enterprise-roadmap/SKILL.md +8 -0
- package/plugins/job-coach/skills/enterprise-task-analysis/SKILL.md +8 -0
- package/plugins/job-coach/skills/interview-to-profile/SKILL.md +23 -0
- package/plugins/job-coach/skills/run-report/SKILL.md +15 -0
- package/scripts/backup/elanous-backup.sh +143 -14
- package/scripts/backup/elanous-restore.sh +122 -0
- package/scripts/build-docs-site.ts +4 -3
- package/scripts/ci-daemon-port-gate.ts +164 -0
- package/scripts/ci-typecheck-changed.ts +15 -1
- package/scripts/cli-json-exit-scan.ts +126 -0
- package/scripts/codex-quota-alert-format.ts +52 -0
- package/scripts/codex-quota-alert.ts +63 -13
- package/scripts/continuation-dogfood.ts +2 -1
- package/scripts/coord-channel-watch.sh +28 -9
- package/scripts/coord-post.sh +49 -12
- package/scripts/coord-tracks.json +6 -5
- package/scripts/cron-run.ts +37 -16
- package/scripts/daemon-port-baseline.txt +9 -0
- package/scripts/design/extract-corpus-bench.ts +469 -0
- package/scripts/design/extract-corpus-score.ts +510 -0
- package/scripts/design/vendor-open-design-systems.ts +100 -0
- package/scripts/docs-lint.ts +1 -1
- package/scripts/eval-bot-vs-grok.ts +79 -0
- package/scripts/eval-grok-live-baseline.ts +36 -0
- package/scripts/fixtures/front-route-corpus.sample.json +17 -0
- package/scripts/fleet/node-setup.sh +80 -7
- package/scripts/heal/run-role.ts +328 -0
- package/scripts/install-role-watch.sh +95 -0
- package/scripts/install.ps1 +11 -1
- package/scripts/install.sh +81 -9
- package/scripts/isolation-hardcode-baseline.txt +1 -1
- package/scripts/landing-heal/must-fix-match.ts +63 -0
- package/scripts/landing-heal/run-mission.ts +195 -0
- package/scripts/lib/front-route-measurement.ts +131 -0
- package/scripts/lib/pwa-scenarios/acp-replay.ts +79 -0
- package/scripts/lib/pwa-scenarios/cdp-driver.ts +67 -0
- package/scripts/lib/pwa-scenarios/runner.ts +200 -0
- package/scripts/lib/pwa-scenarios/scenarios.ts +202 -0
- package/scripts/lib/tui-sim-keys.ts +42 -0
- package/scripts/market/db-check.ts +212 -0
- package/scripts/market-posture-cycle.ts +63 -4
- package/scripts/measure-front-route-classifier.ts +56 -0
- package/scripts/media/ocr-leak-scan.sh +21 -0
- package/scripts/nightly-docops.ts +1 -1
- package/scripts/ops/channel-bot-token-migrate.ts +146 -0
- package/scripts/ops-health-check.ts +15 -3
- package/scripts/pty-scenarios/run.ts +272 -0
- package/scripts/public-export.ts +2 -3
- package/scripts/public-import-pr.ts +80 -6
- package/scripts/public-leak-baseline.txt +0 -7
- package/scripts/publish-internal-dist.ts +118 -0
- package/scripts/pwa-scenarios.ts +106 -0
- package/scripts/rebrand-elanous.ts +1 -1
- package/scripts/red-sweep-diff.ts +1 -1
- package/scripts/release-loop/auto-approve-node.ts +72 -0
- package/scripts/release-loop/cutoff.ts +139 -0
- package/scripts/release-loop/docs-land-node.ts +65 -0
- package/scripts/release-loop/docs-node.ts +172 -0
- package/scripts/release-loop/gate-diff.ts +29 -0
- package/scripts/release-loop/gate-node.ts +641 -0
- package/scripts/release-loop/node-verdict.ts +85 -0
- package/scripts/release-loop/prepare-node.ts +31 -0
- package/scripts/release-loop/publish-node.ts +61 -0
- package/scripts/release-loop/pwa-node-verdict.ts +45 -0
- package/scripts/release-loop/pwa-scenarios-node.ts +140 -0
- package/scripts/release-loop/release-docs.ts +109 -0
- package/scripts/release-loop/test-durations.ts +63 -0
- package/scripts/release-loop/tui-node-checks.ts +29 -0
- package/scripts/release-loop/tui-sim-node.ts +113 -0
- package/scripts/release-loop/upgrade-node.ts +26 -0
- package/scripts/release-loop/verify-node.ts +21 -0
- package/scripts/release-loop/version-node.ts +147 -0
- package/scripts/release-upgrade-check.sh +53 -0
- package/scripts/se-mission-prepare.ts +9 -15
- package/scripts/test-audit-coverage-per-file.sh +16 -0
- package/scripts/test-audit-meaningless.ts +88 -0
- package/scripts/test-audit-overlap-and-weak.ts +73 -0
- package/scripts/test-deterministic.ts +29 -6
- package/scripts/tui-sim.ts +59 -14
- package/scripts/uninstall.sh +10 -3
- package/scripts/ux/bump-installed.sh +20 -0
- package/scripts/ux/lib/cdp.ts +72 -0
- package/scripts/ux/record-page.ts +50 -0
- package/scripts/video-broll-line.ts +89 -0
- package/scripts/waitlist-daily-digest.ts +108 -0
- package/scripts/window-landings.sh +1 -1
- package/skills/explainer-video/SKILL.md +99 -0
- package/skills/explainer-video/engine/brand/elanous-mark-on-dark.svg +1 -0
- package/skills/explainer-video/engine/build.mjs +431 -0
- package/skills/explainer-video/engine/vo.ts +37 -0
- package/skills/explainer-video/examples/elanous-0.2.5/script.json +155 -0
- package/skills/motion-broll/LICENSE +25 -0
- package/skills/motion-broll/SKILL.md +150 -0
- package/skills/motion-broll/SOURCE.md +6 -0
- package/skills/motion-broll/engine/base.css +19 -0
- package/skills/motion-broll/engine/beats.js +11 -0
- package/skills/motion-broll/engine/build.py +21 -0
- package/skills/motion-broll/engine/fonts/Geist-Variable.woff2 +0 -0
- package/skills/motion-broll/engine/fonts/GeistMono-Medium.woff2 +0 -0
- package/skills/motion-broll/engine/fonts/OFL-Geist.txt +92 -0
- package/skills/motion-broll/engine/motion.js +146 -0
- package/skills/motion-broll/engine/render.js +22 -0
- package/skills/motion-broll/examples/opus-aoe2/01-opus-drop.html +41 -0
- package/skills/motion-broll/examples/opus-aoe2/02-pip-builds.html +110 -0
- package/skills/motion-broll/examples/opus-aoe2/03-effort-slider.html +38 -0
- package/skills/motion-broll/examples/opus-aoe2/04-master-prompt.html +56 -0
- package/skills/motion-broll/examples/opus-aoe2/05-low-vs-max.html +49 -0
- package/skills/motion-broll/examples/opus-aoe2/06-chapter.html +18 -0
- package/skills/motion-broll/examples/opus-aoe2/plan.json +14 -0
- package/skills/motion-broll/reference/engine-api.md +106 -0
- package/skills/motion-broll/scripts/composite.py +14 -0
- package/skills/motion-broll/scripts/inspect_video.py +34 -0
- package/skills/motion-broll/scripts/make_pages.py +34 -0
- package/skills/motion-broll/scripts/setup.sh +16 -0
- package/skills/motion-broll/scripts/words.py +13 -0
- package/skills/motion-broll/templates/compare.html +135 -0
- package/skills/motion-broll/templates/viewer.html +97 -0
- package/skills/omni-digest/SKILL.md +260 -0
- package/skills/omni-digest/digest.md +197 -0
- package/skills/omni-digest/docs/diagrams/noncode-terminal-promotion-path-2026-08-13.mmd +32 -0
- package/skills/omni-digest/package-lock.json +558 -0
- package/skills/omni-digest/package.json +13 -0
- package/skills/omni-digest/scripts/main.ts +404 -0
- package/skills/omni-digest/src/delegate.ts +34 -0
- package/skills/omni-digest/src/detect.ts +46 -0
- package/skills/omni-digest/src/diagram.ts +72 -0
- package/skills/omni-digest/src/domain-staging.ts +50 -0
- package/skills/omni-digest/src/env.ts +38 -0
- package/skills/omni-digest/src/fetch.ts +237 -0
- package/skills/omni-digest/src/media.ts +180 -0
- package/skills/omni-digest/src/obsidian.ts +69 -0
- package/skills/omni-digest/src/ocr.ts +149 -0
- package/skills/omni-digest/src/router.ts +60 -0
- package/skills/omni-digest/src/summarize.ts +87 -0
- package/skills/omni-digest/src/types.ts +124 -0
- package/skills/omni-digest/src/util.ts +34 -0
- package/skills/omni-digest/src/visual.ts +129 -0
- package/skills/omni-digest/src/x-api.ts +151 -0
- package/skills/omni-digest/tsconfig.json +13 -0
- package/src/a2a/agent-card.ts +29 -0
- package/src/a2a/server.ts +173 -0
- package/src/acp/auto-persist.ts +3 -6
- package/src/acp/backend-registry.ts +6 -10
- package/src/acp/channel-browser-shell.ts +1 -535
- package/src/acp/client.ts +106 -36
- package/src/acp/fs-roots.ts +20 -4
- package/src/acp/obsidian-tags.ts +6 -3
- package/src/acp/server.ts +189 -32
- package/src/agent/nested-agent-env.ts +1 -0
- package/src/agent/pty-binding.ts +1 -1
- package/src/agent/spawn-embodied-agent-in-vw.ts +5 -336
- package/src/agent/subagent-callable.ts +39 -1
- package/src/agent-mission/browser-login.ts +241 -0
- package/src/agent-mission/capabilities-cli.ts +33 -0
- package/src/agent-mission/capability-matrix.ts +31 -0
- package/src/agent-mission/capability-readers.ts +79 -0
- package/src/agent-mission/capability-types.ts +15 -0
- package/src/agent-mission/claude-headless.ts +131 -0
- package/src/agent-mission/claude-subscription.ts +57 -0
- package/src/agent-mission/doc-guided-install.ts +185 -0
- package/src/agent-mission/driver.ts +900 -69
- package/src/agent-mission/env-profile.ts +68 -0
- package/src/agent-mission/handoff.ts +128 -0
- package/src/agent-mission/in-agent-plugin.ts +311 -0
- package/src/agent-mission/mission-cli.ts +25 -1
- package/src/agent-mission/parse.ts +9 -4
- package/src/agent-mission/pr-review-watch.ts +62 -13
- package/src/agent-mission/resource-ladder.ts +235 -0
- package/src/agent-mission/tool-install.ts +249 -0
- package/src/agent-mission/tool-ladder.ts +37 -0
- package/src/agent-room/room-builder.ts +6 -600
- package/src/agent-substrate/review-intent.ts +43 -1
- package/src/auth/acp-token.ts +16 -0
- package/src/auth/github-app-token.ts +112 -0
- package/src/auth/scope.ts +8 -4
- package/src/auth/temp-tokens.ts +131 -0
- package/src/auto-research/obsidian-bridge.ts +2 -0
- package/src/autopilot/build/integrity-gate.ts +27 -4
- package/src/autopilot/build/isolated-instance.ts +2 -1
- package/src/autopilot/build/llm-conflict-merge.ts +27 -0
- package/src/autopilot/gh-rest-fallback.ts +177 -0
- package/src/autopilot/llm-control-brain.ts +54 -12
- package/src/autopilot/mission-engine.ts +15 -1
- package/src/autopilot/mission-notify.ts +4 -2
- package/src/autopilot/mission-origin.ts +5 -5
- package/src/autopilot/mission-phase-track.ts +52 -0
- package/src/autopilot/mission-tool.ts +1 -1
- package/src/autopilot/pr-manager.ts +51 -4
- package/src/autopilot/pty-control-loop.ts +94 -2
- package/src/autopilot/track-agent.ts +138 -0
- package/src/autopilot/track-courier.ts +153 -0
- package/src/boot/acp-server.ts +18 -18
- package/src/boot/check-same-origin.ts +19 -5
- package/src/boot/daemon-multi-llm-runtime.ts +14 -8
- package/src/boot/daemon-prompt-turn.ts +2 -0
- package/src/boot/daemon-runtime.ts +36 -14
- package/src/boot/daemon-tools/index.ts +16 -0
- package/src/boot/daemon-tools/self-implement.ts +4 -0
- package/src/boot/daemon-tools/types.ts +3 -0
- package/src/boot/daemon-tools/web-search.ts +2 -1
- package/src/boot/ws-bridge.ts +11 -0
- package/src/browser-cdp/chrome-flags.ts +7 -0
- package/src/browser-cdp/client.ts +2 -0
- package/src/browser-pane/mount.ts +1 -246
- package/src/budget/codex-reset-credit-state.ts +15 -0
- package/src/budget/fetchers/codex.ts +2 -1
- package/src/budget/run-usage-rollup.ts +11 -4
- package/src/budget/unified-usage.ts +2 -1
- package/src/capture/tui-self-report.ts +10 -0
- package/src/channel-bot-token.ts +126 -0
- package/src/chat/index.ts +57 -52
- package/src/chat/input-text-key.ts +2 -2
- package/src/chat/log-scroll-key.ts +12 -0
- package/src/chat/mode/manual.ts +2 -4
- package/src/chat/pickers/state.ts +10 -27
- package/src/chat/search/modal.ts +14 -2
- package/src/chat/submit-trace.ts +30 -0
- package/src/chat/tool-render/types.ts +1 -1
- package/src/chat/turn-typeahead.ts +2 -1
- package/src/chat/wrap.ts +6 -8
- package/src/cli/__fixtures__/agent-help-before/agent.txt +18 -0
- package/src/cli/__fixtures__/agent-help-before/registry.txt +13 -0
- package/src/cli/__fixtures__/agent-help-before/root.txt +100 -0
- package/src/cli/__fixtures__/agent-help-before/tier.txt +15 -0
- package/src/cli/a2a-cli.ts +52 -0
- package/src/cli/agent-cli.ts +726 -0
- package/src/cli/autopilot-cli.ts +739 -0
- package/src/cli/bg-launch.ts +20 -4
- package/src/cli/claude-plugin-setup.ts +199 -0
- package/src/cli/config-test-sync.ts +94 -10
- package/src/cli/connector-cli.ts +204 -0
- package/src/cli/control-cli.ts +220 -0
- package/src/cli/control-join-cli.ts +142 -0
- package/src/cli/decisions-cli.ts +94 -0
- package/src/cli/docs-cli.ts +38 -0
- package/src/cli/doctor-cli.ts +262 -77
- package/src/cli/doctor-distro.ts +17 -1
- package/src/cli/doctor-fix.ts +145 -17
- package/src/cli/doctor-llm-assist.ts +71 -0
- package/src/cli/doctor-private-files.ts +66 -0
- package/src/cli/doctor-readiness.ts +23 -28
- package/src/cli/fleet-cli.ts +63 -0
- package/src/cli/g6a-registration-probe.ts +16 -0
- package/src/cli/git-install-plan.ts +51 -0
- package/src/cli/hooks-cli.ts +44 -0
- package/src/cli/ingest-token-cli.ts +21 -0
- package/src/cli/intake-cli.ts +416 -0
- package/src/cli/labels-cli.ts +74 -0
- package/src/cli/leader-cli.ts +10 -159
- package/src/cli/live-cli.ts +48 -0
- package/src/cli/llm-detect-cli.ts +130 -0
- package/src/cli/logs-cli.ts +231 -7
- package/src/cli/machine-cli.ts +38 -0
- package/src/cli/mcp-call.ts +52 -13
- package/src/cli/mcp-gateway-cli.ts +94 -0
- package/src/cli/mcp-login.ts +116 -8
- package/src/cli/mcp-reload.ts +20 -3
- package/src/cli/nexus-dist.ts +18 -13
- package/src/cli/nexus-ios-bind.ts +20 -7
- package/src/cli/ops-cli.ts +225 -0
- package/src/cli/plugin-cli.ts +201 -0
- package/src/cli/pod-cli.ts +83 -0
- package/src/cli/port-lease-local.ts +124 -0
- package/src/cli/pr-cli.ts +12 -1
- package/src/cli/pr-lineage.ts +2 -1
- package/src/cli/provider-cli.ts +720 -0
- package/src/cli/pty-record-cli.ts +63 -0
- package/src/cli/pty-takeover-cli.ts +57 -40
- package/src/cli/pty-web-address.ts +52 -0
- package/src/cli/publish-cli.ts +44 -0
- package/src/cli/pwa-build.ts +18 -12
- package/src/cli/pwa-dev.ts +13 -8
- package/src/cli/pwa-registry.ts +6 -0
- package/src/cli/pwa-share.ts +65 -22
- package/src/cli/pwa-show.ts +20 -4
- package/src/cli/pwa-start.ts +102 -27
- package/src/cli/pwa-test.ts +201 -96
- package/src/cli/release-cli.ts +177 -7
- package/src/cli/remotes-cli.ts +20 -1
- package/src/cli/remotes.ts +2 -1
- package/src/cli/repo-cli.ts +315 -36
- package/src/cli/research-cli.ts +66 -0
- package/src/cli/role-cli.ts +320 -0
- package/src/cli/schedule-cli.ts +246 -0
- package/src/cli/self-update.ts +103 -12
- package/src/cli/setup-cli.ts +64 -2
- package/src/cli/shadow-cli.ts +188 -0
- package/src/cli/share-auto-mount.ts +12 -8
- package/src/cli/start-cli.ts +240 -0
- package/src/cli/stdout-flush.ts +8 -0
- package/src/cli/storage-cli.ts +334 -0
- package/src/cli/tailscale-serve.ts +34 -19
- package/src/cli/tasks-cli.ts +176 -0
- package/src/cli/test-state-dir-flag.ts +1 -1
- package/src/cli/usage-cli.ts +15 -4
- package/src/cli/where-cli.ts +22 -55
- package/src/code-edit/diff-render.ts +6 -32
- package/src/code-edit/source-delta-browser.ts +0 -1
- package/src/codex/models.ts +1 -1
- package/src/config.ts +8 -13
- package/src/connectors/event-ledger.ts +41 -0
- package/src/connectors/linear-projector.ts +88 -0
- package/src/connectors/linear.ts +143 -0
- package/src/connectors/types.ts +19 -0
- package/src/control-plane/lease-holder.ts +41 -0
- package/src/control-plane/ledger.ts +146 -0
- package/src/control-plane/light-member.ts +164 -0
- package/src/control-plane/member-tokens.ts +88 -0
- package/src/control-plane/member.ts +159 -0
- package/src/control-plane/port-lease-heartbeat.ts +101 -0
- package/src/control-plane/ports.ts +40 -0
- package/src/control-plane/primary.ts +169 -0
- package/src/control-plane/server.ts +216 -0
- package/src/dashboard/acp-boot.ts +14 -38
- package/src/dashboard/assistant-render-state-runtime.ts +2 -2
- package/src/dashboard/assistant-sample-runtime.ts +2 -2
- package/src/dashboard/auto-compact-runtime.ts +11 -16
- package/src/dashboard/browser-help-runtime.ts +2 -3
- package/src/dashboard/chat/acp-chat.ts +2 -5
- package/src/dashboard/code-edit-post-turn-runtime.ts +1 -2
- package/src/dashboard/compact-surface-assembly.ts +0 -14
- package/src/dashboard/compact-surface-dispatch.ts +1 -38
- package/src/dashboard/compact-surface-inventory.ts +0 -8
- package/src/dashboard/compact-surface-runtime.ts +0 -14
- package/src/dashboard/context-menu-provider-boot.ts +0 -9
- package/src/dashboard/context-window-runtime-boot.ts +0 -37
- package/src/dashboard/index.ts +331 -2562
- package/src/dashboard/input/chat-main-plain-turn-runtime.ts +0 -6
- package/src/dashboard/input/chat-main-slash-command.ts +2 -2
- package/src/dashboard/input/dashboard-priority-key-route.ts +1 -43
- package/src/dashboard/input/mouse-modal-surface-runtime.ts +1 -5
- package/src/dashboard/input/mouse-wiring.ts +2 -3
- package/src/dashboard/input/no-provider-reply.ts +13 -0
- package/src/dashboard/layout-display-runtime-registration.ts +0 -10
- package/src/dashboard/modals/pane-multi.ts +1 -1
- package/src/dashboard/replay-preview.ts +1 -1
- package/src/dashboard/runtime/approvers.ts +0 -1
- package/src/dashboard/runtime/state-snapshot.ts +0 -90
- package/src/dashboard/scenario-runtime-boot.ts +16 -16
- package/src/dashboard/slash-runtime/dashboard-handlers.ts +134 -1456
- package/src/dashboard/slash-runtime/design-pick.ts +96 -0
- package/src/dashboard/slash-runtime/help-from-registry.ts +77 -0
- package/src/dashboard/slash-runtime/unknown-slash-reply.ts +78 -0
- package/src/dashboard/stale-install-check.ts +77 -0
- package/src/dashboard/surface-registry-wiring.ts +2 -15
- package/src/dashboard/turn-message-runtime.ts +0 -4
- package/src/dashboard/turn-preamble.ts +1 -1
- package/src/dashboard/turn-stream-formatter.ts +2 -2
- package/src/dashboard/turn-stream-runtime.ts +2 -2
- package/src/dashboard-pane-context-menu.ts +0 -14
- package/src/debug/log.ts +7 -0
- package/src/decide/boundary-shadow.ts +131 -0
- package/src/decisions/decision-ledger.ts +404 -0
- package/src/design/apply-direction.ts +209 -0
- package/src/design/css-root-tokens.ts +89 -0
- package/src/design/custom-system-create.ts +230 -0
- package/src/design/design-directions.ts +61 -41
- package/src/design/design-gate.ts +241 -0
- package/src/design/design-library.ts +57 -0
- package/src/design/design-previews.ts +138 -0
- package/src/design/design-systems.ts +61 -0
- package/src/design/lint-artifact-run.ts +46 -6
- package/src/design/lint-artifact.ts +5 -1
- package/src/design/open-design-client.ts +247 -0
- package/src/design/system-from-extract.ts +767 -0
- package/src/design/system-schema.ts +123 -0
- package/src/discord-slash-wire.ts +2 -1
- package/src/discord-test-runner.ts +2 -1
- package/src/discord-voice-wire.ts +2 -1
- package/src/discord.ts +1 -1
- package/src/dispatch/opportunistic-launcher.ts +24 -1
- package/src/domains/ops-status.ts +35 -2
- package/src/domains/outbound-alert.ts +24 -6
- package/src/domains/repeated-failure.ts +89 -0
- package/src/domains/schedule-manage-tool.ts +28 -8
- package/src/domains/schedule-migrate.ts +22 -4
- package/src/domains/schedule-registry.ts +88 -33
- package/src/domains/schedule-runs.ts +132 -0
- package/src/domains/schedule-state.ts +152 -0
- package/src/domains/telegram-kind-route.ts +21 -0
- package/src/element-registry/address.ts +1 -3
- package/src/execution-loop/dispatch-task.ts +139 -0
- package/src/execution-loop/gate-decision-summary.ts +29 -0
- package/src/execution-loop/gates.ts +197 -0
- package/src/git-fs/gh-cli.ts +47 -17
- package/src/git-fs/retry.ts +1 -0
- package/src/git-fs/runner.ts +1 -0
- package/src/git-fs/worktree.ts +6 -5
- package/src/github/pr-labels.ts +68 -0
- package/src/graph-kinds/installed-plugin-nodes.ts +95 -0
- package/src/graph-kinds/plugin-nodes.ts +68 -0
- package/src/graph-kinds/registry.ts +118 -0
- package/src/graph-runner/graph-cli.ts +103 -0
- package/src/graph-runner/graph-notify.ts +220 -0
- package/src/graph-runner/graph-tick.ts +119 -0
- package/src/graph-runner/release-manifest.ts +93 -0
- package/src/graph-runner/runner.ts +487 -0
- package/src/grok/credential.ts +158 -5
- package/src/grounding/ensure-grounding.ts +131 -0
- package/src/grounding/mirror-export.ts +89 -0
- package/src/grounding/mirror-manifest.ts +252 -0
- package/src/grounding/sources-cli.ts +209 -0
- package/src/grounding/sources.ts +333 -0
- package/src/grounding/token.ts +121 -0
- package/src/harness/harness-cli-command.ts +415 -23
- package/src/harness/harness-pod-dispatch.ts +116 -0
- package/src/harness/harness-stop.ts +260 -0
- package/src/harness/harness-substrate-default.ts +40 -0
- package/src/harness/harness-worktrees.ts +1 -1
- package/src/harness/harness-write-boundary.ts +2 -0
- package/src/harness/llm-decompose.ts +2 -1
- package/src/harness/self-send-decide.ts +233 -0
- package/src/harness/self-send-target.ts +22 -1
- package/src/harness/shell-relay.ts +5 -0
- package/src/harness/worktree-branch-prefix.ts +4 -3
- package/src/hooks/providers.ts +77 -0
- package/src/hooks/queue.ts +73 -0
- package/src/hooks/receiver.ts +133 -0
- package/src/index.ts +712 -3409
- package/src/input-core/dispatcher.ts +1 -1
- package/src/input-core/drag-esc-interceptor.ts +1 -1
- package/src/instance/current.ts +5 -5
- package/src/instance/leader.ts +10 -326
- package/src/instance/nexus-run-refusal.ts +27 -92
- package/src/instance/project-local-exclude.ts +27 -0
- package/src/instance/resolve.ts +46 -175
- package/src/intake-plane/capture.ts +14 -1
- package/src/intake-plane/check.ts +34 -14
- package/src/intake-plane/collect-github.ts +258 -0
- package/src/intake-plane/collect-pod.ts +100 -0
- package/src/intake-plane/collect-telegram-saved.ts +91 -0
- package/src/intake-plane/digest.ts +111 -0
- package/src/intake-plane/enrich-plugins.ts +1 -1
- package/src/intake-plane/front-classifier.ts +56 -0
- package/src/intake-plane/front-route-classifier.ts +80 -0
- package/src/intake-plane/front-route-rules.ts +152 -0
- package/src/intake-plane/grounding-docs.ts +185 -0
- package/src/intake-plane/harness-target.ts +20 -0
- package/src/intake-plane/intake-to-tasks.ts +303 -0
- package/src/intake-plane/items.ts +247 -0
- package/src/intake-plane/link-ledger.ts +27 -0
- package/src/intake-plane/route.ts +104 -0
- package/src/intake-plane/runtime-callables.ts +3 -1
- package/src/intake-plane/sketch-ledger.ts +34 -0
- package/src/intake-plane/slash.ts +30 -2
- package/src/intake-plane/submit-intake-work.ts +160 -0
- package/src/intake-plane/telegram-work.ts +56 -0
- package/src/iul/sidebar-shell.ts +0 -165
- package/src/launch-head/capability-check.ts +162 -0
- package/src/launch-head/launch-head-cli.ts +242 -0
- package/src/launch-head/load-balance.ts +81 -0
- package/src/live/detail-switch.ts +180 -0
- package/src/llm/provider-detect.ts +247 -0
- package/src/llm/provider-probe.ts +57 -0
- package/src/llm/usable-llm.ts +32 -0
- package/src/llm.ts +55 -23
- package/src/log-entry.ts +1 -1
- package/src/log-pane/attachment-popup.ts +1 -2
- package/src/loops/loop-cli.ts +37 -0
- package/src/loops/registry.ts +196 -0
- package/src/market/official-keys.ts +5 -0
- package/src/market/publish.ts +329 -0
- package/src/market/signed-index.ts +156 -0
- package/src/market/tgz.ts +121 -0
- package/src/mcp/client.ts +1 -1
- package/src/mcp/mcp-oauth.ts +40 -5
- package/src/mcp/server.ts +75 -7
- package/src/mcp-gateway/gateway.ts +128 -0
- package/src/mcp-gateway/pat-store.ts +124 -0
- package/src/mss/logging/log-store.ts +91 -2
- package/src/mss/logging/scoped-level.ts +5 -9
- package/src/native-tool-catalog.ts +66 -345
- package/src/nexus/api/connect-info.ts +23 -25
- package/src/nexus/api/context-url.ts +1 -1
- package/src/nexus/api/design-check.ts +90 -59
- package/src/nexus/api/design-previews-route.ts +182 -0
- package/src/nexus/api/design-system-create-route.ts +123 -0
- package/src/nexus/api/graph-approvals.ts +125 -0
- package/src/nexus/api/graph-kinds.ts +69 -0
- package/src/nexus/api/graphs-api.ts +221 -0
- package/src/nexus/api/harness-api.ts +31 -2
- package/src/nexus/api/health.ts +15 -0
- package/src/nexus/api/http-server.ts +328 -43
- package/src/nexus/api/image-generate.ts +3 -0
- package/src/nexus/api/ingest-token.ts +175 -0
- package/src/nexus/api/intake-ledger-api.ts +54 -0
- package/src/nexus/api/intake-route.ts +111 -0
- package/src/nexus/api/json-response.ts +33 -0
- package/src/nexus/api/live-detail.ts +47 -0
- package/src/nexus/api/live-shipped.ts +78 -0
- package/src/nexus/api/log-fabric.ts +42 -2
- package/src/nexus/api/markdown-publish.ts +3 -2
- package/src/nexus/api/mcp-http.ts +14 -9
- package/src/nexus/api/mcp-oauth-hint.ts +31 -0
- package/src/nexus/api/mcp-public-allowlist.ts +33 -0
- package/src/nexus/api/merge-approvals-gate.ts +79 -0
- package/src/nexus/api/merge-approvals.ts +307 -0
- package/src/nexus/api/meta-api.ts +18 -0
- package/src/nexus/api/next-fluent-wiring.ts +7 -9
- package/src/nexus/api/plugins-credentials-api.ts +47 -0
- package/src/nexus/api/plugins-market.ts +209 -0
- package/src/nexus/api/pod-credential-api.ts +187 -0
- package/src/nexus/api/public-routes.ts +87 -0
- package/src/nexus/api/rest-route-paths.ts +15 -0
- package/src/nexus/api/schedules-action.ts +12 -3
- package/src/nexus/api/schedules-read.ts +228 -0
- package/src/nexus/api/sessions-store.ts +8 -2
- package/src/nexus/api/setup-answer-priority.ts +130 -0
- package/src/nexus/api/setup-channel-bot.ts +56 -0
- package/src/nexus/api/setup-child-llm.ts +228 -0
- package/src/nexus/api/setup-obsidian-skills.ts +93 -0
- package/src/nexus/api/task-cards-api.ts +34 -0
- package/src/nexus/api/tasks-create.ts +136 -0
- package/src/nexus/api/telegram-trigger-bot.ts +3 -3
- package/src/nexus/api/terminals.ts +204 -18
- package/src/nexus/api/trace.ts +405 -0
- package/src/nexus/api/vault-api.ts +140 -7
- package/src/nexus/api/worktrees.ts +18 -2
- package/src/nexus/boot/register-mcp-clients.ts +135 -16
- package/src/nexus/daemon-endpoint.ts +85 -0
- package/src/nexus/default-port.ts +1 -0
- package/src/nexus/index.ts +362 -143
- package/src/nexus/onboarding/pwa-share-prompt.ts +31 -8
- package/src/nexus/onboarding/tailscale-probe.ts +9 -1
- package/src/nexus/outbound/router.ts +1 -1
- package/src/nexus/setup-status.ts +58 -0
- package/src/nexus/supervisor/lock.ts +8 -0
- package/src/nexus/webterm/pty.ts +15 -0
- package/src/oauth/codex-account-rotation.ts +122 -16
- package/src/oauth/codex-account-store.ts +88 -19
- package/src/oauth/codex-quota-policy.ts +55 -0
- package/src/oauth/store.ts +28 -25
- package/src/obsidian/default-vault.ts +17 -0
- package/src/obsidian/vault-write-guard.ts +46 -0
- package/src/onboarding/help/llm.md +2 -2
- package/src/onboarding.ts +27 -4
- package/src/panes/alt-skip-predicate.ts +4 -3
- package/src/panes/external-terminal-pane.ts +3 -4
- package/src/panes/factory.ts +1 -18
- package/src/panes/index.ts +1 -5
- package/src/panes/pane-cycle.ts +1 -1
- package/src/panes/types.ts +1 -1
- package/src/platform/env-literal.ts +4 -0
- package/src/plugin-hooks/dispatcher.ts +10 -4
- package/src/plugins/core/host.ts +108 -4
- package/src/plugins/core/manifest.ts +104 -7
- package/src/plugins/install/market-fetch.ts +250 -0
- package/src/plugins/install/plugin-credentials.ts +106 -0
- package/src/plugins/install/plugin-install.ts +518 -0
- package/src/policy/claude-subscription-guard.ts +25 -0
- package/src/preview/terminal.ts +24 -1
- package/src/preview-pane/mount.ts +1 -142
- package/src/prompt/references.ts +4 -51
- package/src/prompt-library/universal-preamble.ts +8 -2
- package/src/pty-shell/pty-control-ipc.ts +57 -3
- package/src/pty-shell/pty-mouse.ts +75 -0
- package/src/pty-shell/pty-recording.ts +108 -0
- package/src/pty-shell/registry.ts +53 -3
- package/src/python/resolve-python.ts +1 -1
- package/src/release-loop/checklist.ts +191 -0
- package/src/release-loop/manifest.ts +65 -0
- package/src/release-loop/release-note.ts +177 -0
- package/src/roles/lease-cas.ts +52 -0
- package/src/roles/machine-name.ts +48 -0
- package/src/roles/machine-profile.ts +65 -0
- package/src/roles/role-lease-read.ts +81 -0
- package/src/roles/role-lease.ts +63 -0
- package/src/roles/role-watch.ts +69 -0
- package/src/self-dev/ask-launch-flow.ts +39 -22
- package/src/self-dev/ask-launch-io.ts +1 -1
- package/src/self-dev/dev-cli.ts +290 -159
- package/src/self-dev/dev-pipeline.ts +157 -9
- package/src/self-dev/draft-sweep.ts +231 -0
- package/src/self-dev/draft-triage-rules.ts +42 -0
- package/src/self-dev/entrance-baseline.ts +156 -4
- package/src/self-dev/fabric-decompose-adapter.ts +10 -0
- package/src/self-dev/launch-preflight.ts +1 -1
- package/src/self-dev/orchestrate.ts +297 -20
- package/src/self-dev/repair-signals.ts +6 -0
- package/src/self-dev/run-store.ts +20 -5
- package/src/self-dev/run-supervisor.ts +43 -3
- package/src/self-implement/abandoned-classification.ts +15 -1
- package/src/self-implement/blocked-draft-policy.ts +6 -0
- package/src/self-implement/budget-gate.ts +236 -0
- package/src/self-implement/child-llm-preference.ts +84 -0
- package/src/self-implement/decision-events.ts +57 -0
- package/src/self-implement/decision-signal-press.ts +5 -2
- package/src/self-implement/dependency-change-gate.ts +90 -0
- package/src/self-implement/gate-baseline.ts +35 -2
- package/src/self-implement/gate-cli.ts +29 -7
- package/src/self-implement/gate-scope.ts +7 -1
- package/src/self-implement/goal-author-decompose.ts +22 -4
- package/src/self-implement/goal-author.ts +41 -3
- package/src/self-implement/goal-boundary.ts +65 -0
- package/src/self-implement/goal-clarification-escalation.ts +1 -0
- package/src/self-implement/goal-documents-dir.ts +6 -1
- package/src/self-implement/goal-execution-records.ts +58 -0
- package/src/self-implement/goal-run-store.ts +42 -24
- package/src/self-implement/graph-authority.ts +13 -28
- package/src/self-implement/graph-catalog.ts +48 -0
- package/src/self-implement/graph-run-contract.ts +127 -0
- package/src/self-implement/graph-templates.ts +14 -7
- package/src/self-implement/graph-yaml.ts +35 -6
- package/src/self-implement/harness-policy-gates.ts +42 -0
- package/src/self-implement/headless-elanous-driver.ts +30 -6
- package/src/self-implement/heal-triage.ts +229 -0
- package/src/self-implement/host-regate.ts +244 -0
- package/src/self-implement/non-git-consent.ts +23 -0
- package/src/self-implement/orchestrator.ts +488 -134
- package/src/self-implement/pipeline-shape.ts +1 -1
- package/src/self-implement/pr-evidence-artifact.ts +6 -19
- package/src/self-implement/prior-draft-findings.ts +128 -0
- package/src/self-implement/pwa-import-graph.ts +65 -0
- package/src/self-implement/repo-provision.ts +18 -21
- package/src/self-implement/report-origin.ts +39 -0
- package/src/self-implement/rework-policy.ts +21 -0
- package/src/self-implement/run-ledger-compact.ts +438 -0
- package/src/self-implement/run-ledger.ts +212 -29
- package/src/self-implement/run-report.ts +24 -0
- package/src/self-implement/run-status-mapping.ts +2 -0
- package/src/self-implement/running-runs.ts +112 -14
- package/src/self-implement/scoped-typecheck-config.ts +49 -0
- package/src/self-implement/seams.ts +207 -40
- package/src/self-implement/self-implement-cli.ts +17 -2
- package/src/self-implement/shadow-repo.ts +350 -0
- package/src/self-implement/supervision-vocabulary.ts +7 -0
- package/src/shell-runner/dispatch.ts +3 -0
- package/src/shell-runner/index.ts +0 -7
- package/src/skills/runner.ts +0 -69
- package/src/skills/tools/agent-room-slash.ts +2 -1
- package/src/skills/tools/agent-room.ts +8 -140
- package/src/skills/tools/agent.ts +5 -3
- package/src/skills/tools/context.ts +5 -140
- package/src/skills/tools/control.ts +4 -188
- package/src/skills/tools/dashboard-slash.ts +3 -11
- package/src/skills/tools/dashboard-state.ts +3 -5
- package/src/skills/tools/dev-harness.ts +45 -2
- package/src/skills/tools/omni-search.ts +29 -1
- package/src/skills/tools/shell.ts +11 -29
- package/src/skills/tools/spawn-coding-agent-headless.ts +6 -9
- package/src/ssh/ssh-picker-modal.ts +1 -1
- package/src/steward/directive.ts +99 -0
- package/src/steward/steward-cards.ts +45 -0
- package/src/steward/triage.ts +239 -0
- package/src/storage/cli-bin.ts +67 -0
- package/src/storage/object-store-visibility.ts +169 -0
- package/src/storage/object-store.ts +452 -0
- package/src/storage/s3.ts +53 -10
- package/src/storage/storage-detect.ts +337 -0
- package/src/surface/address.ts +3 -5
- package/src/surface/index.ts +0 -6
- package/src/surface/llm-tools.ts +1 -2
- package/src/surface/shell-runner-boot.ts +4 -89
- package/src/task-cards/card-cli.ts +64 -0
- package/src/task-cards/card-store.ts +241 -0
- package/src/task-orchestrator/boot.ts +27 -1
- package/src/task-orchestrator/dispatcher.ts +49 -7
- package/src/task-orchestrator/external-fingerprint.ts +10 -0
- package/src/task-orchestrator/external-policy.ts +86 -0
- package/src/task-orchestrator/feedback-loop.ts +4 -2
- package/src/task-orchestrator/graph.ts +18 -1
- package/src/task-orchestrator/runtimes/create.ts +128 -0
- package/src/task-orchestrator/store.ts +78 -18
- package/src/task-orchestrator/surface-registry.ts +5 -2
- package/src/task-orchestrator/surfaces/external-exec.ts +180 -0
- package/src/task-orchestrator/surfaces/idea-approval-pr.ts +118 -0
- package/src/task-orchestrator/surfaces/index.ts +4 -3
- package/src/task-orchestrator/surfaces/pod-account-broker.ts +60 -5
- package/src/task-orchestrator/surfaces/pod-artifact-return.ts +194 -0
- package/src/task-orchestrator/surfaces/pod-command-job.ts +369 -0
- package/src/task-orchestrator/surfaces/pod-ledger-collect.ts +207 -0
- package/src/task-orchestrator/surfaces/pod-pool.ts +128 -12
- package/src/task-orchestrator/surfaces/pod-skills.ts +11 -3
- package/src/task-orchestrator/surfaces/pod-source-bundle.ts +147 -0
- package/src/task-orchestrator/surfaces/pod-source-receive.ts +129 -0
- package/src/task-orchestrator/surfaces/pod-source-spec.ts +77 -0
- package/src/task-orchestrator/surfaces/self-implement-pod.ts +930 -45
- package/src/task-orchestrator/surfaces/self-implement.ts +8 -1
- package/src/task-orchestrator/tox-loop.ts +204 -0
- package/src/task-orchestrator/types.ts +21 -1
- package/src/telegram-commands.ts +8 -0
- package/src/telegram-report.ts +14 -7
- package/src/telegram-run.ts +18 -5
- package/src/telegram.ts +92 -22
- package/src/tool-runtime/acp-session-runtime.ts +28 -7
- package/src/tool-runtime/agent-runtime.ts +1 -0
- package/src/tool-runtime/context-runtime.ts +18 -35
- package/src/tool-runtime/control-runtime.ts +8 -21
- package/src/tool-runtime/dashboard-state-runtime.ts +1 -5
- package/src/tool-runtime/elanous-asana-runtimes.ts +205 -0
- package/src/tool-runtime/elanous-control-runtimes.ts +16 -2
- package/src/tool-runtime/elanous-task-submit-runtime.ts +124 -0
- package/src/tool-runtime/index.ts +4 -1
- package/src/tool-runtime/scenario-runtimes.ts +22 -21
- package/src/tool-runtime/scenario-target-mount.ts +6 -32
- package/src/tool-runtime/types.ts +8 -0
- package/src/tui/chat/attachment-summary.ts +4 -4
- package/src/tui-client/acp-transport-ws-client.ts +72 -5
- package/src/tui-client/headless-core-guard.ts +0 -1
- package/src/tui.ts +11 -7
- package/src/typecheck-ratchet.ts +15 -0
- package/src/ui/hover-presenter.ts +3 -7
- package/src/user-config.ts +453 -190
- package/src/util/spawn-sync-output.ts +15 -0
- package/src/version/code-revision.ts +34 -9
- package/src/version/packed-revision.json +1 -1
- package/src/video-pipeline/broll-agent.ts +102 -0
- package/src/video-pipeline/recipes/broll.ts +263 -0
- package/src/video-pipeline/walk-line.ts +2 -1
- package/src/views/scratch-image-size.ts +10 -0
- package/src/voice/channel-adapters/pwa-voice-adapter.ts +2 -18
- package/src/voice/channel-adapters/telegram-voice-adapter.ts +1 -6
- package/src/voice/voice-tts-singleton.ts +46 -8
- package/src/web-push/vapid-keys.ts +1 -1
- package/src/web-search/free.ts +77 -0
- package/src/web-search/index.ts +7 -5
- package/src/web-terminal/preview-tap-registry.ts +152 -43
- package/src/workflow-runtime/deps-bridge.ts +4 -3
- package/src/workflow-runtime/executor.ts +18 -22
- package/src/workflow-runtime/node-catalog.ts +20 -1
- package/src/workflow-runtime/nodes/bash.ts +1 -0
- package/src/workflow-runtime/nodes/task.ts +74 -0
- package/src/workflow-runtime/nodes/triggers.ts +24 -1
- package/src/workflow-runtime/plugin-kind-node.ts +166 -0
- package/src/workflow-runtime/schema.ts +98 -2
- package/src/workflow-runtime/triggers/webhook-router.ts +43 -3
- package/src/workflow-runtime/triggers/webhook-source.ts +19 -1
- package/src/workflow-runtime/types.ts +76 -5
- package/apps/pwa/out/_next/static/Ksn99fVf2HUWhSyV1-FC8/_buildManifest.js +0 -1
- package/apps/pwa/out/_next/static/chunks/1176-4943bd83b00e53a2.js +0 -25
- package/apps/pwa/out/_next/static/chunks/1380-9c652e1002032c86.js +0 -1
- package/apps/pwa/out/_next/static/chunks/1863-2ea170dfec26b88b.js +0 -1
- package/apps/pwa/out/_next/static/chunks/2091-2d6b7f4f16300f83.js +0 -1
- package/apps/pwa/out/_next/static/chunks/2347-366617ec73babe3b.js +0 -1
- package/apps/pwa/out/_next/static/chunks/3089-e60cc8f5d35ee239.js +0 -1
- package/apps/pwa/out/_next/static/chunks/3158-c77ed9ea34f9cc9f.js +0 -1
- package/apps/pwa/out/_next/static/chunks/3607-f0b5c5ee18fcf56a.js +0 -1
- package/apps/pwa/out/_next/static/chunks/3659-05b2d5d971b42dbc.js +0 -1
- package/apps/pwa/out/_next/static/chunks/3736-b6a7bfdcb8f56ec6.js +0 -1
- package/apps/pwa/out/_next/static/chunks/3839-eebf298e89a7bb77.js +0 -1
- package/apps/pwa/out/_next/static/chunks/4012.832a2824b978e7ee.js +0 -5
- package/apps/pwa/out/_next/static/chunks/4706-d85d7f3345f3ff91.js +0 -1
- package/apps/pwa/out/_next/static/chunks/526-17a6a2e0e6dc4498.js +0 -1
- package/apps/pwa/out/_next/static/chunks/5508-676ac75f2757ad40.js +0 -1
- package/apps/pwa/out/_next/static/chunks/5583-8a0317f4b8e68db9.js +0 -1
- package/apps/pwa/out/_next/static/chunks/6258-b58f722b10e8d31d.js +0 -1
- package/apps/pwa/out/_next/static/chunks/6820-32fd097e6186fdc9.js +0 -1
- package/apps/pwa/out/_next/static/chunks/6852-983db7ca958634b7.js +0 -1
- package/apps/pwa/out/_next/static/chunks/7235-e583e4a015e159b9.js +0 -1
- package/apps/pwa/out/_next/static/chunks/7482-7b417330b24a996a.js +0 -1
- package/apps/pwa/out/_next/static/chunks/7701-99b7d4dedb955bf8.js +0 -1
- package/apps/pwa/out/_next/static/chunks/77f1928d-bd3777589042d3ea.js +0 -1
- package/apps/pwa/out/_next/static/chunks/8366-36956cafc5e33614.js +0 -1
- package/apps/pwa/out/_next/static/chunks/8370-23d0de995be666f8.js +0 -1
- package/apps/pwa/out/_next/static/chunks/8617-307421f3b0e8b2a2.js +0 -1
- package/apps/pwa/out/_next/static/chunks/8837-e45de46a9fedf1f5.js +0 -1
- package/apps/pwa/out/_next/static/chunks/9058-0e8055a5ea3ebdd6.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/_not-found/page-84b84eca12acada4.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/autopilot/page-1f23568c29e88f7a.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/botlab/page-bf6fc9aafd6135a7.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/bots/page-3f8539ae4b719d2e.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/chat/page-d2900febb74ecf32.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/control/page-e82dec647dd79c36.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/dashboard/page-096ec743a8ee955a.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/design-check/page-255c2ceded4b3493.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/healthz/route-84b84eca12acada4.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/intake/page-2db61b2f9efba61f.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/layout-e11ee17f221aaa9b.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/missions/[id]/page-e075974e029ce4c4.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/morning/page-ec5b68a9af3366a0.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/not-found-986c177afb4adae6.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/observatory/page-a72781461af2f2a3.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/page-92781cbaafc487ad.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/reflection/page-2c14d2a1f2930f33.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/scheduler/page-22ee4bf8070b2b4d.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/sessions/page-9c06e4a8297942a8.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/settings/devices/page-d0cd32f6d373798f.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/settings/page-0c1642018d87ebb8.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/setup/done/page-93e5e97d614df487.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/setup/layout-84b84eca12acada4.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/setup/page-b1ce871940d7393e.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/share/page-ae154addf345febe.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/showroom/page-90af3aa813d2053c.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/tasks/page-f3f962fda428a738.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/term/page-1c1f7cc1d5def06d.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/vault/page-09d4cbdaaacf06c1.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/workflows/chat-ui/page-e877b8e8ca90b27f.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/workflows/page-71d902f463dea526.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/workspace/page-40ea576cefa25fe6.js +0 -1
- package/apps/pwa/out/_next/static/chunks/app/worktrees/page-a56a3f178c3831f6.js +0 -1
- package/apps/pwa/out/_next/static/chunks/bcc499d1-804a270d878e0842.js +0 -1
- package/apps/pwa/out/_next/static/chunks/framework-b25b7c5501c59b6d.js +0 -1
- package/apps/pwa/out/_next/static/chunks/main-a9ec9da43387afff.js +0 -1
- package/apps/pwa/out/_next/static/chunks/main-app-aa2c05954aaa6754.js +0 -1
- package/apps/pwa/out/_next/static/chunks/pages/_app-bb3768fb4b84aebb.js +0 -1
- package/apps/pwa/out/_next/static/chunks/pages/_error-2820ba75b87b2f5e.js +0 -1
- package/apps/pwa/out/_next/static/chunks/webpack-58c73b145f189b1c.js +0 -1
- package/apps/pwa/out/_next/static/css/effec8adf767aa75.css +0 -1
- package/apps/pwa/out/dashboard/index.html +0 -1
- package/apps/pwa/out/dashboard/index.txt +0 -26
- package/src/acp/resident-shell.ts +0 -244
- package/src/agent/spawn-local-llm-in-vw.ts +0 -240
- package/src/dashboard/agent-spawn-tools-boot.ts +0 -14
- package/src/dashboard/dock-picker-inventory.ts +0 -41
- package/src/dashboard/goal-plan-hud-bridge.ts +0 -112
- package/src/dashboard/hud-mirror.ts +0 -207
- package/src/dashboard/input/mouse-dock-runtime.ts +0 -156
- package/src/dashboard/input/mouse-hover-runtime.ts +0 -46
- package/src/dashboard/input/mouse-pill-context-runtime.ts +0 -74
- package/src/dashboard/input/mouse-workspace-restore-runtime.ts +0 -64
- package/src/dashboard/input/scratch-actions.ts +0 -36
- package/src/dashboard/input/virtual-window-key-router.ts +0 -24
- package/src/dashboard/rich-scratch-viewers.ts +0 -77
- package/src/dashboard/scratch-slash-runtime.ts +0 -36
- package/src/dashboard/scratch-state-runtime.ts +0 -42
- package/src/dashboard/scratch-widget-runtime.ts +0 -37
- package/src/dashboard/sim-shell.ts +0 -313
- package/src/dashboard/virtual-window-control-runtime.ts +0 -57
- package/src/dashboard/virtual-window-help-runtime.ts +0 -113
- package/src/dashboard/virtual-window-input-runtime.ts +0 -99
- package/src/dashboard/virtual-window-mutation-runtime.ts +0 -102
- package/src/dashboard/virtual-window-split-runtime.ts +0 -70
- package/src/dashboard/vw-popup-openers.ts +0 -126
- package/src/dashboard/window-picker-popup.ts +0 -74
- package/src/dashboard/window-slash-runtime.ts +0 -108
- package/src/dashboard/windowing/companion-slash.ts +0 -78
- package/src/dashboard/windowing/fast-switch.ts +0 -138
- package/src/dashboard/windowing/lifecycle.ts +0 -185
- package/src/dashboard/windowing/virtual-windows.ts +0 -259
- package/src/dashboard/windowing/visibility-chord.ts +0 -77
- package/src/iul/resident-vw.ts +0 -55
- package/src/panes/content-adapter.ts +0 -162
- package/src/prompt/vw-reference.ts +0 -153
- package/src/shell-runner/external-terminal-pane.ts +0 -157
- package/src/sim/resident-vw.ts +0 -48
- package/src/skills/tools/spawn-coding-agent-vw.ts +0 -181
- package/src/skills/tools/virtual-windows.ts +0 -632
- package/src/surface/adapters/window-surface-adapter.ts +0 -141
- package/src/tool-runtime/layout-runtimes.ts +0 -81
- package/src/tool-runtime/scenario-window-mount.ts +0 -207
- package/src/views/ui-mode.ts +0 -100
- package/src/virtual-window-context-menu.ts +0 -97
- package/src/virtual-windows/addressing.ts +0 -195
- package/src/virtual-windows/benchmark-preset.ts +0 -119
- package/src/virtual-windows/event-bus.ts +0 -202
- package/src/virtual-windows/layout/apply-planner.ts +0 -189
- package/src/virtual-windows/layout/index.ts +0 -68
- package/src/virtual-windows/layout/layout-commands.ts +0 -186
- package/src/virtual-windows/layout/layout-tools.ts +0 -262
- package/src/virtual-windows/layout/persistence.ts +0 -219
- package/src/virtual-windows/layout/presets.ts +0 -114
- package/src/virtual-windows/layout/restore-planner.ts +0 -223
- package/src/virtual-windows/layout/serializer.ts +0 -197
- package/src/virtual-windows/layout/tree.ts +0 -147
- package/src/virtual-windows/layout/types.ts +0 -63
- package/src/virtual-windows/layout-tree.ts +0 -389
- package/src/virtual-windows/navigation.ts +0 -251
- package/src/virtual-windows/pane-capture.ts +0 -142
- package/src/virtual-windows/pane-content.ts +0 -611
- package/src/virtual-windows/pane-spawner.ts +0 -278
- package/src/virtual-windows/pty-tail-content.ts +0 -291
- package/src/virtual-windows/resident-window.ts +0 -59
- package/src/virtual-windows/secondary-action.ts +0 -25
- package/src/virtual-windows/terminal-slot-content.ts +0 -165
- package/src/virtual-windows/virtual-window.ts +0 -1301
- package/src/virtual-windows/vw-local-input-target-popup.ts +0 -110
- package/src/virtual-windows/vw-rename-modal.ts +0 -77
- package/src/virtual-windows/vw-selector-popup.ts +0 -177
- package/src/virtual-windows/window-registry.ts +0 -519
- package/src/voice/channel-adapters/discord-voice-adapter.ts +0 -202
- package/src/voice/voice-pwa-dispatch.ts +0 -245
- package/src/window-picker-modal.ts +0 -135
- /package/apps/pwa/out/_next/static/{Ksn99fVf2HUWhSyV1-FC8 → ktMqfrBbf8BMGac0jqLrb}/_ssgManifest.js +0 -0
- /package/src/dashboard/{companion-slash-runtime.ts → companion-messages-runtime.ts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7868],{47868:(e,t,r)=>{r.d(t,{zV:()=>eQ});var n=r(58443),a=r(77947),l=r(89704),s=r(43989),o=r(9845),i=r(74445),c=r(86373),d=r(63893);r(71629);var u=r(34015),m=r(23783);function p(e){let t=e.split("\n"),r=t[0];if(!r)return null;let n=/^\[elanous\/term\/([a-zA-Z]+)\] (.+)$/.exec(r);if(!n)return null;let a=n[1];if("terminalOutput"!==a&&"terminalExit"!==a&&"terminalInputActivity"!==a&&"terminalFrame"!==a)return null;let l=[];for(let e=1;e<t.length;e++){let r=t[e];if(/^<<elanous-term-end /.test(r))break;l.push(r)}try{let e=JSON.parse(l.join("\n"));if("string"!=typeof e.terminalId)return null;if("terminalOutput"===a){if("string"!=typeof e.data)return null;return{method:a,payload:{terminalId:e.terminalId,data:e.data}}}if("terminalExit"===a){if("number"!=typeof e.code)return null;return{method:a,payload:{terminalId:e.terminalId,code:e.code}}}if("terminalFrame"===a){if("string"!=typeof e.frame||"string"!=typeof e.instance||"number"!=typeof e.at||!Number.isFinite(e.at))return null;return{method:a,payload:{terminalId:e.terminalId,frame:e.frame,instance:e.instance,at:e.at}}}if("string"!=typeof e.peerId||"number"!=typeof e.timestamp||"number"!=typeof e.bytes)return null;return{method:a,payload:{terminalId:e.terminalId,peerId:e.peerId,timestamp:e.timestamp,bytes:e.bytes}}}catch(e){return null}}let h="elanous.pwa.peerId",f=null;function b(){if(f)return f;let e=window.sessionStorage.getItem(h);return e&&0!==e.length||(e=function(){if("undefined"!=typeof crypto&&"function"==typeof crypto.getRandomValues){let e=new Uint32Array(2);return crypto.getRandomValues(e),(BigInt(e[0])<<32n|BigInt(e[1])).toString(36).slice(0,8)}return Math.random().toString(36).slice(2,10)}(),window.sessionStorage.setItem(h,e)),f=e,e}var g=r(76588);let x=/^\x1b\[[?>=][\d;]*[a-zA-Z$]/,v=/^\x1b\[\d+;\d+R$/,w=/^\x1b\[0?n$/,y=/^\x1b\][\d;]+;[^\x07\x1b]*(?:\x07|\x1b\\)$/,k=/^\x1b\[\d+;\d+;\d+t$/,j=new Map;function N(e,t){let r=j.get(e);return r?(r.sender(t),!0):((0,m.cY)("webterm.input.no-sender",{terminalId:e,bytes:new TextEncoder().encode(t).length}),!1)}function S(e){var t;let{sessionId:l,terminalId:h,clearRequest:f=0,readOnly:N=!1,onForeignInputActivity:S}=e,I=(0,a.useRef)(null),C=(0,a.useRef)(null),T=(0,a.useRef)(void 0),Y=(0,a.useRef)(h);Y.current!==h&&(Y.current=h,T.current=void 0);let E=(0,a.useRef)(l);E.current=l;let R=(0,a.useRef)(S);R.current=S;let{client:A,config:z,setSessionId:P}=(0,u.Q)(),[M,D]=(0,a.useState)(()=>({state:"CONNECTING",terminalId:h,connectingSince:Date.now()})),[U,L]=(0,a.useState)(0),$=(0,a.useRef)(0),[O,F]=(0,a.useState)(()=>Date.now()),[B,Q]=(0,a.useState)(null),q=(null==B?void 0:B.terminalId)===h?B:null,H=M.terminalId===h?M.state:"CONNECTING",_=M.terminalId===h?M.connectingSince:O;(0,a.useEffect)(()=>{if("CONNECTING"!==H)return;F(Date.now());let e=window.setInterval(()=>F(Date.now()),1e3);return()=>window.clearInterval(e)},[H,h]),(0,a.useEffect)(()=>{var e,t,n;if(!I.current)return;let a=new s.B({fontFamily:'"JetBrainsMono Nerd Font", "JetBrains Mono", monospace',fontSize:13,theme:{background:"#0d0c08",foreground:"#e9e3d4",cursor:"#e9e3d4"},allowProposedApi:!0,scrollback:5e3,cursorBlink:!N,disableStdin:N});(0,m.cY)("webterm.xterm.boot",{sessionId:l,terminalId:h,readOnly:N});let u=new o.Y;a.loadAddon(u),a.loadAddon(new i.c((e,t)=>(0,m.cY)("webterm.link.click",{uri:t}))),a.loadAddon(new c.I);let f=new d.V;a.loadAddon(f),(async()=>{try{let e=await r.e(8617).then(r.bind(r,38617));a.loadAddon(new e.WebglAddon)}catch(e){(0,m.cY)("webterm.webgl.fallback",{reason:String(e)})}})(),(async()=>{try{let e=await r.e(4377).then(r.bind(r,4377));a.loadAddon(new e.ImageAddon),(0,m.cY)("webterm.image-addon.loaded")}catch(e){(0,m.cY)("webterm.image-addon.fallback",{reason:String(e)})}})(),a.unicode.activeVersion="11",a.open(I.current),C.current=a,u.fit();let S=(0,g.o1)("xtermScrollback",h),T=(0,g.N2)(S);"string"==typeof T&&T.length>0&&a.write(T);let Y=()=>{},z=A.connectAcp({...l?{sessionId:l}:{},onSession:e=>{e&&(E.current=e,Y(e)),e&&e!==l&&((0,m.cY)("webterm.acp.session.adopted",{from:l,to:e}),P(e))}});(0,m.cY)("webterm.acp.session.attach",{sessionId:l,terminalId:h});let M=z.onState((e,t)=>{let r=Date.now();D(n=>({state:e,terminalId:h,connectingSince:"CONNECTING"===e?r:n.connectingSince,...(null==t?void 0:t.message)?{reason:t.message}:{}})),"OPEN"===e&&($.current=0),"CONNECTING"===e&&F(r),(0,m.cY)("webterm.xterm.acp-state",{terminalId:h,state:e,reason:null==t?void 0:t.message})}),U=()=>{},L=!1,O=Date.now(),B=new Promise(e=>{let t=!1;U=r=>{t||(t=!0,(0,m.cY)("webterm.shell.ready",{terminalId:h,via:r,ms:Date.now()-O}),e())}}),q=setTimeout(()=>U("cap-20s"),2e4);z.ready.then(e=>e?z.send("terminal/spawn",{sessionId:e,terminalId:h,cols:a.cols,rows:a.rows,replay:!0}):void U("no-session")).then(e=>{if(void 0===e)return;(0,m.cY)("webterm.spawn.result",e);let t="string"!=typeof e.snapshot||0===e.snapshot.trim().length;if("spawned"===e.status||"attached"===e.status&&t?L=!0:U("attached"===e.status?"attached":"status:".concat(String(e.status))),!N&&E.current){try{u.fit()}catch(e){}(0,m.cY)("webterm.xterm.size-sync",{terminalId:h,cols:a.cols,rows:a.rows,status:e.status}),z.send("terminal/resize",{sessionId:E.current,terminalId:h,cols:a.cols,rows:a.rows}).catch(e=>(0,m.cY)("webterm.resize.send-error",{reason:String(e)}))}"attached"===e.status&&"string"==typeof e.snapshot&&e.snapshot.length>0&&((0,m.cY)("webterm.attach.replay",{terminalId:h,bytes:e.snapshot.length}),a.write("\x1b[2J\x1b[H"+e.snapshot.split("\n").join("\r\n")+"\r\n"))}).catch(e=>{(0,m.cY)("webterm.spawn.error",{reason:String(e)}),U("spawn-error")});let H=z.on("sessionUpdate",e=>{var t,r,n;let l=null!=(r=e.params)?r:{},s=E.current;if(l.sessionId&&s&&l.sessionId!==s)return;let o=l.update;if(!o||"agent_thought_chunk"!==o.sessionUpdate)return;let i=(null==(t=o.content)?void 0:t.type)==="text"?o.content.text:null;if(!i)return;let c=p(i);c&&("terminalOutput"===c.method&&c.payload.terminalId===h?((0,m.cY)("webterm.ws.frame.in",{terminalId:h,bytes:c.payload.data.length}),a.write(c.payload.data),L&&(L=!1,U("first-output"))):"terminalExit"===c.method&&c.payload.terminalId===h?((0,m.cY)("webterm.pty.exit",{terminalId:h,code:c.payload.code}),a.write("\r\n\x1b[2m[exit ".concat(c.payload.code,"]\x1b[0m\r\n"))):"terminalInputActivity"===c.method&&c.payload.terminalId===h&&c.payload.peerId!==b()&&((0,m.cY)("webterm.peer.input",{terminalId:h,peerId:c.payload.peerId.slice(0,4),bytes:c.payload.bytes}),null==(n=R.current)||n.call(R,{peerId:c.payload.peerId,bytes:c.payload.bytes,timestamp:c.payload.timestamp})))}),_=function(e){let t,{send:r,ready:n,getSessionId:a,terminalId:l,getPeerId:s,log:o,shellReady:i}=e,c=!i,d=[],u="",m=!1,p=!1,h=!1,f=!1,b=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(h)return;let r=new TextEncoder().encode(t+d.join("")).length;d.length=0,o("webterm.input.send-error",{reason:String(e),dropped:r})},g=async()=>{if(u&&c&&!p&&!h){p=!0;try{for(;d.length&&!h;){let e=d.shift();try{let t=a();await r("terminal/input",{sessionId:m&&t?t:u,terminalId:l,data:e,peerId:s()})}catch(t){b(t,e);break}}}finally{p=!1}}};return i&&i.then(()=>{c=!0,g()}),n.then(e=>{if(!h){if(!e){f=!0,b(t="ACP handshake returned no session");return}u=e,g()}},e=>{f=!0,t=e,b(e)}),{confirmSession(e){!h&&u&&e&&(m=!0)},push(e){if(!h){if(f)return void b(t,e);d.push(e),g()}},dispose(){h=!0,d.length=0}}}({send:(e,t)=>z.send(e,t),ready:z.ready,shellReady:B,getSessionId:()=>E.current,terminalId:h,getPeerId:b,log:(e,t)=>{(0,m.cY)(e,t),t.dropped>0&&Q({terminalId:h,dropped:t.dropped})}});Y=_.confirmSession;let V=N?null:function(e,t){let r={sender:t};return j.set(e,r),()=>{j.get(e)===r&&j.delete(e)}}(h,_.push),G=N?null:a.onData(e=>{if(e&&!(e.length<2)&&27===e.charCodeAt(0)&&(x.test(e)||v.test(e)||w.test(e)||y.test(e)||k.test(e)))return void(0,m.cY)("webterm.xterm.onData.capability-swallow",{terminalId:h,bytes:e.length});(0,m.cY)("webterm.xterm.onData",{terminalId:h,bytes:e.length}),_.push(e)}),J=N?null:a.onResize(e=>{let{cols:t,rows:r}=e;(0,m.cY)("webterm.xterm.onResize",{terminalId:h,cols:t,rows:r}),z.send("terminal/resize",{sessionId:E.current,terminalId:h,cols:t,rows:r}).catch(e=>(0,m.cY)("webterm.resize.send-error",{reason:String(e)}))}),K=I.current,W=null,Z=e=>{if(1!==e.touches.length){W=null;return}W={y:e.touches[0].clientY,viewportY:a.buffer.active.viewportY}},X=e=>{var t,r,n;if(!W||1!==e.touches.length)return;let l=a.rows>0?(null!=(n=null==(r=a.element)||null==(t=r.querySelector(".xterm-screen"))?void 0:t.getBoundingClientRect().height)?n:0)/a.rows:0,s=function(e){if(!(e.cellHeight>0))return 0;let t=-Math.trunc((e.currentY-e.startY)/e.cellHeight)-(e.currentViewportY-e.startViewportY);return 0===t?0:t}({startY:W.y,currentY:e.touches[0].clientY,cellHeight:l,startViewportY:W.viewportY,currentViewportY:a.buffer.active.viewportY});0!==s&&a.scrollLines(s)},ee=()=>{W=null};null==(e=K.addEventListener)||e.call(K,"touchstart",Z,{passive:!0}),null==(t=K.addEventListener)||t.call(K,"touchmove",X,{passive:!0}),null==(n=K.addEventListener)||n.call(K,"touchend",ee,{passive:!0});let et=function(e){var t,r;let n=null!=(t=e.trailingDebounceMs)?t:32,a=null,l=!1,s=()=>{if((a=null,!l)&&e.onTrailing)try{e.onTrailing()}catch(e){}},o=t=>{var r,o;if(l)return;let i=performance.now(),c=null==(o=e.target)||null==(r=o.getBoundingClientRect)?void 0:r.call(o),d=c?Math.round(c.width):void 0,u=c?Math.round(c.height):void 0;if((null==c?void 0:c.height)===0){null!==a&&(clearTimeout(a),a=null),(0,m.cY)("webterm.resize.skip",{source:t,...void 0!==d?{w:d}:{},h:u,reason:"zero-height"});return}let p=null;try{e.onImmediate()}catch(e){p=e instanceof Error?e.message:String(e)}(0,m.cY)("webterm.resize.trigger",{source:t,dt:Math.round((performance.now()-i)*100)/100,...void 0!==d?{w:d}:{},...void 0!==u?{h:u}:{},...p?{err:p}:{}}),e.onTrailing&&(null!==a&&clearTimeout(a),a=setTimeout(s,n))},i=null;"undefined"!=typeof ResizeObserver&&(i=new ResizeObserver(()=>o("ro"))).observe(e.target);let c=()=>o("win");window.addEventListener("resize",c);let d=null!=(r=window.visualViewport)?r:null,u=()=>o("vv");return d&&d.addEventListener("resize",u),{dispose(){if(!l){if(l=!0,null!==a&&(clearTimeout(a),a=null),i){try{i.disconnect()}catch(e){}i=null}window.removeEventListener("resize",c),d&&d.removeEventListener("resize",u)}},flushPending(){null!==a&&(clearTimeout(a),s())}}}({target:I.current,onImmediate:()=>{try{u.fit()}catch(e){}},onTrailing:()=>{try{u.fit()}catch(e){}}});return()=>{var e,t,r;try{let e=f.serialize();"string"==typeof e&&(0,g.Os)((0,g.o1)("xtermScrollback",h),e)}catch(e){(0,m.cY)("webterm.xterm.snapshot.error",{reason:String(e)})}try{et.dispose()}catch(e){}null==(e=K.removeEventListener)||e.call(K,"touchstart",Z),null==(t=K.removeEventListener)||t.call(K,"touchmove",X),null==(r=K.removeEventListener)||r.call(K,"touchend",ee),null==V||V(),_.dispose(),clearTimeout(q),H(),M();try{null==G||G.dispose()}catch(e){}try{null==J||J.dispose()}catch(e){}try{z.close()}catch(e){}C.current===a&&(C.current=null);try{a.dispose()}catch(e){}(0,m.cY)("webterm.xterm.teardown",{terminalId:h})}},[h,N,A,U]);let V="FAILED"===H||"CLOSED"===H?(t=M.reason)&&/auth_failed|\b1008\b|unauthori[sz]ed|\b401\b/i.test(t)?"auth":"transient":null,G=(0,a.useRef)(z.token);(0,a.useEffect)(()=>{G.current!==z.token&&(G.current=z.token,"auth"===V&&z.token&&((0,m.cY)("webterm.acp.reconnect",{terminalId:h,why:"token-changed"}),L(e=>e+1)))},[z.token]),(0,a.useEffect)(()=>{var e,t,r;if(null===V)return;let n=e=>{$.current+=1,(0,m.cY)("webterm.acp.reconnect",{terminalId:h,why:e,attempt:$.current,reason:M.reason}),L(e=>e+1)},a="undefined"==typeof document?null:document,l=window,s=()=>{(null==a?void 0:a.visibilityState)==="visible"&&n("visible")},o=()=>n("online");null==a||null==(e=a.addEventListener)||e.call(a,"visibilitychange",s),null==l||null==(t=l.addEventListener)||t.call(l,"online",o);let i="transient"===V?setTimeout(()=>n("backoff"),(r=$.current,Math.min(3e4,1e3*2**Math.max(0,r)))):void 0;return()=>{var e,t;null==a||null==(e=a.removeEventListener)||e.call(a,"visibilitychange",s),null==l||null==(t=l.removeEventListener)||t.call(l,"online",o),void 0!==i&&clearTimeout(i)}},[V,h]),(0,a.useEffect)(()=>{var e;e=T.current,void 0!==e&&e!==f&&C.current&&(C.current.clear(),(0,m.cY)("webterm.controls.clear.applied",{terminalId:h})),T.current=f},[f,h]);let J="CONNECTING"===H?$.current>0?"다시 연결 중(".concat($.current,"회)"):"연결 중":"OPEN"===H?"연결됨":"auth"===V?"토큰 없음":"FAILED"===H?"연결 실패 \xb7 곧 다시 붙습니다":"연결 끊김 \xb7 곧 다시 붙습니다",K="OPEN"===H?"text-emerald-300":"CONNECTING"===H?"text-amber-300":"text-red-300",W=h.trim()||"대상 미지정",Z=Math.max(0,Math.floor((O-_)/1e3));return(0,n.jsxs)("div",{className:"relative h-full w-full bg-[#0d0c08]",children:[(0,n.jsx)("div",{ref:I,className:"h-full w-full"}),q&&(0,n.jsxs)("div",{role:"alert",className:"pointer-events-none absolute bottom-2 left-2 right-2 rounded bg-red-950/95 px-3 py-2 text-sm text-red-100",children:["터미널 입력 전송 실패: ",q.dropped,"바이트가 버려졌습니다. 명령이 일부만 실행됐을 수 있습니다. 입력을 확인하고 다시 입력하세요."]}),"auth"===V&&(0,n.jsxs)("div",{role:"alert",className:"absolute left-2 right-2 top-10 z-30 space-y-1 rounded bg-amber-950/95 px-3 py-2 text-sm text-amber-100","data-webterm-auth-missing":!0,children:[(0,n.jsx)("p",{children:"이 기기에 소유자 토큰이 없어 터미널에 연결하지 못했습니다 — 설정에서 토큰을 붙이면 바로 연결됩니다."}),(0,n.jsx)("p",{className:"text-xs text-amber-200/90",children:"토큰 얻기: 이미 연결된 기기의 설정 › Connect token 에서 만들거나, 데몬 기계에서 pbcopy < ~/.elanous/acp-token → 이 기기의 설정 › Daemon › Bearer token 칸에 붙여 넣기"}),(0,n.jsx)("a",{href:"/app/settings/#bearer-token",className:"inline-block font-medium underline","data-webterm-auth-settings":!0,children:"설정 열기 →"})]}),(0,n.jsxs)("span",{"aria-live":"polite",className:"sr-only",children:["ACP: ",J]}),(0,n.jsxs)("span",{className:"pointer-events-none absolute right-2 top-2 rounded bg-black/70 px-2 py-1 text-xs ".concat(K),children:["ACP: ",J,"CONNECTING"===H&&" \xb7 ".concat(Z,"초 \xb7 ").concat(W," \xb7 ").concat(z.baseUrl)]})]})}let I={failures:0,stopped:!1,message:null,screen:null},C=/^\[screen \d+x\d+ cursor=[^\]\n]*\]\r?\n/;function T(e){let t=e.replace(C,"").replace(/\r?\n/g,"\r\n");return"\x1b[H\x1b[2J".concat(t)}function Y(e,t){var r;if(e.stopped)return e;if((null==t?void 0:t.status)==="success"&&"string"==typeof t.screen)return{failures:0,stopped:!1,message:null,screen:T(t.screen)};if((null==t?void 0:t.status)==="unknown-pty")return{...e,stopped:!0,message:"PTY 가 끝났습니다"};if((null==t?void 0:t.status)==="denied")return{...e,failures:0,stopped:!0,message:t.reason||"화면 조회가 거부되었습니다"};let n=e.failures+1;return(null==t?void 0:t.status)!=="owner-unreachable"?{...e,failures:n,stopped:n>=5,message:(null==t?void 0:t.reason)||"화면 조회에 실패했습니다"}:{...e,failures:n,stopped:n>=5,message:n>=5?"소유 프로세스에 닿지 않습니다":null!=(r=t.reason)?r:null}}function E(e){var t,r;let{terminal:l,client:o,onClose:d}=e,u=(0,a.useRef)(null),p=(0,a.useRef)(null),h=(0,a.useRef)(null),f=(0,a.useRef)(I),[b,g]=(0,a.useState)(!1),[x,v]=(0,a.useState)(!1),w=(0,a.useRef)(!1),[y,k]=(0,a.useState)(null),[j,N]=(0,a.useState)("connecting");return(0,a.useEffect)(()=>{var e,t,r;let n;if(!u.current)return;let a={closed:!1,owned:!1,accepting:!1,queue:Promise.resolve(),takeover:null,release:null};h.current=a,w.current=!1,v(!1);let d={sourceRoot:null==(e=l.sourceRoot)?void 0:e.dbPath},b=new s.B({cols:110,rows:40,fontFamily:'"JetBrainsMono Nerd Font", "JetBrains Mono", monospace',fontSize:13,theme:{background:"#0d0c08",foreground:"#e9e3d4",cursor:"#e9e3d4"},cursorBlink:!1,disableStdin:!0,scrollback:0,allowProposedApi:!0});b.loadAddon(new i.c),b.loadAddon(new c.I),b.unicode.activeVersion="11",b.open(u.current),b.write("\x1b[?25l"),p.current=b,f.current=I,g(!1),k(null);let x=b.onData(e=>{if(!a.accepting||a.closed||!e)return;let t=e.startsWith("\x1b")||"\r"===e||"\n"===e||""===e||" "===e||"\x03"===e;a.queue=a.queue.then(async()=>{try{let r=t?await o.sendTerminalKey(l.id,e,d):await o.sendTerminalText(l.id,e,d);if(a.closed)return;"success"!==r.status&&("denied"===r.status&&(a.accepting=!1,g(!1),b.options.disableStdin=!0),k(r.reason||"입력 실패: ".concat(r.status)))}catch(e){a.closed||k("입력 전송 실패: ".concat(String(e)))}})}),y=u.current,j=!1,S=e=>{a.queue=a.queue.then(async()=>{try{var t;if(!o.sendTerminalMouse)return;let r=await o.sendTerminalMouse(l.id,e,d);if(a.closed||"success"===r.status)return;if((t=r.reason)&&/mouse mode is off|\?1006/i.test(t)){"click"!==e.kind||j||(j=!0,k("이 앱은 마우스를 받지 않는다(마우스 모드 꺼짐) — 키보드로 조작하세요."));return}k(r.reason||"마우스 전송 실패: ".concat(r.status))}catch(e){a.closed||k("마우스 전송 실패: ".concat(String(e)))}})},C=e=>{var t;let r=null==(t=b.element)?void 0:t.querySelector(".xterm-screen");return r?function(e,t,r,n,a){if(!(r.width>0)||!(r.height>0)||n<1||a<1)return null;let l=Math.floor((e-r.left)/r.width*n)+1,s=Math.floor((t-r.top)/r.height*a)+1;return{x:Math.min(n,Math.max(1,l)),y:Math.min(a,Math.max(1,s))}}(e.clientX,e.clientY,r.getBoundingClientRect(),b.cols,b.rows):null},E=()=>a.accepting&&!a.closed&&"none"===b.modes.mouseTrackingMode,R=e=>{var t;if(!E())return;let r=0===(t=e.button)?"left":1===t?"middle":2===t?"right":null,n=C(e);r&&n&&S({...n,kind:"click",button:r})},A=e=>{if(!E()||0===e.deltaY)return;let t=C(e);t&&(e.preventDefault(),e.stopPropagation(),S({...t,kind:e.deltaY<0?"scroll-up":"scroll-down"}))};null==(t=y.addEventListener)||t.call(y,"mousedown",R,{capture:!0}),null==(r=y.addEventListener)||r.call(y,"wheel",A,{passive:!1,capture:!0});let z=async()=>{var e,t,r,s;if(!a.closed&&(e=!document.hidden,t=f.current,e&&!t.stopped)){try{let e=await o.snapshotTerminal(l.id,{ansi:!0,sourceRoot:d.sourceRoot});if(a.closed)return;let t=Y(f.current,e);f.current=t,null!==t.screen&&"success"===e.status&&b.write(t.screen+"\x1b[?25l"),k(t.message)}catch(t){if(a.closed)return;let e=Y(f.current,null);f.current=e,k(e.message)}a.closed||(r=!document.hidden,s=f.current,!r||s.stopped)||(n=setTimeout(()=>{z()},800))}},P=!o.streamTerminal,M=null,D=()=>{!o.streamTerminal||a.closed||P||(N("connecting"),M=o.streamTerminal(l.id,{sourceRoot:d.sourceRoot},e=>{a.closed||("mode"===e.type?N("bytes"===e.mode?"stream-bytes":"stream-screen"):"reset"===e.type||"screen"===e.type?(b.write(T(e.screen)+"\x1b[?25l"),k(null)):"data"===e.type?b.write(e.chunk):"end"===e.type?(k("PTY 가 끝났습니다"),f.current={...f.current,stopped:!0}):"status"===e.type&&k("화면 조회: ".concat(e.status)))},e=>{a.closed||((0,m.cY)("pwa.terminal.stream-fallback",{id:l.id,reason:e}),P=!0,N("poll"),z())}))},U=()=>{if(n&&clearTimeout(n),n=void 0,!P)return void(document.hidden?(null==M||M(),M=null):M||f.current.stopped||D());document.hidden||a.closed||f.current.stopped||z()};return document.addEventListener("visibilitychange",U),P?(N("poll"),z()):D(),()=>{var e,t;a.closed=!0,a.accepting=!1,n&&clearTimeout(n),null==M||M(),document.removeEventListener("visibilitychange",U),x.dispose(),null==(e=y.removeEventListener)||e.call(y,"mousedown",R,{capture:!0}),null==(t=y.removeEventListener)||t.call(y,"wheel",A,{capture:!0}),(async()=>{if(await a.takeover,a.release&&await a.release,a.owned){await a.queue;try{let e=await o.controlTerminal(l.id,"release",d);"success"===e.status&&(a.owned=!1)}catch(e){}}})(),h.current===a&&(h.current=null),p.current=null,b.dispose()}},[o,l.id,null==(t=l.sourceRoot)?void 0:t.dbPath]),(0,n.jsxs)("section",{className:"flex h-full min-h-0 flex-col bg-[#0d0c08]","aria-label":"PTY 라이브 화면",children:[(0,n.jsxs)("header",{className:"flex flex-wrap items-center gap-3 border-b border-zinc-700 px-3 py-2 text-sm text-zinc-100",children:[(0,n.jsx)("span",{className:"font-mono",children:l.id}),(0,n.jsx)("span",{children:null!=(r=l.kind)?r:"PTY"}),(0,n.jsx)("span",{children:b?"입력 가능":"읽기 전용"}),(0,n.jsx)("span",{className:"rounded bg-zinc-800 px-1.5 py-0.5 font-mono text-[10px] text-zinc-300","data-pty-feed":j,title:"화면을 받는 방식",children:"stream-bytes"===j?"● 실시간":"stream-screen"===j?"● 실시간(화면)":"poll"===j?"폴링 0.8s":"연결 중"}),(0,n.jsx)("button",{type:"button",disabled:x,onClick:()=>{(e=>{var t;let r=h.current;if(!r||r.closed||w.current)return;w.current=!0,v(!0);let n={sourceRoot:null==(t=l.sourceRoot)?void 0:t.dbPath};"release"===e&&(r.accepting=!1,p.current&&(p.current.options.disableStdin=!0));let a=(async()=>{try{"release"===e&&await r.queue;let t=await o.controlTerminal(l.id,e,n);if("success"===t.status&&(r.owned="takeover"===e),r.closed)return;"success"===t.status?(r.accepting="takeover"===e,g(r.accepting),p.current&&(p.current.options.disableStdin=!r.accepting),k(null)):("release"===e&&(r.accepting=r.owned,p.current&&(p.current.options.disableStdin=!r.accepting)),k(t.reason||("denied"===t.status?"제어 거부: 권한이 없습니다":"제어 실패: ".concat(t.status))))}catch(t){r.closed||("release"===e&&(r.accepting=r.owned,p.current&&(p.current.options.disableStdin=!r.accepting)),k("제어 요청 실패: ".concat(String(t))))}finally{r.closed||(w.current=!1,v(!1))}})();"takeover"===e?r.takeover=a:r.release=a})(b?"release":"takeover")},children:b?"release":"takeover"}),(0,n.jsx)("button",{type:"button",onClick:d,"aria-label":"PTY 라이브 닫기",children:"닫기"})]}),y&&(0,n.jsx)("p",{role:"status",className:"px-3 py-1 text-amber-300",children:y}),(0,n.jsx)("div",{ref:u,className:"min-h-0 flex-1 overflow-auto","aria-label":"".concat(l.id," 화면")})]})}var R=r(85200);let A=e=>"string"==typeof e&&e.trim()?e:null,z={codex:"codex",claude:"claude",gemini:"gemini",grok:"grok",self:"elanous",mission:"elanous 미션",shell:"셸",pty:"PTY"},P={PLAN:"text-sky-400",ROUTE:"text-violet-400",VERIFY:"text-amber-400",HEAL:"text-emerald-400",ESCALATE:"text-rose-400",SHIP:"text-green-400"};function M(e){let{rows:t,client:r,initial:l,onClose:s,stage:o=!1}=e,[i,c]=(0,a.useState)(l);(0,a.useEffect)(()=>{0===i.length&&t.length&&c(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3,r=e.filter(e=>e.alive),n=r.filter(e=>e.kind&&["codex","claude","self","mission","gemini","grok"].includes(e.kind)),a=r.filter(e=>!n.includes(e));return[...n,...a].slice(0,t).map(e=>e.id)}(t))},[t,i.length]),(0,a.useEffect)(()=>{let e=new URLSearchParams(window.location.search);i.length?e.set("wall",i.join(",")):e.delete("wall"),window.history.replaceState(null,"","".concat(window.location.pathname,"?").concat(e.toString()))},[i]);let[d,u]=(0,a.useState)([]);(0,a.useEffect)(()=>{let e=!0,t=async()=>{try{var t;let n=await r.fetchJson("/v1/logs?category=harness.decision&store=@active&since=6h&limit=300");e&&u(null!=(t=n.logs)?t:[])}catch(e){}};t();let n=window.setInterval(()=>{document.hidden||t()},5e3);return()=>{e=!1,window.clearInterval(n)}},[r]);let[m,p]=(0,a.useState)(!1);(0,a.useEffect)(()=>{"public"===new URLSearchParams(window.location.search).get("capture")&&p(!0)},[]);let h=(0,a.useMemo)(()=>m?(0,R.yR)(d.map(e=>{var t;return{ts:e.ts,category:"harness.decision",event:"decision",data:null!=(t=e.data)?t:null}})):d,[d,m]),f=(0,a.useMemo)(()=>i.map(e=>t.find(t=>t.id===e)).filter(e=>!!e),[i,t]),b=e=>c(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e].slice(-3));return(0,n.jsxs)("section",{className:"flex h-full min-h-0 flex-col bg-[#0b0a07]","aria-label":"터미널 나란히","data-pty-wall":!0,children:[(0,n.jsxs)("header",{className:"flex flex-wrap items-center gap-2 border-b border-zinc-700 px-3 py-2 text-xs text-zinc-200",children:[(0,n.jsxs)("span",{className:"font-medium",children:["나란히 \xb7 ",f.length,"/3"]}),t.filter(e=>e.alive).slice(0,14).map(e=>{var t,r,a;return(0,n.jsxs)("button",{type:"button",onClick:()=>b(e.id),"aria-pressed":i.includes(e.id),className:"rounded-full border px-2 py-0.5 font-mono ".concat(i.includes(e.id)?"border-emerald-500 bg-emerald-900/40 text-emerald-200":"border-zinc-700 text-zinc-400 hover:bg-zinc-800"),"data-pty-wall-chip":e.id,children:[null!=(r=e.kind)?r:"pty"," \xb7 ",e.nickname||e.id]},"".concat(null!=(a=null==(t=e.sourceRoot)?void 0:t.dbPath)?a:"",":").concat(e.id))}),(0,n.jsx)("button",{type:"button",onClick:s,className:"ml-auto rounded px-2 py-1 text-zinc-400 hover:bg-zinc-800","aria-label":"나란히 닫기",children:"닫기"})]}),0===f.length?(0,n.jsx)("p",{className:"p-6 text-sm text-zinc-400",children:"위에서 PTY 를 1~3개 고르세요 — 살아 있는 에이전트 PTY 가 없으면 비어 있습니다."}):(0,n.jsx)("div",{className:"grid min-h-0 flex-1 gap-1 p-1 ".concat(1===f.length?"grid-cols-1":2===f.length?"grid-cols-2":"grid-cols-3"),children:f.map(e=>{var t,a;let l=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:3;return t.filter(t=>{var r;let n=null!=(r=t.data)?r:{};return!!e.runId&&n.runId===e.runId||n.target===e.id||n.shard===e.id}).sort((e,t)=>e.ts<t.ts?1:-1).slice(0,r).map(e=>{var t,r,n,a,l;let s=null!=(t=e.data)?t:{};return{ts:e.ts,kind:(null!=(r=A(s.kind))?r:"PLAN").toUpperCase(),what:null!=(n=A(s.what))?n:"(판단)",why:null!=(l=null!=(a=A(s.reason))?a:A(s.why))?l:A(s.purpose),target:A(s.target)}})}(e,h,2);return(0,n.jsxs)("div",{className:"flex min-h-0 flex-col overflow-hidden rounded border border-zinc-800","data-pty-wall-pane":e.id,children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 bg-zinc-900 px-2 py-1 text-[11px]",children:[(0,n.jsx)("span",{className:"rounded bg-violet-900/50 px-1.5 py-0.5 text-violet-200","data-pty-agent":!0,children:function(e){let t=e.externalToolName&&z[e.externalToolName]||e.kind&&z[e.kind]||e.externalToolName||e.kind||"PTY";return"에이전트: ".concat(t).concat(e.runId?" \xb7 런 ".concat(e.runId.replace(/^run-/,"").slice(0,8)):"")}(e)}),(0,n.jsx)("span",{className:"truncate font-mono text-zinc-500",children:e.id})]}),(0,n.jsx)("div",{className:"min-h-[38px] border-b border-zinc-800 bg-zinc-950/80 px-2 py-1 ".concat(o?"text-sm":"text-[11px]"),"aria-label":"의도 띠","data-pty-intent":!0,children:0===l.length?(0,n.jsx)("span",{className:"text-zinc-500",children:"이 PTY 를 모는 판단 신호 없음(사람이 모는 PTY 거나 MAX 계측 꺼짐)"}):l.map(e=>{var t;return(0,n.jsxs)("div",{className:"truncate",children:[(0,n.jsx)("span",{className:"font-mono ".concat(null!=(t=P[e.kind])?t:"text-zinc-300"),children:e.kind})," ",(0,n.jsx)("span",{className:"text-zinc-100",children:e.what}),e.why&&(0,n.jsxs)("span",{className:"text-zinc-400",children:[" \xb7 왜: ",e.why]}),e.target&&(0,n.jsxs)("span",{className:"text-zinc-500",children:[" → ",e.target]})]},"".concat(e.ts,"-").concat(e.what))})}),(0,n.jsx)("div",{className:"min-h-0 flex-1",children:(0,n.jsx)(E,{terminal:e,client:r,onClose:()=>b(e.id)})})]},"".concat(null!=(a=null==(t=e.sourceRoot)?void 0:t.dbPath)?a:"",":").concat(e.id))})})]})}var D=r(94399);let U=/\x1b(?:\][^\x07\x1b]*(?:\x07|\x1b\\)|\[[0-?]*[ -/]*[@-~]|[@-Z\\-_])/g,L=new Map;function $(e){let{sessionId:t}=e,{client:r,setSessionId:l}=(0,u.Q)(),[s,o]=(0,a.useState)(L),[i,c]=(0,a.useState)(null);(0,a.useEffect)(()=>{let e=r.connectAcp({...t?{sessionId:t}:{},onSession:e=>{e&&e!==t&&l(e)}});(0,m.cY)("tui-mirror.attach",{sessionId:t});let n=e.on("sessionUpdate",e=>{var t,r;let n=(null!=(r=e.params)?r:{}).update;if(!n||"agent_thought_chunk"!==n.sessionUpdate)return;let a=(null==(t=n.content)?void 0:t.type)==="text"?n.content.text:null;a&&o(e=>{let t=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Date.now(),n=p(t);if(!n||"terminalFrame"!==n.method)return e;let{terminalId:a,frame:l,instance:s,at:o}=n.payload,i="".concat(s).concat("\0").concat(a),c=e.get(i);if(c&&o<c.at)return e;let d=new Map(e);return d.set(i,{key:i,surfaceId:a,frame:l,instance:s,at:o,receivedAt:r}),d}(e,a);return t!==e&&(0,m.cY)("tui-mirror.frame",{bytes:a.length}),t})}),a=setInterval(()=>{o(e=>(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Date.now(),r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:15e3,n=!1;for(let a of e.values())if(t-a.receivedAt>r){n=!0;break}if(!n)return e;let a=new Map;for(let[n,l]of e)t-l.receivedAt<=r&&a.set(n,l);return a})(e))},5e3);return()=>{clearInterval(a);try{n()}catch(e){}try{e.close()}catch(e){}}},[r,t,l]);let d=(0,a.useMemo)(()=>[...s.values()].sort((e,t)=>t.receivedAt-e.receivedAt||e.key.localeCompare(t.key)),[s]);(0,a.useEffect)(()=>{var e,t;i&&s.has(i)||c(null!=(t=null==(e=d[0])?void 0:e.key)?t:null)},[d,i,s]);let h=i?s.get(i):void 0;return(0,n.jsxs)("div",{className:"flex h-full min-h-0 flex-col bg-zinc-950 text-zinc-100",children:[(0,n.jsxs)("div",{className:"flex flex-wrap items-center gap-2 border-b border-zinc-800 px-3 py-2 text-xs text-zinc-400",children:[(0,n.jsx)("span",{className:"font-semibold text-zinc-200",children:"\uD83D\uDDA5 TUI 관측"}),(0,n.jsx)("span",{"aria-live":"polite",children:0===d.length?"자기신고 화면 대기 중…":"".concat(d.length,"개 화면 \xb7 라이브 미러")}),d.length>0&&(0,n.jsx)("select",{"aria-label":"관측할 TUI 화면 선택",className:"ml-auto rounded border border-zinc-700 bg-zinc-900 px-2 py-1 text-zinc-100",value:null!=i?i:"",onChange:e=>c(e.target.value),children:d.map(e=>(0,n.jsxs)("option",{value:e.key,children:[e.surfaceId," \xb7 ",e.instance]},e.key))})]}),(0,n.jsx)("pre",{className:"m-0 min-h-0 flex-1 overflow-auto whitespace-pre p-3 font-mono text-xs leading-snug text-zinc-100","aria-live":"polite","aria-label":"선택한 TUI 화면의 라이브 렌더 프레임",children:h?h.frame.replace(U,""):"자기신고하는 elanous 화면이 아직 없습니다. 대시보드(elanous)를 실행하면 여기 라이브로 미러링됩니다."})]})}var O=r(853),F=r(19989),B=r(49413),Q=r(89234),q=r(32353),H=r(79609);function _(e){let{onFrameUploaded:t}=e,{config:r,client:l,sessionId:s}=(0,u.Q)(),o=(0,a.useRef)(null);(0,a.useEffect)(()=>()=>{try{var e;null==(e=o.current)||e.close()}catch(e){}o.current=null},[]);let i=(0,a.useCallback)(async e=>{if(t){try{t(e)}catch(e){}return}if(s){o.current||(o.current=l.connectAcp({sessionId:s}));try{var r;await o.current.send("terminal/camera/frame/notify",{sessionId:s,attachmentId:e.id,ts:null!=(r=e.createdAt)?r:Date.now()})}catch(e){(0,m.cY)("webterm.live-cam.notify-failed",{reason:e instanceof Error?e.message:String(e)})}}},[l,s,t]),c=function(e){var t,r,n;let l=null!=(t=e.intervalMs)?t:1e3,s=null!=(r=e.jpegQuality)?r:.85,o=null!=(n=e.maxDimension)?n:1280,[i,c]=(0,a.useState)({status:"idle",framesUploaded:0,lastAttachmentId:null,error:null}),d=(0,a.useRef)(null),u=(0,a.useRef)(null),p=(0,a.useRef)(null),h=(0,a.useRef)(null),f=(0,a.useRef)(!1),b=(0,a.useRef)(e.onFrameUploaded);b.current=e.onFrameUploaded;let g=(0,a.useRef)({baseUrl:e.baseUrl,token:e.token});g.current={baseUrl:e.baseUrl,token:e.token};let x=(0,a.useCallback)(()=>{null!==h.current&&(clearInterval(h.current),h.current=null);let e=d.current;if(e){for(let t of e.getTracks())try{t.stop()}catch(e){}d.current=null}if(u.current){try{u.current.pause()}catch(e){}u.current.srcObject=null,u.current=null}p.current=null,f.current=!1},[]),v=(0,a.useCallback)(async()=>{if(f.current)return void(0,m.cY)("webterm.live-cam.frame-dropped",{reason:"in-flight"});let e=u.current;if(!e||0===e.videoWidth||0===e.videoHeight)return void(0,m.cY)("webterm.live-cam.frame-skipped",{reason:"video-not-ready"});f.current=!0;try{let r=function(e,t,r){if(e<=r&&t<=r)return{width:e,height:t};let n=e/t;return e>=t?{width:r,height:Math.round(r/n)}:{width:Math.round(r*n),height:r}}(e.videoWidth,e.videoHeight,o),n=p.current;n&&n.width===r.width&&n.height===r.height||(p.current=n=function(e,t){let r=document.createElement("canvas");return r.width=e,r.height=t,r}(r.width,r.height));let a=n.getContext("2d");if(!a)return void(0,m.cY)("webterm.live-cam.no-ctx");a.drawImage(e,0,0,r.width,r.height);let l=await new Promise(e=>{n.toBlob(t=>e(t),"image/jpeg",s)});if(!l)return void(0,m.cY)("webterm.live-cam.toBlob-null");let i="live-frame-".concat(Date.now(),".jpg"),d=await (0,H.v)({baseUrl:g.current.baseUrl,token:g.current.token,file:l,filename:i});if(!d.ok){c(e=>({...e,error:d.reason})),(0,m.cY)("webterm.live-cam.upload-failed",{reason:d.reason});return}c(e=>({...e,framesUploaded:e.framesUploaded+1,lastAttachmentId:d.meta.id,error:null}));try{var t;null==(t=b.current)||t.call(b,d.meta)}catch(e){(0,m.cY)("webterm.live-cam.onFrameUploaded-throw",{reason:e instanceof Error?e.message:String(e)})}}catch(t){let e=t instanceof Error?t.message:String(t);c(t=>({...t,error:e})),(0,m.cY)("webterm.live-cam.capture-error",{reason:e})}finally{f.current=!1}},[s,o]),w=(0,a.useCallback)(async()=>{var e;let t;if("undefined"==typeof navigator||!(null==(e=navigator.mediaDevices)?void 0:e.getUserMedia))return void c(e=>({...e,status:"unsupported",error:"getUserMedia not available"}));if(!g.current.baseUrl)return void c(e=>({...e,status:"error",error:"daemon baseUrl not configured"}));if(d.current)return;c(e=>({...e,status:"requesting",error:null}));try{t=await navigator.mediaDevices.getUserMedia({video:{facingMode:{ideal:"environment"}}})}catch(r){let e=r instanceof Error?r.message:String(r),t=e.includes("Permission")||e.includes("NotAllowed");c(r=>({...r,status:t?"denied":"error",error:e})),(0,m.cY)("webterm.live-cam.getUserMedia-failed",{reason:e,denied:t});return}d.current=t;let r=document.createElement("video");r.srcObject=t,r.muted=!0,r.playsInline=!0,u.current=r;try{await r.play()}catch(e){(0,m.cY)("webterm.live-cam.video-play-failed",{reason:e instanceof Error?e.message:String(e)})}c(e=>({...e,status:"streaming",framesUploaded:0,error:null})),null!==h.current&&clearInterval(h.current),h.current=setInterval(()=>{v()},l),(0,m.cY)("webterm.live-cam.started",{intervalMs:l})},[v,l]),y=(0,a.useCallback)(()=>{x(),c({status:"idle",framesUploaded:0,lastAttachmentId:null,error:null}),(0,m.cY)("webterm.live-cam.stopped")},[x]);return(0,a.useEffect)(()=>()=>{x()},[x]),{...i,start:w,stop:y,isRunning:"streaming"===i.status}}({baseUrl:r.baseUrl,...r.token?{token:r.token}:{},onFrameUploaded:i});return"unsupported"!==c.status&&r.baseUrl?"denied"===c.status?(0,n.jsx)("button",{type:"button",disabled:!0,className:"rounded border border-rose-300 bg-rose-50 px-2 py-0.5 text-[11px] text-rose-700 dark:border-rose-800 dark:bg-rose-950 dark:text-rose-200",title:"Camera permission denied. Enable in iOS Settings → Safari → Camera, then reload.","data-testid":"live-camera-denied",children:"Camera denied"}):c.isRunning?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("button",{type:"button",onClick:()=>c.stop(),className:"rounded border border-rose-300 bg-rose-50 px-2 py-0.5 text-rose-700 dark:border-rose-800 dark:bg-rose-950 dark:text-rose-200 hover:bg-rose-100 dark:hover:bg-rose-900",title:"Stop live camera","data-testid":"live-camera-stop",children:"■ Stop"}),(0,n.jsxs)("span",{className:"rounded border border-border bg-card px-1.5 py-0.5 font-mono text-[10px] text-muted-foreground","data-testid":"live-camera-stats","aria-live":"polite",children:[c.framesUploaded,"f",c.error?(0,n.jsx)("span",{className:"ml-1 text-rose-500",children:"err"}):null]})]}):(0,n.jsx)("button",{type:"button",disabled:"requesting"===c.status,onClick:()=>{c.start()},className:"rounded border px-2 py-0.5 hover:bg-accent disabled:opacity-50",title:"Start live camera — uploads a 1Hz frame stream so the agent can see what you point at","data-testid":"live-camera-start",children:"requesting"===c.status?"Requesting…":"\uD83D\uDCF9 Live"}):null}function V(e){let{terminalId:t,onClear:r,onRecordingChange:l,onAttached:s,voice:o}=e,{client:i,sessionId:c,config:d}=(0,u.Q)(),[p,h]=(0,a.useState)(null),[f,b]=(0,a.useState)(null),[g,x]=(0,a.useState)(!1),[v,w]=(0,a.useState)(null);(0,a.useEffect)(()=>{null==l||l(null!==p)},[p,l]);let y=(0,a.useRef)(null);(0,a.useEffect)(()=>()=>{try{var e;null==(e=y.current)||e.close()}catch(e){}y.current=null},[]),(0,a.useEffect)(()=>{if(!c)return;y.current||(y.current=i.connectAcp({sessionId:c}));let e=y.current,r=!1;return(async()=>{try{var n;let a=await e.send("terminal/record/list",{sessionId:c});if(r)return;let l=null==a||null==(n=a.recordings)?void 0:n.find(e=>e.terminalId===t);l?h({recorderId:l.recorderId,startedAt:l.startedAt}):h(null),b(null),w(null)}catch(e){(0,m.cY)("webterm.controls.list-error",{reason:String(e)})}})(),()=>{r=!0}},[i,c,t]);let k=(0,a.useCallback)(async()=>{if(!c)return void w("session 미설정 — daemon 연결을 먼저 확인하세요");y.current||(y.current=i.connectAcp({sessionId:c}));let e=y.current;x(!0),w(null),b(null);try{var r,n;let a=await e.send("terminal/record/start",{sessionId:c,terminalId:t});(null==a?void 0:a.started)&&a.recorderId?((0,m.cY)("webterm.controls.record.started",{recorderId:a.recorderId,terminalId:t}),h({recorderId:a.recorderId,startedAt:null!=(r=a.startedAt)?r:Date.now()})):w(null!=(n=null==a?void 0:a.reason)?n:"start failed")}catch(e){w(String(e instanceof Error?e.message:e))}finally{x(!1)}},[i,c,t]),j=(0,a.useCallback)(async()=>{var e,r,n,a;if(!c||!p)return;let l=null!=(e=y.current)?e:i.connectAcp({sessionId:c});y.current=l,x(!0),w(null);try{let e=await l.send("terminal/record/stop",{sessionId:c,terminalId:t});(null==e?void 0:e.stopped)&&e.recorderId&&e.downloadUrl?((0,m.cY)("webterm.controls.record.stopped",{recorderId:e.recorderId,frameCount:e.frameCount,elapsedSec:e.elapsedSec}),b({recorderId:e.recorderId,downloadUrl:e.downloadUrl,frameCount:null!=(r=e.frameCount)?r:0,elapsedSec:null!=(n=e.elapsedSec)?n:0}),h(null)):w(null!=(a=null==e?void 0:e.reason)?a:"stop failed")}catch(e){w(String(e instanceof Error?e.message:e))}finally{x(!1)}},[p,i,c,t]);return(0,n.jsxs)("div",{className:"flex flex-wrap items-center gap-2 border-b px-2 py-1 text-xs",children:[(0,n.jsx)("button",{type:"button",className:"rounded border px-2 py-0.5 hover:bg-accent",onClick:()=>{(0,m.cY)("webterm.controls.clear"),r()},children:"clear"}),(0,n.jsx)(Q.T,{onAttached:s?e=>s([e]):void 0}),(0,n.jsx)(q.u,{onAttached:s}),(0,n.jsx)(_,{}),o&&(0,n.jsxs)("button",{type:"button",onClick:o.onToggle,disabled:o.disabled,title:o.disabled?"마이크 사용 불가 (insecure context 등)":"".concat(o.phaseLabel," \xb7 xterm 으로 typing"),"data-elanous-action":"webterm-voice-toggle-controls","aria-pressed":o.active,className:(0,B.cn)("inline-flex items-center gap-1 rounded border px-2 py-0.5",o.active?"border-rose-300 bg-rose-100 text-rose-800 dark:border-rose-700 dark:bg-rose-950/40 dark:text-rose-100":"hover:bg-accent",o.disabled&&"cursor-not-allowed opacity-50"),children:[(0,n.jsx)("span",{className:(0,B.cn)("h-1.5 w-1.5 rounded-full",o.dotColor,("listening"===o.phase||"speaking"===o.phase)&&"animate-pulse"),"aria-hidden":"true"}),o.active?(0,n.jsx)(O.A,{className:"h-3.5 w-3.5"}):(0,n.jsx)(F.A,{className:"h-3.5 w-3.5"}),(0,n.jsx)("span",{children:"voice→stdin"})]}),!p&&!f&&(0,n.jsx)("button",{type:"button",disabled:g,className:"rounded border px-2 py-0.5 ".concat(g?"opacity-50":"hover:bg-accent"," text-rose-600 dark:text-rose-400"),onClick:()=>void k(),title:"start asciicast recording",children:"● record"}),p&&(0,n.jsx)("button",{type:"button",disabled:g,className:"rounded border px-2 py-0.5 ".concat(g?"opacity-50":"hover:bg-accent"," bg-rose-600 text-white animate-pulse"),onClick:()=>void j(),title:"stop + save .cast",children:"■ stop"}),f&&(0,n.jsx)("a",{href:(e=>{var t;if(!e)return"";let r=null!=(t=d.baseUrl)?t:"",n=e.includes("?")?"&":"?",a=d.token?"".concat(n,"auth=").concat(encodeURIComponent(d.token)):"";return"".concat(r).concat(e).concat(a)})(f.downloadUrl),download:"".concat(f.recorderId,".cast"),className:"rounded border border-emerald-500 px-2 py-0.5 text-emerald-600 hover:bg-emerald-50 dark:hover:bg-emerald-950",onClick:()=>(0,m.cY)("webterm.controls.download.click",{recorderId:f.recorderId}),title:"".concat(f.frameCount," frames \xb7 ").concat(f.elapsedSec.toFixed(1),"s"),children:"⬇ download .cast"}),f&&(0,n.jsx)("button",{type:"button",className:"rounded border px-2 py-0.5 text-muted-foreground hover:bg-accent",onClick:()=>b(null),title:"dismiss","aria-label":"dismiss download",children:"\xd7"}),(p||f)&&(0,n.jsxs)("span",{className:"ml-auto text-[11px] text-muted-foreground",children:[p&&"● recording",f&&!p&&"✓ ".concat(f.recorderId)]}),v&&(0,n.jsx)("span",{className:"ml-2 max-w-[40%] truncate text-[11px] text-rose-500",title:v,children:v})]})}let G={ctrl:!1,alt:!1},J={up:"A",down:"B",right:"C",left:"D"},K=[{key:"esc",label:"Esc",width:"wide",title:"Escape (vim normal mode)"},{key:"tab",label:"Tab",width:"wide",title:"Tab (autocomplete)"},{key:"left",label:"←",width:"narrow",title:"Left arrow"},{key:"down",label:"↓",width:"narrow",title:"Down arrow"},{key:"up",label:"↑",width:"narrow",title:"Up arrow"},{key:"right",label:"→",width:"narrow",title:"Right arrow"}];function W(e){let{terminalId:t}=e,{sessionId:r}=(0,u.Q)(),[l,s]=(0,a.useState)(!1),[o,i]=(0,a.useState)(!1),c=(0,a.useRef)(!1),d=(0,a.useRef)(!1);c.current=l,d.current=o;let p=(0,a.useRef)(null),h=(0,a.useCallback)((e,t)=>{null!==p.current&&(clearTimeout(p.current),p.current=null),(e||t)&&(p.current=setTimeout(()=>{s(!1),i(!1),p.current=null,(0,m.cY)("webterm.modbar.auto-release",{})},5e3))},[]);(0,a.useEffect)(()=>()=>{null!==p.current&&(clearTimeout(p.current),p.current=null)},[]);let f=(0,a.useCallback)(e=>{if(!r)return void(0,m.cY)("webterm.modbar.no-session",{key:e});let n={ctrl:c.current,alt:d.current},a=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:G;switch(e){case"esc":return t.alt?"\x1b\x1b":"\x1b";case"tab":return t.alt?"\x1b ":" ";case"up":case"down":case"left":case"right":{let r=J[e],n=function(e){if(!e.ctrl&&!e.alt)return null;let t=0;return e.alt&&(t+=2),e.ctrl&&(t+=4),1+t}(t);return null===n?"\x1b[".concat(r):"\x1b[1;".concat(n).concat(r)}}}(e,n);(0,m.cY)("webterm.modbar.send",{key:e,ctrl:n.ctrl,alt:n.alt,bytes:a.length});try{N(t,a)}catch(e){(0,m.cY)("webterm.modbar.send-error",{reason:String(e)})}(n.ctrl||n.alt)&&(s(!1),i(!1),h(!1,!1))},[r,t,h]),b=(0,a.useCallback)(()=>{let e=!c.current;s(e),h(e,d.current)},[h]),g=(0,a.useCallback)(()=>{let e=!d.current;i(e),h(c.current,e)},[h]),x=e=>["flex h-7 items-center justify-center rounded border font-mono text-[11px] px-2 min-w-[36px] active:translate-y-px disabled:opacity-50 transition-colors",e?"border-amber-400 bg-amber-100 text-amber-900 dark:border-amber-500 dark:bg-amber-900 dark:text-amber-100":"border-border bg-card text-muted-foreground hover:bg-muted hover:border-primary hover:text-foreground"].join(" ");return(0,n.jsxs)("div",{className:"flex flex-wrap items-center gap-1 border-b border-border bg-background/60 px-2 py-1","data-testid":"modifier-bar",role:"toolbar","aria-label":"Mobile keyboard modifiers",children:[K.map(e=>(0,n.jsx)("button",{type:"button",className:["flex h-7 items-center justify-center rounded border border-border bg-card font-mono text-[11px] text-muted-foreground hover:bg-muted hover:border-primary hover:text-foreground active:translate-y-px disabled:opacity-50","wide"===e.width?"px-2 min-w-[36px]":"w-8"].join(" "),onClick:()=>{f(e.key)},disabled:!r,"aria-label":e.title,title:e.title,"data-testid":"modbar-".concat(e.key),children:e.label},e.key)),(0,n.jsx)("span",{className:"mx-1 text-[10px] text-muted-foreground/60","aria-hidden":!0,children:"\xb7"}),(0,n.jsx)("button",{type:"button",className:x(l),onClick:b,disabled:!r,"aria-label":"Ctrl modifier ".concat(l?"active":"idle"),"aria-pressed":l,title:"Ctrl modifier — toggles. Combines with arrow keys (e.g. Ctrl+→ = next word). Auto-releases after 5s or one keystroke.","data-testid":"modbar-ctrl",children:"Ctrl"}),(0,n.jsx)("button",{type:"button",className:x(o),onClick:g,disabled:!r,"aria-label":"Alt modifier ".concat(o?"active":"idle"),"aria-pressed":o,title:"Alt modifier — toggles. Combines with Esc/Tab/arrows. Auto-releases after 5s or one keystroke.","data-testid":"modbar-alt",children:"Alt"})]})}var Z=r(69316);function X(e){let{foreignActivityTick:t,onPeerCountChange:r}=e,{client:l,sessionId:s}=(0,u.Q)(),[o,i]=(0,a.useState)(0),[c,d]=(0,a.useState)(!1);(0,a.useEffect)(()=>{null==r||r(o)},[o,r]);let p=(0,a.useRef)(null),h=(0,a.useRef)(null),f=(0,a.useCallback)(async()=>{if(!s)return;p.current||(p.current=l.connectAcp({sessionId:s}));let e=p.current;try{let t=await e.send("terminal/peers/count",{sessionId:s});"number"==typeof(null==t?void 0:t.count)&&(i(t.count),(0,m.cY)("webterm.peers.count",{count:t.count}))}catch(e){(0,m.cY)("webterm.peers.count.error",{reason:String(e)})}},[l,s]);return((0,a.useEffect)(()=>{f();let e=()=>{"visible"===document.visibilityState&&f()};return document.addEventListener("visibilitychange",e),()=>{document.removeEventListener("visibilitychange",e)}},[f]),(0,a.useEffect)(()=>()=>{try{var e;null==(e=p.current)||e.close()}catch(e){}p.current=null,h.current&&clearTimeout(h.current)},[]),(0,a.useEffect)(()=>{t&&(d(!0),h.current&&clearTimeout(h.current),h.current=setTimeout(()=>{d(!1),h.current=null,f()},1800))},[t,f]),o<=1&&!c)?null:(0,n.jsxs)("div",{className:"flex items-center gap-2 border-b border-border bg-amber-500/10 px-2 py-0.5 text-[11px]",children:[(0,n.jsx)(Z.A,{className:"h-3 w-3 text-amber-600","aria-hidden":!0}),o>1&&(0,n.jsxs)("span",{className:"font-mono text-amber-700 dark:text-amber-400",children:[o," devices"]}),c&&(0,n.jsx)("span",{className:"ml-auto rounded bg-amber-500 px-1.5 py-0.5 font-medium text-white animate-pulse",children:"\uD83D\uDC64 typing"})]})}var ee=r(73949);function et(e){let{onAttached:t,pageWide:r=!0}=e,{config:s}=(0,u.Q)(),[o,i]=(0,a.useState)(!1),[c,d]=(0,a.useState)(!1),p=(0,a.useRef)(0),h=(0,a.useCallback)(async e=>{if(0!==e.length){if(!s.baseUrl)return void l.oR.error("Daemon URL 미설정 — Settings 에서 입력");d(!0),(0,m.cY)("webterm.dropzone.drop",{count:e.length,totalBytes:e.reduce((e,t)=>e+t.size,0)});try{let r=await (0,H.K)(e.map(e=>({file:e,filename:e.name})),{baseUrl:s.baseUrl,...s.token?{token:s.token}:{}}),n=r.filter(e=>e.ok),a=r.filter(e=>!e.ok);n.length>0&&(l.oR.success(1===n.length?"\uD83D\uDCCE ".concat(n[0].meta.filename):"\uD83D\uDCCE ".concat(n.length," files dropped")),null==t||t(n.map(e=>e.meta))),a.length>0&&l.oR.error(1===a.length?"드롭 실패: ".concat(a[0].reason.slice(0,80)):"".concat(a.length," 파일 드롭 실패"))}finally{d(!1)}}},[s.baseUrl,s.token,t]);return((0,a.useEffect)(()=>{if(!r)return;let e=e=>{e.dataTransfer&&e.dataTransfer.types.includes("Files")&&(e.preventDefault(),p.current+=1,i(!0))},t=e=>{e.dataTransfer&&e.dataTransfer.types.includes("Files")&&e.preventDefault()},n=e=>{e.dataTransfer&&e.dataTransfer.types.includes("Files")&&(e.preventDefault(),p.current=Math.max(0,p.current-1),0===p.current&&i(!1))},a=e=>{if(!e.dataTransfer)return;let t=e.dataTransfer.files;t&&0!==t.length&&(e.preventDefault(),p.current=0,i(!1),h(Array.from(t)))};return document.addEventListener("dragenter",e),document.addEventListener("dragover",t),document.addEventListener("dragleave",n),document.addEventListener("drop",a),()=>{document.removeEventListener("dragenter",e),document.removeEventListener("dragover",t),document.removeEventListener("dragleave",n),document.removeEventListener("drop",a)}},[h,r]),o||c)?(0,n.jsx)("div",{className:"pointer-events-none fixed inset-0 z-50 flex items-center justify-center bg-primary/20 backdrop-blur-sm",children:(0,n.jsxs)("div",{className:"rounded-xl border-2 border-dashed border-primary bg-card px-6 py-4 text-center shadow-lg",children:[(0,n.jsx)(ee.A,{className:"mx-auto h-10 w-10 text-primary","aria-hidden":!0}),(0,n.jsx)("div",{className:"mt-2 text-sm font-medium text-foreground",children:c?"업로드 중…":"Drop files to attach"}),(0,n.jsx)("div",{className:"mt-1 text-xs text-muted-foreground",children:c?"":"iCloud \xb7 Files.app \xb7 폴더 모두 지원"})]})}):null}var er=r(97228),en=r(82388),ea=r(88719),el=r(82725),es=r(48451),eo=r(98903),ei=r(77306),ec=r(61643),ed=r(19002),eu=r(83654),em=r(5131),ep=r(21234),eh=r(19990),ef=r(61777),eb=r(12906);async function eg(e,t){if(!t||0===t.length)return null;try{let r=await e.fetchJson("/v1/sessions/store/".concat(encodeURIComponent(t),"?ifExists=1"));if(!r||!Array.isArray(r.messages))return null;let n=function(e){let t=[];return e.forEach((e,r)=>{let n=function(e,t){let r=e.role;if("tool"===r)return{...(0,eb.$Q)("\uD83D\uDEE0️ ".concat(e.toolName||"tool")),id:"hydrate-t-".concat(t)};let n=function(e){if("string"==typeof e)return e;if(!Array.isArray(e))return"";let t=[];for(let n of e)if(n&&"object"==typeof n){let e=n.type;if("text"===e&&"string"==typeof n.text)t.push(n.text);else if("image"===e)t.push("\uD83D\uDCCE image");else if("audio"===e)t.push("\uD83D\uDCCE audio");else if("tool_use"===e){var r;let e=null!=(r=n.name)?r:"tool";t.push("\uD83D\uDEE0️ ".concat(e))}else"tool_result"===e&&t.push("\uD83D\uDEE0️ result")}return t.join("\n").trim()}(e.content);return 0===n.length?null:"user"===r?{...(0,eb.tw)(n),id:"hydrate-u-".concat(t)}:"assistant"===r?{id:"hydrate-a-".concat(t),role:"assistant",text:n,timestamp:Date.now(),meta:{provider:"history"}}:"system"===r?null:{...(0,eb.$Q)(n),id:"hydrate-m-".concat(t)}}(e,r);n&&t.push(n)}),t.slice(-200)}(r.messages);return(0,m.cY)("webterm.terminal-chat.hydrate.ok",{sessionId:t,serverCount:r.messages.length,mappedCount:n.length}),n}catch(e){return(0,m.cY)("webterm.terminal-chat.hydrate.skip",{sessionId:t,reason:e instanceof Error?e.message:String(e)}),null}}let ex=[":cwd",":capture",":peers",":tab next",":tab prev"];function ev(e){let t=(null!=e?e:"").replace(/\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])/g,"").replace(/\r/g,"").trim();return t.length>0?t:"(no output)"}let ew=(0,a.forwardRef)(function(e,t){let{terminalId:r,open:s,onTabIntent:o,height:i,voice:c}=e,d="number"==typeof i&&Number.isFinite(i)&&i>0?i:void 0,{client:p,config:h,sessionId:f,setSessionId:b}=(0,u.Q)(),g=(0,a.useRef)(f),x=(0,a.useRef)(null),[v,w]=(0,a.useState)([]),[y,k]=(0,a.useState)(!1),[j,N]=(0,a.useState)(null),[S,I]=(0,a.useState)([]),[C,T]=(0,a.useState)(!1),Y=(0,a.useRef)(async()=>{}),E=(0,a.useRef)(!1);E.current=y;let R=(0,a.useRef)(null),[A,z]=(0,a.useState)(!1),P=(0,ef.$)({enabled:!!(null==c?void 0:c.active)&&!A,language:"ko-KR"}),M=(0,a.useRef)(P);M.current=P,(0,a.useEffect)(()=>{g.current=f},[f]),(0,a.useEffect)(()=>{try{var e;null==(e=x.current)||e.close()}catch(e){}if(x.current=null,s&&f)return x.current=p.connectAcp({sessionId:f}),()=>{try{var e;null==(e=x.current)||e.close()}catch(e){}x.current=null}},[p,s,f]),(0,a.useEffect)(()=>{let e=x.current;if(e&&s&&f)return e.on("sessionUpdate",e=>{var t;let r=R.current;if(!r)return;let n=e.params;if(!n||n.sessionId!==f)return;let a=n.update;if(a&&"agent_message_chunk"===a.sessionUpdate&&(null==(t=a.content)?void 0:t.type)==="text"&&"string"==typeof a.content.text){let e=a.content.text;if(0===e.length)return;w(t=>t.map(t=>{var n;return t.id===r?{...t,text:(null!=(n=t.text)?n:"")+e}:t})),M.current.pushText(e)}})},[s,f]);let D=(0,a.useRef)(null);(0,a.useEffect)(()=>{if(!s||!f||D.current===f)return;D.current=f;let e=!1;return(async()=>{let t=await eg(p,f);e||null===t||w(t)})(),()=>{e=!0}},[p,s,f]);let U=(0,a.useCallback)(e=>{w(t=>[...t,e].slice(-200))},[]);(0,a.useImperativeHandle)(t,()=>({submitVoiceTranscript:e=>{let t=e.trim();if(t){if(E.current)return void(0,m.cY)("webterm.terminal-chat.voice.skip-pending",{len:t.length});(0,m.cY)("webterm.terminal-chat.voice.auto-send",{len:t.length}),Y.current(t)}}}),[]);let L=(0,a.useCallback)(()=>{let e=g.current;return e?(x.current||(x.current=p.connectAcp({sessionId:e})),x.current):null},[p]),$=(0,a.useMemo)(()=>({client:p,sessionId:f,provider:h.provider,setSessionId:b,daemon:{baseUrl:h.baseUrl,...h.token?{token:h.token}:{}},messages:v}),[p,h.baseUrl,h.provider,h.token,v,f,b]),Q=(0,a.useCallback)(e=>{I(t=>[...t,...e]),(0,m.cY)("webterm.terminal-chat.attach.queue",{terminalId:r,added:e.length,filenames:e.map(e=>e.filename)})},[r]),q=(0,a.useCallback)(e=>{I(t=>t.filter(t=>t.id!==e))},[]),H=(0,a.useCallback)(async e=>{let t=e.startsWith(":")?null:await (0,eb.yN)(e,$);if(t){"__CLEAR__"===t.text?w([]):U((0,eb.$Q)(t.text,r)),t.newSessionId&&b(t.newSessionId);return}if(!f)return void U((0,eb.$Q)("session 미설정",r));let n=L();if(!n)return void U((0,eb.$Q)("session 미설정",r));let a=await n.send("terminal/repl/exec",{sessionId:f,terminalId:r,line:e});U((0,eb.$Q)(ev(null==a?void 0:a.output),r)),(null==a?void 0:a.sessionIdChange)&&b(a.sessionIdChange),(null==a?void 0:a.tabIntent)!==void 0&&(null==o||o(a.tabIntent),U((0,eb.$Q)("tab intent → ".concat(String(a.tabIntent)),r))),(null==a?void 0:a.injectPath)&&U((0,eb.$Q)("captured → ".concat(a.injectPath),r)),(null==a?void 0:a.agentChatModeEnter)&&U((0,eb.$Q)("agent chat mode hint — terminal dock already runs plain text as agent turns",r))},[U,$,L,o,f,b,r]),_=(0,a.useCallback)(async()=>{let e=g.current;if(e&&j)try{var t;let n=L();if(!n)return;let a=await n.send("terminal/repl/agent/abort",{sessionId:e,terminalId:r});(0,m.cY)("webterm.terminal-chat.abort",{terminalId:r,aborted:null!=(t=null==a?void 0:a.aborted)&&t}),U((0,eb.$Q)((null==a?void 0:a.aborted)?"agent turn aborted":"no active agent turn to abort",r))}catch(t){let e=t instanceof Error?t.message:String(t);U((0,eb.$Q)("abort failed: ".concat(e),r))}finally{k(!1),N(null)}},[U,L,j,r]),V=(0,a.useCallback)(async e=>{I([]);let t=S.filter(e=>!("string"==typeof e.path&&e.path.length>0)).length;if(t>0){let e=1===t?"첨부 1건이 path 누락으로 누락됐습니다":"첨부 ".concat(t,"건이 path 누락으로 누락됐습니다");l.oR.warning(e),U((0,eb.$Q)("⚠ ".concat(e),r)),(0,m.cY)("webterm.terminal-chat.attach.dropped",{terminalId:r,droppedCount:t,totalCount:S.length})}e.length>0&&U((0,eb.tw)(e,r)),S.length>0&&U((0,eb.$Q)("\uD83D\uDCCE attached: ".concat(S.map(e=>e.filename).join(", ")),r));let n=e.trim();if(n||0!==S.length){k(!0);try{if((0,eb.FM)(n))return void await H(n);if(!f)return void U((0,eb.$Q)("session 미설정",r));let e=L();if(!e)return void U((0,eb.$Q)("session 미설정",r));N(n);let t="assistant-".concat(Date.now(),"-").concat(Math.random().toString(36).slice(2,6));R.current=t,U({id:t,role:"assistant",text:"",timestamp:Date.now(),terminalId:r}),(0,m.cY)("webterm.terminal-chat.turn.start",{terminalId:r,sessionId:f,len:n.length,attachCount:S.length,placeholderId:t});let a=S.filter(e=>e.path).map(e=>"[attached] ".concat(e.path)),l=a.length>0?"".concat(a.join("\n"),"\n\n").concat(n).trimEnd():n,s=await e.send("terminal/repl/exec",{sessionId:f,terminalId:r,line:":agent ".concat(l)});(null==s?void 0:s.agent)?(w(e=>e.map(e=>e.id===t?{...e,text:e.text&&e.text.length>=s.agent.markdown.length?e.text:s.agent.markdown,meta:{provider:s.agent.modelLabel,stopReason:s.agent.stopReason}}:e)),M.current.flush()):(w(e=>e.filter(e=>e.id!==t)),U((0,eb.$Q)(ev(null==s?void 0:s.output),r))),(0,m.cY)("webterm.terminal-chat.turn.end",{terminalId:r,hasAgent:!!(null==s?void 0:s.agent)})}catch(n){let e=n instanceof Error?n.message:String(n),t=R.current;t&&w(e=>e.filter(e=>e.id!==t)),M.current.cancel(),U((0,eb.$Q)("error: ".concat(e),r)),l.oR.error("terminal chat failed: ".concat(e))}finally{R.current=null,k(!1),N(null)}}},[U,L,H,S,f,r]);return((0,a.useEffect)(()=>{Y.current=V},[V]),s)?(0,n.jsxs)("div",{className:"shrink-0 border-t border-border bg-background/95","data-terminal-chat-dock":!0,children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 border-b border-border/80 px-3 py-2",children:[(0,n.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[(0,n.jsx)("span",{className:"inline-flex h-7 w-7 items-center justify-center rounded-md border border-primary/30 bg-primary/10 text-primary",children:(0,n.jsx)(en.A,{className:"h-4 w-4"})}),(0,n.jsxs)("div",{className:"min-w-0",children:[(0,n.jsx)("div",{className:"truncate text-sm font-medium",children:"Terminal Chat Dock"}),(0,n.jsxs)("div",{className:"truncate text-[11px] text-muted-foreground",children:[r," \xb7 plain text = contextual agent turn \xb7 ",(0,n.jsx)("code",{className:"rounded bg-muted px-1",children:":commands"})," stay local"]})]})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[c&&(0,n.jsxs)("button",{type:"button",onClick:c.onToggle,disabled:c.disabled,title:c.disabled?"마이크 사용 불가 (insecure context 등)":c.phaseLabel,"data-elanous-action":"webterm-voice-toggle-dock","aria-pressed":c.active,className:(0,B.cn)("inline-flex h-7 items-center gap-1.5 rounded-md border px-2 text-[11px]",c.active?"border-rose-300 bg-rose-100 text-rose-800 dark:border-rose-700 dark:bg-rose-950/40 dark:text-rose-100":"border-border hover:bg-accent",c.disabled&&"cursor-not-allowed opacity-50"),children:[(0,n.jsx)("span",{className:(0,B.cn)("h-1.5 w-1.5 rounded-full",c.dotColor,("listening"===c.phase||"speaking"===c.phase)&&"animate-pulse"),"aria-hidden":"true"}),c.active?(0,n.jsx)(O.A,{className:"h-3.5 w-3.5"}):(0,n.jsx)(F.A,{className:"h-3.5 w-3.5"}),(0,n.jsx)("span",{className:"hidden sm:inline",children:c.phaseLabel})]}),c&&c.active&&P.supported&&(0,n.jsx)("button",{type:"button",onClick:()=>{A||M.current.cancel(),z(e=>!e)},title:A?"음성 응답 켜기":"음성 응답 끄기","data-elanous-action":"webterm-tts-mute-toggle","aria-pressed":A,className:(0,B.cn)("inline-flex h-7 items-center justify-center rounded-md border px-2 text-[11px]",A?"border-border bg-muted text-muted-foreground":"border-fuchsia-300 bg-fuchsia-50 text-fuchsia-800 dark:border-fuchsia-700 dark:bg-fuchsia-950/40 dark:text-fuchsia-100"),children:A?(0,n.jsx)(ea.A,{className:"h-3.5 w-3.5"}):(0,n.jsx)(el.A,{className:"h-3.5 w-3.5"})}),(0,n.jsx)(em.Qh,{}),(0,n.jsx)(er.vG,{children:(0,n.jsx)(eu.rm,{})}),(0,n.jsx)(er.vG,{children:(0,n.jsx)(ep.D,{})}),j&&(0,n.jsxs)(eh.$,{variant:"destructive",size:"sm",onClick:()=>void _(),title:"abort active terminal-context agent turn",children:[(0,n.jsx)(es.A,{className:"h-3.5 w-3.5"}),"Stop"]}),(0,n.jsxs)("div",{className:"relative",children:[(0,n.jsx)(eh.$,{variant:"outline",size:"icon-sm",onClick:()=>T(e=>!e),"aria-label":"terminal quick commands",title:"terminal quick commands",children:(0,n.jsx)(eo.A,{className:"h-3.5 w-3.5"})}),C&&(0,n.jsx)("div",{className:"absolute right-0 top-full z-40 mt-1 w-44 rounded-md border border-border bg-popover p-1 shadow-md",children:ex.map(e=>(0,n.jsx)("button",{type:"button",className:"block w-full rounded px-2 py-1 text-left font-mono text-[11px] hover:bg-accent",onClick:()=>{T(!1),V(e)},children:e},e))})]})]})]}),j&&(0,n.jsxs)("div",{className:"flex items-center gap-2 border-b border-border/70 px-3 py-2 text-[11px] text-muted-foreground",children:[(0,n.jsx)(ei.A,{className:"h-3.5 w-3.5 animate-spin"}),(0,n.jsxs)("span",{className:"truncate",children:["terminal-context agent turn in progress",j.length>0?" \xb7 ".concat(j.slice(0,120)).concat(j.length>120?"…":""):""]})]}),(0,n.jsxs)("div",{className:(0,B.cn)("grid grid-rows-[1fr_auto]",void 0===d?"h-[clamp(160px,30vh,360px)] min-h-[200px]":void 0),...void 0===d?{}:{style:{height:d}},children:[(0,n.jsx)(ec.D,{messages:v,pending:y,tabId:"dock-".concat(r)}),(0,n.jsx)(ed.V,{onSubmit:V,disabled:y,attachments:S,onAttached:Q,onRemoveAttachment:q,tabId:"dock-".concat(r),...c?{voice:c}:{}})]})]}):null});var ey=r(97923),ek=r(22444);let ej=/^100\.(6[4-9]|[7-9]\d|1[01]\d|12[0-7])\./;function eN(){if(!window.location)return{isSecure:!1,reason:"unknown",hostname:"",protocol:""};let e=function(e,t){let r="https:"===e,n="http:"===e;return"localhost"===t||"127.0.0.1"===t||"[::1]"===t||"::1"===t?{isSecure:!0,reason:"localhost",hostname:t,protocol:e}:r&&/\.ts\.net$/i.test(t)?{isSecure:!0,reason:"https-tsnet",hostname:t,protocol:e}:r?{isSecure:!0,reason:"https-other",hostname:t,protocol:e}:n&&ej.test(t)?{isSecure:!1,reason:"http-tailscale",hostname:t,protocol:e,guidance:"Tailscale 100.x 주소는 HTTP라 마이크 권한이 차단됩니다. `tailscale serve` 또는 funnel 로 ts.net HTTPS 호스트를 노출하면 마이크가 동작합니다."}:n?{isSecure:!1,reason:"http-other",hostname:t,protocol:e,guidance:"브라우저는 HTTP origin 에서 마이크 접근을 차단합니다. HTTPS 로 접속하거나 localhost 로 옮기세요."}:{isSecure:!1,reason:"unknown",hostname:t,protocol:e}}(window.location.protocol,window.location.hostname);return e.isSecure&&!1===window.isSecureContext?{...e,isSecure:!1,reason:"unknown",guidance:"현재 origin 이 secure context 가 아닙니다 (브라우저 판정). HTTPS 로 접속하세요."}:e}let eS="elanous.webterm.voiceBanner.dismissed",eI={isSecure:!1,reason:"unknown",hostname:"",protocol:""};function eC(){var e;let{statusOverride:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},[r,l]=(0,a.useState)(!1),[s,o]=(0,a.useState)(null!=t?t:eI);if((0,a.useEffect)(()=>{l(function(){try{return"1"===window.sessionStorage.getItem(eS)}catch(e){return!1}}()),o(null!=t?t:eN())},[t]),s.isSecure||r)return null;let i="http-tailscale"===s.reason?"\uD83C\uDF99 Tailscale HTTP 에서 마이크가 차단됩니다":"\uD83C\uDF99 마이크 사용을 위해 HTTPS 가 필요합니다";return(0,n.jsxs)("div",{role:"alert","aria-live":"polite","data-testid":"webterm-voice-banner","data-reason":s.reason,className:"flex items-start gap-2 border-b border-amber-300 bg-amber-50 px-3 py-2 text-[12px] text-amber-900 dark:border-amber-700 dark:bg-amber-950/40 dark:text-amber-100",children:[(0,n.jsx)(ey.A,{className:"mt-[1px] h-3.5 w-3.5 shrink-0","aria-hidden":"true"}),(0,n.jsxs)("div",{className:"flex-1",children:[(0,n.jsx)("div",{className:"font-medium",children:i}),(0,n.jsx)("div",{className:"mt-0.5 text-amber-800/90 dark:text-amber-200/80",children:null!=(e=s.guidance)?e:"브라우저는 secure context (HTTPS \xb7 localhost) 에서만 마이크를 허용합니다."}),"http-tailscale"===s.reason&&(0,n.jsxs)("div",{className:"mt-1 font-mono text-[11px] text-amber-700 dark:text-amber-200/90",children:[(0,n.jsx)("code",{children:"tailscale serve --bg --https=443 31415"})," ","or"," ",(0,n.jsx)("a",{href:"https://tailscale.com/kb/1242/tailscale-serve",target:"_blank",rel:"noopener noreferrer",className:"underline hover:text-amber-900 dark:hover:text-amber-50",children:"ts.net HTTPS 가이드"})]})]}),(0,n.jsx)("button",{type:"button",onClick:()=>{try{window.sessionStorage.setItem(eS,"1")}catch(e){}l(!0)},"aria-label":"dismiss banner",title:"이 세션 동안 숨기기",className:"rounded p-0.5 text-amber-700 hover:bg-amber-100 dark:text-amber-200 dark:hover:bg-amber-900/40",children:(0,n.jsx)(ek.A,{className:"h-3.5 w-3.5"})})]})}async function eT(e){var t;let{terminalId:r,paths:n}=e,a=null==(t=e.alsoCopyToClipboard)||t,l=n.filter(e=>"string"==typeof e&&e.length>0).map(e=>"'".concat(e.replace(/'/g,"'\\''"),"'")).join(" ");if(!l)return{injected:!1,copied:!1};let s="".concat(l," "),o=!1;try{(o=N(r,s))?(0,m.cY)("webterm.attach.inject.ok",{terminalId:r,pathCount:n.length,bytes:s.length}):(0,m.cY)("webterm.attach.inject.error",{terminalId:r,reason:"no-sender"})}catch(e){(0,m.cY)("webterm.attach.inject.error",{terminalId:r,reason:String(e)})}let i=!1;if(a&&"undefined"!=typeof navigator&&navigator.clipboard)try{await navigator.clipboard.writeText(l),i=!0,(0,m.cY)("webterm.attach.clipboard.ok",{pathCount:n.length})}catch(e){(0,m.cY)("webterm.attach.clipboard.skip",{reason:String(e)})}return{injected:o,copied:i}}var eY=r(32156),eE=r(28190),eR=r(63611),eA=r(8476);function ez(e){return e.length<=32?e:"…".concat(e.slice(-32))}function eP(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Date.now();if("number"!=typeof e||!Number.isFinite(e)||!Number.isFinite(t)||e>t)return null;let r=new Date(e);return Number.isFinite(r.getTime())?(0,eA.KW)(r.toISOString(),t):null}function eM(e){let t=new Map,r=new Set,n=new Set,a=[];for(let r of e){var l,s;if(n.has(r.id))continue;n.add(r.id),a.push(r);let e=null==(l=r.runId)?void 0:l.trim();if(!e)continue;let o=null!=(s=t.get(e))?s:[];o.push(r),t.set(e,o)}let o=[];for(let[e,n]of t){let t=function(e){let t=e.filter(e=>e.alive&&Number.isFinite(e.startedAt));if(0===t.length)return;let r=Math.max(...t.map(e=>{let{startedAt:t}=e;return t})),n=t.filter(e=>{let{startedAt:t}=e;return t===r});return 1===n.length?n[0]:void 0}(n);if(!t){for(let e of n)r.add(e.id);continue}o.push({runId:e,split:t.id,tabs:n.filter(e=>e.id!==t.id).map(e=>{let{id:t}=e;return t})})}let i=new Set(o.flatMap(e=>{let{split:t,tabs:r}=e;return[t,...r]}));return{layouts:o,unknown:a.filter(e=>{let{id:t}=e;return r.has(t)&&!i.has(t)}).map(e=>{let{id:t}=e;return{id:t,reason:"relationship-unavailable"}})}}function eD(e){return{layouts:e.layouts.map(e=>{let{runId:t,split:r,tabs:n}=e;return{runId:t,slots:[{terminalId:r,position:"split"},...n.map(e=>({terminalId:e,position:"tab"}))]}}),unknown:e.unknown.map(e=>({...e}))}}let eU=["terminal","observe","pty-list"],eL="elanous.webterm.activeId",e$="elanous.webterm.panelsMinimized",eO="elanous.webterm.chatDockOpen";function eF(e){return e.sourceRoot?{sourceRoot:e.sourceRoot.dbPath}:{}}function eB(e){let{layout:t,sessionId:r,onForeignInputActivity:a,terminalIds:l,activeId:s=null,visible:o=!0,clearRequests:i}=e,c=t.layouts.flatMap(e=>e.slots),d=new Map(c.map(e=>[e.terminalId,e])),u=new Set(t.layouts.map(e=>{var t;return null==(t=e.slots[0])?void 0:t.terminalId}).filter(e=>!!e)),m=void 0===l?c.map(e=>e.terminalId):[...new Set([...l,...s?[s]:[],...c.map(e=>e.terminalId)])],p=new Set(c.length>0?c.map(e=>e.terminalId):s?[s]:[]);return(0,n.jsxs)("div",{className:o?"grid h-full min-h-0 grid-cols-2 gap-2 p-2":"hidden","aria-label":"런별 터미널 배치",children:[t.layouts.map(e=>{let{runId:t}=e;return(0,n.jsx)("section",{className:"sr-only","aria-label":"런 ".concat(t," 터미널")},t)}),m.map(e=>{var t,l;let c=d.get(e),m=o&&p.has(e),h=null!=(t=null==c?void 0:c.position)?t:e===s?"single":"inactive-tab";return(0,n.jsxs)("div",{className:m?"".concat(u.has(e)?"col-start-1 ":"").concat((null==c?void 0:c.position)==="split"?"min-h-0 border border-emerald-600":(null==c?void 0:c.position)==="tab"?"min-h-0 border border-zinc-700":"col-span-2 h-full min-h-0"):"hidden","data-pane-position":h,"data-terminal-id":e,children:[c&&(0,n.jsxs)("p",{className:"sr-only",children:["split"===c.position?"분할 터미널":"탭 터미널",": ",e]}),(0,n.jsx)(S,{sessionId:r,terminalId:e,clearRequest:null!=(l=null==i?void 0:i[e])?l:0,onForeignInputActivity:a},e)]},e)}),t.unknown.map(e=>{let{id:t,reason:r}=e;return(0,n.jsxs)("p",{className:"text-xs text-muted-foreground","data-terminal-id":t,"data-pane-relationship":r,children:["터미널 ",t,": 관계를 알 수 없어 배치하지 않았습니다."]},t)})]})}function eQ(){var e,t,r;let{initialPtyId:s=null,onPtySelection:o}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{client:i,config:c,sessionId:d}=(0,u.Q)(),{isCoarsePointer:p}=function(){let[e,t]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{if(!window.matchMedia)return;let e=window.matchMedia("(pointer: coarse)");t(e.matches);let r=e=>{t(e.matches)};return"function"==typeof e.addEventListener?(e.addEventListener("change",r),()=>e.removeEventListener("change",r)):"function"==typeof e.addListener?(e.addListener(r),()=>e.removeListener(r)):void 0},[]),{isCoarsePointer:e}}(),[h,f]=(0,a.useState)(null),[b,g]=(0,a.useState)({}),[x,v]=(0,a.useState)([]),[w,y]=(0,a.useState)(!1),[k,j]=(0,a.useState)(null),[S,I]=(0,a.useState)(null),[C,T]=(0,a.useState)(!1);(0,a.useEffect)(()=>{var e,t;let r=null!=(t=null==(e=window.location)?void 0:e.search)?t:"",n=function(e){let t=new URLSearchParams(e).get("wall");return t?t.split(",").map(e=>e.trim()).filter(Boolean).slice(0,3):[]}(r);n.length&&I(n),"1"===new URLSearchParams(r).get("stage")&&T(!0)},[]);let[Y,R]=(0,a.useState)({status:"pending"}),A=function(e,t){let r="ready"===e.status&&"local"===e.issuedBy&&"restored-tab"!==e.fallbackReason,n="ready"===e.status&&e.fallbackReason?e.fallbackReason:"사유 미상";return{placeholder:t?null:"pending"===e.status?e.slow?"데몬이 느립니다 — 터미널을 만드는 중… (기다리는 중)":"터미널 이름을 준비하는 중…":"터미널 이름을 로컬에서 정했습니다 (".concat(n,")."),fallbackBanner:r?"터미널 이름을 로컬에서 정했습니다 (".concat(n,"). 데몬 발급을 확인하지 못했습니다."):null}}(Y,null!==h),z=(0,a.useCallback)(e=>{R(e),"pending"===e.status&&f(null)},[]),P=(0,a.useRef)(!1),U=(0,a.useRef)(!1),[L,O]=(0,a.useState)("terminal"),F={view:L,buttons:eU.map(e=>({view:e,selected:e===L}))},B=(0,a.useCallback)(e=>{O(t=>"observe"===e&&"observe"===t?"terminal":e)},[]),[Q,q]=(0,a.useState)(!!s),[H,_]=(0,a.useState)([]),[G,J]=(0,a.useState)(),[K,Z]=(0,a.useState)(new Map),[ee,er]=(0,a.useState)("loading"),[en,ea]=(0,a.useState)(null),[el,es]=(0,a.useState)(null),eo=(0,a.useRef)(!1),ei=null!=(r=null==en?void 0:en.id)?r:null,ec=en?(0,eR.x3)(en):null,[ed,eu]=(0,a.useState)("raw"),[em,ep]=(0,a.useState)(new Map),[eh,ef]=(0,a.useState)(new Map),[eb,eg]=(0,a.useState)({status:"unrequested"}),ex=(0,a.useRef)(0),ev=(0,a.useRef)(0);(0,a.useEffect)(()=>{if("terminal"!==L&&"pty-list"!==L)return;let e=!1;return er("loading"),(async()=>{try{let[t,r]=await Promise.all([i.listTerminals((0,eR.tC)(Q)),i.listProgressFrames().catch(e=>((0,m.cY)("webterm.pty-list.progress.error",{reason:String(e)}),null))]);if(e)return;_((0,eR.xu)(t.terminals)),J(t.scope),Z(r?(0,eR.gA)(r.logs):new Map),er("idle")}catch(t){if(e)return;_([]),J(void 0),Z(new Map),er("error"),(0,m.cY)("webterm.pty-list.error",{reason:String(t)})}})(),()=>{e=!0}},[i,Q,L]),(0,a.useEffect)(()=>{null===ec||H.some(e=>(0,eR.x3)(e)===ec)||(ex.current+=1,ev.current+=1,ea(null),eg({status:"unrequested"}))},[H,ec]);let ey=(0,a.useCallback)((e,t)=>{let{id:r}=e,n=(0,eR.x3)(e),a=++ex.current;if("raw"===t){ep(e=>new Map(e).set(n,{status:"loading"})),i.fetchTerminalScrollback(e.id,100,eF(e)).then(e=>{ex.current===a&&e.id===r&&ep(t=>new Map(t).set(n,{status:"ready",scrollback:e.scrollback}))}).catch(e=>{ex.current===a&&(ep(e=>new Map(e).set(n,{status:"error"})),(0,m.cY)("webterm.pty-list.scrollback.error",{id:r,reason:String(e)}))});return}ef(e=>new Map(e).set(n,{status:"loading"})),i.fetchTerminalFrame(e.id,eF(e)).then(e=>{ex.current===a&&e.id===r&&ef(t=>new Map(t).set(n,{status:"ready",frame:e.frame,frameAt:e.frameAt,frameSource:e.frameSource}))}).catch(e=>{ex.current===a&&(ef(e=>new Map(e).set(n,{status:"error"})),(0,m.cY)("webterm.pty-list.frame.error",{id:r,reason:String(e)}))})},[i]),ek=(0,a.useCallback)(function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],{id:r}=e;if(t&&(y(!1),j(e),null==o||o(e)),ec===(0,eR.x3)(e))return;let n=++ev.current;ea(e),eg({status:"loading"}),ey(e,ed),i.fetchTerminalLineage(r).then(e=>{ev.current===n&&e.key===r&&eg({status:"ready",lineage:e})}).catch(e=>{ev.current===n&&(eg({status:"error"}),(0,m.cY)("webterm.pty-list.lineage.error",{id:r,reason:String(e)}))})},[i,o,ed,ey,ec]);(0,a.useEffect)(()=>{if(eo.current||"loading"===ee||(eo.current=!0,!s))return;if("error"===ee){es({kind:"list-unavailable"}),O("pty-list"),(0,m.cY)("webterm.initial-pty-selection",{ptyId:s,kind:"list-unavailable",reason:"pty-list-error"});return}let e=(0,eR.hH)(s,H);es(e),"selected"!==e.kind&&O("pty-list"),(0,m.cY)("webterm.initial-pty-selection",{ptyId:s,kind:e.kind,reason:e.reason}),"selected"===e.kind&&(ek(e.terminal),j(e.terminal))},[ek,s,ee,H]);let ej=(0,a.useCallback)(e=>{e!==ed&&(eu(e),en&&ey(en,e))},[ed,ey,en]),eS=(0,a.useCallback)(async e=>{var t;let r=window.prompt("새 PTY 이름을 입력하세요.",null!=(t=e.nickname)?t:"");if(null!==r)try{let t=await i.renameTerminal(e.id,r),n=function(e){switch(e.status){case"success":return"PTY 이름을 '".concat(e.name,"'(으)로 바꿨습니다.");case"invalid-name":return"이 이름은 사용할 수 없습니다. 다른 이름을 입력해 주세요.";case"unknown-pty":return"이 PTY를 찾을 수 없습니다. 목록을 새로고침한 뒤 다시 시도해 주세요.";case"denied":return"이 PTY의 이름을 바꿀 권한이 없습니다.";case"failed":return"PTY 이름 변경에 실패했습니다. 잠시 후 다시 시도해 주세요.";case"owner-unreachable":return"PTY 소유 프로세스에 연결할 수 없어 이름을 바꾸지 못했습니다.";default:return e}}(t);"success"===t.status?l.oR.success(n):l.oR.error(n)}catch(e){l.oR.error("PTY 이름 변경 요청에 실패했습니다: ".concat(String(e)))}},[i]),eI=(0,a.useMemo)(()=>(0,eR.lH)(Q,H,G,ec,em,ed,eh),[eh,Q,H,G,ed,em,ec]),eA=(0,a.useMemo)(()=>(0,eR.Kh)(ei,eb),[eb,ei]),eQ=(0,a.useMemo)(()=>(function(e,t){let r=t.trim();return r?{layouts:e.layouts.filter(e=>{let{slots:t}=e;return t.some(e=>e.terminalId===r)}).map(e=>({runId:e.runId,slots:e.slots.map(e=>({...e}))})),unknown:e.unknown.map(e=>({...e}))}:{layouts:[],unknown:e.unknown.map(e=>({...e}))}})(null===k&&(null===s||w)?eD(eM(H)):eD(eM(H.filter(e=>{var t;return e.id!==(null!=(t=null==k?void 0:k.id)?t:s)&&x.includes(e.id)}))),null!=h?h:""),[H,x,k,w,s,h]);(0,a.useEffect)(()=>{if(P.current||s||"loading"===ee)return;if(0===H.length){U.current||(U.current=!0,(0,m.cY)("webterm.initial-selection",{skipped:!0,reason:"no-terminals",listState:ee}));return}P.current=!0;let e=(0,eR.Dw)({storedId:null,fallbackId:h,terminals:H});(0,m.cY)("webterm.initial-selection",{terminalId:e.terminalId,reason:e.reason,rowCount:H.length}),e.terminalId!==h&&f(e.terminalId)},[H,ee]);let[eq,eH]=(0,a.useState)(0),[e_,eV]=(0,a.useState)(!1),[eG,eJ]=(0,a.useState)(!0),[eK,eW]=(0,a.useState)(!1),[eZ,eX]=(0,a.useState)(0),[e0,e1]=(0,a.useState)(null),e2=(0,a.useCallback)(e=>{e1({intent:e,nonce:Date.now()})},[]),e3=(0,a.useRef)(null),[e5,e8]=(0,a.useState)("none"),e4=(0,a.useRef)(e5);e4.current=e5;let e9=(0,a.useRef)(h);e9.current=h;let e7=(0,a.useCallback)(e=>{let t=e.trim();if(!t)return;let r=e4.current;if("controls"===r){let e=e9.current;if(!e)return;if(!N(e,t+" ")){(0,m.cY)("webterm.voice.stdin-inject-failed",{len:t.length,terminalId:e,reason:"no-sender"}),l.oR.error("터미널 입력 전송 실패 — 터미널 연결을 확인하고 다시 말해 주세요.");return}(0,m.cY)("webterm.voice.stdin-inject",{len:t.length,terminalId:e})}else if("dock"===r){var n;null==(n=e3.current)||n.submitVoiceTranscript(t)}else(0,m.cY)("webterm.voice.transcript-no-source",{len:t.length})},[]),e6=i.voiceWsUrl(),te=(0,eY.sS)({wsUrl:e6,...c.token?{token:c.token}:{},onTranscript:e7}),tt=(0,a.useMemo)(()=>eN(),[]),tr=!c.baseUrl||!tt.isSecure,tn=(0,a.useCallback)(()=>{te.active&&"dock"===e5?(e8("none"),te.toggle()):(e8("dock"),te.active||te.toggle())},[te,e5]),ta=(0,a.useCallback)(()=>{te.active&&"controls"===e5?(e8("none"),te.toggle()):(e8("controls"),te.active||te.toggle())},[te,e5]),tl=(0,a.useMemo)(()=>({active:te.active&&"dock"===e5,phase:te.phase,dotColor:eE.x[te.phase],phaseLabel:eE.g[te.phase],disabled:tr,onToggle:tn}),[te.active,te.phase,e5,tr,tn]),ts=(0,a.useMemo)(()=>({active:te.active&&"controls"===e5,phase:te.phase,dotColor:eE.x[te.phase],phaseLabel:eE.g[te.phase],disabled:tr,onToggle:ta}),[te.active,te.phase,e5,tr,ta]),to=(0,a.useRef)(tn);to.current=tn,(0,a.useEffect)(()=>{let e=e=>{"m"===e.key.toLowerCase()&&e.shiftKey&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),(0,m.cY)("webterm.voice.shortcut.toggle"),eJ(!0),to.current())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[]),(0,a.useEffect)(()=>{let e=window.localStorage.getItem(eL);e&&e.length>0&&(!s||e!==s)&&(f(e),P.current=!0),"1"===window.localStorage.getItem(e$)&&eV(!0),"0"===window.localStorage.getItem(eO)&&eJ(!1)},[]);let ti=(0,a.useCallback)(async e=>{if(!d||!h||0===e.length)return;let t=e.map(e=>e.path).filter(e=>"string"==typeof e&&e.length>0);if(0===t.length)return void(0,m.cY)("webterm.attach.no-path",{count:e.length});let r=await eT({terminalId:h,paths:t});if(r.injected){let e=1===t.length?"터미널에 path 첨부됨":"".concat(t.length," paths 터미널에 첨부됨"),n=r.copied?" \xb7 clipboard 도 복사":"";l.oR.success(e+n)}else l.oR.error("터미널 inject 실패 — 직접 paste 해주세요")},[i,d,h]);return(0,n.jsxs)("div",{className:"flex h-full flex-col",children:[(0,n.jsx)(D.ZO,{activeId:h,onActiveChange:e=>{f(e),window.localStorage.setItem(eL,e),j(null),y(!0),O("terminal")},onInitialTerminalState:z,minimized:e_,onToggleMinimize:()=>{eV(e=>{let t=!e;return window.localStorage.setItem(e$,t?"1":"0"),t})},recording:eK,peerCount:eZ,chatDockOpen:eG,onToggleChatDock:()=>{if(e_){eV(!1),window.localStorage.setItem(e$,"0"),eJ(!0),window.localStorage.setItem(eO,"1");return}eJ(e=>{let t=!e;return window.localStorage.setItem(eO,t?"1":"0"),requestAnimationFrame(()=>{window.dispatchEvent(new Event("resize"))}),t})},tabIntent:e0,onTabsChange:v,suspendInitialSpawn:!!s&&!w}),A.fallbackBanner&&(0,n.jsx)("p",{className:"border-b border-amber-700/50 bg-amber-950/30 px-3 py-1 text-xs text-amber-200",role:"status",children:A.fallbackBanner}),(0,n.jsx)(eC,{}),(0,n.jsxs)("div",{className:e_?"hidden":"flex items-center gap-2 border-b border-zinc-800 px-3 py-1",children:[(0,n.jsx)("button",{type:"button","aria-pressed":F.buttons[0].selected,onClick:()=>{j(null),y(!0),B("terminal")},className:"rounded px-2 py-1 text-xs ".concat(F.buttons[0].selected?"bg-emerald-700 text-white":"bg-zinc-800 text-zinc-300 hover:bg-zinc-700"),children:"터미널"}),(0,n.jsxs)("button",{type:"button","aria-pressed":F.buttons[1].selected,onClick:()=>{j(null),y(!0),B("observe")},className:"rounded px-2 py-1 text-xs ".concat(F.buttons[1].selected?"bg-emerald-700 text-white":"bg-zinc-800 text-zinc-300 hover:bg-zinc-700"),title:"자기신고하는 elanous 대시보드 TUI 를 라이브로 관측(읽기 전용)",children:["\uD83D\uDDA5 TUI 관측 ",F.buttons[1].selected?"ON":"OFF"]}),(0,n.jsx)("button",{type:"button","aria-pressed":F.buttons[2].selected,onClick:()=>{j(null),y(!0),B("pty-list")},className:"rounded px-2 py-1 text-xs ".concat(F.buttons[2].selected?"bg-emerald-700 text-white":"bg-zinc-800 text-zinc-300 hover:bg-zinc-700"),children:"PTY 목록"}),(0,n.jsx)("button",{type:"button","aria-pressed":null!==S,onClick:()=>I(e=>null===e?[]:null),className:"rounded px-2 py-1 text-xs ".concat(null!==S?"bg-emerald-700 text-white":"bg-zinc-800 text-zinc-300 hover:bg-zinc-700"),"data-elanous-action":"pty-wall",children:"▦ 나란히"})]}),h?(0,n.jsxs)("div",{className:e_||"terminal"!==L||null!==k||s&&!w?"hidden":"contents",children:[(0,n.jsx)(X,{foreignActivityTick:eq,onPeerCountChange:eX}),(0,n.jsx)(V,{terminalId:h,onClear:()=>g(e=>{var t;return{...e,[h]:(null!=(t=e[h])?t:0)+1}}),onRecordingChange:eW,onAttached:ti,voice:ts}),p&&(0,n.jsx)(W,{terminalId:h}),(0,n.jsx)(et,{onAttached:ti})]}):null,(0,n.jsxs)("div",{className:"relative flex-1 min-h-0",children:[null!==S&&(0,n.jsx)("div",{className:C?"fixed inset-0 z-50":"absolute inset-0 z-20","data-pty-wall-stage":C?"1":void 0,children:(0,n.jsx)(M,{rows:H,client:i,initial:S,stage:C,onClose:()=>{I(null);let e=new URLSearchParams(window.location.search);e.delete("wall"),window.history.replaceState(null,"","".concat(window.location.pathname).concat(e.toString()?"?".concat(e):""))}})}),(0,n.jsx)(eB,{layout:eQ,sessionId:d,terminalIds:x.filter(e=>e!==(null==k?void 0:k.id)&&(w||e!==s)),activeId:h&&(h===(null==k?void 0:k.id)||!w&&h===s)?null:h,clearRequests:b,visible:null!==h&&"terminal"===L&&null===k&&(!s||w),onForeignInputActivity:()=>eH(e=>e+1)}),k&&(0,n.jsx)(E,{terminal:k,client:i,onClose:()=>{y(!0),j(null),B("terminal")}},(0,eR.x3)(k)),k||"terminal"!==L||h&&(!s||w)?k?null:"pty-list"===L?(0,n.jsxs)("div",{className:"h-full overflow-auto p-3","aria-label":"데몬 PTY 목록",children:[(0,n.jsxs)("label",{className:"mb-3 flex items-center gap-2 text-sm",children:[(0,n.jsx)("input",{type:"checkbox",checked:eI.includeAll,onChange:e=>q(e.target.checked)}),"다른 인스턴스도 보기"]}),eI.scopeSummary&&(0,n.jsx)("p",{className:"mb-3 text-xs text-muted-foreground","aria-label":"PTY 목록 범위 요약",children:eI.scopeSummary}),(null==el?void 0:el.kind)==="ambiguous"&&(0,n.jsxs)("p",{className:"mb-3 text-xs text-amber-500",role:"status","aria-label":"URL PTY 선택 상태",children:["주소의 PTY ",s,"가 ",el.candidates.length,"개 행과 맞아 선택하지 않았습니다."]}),(null==el?void 0:el.kind)==="list-unavailable"&&(0,n.jsxs)("p",{className:"mb-3 text-xs text-rose-500",role:"status","aria-label":"URL PTY 선택 상태",children:["PTY 목록을 읽지 못해 주소의 PTY ",s,"를 확인할 수 없습니다. 목록이 비었다는 뜻이 \xab아닙니다\xbb."]}),(null==el?void 0:el.kind)==="not-found"&&(0,n.jsxs)("p",{className:"mb-3 text-xs text-rose-500",role:"status","aria-label":"URL PTY 선택 상태",children:["주소의 PTY ",s,"를 찾지 못했습니다 (",el.reason,")."]}),(null==(t=eI.rows.find(e=>e.view))||null==(e=t.view)?void 0:e.visible)&&(0,n.jsx)("div",{className:"mb-3 flex gap-2","aria-label":"PTY 화면 보기",children:eI.rows.find(e=>e.view).view.modes.map(e=>(0,n.jsx)("button",{type:"button","aria-pressed":e.selected,onClick:()=>ej(e.mode),className:"rounded px-2 py-1 text-xs ".concat(e.selected?"bg-emerald-700 text-white":"bg-zinc-800 text-zinc-300 hover:bg-zinc-700"),children:e.label},e.mode))}),"loading"===ee?(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"PTY 목록을 불러오는 중…"}):"error"===ee?(0,n.jsx)("p",{className:"text-sm text-rose-500",children:"PTY 목록을 불러오지 못했습니다."}):0===H.length?(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"데몬이 아는 PTY가 없습니다."}):(0,n.jsx)("ul",{className:"space-y-2",children:eI.rows.map(e=>{let{terminal:t}=e,r=function(e){var t,r,n;let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Date.now(),l=e.name||e.id,s=function(e,t,r){let n=[e,t].filter(Boolean).join("/")||r;if(!n||!e||n.length<=32)return n&&ez(n);if(!t)return e.length<=32?e:"…".concat(e.slice(-31));let a=32-e.length-2;return a<=0?e.length<=32?e:"…".concat(e.slice(-31)):"".concat(e,"/…").concat(t.slice(-a))}(e.treeName,e.worktreeName,e.workdir),o=function(e){var t;if(!(null==e?void 0:e.name)&&!(null==e?void 0:e.dbPath))return null;let r=[e.name&&ez(e.name),e.dbPath&&((t=e.dbPath).length<=32?t:"".concat(t.slice(0,31),"…"))].filter(e=>!!e);return"세션: ".concat(r.join(" \xb7 "))}(e.sourceRoot),i=eP(e.startedAt,a),c=void 0===e.lastControlAt?null:eP(e.lastControlAt,a);return{title:l,details:[...l===e.id?[]:[e.id],...e.status?["상태: ".concat(e.status)]:[],...e.kind?["종류: ".concat(e.kind)]:[],...e.nickname?["별명: ".concat(ez(e.nickname))]:[],...s?["위치: ".concat(s)]:[],e.alive?"생존: 실행 중":0===e.exitCode?"종료: 정상 종료 (exit 0)":"number"==typeof e.exitCode?"종료: 비정상 종료 (exit ".concat(e.exitCode,")"):"종료: 종료 코드 미상",function(e){if("direct-human"===e.terminalOriginCategory)return"출처: 사람";if("elanous"===e.terminalOriginCategory)return"출처: elanous";if("external-tool"===e.terminalOriginCategory)return e.externalToolName?"출처: 외부 도구 \xb7 ".concat(ez(e.externalToolName)):"출처: 외부 도구";let t=e.terminalOriginReason?" \xb7 ".concat(ez(e.terminalOriginReason)):"";return"출처: 이 행에서는 알 수 없음".concat(t)}(e),...e.controller?["통제: ".concat(ez(e.controller))]:[],"write"===(t=e.accessMode)?"접근: 쓰기":"read"===t?"접근: 읽기":"auto"===t?"접근: 자동":"접근: 이 행에서는 알 수 없음","running"===(r=e.ownerRunUsage)?"소유 런: 실행 중":"terminated-live-owner"===r?"소유 런: 종료됐지만 터미널 유지":"no-run-id"===r?"소유 런: 소유 런 정보 없음":"소유 런: 이 행에서는 알 수 없음",...e.instance?["우주: ".concat(ez(e.instance))]:[],...e.runId?["런: ".concat((n=e.runId).length<=8?n:"".concat(n.slice(0,8),"…"))]:[],...o?[o]:[],...i?["시작: ".concat(i)]:[],"마지막 제어: ".concat(null!=c?c:"이 행에서는 알 수 없음")]}}(t),a=K.get(t.id);return(0,n.jsxs)("li",{className:"rounded border p-2 text-sm ".concat(e.selected?"border-emerald-500":"border-border"),children:[(0,n.jsxs)("button",{type:"button",className:"w-full text-left","aria-pressed":e.selected,onClick:()=>ek(t,!0),children:[(0,n.jsx)("p",{className:"font-medium",children:r.title}),r.details.map((e,r)=>(0,n.jsx)("p",{className:0===r?"font-mono text-xs text-muted-foreground":"text-xs text-muted-foreground",children:e},"".concat(t.id,"-").concat(e))),a&&(0,n.jsxs)("p",{className:"mt-1 text-xs text-muted-foreground","aria-label":"현재 활동: ".concat("complete"===a.status?"완료":"진행 중"),children:["complete"===a.status?"완료":"진행 중",": ",a.line,a.hasMissingFrames?" \xb7 일부 진행 프레임 누락":""]})]}),(0,n.jsx)("button",{type:"button",className:"mt-2 rounded bg-zinc-800 px-2 py-1 text-xs text-zinc-100 hover:bg-zinc-700",onClick:()=>{eS(t)},children:"이름 바꾸기"}),e.selected&&eA&&(0,n.jsxs)("section",{className:"mt-2 rounded bg-zinc-900 p-2 text-xs","aria-label":"선택 PTY 계보",children:[(0,n.jsx)("p",{className:"font-medium",children:"계보"}),"loading"===eA.kind&&(0,n.jsx)("p",{className:"text-muted-foreground",children:"계보를 불러오는 중…"}),"error"===eA.kind&&(0,n.jsx)("p",{className:"text-rose-400",children:"계보를 불러오지 못했습니다."}),"empty"===eA.kind&&(0,n.jsx)("p",{className:"text-muted-foreground",children:"연결된 다른 화면이 없습니다."}),eA.unreadablePayloadsSummary&&(0,n.jsx)("p",{className:"text-muted-foreground",children:eA.unreadablePayloadsSummary}),eA.groups.map(e=>(0,n.jsxs)("div",{className:"mt-2",children:[(0,n.jsxs)("p",{className:"font-mono",children:["묶음: ",e.joinedBy," \xb7 ",e.key]}),(0,n.jsx)("ul",{className:"mt-1 space-y-1",children:e.rows.map(e=>(0,n.jsxs)("li",{className:e.selected?"rounded bg-emerald-900 px-1 text-emerald-100":"",children:[e.selected?"현재 선택 \xb7 ":"",e.ptyId," \xb7 ",e.kind," \xb7 ",e.instance," \xb7 ",(0,eR.cl)(e.alive,e.closed)," \xb7 시작 ",(0,eR.OZ)(e.startedAt)]},e.ptyId))})]},"".concat(e.joinedBy,"-").concat(e.key)))]}),e.view&&(0,n.jsxs)("div",{className:"mt-2",children:[e.view.display.frameInfo&&(0,n.jsx)("p",{className:"mb-1 font-mono text-xs text-muted-foreground","aria-label":"렌더 화면 정보",children:e.view.display.frameInfo}),e.view.display.frameMetadata&&(0,n.jsxs)("p",{className:"mb-1 text-xs text-muted-foreground","aria-label":"렌더 프레임 메타데이터",children:["관측: ",e.view.display.frameMetadata.frameAt," \xb7 출처: ",e.view.display.frameMetadata.frameSource]}),(0,n.jsx)("pre",{className:"whitespace-pre-wrap rounded bg-zinc-950 p-2 text-xs ".concat("error"===e.view.display.kind?"text-rose-400":"text-zinc-100"),children:e.view.display.text})]})]},(0,eR.x3)(t))})})]}):"observe"===L?(0,n.jsx)($,{sessionId:d},d):null:(0,n.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 text-sm text-muted-foreground",role:"status","aria-live":"polite",children:[(null==el?void 0:el.kind)==="list-unavailable"&&(0,n.jsxs)("p",{className:"text-xs text-rose-500","aria-label":"URL PTY 선택 상태",children:["PTY 목록을 읽지 못해 주소의 PTY ",s,"를 확인할 수 없습니다. 목록이 비었다는 뜻이 \xab아닙니다\xbb."]}),(0,n.jsx)("span",{children:A.placeholder})]})]}),h&&!e_&&"terminal"===L&&!k&&(!s||w)&&(0,n.jsx)(ew,{ref:e3,terminalId:h,open:eG,onTabIntent:e2,voice:tl})]})}},85200:(e,t,r)=>{r.d(t,{Er:()=>a,cj:()=>c,yR:()=>i});let n=/^(oauth\.|harness\.decision|llm\.router)/;function a(e){let t=[],r=e=>{"string"==typeof e&&e.trim()&&!t.includes(e.trim())&&t.push(e.trim())};for(let t of e){var a;let e=null!=(a=t.data)?a:{};if(t.category.startsWith("oauth.")){for(let t of["from","to","name","account"])r(e[t]);if(Array.isArray(e.usage))for(let t of e.usage)r(null==t?void 0:t.name);continue}if(n.test(t.category))for(let t of(r(e.account),["what","why","reason"])){let n=e[t];if("string"==typeof n)for(let e of n.matchAll(/계정\s+([A-Za-z0-9][\w.-]*)/g))r(e[1])}}return t}function l(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function s(e){let t=new Map(e.map((e,t)=>[e,"account-".concat(t+1)])),r=e.length?RegExp("(^|[^\\w-])(".concat(e.map(l).sort((e,t)=>t.length-e.length).join("|"),")(?![\\w-])"),"g"):null,n=new Map;return(e,a)=>{let l=e.replace(/\b[a-z0-9-]+\.tail[0-9a-f]+\.ts\.net\b/gi,"tailnet-host").replace(/\bmsb\d+\b/gi,e=>(e=>{let t=e.toLowerCase();n.has(t)||n.set(t,"remote-".concat(n.size+1));let r=n.get(t);return e===e.toUpperCase()?r.toUpperCase():r})(e)).replace(/\bmbp\b/gi,e=>e===e.toUpperCase()?"LOCAL":"local").replace(/\/Users\/[^/\s"']+/g,"~").replace(/(크레딧|credits?|💳)(\s*[:=]?\s*)[\d][\d,.]*/gi,"$1$2•••").replace(/[\d][\d,.]*(\s*)(크레딧|credits?)/gi,"•••$1$2").replace(/\$\s?[\d][\d,.]*/g,"$•••").replace(/(잔량?|remaining|left)(\s*[:=]?\s*)(?:[A-Za-z0-9][\w.-]*\s+)?\d+(?:\.\d+)?\s?%/gi,"$1$2•••");return a&&r&&(l=l.replace(r,(e,r,n)=>{var a;return"".concat(r).concat(null!=(a=t.get(n))?a:"account")})),l}}function o(e,t){if("string"==typeof e)return t(e);if(Array.isArray(e))return e.map(e=>o(e,t));if(e&&"object"==typeof e){let r={};for(let[n,a]of Object.entries(e))"apiEquivalentUsd"===n||"usd"===n||/credit(s|Balance)?$/i.test(n)||(r[n]=o(a,t));return r}return e}function i(e){let t=s(a(e));return e.map(e=>{let r=n.test(e.category);return{...e,event:t(e.event,!1),data:e.data?o(e.data,e=>t(e,r)):e.data}})}function c(e,t){let r=s(t);return o(e,e=>r(e,!0))}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8320],{48735:(e,t,r)=>{r.d(t,{k:()=>n});function n(e){return"chat"!==e}},68320:(e,t,r)=>{r.d(t,{$M:()=>p,hA:()=>h,tg:()=>v});var n=r(58443),i=r(77947),a=r(71151);let d="elanous.pwa.workspace",s=new Set(["chat","term","intake","tasks","workflows","control","settings"]);function l(e){return!!e&&"object"==typeof e&&"string"==typeof e.id&&0!==e.id.length&&"string"==typeof e.kind&&!!s.has(e.kind)&&"number"==typeof e.createdAt&&("chat"!==e.kind||"string"==typeof e.sessionId&&0!==e.sessionId.length&&(void 0===e.title||"string"==typeof e.title))&&!0}var u=r(48735),c=r(861);let o={maxAlive:8},f={maxAlive:5},b=(0,i.createContext)(null);function p(e){let{children:t}=e,[r,s]=(0,i.useReducer)(a.an,a.Tx,e=>e),[p,h]=(0,i.useState)(null),v=(0,i.useRef)(!1);(0,i.useEffect)(()=>{if(v.current)return;v.current=!0;let e=function(){var e;let t,r=null;try{r=window.localStorage.getItem(d)}catch(e){return a.Tx}if(!r)return a.Tx;try{t=JSON.parse(r)}catch(e){return a.Tx}if(!t||"object"!=typeof t)return a.Tx;let n=t;return 1!==n.version?a.Tx:(e=n.state)&&"object"==typeof e&&Array.isArray(e.tabs)&&e.tabs.every(l)&&Array.isArray(e.order)&&e.order.every(e=>"string"==typeof e)&&Array.isArray(e.frozenIds)&&e.frozenIds.every(e=>"string"==typeof e)&&(null===e.activeId||"string"==typeof e.activeId)&&1?function(e){let t=new Set(e.tabs.map(e=>e.id)),r=e.order.filter(e=>t.has(e));for(let t of e.tabs)r.includes(t.id)||r.push(t.id);let n=e.frozenIds.filter(e=>t.has(e)),i=e.activeId;if(null!==i&&!t.has(i)){var a;i=null!=(a=r[0])?a:null}return null===i&&r.length>0&&(i=r[0]),{tabs:e.tabs,order:r,frozenIds:n,activeId:i}}(n.state):a.Tx}();(e.tabs.length>0||null!==e.activeId)&&s({type:"replace",state:e})},[]),(0,i.useEffect)(()=>{if(v.current)try{window.localStorage.setItem(d,JSON.stringify({version:1,state:r}))}catch(e){}},[r]);let I=(0,i.useRef)(new Map);(0,i.useEffect)(()=>{r.activeId&&I.current.set(r.activeId,Date.now())},[r.activeId]);let[y,k]=(0,i.useState)(o);(0,i.useEffect)(()=>{let e=window.matchMedia("(min-width: 768px)"),t=()=>k(e.matches?o:f);return t(),e.addEventListener("change",t),()=>e.removeEventListener("change",t)},[]),(0,i.useEffect)(()=>{if(!v.current)return;let e=function(e,t,r){let n=new Set(e.frozenIds),i=e.tabs.map(e=>e.id).filter(e=>!n.has(e));if(i.length<=t.maxAlive)return{freezeCandidates:[]};let a=new Map(e.tabs.map(e=>[e.id,e])),d=i.map(e=>{var t,n;let i=a.get(e),d=null!=(n=null!=(t=r.get(e))?t:null==i?void 0:i.createdAt)?n:0;return{id:e,ts:d}});d.sort((e,t)=>e.ts-t.ts);let s=i.length-t.maxAlive,l=[];for(let{id:t}of d){if(l.length>=s)break;t!==e.activeId&&l.push(t)}return{freezeCandidates:l}}(r,y,I.current);if(0!==e.freezeCandidates.length)for(let t of e.freezeCandidates)s({type:"freezeTab",id:t})},[r,y]);let g=(0,i.useCallback)(e=>{let t,r="undefined"!=typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():"t-".concat(Date.now().toString(36),"-").concat(Math.random().toString(36).slice(2,10));if("chat"===e.kind){var n;let i=null!=(n=e.sessionId)?n:(0,c.f6)();t=(0,a.MJ)({id:r,sessionId:i,...void 0!==e.title?{title:e.title}:{}})}else t=(0,a.ax)({id:r,kind:e.kind});return s({type:"addTab",tab:t}),r},[]),m=(0,i.useCallback)(e=>{s({type:"closeTab",id:e}),I.current.delete(e)},[]),x=(0,i.useCallback)(e=>{s({type:"activateTab",id:e})},[]),w=(0,i.useCallback)((e,t)=>{s({type:"reorderTab",id:e,toIndex:t})},[]),T=(0,i.useCallback)((e,t)=>{s({type:"updateTab",id:e,patch:t})},[]),z=(0,i.useCallback)(e=>{if("chat"===e)return null;if((0,u.k)(e)){let t=r.tabs.find(t=>t.kind===e);if(t)return s({type:"activateTab",id:t.id}),t.id}return g({kind:e})},[r.tabs,g]),A=(0,i.useCallback)(e=>{h(e)},[]),C=(0,i.useCallback)(()=>{h(null)},[]),M=(0,i.useMemo)(()=>({state:r,addTab:g,closeTab:m,activateTab:x,reorderTab:w,updateChatTab:T,activateOrAdd:z,pickerMode:p,openPicker:A,closePicker:C}),[r,g,m,x,w,T,z,p,A,C]);return(0,n.jsx)(b.Provider,{value:M,children:t})}function h(){let e=(0,i.useContext)(b);if(!e)throw Error("useWorkspace must be used inside <WorkspaceProvider>");return e}function v(){return(0,i.useContext)(b)}},71151:(e,t,r)=>{r.d(t,{MJ:()=>d,Tx:()=>i,an:()=>a,ax:()=>s,ub:()=>l});var n=r(48735);let i={tabs:[],activeId:null,order:[],frozenIds:[]};function a(e,t){switch(t.type){case"addTab":{var r;let i=t.tab,a=null==(r=t.activate)||r;if((0,n.k)(i.kind)){let t=e.tabs.find(e=>e.kind===i.kind);if(t)return a?{...e,activeId:t.id}:e}if(e.tabs.some(e=>e.id===i.id))return a?{...e,activeId:i.id}:e;let d=[...e.tabs,i],s=[...e.order,i.id];return{...e,tabs:d,order:s,activeId:a?i.id:e.activeId}}case"closeTab":{if(0>e.tabs.findIndex(e=>e.id===t.id))return e;let r=e.tabs.filter(e=>e.id!==t.id),n=e.order.filter(e=>e!==t.id),i=e.frozenIds.filter(e=>e!==t.id),a=e.activeId;if(e.activeId===t.id)if(0===n.length)a=null;else{let r=Math.min(Math.max(e.order.indexOf(t.id)-1,0),n.length-1);a=n[r]}return{...e,tabs:r,order:n,frozenIds:i,activeId:a}}case"activateTab":{if(!e.tabs.some(e=>e.id===t.id)||e.activeId===t.id)return e;let r=e.frozenIds.filter(e=>e!==t.id);return{...e,activeId:t.id,frozenIds:r}}case"reorderTab":{if(!e.tabs.some(e=>e.id===t.id))return e;let r=e.order.indexOf(t.id);if(r<0)return e;let n=Math.max(0,Math.min(t.toIndex,e.order.length-1));if(n===r)return e;let i=[...e.order];return i.splice(r,1),i.splice(n,0,t.id),{...e,order:i}}case"updateTab":{let r=e.tabs.findIndex(e=>e.id===t.id);if(r<0)return e;let n=e.tabs[r],i={};if("chat"===n.kind&&("sessionId"in t.patch&&"string"==typeof t.patch.sessionId&&(i.sessionId=t.patch.sessionId),"title"in t.patch&&(i.title=t.patch.title)),0===Object.keys(i).length)return e;let a={...n,...i},d=[...e.tabs];return d[r]=a,{...e,tabs:d}}case"freezeTab":if(!e.tabs.some(e=>e.id===t.id)||e.activeId===t.id||e.frozenIds.includes(t.id))return e;return{...e,frozenIds:[...e.frozenIds,t.id]};case"unfreezeTab":if(!e.frozenIds.includes(t.id))return e;return{...e,frozenIds:e.frozenIds.filter(e=>e!==t.id)};case"replace":return t.state}}function d(e){var t;return{id:e.id,kind:"chat",sessionId:e.sessionId,...void 0!==e.title?{title:e.title}:{},createdAt:null!=(t=e.createdAt)?t:Date.now()}}function s(e){var t;return{id:e.id,kind:e.kind,createdAt:null!=(t=e.createdAt)?t:Date.now()}}function l(e){let t=new Map(e.tabs.map(e=>[e.id,e])),r=[];for(let n of e.order){let e=t.get(n);e&&r.push(e)}return r}}}]);
|
package/apps/pwa/out/_next/static/chunks/{6804.8ed6ab492bc5fc0a.js → 8617.465ca22a319c95b3.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8617],{38617:(e,t,i)=>{i.r(t),i.d(t,{WebglAddon:()=>t6});var s,r,n=i(73656),o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,h=new class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?u.isErrorNoTelemetry(e)?new u(e.message+`
|
|
2
2
|
|
|
3
3
|
`+e.stack):Error(e.message+`
|
|
4
4
|
|
package/apps/pwa/out/_next/static/chunks/{320-d7013ec072863e5e.js → 8918-482b30ce2a8ebf4c.js}
RENAMED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[320],{7240:(e,t,r)=>{"use strict";r.d(t,{c:()=>l});var i=class{constructor(e,t,r,i={}){this._terminal=e,this._regex=t,this._handler=r,this._options=i}provideLinks(e,t){let r=s.computeLink(e,this._regex,this._terminal,this._handler);t(this._addCallbacks(r))}_addCallbacks(e){return e.map(e=>(e.leave=this._options.leave,e.hover=(t,r)=>{if(this._options.hover){let{range:i}=e;this._options.hover(t,r,i)}},e))}},s=class e{static computeLink(t,r,i,s){let n=RegExp(r.source,(r.flags||"")+"g"),[o,l]=e._getWindowedLineStrings(t-1,i),a=o.join(""),h,u=[];for(;h=n.exec(a);){let t=h[0];if(!function(e){try{let t=new URL(e),r=t.password&&t.username?`${t.protocol}//${t.username}:${t.password}@${t.host}`:t.username?`${t.protocol}//${t.username}@${t.host}`:`${t.protocol}//${t.host}`;return e.toLocaleLowerCase().startsWith(r.toLocaleLowerCase())}catch{return!1}}(t))continue;let[r,n]=e._mapStrIdx(i,l,0,h.index),[o,a]=e._mapStrIdx(i,r,n,t.length);if(-1===r||-1===n||-1===o||-1===a)continue;let c={start:{x:n+1,y:r+1},end:{x:a,y:o+1}};u.push({range:c,text:t,activate:s})}return u}static _getWindowedLineStrings(e,t){let r,i=e,s=e,n=0,o="",l=[];if(r=t.buffer.active.getLine(e)){let e=r.translateToString(!0);if(r.isWrapped&&" "!==e[0]){for(n=0;(r=t.buffer.active.getLine(--i))&&n<2048&&(n+=(o=r.translateToString(!0)).length,l.push(o),!(!r.isWrapped||-1!==o.indexOf(" "))););l.reverse()}for(l.push(e),n=0;(r=t.buffer.active.getLine(++s))&&r.isWrapped&&n<2048&&(n+=(o=r.translateToString(!0)).length,l.push(o),-1===o.indexOf(" ")););}return[l,i]}static _mapStrIdx(e,t,r,i){let s=e.buffer.active,n=s.getNullCell(),o=r;for(;i;){let e=s.getLine(t);if(!e)return[-1,-1];for(let r=o;r<e.length;++r){e.getCell(r,n);let o=n.getChars();if(n.getWidth()&&(i-=o.length||1,r===e.length-1&&""===o)){let e=s.getLine(t+1);e&&e.isWrapped&&(e.getCell(0,n),2===n.getWidth()&&(i+=1))}if(i<0)return[t,r]}t++,o=0}return[t,o]}},n=/(https?|HTTPS?):[/]{2}[^\s"'!*(){}|\\\^<>`]*[^\s"':,.!?{}|\\\^~\[\]`()<>]/;function o(e,t){let r=window.open();if(r){try{r.opener=null}catch{}r.location.href=t}else console.warn("Opening link blocked as opener could not be cleared")}var l=class{constructor(e=o,t={}){this._handler=e,this._options=t}activate(e){this._terminal=e;let t=this._options,r=t.urlRegex||n;this._linkProvider=this._terminal.registerLinkProvider(new i(this._terminal,r,this._handler,t))}dispose(){this._linkProvider?.dispose()}}},9728:(e,t,r)=>{"use strict";r.d(t,{V:()=>b});var i,s,n,o,l,a=0,h=0,u=0,c=0;function d(e){let t=e.toString(16);return t.length<2?"0"+t:t}function f(e,t){return e<t?(t+.05)/(e+.05):(e+.05)/(t+.05)}(e=>{e.toCss=function(e,t,r,i){return void 0!==i?`#${d(e)}${d(t)}${d(r)}${d(i)}`:`#${d(e)}${d(t)}${d(r)}`},e.toRgba=function(e,t,r,i=255){return(e<<24|t<<16|r<<8|i)>>>0},e.toColor=function(t,r,i,s){return{css:e.toCss(t,r,i,s),rgba:e.toRgba(t,r,i,s)}}})(i||={}),(e=>{function t(e,t){return c=Math.round(255*t),[a,h,u]=l.toChannels(e.rgba),{css:i.toCss(a,h,u,c),rgba:i.toRgba(a,h,u,c)}}e.blend=function(e,t){if(1==(c=(255&t.rgba)/255))return{css:t.css,rgba:t.rgba};let r=t.rgba>>24&255,s=t.rgba>>16&255,n=t.rgba>>8&255,o=e.rgba>>24&255,l=e.rgba>>16&255,d=e.rgba>>8&255;return a=o+Math.round((r-o)*c),h=l+Math.round((s-l)*c),u=d+Math.round((n-d)*c),{css:i.toCss(a,h,u),rgba:i.toRgba(a,h,u)}},e.isOpaque=function(e){return(255&e.rgba)==255},e.ensureContrastRatio=function(e,t,r){let s=l.ensureContrastRatio(e.rgba,t.rgba,r);if(s)return i.toColor(s>>24&255,s>>16&255,s>>8&255)},e.opaque=function(e){let t=(255|e.rgba)>>>0;return[a,h,u]=l.toChannels(t),{css:i.toCss(a,h,u),rgba:t}},e.opacity=t,e.multiplyOpacity=function(e,r){return c=255&e.rgba,t(e,c*r/255)},e.toColorRGB=function(e){return[e.rgba>>24&255,e.rgba>>16&255,e.rgba>>8&255]}})(s||={}),(e=>{let t,r;try{let e=document.createElement("canvas");e.width=1,e.height=1;let i=e.getContext("2d",{willReadFrequently:!0});i&&((t=i).globalCompositeOperation="copy",r=t.createLinearGradient(0,0,1,1))}catch{}e.toColor=function(e){if(e.match(/#[\da-f]{3,8}/i))switch(e.length){case 4:return a=parseInt(e.slice(1,2).repeat(2),16),h=parseInt(e.slice(2,3).repeat(2),16),u=parseInt(e.slice(3,4).repeat(2),16),i.toColor(a,h,u);case 5:return a=parseInt(e.slice(1,2).repeat(2),16),h=parseInt(e.slice(2,3).repeat(2),16),u=parseInt(e.slice(3,4).repeat(2),16),c=parseInt(e.slice(4,5).repeat(2),16),i.toColor(a,h,u,c);case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}let s=e.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(s)return a=parseInt(s[1]),h=parseInt(s[2]),u=parseInt(s[3]),c=Math.round((void 0===s[5]?1:parseFloat(s[5]))*255),i.toColor(a,h,u,c);if(!t||!r||(t.fillStyle=r,t.fillStyle=e,"string"!=typeof t.fillStyle)||(t.fillRect(0,0,1,1),[a,h,u,c]=t.getImageData(0,0,1,1).data,255!==c))throw Error("css.toColor: Unsupported css format");return{rgba:i.toRgba(a,h,u,c),css:e}}})(n||={}),(e=>{function t(e,t,r){let i=e/255,s=t/255,n=r/255;return .2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(s<=.03928?s/12.92:Math.pow((s+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t})(o||={}),(e=>{function t(e,t,r){let i=e>>24&255,s=e>>16&255,n=e>>8&255,l=t>>24&255,a=t>>16&255,h=t>>8&255,u=f(o.relativeLuminance2(l,a,h),o.relativeLuminance2(i,s,n));for(;u<r&&(l>0||a>0||h>0);)l-=Math.max(0,Math.ceil(.1*l)),a-=Math.max(0,Math.ceil(.1*a)),h-=Math.max(0,Math.ceil(.1*h)),u=f(o.relativeLuminance2(l,a,h),o.relativeLuminance2(i,s,n));return(l<<24|a<<16|h<<8|255)>>>0}function r(e,t,r){let i=e>>24&255,s=e>>16&255,n=e>>8&255,l=t>>24&255,a=t>>16&255,h=t>>8&255,u=f(o.relativeLuminance2(l,a,h),o.relativeLuminance2(i,s,n));for(;u<r&&(l<255||a<255||h<255);)l=Math.min(255,l+Math.ceil((255-l)*.1)),a=Math.min(255,a+Math.ceil((255-a)*.1)),h=Math.min(255,h+Math.ceil((255-h)*.1)),u=f(o.relativeLuminance2(l,a,h),o.relativeLuminance2(i,s,n));return(l<<24|a<<16|h<<8|255)>>>0}e.blend=function(e,t){if(1==(c=(255&t)/255))return t;let r=e>>24&255,s=e>>16&255,n=e>>8&255;return a=r+Math.round(((t>>24&255)-r)*c),h=s+Math.round(((t>>16&255)-s)*c),u=n+Math.round(((t>>8&255)-n)*c),i.toRgba(a,h,u)},e.ensureContrastRatio=function(e,i,s){let n=o.relativeLuminance(e>>8),l=o.relativeLuminance(i>>8);if(f(n,l)<s){if(l<n){let l=t(e,i,s),a=f(n,o.relativeLuminance(l>>8));if(a<s){let t=r(e,i,s);return a>f(n,o.relativeLuminance(t>>8))?l:t}return l}let a=r(e,i,s),h=f(n,o.relativeLuminance(a>>8));if(h<s){let r=t(e,i,s);return h>f(n,o.relativeLuminance(r>>8))?a:r}return a}},e.reduceLuminance=t,e.increaseLuminance=r,e.toChannels=function(e){return[e>>24&255,e>>16&255,e>>8&255,255&e]}})(l||={});var _=Object.freeze((()=>{let e=[n.toColor("#2e3436"),n.toColor("#cc0000"),n.toColor("#4e9a06"),n.toColor("#c4a000"),n.toColor("#3465a4"),n.toColor("#75507b"),n.toColor("#06989a"),n.toColor("#d3d7cf"),n.toColor("#555753"),n.toColor("#ef2929"),n.toColor("#8ae234"),n.toColor("#fce94f"),n.toColor("#729fcf"),n.toColor("#ad7fa8"),n.toColor("#34e2e2"),n.toColor("#eeeeec")],t=[0,95,135,175,215,255];for(let r=0;r<216;r++){let s=t[r/36%6|0],n=t[r/6%6|0],o=t[r%6];e.push({css:i.toCss(s,n,o),rgba:i.toRgba(s,n,o)})}for(let t=0;t<24;t++){let r=8+10*t;e.push({css:i.toCss(r,r,r),rgba:i.toRgba(r,r,r)})}return e})());function p(e,t,r){return Math.max(t,Math.min(e,r))}var g=class{constructor(e){this._buffer=e}serialize(e,t){let r=this._buffer.getNullCell(),i=this._buffer.getNullCell(),s=r,n=e.start.y,o=e.end.y,l=e.start.x,a=e.end.x;this._beforeSerialize(o-n,n,o);for(let t=n;t<=o;t++){let n=this._buffer.getLine(t);if(n){let o=t===e.start.y?l:0,h=t===e.end.y?a:n.length;for(let e=o;e<h;e++){let o=n.getCell(e,s===r?i:r);if(!o){console.warn(`Can't get cell at row=${t}, col=${e}`);continue}this._nextCell(o,s,t,e),s=o}}this._rowEnd(t,t===o)}return this._afterSerialize(),this._serializeString(t)}_nextCell(e,t,r,i){}_rowEnd(e,t){}_beforeSerialize(e,t,r){}_afterSerialize(){}_serializeString(e){return""}};function m(e,t){return e.getFgColorMode()===t.getFgColorMode()&&e.getFgColor()===t.getFgColor()}function v(e,t){return e.getBgColorMode()===t.getBgColorMode()&&e.getBgColor()===t.getBgColor()}function C(e,t){return e.isInverse()===t.isInverse()&&e.isBold()===t.isBold()&&e.isUnderline()===t.isUnderline()&&e.isOverline()===t.isOverline()&&e.isBlink()===t.isBlink()&&e.isInvisible()===t.isInvisible()&&e.isItalic()===t.isItalic()&&e.isDim()===t.isDim()&&e.isStrikethrough()===t.isStrikethrough()}var w=class extends g{constructor(e,t){super(e),this._terminal=t,this._rowIndex=0,this._allRows=[],this._allRowSeparators=[],this._currentRow="",this._nullCellCount=0,this._cursorStyle=this._buffer.getNullCell(),this._cursorStyleRow=0,this._cursorStyleCol=0,this._backgroundCell=this._buffer.getNullCell(),this._firstRow=0,this._lastCursorRow=0,this._lastCursorCol=0,this._lastContentCursorRow=0,this._lastContentCursorCol=0,this._thisRowLastChar=this._buffer.getNullCell(),this._thisRowLastSecondChar=this._buffer.getNullCell(),this._nextRowFirstChar=this._buffer.getNullCell()}_beforeSerialize(e,t,r){this._allRows=Array(e),this._lastContentCursorRow=t,this._lastCursorRow=t,this._firstRow=t}_rowEnd(e,t){this._nullCellCount>0&&!v(this._cursorStyle,this._backgroundCell)&&(this._currentRow+=`\x1b[${this._nullCellCount}X`);let r="";if(!t){e-this._firstRow>=this._terminal.rows&&this._buffer.getLine(this._cursorStyleRow)?.getCell(this._cursorStyleCol,this._backgroundCell);let t=this._buffer.getLine(e),i=this._buffer.getLine(e+1);if(i.isWrapped){r="";let s=t.getCell(t.length-1,this._thisRowLastChar),n=t.getCell(t.length-2,this._thisRowLastSecondChar),o=i.getCell(0,this._nextRowFirstChar),l=o.getWidth()>1,a=!1;(o.getChars()&&l?this._nullCellCount<=1:this._nullCellCount<=0)&&((s.getChars()||0===s.getWidth())&&v(s,o)&&(a=!0),l&&(n.getChars()||0===n.getWidth())&&v(s,o)&&v(n,o)&&(a=!0)),a||(r="-".repeat(this._nullCellCount+1)+"\x1b[1D\x1b[1X",this._nullCellCount>0&&(r+=`\x1b[A\x1b[${t.length-this._nullCellCount}C\x1b[${this._nullCellCount}X\x1b[${t.length-this._nullCellCount}D\x1b[B`),this._lastContentCursorRow=e+1,this._lastContentCursorCol=0,this._lastCursorRow=e+1,this._lastCursorCol=0)}else r=`\r
|
|
2
|
-
`,this._lastCursorRow=e+1,this._lastCursorCol=0}this._allRows[this._rowIndex]=this._currentRow,this._allRowSeparators[this._rowIndex++]=r,this._currentRow="",this._nullCellCount=0}_diffStyle(e,t){let r=[],i=!m(e,t),s=!v(e,t),n=!C(e,t);if(i||s||n)if(e.isAttributeDefault())t.isAttributeDefault()||r.push(0);else{if(i){let t=e.getFgColor();e.isFgRGB()?r.push(38,2,t>>>16&255,t>>>8&255,255&t):e.isFgPalette()?t>=16?r.push(38,5,t):r.push(8&t?90+(7&t):30+(7&t)):r.push(39)}if(s){let t=e.getBgColor();e.isBgRGB()?r.push(48,2,t>>>16&255,t>>>8&255,255&t):e.isBgPalette()?t>=16?r.push(48,5,t):r.push(8&t?100+(7&t):40+(7&t)):r.push(49)}n&&(e.isInverse()!==t.isInverse()&&r.push(e.isInverse()?7:27),e.isBold()!==t.isBold()&&r.push(e.isBold()?1:22),e.isUnderline()!==t.isUnderline()&&r.push(e.isUnderline()?4:24),e.isOverline()!==t.isOverline()&&r.push(e.isOverline()?53:55),e.isBlink()!==t.isBlink()&&r.push(e.isBlink()?5:25),e.isInvisible()!==t.isInvisible()&&r.push(e.isInvisible()?8:28),e.isItalic()!==t.isItalic()&&r.push(e.isItalic()?3:23),e.isDim()!==t.isDim()&&r.push(e.isDim()?2:22),e.isStrikethrough()!==t.isStrikethrough()&&r.push(e.isStrikethrough()?9:29))}return r}_nextCell(e,t,r,i){if(0===e.getWidth())return;let s=""===e.getChars(),n=this._diffStyle(e,this._cursorStyle);if(s?!v(this._cursorStyle,e):n.length>0){this._nullCellCount>0&&(v(this._cursorStyle,this._backgroundCell)||(this._currentRow+=`\x1b[${this._nullCellCount}X`),this._currentRow+=`\x1b[${this._nullCellCount}C`,this._nullCellCount=0),this._lastContentCursorRow=this._lastCursorRow=r,this._lastContentCursorCol=this._lastCursorCol=i,this._currentRow+=`\x1b[${n.join(";")}m`;let e=this._buffer.getLine(r);void 0!==e&&(e.getCell(i,this._cursorStyle),this._cursorStyleRow=r,this._cursorStyleCol=i)}s?this._nullCellCount+=e.getWidth():(this._nullCellCount>0&&(v(this._cursorStyle,this._backgroundCell)||(this._currentRow+=`\x1b[${this._nullCellCount}X`),this._currentRow+=`\x1b[${this._nullCellCount}C`,this._nullCellCount=0),this._currentRow+=e.getChars(),this._lastContentCursorRow=this._lastCursorRow=r,this._lastContentCursorCol=this._lastCursorCol=i+e.getWidth())}_serializeString(e){let t=this._allRows.length;this._buffer.length-this._firstRow<=this._terminal.rows&&(t=this._lastContentCursorRow+1-this._firstRow,this._lastCursorCol=this._lastContentCursorCol,this._lastCursorRow=this._lastContentCursorRow);let r="";for(let e=0;e<t;e++)r+=this._allRows[e],e+1<t&&(r+=this._allRowSeparators[e]);if(!e){var i,s;let e=this._buffer.baseY+this._buffer.cursorY,t=this._buffer.cursorX;(e!==this._lastCursorRow||t!==this._lastCursorCol)&&((i=e-this._lastCursorRow)>0?r+=`\x1b[${i}B`:i<0&&(r+=`\x1b[${-i}A`),(s=t-this._lastCursorCol)>0?r+=`\x1b[${s}C`:s<0&&(r+=`\x1b[${-s}D`))}let n=this._terminal._core._inputHandler._curAttrData,o=this._diffStyle(n,this._cursorStyle);return o.length>0&&(r+=`\x1b[${o.join(";")}m`),r}},b=class{activate(e){this._terminal=e}_serializeBufferByScrollback(e,t,r){let i=t.length,s=void 0===r?i:p(r+e.rows,0,i);return this._serializeBufferByRange(e,t,{start:i-s,end:i-1},!1)}_serializeBufferByRange(e,t,r,i){return new w(t,e).serialize({start:{x:0,y:"number"==typeof r.start?r.start:r.start.line},end:{x:e.cols,y:"number"==typeof r.end?r.end:r.end.line}},i)}_serializeBufferAsHTML(e,t){let r=e.buffer.active,i=new y(r,e,t),s=t.onlySelection??!1,n=t.range;if(n)return i.serialize({start:{x:n.startCol,y:(n.startLine,n.startLine)},end:{x:e.cols,y:(n.endLine,n.endLine)}});if(!s){let s=r.length,n=t.scrollback,o=void 0===n?s:p(n+e.rows,0,s);return i.serialize({start:{x:0,y:s-o},end:{x:e.cols,y:s-1}})}let o=this._terminal?.getSelectionPosition();return void 0!==o?i.serialize({start:{x:o.start.x,y:o.start.y},end:{x:o.end.x,y:o.end.y}}):""}_serializeModes(e){let t="",r=e.modes;if(r.applicationCursorKeysMode&&(t+="\x1b[?1h"),r.applicationKeypadMode&&(t+="\x1b[?66h"),r.bracketedPasteMode&&(t+="\x1b[?2004h"),r.insertMode&&(t+="\x1b[4h"),r.originMode&&(t+="\x1b[?6h"),r.reverseWraparoundMode&&(t+="\x1b[?45h"),r.sendFocusMode&&(t+="\x1b[?1004h"),!1===r.wraparoundMode&&(t+="\x1b[?7l"),"none"!==r.mouseTrackingMode)switch(r.mouseTrackingMode){case"x10":t+="\x1b[?9h";break;case"vt200":t+="\x1b[?1000h";break;case"drag":t+="\x1b[?1002h";break;case"any":t+="\x1b[?1003h"}return t}serialize(e){if(!this._terminal)throw Error("Cannot use addon until it has been loaded");let t=e?.range?this._serializeBufferByRange(this._terminal,this._terminal.buffer.normal,e.range,!0):this._serializeBufferByScrollback(this._terminal,this._terminal.buffer.normal,e?.scrollback);if(!e?.excludeAltBuffer&&"alternate"===this._terminal.buffer.active.type){let e=this._serializeBufferByScrollback(this._terminal,this._terminal.buffer.alternate,void 0);t+=`\x1b[?1049h\x1b[H${e}`}return e?.excludeModes||(t+=this._serializeModes(this._terminal)),t}serializeAsHTML(e){if(!this._terminal)throw Error("Cannot use addon until it has been loaded");return this._serializeBufferAsHTML(this._terminal,e||{})}dispose(){}},y=class extends g{constructor(e,t,r){super(e),this._terminal=t,this._options=r,this._currentRow="",this._htmlContent="",t._core._themeService?this._ansiColors=t._core._themeService.colors.ansi:this._ansiColors=_}_padStart(e,t,r){return t|=0,r=r??" ",e.length>t?e:((t-=e.length)>r.length&&(r+=r.repeat(t/r.length)),r.slice(0,t)+e)}_beforeSerialize(e,t,r){this._htmlContent+="<html><body>\x3c!--StartFragment--\x3e<pre>";let i="#000000",s="#ffffff";this._options.includeGlobalBackground&&(i=this._terminal.options.theme?.foreground??"#ffffff",s=this._terminal.options.theme?.background??"#000000");let n=[];n.push("color: "+i+";"),n.push("background-color: "+s+";"),n.push("font-family: "+this._terminal.options.fontFamily+";"),n.push("font-size: "+this._terminal.options.fontSize+"px;"),this._htmlContent+="<div style='"+n.join(" ")+"'>"}_afterSerialize(){this._htmlContent+="</div>",this._htmlContent+="</pre>\x3c!--EndFragment--\x3e</body></html>"}_rowEnd(e,t){this._htmlContent+="<div><span>"+this._currentRow+"</span></div>",this._currentRow=""}_getHexColor(e,t){let r=t?e.getFgColor():e.getBgColor();return(t?e.isFgRGB():e.isBgRGB())?"#"+[r>>16&255,r>>8&255,255&r].map(e=>this._padStart(e.toString(16),2,"0")).join(""):(t?e.isFgPalette():e.isBgPalette())?this._ansiColors[r].css:void 0}_diffStyle(e,t){let r=[],i=!m(e,t),s=!v(e,t),n=!C(e,t);if(i||s||n){let t=this._getHexColor(e,!0);t&&r.push("color: "+t+";");let i=this._getHexColor(e,!1);return i&&r.push("background-color: "+i+";"),e.isInverse()&&r.push("color: #000000; background-color: #BFBFBF;"),e.isBold()&&r.push("font-weight: bold;"),e.isUnderline()&&e.isOverline()?r.push("text-decoration: overline underline;"):e.isUnderline()?r.push("text-decoration: underline;"):e.isOverline()&&r.push("text-decoration: overline;"),e.isBlink()&&r.push("text-decoration: blink;"),e.isInvisible()&&r.push("visibility: hidden;"),e.isItalic()&&r.push("font-style: italic;"),e.isDim()&&r.push("opacity: 0.5;"),e.isStrikethrough()&&r.push("text-decoration: line-through;"),r}}_nextCell(e,t,r,i){if(0===e.getWidth())return;let s=""===e.getChars(),n=this._diffStyle(e,t);n&&(this._currentRow+=0===n.length?"</span><span>":"</span><span style='"+n.join(" ")+"'>"),s?this._currentRow+=" ":this._currentRow+=function(e){switch(e){case"&":return"&";case"<":return"<"}return e}(e.getChars())}_serializeString(){return this._htmlContent}}},23182:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(3720).A)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]])},24206:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(3720).A)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},25742:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(3720).A)("minimize-2",[["path",{d:"m14 10 7-7",key:"oa77jy"}],["path",{d:"M20 10h-6V4",key:"mjg0md"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M4 14h6v6",key:"rmj7iw"}]])},28776:(e,t,r)=>{"use strict";r.d(t,{I:()=>H});var i,s=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],n=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],o=class{constructor(){if(this.version="6",!i){(i=new Uint8Array(65536)).fill(1),i[0]=0,i.fill(0,1,32),i.fill(0,127,160),i.fill(2,4352,4448),i[9001]=2,i[9002]=2,i.fill(2,11904,42192),i[12351]=1,i.fill(2,44032,55204),i.fill(2,63744,64256),i.fill(2,65040,65050),i.fill(2,65072,65136),i.fill(2,65280,65377),i.fill(2,65504,65511);for(let e=0;e<s.length;++e)i.fill(0,s[e][0],s[e][1]+1)}}wcwidth(e){return e<32?0:e<127?1:e<65536?i[e]:!function(e,t){let r=0,i=t.length-1,s;if(e<t[0][0]||e>t[i][1])return!1;for(;i>=r;)if(e>t[s=r+i>>1][1])r=s+1;else{if(!(e<t[s][0]))return!0;i=s-1}return!1}(e,n)?e>=131072&&e<=196605||e>=196608&&e<=262141?2:1:0}charProperties(e,t){let r=this.wcwidth(e),i=0===r&&0!==t;if(i){let e=$.extractWidth(t);0===e?i=!1:e>r&&(r=e)}return $.createPropertyValue(0,r,i)}},l=new class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?c.isErrorNoTelemetry(e)?new c(e.message+`
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8918],{9845:(e,t,r)=>{"use strict";r.d(t,{Y:()=>i});var i=class{activate(e){this._terminal=e}dispose(){}fit(){let e=this.proposeDimensions();if(!e||!this._terminal||isNaN(e.cols)||isNaN(e.rows))return;let t=this._terminal._core;(this._terminal.rows!==e.rows||this._terminal.cols!==e.cols)&&(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let e=this._terminal._core._renderService.dimensions;if(0===e.css.cell.width||0===e.css.cell.height)return;let t=0===this._terminal.options.scrollback?0:this._terminal.options.overviewRuler?.width||14,r=window.getComputedStyle(this._terminal.element.parentElement),i=parseInt(r.getPropertyValue("height")),s=Math.max(0,parseInt(r.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),o={top:parseInt(n.getPropertyValue("padding-top")),bottom:parseInt(n.getPropertyValue("padding-bottom")),right:parseInt(n.getPropertyValue("padding-right")),left:parseInt(n.getPropertyValue("padding-left"))},l=o.top+o.bottom;return{cols:Math.max(2,Math.floor((s-(o.right+o.left)-t)/e.css.cell.width)),rows:Math.max(1,Math.floor((i-l)/e.css.cell.height))}}}},42297:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(51719).A)("maximize-2",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]])},48451:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(51719).A)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]])},49036:(e,t,r)=>{"use strict";var i=r(6620);r.o(i,"useParams")&&r.d(t,{useParams:function(){return i.useParams}}),r.o(i,"usePathname")&&r.d(t,{usePathname:function(){return i.usePathname}}),r.o(i,"useRouter")&&r.d(t,{useRouter:function(){return i.useRouter}}),r.o(i,"useSearchParams")&&r.d(t,{useSearchParams:function(){return i.useSearchParams}})},63893:(e,t,r)=>{"use strict";r.d(t,{V:()=>w});var i,s,n,o,l,a=0,h=0,u=0,c=0;function d(e){let t=e.toString(16);return t.length<2?"0"+t:t}function f(e,t){return e<t?(t+.05)/(e+.05):(e+.05)/(t+.05)}(e=>{e.toCss=function(e,t,r,i){return void 0!==i?`#${d(e)}${d(t)}${d(r)}${d(i)}`:`#${d(e)}${d(t)}${d(r)}`},e.toRgba=function(e,t,r,i=255){return(e<<24|t<<16|r<<8|i)>>>0},e.toColor=function(t,r,i,s){return{css:e.toCss(t,r,i,s),rgba:e.toRgba(t,r,i,s)}}})(i||={}),(e=>{function t(e,t){return c=Math.round(255*t),[a,h,u]=l.toChannels(e.rgba),{css:i.toCss(a,h,u,c),rgba:i.toRgba(a,h,u,c)}}e.blend=function(e,t){if(1==(c=(255&t.rgba)/255))return{css:t.css,rgba:t.rgba};let r=t.rgba>>24&255,s=t.rgba>>16&255,n=t.rgba>>8&255,o=e.rgba>>24&255,l=e.rgba>>16&255,d=e.rgba>>8&255;return a=o+Math.round((r-o)*c),h=l+Math.round((s-l)*c),u=d+Math.round((n-d)*c),{css:i.toCss(a,h,u),rgba:i.toRgba(a,h,u)}},e.isOpaque=function(e){return(255&e.rgba)==255},e.ensureContrastRatio=function(e,t,r){let s=l.ensureContrastRatio(e.rgba,t.rgba,r);if(s)return i.toColor(s>>24&255,s>>16&255,s>>8&255)},e.opaque=function(e){let t=(255|e.rgba)>>>0;return[a,h,u]=l.toChannels(t),{css:i.toCss(a,h,u),rgba:t}},e.opacity=t,e.multiplyOpacity=function(e,r){return c=255&e.rgba,t(e,c*r/255)},e.toColorRGB=function(e){return[e.rgba>>24&255,e.rgba>>16&255,e.rgba>>8&255]}})(s||={}),(e=>{let t,r;try{let e=document.createElement("canvas");e.width=1,e.height=1;let i=e.getContext("2d",{willReadFrequently:!0});i&&((t=i).globalCompositeOperation="copy",r=t.createLinearGradient(0,0,1,1))}catch{}e.toColor=function(e){if(e.match(/#[\da-f]{3,8}/i))switch(e.length){case 4:return a=parseInt(e.slice(1,2).repeat(2),16),h=parseInt(e.slice(2,3).repeat(2),16),u=parseInt(e.slice(3,4).repeat(2),16),i.toColor(a,h,u);case 5:return a=parseInt(e.slice(1,2).repeat(2),16),h=parseInt(e.slice(2,3).repeat(2),16),u=parseInt(e.slice(3,4).repeat(2),16),c=parseInt(e.slice(4,5).repeat(2),16),i.toColor(a,h,u,c);case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}let s=e.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(s)return a=parseInt(s[1]),h=parseInt(s[2]),u=parseInt(s[3]),c=Math.round((void 0===s[5]?1:parseFloat(s[5]))*255),i.toColor(a,h,u,c);if(!t||!r||(t.fillStyle=r,t.fillStyle=e,"string"!=typeof t.fillStyle)||(t.fillRect(0,0,1,1),[a,h,u,c]=t.getImageData(0,0,1,1).data,255!==c))throw Error("css.toColor: Unsupported css format");return{rgba:i.toRgba(a,h,u,c),css:e}}})(n||={}),(e=>{function t(e,t,r){let i=e/255,s=t/255,n=r/255;return .2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(s<=.03928?s/12.92:Math.pow((s+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t})(o||={}),(e=>{function t(e,t,r){let i=e>>24&255,s=e>>16&255,n=e>>8&255,l=t>>24&255,a=t>>16&255,h=t>>8&255,u=f(o.relativeLuminance2(l,a,h),o.relativeLuminance2(i,s,n));for(;u<r&&(l>0||a>0||h>0);)l-=Math.max(0,Math.ceil(.1*l)),a-=Math.max(0,Math.ceil(.1*a)),h-=Math.max(0,Math.ceil(.1*h)),u=f(o.relativeLuminance2(l,a,h),o.relativeLuminance2(i,s,n));return(l<<24|a<<16|h<<8|255)>>>0}function r(e,t,r){let i=e>>24&255,s=e>>16&255,n=e>>8&255,l=t>>24&255,a=t>>16&255,h=t>>8&255,u=f(o.relativeLuminance2(l,a,h),o.relativeLuminance2(i,s,n));for(;u<r&&(l<255||a<255||h<255);)l=Math.min(255,l+Math.ceil((255-l)*.1)),a=Math.min(255,a+Math.ceil((255-a)*.1)),h=Math.min(255,h+Math.ceil((255-h)*.1)),u=f(o.relativeLuminance2(l,a,h),o.relativeLuminance2(i,s,n));return(l<<24|a<<16|h<<8|255)>>>0}e.blend=function(e,t){if(1==(c=(255&t)/255))return t;let r=e>>24&255,s=e>>16&255,n=e>>8&255;return a=r+Math.round(((t>>24&255)-r)*c),h=s+Math.round(((t>>16&255)-s)*c),u=n+Math.round(((t>>8&255)-n)*c),i.toRgba(a,h,u)},e.ensureContrastRatio=function(e,i,s){let n=o.relativeLuminance(e>>8),l=o.relativeLuminance(i>>8);if(f(n,l)<s){if(l<n){let l=t(e,i,s),a=f(n,o.relativeLuminance(l>>8));if(a<s){let t=r(e,i,s);return a>f(n,o.relativeLuminance(t>>8))?l:t}return l}let a=r(e,i,s),h=f(n,o.relativeLuminance(a>>8));if(h<s){let r=t(e,i,s);return h>f(n,o.relativeLuminance(r>>8))?a:r}return a}},e.reduceLuminance=t,e.increaseLuminance=r,e.toChannels=function(e){return[e>>24&255,e>>16&255,e>>8&255,255&e]}})(l||={});var _=Object.freeze((()=>{let e=[n.toColor("#2e3436"),n.toColor("#cc0000"),n.toColor("#4e9a06"),n.toColor("#c4a000"),n.toColor("#3465a4"),n.toColor("#75507b"),n.toColor("#06989a"),n.toColor("#d3d7cf"),n.toColor("#555753"),n.toColor("#ef2929"),n.toColor("#8ae234"),n.toColor("#fce94f"),n.toColor("#729fcf"),n.toColor("#ad7fa8"),n.toColor("#34e2e2"),n.toColor("#eeeeec")],t=[0,95,135,175,215,255];for(let r=0;r<216;r++){let s=t[r/36%6|0],n=t[r/6%6|0],o=t[r%6];e.push({css:i.toCss(s,n,o),rgba:i.toRgba(s,n,o)})}for(let t=0;t<24;t++){let r=8+10*t;e.push({css:i.toCss(r,r,r),rgba:i.toRgba(r,r,r)})}return e})());function p(e,t,r){return Math.max(t,Math.min(e,r))}var g=class{constructor(e){this._buffer=e}serialize(e,t){let r=this._buffer.getNullCell(),i=this._buffer.getNullCell(),s=r,n=e.start.y,o=e.end.y,l=e.start.x,a=e.end.x;this._beforeSerialize(o-n,n,o);for(let t=n;t<=o;t++){let n=this._buffer.getLine(t);if(n){let o=t===e.start.y?l:0,h=t===e.end.y?a:n.length;for(let e=o;e<h;e++){let o=n.getCell(e,s===r?i:r);if(!o){console.warn(`Can't get cell at row=${t}, col=${e}`);continue}this._nextCell(o,s,t,e),s=o}}this._rowEnd(t,t===o)}return this._afterSerialize(),this._serializeString(t)}_nextCell(e,t,r,i){}_rowEnd(e,t){}_beforeSerialize(e,t,r){}_afterSerialize(){}_serializeString(e){return""}};function m(e,t){return e.getFgColorMode()===t.getFgColorMode()&&e.getFgColor()===t.getFgColor()}function v(e,t){return e.getBgColorMode()===t.getBgColorMode()&&e.getBgColor()===t.getBgColor()}function C(e,t){return e.isInverse()===t.isInverse()&&e.isBold()===t.isBold()&&e.isUnderline()===t.isUnderline()&&e.isOverline()===t.isOverline()&&e.isBlink()===t.isBlink()&&e.isInvisible()===t.isInvisible()&&e.isItalic()===t.isItalic()&&e.isDim()===t.isDim()&&e.isStrikethrough()===t.isStrikethrough()}var b=class extends g{constructor(e,t){super(e),this._terminal=t,this._rowIndex=0,this._allRows=[],this._allRowSeparators=[],this._currentRow="",this._nullCellCount=0,this._cursorStyle=this._buffer.getNullCell(),this._cursorStyleRow=0,this._cursorStyleCol=0,this._backgroundCell=this._buffer.getNullCell(),this._firstRow=0,this._lastCursorRow=0,this._lastCursorCol=0,this._lastContentCursorRow=0,this._lastContentCursorCol=0,this._thisRowLastChar=this._buffer.getNullCell(),this._thisRowLastSecondChar=this._buffer.getNullCell(),this._nextRowFirstChar=this._buffer.getNullCell()}_beforeSerialize(e,t,r){this._allRows=Array(e),this._lastContentCursorRow=t,this._lastCursorRow=t,this._firstRow=t}_rowEnd(e,t){this._nullCellCount>0&&!v(this._cursorStyle,this._backgroundCell)&&(this._currentRow+=`\x1b[${this._nullCellCount}X`);let r="";if(!t){e-this._firstRow>=this._terminal.rows&&this._buffer.getLine(this._cursorStyleRow)?.getCell(this._cursorStyleCol,this._backgroundCell);let t=this._buffer.getLine(e),i=this._buffer.getLine(e+1);if(i.isWrapped){r="";let s=t.getCell(t.length-1,this._thisRowLastChar),n=t.getCell(t.length-2,this._thisRowLastSecondChar),o=i.getCell(0,this._nextRowFirstChar),l=o.getWidth()>1,a=!1;(o.getChars()&&l?this._nullCellCount<=1:this._nullCellCount<=0)&&((s.getChars()||0===s.getWidth())&&v(s,o)&&(a=!0),l&&(n.getChars()||0===n.getWidth())&&v(s,o)&&v(n,o)&&(a=!0)),a||(r="-".repeat(this._nullCellCount+1)+"\x1b[1D\x1b[1X",this._nullCellCount>0&&(r+=`\x1b[A\x1b[${t.length-this._nullCellCount}C\x1b[${this._nullCellCount}X\x1b[${t.length-this._nullCellCount}D\x1b[B`),this._lastContentCursorRow=e+1,this._lastContentCursorCol=0,this._lastCursorRow=e+1,this._lastCursorCol=0)}else r=`\r
|
|
2
|
+
`,this._lastCursorRow=e+1,this._lastCursorCol=0}this._allRows[this._rowIndex]=this._currentRow,this._allRowSeparators[this._rowIndex++]=r,this._currentRow="",this._nullCellCount=0}_diffStyle(e,t){let r=[],i=!m(e,t),s=!v(e,t),n=!C(e,t);if(i||s||n)if(e.isAttributeDefault())t.isAttributeDefault()||r.push(0);else{if(i){let t=e.getFgColor();e.isFgRGB()?r.push(38,2,t>>>16&255,t>>>8&255,255&t):e.isFgPalette()?t>=16?r.push(38,5,t):r.push(8&t?90+(7&t):30+(7&t)):r.push(39)}if(s){let t=e.getBgColor();e.isBgRGB()?r.push(48,2,t>>>16&255,t>>>8&255,255&t):e.isBgPalette()?t>=16?r.push(48,5,t):r.push(8&t?100+(7&t):40+(7&t)):r.push(49)}n&&(e.isInverse()!==t.isInverse()&&r.push(e.isInverse()?7:27),e.isBold()!==t.isBold()&&r.push(e.isBold()?1:22),e.isUnderline()!==t.isUnderline()&&r.push(e.isUnderline()?4:24),e.isOverline()!==t.isOverline()&&r.push(e.isOverline()?53:55),e.isBlink()!==t.isBlink()&&r.push(e.isBlink()?5:25),e.isInvisible()!==t.isInvisible()&&r.push(e.isInvisible()?8:28),e.isItalic()!==t.isItalic()&&r.push(e.isItalic()?3:23),e.isDim()!==t.isDim()&&r.push(e.isDim()?2:22),e.isStrikethrough()!==t.isStrikethrough()&&r.push(e.isStrikethrough()?9:29))}return r}_nextCell(e,t,r,i){if(0===e.getWidth())return;let s=""===e.getChars(),n=this._diffStyle(e,this._cursorStyle);if(s?!v(this._cursorStyle,e):n.length>0){this._nullCellCount>0&&(v(this._cursorStyle,this._backgroundCell)||(this._currentRow+=`\x1b[${this._nullCellCount}X`),this._currentRow+=`\x1b[${this._nullCellCount}C`,this._nullCellCount=0),this._lastContentCursorRow=this._lastCursorRow=r,this._lastContentCursorCol=this._lastCursorCol=i,this._currentRow+=`\x1b[${n.join(";")}m`;let e=this._buffer.getLine(r);void 0!==e&&(e.getCell(i,this._cursorStyle),this._cursorStyleRow=r,this._cursorStyleCol=i)}s?this._nullCellCount+=e.getWidth():(this._nullCellCount>0&&(v(this._cursorStyle,this._backgroundCell)||(this._currentRow+=`\x1b[${this._nullCellCount}X`),this._currentRow+=`\x1b[${this._nullCellCount}C`,this._nullCellCount=0),this._currentRow+=e.getChars(),this._lastContentCursorRow=this._lastCursorRow=r,this._lastContentCursorCol=this._lastCursorCol=i+e.getWidth())}_serializeString(e){let t=this._allRows.length;this._buffer.length-this._firstRow<=this._terminal.rows&&(t=this._lastContentCursorRow+1-this._firstRow,this._lastCursorCol=this._lastContentCursorCol,this._lastCursorRow=this._lastContentCursorRow);let r="";for(let e=0;e<t;e++)r+=this._allRows[e],e+1<t&&(r+=this._allRowSeparators[e]);if(!e){var i,s;let e=this._buffer.baseY+this._buffer.cursorY,t=this._buffer.cursorX;(e!==this._lastCursorRow||t!==this._lastCursorCol)&&((i=e-this._lastCursorRow)>0?r+=`\x1b[${i}B`:i<0&&(r+=`\x1b[${-i}A`),(s=t-this._lastCursorCol)>0?r+=`\x1b[${s}C`:s<0&&(r+=`\x1b[${-s}D`))}let n=this._terminal._core._inputHandler._curAttrData,o=this._diffStyle(n,this._cursorStyle);return o.length>0&&(r+=`\x1b[${o.join(";")}m`),r}},w=class{activate(e){this._terminal=e}_serializeBufferByScrollback(e,t,r){let i=t.length,s=void 0===r?i:p(r+e.rows,0,i);return this._serializeBufferByRange(e,t,{start:i-s,end:i-1},!1)}_serializeBufferByRange(e,t,r,i){return new b(t,e).serialize({start:{x:0,y:"number"==typeof r.start?r.start:r.start.line},end:{x:e.cols,y:"number"==typeof r.end?r.end:r.end.line}},i)}_serializeBufferAsHTML(e,t){let r=e.buffer.active,i=new y(r,e,t),s=t.onlySelection??!1,n=t.range;if(n)return i.serialize({start:{x:n.startCol,y:(n.startLine,n.startLine)},end:{x:e.cols,y:(n.endLine,n.endLine)}});if(!s){let s=r.length,n=t.scrollback,o=void 0===n?s:p(n+e.rows,0,s);return i.serialize({start:{x:0,y:s-o},end:{x:e.cols,y:s-1}})}let o=this._terminal?.getSelectionPosition();return void 0!==o?i.serialize({start:{x:o.start.x,y:o.start.y},end:{x:o.end.x,y:o.end.y}}):""}_serializeModes(e){let t="",r=e.modes;if(r.applicationCursorKeysMode&&(t+="\x1b[?1h"),r.applicationKeypadMode&&(t+="\x1b[?66h"),r.bracketedPasteMode&&(t+="\x1b[?2004h"),r.insertMode&&(t+="\x1b[4h"),r.originMode&&(t+="\x1b[?6h"),r.reverseWraparoundMode&&(t+="\x1b[?45h"),r.sendFocusMode&&(t+="\x1b[?1004h"),!1===r.wraparoundMode&&(t+="\x1b[?7l"),"none"!==r.mouseTrackingMode)switch(r.mouseTrackingMode){case"x10":t+="\x1b[?9h";break;case"vt200":t+="\x1b[?1000h";break;case"drag":t+="\x1b[?1002h";break;case"any":t+="\x1b[?1003h"}return t}serialize(e){if(!this._terminal)throw Error("Cannot use addon until it has been loaded");let t=e?.range?this._serializeBufferByRange(this._terminal,this._terminal.buffer.normal,e.range,!0):this._serializeBufferByScrollback(this._terminal,this._terminal.buffer.normal,e?.scrollback);if(!e?.excludeAltBuffer&&"alternate"===this._terminal.buffer.active.type){let e=this._serializeBufferByScrollback(this._terminal,this._terminal.buffer.alternate,void 0);t+=`\x1b[?1049h\x1b[H${e}`}return e?.excludeModes||(t+=this._serializeModes(this._terminal)),t}serializeAsHTML(e){if(!this._terminal)throw Error("Cannot use addon until it has been loaded");return this._serializeBufferAsHTML(this._terminal,e||{})}dispose(){}},y=class extends g{constructor(e,t,r){super(e),this._terminal=t,this._options=r,this._currentRow="",this._htmlContent="",t._core._themeService?this._ansiColors=t._core._themeService.colors.ansi:this._ansiColors=_}_padStart(e,t,r){return t|=0,r=r??" ",e.length>t?e:((t-=e.length)>r.length&&(r+=r.repeat(t/r.length)),r.slice(0,t)+e)}_beforeSerialize(e,t,r){this._htmlContent+="<html><body>\x3c!--StartFragment--\x3e<pre>";let i="#000000",s="#ffffff";this._options.includeGlobalBackground&&(i=this._terminal.options.theme?.foreground??"#ffffff",s=this._terminal.options.theme?.background??"#000000");let n=[];n.push("color: "+i+";"),n.push("background-color: "+s+";"),n.push("font-family: "+this._terminal.options.fontFamily+";"),n.push("font-size: "+this._terminal.options.fontSize+"px;"),this._htmlContent+="<div style='"+n.join(" ")+"'>"}_afterSerialize(){this._htmlContent+="</div>",this._htmlContent+="</pre>\x3c!--EndFragment--\x3e</body></html>"}_rowEnd(e,t){this._htmlContent+="<div><span>"+this._currentRow+"</span></div>",this._currentRow=""}_getHexColor(e,t){let r=t?e.getFgColor():e.getBgColor();return(t?e.isFgRGB():e.isBgRGB())?"#"+[r>>16&255,r>>8&255,255&r].map(e=>this._padStart(e.toString(16),2,"0")).join(""):(t?e.isFgPalette():e.isBgPalette())?this._ansiColors[r].css:void 0}_diffStyle(e,t){let r=[],i=!m(e,t),s=!v(e,t),n=!C(e,t);if(i||s||n){let t=this._getHexColor(e,!0);t&&r.push("color: "+t+";");let i=this._getHexColor(e,!1);return i&&r.push("background-color: "+i+";"),e.isInverse()&&r.push("color: #000000; background-color: #BFBFBF;"),e.isBold()&&r.push("font-weight: bold;"),e.isUnderline()&&e.isOverline()?r.push("text-decoration: overline underline;"):e.isUnderline()?r.push("text-decoration: underline;"):e.isOverline()&&r.push("text-decoration: overline;"),e.isBlink()&&r.push("text-decoration: blink;"),e.isInvisible()&&r.push("visibility: hidden;"),e.isItalic()&&r.push("font-style: italic;"),e.isDim()&&r.push("opacity: 0.5;"),e.isStrikethrough()&&r.push("text-decoration: line-through;"),r}}_nextCell(e,t,r,i){if(0===e.getWidth())return;let s=""===e.getChars(),n=this._diffStyle(e,t);n&&(this._currentRow+=0===n.length?"</span><span>":"</span><span style='"+n.join(" ")+"'>"),s?this._currentRow+=" ":this._currentRow+=function(e){switch(e){case"&":return"&";case"<":return"<"}return e}(e.getChars())}_serializeString(){return this._htmlContent}}},69316:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(51719).A)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]])},71629:()=>{},73949:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(51719).A)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]])},74445:(e,t,r)=>{"use strict";r.d(t,{c:()=>l});var i=class{constructor(e,t,r,i={}){this._terminal=e,this._regex=t,this._handler=r,this._options=i}provideLinks(e,t){let r=s.computeLink(e,this._regex,this._terminal,this._handler);t(this._addCallbacks(r))}_addCallbacks(e){return e.map(e=>(e.leave=this._options.leave,e.hover=(t,r)=>{if(this._options.hover){let{range:i}=e;this._options.hover(t,r,i)}},e))}},s=class e{static computeLink(t,r,i,s){let n=RegExp(r.source,(r.flags||"")+"g"),[o,l]=e._getWindowedLineStrings(t-1,i),a=o.join(""),h,u=[];for(;h=n.exec(a);){let t=h[0];if(!function(e){try{let t=new URL(e),r=t.password&&t.username?`${t.protocol}//${t.username}:${t.password}@${t.host}`:t.username?`${t.protocol}//${t.username}@${t.host}`:`${t.protocol}//${t.host}`;return e.toLocaleLowerCase().startsWith(r.toLocaleLowerCase())}catch{return!1}}(t))continue;let[r,n]=e._mapStrIdx(i,l,0,h.index),[o,a]=e._mapStrIdx(i,r,n,t.length);if(-1===r||-1===n||-1===o||-1===a)continue;let c={start:{x:n+1,y:r+1},end:{x:a,y:o+1}};u.push({range:c,text:t,activate:s})}return u}static _getWindowedLineStrings(e,t){let r,i=e,s=e,n=0,o="",l=[];if(r=t.buffer.active.getLine(e)){let e=r.translateToString(!0);if(r.isWrapped&&" "!==e[0]){for(n=0;(r=t.buffer.active.getLine(--i))&&n<2048&&(n+=(o=r.translateToString(!0)).length,l.push(o),!(!r.isWrapped||-1!==o.indexOf(" "))););l.reverse()}for(l.push(e),n=0;(r=t.buffer.active.getLine(++s))&&r.isWrapped&&n<2048&&(n+=(o=r.translateToString(!0)).length,l.push(o),-1===o.indexOf(" ")););}return[l,i]}static _mapStrIdx(e,t,r,i){let s=e.buffer.active,n=s.getNullCell(),o=r;for(;i;){let e=s.getLine(t);if(!e)return[-1,-1];for(let r=o;r<e.length;++r){e.getCell(r,n);let o=n.getChars();if(n.getWidth()&&(i-=o.length||1,r===e.length-1&&""===o)){let e=s.getLine(t+1);e&&e.isWrapped&&(e.getCell(0,n),2===n.getWidth()&&(i+=1))}if(i<0)return[t,r]}t++,o=0}return[t,o]}},n=/(https?|HTTPS?):[/]{2}[^\s"'!*(){}|\\\^<>`]*[^\s"':,.!?{}|\\\^~\[\]`()<>]/;function o(e,t){let r=window.open();if(r){try{r.opener=null}catch{}r.location.href=t}else console.warn("Opening link blocked as opener could not be cleared")}var l=class{constructor(e=o,t={}){this._handler=e,this._options=t}activate(e){this._terminal=e;let t=this._options,r=t.urlRegex||n;this._linkProvider=this._terminal.registerLinkProvider(new i(this._terminal,r,this._handler,t))}dispose(){this._linkProvider?.dispose()}}},78479:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(51719).A)("minimize-2",[["path",{d:"m14 10 7-7",key:"oa77jy"}],["path",{d:"M20 10h-6V4",key:"mjg0md"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M4 14h6v6",key:"rmj7iw"}]])},82388:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(51719).A)("messages-square",[["path",{d:"M16 10a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 14.286V4a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z",key:"1n2ejm"}],["path",{d:"M20 9a2 2 0 0 1 2 2v10.286a.71.71 0 0 1-1.212.502l-2.202-2.202A2 2 0 0 0 17.172 19H10a2 2 0 0 1-2-2v-1",key:"1qfcsi"}]])},86373:(e,t,r)=>{"use strict";r.d(t,{I:()=>H});var i,s=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],n=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],o=class{constructor(){if(this.version="6",!i){(i=new Uint8Array(65536)).fill(1),i[0]=0,i.fill(0,1,32),i.fill(0,127,160),i.fill(2,4352,4448),i[9001]=2,i[9002]=2,i.fill(2,11904,42192),i[12351]=1,i.fill(2,44032,55204),i.fill(2,63744,64256),i.fill(2,65040,65050),i.fill(2,65072,65136),i.fill(2,65280,65377),i.fill(2,65504,65511);for(let e=0;e<s.length;++e)i.fill(0,s[e][0],s[e][1]+1)}}wcwidth(e){return e<32?0:e<127?1:e<65536?i[e]:!function(e,t){let r=0,i=t.length-1,s;if(e<t[0][0]||e>t[i][1])return!1;for(;i>=r;)if(e>t[s=r+i>>1][1])r=s+1;else{if(!(e<t[s][0]))return!0;i=s-1}return!1}(e,n)?e>=131072&&e<=196605||e>=196608&&e<=262141?2:1:0}charProperties(e,t){let r=this.wcwidth(e),i=0===r&&0!==t;if(i){let e=$.extractWidth(t);0===e?i=!1:e>r&&(r=e)}return $.createPropertyValue(0,r,i)}},l=new class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?c.isErrorNoTelemetry(e)?new c(e.message+`
|
|
3
3
|
|
|
4
4
|
`+e.stack):Error(e.message+`
|
|
5
5
|
|
|
6
|
-
`+e.stack):e},0)}}addListener(e){return this.listeners.push(e),()=>{this._removeListener(e)}}emit(e){this.listeners.forEach(t=>{t(e)})}_removeListener(e){this.listeners.splice(this.listeners.indexOf(e),1)}setUnexpectedErrorHandler(e){this.unexpectedErrorHandler=e}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}};function a(e){var t;(t=e)instanceof u||t instanceof Error&&t.name===h&&t.message===h||l.onUnexpectedError(e)}var h="Canceled",u=class extends Error{constructor(){super(h),this.name=this.message}},c=class e extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(t){if(t instanceof e)return t;let r=new e;return r.message=t.message,r.stack=t.stack,r}static isErrorNoTelemetry(e){return"CodeExpectedError"===e.name}};(e=>{e.isLessThan=function(e){return e<0},e.isLessThanOrEqual=function(e){return e<=0},e.isGreaterThan=function(e){return e>0},e.isNeitherLessOrGreaterThan=function(e){return 0===e},e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0})(S||={});var d=class e{constructor(e){this.iterate=e}forEach(e){this.iterate(t=>(e(t),!0))}toArray(){let e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(t){return new e(e=>this.iterate(r=>!t(r)||e(r)))}map(t){return new e(e=>this.iterate(r=>e(t(r))))}some(e){let t=!1;return this.iterate(r=>!(t=e(r))),t}findFirst(e){let t;return this.iterate(r=>!e(r)||(t=r,!1)),t}findLast(e){let t;return this.iterate(r=>(e(r)&&(t=r),!0)),t}findLastMaxBy(e){let t,r=!0;return this.iterate(i=>((r||S.isGreaterThan(e(i,t)))&&(r=!1,t=i),!0)),t}};d.empty=new d(e=>{}),Symbol.iterator,Symbol.toStringTag;(e=>{function t(e){return e&&"object"==typeof e&&"function"==typeof e[Symbol.iterator]}e.is=t;let r=Object.freeze([]);function*i(e){yield e}e.empty=function(){return r},e.single=i,e.wrap=function(e){return t(e)?e:i(e)},e.from=function(e){return e||r},e.reverse=function*(e){for(let t=e.length-1;t>=0;t--)yield e[t]},e.isEmpty=function(e){return!e||!0===e[Symbol.iterator]().next().done},e.first=function(e){return e[Symbol.iterator]().next().value},e.some=function(e,t){let r=0;for(let i of e)if(t(i,r++))return!0;return!1},e.find=function(e,t){for(let r of e)if(t(r))return r},e.filter=function*(e,t){for(let r of e)t(r)&&(yield r)},e.map=function*(e,t){let r=0;for(let i of e)yield t(i,r++)},e.flatMap=function*(e,t){let r=0;for(let i of e)yield*t(i,r++)},e.concat=function*(...e){for(let t of e)yield*t},e.reduce=function(e,t,r){let i=r;for(let r of e)i=t(i,r);return i},e.slice=function*(e,t,r=e.length){for(t<0&&(t+=e.length),r<0?r+=e.length:r>e.length&&(r=e.length);t<r;t++)yield e[t]},e.consume=function(t,r=1/0){let i=[];if(0===r)return[i,t];let s=t[Symbol.iterator]();for(let t=0;t<r;t++){let t=s.next();if(t.done)return[i,e.empty()];i.push(t.value)}return[i,{[Symbol.iterator]:()=>s}]},e.asyncToArray=async function(e){let t=[];for await(let r of e)t.push(r);return Promise.resolve(t)}})(L||={});function f(e){return e}function _(e){}function p(e,t){}function g(e){if(L.is(e)){let t=[];for(let r of e)if(r)try{r.dispose()}catch(e){t.push(e)}if(1===t.length)throw t[0];if(t.length>1)throw AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}if(e)return e.dispose(),e}function m(e){let t=f({dispose:function(e,t){let r=this,i=!1,s;return function(){if(i)return s;if(i=!0,t)try{s=e.apply(r,arguments)}finally{t()}else s=e.apply(r,arguments);return s}}(()=>{_(t),e()})});return t}var v=class e{constructor(){this._toDispose=new Set,this._isDisposed=!1,f(this)}dispose(){this._isDisposed||(_(this),this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{g(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t)return t;if(t===this)throw Error("Cannot register a disposable on itself!");return p(t,this),this._isDisposed?e.DISABLE_DISPOSED_WARNING||console.warn(Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}delete(e){if(e){if(e===this)throw Error("Cannot dispose a disposable on itself!");this._toDispose.delete(e),e.dispose()}}deleteAndLeak(e){e&&this._toDispose.has(e)&&(this._toDispose.delete(e),p(e,null))}};v.DISABLE_DISPOSED_WARNING=!1;var C=class{constructor(){this._store=new v,f(this),p(this._store,this)}dispose(){_(this),this._store.dispose()}_register(e){if(e===this)throw Error("Cannot register a disposable on itself!");return this._store.add(e)}};C.None=Object.freeze({dispose(){}});var w=class e{constructor(t){this.element=t,this.next=e.Undefined,this.prev=e.Undefined}};w.Undefined=new w(void 0);var b=globalThis.performance&&"function"==typeof globalThis.performance.now,y=class e{static create(t){return new e(t)}constructor(e){this._now=b&&!1===e?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return -1!==this._stopTime?this._stopTime-this._startTime:this._now()-this._startTime}};(e=>{function t(e){}function r(e){return(t,r=null,i)=>{let s=!1,n;return n=e(e=>{if(!s)return n?n.dispose():s=!0,t.call(r,e)},null,i),s&&n.dispose(),n}}function i(e,t,r){return n((r,i=null,s)=>e(e=>r.call(i,t(e)),null,s),r)}function s(e,t,r){return n((r,i=null,s)=>e(e=>t(e)&&r.call(i,e),null,s),r)}function n(e,r){let i,s={onWillAddFirstListener(){i=e(n.fire,n)},onDidRemoveLastListener(){i?.dispose()}};r||t(s);let n=new D(s);return r?.add(n),n.event}function o(e,r,i=100,s=!1,n=!1,l,a){let h,u,c,d=0,f,_={leakWarningThreshold:l,onWillAddFirstListener(){h=e(e=>{d++,u=r(u,e),s&&!c&&(p.fire(u),u=void 0),f=()=>{let e=u;u=void 0,c=void 0,(!s||d>1)&&p.fire(e),d=0},"number"==typeof i?(clearTimeout(c),c=setTimeout(f,i)):void 0===c&&(c=0,queueMicrotask(f))})},onWillRemoveListener(){n&&d>0&&f?.()},onDidRemoveLastListener(){f=void 0,h.dispose()}};a||t(_);let p=new D(_);return a?.add(p),p.event}e.None=()=>C.None,e.defer=function(e,t){return o(e,()=>{},0,void 0,!0,void 0,t)},e.once=r,e.map=i,e.forEach=function(e,t,r){return n((r,i=null,s)=>e(e=>{t(e),r.call(i,e)},null,s),r)},e.filter=s,e.signal=function(e){return e},e.any=function(...e){return(t,r=null,i)=>{var s,n;return s=function(...e){let t=m(()=>g(e));return function(e,t){!1}(e,t),t}(...e.map(e=>e(e=>t.call(r,e)))),(n=i)instanceof Array?n.push(s):n&&n.add(s),s}},e.reduce=function(e,t,r,s){let n=r;return i(e,e=>n=t(n,e),s)},e.debounce=o,e.accumulate=function(t,r=0,i){return e.debounce(t,(e,t)=>e?(e.push(t),e):[t],r,void 0,!0,void 0,i)},e.latch=function(e,t=(e,t)=>e===t,r){let i=!0,n;return s(e,e=>{let r=i||!t(e,n);return i=!1,n=e,r},r)},e.split=function(t,r,i){return[e.filter(t,r,i),e.filter(t,e=>!r(e),i)]},e.buffer=function(e,t=!1,r=[],i){let s=r.slice(),n=e(e=>{s?s.push(e):l.fire(e)});i&&i.add(n);let o=()=>{s?.forEach(e=>l.fire(e)),s=null},l=new D({onWillAddFirstListener(){n||(n=e(e=>l.fire(e)),i&&i.add(n))},onDidAddFirstListener(){s&&(t?setTimeout(o):o())},onDidRemoveLastListener(){n&&n.dispose(),n=null}});return i&&i.add(l),l.event},e.chain=function(e,t){return(r,i,s)=>{let n=t(new a);return e(function(e){let t=n.evaluate(e);t!==l&&r.call(i,t)},void 0,s)}};let l=Symbol("HaltChainable");class a{constructor(){this.steps=[]}map(e){return this.steps.push(e),this}forEach(e){return this.steps.push(t=>(e(t),t)),this}filter(e){return this.steps.push(t=>e(t)?t:l),this}reduce(e,t){let r=t;return this.steps.push(t=>r=e(r,t)),this}latch(e=(e,t)=>e===t){let t=!0,r;return this.steps.push(i=>{let s=t||!e(i,r);return t=!1,r=i,s?i:l}),this}evaluate(e){for(let t of this.steps)if((e=t(e))===l)break;return e}}e.fromNodeEventEmitter=function(e,t,r=e=>e){let i=(...e)=>s.fire(r(...e)),s=new D({onWillAddFirstListener:()=>e.on(t,i),onDidRemoveLastListener:()=>e.removeListener(t,i)});return s.event},e.fromDOMEventEmitter=function(e,t,r=e=>e){let i=(...e)=>s.fire(r(...e)),s=new D({onWillAddFirstListener:()=>e.addEventListener(t,i),onDidRemoveLastListener:()=>e.removeEventListener(t,i)});return s.event},e.toPromise=function(e){return new Promise(t=>r(e)(t))},e.fromPromise=function(e){let t=new D;return e.then(e=>{t.fire(e)},()=>{t.fire(void 0)}).finally(()=>{t.dispose()}),t.event},e.forward=function(e,t){return e(e=>t.fire(e))},e.runAndSubscribe=function(e,t,r){return t(r),e(e=>t(e))};class h{constructor(e,r){this._observable=e,this._counter=0,this._hasChanged=!1;let i={onWillAddFirstListener:()=>{e.addObserver(this)},onDidRemoveLastListener:()=>{e.removeObserver(this)}};r||t(i),this.emitter=new D(i),r&&r.add(this.emitter)}beginUpdate(e){this._counter++}handlePossibleChange(e){}handleChange(e,t){this._hasChanged=!0}endUpdate(e){this._counter--,0===this._counter&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}e.fromObservable=function(e,t){return new h(e,t).emitter.event},e.fromObservableLight=function(e){return(t,r,i)=>{let s=0,n=!1,o={beginUpdate(){s++},endUpdate(){0==--s&&(e.reportChanges(),n&&(n=!1,t.call(r)))},handlePossibleChange(){},handleChange(){n=!0}};e.addObserver(o),e.reportChanges();let l={dispose(){e.removeObserver(o)}};return i instanceof v?i.add(l):Array.isArray(i)&&i.push(l),l}}})(R||={});var x=class e{constructor(t){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${t}_${e._idPool++}`,e.all.add(this)}start(e){this._stopWatch=new y,this.listenerCount=e}stop(){if(this._stopWatch){let e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}};x.all=new Set,x._idPool=0;var k=class e{constructor(t,r,i=(e._idPool++).toString(16).padStart(3,"0")){this._errorHandler=t,this.threshold=r,this.name=i,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(e,t){let r=this.threshold;if(r<=0||t<r)return;this._stacks||(this._stacks=new Map);let i=this._stacks.get(e.value)||0;if(this._stacks.set(e.value,i+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=.5*r;let[e,i]=this.getMostFrequentStack(),s=`[${this.name}] potential listener LEAK detected, having ${t} listeners already. MOST frequent listener (${i}):`;console.warn(s),console.warn(e);let n=new A(s,e);this._errorHandler(n)}return()=>{let t=this._stacks.get(e.value)||0;this._stacks.set(e.value,t-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,t=0;for(let[r,i]of this._stacks)(!e||t<i)&&(e=[r,i],t=i);return e}};k._idPool=1;var S,L,R,M,E=class e{constructor(e){this.value=e}static create(){return new e(Error().stack??"")}print(){console.warn(this.value.split(`
|
|
6
|
+
`+e.stack):e},0)}}addListener(e){return this.listeners.push(e),()=>{this._removeListener(e)}}emit(e){this.listeners.forEach(t=>{t(e)})}_removeListener(e){this.listeners.splice(this.listeners.indexOf(e),1)}setUnexpectedErrorHandler(e){this.unexpectedErrorHandler=e}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}};function a(e){var t;(t=e)instanceof u||t instanceof Error&&t.name===h&&t.message===h||l.onUnexpectedError(e)}var h="Canceled",u=class extends Error{constructor(){super(h),this.name=this.message}},c=class e extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(t){if(t instanceof e)return t;let r=new e;return r.message=t.message,r.stack=t.stack,r}static isErrorNoTelemetry(e){return"CodeExpectedError"===e.name}};(e=>{e.isLessThan=function(e){return e<0},e.isLessThanOrEqual=function(e){return e<=0},e.isGreaterThan=function(e){return e>0},e.isNeitherLessOrGreaterThan=function(e){return 0===e},e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0})(S||={});var d=class e{constructor(e){this.iterate=e}forEach(e){this.iterate(t=>(e(t),!0))}toArray(){let e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(t){return new e(e=>this.iterate(r=>!t(r)||e(r)))}map(t){return new e(e=>this.iterate(r=>e(t(r))))}some(e){let t=!1;return this.iterate(r=>!(t=e(r))),t}findFirst(e){let t;return this.iterate(r=>!e(r)||(t=r,!1)),t}findLast(e){let t;return this.iterate(r=>(e(r)&&(t=r),!0)),t}findLastMaxBy(e){let t,r=!0;return this.iterate(i=>((r||S.isGreaterThan(e(i,t)))&&(r=!1,t=i),!0)),t}};d.empty=new d(e=>{}),Symbol.iterator,Symbol.toStringTag;(e=>{function t(e){return e&&"object"==typeof e&&"function"==typeof e[Symbol.iterator]}e.is=t;let r=Object.freeze([]);function*i(e){yield e}e.empty=function(){return r},e.single=i,e.wrap=function(e){return t(e)?e:i(e)},e.from=function(e){return e||r},e.reverse=function*(e){for(let t=e.length-1;t>=0;t--)yield e[t]},e.isEmpty=function(e){return!e||!0===e[Symbol.iterator]().next().done},e.first=function(e){return e[Symbol.iterator]().next().value},e.some=function(e,t){let r=0;for(let i of e)if(t(i,r++))return!0;return!1},e.find=function(e,t){for(let r of e)if(t(r))return r},e.filter=function*(e,t){for(let r of e)t(r)&&(yield r)},e.map=function*(e,t){let r=0;for(let i of e)yield t(i,r++)},e.flatMap=function*(e,t){let r=0;for(let i of e)yield*t(i,r++)},e.concat=function*(...e){for(let t of e)yield*t},e.reduce=function(e,t,r){let i=r;for(let r of e)i=t(i,r);return i},e.slice=function*(e,t,r=e.length){for(t<0&&(t+=e.length),r<0?r+=e.length:r>e.length&&(r=e.length);t<r;t++)yield e[t]},e.consume=function(t,r=1/0){let i=[];if(0===r)return[i,t];let s=t[Symbol.iterator]();for(let t=0;t<r;t++){let t=s.next();if(t.done)return[i,e.empty()];i.push(t.value)}return[i,{[Symbol.iterator]:()=>s}]},e.asyncToArray=async function(e){let t=[];for await(let r of e)t.push(r);return Promise.resolve(t)}})(L||={});function f(e){return e}function _(e){}function p(e,t){}function g(e){if(L.is(e)){let t=[];for(let r of e)if(r)try{r.dispose()}catch(e){t.push(e)}if(1===t.length)throw t[0];if(t.length>1)throw AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}if(e)return e.dispose(),e}function m(e){let t=f({dispose:function(e,t){let r=this,i=!1,s;return function(){if(i)return s;if(i=!0,t)try{s=e.apply(r,arguments)}finally{t()}else s=e.apply(r,arguments);return s}}(()=>{_(t),e()})});return t}var v=class e{constructor(){this._toDispose=new Set,this._isDisposed=!1,f(this)}dispose(){this._isDisposed||(_(this),this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{g(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t)return t;if(t===this)throw Error("Cannot register a disposable on itself!");return p(t,this),this._isDisposed?e.DISABLE_DISPOSED_WARNING||console.warn(Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}delete(e){if(e){if(e===this)throw Error("Cannot dispose a disposable on itself!");this._toDispose.delete(e),e.dispose()}}deleteAndLeak(e){e&&this._toDispose.has(e)&&(this._toDispose.delete(e),p(e,null))}};v.DISABLE_DISPOSED_WARNING=!1;var C=class{constructor(){this._store=new v,f(this),p(this._store,this)}dispose(){_(this),this._store.dispose()}_register(e){if(e===this)throw Error("Cannot register a disposable on itself!");return this._store.add(e)}};C.None=Object.freeze({dispose(){}});var b=class e{constructor(t){this.element=t,this.next=e.Undefined,this.prev=e.Undefined}};b.Undefined=new b(void 0);var w=globalThis.performance&&"function"==typeof globalThis.performance.now,y=class e{static create(t){return new e(t)}constructor(e){this._now=w&&!1===e?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return -1!==this._stopTime?this._stopTime-this._startTime:this._now()-this._startTime}};(e=>{function t(e){}function r(e){return(t,r=null,i)=>{let s=!1,n;return n=e(e=>{if(!s)return n?n.dispose():s=!0,t.call(r,e)},null,i),s&&n.dispose(),n}}function i(e,t,r){return n((r,i=null,s)=>e(e=>r.call(i,t(e)),null,s),r)}function s(e,t,r){return n((r,i=null,s)=>e(e=>t(e)&&r.call(i,e),null,s),r)}function n(e,r){let i,s={onWillAddFirstListener(){i=e(n.fire,n)},onDidRemoveLastListener(){i?.dispose()}};r||t(s);let n=new D(s);return r?.add(n),n.event}function o(e,r,i=100,s=!1,n=!1,l,a){let h,u,c,d=0,f,_={leakWarningThreshold:l,onWillAddFirstListener(){h=e(e=>{d++,u=r(u,e),s&&!c&&(p.fire(u),u=void 0),f=()=>{let e=u;u=void 0,c=void 0,(!s||d>1)&&p.fire(e),d=0},"number"==typeof i?(clearTimeout(c),c=setTimeout(f,i)):void 0===c&&(c=0,queueMicrotask(f))})},onWillRemoveListener(){n&&d>0&&f?.()},onDidRemoveLastListener(){f=void 0,h.dispose()}};a||t(_);let p=new D(_);return a?.add(p),p.event}e.None=()=>C.None,e.defer=function(e,t){return o(e,()=>{},0,void 0,!0,void 0,t)},e.once=r,e.map=i,e.forEach=function(e,t,r){return n((r,i=null,s)=>e(e=>{t(e),r.call(i,e)},null,s),r)},e.filter=s,e.signal=function(e){return e},e.any=function(...e){return(t,r=null,i)=>{var s,n;return s=function(...e){let t=m(()=>g(e));return function(e,t){!1}(e,t),t}(...e.map(e=>e(e=>t.call(r,e)))),(n=i)instanceof Array?n.push(s):n&&n.add(s),s}},e.reduce=function(e,t,r,s){let n=r;return i(e,e=>n=t(n,e),s)},e.debounce=o,e.accumulate=function(t,r=0,i){return e.debounce(t,(e,t)=>e?(e.push(t),e):[t],r,void 0,!0,void 0,i)},e.latch=function(e,t=(e,t)=>e===t,r){let i=!0,n;return s(e,e=>{let r=i||!t(e,n);return i=!1,n=e,r},r)},e.split=function(t,r,i){return[e.filter(t,r,i),e.filter(t,e=>!r(e),i)]},e.buffer=function(e,t=!1,r=[],i){let s=r.slice(),n=e(e=>{s?s.push(e):l.fire(e)});i&&i.add(n);let o=()=>{s?.forEach(e=>l.fire(e)),s=null},l=new D({onWillAddFirstListener(){n||(n=e(e=>l.fire(e)),i&&i.add(n))},onDidAddFirstListener(){s&&(t?setTimeout(o):o())},onDidRemoveLastListener(){n&&n.dispose(),n=null}});return i&&i.add(l),l.event},e.chain=function(e,t){return(r,i,s)=>{let n=t(new a);return e(function(e){let t=n.evaluate(e);t!==l&&r.call(i,t)},void 0,s)}};let l=Symbol("HaltChainable");class a{constructor(){this.steps=[]}map(e){return this.steps.push(e),this}forEach(e){return this.steps.push(t=>(e(t),t)),this}filter(e){return this.steps.push(t=>e(t)?t:l),this}reduce(e,t){let r=t;return this.steps.push(t=>r=e(r,t)),this}latch(e=(e,t)=>e===t){let t=!0,r;return this.steps.push(i=>{let s=t||!e(i,r);return t=!1,r=i,s?i:l}),this}evaluate(e){for(let t of this.steps)if((e=t(e))===l)break;return e}}e.fromNodeEventEmitter=function(e,t,r=e=>e){let i=(...e)=>s.fire(r(...e)),s=new D({onWillAddFirstListener:()=>e.on(t,i),onDidRemoveLastListener:()=>e.removeListener(t,i)});return s.event},e.fromDOMEventEmitter=function(e,t,r=e=>e){let i=(...e)=>s.fire(r(...e)),s=new D({onWillAddFirstListener:()=>e.addEventListener(t,i),onDidRemoveLastListener:()=>e.removeEventListener(t,i)});return s.event},e.toPromise=function(e){return new Promise(t=>r(e)(t))},e.fromPromise=function(e){let t=new D;return e.then(e=>{t.fire(e)},()=>{t.fire(void 0)}).finally(()=>{t.dispose()}),t.event},e.forward=function(e,t){return e(e=>t.fire(e))},e.runAndSubscribe=function(e,t,r){return t(r),e(e=>t(e))};class h{constructor(e,r){this._observable=e,this._counter=0,this._hasChanged=!1;let i={onWillAddFirstListener:()=>{e.addObserver(this)},onDidRemoveLastListener:()=>{e.removeObserver(this)}};r||t(i),this.emitter=new D(i),r&&r.add(this.emitter)}beginUpdate(e){this._counter++}handlePossibleChange(e){}handleChange(e,t){this._hasChanged=!0}endUpdate(e){this._counter--,0===this._counter&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}e.fromObservable=function(e,t){return new h(e,t).emitter.event},e.fromObservableLight=function(e){return(t,r,i)=>{let s=0,n=!1,o={beginUpdate(){s++},endUpdate(){0==--s&&(e.reportChanges(),n&&(n=!1,t.call(r)))},handlePossibleChange(){},handleChange(){n=!0}};e.addObserver(o),e.reportChanges();let l={dispose(){e.removeObserver(o)}};return i instanceof v?i.add(l):Array.isArray(i)&&i.push(l),l}}})(R||={});var x=class e{constructor(t){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${t}_${e._idPool++}`,e.all.add(this)}start(e){this._stopWatch=new y,this.listenerCount=e}stop(){if(this._stopWatch){let e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}};x.all=new Set,x._idPool=0;var k=class e{constructor(t,r,i=(e._idPool++).toString(16).padStart(3,"0")){this._errorHandler=t,this.threshold=r,this.name=i,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(e,t){let r=this.threshold;if(r<=0||t<r)return;this._stacks||(this._stacks=new Map);let i=this._stacks.get(e.value)||0;if(this._stacks.set(e.value,i+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=.5*r;let[e,i]=this.getMostFrequentStack(),s=`[${this.name}] potential listener LEAK detected, having ${t} listeners already. MOST frequent listener (${i}):`;console.warn(s),console.warn(e);let n=new A(s,e);this._errorHandler(n)}return()=>{let t=this._stacks.get(e.value)||0;this._stacks.set(e.value,t-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,t=0;for(let[r,i]of this._stacks)(!e||t<i)&&(e=[r,i],t=i);return e}};k._idPool=1;var S,L,R,M,E=class e{constructor(e){this.value=e}static create(){return new e(Error().stack??"")}print(){console.warn(this.value.split(`
|
|
7
7
|
`).slice(2).join(`
|
|
8
8
|
`))}},A=class extends Error{constructor(e,t){super(e),this.name="ListenerLeakError",this.stack=t}},z=class extends Error{constructor(e,t){super(e),this.name="ListenerRefusalError",this.stack=t}},B=0,I=class{constructor(e){this.value=e,this.id=B++}},P,D=class{constructor(e){this._size=0,this._options=e,this._leakageMon=this._options?.leakWarningThreshold?new k(e?.onListenerError??a,this._options?.leakWarningThreshold??-1):void 0,this._perfMon=this._options?._profName?new x(this._options._profName):void 0,this._deliveryQueue=this._options?.deliveryQueue}dispose(){this._disposed||(this._disposed=!0,this._deliveryQueue?.current===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),this._options?.onDidRemoveLastListener?.(),this._leakageMon?.dispose())}get event(){return this._event??=(e,t,r)=>{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let e=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(e);let t=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],r=new z(`${e}. HINT: Stack shows most frequent listener (${t[1]}-times)`,t[0]);return(this._options?.onListenerError||a)(r),C.None}if(this._disposed)return C.None;t&&(e=e.bind(t));let i=new I(e),s;this._leakageMon&&this._size>=Math.ceil(.2*this._leakageMon.threshold)&&(i.stack=E.create(),s=this._leakageMon.check(i.stack,this._size+1)),this._listeners?this._listeners instanceof I?(this._deliveryQueue??=new T,this._listeners=[this._listeners,i]):this._listeners.push(i):(this._options?.onWillAddFirstListener?.(this),this._listeners=i,this._options?.onDidAddFirstListener?.(this)),this._size++;let n=m(()=>{M?.unregister(n),s?.(),this._removeListener(i)});if(r instanceof v?r.add(n):Array.isArray(r)&&r.push(n),M){let e=Error().stack.split(`
|
|
9
9
|
`).slice(2,3).join(`
|
|
10
|
-
`).trim(),t=/(file:|vscode-file:\/\/vscode-app)?(\/[^:]*:\d+:\d+)/.exec(e);M.register(n,t?.[2]??e,n)}return n},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(1===this._size){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}let t=this._listeners,r=t.indexOf(e);if(-1===r)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),Error("Attempted to dispose unknown listener");this._size--,t[r]=void 0;let i=this._deliveryQueue.current===this;if(2*this._size<=t.length){let e=0;for(let r=0;r<t.length;r++)t[r]?t[e++]=t[r]:i&&(this._deliveryQueue.end--,e<this._deliveryQueue.i&&this._deliveryQueue.i--);t.length=e}}_deliver(e,t){if(!e)return;let r=this._options?.onListenerError||a;if(!r)return void e.value(t);try{e.value(t)}catch(e){r(e)}}_deliverQueue(e){let t=e.current._listeners;for(;e.i<e.end;)this._deliver(t[e.i++],e.value);e.reset()}fire(e){if(this._deliveryQueue?.current&&(this._deliverQueue(this._deliveryQueue),this._perfMon?.stop()),this._perfMon?.start(this._size),this._listeners)if(this._listeners instanceof I)this._deliver(this._listeners,e);else{let t=this._deliveryQueue;t.enqueue(this,e,this._listeners.length),this._deliverQueue(t)}this._perfMon?.stop()}hasListeners(){return this._size>0}},T=class{constructor(){this.i=-1,this.end=0}enqueue(e,t,r){this.i=0,this.end=r,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},$=class e{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new D,this.onChange=this._onChange.event;let e=new o;this.register(e),this._active=e.version,this._activeProvider=e}static extractShouldJoin(e){return(1&e)!=0}static extractWidth(e){return e>>1&3}static extractCharKind(e){return e>>3}static createPropertyValue(e,t,r=!1){return(0xffffff&e)<<3|(3&t)<<1|!!r}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(e){if(!this._providers[e])throw Error(`unknown Unicode version "${e}"`);this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)}register(e){this._providers[e.version]=e}wcwidth(e){return this._activeProvider.wcwidth(e)}getStringCellWidth(t){let r=0,i=0,s=t.length;for(let n=0;n<s;++n){let o=t.charCodeAt(n);if(55296<=o&&o<=56319){if(++n>=s)return r+this.wcwidth(o);let e=t.charCodeAt(n);56320<=e&&e<=57343?o=(o-55296)*1024+e-56320+65536:r+=this.wcwidth(e)}let l=this.charProperties(o,i),a=e.extractWidth(l);e.extractShouldJoin(l)&&(a-=e.extractWidth(i)),r+=a,i=l}return r}charProperties(e,t){return this._activeProvider.charProperties(e,t)}},W=[[768,879],[1155,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1541],[1552,1562],[1564,1564],[1611,1631],[1648,1648],[1750,1757],[1759,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2045,2045],[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2259,2306],[2362,2362],[2364,2364],[2369,2376],[2381,2381],[2385,2391],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2558,2558],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2641,2641],[2672,2673],[2677,2677],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2810,2815],[2817,2817],[2876,2876],[2879,2879],[2881,2884],[2893,2893],[2902,2902],[2914,2915],[2946,2946],[3008,3008],[3021,3021],[3072,3072],[3076,3076],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3170,3171],[3201,3201],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3328,3329],[3387,3388],[3393,3396],[3405,3405],[3426,3427],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4151],[4153,4154],[4157,4158],[4184,4185],[4190,4192],[4209,4212],[4226,4226],[4229,4230],[4237,4237],[4253,4253],[4448,4607],[4957,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6158],[6277,6278],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6683,6683],[6742,6742],[6744,6750],[6752,6752],[6754,6754],[6757,6764],[6771,6780],[6783,6783],[6832,6846],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7040,7041],[7074,7077],[7080,7081],[7083,7085],[7142,7142],[7144,7145],[7149,7149],[7151,7153],[7212,7219],[7222,7223],[7376,7378],[7380,7392],[7394,7400],[7405,7405],[7412,7412],[7416,7417],[7616,7673],[7675,7679],[8203,8207],[8234,8238],[8288,8292],[8294,8303],[8400,8432],[11503,11505],[11647,11647],[11744,11775],[12330,12333],[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],[43010,43010],[43014,43014],[43019,43019],[43045,43046],[43204,43205],[43232,43249],[43263,43263],[43302,43309],[43335,43345],[43392,43394],[43443,43443],[43446,43449],[43452,43453],[43493,43493],[43561,43566],[43569,43570],[43573,43574],[43587,43587],[43596,43596],[43644,43644],[43696,43696],[43698,43700],[43703,43704],[43710,43711],[43713,43713],[43756,43757],[43766,43766],[44005,44005],[44008,44008],[44013,44013],[64286,64286],[65024,65039],[65056,65071],[65279,65279],[65529,65531]],O=[[66045,66045],[66272,66272],[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[68325,68326],[68900,68903],[69446,69456],[69633,69633],[69688,69702],[69759,69761],[69811,69814],[69817,69818],[69821,69821],[69837,69837],[69888,69890],[69927,69931],[69933,69940],[70003,70003],[70016,70017],[70070,70078],[70089,70092],[70191,70193],[70196,70196],[70198,70199],[70206,70206],[70367,70367],[70371,70378],[70400,70401],[70459,70460],[70464,70464],[70502,70508],[70512,70516],[70712,70719],[70722,70724],[70726,70726],[70750,70750],[70835,70840],[70842,70842],[70847,70848],[70850,70851],[71090,71093],[71100,71101],[71103,71104],[71132,71133],[71219,71226],[71229,71229],[71231,71232],[71339,71339],[71341,71341],[71344,71349],[71351,71351],[71453,71455],[71458,71461],[71463,71467],[71727,71735],[71737,71738],[72148,72151],[72154,72155],[72160,72160],[72193,72202],[72243,72248],[72251,72254],[72263,72263],[72273,72278],[72281,72283],[72330,72342],[72344,72345],[72752,72758],[72760,72765],[72767,72767],[72850,72871],[72874,72880],[72882,72883],[72885,72886],[73009,73014],[73018,73018],[73020,73021],[73023,73029],[73031,73031],[73104,73105],[73109,73109],[73111,73111],[73459,73460],[78896,78904],[92912,92916],[92976,92982],[94031,94031],[94095,94098],[113821,113822],[113824,113827],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],[121461,121461],[121476,121476],[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[123184,123190],[123628,123631],[125136,125142],[125252,125258],[917505,917505],[917536,917631],[917760,917999]],F=[[4352,4447],[8986,8987],[9001,9002],[9193,9196],[9200,9200],[9203,9203],[9725,9726],[9748,9749],[9800,9811],[9855,9855],[9875,9875],[9889,9889],[9898,9899],[9917,9918],[9924,9925],[9934,9934],[9940,9940],[9962,9962],[9970,9971],[9973,9973],[9978,9978],[9981,9981],[9989,9989],[9994,9995],[10024,10024],[10060,10060],[10062,10062],[10067,10069],[10071,10071],[10133,10135],[10160,10160],[10175,10175],[11035,11036],[11088,11088],[11093,11093],[11904,11929],[11931,12019],[12032,12245],[12272,12283],[12288,12329],[12334,12350],[12353,12438],[12443,12543],[12549,12591],[12593,12686],[12688,12730],[12736,12771],[12784,12830],[12832,12871],[12880,19903],[19968,42124],[42128,42182],[43360,43388],[44032,55203],[63744,64255],[65040,65049],[65072,65106],[65108,65126],[65128,65131],[65281,65376],[65504,65510]],N=[[94176,94179],[94208,100343],[100352,101106],[110592,110878],[110928,110930],[110948,110951],[110960,111355],[126980,126980],[127183,127183],[127374,127374],[127377,127386],[127488,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,127776],[127789,127797],[127799,127868],[127870,127891],[127904,127946],[127951,127955],[127968,127984],[127988,127988],[127992,128062],[128064,128064],[128066,128252],[128255,128317],[128331,128334],[128336,128359],[128378,128378],[128405,128406],[128420,128420],[128507,128591],[128640,128709],[128716,128716],[128720,128722],[128725,128725],[128747,128748],[128756,128762],[128992,129003],[129293,129393],[129395,129398],[129402,129442],[129445,129450],[129454,129482],[129485,129535],[129648,129651],[129656,129658],[129664,129666],[129680,129685],[131072,196605],[196608,262141]];function j(e,t){let r=0,i=t.length-1,s;if(e<t[0][0]||e>t[i][1])return!1;for(;i>=r;)if(e>t[s=r+i>>1][1])r=s+1;else{if(!(e<t[s][0]))return!0;i=s-1}return!1}var U=class{constructor(){if(this.version="11",!P){(P=new Uint8Array(65536)).fill(1),P[0]=0,P.fill(0,1,32),P.fill(0,127,160);for(let e=0;e<W.length;++e)P.fill(0,W[e][0],W[e][1]+1);for(let e=0;e<F.length;++e)P.fill(2,F[e][0],F[e][1]+1)}}wcwidth(e){return e<32?0:e<127?1:e<65536?P[e]:j(e,O)?0:j(e,N)?2:1}charProperties(e,t){let r=this.wcwidth(e),i=0===r&&0!==t;if(i){let e=$.extractWidth(t);0===e?i=!1:e>r&&(r=e)}return $.createPropertyValue(0,r,i)}},H=class{activate(e){e.unicode.register(new U)}dispose(){}}},36040:(e,t,r)=>{"use strict";r.d(t,{Y:()=>i});var i=class{activate(e){this._terminal=e}dispose(){}fit(){let e=this.proposeDimensions();if(!e||!this._terminal||isNaN(e.cols)||isNaN(e.rows))return;let t=this._terminal._core;(this._terminal.rows!==e.rows||this._terminal.cols!==e.cols)&&(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let e=this._terminal._core._renderService.dimensions;if(0===e.css.cell.width||0===e.css.cell.height)return;let t=0===this._terminal.options.scrollback?0:this._terminal.options.overviewRuler?.width||14,r=window.getComputedStyle(this._terminal.element.parentElement),i=parseInt(r.getPropertyValue("height")),s=Math.max(0,parseInt(r.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),o={top:parseInt(n.getPropertyValue("padding-top")),bottom:parseInt(n.getPropertyValue("padding-bottom")),right:parseInt(n.getPropertyValue("padding-right")),left:parseInt(n.getPropertyValue("padding-left"))},l=o.top+o.bottom;return{cols:Math.max(2,Math.floor((s-(o.right+o.left)-t)/e.css.cell.width)),rows:Math.max(1,Math.floor((i-l)/e.css.cell.height))}}}},41395:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(3720).A)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]])},42135:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(3720).A)("messages-square",[["path",{d:"M16 10a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 14.286V4a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z",key:"1n2ejm"}],["path",{d:"M20 9a2 2 0 0 1 2 2v10.286a.71.71 0 0 1-1.212.502l-2.202-2.202A2 2 0 0 0 17.172 19H10a2 2 0 0 1-2-2v-1",key:"1qfcsi"}]])},42947:()=>{},49987:(e,t,r)=>{"use strict";var i=r(95115);r.o(i,"useParams")&&r.d(t,{useParams:function(){return i.useParams}}),r.o(i,"usePathname")&&r.d(t,{usePathname:function(){return i.usePathname}}),r.o(i,"useRouter")&&r.d(t,{useRouter:function(){return i.useRouter}}),r.o(i,"useSearchParams")&&r.d(t,{useSearchParams:function(){return i.useSearchParams}})},52440:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(3720).A)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]])},67841:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(3720).A)("square-terminal",[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]])},68874:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(3720).A)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]])},88116:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(3720).A)("maximize-2",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]])}}]);
|
|
10
|
+
`).trim(),t=/(file:|vscode-file:\/\/vscode-app)?(\/[^:]*:\d+:\d+)/.exec(e);M.register(n,t?.[2]??e,n)}return n},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(1===this._size){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}let t=this._listeners,r=t.indexOf(e);if(-1===r)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),Error("Attempted to dispose unknown listener");this._size--,t[r]=void 0;let i=this._deliveryQueue.current===this;if(2*this._size<=t.length){let e=0;for(let r=0;r<t.length;r++)t[r]?t[e++]=t[r]:i&&(this._deliveryQueue.end--,e<this._deliveryQueue.i&&this._deliveryQueue.i--);t.length=e}}_deliver(e,t){if(!e)return;let r=this._options?.onListenerError||a;if(!r)return void e.value(t);try{e.value(t)}catch(e){r(e)}}_deliverQueue(e){let t=e.current._listeners;for(;e.i<e.end;)this._deliver(t[e.i++],e.value);e.reset()}fire(e){if(this._deliveryQueue?.current&&(this._deliverQueue(this._deliveryQueue),this._perfMon?.stop()),this._perfMon?.start(this._size),this._listeners)if(this._listeners instanceof I)this._deliver(this._listeners,e);else{let t=this._deliveryQueue;t.enqueue(this,e,this._listeners.length),this._deliverQueue(t)}this._perfMon?.stop()}hasListeners(){return this._size>0}},T=class{constructor(){this.i=-1,this.end=0}enqueue(e,t,r){this.i=0,this.end=r,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},$=class e{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new D,this.onChange=this._onChange.event;let e=new o;this.register(e),this._active=e.version,this._activeProvider=e}static extractShouldJoin(e){return(1&e)!=0}static extractWidth(e){return e>>1&3}static extractCharKind(e){return e>>3}static createPropertyValue(e,t,r=!1){return(0xffffff&e)<<3|(3&t)<<1|!!r}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(e){if(!this._providers[e])throw Error(`unknown Unicode version "${e}"`);this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)}register(e){this._providers[e.version]=e}wcwidth(e){return this._activeProvider.wcwidth(e)}getStringCellWidth(t){let r=0,i=0,s=t.length;for(let n=0;n<s;++n){let o=t.charCodeAt(n);if(55296<=o&&o<=56319){if(++n>=s)return r+this.wcwidth(o);let e=t.charCodeAt(n);56320<=e&&e<=57343?o=(o-55296)*1024+e-56320+65536:r+=this.wcwidth(e)}let l=this.charProperties(o,i),a=e.extractWidth(l);e.extractShouldJoin(l)&&(a-=e.extractWidth(i)),r+=a,i=l}return r}charProperties(e,t){return this._activeProvider.charProperties(e,t)}},W=[[768,879],[1155,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1541],[1552,1562],[1564,1564],[1611,1631],[1648,1648],[1750,1757],[1759,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2045,2045],[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2259,2306],[2362,2362],[2364,2364],[2369,2376],[2381,2381],[2385,2391],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2558,2558],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2641,2641],[2672,2673],[2677,2677],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2810,2815],[2817,2817],[2876,2876],[2879,2879],[2881,2884],[2893,2893],[2902,2902],[2914,2915],[2946,2946],[3008,3008],[3021,3021],[3072,3072],[3076,3076],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3170,3171],[3201,3201],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3328,3329],[3387,3388],[3393,3396],[3405,3405],[3426,3427],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4151],[4153,4154],[4157,4158],[4184,4185],[4190,4192],[4209,4212],[4226,4226],[4229,4230],[4237,4237],[4253,4253],[4448,4607],[4957,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6158],[6277,6278],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6683,6683],[6742,6742],[6744,6750],[6752,6752],[6754,6754],[6757,6764],[6771,6780],[6783,6783],[6832,6846],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7040,7041],[7074,7077],[7080,7081],[7083,7085],[7142,7142],[7144,7145],[7149,7149],[7151,7153],[7212,7219],[7222,7223],[7376,7378],[7380,7392],[7394,7400],[7405,7405],[7412,7412],[7416,7417],[7616,7673],[7675,7679],[8203,8207],[8234,8238],[8288,8292],[8294,8303],[8400,8432],[11503,11505],[11647,11647],[11744,11775],[12330,12333],[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],[43010,43010],[43014,43014],[43019,43019],[43045,43046],[43204,43205],[43232,43249],[43263,43263],[43302,43309],[43335,43345],[43392,43394],[43443,43443],[43446,43449],[43452,43453],[43493,43493],[43561,43566],[43569,43570],[43573,43574],[43587,43587],[43596,43596],[43644,43644],[43696,43696],[43698,43700],[43703,43704],[43710,43711],[43713,43713],[43756,43757],[43766,43766],[44005,44005],[44008,44008],[44013,44013],[64286,64286],[65024,65039],[65056,65071],[65279,65279],[65529,65531]],O=[[66045,66045],[66272,66272],[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[68325,68326],[68900,68903],[69446,69456],[69633,69633],[69688,69702],[69759,69761],[69811,69814],[69817,69818],[69821,69821],[69837,69837],[69888,69890],[69927,69931],[69933,69940],[70003,70003],[70016,70017],[70070,70078],[70089,70092],[70191,70193],[70196,70196],[70198,70199],[70206,70206],[70367,70367],[70371,70378],[70400,70401],[70459,70460],[70464,70464],[70502,70508],[70512,70516],[70712,70719],[70722,70724],[70726,70726],[70750,70750],[70835,70840],[70842,70842],[70847,70848],[70850,70851],[71090,71093],[71100,71101],[71103,71104],[71132,71133],[71219,71226],[71229,71229],[71231,71232],[71339,71339],[71341,71341],[71344,71349],[71351,71351],[71453,71455],[71458,71461],[71463,71467],[71727,71735],[71737,71738],[72148,72151],[72154,72155],[72160,72160],[72193,72202],[72243,72248],[72251,72254],[72263,72263],[72273,72278],[72281,72283],[72330,72342],[72344,72345],[72752,72758],[72760,72765],[72767,72767],[72850,72871],[72874,72880],[72882,72883],[72885,72886],[73009,73014],[73018,73018],[73020,73021],[73023,73029],[73031,73031],[73104,73105],[73109,73109],[73111,73111],[73459,73460],[78896,78904],[92912,92916],[92976,92982],[94031,94031],[94095,94098],[113821,113822],[113824,113827],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],[121461,121461],[121476,121476],[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[123184,123190],[123628,123631],[125136,125142],[125252,125258],[917505,917505],[917536,917631],[917760,917999]],F=[[4352,4447],[8986,8987],[9001,9002],[9193,9196],[9200,9200],[9203,9203],[9725,9726],[9748,9749],[9800,9811],[9855,9855],[9875,9875],[9889,9889],[9898,9899],[9917,9918],[9924,9925],[9934,9934],[9940,9940],[9962,9962],[9970,9971],[9973,9973],[9978,9978],[9981,9981],[9989,9989],[9994,9995],[10024,10024],[10060,10060],[10062,10062],[10067,10069],[10071,10071],[10133,10135],[10160,10160],[10175,10175],[11035,11036],[11088,11088],[11093,11093],[11904,11929],[11931,12019],[12032,12245],[12272,12283],[12288,12329],[12334,12350],[12353,12438],[12443,12543],[12549,12591],[12593,12686],[12688,12730],[12736,12771],[12784,12830],[12832,12871],[12880,19903],[19968,42124],[42128,42182],[43360,43388],[44032,55203],[63744,64255],[65040,65049],[65072,65106],[65108,65126],[65128,65131],[65281,65376],[65504,65510]],N=[[94176,94179],[94208,100343],[100352,101106],[110592,110878],[110928,110930],[110948,110951],[110960,111355],[126980,126980],[127183,127183],[127374,127374],[127377,127386],[127488,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,127776],[127789,127797],[127799,127868],[127870,127891],[127904,127946],[127951,127955],[127968,127984],[127988,127988],[127992,128062],[128064,128064],[128066,128252],[128255,128317],[128331,128334],[128336,128359],[128378,128378],[128405,128406],[128420,128420],[128507,128591],[128640,128709],[128716,128716],[128720,128722],[128725,128725],[128747,128748],[128756,128762],[128992,129003],[129293,129393],[129395,129398],[129402,129442],[129445,129450],[129454,129482],[129485,129535],[129648,129651],[129656,129658],[129664,129666],[129680,129685],[131072,196605],[196608,262141]];function j(e,t){let r=0,i=t.length-1,s;if(e<t[0][0]||e>t[i][1])return!1;for(;i>=r;)if(e>t[s=r+i>>1][1])r=s+1;else{if(!(e<t[s][0]))return!0;i=s-1}return!1}var U=class{constructor(){if(this.version="11",!P){(P=new Uint8Array(65536)).fill(1),P[0]=0,P.fill(0,1,32),P.fill(0,127,160);for(let e=0;e<W.length;++e)P.fill(0,W[e][0],W[e][1]+1);for(let e=0;e<F.length;++e)P.fill(2,F[e][0],F[e][1]+1)}}wcwidth(e){return e<32?0:e<127?1:e<65536?P[e]:j(e,O)?0:j(e,N)?2:1}charProperties(e,t){let r=this.wcwidth(e),i=0===r&&0!==t;if(i){let e=$.extractWidth(t);0===e?i=!1:e>r&&(r=e)}return $.createPropertyValue(0,r,i)}},H=class{activate(e){e.unicode.register(new U)}dispose(){}}},97923:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(51719).A)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},98903:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});let i=(0,r(51719).A)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]])}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9131],{5082:(e,t,r)=>{r.d(t,{A:()=>f});let n={eof:null,exclamationMark:33,greaterThan:62,leftSquareBracket:91,rightSquareBracket:93},i={contentTypeFlow:"flow"};var o=r(7304),a=r(74263);let l={name:"callout",tokenize:function(e,t,r){let o=this;return function(t){if(62===t){let r=o.containerState;return e.enter("callout",{_container:!0}),r.calloutOpen=!0,e.enter("calloutPrefix"),e.enter("calloutGreaterThanMark"),e.consume(t),e.exit("calloutGreaterThanMark"),l}return r(t)};function l(t){return(0,a.On)(t)?(e.enter("calloutPrefixWhitespace"),e.consume(t),e.exit("calloutPrefixWhitespace"),c):c(t)}function c(t){return t===n.leftSquareBracket?(e.enter("calloutType"),e.enter("calloutTypeMarkerLeft"),e.consume(t),e.exit("calloutTypeMarkerLeft"),s):r(t)}function s(t){return t===n.exclamationMark?(e.enter("calloutExclamationMark"),e.consume(t),e.exit("calloutExclamationMark"),e.enter("calloutTypeText"),u):r(t)}function u(t){return t===n.rightSquareBracket?(e.exit("calloutTypeText"),e.enter("calloutTypeMarkerRight"),e.consume(t),e.exit("calloutTypeMarkerRight"),e.exit("calloutType"),h):(0,a.CW)(t)?(e.consume(t),u):r(t)}function h(t){return(0,a.On)(t)?(e.enter("calloutPrefixWhitespace"),e.consume(t),e.exit("calloutPrefixWhitespace"),e.exit("calloutPrefix"),e.enter("calloutTitle"),e.enter("calloutTitleChunk",{_tokenizer:o.parser.flow(o.now()),contentType:i.contentTypeFlow}),p):(e.enter("calloutTitle"),e.enter("calloutTitleChunk",{_tokenizer:o.parser.flow(o.now()),contentType:i.contentTypeFlow}),p(t))}function p(r){if((0,a.HP)(r)||r===n.eof){let n=e.exit("calloutTitleChunk"),i=o.sliceStream(n);return i.push(null),n._tokenizer.write(i),e.exit("calloutTitle"),t(r)}return e.consume(r),p}},continuation:{tokenize:function(e,t,r){let n=this;return function(t){return(n.containerState.calloutContentStarted||e.enter("calloutContent"),(0,a.On)(t))?(0,o.N)(e,i,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(t):i(t)};function i(t){return 62===t?(e.enter("calloutPrefix"),e.enter("calloutGreaterThanMark"),e.consume(t),e.exit("calloutGreaterThanMark"),l):r(t)}function l(r){return(n.containerState.calloutContentStarted=!0,(0,a.On)(r))?(e.enter("calloutPrefixWhitespace"),e.consume(r),e.exit("calloutPrefixWhitespace"),e.exit("calloutPrefix"),t):(e.exit("calloutPrefix"),t(r))}}},exit:function(e){this.containerState.calloutContentStarted&&e.exit("calloutContent"),e.exit("callout")},add:"before"};var c=/[a-zA-Z0-9:_-]/,s=/[\s\t\r\n]/,u=/['"]/;let h={callouts:{note:{color:"#448aff",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-pencil"><line x1="18" y1="2" x2="22" y2="6"></line><path d="M7.5 20.5 19 9l-4-4L3.5 16.5 2 22z"></path></svg>'},tip:{color:"#00bfa6",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-flame"><path d="M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z"></path></svg>'},warning:{color:"#ff9100",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-alert-triangle"><path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>'},abstract:{color:"#00aeff",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-clipboard-list"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><path d="M15 2H9a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z"></path><path d="M12 11h4"></path><path d="M12 16h4"></path><path d="M8 11h.01"></path><path d="M8 16h.01"></path></svg>'},info:{color:"#00b8d4",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-info"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="16" x2="12" y2="12"></line><line x1="12" y1="8" x2="12.01" y2="8"></line></svg>'},todo:{color:"#00b8d4",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-check-circle-2"><path d="M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10z"></path><path d="m9 12 2 2 4-4"></path></svg>'},success:{color:"#00c853",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-check"><polyline points="20 6 9 17 4 12"></polyline></svg>'},question:{color:"#63dd17",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-help-circle"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>'},failure:{color:"#ff5252",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-x"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>'},danger:{color:"#ff1745",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-zap"><polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"></polygon></svg>'},bug:{color:"#f50057",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-bug"><rect x="8" y="6" width="8" height="14" rx="4"></rect><path d="m19 7-3 2"></path><path d="m5 7 3 2"></path><path d="m19 19-3-2"></path><path d="m5 19 3-2"></path><path d="M20 13h-4"></path><path d="M4 13h4"></path><path d="m10 4 1 2"></path><path d="m14 4-1 2"></path></svg>'},example:{color:"#7c4dff",svg:'<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-list"><line x1="8" y1="6" x2="21" y2="6"></line><line x1="8" y1="12" x2="21" y2="12"></line><line x1="8" y1="18" x2="21" y2="18"></line><line x1="3" y1="6" x2="3.01" y2="6"></line><line x1="3" y1="12" x2="3.01" y2="12"></line><line x1="3" y1="18" x2="3.01" y2="18"></line></svg>'},quote:{color:"#9e9e9e",svg:'<svg viewBox="0 0 100 100" class="quote-glyph" width="16" height="16"><path fill="currentColor" stroke="currentColor" d="M16.7,13.3c-3.7,0-6.7,3-6.7,6.7v26.7c0,3.7,3,6.7,6.7,6.7h13.5c0.1,6-0.5,18.7-6.3,28.2c0,0,0,0,0,0 c-0.9,1.4-0.7,3.1,0.5,4.2c1.2,1.1,3,1.2,4.3,0.2c0,0,14.7-11.2,14.7-32.7V20c0-3.7-3-6.7-6.7-6.7L16.7,13.3z M63.3,13.3 c-3.7,0-6.7,3-6.7,6.7v26.7c0,3.7,3,6.7,6.7,6.7h13.5c0.1,6-0.5,18.7-6.3,28.2h0c-0.9,1.4-0.7,3.1,0.5,4.2c1.2,1.1,3,1.2,4.3,0.2 c0,0,14.7-11.2,14.7-32.7V20c0-3.7-3-6.7-6.7-6.7L63.3,13.3z"></path></svg>'}},calloutContainer:"blockquote",customClassNames:[],embedDefaultColor:!1},p=new Map(Object.entries({summary:"abstract",tldr:"abstract",hint:"tip",important:"tip",check:"success",done:"success",help:"question",faq:"question",caution:"warning",attention:"warning",fail:"failure",missing:"failure",error:"danger",cite:"quote"}));function f(e={}){let t,r=this.data(),i=function e(t,r){let n={};for(let o in r){var i;(i=r[o])&&"object"==typeof i&&!Array.isArray(i)?n[o]=e(t[o]??{},r[o]):n[o]=t[o]??r[o]}return n}(e,h);function o(e,t){(r[e]?r[e]:r[e]=[]).push(t)}o("micromarkExtensions",{document:{[n.greaterThan]:l}}),o("fromMarkdownExtensions",(t="note",{enter:{callout(e){this.enter({type:"callout",children:[],data:{hName:i.calloutContainer,hProperties:{className:["callout",...i.customClassNames]}}},e)},calloutTitle(e){let r=i.callouts[t],n=function(e){var t="",r=[],n=l,i=null,o=null;function a(t){var r=function(e,t,r){var n,i,o,a,l,c,s;return(n=void 0,n={},i=n.offsetLine||0,o=n.offsetColumn||0,a=e.split("\n"),l=0,c=a.map(function(e,t){var r=l+e.length+1,n={start:l,end:r,line:t};return l=r,n}),s=0,function(t,r){"string"==typeof t&&(t=e.indexOf(t,r||0));for(var n,a,l,u,h=c[s],p=t>=h.end?1:-1;h;){if(n=h,a=t,n.start<=a&&a<n.end)return l=h,u=t,{line:i+l.line,column:o+u-l.start,character:u};s+=p,h=c[s]}})(t,r&&r.startIndex)}(e,w),n=r.line,i=r.column,o=e.slice(0,w),a=/(^|\n).*$/.exec(o)[0].replace(/\t/g," "),l=e.slice(w);throw Error(t+" ("+n+":"+i+"). If this is valid SVG, it's probably a bug in svg-parser. Please raise an issue at https://github.com/Rich-Harris/svg-parser/issues – thanks!\n\n"+(""+a+/.*(\n|$)/.exec(l)[0]+"\n"+function(e,t){for(var r="";t--;)r+=" ";return r}(0,a.length))+"^")}function l(){for(;w<e.length&&"<"!==e[w]||!c.test(e[w+1]);)t+=e[w++];return h()}function h(){for(var t="";w<e.length&&"<"!==e[w];)t+=e[w++];return(/\S/.test(t)&&i.children.push({type:"text",value:t}),"<"===e[w])?p:h}function p(){var t,n=e[w];if("?"===n)return h;if("!"===n){if("--"===e.slice(w+1,w+3))return f;if("[CDATA["===e.slice(w+1,w+8))return d;if(/doctype/i.test(e.slice(w+1,w+8)))return h}if("/"===n)return k;var l={type:"element",tagName:g(),properties:{},children:[]};for(i?i.children.push(l):o=l;w<e.length&&(t=function(){if(!s.test(e[w]))return null;x();var t=g();if(!t)return null;var r=!0;return x(),"="===e[w]&&(w+=1,x(),isNaN(r=u.test(e[w])?function(){for(var t=e[w++],r="",n=!1;w<e.length;){var i=e[w++];if(i===t&&!n)return r;"\\"!==i||n||(n=!0),r+=n?"\\"+i:i,n=!1}}():function(){var t="";do{var r=e[w];if(" "===r||">"===r||"/"===r)break;t+=r,w+=1}while(w<e.length);return t}())||""===r.trim()||(r*=1)),{name:t,value:r}}());)l.properties[t.name]=t.value;var c=!1;return"/"===e[w]&&(w+=1,c=!0),">"!==e[w]&&a("Expected >"),c||(i=l,r.push(l)),h}function f(){var t=e.indexOf("--\x3e",w);return~t||a("expected --\x3e"),w=t+2,h}function d(){var t=e.indexOf("]]>",w);return~t||a("expected ]]>"),i.children.push(e.slice(w+7,t)),w=t+2,h}function k(){var t=g();return t||a("Expected tag name"),t!==i.tagName&&a("Expected closing tag </"+t+"> to match opening tag <"+i.tagName+">"),x(),">"!==e[w]&&a("Expected >"),r.pop(),i=r[r.length-1],h}function g(){for(var t="";w<e.length&&c.test(e[w]);)t+=e[w++];return t}function x(){for(;w<e.length&&s.test(e[w]);)w+=1}for(var w=l.length;w<e.length;)n||a("Unexpected character"),n=n(),w+=1;return n!==h&&a("Unexpected end of input"),"svg"===o.tagName&&(o.metadata=t),{type:"root",children:[o]}}(r.svg);this.stack[this.stack.length-1].data.hProperties.className.push(t),this.enter({type:"calloutTitle",children:[{type:"element",data:{hName:"span",hProperties:{className:["callout-icon"],style:i.embedDefaultColor?`color: ${r.color}`:void 0},hChildren:n.children}}],data:{hName:"div",hProperties:{className:["callout-title",t]}}},e),t="note"},calloutContent(e){this.enter({type:"calloutContent",children:[],data:{hName:"div",hProperties:{className:["callout-content"]}}},e)}},exit:{callout(e){this.exit(e)},calloutTypeText(e){var r;r=this.sliceSerialize(e).toLowerCase(),t=h.callouts?.hasOwnProperty(r)?r:p.get(r)??"note"},calloutTitle(e){this.exit(e)},calloutContent(e){this.exit(e)}}})),o("toMarkdownExtensions",{handlers:{callout(e,t,r,n){let i=r.enter("callout"),o=r.createTracker(n);o.move("> "),o.shift(2);let a=r.indentLines(r.containerFlow(e,o.current()),(e,t,r)=>">"+(r?"":" ")+e);return i(),a},calloutTitle(e,t,r,n){let i=e.data.hProperties.className[1],o=`[!${i}]`,a=r.containerPhrasing(e.children[1],n);return o+(a?" ":"")+a},calloutContent:(e,t,r,n)=>r.containerFlow(e,n)}})}},48046:(e,t,r)=>{r.d(t,{A:()=>x});var n={d:(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)},i={};n.d(i,{Z:()=>g,$:()=>k});var o={horizontalTab:-2,nul:0,eof:null,space:32};function a(e){return e<o.nul||e===o.space}function l(e){return e<o.horizontalTab}var c={553:e=>{e.exports=function(e){var t,r;return e._compiled||(t=e.before?"(?:"+e.before+")":"",r=e.after?"(?:"+e.after+")":"",e.atBreak&&(t="[\\r\\n][\\t ]*"+t),e._compiled=RegExp((t?"("+t+")":"")+(/[|\\{}()[\]^$+*?.-]/.test(e.character)?"\\":"")+e.character+(r||""),"g")),e._compiled}},112:e=>{function t(e,t,r){var n;if(!t)return r;for("string"==typeof t&&(t=[t]),n=-1;++n<t.length;)if(-1!==e.indexOf(t[n]))return!0;return!1}e.exports=function(e,r){return t(e,r.inConstruct,!0)&&!t(e,r.notInConstruct)}},113:(e,t,r)=>{e.exports=function(e,t,r){for(var l,c,s,u,h,p,f,d,k=(r.before||"")+(t||"")+(r.after||""),g=[],x=[],w={},v=-1;++v<e.unsafe.length;)if(u=e.unsafe[v],i(e.stack,u))for(h=n(u);p=h.exec(k);)l="before"in u||u.atBreak,c="after"in u,-1===g.indexOf(s=p.index+(l?p[1].length:0))?(g.push(s),w[s]={before:l,after:c}):(w[s].before&&!l&&(w[s].before=!1),w[s].after&&!c&&(w[s].after=!1));for(g.sort(o),f=r.before?r.before.length:0,d=k.length-(r.after?r.after.length:0),v=-1;++v<g.length;)(s=g[v])<f||s>=d||s+1<d&&g[v+1]===s+1&&w[s].after&&!w[s+1].before&&!w[s+1].after||(f!==s&&x.push(a(k.slice(f,s),"\\")),f=s,!/[!-/:-@[-`{-~]/.test(k.charAt(s))||r.encode&&-1!==r.encode.indexOf(k.charAt(s))?(x.push("&#x"+k.charCodeAt(s).toString(16).toUpperCase()+";"),f++):x.push("\\"));return x.push(a(k.slice(f,d),r.after)),x.join("")};var n=r(553),i=r(112);function o(e,t){return e-t}function a(e,t){for(var r,n=/\\(?=[!-/:-@[-`{-~])/g,i=[],o=[],a=-1,l=0,c=e+t;r=n.exec(c);)i.push(r.index);for(;++a<i.length;)l!==i[a]&&o.push(e.slice(l,i[a])),o.push("\\"),l=i[a];return o.push(e.slice(l)),o.join("")}}},s={};function u(e){var t=s[e];if(void 0!==t)return t.exports;var r=s[e]={exports:{}};return c[e](r,r.exports,u),r.exports}u.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return u.d(t,{a:t}),t},u.d=(e,t)=>{for(var r in t)u.o(t,r)&&!u.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},u.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var h={};(()=>{function e(t={}){let r,n=t.permalinks||[],i=t.pageResolver||(e=>[e.replace(/ /g,"_").toLowerCase()]),o=t.newClassName||"new",a=t.wikiLinkClassName||"internal",l=t.hrefTemplate||(e=>`#/page/${e}`);function c(e){return e[e.length-1]}return{enter:{wikiLink:function(e){r={type:"wikiLink",value:null,data:{alias:null,permalink:null,exists:null}},this.enter(r,e)}},exit:{wikiLinkTarget:function(e){let t=this.sliceSerialize(e);c(this.stack).value=t},wikiLinkAlias:function(e){let t=this.sliceSerialize(e);c(this.stack).data.alias=t},wikiLink:function(e){let t;this.exit(e);let c=r,s=i(c.value),u=s.find(e=>-1!==n.indexOf(e)),h=void 0!==u;t=h?u:s[0]||"";let p=c.value;c.data.alias&&(p=c.data.alias);let f=a;h||(f+=" "+o),c.data.alias=p,c.data.permalink=t,c.data.exists=h,c.data.hName="a",c.data.hProperties={className:f,href:l(t)},c.data.hChildren=[{type:"text",value:p}]}}}}u.d(h,{V:()=>e,x:()=>n});var t=u(113),r=u.n(t);function n(e={}){let t=e.aliasDivider||":";return{unsafe:[{character:"[",inConstruct:["phrasing","label","reference"]},{character:"]",inConstruct:["label","reference"]}],handlers:{wikiLink:function(e,n,i){let o,a=i.enter("wikiLink"),l=r()(i,e.value,{before:"[",after:"]"}),c=r()(i,e.data.alias,{before:"[",after:"]"});return o=c!==l?`[[${l}${t}${c}]]`:`[[${l}]]`,a(),o}}}}})();var p=h.V,f=h.x;let d=!1;function k(e={}){let t=this.data();function r(e,r){t[e]?t[e].push(r):t[e]=[r]}!d&&(this.Parser&&this.Parser.prototype&&this.Parser.prototype.blockTokenizers||this.Compiler&&this.Compiler.prototype&&this.Compiler.prototype.visitors)&&(d=!0,console.warn("[remark-wiki-link] Warning: please upgrade to remark 13 to use this plugin")),r("micromarkExtensions",function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).aliasDivider||":";return{text:{91:{tokenize:function(t,r,n){var i,c,s=0,u=0,h=0;return function(r){return r!=="[[".charCodeAt(u)?n(r):(t.enter("wikiLink"),t.enter("wikiLinkMarker"),function r(f){return 2===u?(t.exit("wikiLinkMarker"),l(f)||f===o.eof?n(f):(t.enter("wikiLinkData"),t.enter("wikiLinkTarget"),function r(u){return u===e.charCodeAt(s)?i?(t.exit("wikiLinkTarget"),t.enter("wikiLinkAliasMarker"),function r(i){return s===e.length?(t.exit("wikiLinkAliasMarker"),t.enter("wikiLinkAlias"),function e(r){return r==="]]".charCodeAt(h)?c?(t.exit("wikiLinkAlias"),t.exit("wikiLinkData"),t.enter("wikiLinkMarker"),p(r)):n(r):l(r)||r===o.eof?n(r):(a(r)||(c=!0),t.consume(r),e)}(i)):i!==e.charCodeAt(s)?n(i):(t.consume(i),s++,r)}(u)):n(u):u==="]]".charCodeAt(h)?i?(t.exit("wikiLinkTarget"),t.exit("wikiLinkData"),t.enter("wikiLinkMarker"),p(u)):n(u):l(u)||u===o.eof?n(u):(a(u)||(i=!0),t.consume(u),r)}(f))):f!=="[[".charCodeAt(u)?n(f):(t.consume(f),u++,r)}(r))};function p(e){return 2===h?(t.exit("wikiLinkMarker"),t.exit("wikiLink"),r(e)):e!=="]]".charCodeAt(h)?n(e):(t.consume(e),h++,p)}}}}}}(e)),r("fromMarkdownExtensions",p(e)),r("toMarkdownExtensions",f(e))}let g=k;var x=i.Z;i.$}}]);
|
package/apps/pwa/out/_next/static/chunks/{2598.814f64e3268634e7.js → 9238.2cd5f47f4bf7a2c3.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9238],{79238:(t,e,a)=>{function i(t,e){let a=Error(e);return a.code=t,a}async function o(t){var e;if(!t.type.startsWith("audio/"))throw i("unsupported","not an audio file: ".concat(t.type||"(unknown)"));let a=null!=(e=globalThis.AudioContext)?e:globalThis.webkitAudioContext;if(!a)throw i("unavailable","Web Audio API unsupported");let o=new a;try{let e=await t.arrayBuffer();return{durationSec:(await o.decodeAudioData(e.slice(0)).catch(t=>{throw i("decode",t instanceof Error?t.message:String(t))})).duration,mimeType:t.type,sizeBytes:t.size}}finally{try{await o.close()}catch(t){}}}a.d(e,{extractAudioMeta:()=>o})}}]);
|