purplemux 0.1.8 → 0.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +70 -70
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/required-server-files.json +1 -1
- package/.next/standalone/.next/routes-manifest.json +14 -14
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12~vy9f._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0-xx2s1._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0camkxl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0i209pm._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0sfa_96._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{messages_107hz.q._.js → messages_0ktq43~._.js} +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +70 -70
- package/.next/standalone/.next/server/pages/_app/build-manifest.json +3 -3
- package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/_app.js +3 -3
- package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/agents/[agentId]/chat/build-manifest.json +9 -9
- package/.next/standalone/.next/server/pages/agents/[agentId]/chat/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/agents/[agentId]/memory/build-manifest.json +8 -8
- package/.next/standalone/.next/server/pages/agents/[agentId]/memory/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/agents/[agentId]/workspace/build-manifest.json +4 -4
- package/.next/standalone/.next/server/pages/agents/[agentId]/workspace/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/agents/build-manifest.json +8 -8
- package/.next/standalone/.next/server/pages/agents/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/de/404.html +1 -1
- package/.next/standalone/.next/server/pages/de/500.html +1 -1
- package/.next/standalone/.next/server/pages/en/404.html +1 -1
- package/.next/standalone/.next/server/pages/en/500.html +1 -1
- package/.next/standalone/.next/server/pages/es/404.html +1 -1
- package/.next/standalone/.next/server/pages/es/500.html +1 -1
- package/.next/standalone/.next/server/pages/fr/404.html +1 -1
- package/.next/standalone/.next/server/pages/fr/500.html +1 -1
- package/.next/standalone/.next/server/pages/index/build-manifest.json +7 -7
- package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +2 -2
- package/.next/standalone/.next/server/pages/ja/404.html +1 -1
- package/.next/standalone/.next/server/pages/ja/500.html +1 -1
- package/.next/standalone/.next/server/pages/ko/404.html +1 -1
- package/.next/standalone/.next/server/pages/ko/500.html +1 -1
- package/.next/standalone/.next/server/pages/pt-BR/404.html +1 -1
- package/.next/standalone/.next/server/pages/pt-BR/500.html +1 -1
- package/.next/standalone/.next/server/pages/reports/build-manifest.json +10 -10
- package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/ru/404.html +1 -1
- package/.next/standalone/.next/server/pages/ru/500.html +1 -1
- package/.next/standalone/.next/server/pages/stats/build-manifest.json +9 -9
- package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/tr/404.html +1 -1
- package/.next/standalone/.next/server/pages/tr/500.html +1 -1
- package/.next/standalone/.next/server/pages/webview/build-manifest.json +9 -9
- package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/500.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/500.html +1 -1
- package/.next/standalone/.next/static/{m92l36SvyhaOH3kPcLxX9 → QBcppzKifu6ZXgxIb2laW}/_buildManifest.js +8 -8
- package/.next/standalone/.next/static/chunks/{0cr0zw09~hzxd.js → 0.ko43jbbjwzd.js} +9 -9
- package/.next/standalone/.next/static/chunks/{004mrvd9r-_8y.js → 00x-ygjkfbgnz.js} +1 -1
- package/.next/standalone/.next/static/chunks/{076h6~3japmyo.js → 06wc2umsaus4g.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0gfqau6ep4-2d.js → 07tmc1fd581-v.js} +1 -1
- package/.next/standalone/.next/static/chunks/08mloizj8v086.js +1 -0
- package/.next/standalone/.next/static/chunks/{0.uz2amfosjm9.js → 0ay.h74rl2t2c.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0cf.718s5_g~g.js → 0b64-twwftp.b.js} +1 -1
- package/.next/standalone/.next/static/chunks/0b8ftzkop9kc0.js +1 -0
- package/.next/standalone/.next/static/chunks/{0qbas4d_2~xdq.js → 0cjfef2q~d_lg.js} +1 -1
- package/.next/standalone/.next/static/chunks/{05t02de7w3jwp.js → 0ebzi~xd5kbf6.js} +3 -3
- package/.next/standalone/.next/static/chunks/{018sw2sdk3jk5.js → 0fungak7h7t_u.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0_roszihj6gx..js → 0gx~s_r.d1ncl.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0hjtdrn9rjdr..js → 0hde.5_5bt3n7.js} +7 -7
- package/.next/standalone/.next/static/chunks/0hish8kae8ww1.js +1 -0
- package/.next/standalone/.next/static/chunks/0komb9eh49_ay.js +1 -0
- package/.next/standalone/.next/static/chunks/0nyqd-g9.1_ds.js +1 -0
- package/.next/standalone/.next/static/chunks/{0fg2d4r16282n.js → 0od39.d~sm_lf.js} +10 -10
- package/.next/standalone/.next/static/chunks/{0e5whjke-_bgs.js → 0ps.lwk6-aznm.js} +9 -9
- package/.next/standalone/.next/static/chunks/{0c86u.9lapecr.js → 0w2qwb1-piu-m.js} +8 -8
- package/.next/standalone/.next/static/chunks/{13~~ynm.vb8bj.js → 0x_kj2or0xjhd.js} +8 -8
- package/.next/standalone/.next/static/chunks/{0pwu1.k6n6.z_.js → 0y1iobvr7xv~m.js} +1 -1
- package/.next/standalone/.next/static/chunks/0zd2r1o1p44g-.js +1 -0
- package/.next/standalone/.next/static/chunks/{0klvfpojl8tm~.js → 12d.ewy5r~pat.js} +9 -9
- package/.next/standalone/.next/static/chunks/{08q~.m6jgv9sn.js → 146n1rm5lnamr.js} +4 -4
- package/.next/standalone/.next/static/chunks/{turbopack-0bil6fvm8svjz.js → turbopack-0.efilbq57kj~.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0mhf3dmffx6er.js → turbopack-08x9ig8vdyhq4.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0jpp~562~4bxu.js → turbopack-0_aedr7s11nt..js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-05kcr-h8fwrrs.js → turbopack-0_~_uhztguxbd.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0fv_0jd3e0f3l.js → turbopack-0bxdk9j0sss8q.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0sjxa78xx2say.js → turbopack-0d0o9jpqo8w-t.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-06.-_u_xqpkdb.js → turbopack-0j0g-a-lc_b0v.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0405ne8y1rcy3.js → turbopack-0j1pbu78_jr~5.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-09ej4eskzn7ca.js → turbopack-17z5tn-6x7j7e.js} +1 -1
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/server.js +1 -1
- package/dist/server.js +14335 -527
- package/package.json +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0_6p.0e._.js +0 -3
- package/.next/standalone/.next/static/chunks/0-8qfsh177.2g.js +0 -1
- package/.next/standalone/.next/static/chunks/0g.hz7eglx5s..js +0 -1
- package/.next/standalone/.next/static/chunks/0krzfta4.iaa9.js +0 -1
- package/.next/standalone/.next/static/chunks/12z.wim1atha..js +0 -1
- package/.next/standalone/.next/static/chunks/1326-kxkkyyw7.js +0 -1
- package/.next/standalone/.next/static/chunks/149fy9~6p0m~7.js +0 -1
- /package/.next/standalone/.next/static/{m92l36SvyhaOH3kPcLxX9 → QBcppzKifu6ZXgxIb2laW}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{m92l36SvyhaOH3kPcLxX9 → QBcppzKifu6ZXgxIb2laW}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
QBcppzKifu6ZXgxIb2laW
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"pages": {
|
|
3
3
|
"/": [
|
|
4
|
-
"static/chunks/
|
|
5
|
-
"static/chunks/
|
|
6
|
-
"static/chunks/
|
|
4
|
+
"static/chunks/07tmc1fd581-v.js",
|
|
5
|
+
"static/chunks/0y1iobvr7xv~m.js",
|
|
6
|
+
"static/chunks/06wc2umsaus4g.js",
|
|
7
7
|
"static/chunks/0~qmpv1k~~-.r.js",
|
|
8
8
|
"static/chunks/0qe146f.3s0ud.js",
|
|
9
9
|
"static/chunks/12t3ws50siqw1.js",
|
|
@@ -13,25 +13,25 @@
|
|
|
13
13
|
"static/chunks/0wlz6--vu7adu.js",
|
|
14
14
|
"static/chunks/0ml5~2ty-rbv_.js",
|
|
15
15
|
"static/chunks/0yi.kp2rt4-nc.js",
|
|
16
|
-
"static/chunks/134dizutdhkgt.js",
|
|
17
|
-
"static/chunks/09wg815lxyi._.js",
|
|
18
16
|
"static/chunks/00yfl7agnve...js",
|
|
17
|
+
"static/chunks/09wg815lxyi._.js",
|
|
18
|
+
"static/chunks/134dizutdhkgt.js",
|
|
19
19
|
"static/chunks/0ti3g2b7fhm5v.js",
|
|
20
20
|
"static/chunks/05-mpg38w0a82.js",
|
|
21
|
-
"static/chunks/
|
|
22
|
-
"static/chunks/turbopack-
|
|
21
|
+
"static/chunks/0komb9eh49_ay.js",
|
|
22
|
+
"static/chunks/turbopack-0_~_uhztguxbd.js"
|
|
23
23
|
],
|
|
24
24
|
"/_app": [
|
|
25
|
-
"static/chunks/
|
|
25
|
+
"static/chunks/08mloizj8v086.js",
|
|
26
26
|
"static/chunks/08h59hstdxbn0.js",
|
|
27
|
-
"static/chunks/
|
|
27
|
+
"static/chunks/00x-ygjkfbgnz.js",
|
|
28
28
|
"static/chunks/00yfl7agnve...js",
|
|
29
29
|
"static/chunks/0yi.kp2rt4-nc.js",
|
|
30
30
|
"static/chunks/0~4_p.wm8.z1b.js",
|
|
31
31
|
"static/chunks/05-mpg38w0a82.js",
|
|
32
32
|
"static/chunks/078ug0z94g-5f.css",
|
|
33
33
|
"static/chunks/0z3gpm0o.mwwy.css",
|
|
34
|
-
"static/chunks/turbopack-
|
|
34
|
+
"static/chunks/turbopack-0.efilbq57kj~.js"
|
|
35
35
|
],
|
|
36
36
|
"/_error": [
|
|
37
37
|
"static/chunks/0~o730huopa91.js",
|
|
@@ -41,77 +41,77 @@
|
|
|
41
41
|
],
|
|
42
42
|
"/agents": [
|
|
43
43
|
"static/chunks/01jjn.wyn_ncl.js",
|
|
44
|
-
"static/chunks/
|
|
45
|
-
"static/chunks/0qbas4d_2~xdq.js",
|
|
46
|
-
"static/chunks/09ic8khns87py.js",
|
|
47
|
-
"static/chunks/0qe146f.3s0ud.js",
|
|
44
|
+
"static/chunks/0cjfef2q~d_lg.js",
|
|
48
45
|
"static/chunks/05-mpg38w0a82.js",
|
|
46
|
+
"static/chunks/0ay.h74rl2t2c.js",
|
|
47
|
+
"static/chunks/0qe146f.3s0ud.js",
|
|
48
|
+
"static/chunks/0ti3g2b7fhm5v.js",
|
|
49
49
|
"static/chunks/0-sxrfxgcu1ce.js",
|
|
50
|
-
"static/chunks/12t3ws50siqw1.js",
|
|
51
50
|
"static/chunks/06fd4gm.ayhf7.js",
|
|
51
|
+
"static/chunks/09ic8khns87py.js",
|
|
52
52
|
"static/chunks/134dizutdhkgt.js",
|
|
53
53
|
"static/chunks/0yi.kp2rt4-nc.js",
|
|
54
54
|
"static/chunks/00yfl7agnve...js",
|
|
55
|
-
"static/chunks/
|
|
55
|
+
"static/chunks/0komb9eh49_ay.js",
|
|
56
56
|
"static/chunks/09wg815lxyi._.js",
|
|
57
57
|
"static/chunks/0wlz6--vu7adu.js",
|
|
58
58
|
"static/chunks/0ml5~2ty-rbv_.js",
|
|
59
|
+
"static/chunks/12t3ws50siqw1.js",
|
|
59
60
|
"static/chunks/15aj3kd.p7zw6.js",
|
|
60
|
-
"static/chunks/
|
|
61
|
-
"static/chunks/turbopack-0sjxa78xx2say.js"
|
|
61
|
+
"static/chunks/turbopack-0_aedr7s11nt..js"
|
|
62
62
|
],
|
|
63
63
|
"/agents/[agentId]/chat": [
|
|
64
|
-
"static/chunks/
|
|
65
|
-
"static/chunks/018sw2sdk3jk5.js",
|
|
66
|
-
"static/chunks/15aj3kd.p7zw6.js",
|
|
64
|
+
"static/chunks/0fungak7h7t_u.js",
|
|
67
65
|
"static/chunks/09ic8khns87py.js",
|
|
66
|
+
"static/chunks/0ay.h74rl2t2c.js",
|
|
67
|
+
"static/chunks/12t3ws50siqw1.js",
|
|
68
68
|
"static/chunks/06fd4gm.ayhf7.js",
|
|
69
|
-
"static/chunks/
|
|
69
|
+
"static/chunks/15aj3kd.p7zw6.js",
|
|
70
70
|
"static/chunks/0ti3g2b7fhm5v.js",
|
|
71
71
|
"static/chunks/0qe146f.3s0ud.js",
|
|
72
|
-
"static/chunks/
|
|
72
|
+
"static/chunks/05-mpg38w0a82.js",
|
|
73
73
|
"static/chunks/0uwhwut9t42z..js",
|
|
74
74
|
"static/chunks/0yi.kp2rt4-nc.js",
|
|
75
|
-
"static/chunks/
|
|
75
|
+
"static/chunks/10r8rypk5fanv.js",
|
|
76
76
|
"static/chunks/0p15~kn-ue177.js",
|
|
77
77
|
"static/chunks/00yfl7agnve...js",
|
|
78
78
|
"static/chunks/09wg815lxyi._.js",
|
|
79
79
|
"static/chunks/0wlz6--vu7adu.js",
|
|
80
80
|
"static/chunks/134dizutdhkgt.js",
|
|
81
|
+
"static/chunks/0py3p~barq9qm.js",
|
|
81
82
|
"static/chunks/0-sxrfxgcu1ce.js",
|
|
82
|
-
"static/chunks/
|
|
83
|
-
"static/chunks/0krzfta4.iaa9.js",
|
|
83
|
+
"static/chunks/0komb9eh49_ay.js",
|
|
84
84
|
"static/chunks/0ml5~2ty-rbv_.js",
|
|
85
|
-
"static/chunks/turbopack-
|
|
85
|
+
"static/chunks/turbopack-17z5tn-6x7j7e.js"
|
|
86
86
|
],
|
|
87
87
|
"/agents/[agentId]/memory": [
|
|
88
88
|
"static/chunks/0mi.f1.iffvs7.js",
|
|
89
|
-
"static/chunks/
|
|
90
|
-
"static/chunks/
|
|
89
|
+
"static/chunks/0b64-twwftp.b.js",
|
|
90
|
+
"static/chunks/0ay.h74rl2t2c.js",
|
|
91
|
+
"static/chunks/05-mpg38w0a82.js",
|
|
91
92
|
"static/chunks/0~qmpv1k~~-.r.js",
|
|
92
|
-
"static/chunks/
|
|
93
|
-
"static/chunks/0ti3g2b7fhm5v.js",
|
|
93
|
+
"static/chunks/12t3ws50siqw1.js",
|
|
94
94
|
"static/chunks/10r8rypk5fanv.js",
|
|
95
95
|
"static/chunks/0py3p~barq9qm.js",
|
|
96
96
|
"static/chunks/0-sxrfxgcu1ce.js",
|
|
97
97
|
"static/chunks/06fd4gm.ayhf7.js",
|
|
98
98
|
"static/chunks/134dizutdhkgt.js",
|
|
99
99
|
"static/chunks/0wlz6--vu7adu.js",
|
|
100
|
-
"static/chunks/
|
|
101
|
-
"static/chunks/
|
|
100
|
+
"static/chunks/0ti3g2b7fhm5v.js",
|
|
101
|
+
"static/chunks/0komb9eh49_ay.js",
|
|
102
102
|
"static/chunks/00yfl7agnve...js",
|
|
103
103
|
"static/chunks/0p15~kn-ue177.js",
|
|
104
104
|
"static/chunks/0yi.kp2rt4-nc.js",
|
|
105
105
|
"static/chunks/0ml5~2ty-rbv_.js",
|
|
106
106
|
"static/chunks/0qe146f.3s0ud.js",
|
|
107
|
+
"static/chunks/09wg815lxyi._.js",
|
|
107
108
|
"static/chunks/15aj3kd.p7zw6.js",
|
|
108
|
-
"static/chunks/
|
|
109
|
-
"static/chunks/turbopack-0405ne8y1rcy3.js"
|
|
109
|
+
"static/chunks/turbopack-0j1pbu78_jr~5.js"
|
|
110
110
|
],
|
|
111
111
|
"/agents/[agentId]/workspace": [
|
|
112
112
|
"static/chunks/0kmwqchx6vxwc.js",
|
|
113
|
-
"static/chunks/
|
|
114
|
-
"static/chunks/
|
|
113
|
+
"static/chunks/0fungak7h7t_u.js",
|
|
114
|
+
"static/chunks/0ay.h74rl2t2c.js",
|
|
115
115
|
"static/chunks/0~qmpv1k~~-.r.js",
|
|
116
116
|
"static/chunks/05-mpg38w0a82.js",
|
|
117
117
|
"static/chunks/00yfl7agnve...js",
|
|
@@ -124,10 +124,10 @@
|
|
|
124
124
|
"static/chunks/09wg815lxyi._.js",
|
|
125
125
|
"static/chunks/0wlz6--vu7adu.js",
|
|
126
126
|
"static/chunks/0-sxrfxgcu1ce.js",
|
|
127
|
-
"static/chunks/
|
|
127
|
+
"static/chunks/0komb9eh49_ay.js",
|
|
128
128
|
"static/chunks/0qe146f.3s0ud.js",
|
|
129
129
|
"static/chunks/134dizutdhkgt.js",
|
|
130
|
-
"static/chunks/turbopack-
|
|
130
|
+
"static/chunks/turbopack-08x9ig8vdyhq4.js"
|
|
131
131
|
],
|
|
132
132
|
"/login": [
|
|
133
133
|
"static/chunks/14rkjvhij9msz.js",
|
|
@@ -146,25 +146,25 @@
|
|
|
146
146
|
],
|
|
147
147
|
"/reports": [
|
|
148
148
|
"static/chunks/0a0i6iubp4z.k.js",
|
|
149
|
-
"static/chunks/
|
|
150
|
-
"static/chunks/0cf.718s5_g~g.js",
|
|
151
|
-
"static/chunks/0~qmpv1k~~-.r.js",
|
|
152
|
-
"static/chunks/0ml5~2ty-rbv_.js",
|
|
149
|
+
"static/chunks/0b64-twwftp.b.js",
|
|
153
150
|
"static/chunks/12t3ws50siqw1.js",
|
|
151
|
+
"static/chunks/0ay.h74rl2t2c.js",
|
|
152
|
+
"static/chunks/15aj3kd.p7zw6.js",
|
|
153
|
+
"static/chunks/0ti3g2b7fhm5v.js",
|
|
154
154
|
"static/chunks/0qe146f.3s0ud.js",
|
|
155
155
|
"static/chunks/05-mpg38w0a82.js",
|
|
156
|
-
"static/chunks/
|
|
156
|
+
"static/chunks/0~qmpv1k~~-.r.js",
|
|
157
157
|
"static/chunks/0py3p~barq9qm.js",
|
|
158
|
-
"static/chunks/
|
|
158
|
+
"static/chunks/0ml5~2ty-rbv_.js",
|
|
159
159
|
"static/chunks/0wlz6--vu7adu.js",
|
|
160
|
-
"static/chunks/
|
|
161
|
-
"static/chunks/
|
|
160
|
+
"static/chunks/09wg815lxyi._.js",
|
|
161
|
+
"static/chunks/0hish8kae8ww1.js",
|
|
162
162
|
"static/chunks/0yi.kp2rt4-nc.js",
|
|
163
163
|
"static/chunks/00yfl7agnve...js",
|
|
164
164
|
"static/chunks/0-sxrfxgcu1ce.js",
|
|
165
165
|
"static/chunks/134dizutdhkgt.js",
|
|
166
|
-
"static/chunks/
|
|
167
|
-
"static/chunks/turbopack-
|
|
166
|
+
"static/chunks/06fd4gm.ayhf7.js",
|
|
167
|
+
"static/chunks/turbopack-0j0g-a-lc_b0v.js"
|
|
168
168
|
],
|
|
169
169
|
"/reset": [
|
|
170
170
|
"static/chunks/0_sdw~kzk-at0.js",
|
|
@@ -176,24 +176,24 @@
|
|
|
176
176
|
],
|
|
177
177
|
"/stats": [
|
|
178
178
|
"static/chunks/0kzdu-5p1onjr.js",
|
|
179
|
-
"static/chunks/
|
|
180
|
-
"static/chunks/0_roszihj6gx..js",
|
|
181
|
-
"static/chunks/0~qmpv1k~~-.r.js",
|
|
182
|
-
"static/chunks/0ti3g2b7fhm5v.js",
|
|
179
|
+
"static/chunks/0gx~s_r.d1ncl.js",
|
|
183
180
|
"static/chunks/05-mpg38w0a82.js",
|
|
184
|
-
"static/chunks/
|
|
181
|
+
"static/chunks/0ay.h74rl2t2c.js",
|
|
185
182
|
"static/chunks/12t3ws50siqw1.js",
|
|
183
|
+
"static/chunks/0qe146f.3s0ud.js",
|
|
184
|
+
"static/chunks/0-sxrfxgcu1ce.js",
|
|
186
185
|
"static/chunks/06fd4gm.ayhf7.js",
|
|
187
|
-
"static/chunks/
|
|
186
|
+
"static/chunks/0~qmpv1k~~-.r.js",
|
|
187
|
+
"static/chunks/0ti3g2b7fhm5v.js",
|
|
188
188
|
"static/chunks/00yfl7agnve...js",
|
|
189
189
|
"static/chunks/0wlz6--vu7adu.js",
|
|
190
|
-
"static/chunks/
|
|
190
|
+
"static/chunks/09wg815lxyi._.js",
|
|
191
191
|
"static/chunks/134dizutdhkgt.js",
|
|
192
192
|
"static/chunks/0ml5~2ty-rbv_.js",
|
|
193
|
-
"static/chunks/
|
|
193
|
+
"static/chunks/0b8ftzkop9kc0.js",
|
|
194
194
|
"static/chunks/15aj3kd.p7zw6.js",
|
|
195
195
|
"static/chunks/0yi.kp2rt4-nc.js",
|
|
196
|
-
"static/chunks/turbopack-
|
|
196
|
+
"static/chunks/turbopack-0bxdk9j0sss8q.js"
|
|
197
197
|
],
|
|
198
198
|
"/tools-required": [
|
|
199
199
|
"static/chunks/0kf8xkvr3218u.js",
|
|
@@ -208,32 +208,32 @@
|
|
|
208
208
|
],
|
|
209
209
|
"/webview": [
|
|
210
210
|
"static/chunks/0c8._01-id.jr.js",
|
|
211
|
-
"static/chunks/
|
|
212
|
-
"static/chunks/
|
|
213
|
-
"static/chunks/
|
|
211
|
+
"static/chunks/0fungak7h7t_u.js",
|
|
212
|
+
"static/chunks/0ay.h74rl2t2c.js",
|
|
213
|
+
"static/chunks/0~qmpv1k~~-.r.js",
|
|
214
214
|
"static/chunks/05-mpg38w0a82.js",
|
|
215
|
-
"static/chunks/0ml5~2ty-rbv_.js",
|
|
216
215
|
"static/chunks/0ti3g2b7fhm5v.js",
|
|
216
|
+
"static/chunks/0-sxrfxgcu1ce.js",
|
|
217
|
+
"static/chunks/12t3ws50siqw1.js",
|
|
217
218
|
"static/chunks/06fd4gm.ayhf7.js",
|
|
218
|
-
"static/chunks/0~qmpv1k~~-.r.js",
|
|
219
219
|
"static/chunks/15aj3kd.p7zw6.js",
|
|
220
220
|
"static/chunks/00yfl7agnve...js",
|
|
221
|
-
"static/chunks/
|
|
222
|
-
"static/chunks/
|
|
221
|
+
"static/chunks/0komb9eh49_ay.js",
|
|
222
|
+
"static/chunks/0ml5~2ty-rbv_.js",
|
|
223
223
|
"static/chunks/09wg815lxyi._.js",
|
|
224
224
|
"static/chunks/0wlz6--vu7adu.js",
|
|
225
225
|
"static/chunks/134dizutdhkgt.js",
|
|
226
|
-
"static/chunks/12t3ws50siqw1.js",
|
|
227
226
|
"static/chunks/0qe146f.3s0ud.js",
|
|
228
|
-
"static/chunks/
|
|
227
|
+
"static/chunks/0yi.kp2rt4-nc.js",
|
|
228
|
+
"static/chunks/turbopack-0d0o9jpqo8w-t.js"
|
|
229
229
|
]
|
|
230
230
|
},
|
|
231
231
|
"devFiles": [],
|
|
232
232
|
"polyfillFiles": [],
|
|
233
233
|
"lowPriorityFiles": [
|
|
234
|
-
"static/
|
|
235
|
-
"static/
|
|
236
|
-
"static/
|
|
234
|
+
"static/QBcppzKifu6ZXgxIb2laW/_buildManifest.js",
|
|
235
|
+
"static/QBcppzKifu6ZXgxIb2laW/_ssgManifest.js",
|
|
236
|
+
"static/QBcppzKifu6ZXgxIb2laW/_clientMiddlewareManifest.js"
|
|
237
237
|
],
|
|
238
238
|
"rootMainFiles": []
|
|
239
239
|
}
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
"routes": {},
|
|
4
4
|
"dynamicRoutes": {},
|
|
5
5
|
"preview": {
|
|
6
|
-
"previewModeId": "
|
|
7
|
-
"previewModeSigningKey": "
|
|
8
|
-
"previewModeEncryptionKey": "
|
|
6
|
+
"previewModeId": "c64789096eb78b3870e653780ece9913",
|
|
7
|
+
"previewModeSigningKey": "512dedfb5ad2fd55780508b1e2860a4aa1d7b2f11bd3bfbb539460dda51fcc94",
|
|
8
|
+
"previewModeEncryptionKey": "42c66696856d7387d52a65f665d6de5aed2a5d6b842d51c56e52a8bd8926db3c"
|
|
9
9
|
},
|
|
10
10
|
"notFoundRoutes": []
|
|
11
11
|
}
|
|
@@ -608,59 +608,59 @@
|
|
|
608
608
|
"dataRoutes": [
|
|
609
609
|
{
|
|
610
610
|
"page": "/",
|
|
611
|
-
"dataRouteRegex": "^/_next/data/
|
|
611
|
+
"dataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/index\\.json$"
|
|
612
612
|
},
|
|
613
613
|
{
|
|
614
614
|
"page": "/agents",
|
|
615
|
-
"dataRouteRegex": "^/_next/data/
|
|
615
|
+
"dataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/agents\\.json$"
|
|
616
616
|
},
|
|
617
617
|
{
|
|
618
618
|
"page": "/agents/[agentId]/chat",
|
|
619
619
|
"routeKeys": {
|
|
620
620
|
"nxtPagentId": "nxtPagentId"
|
|
621
621
|
},
|
|
622
|
-
"dataRouteRegex": "^/_next/data/
|
|
623
|
-
"namedDataRouteRegex": "^/_next/data/
|
|
622
|
+
"dataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/agents/([^/]+?)/chat\\.json$",
|
|
623
|
+
"namedDataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/agents/(?<nxtPagentId>[^/]+?)/chat\\.json$"
|
|
624
624
|
},
|
|
625
625
|
{
|
|
626
626
|
"page": "/agents/[agentId]/memory",
|
|
627
627
|
"routeKeys": {
|
|
628
628
|
"nxtPagentId": "nxtPagentId"
|
|
629
629
|
},
|
|
630
|
-
"dataRouteRegex": "^/_next/data/
|
|
631
|
-
"namedDataRouteRegex": "^/_next/data/
|
|
630
|
+
"dataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/agents/([^/]+?)/memory\\.json$",
|
|
631
|
+
"namedDataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/agents/(?<nxtPagentId>[^/]+?)/memory\\.json$"
|
|
632
632
|
},
|
|
633
633
|
{
|
|
634
634
|
"page": "/agents/[agentId]/workspace",
|
|
635
635
|
"routeKeys": {
|
|
636
636
|
"nxtPagentId": "nxtPagentId"
|
|
637
637
|
},
|
|
638
|
-
"dataRouteRegex": "^/_next/data/
|
|
639
|
-
"namedDataRouteRegex": "^/_next/data/
|
|
638
|
+
"dataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/agents/([^/]+?)/workspace\\.json$",
|
|
639
|
+
"namedDataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/agents/(?<nxtPagentId>[^/]+?)/workspace\\.json$"
|
|
640
640
|
},
|
|
641
641
|
{
|
|
642
642
|
"page": "/login",
|
|
643
|
-
"dataRouteRegex": "^/_next/data/
|
|
643
|
+
"dataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/login\\.json$"
|
|
644
644
|
},
|
|
645
645
|
{
|
|
646
646
|
"page": "/reports",
|
|
647
|
-
"dataRouteRegex": "^/_next/data/
|
|
647
|
+
"dataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/reports\\.json$"
|
|
648
648
|
},
|
|
649
649
|
{
|
|
650
650
|
"page": "/reset",
|
|
651
|
-
"dataRouteRegex": "^/_next/data/
|
|
651
|
+
"dataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/reset\\.json$"
|
|
652
652
|
},
|
|
653
653
|
{
|
|
654
654
|
"page": "/stats",
|
|
655
|
-
"dataRouteRegex": "^/_next/data/
|
|
655
|
+
"dataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/stats\\.json$"
|
|
656
656
|
},
|
|
657
657
|
{
|
|
658
658
|
"page": "/tools-required",
|
|
659
|
-
"dataRouteRegex": "^/_next/data/
|
|
659
|
+
"dataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/tools-required\\.json$"
|
|
660
660
|
},
|
|
661
661
|
{
|
|
662
662
|
"page": "/webview",
|
|
663
|
-
"dataRouteRegex": "^/_next/data/
|
|
663
|
+
"dataRouteRegex": "^/_next/data/QBcppzKifu6ZXgxIb2laW/webview\\.json$"
|
|
664
664
|
}
|
|
665
665
|
],
|
|
666
666
|
"i18n": {
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[666680,(a,b,c)=>{b.exports=a.x("node:crypto",()=>require("node:crypto"))},688947,(a,b,c)=>{b.exports=a.x("stream",()=>require("stream"))},406461,(a,b,c)=>{b.exports=a.x("zlib",()=>require("zlib"))},522734,(a,b,c)=>{b.exports=a.x("fs",()=>require("fs"))},508171,(a,b,c)=>{b.exports=a.x("react/jsx-runtime",()=>require("react/jsx-runtime"))},127669,(a,b,c)=>{b.exports=a.x("react",()=>require("react"))},456195,(a,b,c)=>{b.exports=a.x("react-dom",()=>require("react-dom"))},398544,(a,b,c)=>{a.e,b.exports=function(){"use strict";var a="millisecond",b="second",c="minute",d="hour",e="week",f="month",g="quarter",h="year",i="date",j="Invalid Date",k=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,l=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,m=function(a,b,c){var d=String(a);return!d||d.length>=b?a:""+Array(b+1-d.length).join(c)+a},n="en",o={};o[n]={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(a){var b=["th","st","nd","rd"],c=a%100;return"["+a+(b[(c-20)%10]||b[c]||b[0])+"]"}};var p="$isDayjsObject",q=function(a){return a instanceof u||!(!a||!a[p])},r=function a(b,c,d){var e;if(!b)return n;if("string"==typeof b){var f=b.toLowerCase();o[f]&&(e=f),c&&(o[f]=c,e=f);var g=b.split("-");if(!e&&g.length>1)return a(g[0])}else{var h=b.name;o[h]=b,e=h}return!d&&e&&(n=e),e||!d&&n},s=function(a,b){if(q(a))return a.clone();var c="object"==typeof b?b:{};return c.date=a,c.args=arguments,new u(c)},t={s:m,z:function(a){var b=-a.utcOffset(),c=Math.abs(b);return(b<=0?"+":"-")+m(Math.floor(c/60),2,"0")+":"+m(c%60,2,"0")},m:function a(b,c){if(b.date()<c.date())return-a(c,b);var d=12*(c.year()-b.year())+(c.month()-b.month()),e=b.clone().add(d,f),g=c-e<0,h=b.clone().add(d+(g?-1:1),f);return+(-(d+(c-e)/(g?e-h:h-e))||0)},a:function(a){return a<0?Math.ceil(a)||0:Math.floor(a)},p:function(j){return({M:f,y:h,w:e,d:"day",D:i,h:d,m:c,s:b,ms:a,Q:g})[j]||String(j||"").toLowerCase().replace(/s$/,"")},u:function(a){return void 0===a}};t.l=r,t.i=q,t.w=function(a,b){return s(a,{locale:b.$L,utc:b.$u,x:b.$x,$offset:b.$offset})};var u=function(){function m(a){this.$L=r(a.locale,null,!0),this.parse(a),this.$x=this.$x||a.x||{},this[p]=!0}var n=m.prototype;return n.parse=function(a){this.$d=function(a){var b=a.date,c=a.utc;if(null===b)return new Date(NaN);if(t.u(b))return new Date;if(b instanceof Date)return new Date(b);if("string"==typeof b&&!/Z$/i.test(b)){var d=b.match(k);if(d){var e=d[2]-1||0,f=(d[7]||"0").substring(0,3);return c?new Date(Date.UTC(d[1],e,d[3]||1,d[4]||0,d[5]||0,d[6]||0,f)):new Date(d[1],e,d[3]||1,d[4]||0,d[5]||0,d[6]||0,f)}}return new Date(b)}(a),this.init()},n.init=function(){var a=this.$d;this.$y=a.getFullYear(),this.$M=a.getMonth(),this.$D=a.getDate(),this.$W=a.getDay(),this.$H=a.getHours(),this.$m=a.getMinutes(),this.$s=a.getSeconds(),this.$ms=a.getMilliseconds()},n.$utils=function(){return t},n.isValid=function(){return this.$d.toString()!==j},n.isSame=function(a,b){var c=s(a);return this.startOf(b)<=c&&c<=this.endOf(b)},n.isAfter=function(a,b){return s(a)<this.startOf(b)},n.isBefore=function(a,b){return this.endOf(b)<s(a)},n.$g=function(a,b,c){return t.u(a)?this[b]:this.set(c,a)},n.unix=function(){return Math.floor(this.valueOf()/1e3)},n.valueOf=function(){return this.$d.getTime()},n.startOf=function(a,g){var j=this,k=!!t.u(g)||g,l=t.p(a),m=function(a,b){var c=t.w(j.$u?Date.UTC(j.$y,b,a):new Date(j.$y,b,a),j);return k?c:c.endOf("day")},n=function(a,b){return t.w(j.toDate()[a].apply(j.toDate("s"),(k?[0,0,0,0]:[23,59,59,999]).slice(b)),j)},o=this.$W,p=this.$M,q=this.$D,r="set"+(this.$u?"UTC":"");switch(l){case h:return k?m(1,0):m(31,11);case f:return k?m(1,p):m(0,p+1);case e:var s=this.$locale().weekStart||0,u=(o<s?o+7:o)-s;return m(k?q-u:q+(6-u),p);case"day":case i:return n(r+"Hours",0);case d:return n(r+"Minutes",1);case c:return n(r+"Seconds",2);case b:return n(r+"Milliseconds",3);default:return this.clone()}},n.endOf=function(a){return this.startOf(a,!1)},n.$set=function(e,g){var j,k=t.p(e),l="set"+(this.$u?"UTC":""),m=((j={}).day=l+"Date",j[i]=l+"Date",j[f]=l+"Month",j[h]=l+"FullYear",j[d]=l+"Hours",j[c]=l+"Minutes",j[b]=l+"Seconds",j[a]=l+"Milliseconds",j)[k],n="day"===k?this.$D+(g-this.$W):g;if(k===f||k===h){var o=this.clone().set(i,1);o.$d[m](n),o.init(),this.$d=o.set(i,Math.min(this.$D,o.daysInMonth())).$d}else m&&this.$d[m](n);return this.init(),this},n.set=function(a,b){return this.clone().$set(a,b)},n.get=function(a){return this[t.p(a)]()},n.add=function(a,g){var i,j=this;a=Number(a);var k=t.p(g),l=function(b){var c=s(j);return t.w(c.date(c.date()+Math.round(b*a)),j)};if(k===f)return this.set(f,this.$M+a);if(k===h)return this.set(h,this.$y+a);if("day"===k)return l(1);if(k===e)return l(7);var m=((i={})[c]=6e4,i[d]=36e5,i[b]=1e3,i)[k]||1,n=this.$d.getTime()+a*m;return t.w(n,this)},n.subtract=function(a,b){return this.add(-1*a,b)},n.format=function(a){var b=this,c=this.$locale();if(!this.isValid())return c.invalidDate||j;var d=a||"YYYY-MM-DDTHH:mm:ssZ",e=t.z(this),f=this.$H,g=this.$m,h=this.$M,i=c.weekdays,k=c.months,m=c.meridiem,n=function(a,c,e,f){return a&&(a[c]||a(b,d))||e[c].slice(0,f)},o=function(a){return t.s(f%12||12,a,"0")},p=m||function(a,b,c){var d=a<12?"AM":"PM";return c?d.toLowerCase():d};return d.replace(l,function(a,d){return d||function(a){switch(a){case"YY":return String(b.$y).slice(-2);case"YYYY":return t.s(b.$y,4,"0");case"M":return h+1;case"MM":return t.s(h+1,2,"0");case"MMM":return n(c.monthsShort,h,k,3);case"MMMM":return n(k,h);case"D":return b.$D;case"DD":return t.s(b.$D,2,"0");case"d":return String(b.$W);case"dd":return n(c.weekdaysMin,b.$W,i,2);case"ddd":return n(c.weekdaysShort,b.$W,i,3);case"dddd":return i[b.$W];case"H":return String(f);case"HH":return t.s(f,2,"0");case"h":return o(1);case"hh":return o(2);case"a":return p(f,g,!0);case"A":return p(f,g,!1);case"m":return String(g);case"mm":return t.s(g,2,"0");case"s":return String(b.$s);case"ss":return t.s(b.$s,2,"0");case"SSS":return t.s(b.$ms,3,"0");case"Z":return e}return null}(a)||e.replace(":","")})},n.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},n.diff=function(a,i,j){var k,l=this,m=t.p(i),n=s(a),o=(n.utcOffset()-this.utcOffset())*6e4,p=this-n,q=function(){return t.m(l,n)};switch(m){case h:k=q()/12;break;case f:k=q();break;case g:k=q()/3;break;case e:k=(p-o)/6048e5;break;case"day":k=(p-o)/864e5;break;case d:k=p/36e5;break;case c:k=p/6e4;break;case b:k=p/1e3;break;default:k=p}return j?k:t.a(k)},n.daysInMonth=function(){return this.endOf(f).$D},n.$locale=function(){return o[this.$L]},n.locale=function(a,b){if(!a)return this.$L;var c=this.clone(),d=r(a,b,!0);return d&&(c.$L=d),c},n.clone=function(){return t.w(this.$d,this)},n.toDate=function(){return new Date(this.valueOf())},n.toJSON=function(){return this.isValid()?this.toISOString():null},n.toISOString=function(){return this.$d.toISOString()},n.toString=function(){return this.$d.toUTCString()},m}(),v=u.prototype;return s.prototype=v,[["$ms",a],["$s",b],["$m",c],["$H",d],["$W","day"],["$M",f],["$y",h],["$D",i]].forEach(function(a){v[a[1]]=function(b){return this.$g(b,a[0],a[1])}}),s.extend=function(a,b){return a.$i||(a(b,u,s),a.$i=!0),s},s.locale=r,s.isDayjs=q,s.unix=function(a){return s(1e3*a)},s.en=o[n],s.Ls=o,s.p={},s}()},986013,a=>{"use strict";let b,c;var d=a.i(666680);a.s(["nanoid",0,function(a=21){var e;e=a|=0,!b||b.length<e?(b=Buffer.allocUnsafe(128*e),d.webcrypto.getRandomValues(b),c=0):c+e>b.length&&(d.webcrypto.getRandomValues(b),c=0),c+=e;let f="";for(let d=c-a;d<c;d++)f+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63&b[d]];return f}],986013)},144784,a=>{"use strict";let b=a=>"pane"===a.type?[a]:[...b(a.children[0]),...b(a.children[1])],c=(a,b)=>"pane"===a.type?a.id===b?a:null:c(a.children[0],b)||c(a.children[1],b),d=a=>"pane"===a.type?a.id:d(a.children[0]),e=a=>"pane"===a.type?a.id:e(a.children[1]),f=(a,b,c)=>"pane"===a.type?a.id===b?c:a:{...a,children:[f(a.children[0],b,c),f(a.children[1],b,c)]},g=(a,b)=>{if("pane"===a.type)return null;let[c,d]=a.children;if("pane"===c.type&&c.id===b)return d;if("pane"===d.type&&d.id===b)return c;let e=g(c,b);if(e)return{...a,children:[e,d]};let f=g(d,b);return f?{...a,children:[c,f]}:null},h=(a,b)=>{if("pane"===a.type)return null;let[c,f]=a.children;return"pane"===c.type&&c.id===b?d(f):"pane"===f.type&&f.id===b?e(c):h(c,b)||h(f,b)},i=(a,b,c)=>{if("split"!==a.type)return a;if(0===b.length)return{...a,ratio:c};let[d,...e]=b,f=[a.children[0],a.children[1]];return f[d]=i(a.children[d],e,c),{...a,children:f}},j=(a,b)=>"pane"===a.type||a.orientation!==b?1:j(a.children[0],b)+j(a.children[1],b),k=a=>{if("pane"===a.type)return!0;let b=j(a.children[0],a.orientation),c=j(a.children[1],a.orientation);return!(Math.abs(a.ratio-b/(b+c)*100)>1)&&k(a.children[0])&&k(a.children[1])},l=a=>{if("pane"===a.type)return a;let b=j(a.children[0],a.orientation),c=Math.round(b/(b+j(a.children[1],a.orientation))*1e4)/100;return{...a,ratio:c,children:[l(a.children[0]),l(a.children[1])]}},m=(a,b,c)=>{if("pane"===a.type)return a.id===b?c(a):a;let d=m(a.children[0],b,c);if(d!==a.children[0])return{...a,children:[d,a.children[1]]};let e=m(a.children[1],b,c);return e!==a.children[1]?{...a,children:[a.children[0],e]}:a};a.s(["collectAllTabs",0,a=>b(a).flatMap(a=>a.tabs),"collectPanes",0,b,"equalizeNode",0,l,"findAdjacentPaneInDirection",0,(a,b,c)=>{let f=[],g=a=>{if("pane"===a.type)return a.id===b;for(let b=0;b<2;b++){if(f.push({node:a,childIndex:b}),g(a.children[b]))return!0;f.pop()}return!1};if(!g(a))return null;let h="left"===c||"right"===c?"horizontal":"vertical",i=+("left"===c||"up"===c);for(let a=f.length-1;a>=0;a--){let{node:b,childIndex:g}=f[a];if("split"===b.type&&b.orientation===h&&g===i){let a=b.children[1-i];return"left"===c||"up"===c?e(a):d(a)}}return null},"findPane",0,c,"getFirstPaneId",0,d,"isEqualized",0,k,"removePaneWithFocus",0,(a,c)=>{let d=h(a.root,c),e=g(a.root,c);e&&(a.root=e),a.activePaneId===c&&(a.activePaneId=d??b(a.root)[0]?.id??null)},"replacePane",0,f,"updatePaneInTree",0,m,"updateRatioAtPath",0,i])},721043,a=>{"use strict";a.s(["default",0,!1])},4873,a=>{"use strict";var b=a.i(127669);let c=a=>{let b,c=new Set,d=(a,d)=>{let e="function"==typeof a?a(b):a;if(!Object.is(e,b)){let a=b;b=(null!=d?d:"object"!=typeof e||null===e)?e:Object.assign({},b,e),c.forEach(c=>c(b,a))}},e=()=>b,f={setState:d,getState:e,getInitialState:()=>g,subscribe:a=>(c.add(a),()=>c.delete(a))},g=b=a(d,e,f);return f},d=a=>{let d=a?c(a):c,e=a=>(function(a,c=a=>a){let d=b.default.useSyncExternalStore(a.subscribe,b.default.useCallback(()=>c(a.getState()),[a,c]),b.default.useCallback(()=>c(a.getInitialState()),[a,c]));return b.default.useDebugValue(d),d})(d,a);return Object.assign(e,d),e};a.s(["create",0,a=>a?d(a):d],4873)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__12~vy9f._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[760644,a=>{"use strict";var b=a.i(4873);let c={terminalConnected:!1,claudeStatus:"unknown",claudeStatusCheckedAt:0,cliState:"inactive",isTimelineLoading:!0,isRestarting:!1,isResuming:!1,workspaceId:""},d=(a,b,c)=>{let d=a[b];return d?{...a,[b]:{...d,...c}}:a},e=(0,b.create)(a=>({tabs:{},tabOrders:{},statusWsConnected:!1,initTab:(b,d)=>a(a=>{let e=a.tabs[b],f={...c,...e,...d};return e?.cliState==="ready-for-review"&&"ready-for-review"!==f.cliState&&(f.cliState="ready-for-review",f.readyForReviewAt=e.readyForReviewAt),{tabs:{...a.tabs,[b]:f}}}),removeTab:b=>a(a=>{let{[b]:c,...d}=a.tabs;return{tabs:d}}),setTerminalConnected:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.terminalConnected!==c?{tabs:d(a.tabs,b,{terminalConnected:c})}:a}),setClaudeStatus:(b,c,e)=>a(a=>{let f=a.tabs[b];if(!f||f.claudeStatusCheckedAt>e||f.claudeStatus===c||"running"===f.claudeStatus&&"starting"===c)return a;let g={claudeStatus:c,claudeStatusCheckedAt:e};return("running"===f.claudeStatus||"starting"===f.claudeStatus)&&"running"!==c&&"starting"!==c&&f.isResuming&&(g.isResuming=!1),{tabs:d(a.tabs,b,g)}}),setTimelineLoading:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.isTimelineLoading!==c?{tabs:d(a.tabs,b,{isTimelineLoading:c})}:a}),setRestarting:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.isRestarting!==c?{tabs:d(a.tabs,b,{isRestarting:c})}:a}),cancelTab:b=>a(a=>{let c=a.tabs[b];return c&&"cancelled"!==c.cliState?{tabs:d(a.tabs,b,{cliState:"cancelled",localUpdatedAt:Date.now()})}:a}),dismissTab:b=>a(a=>{let c=a.tabs[b];return c&&"ready-for-review"===c.cliState?{tabs:d(a.tabs,b,{cliState:"idle",dismissedAt:Date.now()})}:a}),setResuming:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.isResuming!==c?{tabs:d(a.tabs,b,{isResuming:c})}:a}),setWorkspaceId:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.workspaceId!==c?{tabs:d(a.tabs,b,{workspaceId:c})}:a}),setPanelType:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.panelType!==c?{tabs:d(a.tabs,b,{panelType:c})}:a}),setCurrentProcess:(b,c)=>a(a=>{let e=a.tabs[b];if(!e)return a;let f=c??void 0;return e.currentProcess===f?a:{tabs:d(a.tabs,b,{currentProcess:f,localUpdatedAt:Date.now()})}}),setTabOrder:(b,c)=>a(a=>{let d=a.tabOrders[b];return d&&d.length===c.length&&d.every((a,b)=>a===c[b])?a:{tabOrders:{...a.tabOrders,[b]:c}}}),setStatusWsConnected:b=>a({statusWsConnected:b}),syncAllFromServer:b=>a(a=>{let d=Date.now(),e={};for(let[f,g]of Object.entries(b)){let b=a.tabs[f];if(b?.cliState==="cancelled"){e[f]=b;continue}b?.localUpdatedAt&&d-b.localUpdatedAt<3e4?e[f]={...b,cliState:g.cliState,workspaceId:g.workspaceId,tabName:g.tabName,terminalStatus:g.terminalStatus,listeningPorts:g.listeningPorts,claudeSummary:g.claudeSummary,lastUserMessage:g.lastUserMessage,lastAssistantMessage:g.lastAssistantMessage,currentAction:g.currentAction,readyForReviewAt:g.readyForReviewAt,busySince:g.busySince,dismissedAt:g.dismissedAt,claudeSessionId:g.claudeSessionId,compactingSince:g.compactingSince,lastEvent:g.lastEvent,eventSeq:g.eventSeq}:b?e[f]={...b,cliState:g.cliState,workspaceId:g.workspaceId,tabName:g.tabName,panelType:g.panelType??b.panelType,terminalStatus:g.terminalStatus,listeningPorts:g.listeningPorts,currentProcess:g.currentProcess,claudeSummary:g.claudeSummary,lastUserMessage:g.lastUserMessage,lastAssistantMessage:g.lastAssistantMessage,currentAction:g.currentAction,readyForReviewAt:g.readyForReviewAt,busySince:g.busySince,dismissedAt:g.dismissedAt,claudeSessionId:g.claudeSessionId,compactingSince:g.compactingSince,lastEvent:g.lastEvent,eventSeq:g.eventSeq}:e[f]={...c,cliState:g.cliState,workspaceId:g.workspaceId,tabName:g.tabName,panelType:g.panelType,terminalStatus:g.terminalStatus,listeningPorts:g.listeningPorts,currentProcess:g.currentProcess,claudeSummary:g.claudeSummary,lastUserMessage:g.lastUserMessage,lastAssistantMessage:g.lastAssistantMessage,currentAction:g.currentAction,readyForReviewAt:g.readyForReviewAt,busySince:g.busySince,dismissedAt:g.dismissedAt,claudeSessionId:g.claudeSessionId,compactingSince:g.compactingSince,lastEvent:g.lastEvent,eventSeq:g.eventSeq}}for(let[b,c]of Object.entries(a.tabs))e[b]||(e[b]=c);return{tabs:e}}),updateFromServer:(b,e)=>a(a=>{if(null===e.cliState){let{[b]:c,...d}=a.tabs;return{tabs:d}}let f=a.tabs[b];if(f){if("cancelled"===f.cliState)return a;let c=void 0!==e.eventSeq&&(void 0===f.eventSeq||e.eventSeq>=f.eventSeq)?{lastEvent:e.lastEvent,eventSeq:e.eventSeq}:{};return{tabs:d(a.tabs,b,{cliState:e.cliState,workspaceId:e.workspaceId,tabName:e.tabName,panelType:e.panelType??f.panelType,terminalStatus:e.terminalStatus,listeningPorts:e.listeningPorts,currentProcess:e.currentProcess,claudeSummary:e.claudeSummary,lastUserMessage:e.lastUserMessage,lastAssistantMessage:e.lastAssistantMessage,currentAction:e.currentAction,readyForReviewAt:e.readyForReviewAt,busySince:e.busySince,dismissedAt:e.dismissedAt,claudeSessionId:e.claudeSessionId,compactingSince:e.compactingSince,...c})}}return{tabs:{...a.tabs,[b]:{...c,cliState:e.cliState,workspaceId:e.workspaceId,tabName:e.tabName,panelType:e.panelType,terminalStatus:e.terminalStatus,listeningPorts:e.listeningPorts,currentProcess:e.currentProcess,claudeSummary:e.claudeSummary,lastUserMessage:e.lastUserMessage,lastAssistantMessage:e.lastAssistantMessage,readyForReviewAt:e.readyForReviewAt,busySince:e.busySince,dismissedAt:e.dismissedAt,claudeSessionId:e.claudeSessionId,compactingSince:e.compactingSince,lastEvent:e.lastEvent,eventSeq:e.eventSeq}}}}),applyHookEvent:(b,c)=>a(a=>{let e=a.tabs[b];return!e||void 0!==e.eventSeq&&c.seq<=e.eventSeq?a:{tabs:d(a.tabs,b,{lastEvent:c,eventSeq:c.seq})}})}));a.s(["default",0,e,"isCliIdle",0,a=>"idle"===a||"ready-for-review"===a,"selectGlobalStatus",0,a=>{let b=0,c=0;for(let d of Object.values(a))"busy"===d.cliState?b++:("ready-for-review"===d.cliState||"needs-input"===d.cliState)&&c++;return{busyCount:b,attentionCount:c}},"selectSessionView",0,(a,b)=>{let c=a[b];return c?c.isRestarting?"restarting":"not-installed"===c.claudeStatus?"not-installed":"unknown"===c.claudeStatus||"starting"===c.claudeStatus?"loading":"running"===c.claudeStatus?c.isTimelineLoading?"loading":"timeline":c.isResuming||c.isTimelineLoading?"loading":"inactive":"loading"},"selectTabDisplayStatus",0,(a,b)=>{let c=a[b];return c&&"inactive"!==c.cliState?"busy"===c.cliState?"busy":"ready-for-review"===c.cliState?"ready-for-review":"needs-input"===c.cliState?"needs-input":"unknown"===c.cliState?"unknown":"idle":"idle"},"selectWorkspacePortsLabel",0,(a,b)=>{let c=new Set;for(let d of Object.values(a))if(d.workspaceId===b&&d.listeningPorts)for(let a of d.listeningPorts)c.add(a);return 0===c.size?"":":"+[...c].sort((a,b)=>a-b).join(", :")}])},484682,a=>{"use strict";var b=a.i(127669);let c=(a,b)=>{let c=a instanceof Map?a:new Map(a.entries()),d=b instanceof Map?b:new Map(b.entries());if(c.size!==d.size)return!1;for(let[a,b]of c)if(!d.has(a)||!Object.is(b,d.get(a)))return!1;return!0};a.s(["useShallow",0,function(a){let d=b.default.useRef(void 0);return b=>{let e=a(b);return!function(a,b){if(Object.is(a,b))return!0;if("object"!=typeof a||null===a||"object"!=typeof b||null===b||Object.getPrototypeOf(a)!==Object.getPrototypeOf(b))return!1;if(Symbol.iterator in a&&Symbol.iterator in b){if("entries"in a&&"entries"in b)return c(a,b);let d=a[Symbol.iterator](),e=b[Symbol.iterator](),f=d.next(),g=e.next();for(;!f.done&&!g.done;){if(!Object.is(f.value,g.value))return!1;f=d.next(),g=e.next()}return!!f.done&&!!g.done}return c({entries:()=>Object.entries(a)},{entries:()=>Object.entries(b)})}(d.current,e)?d.current=e:d.current}}],484682)},959709,912251,a=>{"use strict";var b=a.i(127669),c=a.i(510414),d=a.i(892209),e=a.i(760644);let f=new Set(["/new","/clear"]),g=a=>`pt-input-draft:${a}`,h=a=>{try{localStorage.removeItem(g(a))}catch{}};a.s(["clearInputDraft",0,h,"default",0,(a,i,j,k)=>{let l=k?.tabId,[m,n]=(0,b.useState)(()=>l?(a=>{try{return localStorage.getItem(g(a))??""}catch{return""}})(l):""),o=(0,b.useRef)(null),p=(0,b.useMemo)(()=>(0,e.isCliIdle)(a)||"unknown"===a?"input":"busy"===a||"needs-input"===a?"interrupt":"disabled",[a]),q=k?.onRestartSession,r=k?.onMessageSent,s=(0,b.useRef)(null);(0,b.useEffect)(()=>{if(l)return s.current&&clearTimeout(s.current),s.current=setTimeout(()=>((a,b)=>{try{b?localStorage.setItem(g(a),b):localStorage.removeItem(g(a))}catch{}})(l,m),300),()=>{s.current&&clearTimeout(s.current)}},[l,m]);let t=(0,b.useCallback)(()=>{if("disabled"===p)return void c.toast.error("Claude Code가 실행 중이 아닙니다");if(!j)return void c.toast.error((0,d.t)("connection","terminalDisconnected"));if(""!==m.trim()){if(f.has(m.trim().toLowerCase())){q?.(),n(""),l&&h(l);return}m.includes("\n")?(i(`\x1b[200~${m}\x1b[201~\r`),setTimeout(()=>i("\r"),500)):(i(m),setTimeout(()=>i("\r"),50)),m.trim().startsWith("/")||r?.(m.trim()),n(""),l&&h(l)}},[p,m,i,j,q,r,l]),u=(0,b.useCallback)(()=>{j?i("\x1b\x1b"):c.toast.error((0,d.t)("connection","terminalDisconnected"))},[i,j]),v=(0,b.useCallback)(()=>{let a=o.current;if(!a)return;a.focus();let b=a.value.length;a.setSelectionRange(b,b)},[]),[w,x]=(0,b.useState)(p);w!==p&&(x(p),"disabled"===p&&n(""));let y="disabled"!==p&&j;return{value:m,setValue:n,mode:p,canSend:y,send:t,interrupt:u,textareaRef:o,focusInput:v}}],959709);var i=a.i(4873);let j=[],k=!0,l=a=>{},m=a=>{fetch("/api/workspace/active",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({activeWorkspaceId:a})}).catch(()=>{})},n=(a,b)=>b&&a.some(a=>a.id===b)?b:a[0]?.id??null,o=a=>{fetch("/api/workspace/active",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}).catch(a=>{console.log(`[workspace-store] active update failed: ${a instanceof Error?a.message:a}`)})},p=(0,i.create)((a,b)=>({workspaces:j,activeWorkspaceId:j.length>0?n(j):null,sidebarCollapsed:!1,sidebarWidth:240,sidebarTab:"workspace",isLoading:k,error:null,hydrate:b=>{let c=n(b.workspaces,b.activeWorkspaceId);l(c),c&&m(c),a({workspaces:b.workspaces,activeWorkspaceId:c,sidebarCollapsed:b.sidebarCollapsed,sidebarWidth:b.sidebarWidth,isLoading:!1,error:null})},fetchWorkspaces:async()=>{a({isLoading:!0,error:null});try{let b=await fetch("/api/workspace");if(!b.ok)throw Error();let c=await b.json(),d=n(c.workspaces,c.activeWorkspaceId);l(d),a({workspaces:c.workspaces,activeWorkspaceId:d,sidebarCollapsed:c.sidebarCollapsed??!1,sidebarWidth:c.sidebarWidth??240,isLoading:!1})}catch{a({error:(0,d.t)("workspace","fetchError"),isLoading:!1})}},syncWorkspaces:async()=>{try{let c=await fetch("/api/workspace");if(!c.ok)return;let d=await c.json(),e=b().workspaces;if(JSON.stringify(e)===JSON.stringify(d.workspaces))return;a({workspaces:d.workspaces})}catch(a){console.log(`[workspace-store] sync error: ${a instanceof Error?a.message:a}`)}},createWorkspace:async(b,e,f)=>{try{let c=await fetch("/api/workspace",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({directory:b,name:e,resumeSessionId:f})});if(!c.ok){let a=await c.json();throw Error(a.error||(0,d.t)("workspace","createFailed"))}let g=await c.json();return a(a=>({workspaces:[...a.workspaces,g]})),g}catch(b){let a=b instanceof Error?b.message:(0,d.t)("workspace","createFailed");return c.toast.error(a),null}},deleteWorkspace:async a=>{try{let b=await fetch(`/api/workspace/${a}`,{method:"DELETE"});if(!b.ok&&204!==b.status&&404!==b.status)throw Error();return!0}catch{return c.toast.error((0,d.t)("workspace","deleteFailed")),!1}},removeWorkspace:b=>{a(a=>{let c=a.workspaces.filter(a=>a.id!==b),d=a.activeWorkspaceId===b,e=d?c[0]?.id??null:a.activeWorkspaceId;return d&&(l(e),e&&m(e)),{workspaces:c,activeWorkspaceId:e}})},switchWorkspace:b=>{a({activeWorkspaceId:b}),l(b),m(b)},renameWorkspace:async(e,f)=>{let g=b().workspaces.find(a=>a.id===e),h=g?.name??"";a(a=>({workspaces:a.workspaces.map(a=>a.id===e?{...a,name:f}:a)}));try{if(!(await fetch(`/api/workspace/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:f})})).ok)throw Error();return!0}catch{return a(a=>({workspaces:a.workspaces.map(a=>a.id===e?{...a,name:h}:a)})),c.toast.error((0,d.t)("workspace","renameFailed")),!1}},reorderWorkspaces:(e,f)=>{let g=[...b().workspaces],[h]=g.splice(e,1);g.splice(f,0,h),a({workspaces:g}),fetch("/api/workspace/reorder",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspaceIds:g.map(a=>a.id)})}).catch(()=>{c.toast.error((0,d.t)("workspace","reorderFailed")),b().fetchWorkspaces()})},updateDirectories:(b,c)=>{a(a=>({workspaces:a.workspaces.map(a=>a.id===b?{...a,directories:c}:a)}))},toggleSidebar:()=>{a(a=>{let b=!a.sidebarCollapsed;return o({sidebarCollapsed:b}),{sidebarCollapsed:b}})},setSidebarWidth:b=>{a({sidebarWidth:b})},saveSidebarWidth:a=>{o({sidebarWidth:a})},setSidebarTab:b=>{a({sidebarTab:b});try{localStorage.setItem("sidebar-tab",b)}catch{}},validateDirectory:async a=>{try{let b=await fetch(`/api/workspace/validate?directory=${encodeURIComponent(a)}`);if(!b.ok)throw Error();return await b.json()}catch{return{valid:!1,error:(0,d.t)("workspace","validateFailed")}}}}));a.s(["default",0,p],912251)},626605,a=>{"use strict";a.s(["default",()=>C,"navigateToTab",()=>A,"navigateToTabOrCreate",()=>B,"useLayoutStore",()=>z]);var b=a.i(127669),c=a.i(41910),d=a.i(4873),e=a.i(484682),f=a.i(510414),g=a.i(892209),h=a.i(959709),i=a.i(760644),j=a.i(912251),k=a.i(199462),l=a.i(144784);let m="pt-active-pane-",n="pt-active-tab-",o=a=>{try{return sessionStorage.getItem(`${n}${a}`)}catch{return null}},p=null,q=null,r=null,s=!1,t=(a,b)=>{if(!b)return a;let c=a.includes("?")?"&":"?";return`${a}${c}workspace=${b}`},u=(a,b)=>{let c=a?(0,l.collectPanes)(a.root).length:0;return{paneCount:c,canSplit:c<10&&!b}},v=(a,b,c)=>{a({layout:c,...u(c,b().isSplitting)})},w=(a,b,c)=>{let d=b().layout;if(d){let a=(0,l.collectPanes)(c.root);for(let b of(d.activePaneId&&a.some(a=>a.id===d.activePaneId)&&(c.activePaneId=d.activePaneId),a)){let a=(0,l.findPane)(d.root,b.id);a?.activeTabId&&b.tabs.some(b=>b.id===a.activeTabId)&&(b.activeTabId=a.activeTabId)}}a({layout:c,...u(c,b().isSplitting)})},x=(a,b,c,d)=>{let{layout:e}=b();if(!e)return;let f=(0,l.updatePaneInTree)(e.root,c,d);f!==e.root&&v(a,b,{...e,root:f})},y=async(a,b)=>{try{let c=await fetch(a,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!c.ok)return null;return await c.json()}catch{return null}},z=(0,d.create)((a,b)=>({layout:null,isLoading:!0,error:null,isSplitting:!1,workspaceId:null,retryCount:0,paneCount:0,canSplit:!1,pendingFocusTabId:null,setWorkspaceId:b=>{s=!1,a({workspaceId:b})},setLayout:c=>{v(a,b,c)},fetchLayout:async(c,d)=>{if(s)return;let e=c??b().workspaceId;if(!e)return;p?.abort();let h=new AbortController;p=h,b().layout||a({isLoading:!0,error:null});try{let c=await fetch(t("/api/layout",e),{signal:h.signal});if(!c.ok)throw Error();let f=await c.json();if(h.signal.aborted)return;let g=b().layout;if(!1!==d){let a=(0,l.collectPanes)(f.root);if(g)for(let b of(g.activePaneId&&a.some(a=>a.id===g.activePaneId)&&(f.activePaneId=g.activePaneId),a)){let a=(0,l.findPane)(g.root,b.id);a?.activeTabId&&b.tabs.some(b=>b.id===a.activeTabId)&&(b.activeTabId=a.activeTabId)}else{let b=(a=>{try{return sessionStorage.getItem(`${m}${a}`)}catch{return null}})(e);for(let c of(b&&a.some(a=>a.id===b)&&(f.activePaneId=b),a)){let a=o(c.id);a&&c.tabs.some(b=>b.id===a)&&(c.activeTabId=a)}}}if(g){let c={root:g.root,activePaneId:g.activePaneId},d={root:f.root,activePaneId:f.activePaneId};if(JSON.stringify(c)===JSON.stringify(d)){let c=b().pendingFocusTabId;c&&(a({pendingFocusTabId:null}),b().focusTab(c));return}}let i=b().pendingFocusTabId,j=null;if(i){for(let b of(a({pendingFocusTabId:null}),(0,l.collectPanes)(f.root)))if(b.tabs.some(a=>a.id===i)){f.activePaneId=b.id,b.activeTabId=i,j=b.id;break}}a({layout:f,retryCount:0,...u(f,b().isSplitting)}),j&&(y(t("/api/layout",e),{activePaneId:j}),y(t(`/api/layout/pane/${j}`,e),{activeTabId:i}))}catch(d){if(d instanceof DOMException&&"AbortError"===d.name)return;let c=b().retryCount+1;if(a({retryCount:c}),c>=3)try{let c=await fetch(t("/api/layout/pane",e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(c.ok){let{paneId:d,tab:e}=await c.json(),h={root:{type:"pane",id:d,tabs:[e],activeTabId:e.id},activePaneId:d,updatedAt:new Date().toISOString()};a({layout:h,...u(h,b().isSplitting)}),f.toast.info((0,g.t)("terminal","fallbackLayout")),a({retryCount:0});return}}catch{}a({error:(0,g.t)("terminal","layoutFetchError")}),q?.()}finally{h.signal.aborted||a({isLoading:!1})}},splitPane:async(c,d)=>{let{layout:e,isSplitting:h,workspaceId:i}=b();if(e&&!h&&!((0,l.collectPanes)(e.root).length>=10)){a({isSplitting:!0,canSplit:!1});try{let f,g,h=(0,l.findPane)(e.root,c),j=h?.tabs.find(a=>a.id===h.activeTabId);if(j){g=j.panelType;try{let a=await fetch(t(`/api/layout/cwd?session=${j.sessionName}`,i));a.ok&&(f=(await a.json()).cwd)}catch{}}let k=await fetch(t("/api/layout/pane",i),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sourcePaneId:c,orientation:d,cwd:f,panelType:g})});if(!k.ok)throw Error();let m=await k.json();v(a,b,m)}catch{f.toast.error((0,g.t)("terminal","splitFailed"))}finally{a(a=>({isSplitting:!1,canSplit:a.paneCount<10}))}}},closePane:async c=>{let{layout:d,workspaceId:e}=b();if(d&&!((0,l.collectPanes)(d.root).length<=1))try{let d=await fetch(t(`/api/layout/pane/${c}`,e),{method:"DELETE"});if(!d.ok)throw Error();let f=await d.json();v(a,b,f)}catch{f.toast.error("Pane을 닫을 수 없습니다")}},focusPane:c=>{let{layout:d,workspaceId:e}=b();d&&d.activePaneId!==c&&(a({layout:{...d,activePaneId:c}}),y(t("/api/layout",e),{activePaneId:c}).then(c=>{c&&w(a,b,c)}))},updateRatio:(c,d)=>{let{layout:e,workspaceId:f}=b();e&&(a({layout:{...e,root:(0,l.updateRatioAtPath)(e.root,c,d)}}),r&&clearTimeout(r),r=setTimeout(()=>{r=null,y(t("/api/layout",f),{ratioUpdate:{path:c,ratio:d}}).then(c=>{c&&w(a,b,c)})},300))},moveTab:(c,d,e,f)=>{if(d===e)return;let{layout:g,workspaceId:h}=b();if(!g)return;let i=JSON.parse(JSON.stringify(g)),j=(0,l.findPane)(i.root,d),k=(0,l.findPane)(i.root,e);if(j&&k){let g=j.tabs.findIndex(a=>a.id===c);if(-1!==g){let[h]=j.tabs.splice(g,1);j.activeTabId===c&&(j.activeTabId=j.tabs[0]?.id??null),j.tabs.forEach((a,b)=>{a.order=b}),k.tabs.splice(f,0,h),k.tabs.forEach((a,b)=>{a.order=b}),k.activeTabId=c,0===j.tabs.length&&(0,l.collectPanes)(i.root).length>1&&(0,l.removePaneWithFocus)(i,d),i.activePaneId=e,v(a,b,i)}}fetch(t(`/api/layout/pane/${d}/tabs/${c}/move`,h),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({toPaneId:e,toIndex:f})}).then(async c=>{c.ok?w(a,b,await c.json()):await b().fetchLayout(void 0,!1)}).catch(()=>b().fetchLayout(void 0,!1))},createTabInPane:async(c,d,e)=>{let{layout:h,workspaceId:j}=b();try{let f,g=d,m=h?(0,l.findPane)(h.root,c):void 0,n=m?.tabs.find(a=>a.id===m.activeTabId);!g&&n&&(g=n.panelType),"web-browser"!==g&&n&&(f=k.default.getState().metadata[n.id]?.cwd);let o=await fetch(t(`/api/layout/pane/${c}/tabs`,j),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:f,panelType:g,command:e})});if(!o.ok)throw Error();let p=await o.json();return e&&i.default.getState().initTab(p.id,{panelType:g,isRestarting:!0}),x(a,b,c,a=>({...a,tabs:[...a.tabs,p],activeTabId:p.id})),b().fetchLayout(),p}catch{return f.toast.error((0,g.t)("terminal","tabCreateFailed")),null}},deleteTabInPane:async(c,d)=>{(0,h.clearInputDraft)(d),i.default.getState().cancelTab(d),x(a,b,c,a=>{let b=[...a.tabs].sort((a,b)=>a.order-b.order),c=b.findIndex(a=>a.id===d),e=b.filter(a=>a.id!==d);e.forEach((a,b)=>{a.order=b});let f=a.activeTabId;if(a.activeTabId===d){let a=b[c+1]||b[c-1];f=a?.id??null}return{...a,tabs:e,activeTabId:f}});let{workspaceId:e}=b();try{let a=await fetch(t(`/api/layout/pane/${c}/tabs/${d}`,e),{method:"DELETE"});a.ok||404===a.status||(f.toast.error((0,g.t)("terminal","tabDeleteError")),await b().fetchLayout())}catch{f.toast.error((0,g.t)("terminal","tabDeleteError")),await b().fetchLayout()}},restartTabInPane:async(a,c,d)=>{let{workspaceId:e}=b();try{return(await fetch(t(`/api/layout/pane/${a}/tabs/${c}`,e),{method:"POST",headers:d?{"Content-Type":"application/json"}:void 0,body:d?JSON.stringify({command:d}):void 0})).ok}catch{return f.toast.error((0,g.t)("terminal","sessionRestartFailed")),!1}},switchTabInPane:(c,d)=>{x(a,b,c,a=>({...a,activeTabId:d}));let{workspaceId:e}=b();y(t(`/api/layout/pane/${c}`,e),{activeTabId:d}).then(c=>{c&&w(a,b,c)})},renameTabInPane:async(c,d,e)=>{x(a,b,c,a=>({...a,tabs:a.tabs.map(a=>a.id===d?{...a,name:e}:a)}));let{workspaceId:h}=b(),i=await y(t(`/api/layout/pane/${c}/tabs/${d}`,h),{name:e});i?w(a,b,i):f.toast.error((0,g.t)("terminal","tabRenameFailed"))},reorderTabsInPane:(c,d)=>{x(a,b,c,a=>{let b=new Map(a.tabs.map(a=>[a.id,a])),c=d.map((a,c)=>{let d=b.get(a);return d?{...d,order:c}:null}).filter(a=>null!==a);return{...a,tabs:c}});let{workspaceId:e}=b();y(t(`/api/layout/pane/${c}/tabs/order`,e),{tabIds:d}).then(c=>{c&&w(a,b,c)})},removeTabLocally:(a,c)=>{(0,h.clearInputDraft)(c);let{workspaceId:d}=b();fetch(t(`/api/layout/pane/${a}/tabs/${c}`,d),{method:"DELETE"}).then(()=>b().fetchLayout()).catch(()=>{console.log("[layout] removeTabLocally failed")})},equalizeRatios:()=>{let{workspaceId:c}=b();y(t("/api/layout",c),{equalize:!0}).then(c=>{c&&w(a,b,c)})},updateTabPanelType:(c,d,e)=>{x(a,b,c,a=>({...a,tabs:a.tabs.map(a=>{if(a.id!==d)return a;let b={...a,panelType:e};return"terminal"===e&&(b.claudeSessionId=null),b})})),i.default.getState().setPanelType(d,e);let{workspaceId:f}=b();y(t(`/api/layout/pane/${c}/tabs/${d}`,f),{panelType:e}).then(c=>{c&&w(a,b,c)})},clearLayout:()=>{s=!0,p?.abort(),a({layout:null,paneCount:0,canSplit:!1})},focusTab:a=>{let{layout:c}=b();if(!c)return!1;for(let d of(0,l.collectPanes)(c.root))if(d.tabs.some(b=>b.id===a))return b().focusPane(d.id),b().switchTabInPane(d.id,a),!0;return!1},focusPrevTab:()=>{let{layout:a}=b();if(!a)return;let c=(0,l.collectPanes)(a.root),d=c.find(b=>b.id===a.activePaneId);if(!d)return;let e=[...d.tabs].sort((a,b)=>a.order-b.order),f=e.findIndex(a=>a.id===d.activeTabId);if(f>0)b().switchTabInPane(d.id,e[f-1].id);else{let a=c.indexOf(d);if(a>0){let d=c[a-1],e=[...d.tabs].sort((a,b)=>a.order-b.order);b().focusPane(d.id),b().switchTabInPane(d.id,e[e.length-1].id)}}},focusNextTab:()=>{let{layout:a}=b();if(!a)return;let c=(0,l.collectPanes)(a.root),d=c.find(b=>b.id===a.activePaneId);if(!d)return;let e=[...d.tabs].sort((a,b)=>a.order-b.order),f=e.findIndex(a=>a.id===d.activeTabId);if(f<e.length-1)b().switchTabInPane(d.id,e[f+1].id);else{let a=c.indexOf(d);if(a<c.length-1){let d=c[a+1],e=[...d.tabs].sort((a,b)=>a.order-b.order);b().focusPane(d.id),b().switchTabInPane(d.id,e[0].id)}}},focusTabByIndex:a=>{let{layout:c}=b();if(!c?.activePaneId)return;let d=(0,l.collectPanes)(c.root).find(a=>a.id===c.activePaneId);if(!d)return;let e=[...d.tabs].sort((a,b)=>a.order-b.order),f=a>=e.length?e[e.length-1]:e[a];f&&f.id!==d.activeTabId&&b().switchTabInPane(d.id,f.id)}}));z.subscribe((a,b)=>{if(a.layout&&a.workspaceId&&a.layout!==b.layout){var c=a.workspaceId,d=a.layout;try{for(let a of(d.activePaneId&&sessionStorage.setItem(`${m}${c}`,d.activePaneId),(0,l.collectPanes)(d.root)))a.activeTabId&&sessionStorage.setItem(`${n}${a.id}`,a.activeTabId)}catch{}}});let A=(a,b)=>{let d=z.getState();if("/"!==c.default.pathname){z.setState({pendingFocusTabId:b}),j.default.getState().switchWorkspace(a),c.default.push("/");return}a===d.workspaceId?d.focusTab(b):(d.clearLayout(),z.setState({pendingFocusTabId:b}),j.default.getState().switchWorkspace(a))},B=async(a,b,c,d,e)=>{let f=j.default.getState(),g=a,h=f.workspaces.find(b=>b.id===a);if(!h){if(!e)return;let a=await f.createWorkspace(e,d,c??void 0);if(!a)return;g=a.id;let b=await fetch(t("/api/layout",g));if(!b.ok)return;let h=await b.json(),j=(0,l.collectAllTabs)(h.root)[0];if(!j)return;c&&i.default.getState().initTab(j.id,{panelType:"claude-code",isResuming:!0}),A(g,j.id);return}let k=await fetch(t("/api/layout",g));if(!k.ok)return;let m=await k.json();if((0,l.collectAllTabs)(m.root).some(a=>a.id===b))return void A(g,b);let n=m.activePaneId??(0,l.getFirstPaneId)(m.root),o={panelType:"claude-code",cwd:h.directories[0]};c&&(o.resumeSessionId=c);let p=await fetch(t(`/api/layout/pane/${n}/tabs`,g),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)});if(!p.ok)return;let q=await p.json();c&&i.default.getState().initTab(q.id,{panelType:"claude-code",isResuming:!0}),g===z.getState().workspaceId?(z.setState({pendingFocusTabId:q.id}),z.getState().fetchLayout()):A(g,q.id)},C=({workspaceId:a,onFetchError:c})=>((0,b.useEffect)(()=>{q=c??null},[c]),(0,b.useEffect)(()=>{if(a){let b=z.getState();b.setWorkspaceId(a),b.fetchLayout(a)}},[a]),(0,b.useEffect)(()=>z.subscribe(a=>{let b=a.workspaceId;if(!b||!a.layout?.root)return;let c=(0,l.collectPanes)(a.layout.root).flatMap(a=>a.tabs.map(a=>a.id));i.default.getState().setTabOrder(b,c)}),[]),z((0,e.useShallow)(a=>({layout:a.layout,isLoading:a.isLoading,error:a.error,isSplitting:a.isSplitting,paneCount:a.paneCount,canSplit:a.canSplit,splitPane:a.splitPane,closePane:a.closePane,focusPane:a.focusPane,updateRatio:a.updateRatio,moveTab:a.moveTab,createTabInPane:a.createTabInPane,deleteTabInPane:a.deleteTabInPane,restartTabInPane:a.restartTabInPane,switchTabInPane:a.switchTabInPane,renameTabInPane:a.renameTabInPane,reorderTabsInPane:a.reorderTabsInPane,removeTabLocally:a.removeTabLocally,equalizeRatios:a.equalizeRatios,updateTabPanelType:a.updateTabPanelType,clearLayout:a.clearLayout,fetchLayout:a.fetchLayout,focusTab:a.focusTab,focusPrevTab:a.focusPrevTab,focusNextTab:a.focusNextTab,focusTabByIndex:a.focusTabByIndex}))))},199462,a=>{"use strict";a.s(["default",()=>j]);var b=a.i(4873),c=a.i(626605),d=a.i(144784),e=a.i(912251);let f=null,g="",h=()=>{f&&clearTimeout(f),f=setTimeout(()=>{f=null;let{metadata:a}=i.getState(),b=c.useLayoutStore.getState().layout,h=c.useLayoutStore.getState().workspaceId;if(!b||!h)return;let j=`?workspace=${h}`;for(let c of(0,d.collectPanes)(b.root))for(let b of c.tabs){let d=a[b.id];if(!d)continue;let e={};void 0!==d.title&&d.title!==b.title&&(e.title=d.title),void 0!==d.cwd&&d.cwd!==b.cwd&&(e.cwd=d.cwd),void 0!==d.lastCommand&&(d.lastCommand??null)!==(b.lastCommand??null)&&(e.lastCommand=d.lastCommand??null),Object.keys(e).length>0&&fetch(`/api/layout/pane/${c.id}/tabs/${b.id}${j}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}).catch(a=>{console.log(`[tab-metadata] sync failed: ${a instanceof Error?a.message:a}`)})}let k=[...new Set(Object.values(a).map(a=>a.cwd).filter(a=>!!a))],l=k.join("\0");if(l!==g){g=l;let{activeWorkspaceId:a,updateDirectories:b}=e.default.getState();a&&k.length>0&&b(a,k)}},100)},i=(0,b.create)(a=>({metadata:{},setTitle:(b,c)=>{a(a=>{let d=a.metadata[b];return d?.title===c?a:{metadata:{...a.metadata,[b]:{...d,title:c}}}}),h()},setCwd:(b,c)=>{a(a=>{let d=a.metadata[b];return d?.cwd===c?a:{metadata:{...a.metadata,[b]:{...d,cwd:c}}}}),h()},setLastCommand:(b,c)=>{a(a=>{let d=a.metadata[b];return d?.lastCommand===c?a:{metadata:{...a.metadata,[b]:{...d,lastCommand:c}}}}),h()},removeTab:b=>{a(a=>{let{[b]:c,...d}=a.metadata;return{metadata:d}}),h()},hydrate:b=>{a(a=>{let c={};for(let[d,e]of Object.entries(b)){let b=a.metadata[d];b?c[d]={...e,...b.title?{title:b.title}:{},...b.cwd?{cwd:b.cwd}:{}}:c[d]=e}return{metadata:c}}),g=""},retainOnly:b=>{a(a=>{let c={};for(let d of b)a.metadata[d]&&(c[d]=a.metadata[d]);return{metadata:c}})},reset:()=>{f&&clearTimeout(f),f=null,g="",a({metadata:{}})}})),j=i},266254,168711,175679,206456,409679,a=>{"use strict";var b=a.i(127669),c=a.i(760644),d=a.i(199462),e=a.i(4873);let f=(0,e.create)(a=>({data:null,setData:b=>a({data:b})}));a.s(["default",0,f],168711);let g=(0,e.create)(a=>({entries:[],syncFromServer:b=>a({entries:b}),upsertEntry:b=>a(a=>{let c=a.entries.findIndex(a=>a.id===b.id);if(c>=0){let d=[...a.entries];return d[c]=b,{entries:d}}return{entries:[b,...a.entries]}})}));a.s(["default",0,g],175679);let h=new Set(["zsh","bash","fish","sh","-zsh","-bash","-fish","-sh"]),i=a=>{if("~"===a||"/"===a)return a;let b=a.replace(/\/$/,"").split("/");return b[b.length-1]||a},j=a=>{let b=a.trim();if(!b)return null;let c=b.indexOf("|");return c>0?b.slice(0,c):null},k=a=>{let b=a.trim();if(!b)return"";let c=j(a);if(null!==c){let a=b.slice(b.indexOf("|")+1);return h.has(c)?i(a):c}let d=b.match(/@[^:]+:\s*(.*)/);if(d)return i(d[1].trim());if(b.startsWith("/")||b.startsWith("~"))return i(b);let e=b.split(/\s+/)[0];return h.has(e)?"":e||""};a.s(["formatTabTitle",0,k,"parseCurrentCommand",0,j],206456);let l=null;a.s(["ackNotificationInput",0,(a,b)=>{l?.readyState===WebSocket.OPEN&&l.send(JSON.stringify({type:"status:ack-notification",tabId:a,seq:b}))},"default",0,()=>{let a=(0,b.useRef)(0),e=(0,b.useRef)(null),h=(0,b.useRef)(!0);(0,b.useEffect)(()=>{h.current=!0;let b=()=>{if(!h.current)return;let i="https:"===location.protocol?"wss:":"ws:",j=new WebSocket(`${i}//${location.host}/api/status`);l=j,j.onopen=()=>{h.current&&(a.current=0,c.default.getState().setStatusWsConnected(!0))},j.onmessage=a=>{if(h.current)try{let b=JSON.parse(a.data);switch(b.type){case"status:sync":for(let[a,e]of(c.default.getState().syncAllFromServer(b.tabs),Object.entries(b.tabs)))e.paneTitle&&!d.default.getState().metadata[a]?.title&&d.default.getState().setTitle(a,k(e.paneTitle));break;case"status:update":c.default.getState().updateFromServer(b.tabId,{cliState:b.cliState,workspaceId:b.workspaceId,tabName:b.tabName,panelType:b.panelType,terminalStatus:b.terminalStatus,listeningPorts:b.listeningPorts,currentProcess:b.currentProcess,claudeSummary:b.claudeSummary,lastUserMessage:b.lastUserMessage,lastAssistantMessage:b.lastAssistantMessage,currentAction:b.currentAction,readyForReviewAt:b.readyForReviewAt,busySince:b.busySince,dismissedAt:b.dismissedAt,claudeSessionId:b.claudeSessionId,compactingSince:b.compactingSince,lastEvent:b.lastEvent,eventSeq:b.eventSeq}),b.paneTitle&&d.default.getState().setTitle(b.tabId,k(b.paneTitle));break;case"status:hook-event":c.default.getState().applyHookEvent(b.tabId,b.event);break;case"rate-limits:update":f.getState().setData(b.data);break;case"session-history:sync":g.getState().syncFromServer(b.entries);break;case"session-history:update":g.getState().upsertEntry(b.entry)}}catch{}},j.onclose=()=>{if(!h.current)return;c.default.getState().setStatusWsConnected(!1),l=null;let d=Math.min(1e3*Math.pow(2,a.current),3e4);a.current++,e.current=setTimeout(b,d)},j.onerror=()=>{}};b();let i=()=>{if("visible"!==document.visibilityState)return;let c=l?.readyState;c!==WebSocket.OPEN&&c!==WebSocket.CONNECTING&&(e.current&&(clearTimeout(e.current),e.current=null),a.current=0,b())};return document.addEventListener("visibilitychange",i),()=>{h.current=!1,e.current&&(clearTimeout(e.current),e.current=null),l&&(l.close(),l=null),document.removeEventListener("visibilitychange",i)}},[])},"dismissTab",0,a=>{c.default.getState().dismissTab(a),l?.readyState===WebSocket.OPEN&&l.send(JSON.stringify({type:"status:tab-dismissed",tabId:a}))},"requestSync",0,()=>{l?.readyState===WebSocket.OPEN&&l.send(JSON.stringify({type:"status:request-sync"}))}],266254),a.i(678240),a.i(626605);var m=a.i(721043);let n=async()=>{try{let a=await navigator.serviceWorker.ready,b=await a.pushManager.getSubscription();return b?.endpoint??null}catch{return null}},o=async a=>{fetch("/api/push/register-session",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({endpoint:await n(),sessionId:a}),keepalive:!0}).catch(()=>{})};a.s(["default",0,()=>{(0,b.useRef)(!1),(0,b.useEffect)(()=>{m.default},[]),(0,b.useEffect)(()=>{},[])},"registerPushTarget",0,o],409679)}];
|
|
1
|
+
module.exports=[760644,a=>{"use strict";var b=a.i(4873);let c={terminalConnected:!1,claudeStatus:"unknown",claudeStatusCheckedAt:0,cliState:"inactive",isTimelineLoading:!0,isRestarting:!1,isResuming:!1,workspaceId:""},d=(a,b,c)=>{let d=a[b];return d?{...a,[b]:{...d,...c}}:a},e=(0,b.create)(a=>({tabs:{},tabOrders:{},statusWsConnected:!1,initTab:(b,d)=>a(a=>{let e=a.tabs[b],f={...c,...e,...d};return e?.cliState==="ready-for-review"&&"ready-for-review"!==f.cliState&&(f.cliState="ready-for-review",f.readyForReviewAt=e.readyForReviewAt),{tabs:{...a.tabs,[b]:f}}}),removeTab:b=>a(a=>{let{[b]:c,...d}=a.tabs;return{tabs:d}}),setTerminalConnected:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.terminalConnected!==c?{tabs:d(a.tabs,b,{terminalConnected:c})}:a}),setClaudeStatus:(b,c,e)=>a(a=>{let f=a.tabs[b];if(!f||f.claudeStatusCheckedAt>e||f.claudeStatus===c||"running"===f.claudeStatus&&"starting"===c)return a;let g={claudeStatus:c,claudeStatusCheckedAt:e};return("running"===f.claudeStatus||"starting"===f.claudeStatus)&&"running"!==c&&"starting"!==c&&f.isResuming&&(g.isResuming=!1),{tabs:d(a.tabs,b,g)}}),setTimelineLoading:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.isTimelineLoading!==c?{tabs:d(a.tabs,b,{isTimelineLoading:c})}:a}),setRestarting:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.isRestarting!==c?{tabs:d(a.tabs,b,{isRestarting:c})}:a}),cancelTab:b=>a(a=>{let c=a.tabs[b];return c&&"cancelled"!==c.cliState?{tabs:d(a.tabs,b,{cliState:"cancelled",localUpdatedAt:Date.now()})}:a}),dismissTab:b=>a(a=>{let c=a.tabs[b];return c&&"ready-for-review"===c.cliState?{tabs:d(a.tabs,b,{cliState:"idle",dismissedAt:Date.now()})}:a}),setResuming:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.isResuming!==c?{tabs:d(a.tabs,b,{isResuming:c})}:a}),setWorkspaceId:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.workspaceId!==c?{tabs:d(a.tabs,b,{workspaceId:c})}:a}),setPanelType:(b,c)=>a(a=>{let e=a.tabs[b];return e&&e.panelType!==c?{tabs:d(a.tabs,b,{panelType:c})}:a}),setCurrentProcess:(b,c)=>a(a=>{let e=a.tabs[b];if(!e)return a;let f=c??void 0;return e.currentProcess===f?a:{tabs:d(a.tabs,b,{currentProcess:f,localUpdatedAt:Date.now()})}}),setTabOrder:(b,c)=>a(a=>{let d=a.tabOrders[b];return d&&d.length===c.length&&d.every((a,b)=>a===c[b])?a:{tabOrders:{...a.tabOrders,[b]:c}}}),setStatusWsConnected:b=>a({statusWsConnected:b}),syncAllFromServer:b=>a(a=>{let d=Date.now(),e={};for(let[f,g]of Object.entries(b)){let b=a.tabs[f];if(b?.cliState==="cancelled"){e[f]=b;continue}b?.localUpdatedAt&&d-b.localUpdatedAt<3e4?e[f]={...b,cliState:g.cliState,workspaceId:g.workspaceId,tabName:g.tabName,terminalStatus:g.terminalStatus,listeningPorts:g.listeningPorts,claudeSummary:g.claudeSummary,lastUserMessage:g.lastUserMessage,lastAssistantMessage:g.lastAssistantMessage,currentAction:g.currentAction,readyForReviewAt:g.readyForReviewAt,busySince:g.busySince,dismissedAt:g.dismissedAt,claudeSessionId:g.claudeSessionId,compactingSince:g.compactingSince,lastEvent:g.lastEvent,eventSeq:g.eventSeq}:b?e[f]={...b,cliState:g.cliState,workspaceId:g.workspaceId,tabName:g.tabName,panelType:g.panelType??b.panelType,terminalStatus:g.terminalStatus,listeningPorts:g.listeningPorts,currentProcess:g.currentProcess,claudeSummary:g.claudeSummary,lastUserMessage:g.lastUserMessage,lastAssistantMessage:g.lastAssistantMessage,currentAction:g.currentAction,readyForReviewAt:g.readyForReviewAt,busySince:g.busySince,dismissedAt:g.dismissedAt,claudeSessionId:g.claudeSessionId,compactingSince:g.compactingSince,lastEvent:g.lastEvent,eventSeq:g.eventSeq}:e[f]={...c,cliState:g.cliState,workspaceId:g.workspaceId,tabName:g.tabName,panelType:g.panelType,terminalStatus:g.terminalStatus,listeningPorts:g.listeningPorts,currentProcess:g.currentProcess,claudeSummary:g.claudeSummary,lastUserMessage:g.lastUserMessage,lastAssistantMessage:g.lastAssistantMessage,currentAction:g.currentAction,readyForReviewAt:g.readyForReviewAt,busySince:g.busySince,dismissedAt:g.dismissedAt,claudeSessionId:g.claudeSessionId,compactingSince:g.compactingSince,lastEvent:g.lastEvent,eventSeq:g.eventSeq}}for(let[b,c]of Object.entries(a.tabs))e[b]||(e[b]=c);return{tabs:e}}),updateFromServer:(b,e)=>a(a=>{if(null===e.cliState){let{[b]:c,...d}=a.tabs;return{tabs:d}}let f=a.tabs[b];if(f){if("cancelled"===f.cliState)return a;let c=void 0!==e.eventSeq&&(void 0===f.eventSeq||e.eventSeq>=f.eventSeq)?{lastEvent:e.lastEvent,eventSeq:e.eventSeq}:{};return{tabs:d(a.tabs,b,{cliState:e.cliState,workspaceId:e.workspaceId,tabName:e.tabName,panelType:e.panelType??f.panelType,terminalStatus:e.terminalStatus,listeningPorts:e.listeningPorts,currentProcess:e.currentProcess,claudeSummary:e.claudeSummary,lastUserMessage:e.lastUserMessage,lastAssistantMessage:e.lastAssistantMessage,currentAction:e.currentAction,readyForReviewAt:e.readyForReviewAt,busySince:e.busySince,dismissedAt:e.dismissedAt,claudeSessionId:e.claudeSessionId,compactingSince:e.compactingSince,...c})}}return{tabs:{...a.tabs,[b]:{...c,cliState:e.cliState,workspaceId:e.workspaceId,tabName:e.tabName,panelType:e.panelType,terminalStatus:e.terminalStatus,listeningPorts:e.listeningPorts,currentProcess:e.currentProcess,claudeSummary:e.claudeSummary,lastUserMessage:e.lastUserMessage,lastAssistantMessage:e.lastAssistantMessage,readyForReviewAt:e.readyForReviewAt,busySince:e.busySince,dismissedAt:e.dismissedAt,claudeSessionId:e.claudeSessionId,compactingSince:e.compactingSince,lastEvent:e.lastEvent,eventSeq:e.eventSeq}}}}),applyHookEvent:(b,c)=>a(a=>{let e=a.tabs[b];return!e||void 0!==e.eventSeq&&c.seq<=e.eventSeq?a:{tabs:d(a.tabs,b,{lastEvent:c,eventSeq:c.seq})}})}));a.s(["default",0,e,"isCliIdle",0,a=>"idle"===a||"ready-for-review"===a,"selectGlobalStatus",0,a=>{let b=0,c=0;for(let d of Object.values(a))"busy"===d.cliState?b++:("ready-for-review"===d.cliState||"needs-input"===d.cliState)&&c++;return{busyCount:b,attentionCount:c}},"selectSessionView",0,(a,b)=>{let c=a[b];return c?c.isRestarting?"restarting":"not-installed"===c.claudeStatus?"not-installed":"unknown"===c.claudeStatus||"starting"===c.claudeStatus?"loading":"running"===c.claudeStatus?c.isTimelineLoading?"loading":"timeline":c.isResuming||c.isTimelineLoading?"loading":"inactive":"loading"},"selectTabDisplayStatus",0,(a,b)=>{let c=a[b];return c&&"inactive"!==c.cliState?"busy"===c.cliState?"busy":"ready-for-review"===c.cliState?"ready-for-review":"needs-input"===c.cliState?"needs-input":"unknown"===c.cliState?"unknown":"idle":"idle"},"selectWorkspacePortsLabel",0,(a,b)=>{let c=new Set;for(let d of Object.values(a))if(d.workspaceId===b&&d.listeningPorts)for(let a of d.listeningPorts)c.add(a);return 0===c.size?"":":"+[...c].sort((a,b)=>a-b).join(", :")}])},484682,a=>{"use strict";var b=a.i(127669);let c=(a,b)=>{let c=a instanceof Map?a:new Map(a.entries()),d=b instanceof Map?b:new Map(b.entries());if(c.size!==d.size)return!1;for(let[a,b]of c)if(!d.has(a)||!Object.is(b,d.get(a)))return!1;return!0};a.s(["useShallow",0,function(a){let d=b.default.useRef(void 0);return b=>{let e=a(b);return!function(a,b){if(Object.is(a,b))return!0;if("object"!=typeof a||null===a||"object"!=typeof b||null===b||Object.getPrototypeOf(a)!==Object.getPrototypeOf(b))return!1;if(Symbol.iterator in a&&Symbol.iterator in b){if("entries"in a&&"entries"in b)return c(a,b);let d=a[Symbol.iterator](),e=b[Symbol.iterator](),f=d.next(),g=e.next();for(;!f.done&&!g.done;){if(!Object.is(f.value,g.value))return!1;f=d.next(),g=e.next()}return!!f.done&&!!g.done}return c({entries:()=>Object.entries(a)},{entries:()=>Object.entries(b)})}(d.current,e)?d.current=e:d.current}}],484682)},959709,912251,a=>{"use strict";var b=a.i(127669),c=a.i(510414),d=a.i(892209),e=a.i(760644);let f=new Set(["/new","/clear"]),g=a=>`pt-input-draft:${a}`,h=a=>{try{localStorage.removeItem(g(a))}catch{}};a.s(["clearInputDraft",0,h,"default",0,(a,i,j,k)=>{let l=k?.tabId,[m,n]=(0,b.useState)(()=>l?(a=>{try{return localStorage.getItem(g(a))??""}catch{return""}})(l):""),o=(0,b.useRef)(null),p=(0,b.useMemo)(()=>(0,e.isCliIdle)(a)||"unknown"===a?"input":"busy"===a||"needs-input"===a?"interrupt":"disabled",[a]),q=k?.onRestartSession,r=k?.onMessageSent,s=(0,b.useRef)(null);(0,b.useEffect)(()=>{if(l)return s.current&&clearTimeout(s.current),s.current=setTimeout(()=>((a,b)=>{try{b?localStorage.setItem(g(a),b):localStorage.removeItem(g(a))}catch{}})(l,m),300),()=>{s.current&&clearTimeout(s.current)}},[l,m]);let t=(0,b.useCallback)(()=>{if("disabled"===p)return void c.toast.error("Claude Code가 실행 중이 아닙니다");if(!j)return void c.toast.error((0,d.t)("connection","terminalDisconnected"));if(""!==m.trim()){if(f.has(m.trim().toLowerCase())){q?.(),n(""),l&&h(l);return}m.includes("\n")?(i(`\x1b[200~${m}\x1b[201~\r`),setTimeout(()=>i("\r"),500)):(i(m),setTimeout(()=>i("\r"),50)),m.trim().startsWith("/")||r?.(m.trim()),n(""),l&&h(l)}},[p,m,i,j,q,r,l]),u=(0,b.useCallback)(()=>{j?i("\x1b\x1b"):c.toast.error((0,d.t)("connection","terminalDisconnected"))},[i,j]),v=(0,b.useCallback)(()=>{let a=o.current;if(!a)return;a.focus();let b=a.value.length;a.setSelectionRange(b,b)},[]),[w,x]=(0,b.useState)(p);w!==p&&(x(p),"disabled"===p&&n(""));let y="disabled"!==p&&j;return{value:m,setValue:n,mode:p,canSend:y,send:t,interrupt:u,textareaRef:o,focusInput:v}}],959709);var i=a.i(4873);let j=[],k=!0,l=a=>{},m=a=>{fetch("/api/workspace/active",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({activeWorkspaceId:a})}).catch(()=>{})},n=(a,b)=>b&&a.some(a=>a.id===b)?b:a[0]?.id??null,o=a=>{fetch("/api/workspace/active",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}).catch(a=>{console.log(`[workspace-store] active update failed: ${a instanceof Error?a.message:a}`)})},p=(0,i.create)((a,b)=>({workspaces:j,activeWorkspaceId:j.length>0?n(j):null,sidebarCollapsed:!1,sidebarWidth:240,sidebarTab:"workspace",isLoading:k,error:null,hydrate:b=>{let c=n(b.workspaces,b.activeWorkspaceId);l(c),c&&m(c),a({workspaces:b.workspaces,activeWorkspaceId:c,sidebarCollapsed:b.sidebarCollapsed,sidebarWidth:b.sidebarWidth,isLoading:!1,error:null})},fetchWorkspaces:async()=>{a({isLoading:!0,error:null});try{let b=await fetch("/api/workspace");if(!b.ok)throw Error();let c=await b.json(),d=n(c.workspaces,c.activeWorkspaceId);l(d),a({workspaces:c.workspaces,activeWorkspaceId:d,sidebarCollapsed:c.sidebarCollapsed??!1,sidebarWidth:c.sidebarWidth??240,isLoading:!1})}catch{a({error:(0,d.t)("workspace","fetchError"),isLoading:!1})}},syncWorkspaces:async()=>{try{let c=await fetch("/api/workspace");if(!c.ok)return;let d=await c.json(),e=b().workspaces;if(JSON.stringify(e)===JSON.stringify(d.workspaces))return;a({workspaces:d.workspaces})}catch(a){console.log(`[workspace-store] sync error: ${a instanceof Error?a.message:a}`)}},createWorkspace:async(b,e,f)=>{try{let c=await fetch("/api/workspace",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({directory:b,name:e,resumeSessionId:f})});if(!c.ok){let a=await c.json();throw Error(a.error||(0,d.t)("workspace","createFailed"))}let g=await c.json();return a(a=>({workspaces:[...a.workspaces,g]})),g}catch(b){let a=b instanceof Error?b.message:(0,d.t)("workspace","createFailed");return c.toast.error(a),null}},deleteWorkspace:async a=>{try{let b=await fetch(`/api/workspace/${a}`,{method:"DELETE"});if(!b.ok&&204!==b.status&&404!==b.status)throw Error();return!0}catch{return c.toast.error((0,d.t)("workspace","deleteFailed")),!1}},removeWorkspace:b=>{a(a=>{let c=a.workspaces.filter(a=>a.id!==b),d=a.activeWorkspaceId===b,e=d?c[0]?.id??null:a.activeWorkspaceId;return d&&(l(e),e&&m(e)),{workspaces:c,activeWorkspaceId:e}})},switchWorkspace:b=>{a({activeWorkspaceId:b}),l(b),m(b)},renameWorkspace:async(e,f)=>{let g=b().workspaces.find(a=>a.id===e),h=g?.name??"";a(a=>({workspaces:a.workspaces.map(a=>a.id===e?{...a,name:f}:a)}));try{if(!(await fetch(`/api/workspace/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:f})})).ok)throw Error();return!0}catch{return a(a=>({workspaces:a.workspaces.map(a=>a.id===e?{...a,name:h}:a)})),c.toast.error((0,d.t)("workspace","renameFailed")),!1}},reorderWorkspaces:(e,f)=>{let g=[...b().workspaces],[h]=g.splice(e,1);g.splice(f,0,h),a({workspaces:g}),fetch("/api/workspace/reorder",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspaceIds:g.map(a=>a.id)})}).catch(()=>{c.toast.error((0,d.t)("workspace","reorderFailed")),b().fetchWorkspaces()})},updateDirectories:(b,c)=>{a(a=>({workspaces:a.workspaces.map(a=>a.id===b?{...a,directories:c}:a)}))},toggleSidebar:()=>{a(a=>{let b=!a.sidebarCollapsed;return o({sidebarCollapsed:b}),{sidebarCollapsed:b}})},setSidebarWidth:b=>{a({sidebarWidth:b})},saveSidebarWidth:a=>{o({sidebarWidth:a})},setSidebarTab:b=>{a({sidebarTab:b});try{localStorage.setItem("sidebar-tab",b)}catch{}},validateDirectory:async a=>{try{let b=await fetch(`/api/workspace/validate?directory=${encodeURIComponent(a)}`);if(!b.ok)throw Error();return await b.json()}catch{return{valid:!1,error:(0,d.t)("workspace","validateFailed")}}}}));a.s(["default",0,p],912251)},626605,a=>{"use strict";a.s(["default",()=>C,"navigateToTab",()=>A,"navigateToTabOrCreate",()=>B,"useLayoutStore",()=>z]);var b=a.i(127669),c=a.i(41910),d=a.i(4873),e=a.i(484682),f=a.i(510414),g=a.i(892209),h=a.i(959709),i=a.i(760644),j=a.i(912251),k=a.i(199462),l=a.i(144784);let m="pt-active-pane-",n="pt-active-tab-",o=a=>{try{return sessionStorage.getItem(`${n}${a}`)}catch{return null}},p=null,q=null,r=null,s=!1,t=(a,b)=>{if(!b)return a;let c=a.includes("?")?"&":"?";return`${a}${c}workspace=${b}`},u=(a,b)=>{let c=a?(0,l.collectPanes)(a.root).length:0;return{paneCount:c,canSplit:c<10&&!b}},v=(a,b,c)=>{a({layout:c,...u(c,b().isSplitting)})},w=(a,b,c)=>{let d=b().layout;if(d){let a=(0,l.collectPanes)(c.root);for(let b of(d.activePaneId&&a.some(a=>a.id===d.activePaneId)&&(c.activePaneId=d.activePaneId),a)){let a=(0,l.findPane)(d.root,b.id);a?.activeTabId&&b.tabs.some(b=>b.id===a.activeTabId)&&(b.activeTabId=a.activeTabId)}}a({layout:c,...u(c,b().isSplitting)})},x=(a,b,c,d)=>{let{layout:e}=b();if(!e)return;let f=(0,l.updatePaneInTree)(e.root,c,d);f!==e.root&&v(a,b,{...e,root:f})},y=async(a,b)=>{try{let c=await fetch(a,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!c.ok)return null;return await c.json()}catch{return null}},z=(0,d.create)((a,b)=>({layout:null,isLoading:!0,error:null,isSplitting:!1,workspaceId:null,retryCount:0,paneCount:0,canSplit:!1,pendingFocusTabId:null,setWorkspaceId:b=>{s=!1,a({workspaceId:b})},setLayout:c=>{v(a,b,c)},fetchLayout:async(c,d)=>{if(s)return;let e=c??b().workspaceId;if(!e)return;p?.abort();let h=new AbortController;p=h,b().layout||a({isLoading:!0,error:null});try{let c=await fetch(t("/api/layout",e),{signal:h.signal});if(!c.ok)throw Error();let f=await c.json();if(h.signal.aborted)return;let g=b().layout;if(!1!==d){let a=(0,l.collectPanes)(f.root);if(g)for(let b of(g.activePaneId&&a.some(a=>a.id===g.activePaneId)&&(f.activePaneId=g.activePaneId),a)){let a=(0,l.findPane)(g.root,b.id);a?.activeTabId&&b.tabs.some(b=>b.id===a.activeTabId)&&(b.activeTabId=a.activeTabId)}else{let b=(a=>{try{return sessionStorage.getItem(`${m}${a}`)}catch{return null}})(e);for(let c of(b&&a.some(a=>a.id===b)&&(f.activePaneId=b),a)){let a=o(c.id);a&&c.tabs.some(b=>b.id===a)&&(c.activeTabId=a)}}}if(g){let c={root:g.root,activePaneId:g.activePaneId},d={root:f.root,activePaneId:f.activePaneId};if(JSON.stringify(c)===JSON.stringify(d)){let c=b().pendingFocusTabId;c&&(a({pendingFocusTabId:null}),b().focusTab(c));return}}let i=b().pendingFocusTabId,j=null;if(i){for(let b of(a({pendingFocusTabId:null}),(0,l.collectPanes)(f.root)))if(b.tabs.some(a=>a.id===i)){f.activePaneId=b.id,b.activeTabId=i,j=b.id;break}}a({layout:f,retryCount:0,...u(f,b().isSplitting)}),j&&(y(t("/api/layout",e),{activePaneId:j}),y(t(`/api/layout/pane/${j}`,e),{activeTabId:i}))}catch(d){if(d instanceof DOMException&&"AbortError"===d.name)return;let c=b().retryCount+1;if(a({retryCount:c}),c>=3)try{let c=await fetch(t("/api/layout/pane",e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(c.ok){let{paneId:d,tab:e}=await c.json(),h={root:{type:"pane",id:d,tabs:[e],activeTabId:e.id},activePaneId:d,updatedAt:new Date().toISOString()};a({layout:h,...u(h,b().isSplitting)}),f.toast.info((0,g.t)("terminal","fallbackLayout")),a({retryCount:0});return}}catch{}a({error:(0,g.t)("terminal","layoutFetchError")}),q?.()}finally{h.signal.aborted||a({isLoading:!1})}},splitPane:async(c,d)=>{let{layout:e,isSplitting:h,workspaceId:i}=b();if(e&&!h&&!((0,l.collectPanes)(e.root).length>=10)){a({isSplitting:!0,canSplit:!1});try{let f,g,h=(0,l.findPane)(e.root,c),j=h?.tabs.find(a=>a.id===h.activeTabId);if(j){g=j.panelType;try{let a=await fetch(t(`/api/layout/cwd?session=${j.sessionName}`,i));a.ok&&(f=(await a.json()).cwd)}catch{}}let k=await fetch(t("/api/layout/pane",i),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sourcePaneId:c,orientation:d,cwd:f,panelType:g})});if(!k.ok)throw Error();let m=await k.json();v(a,b,m)}catch{f.toast.error((0,g.t)("terminal","splitFailed"))}finally{a(a=>({isSplitting:!1,canSplit:a.paneCount<10}))}}},closePane:async c=>{let{layout:d,workspaceId:e}=b();if(d&&!((0,l.collectPanes)(d.root).length<=1))try{let d=await fetch(t(`/api/layout/pane/${c}`,e),{method:"DELETE"});if(!d.ok)throw Error();let f=await d.json();v(a,b,f)}catch{f.toast.error("Pane을 닫을 수 없습니다")}},focusPane:c=>{let{layout:d,workspaceId:e}=b();d&&d.activePaneId!==c&&(a({layout:{...d,activePaneId:c}}),y(t("/api/layout",e),{activePaneId:c}).then(c=>{c&&w(a,b,c)}))},updateRatio:(c,d)=>{let{layout:e,workspaceId:f}=b();e&&(a({layout:{...e,root:(0,l.updateRatioAtPath)(e.root,c,d)}}),r&&clearTimeout(r),r=setTimeout(()=>{r=null,y(t("/api/layout",f),{ratioUpdate:{path:c,ratio:d}}).then(c=>{c&&w(a,b,c)})},300))},moveTab:(c,d,e,f)=>{if(d===e)return;let{layout:g,workspaceId:h}=b();if(!g)return;let i=JSON.parse(JSON.stringify(g)),j=(0,l.findPane)(i.root,d),k=(0,l.findPane)(i.root,e);if(j&&k){let g=j.tabs.findIndex(a=>a.id===c);if(-1!==g){let[h]=j.tabs.splice(g,1);j.activeTabId===c&&(j.activeTabId=j.tabs[0]?.id??null),j.tabs.forEach((a,b)=>{a.order=b}),k.tabs.splice(f,0,h),k.tabs.forEach((a,b)=>{a.order=b}),k.activeTabId=c,0===j.tabs.length&&(0,l.collectPanes)(i.root).length>1&&(0,l.removePaneWithFocus)(i,d),i.activePaneId=e,v(a,b,i)}}fetch(t(`/api/layout/pane/${d}/tabs/${c}/move`,h),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({toPaneId:e,toIndex:f})}).then(async c=>{c.ok?w(a,b,await c.json()):await b().fetchLayout(void 0,!1)}).catch(()=>b().fetchLayout(void 0,!1))},createTabInPane:async(c,d,e)=>{let{layout:h,workspaceId:j}=b();try{let f,g=d,m=h?(0,l.findPane)(h.root,c):void 0,n=m?.tabs.find(a=>a.id===m.activeTabId);!g&&n&&(g=n.panelType),"web-browser"!==g&&n&&(f=k.default.getState().metadata[n.id]?.cwd);let o=await fetch(t(`/api/layout/pane/${c}/tabs`,j),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:f,panelType:g,command:e})});if(!o.ok)throw Error();let p=await o.json();return e&&i.default.getState().initTab(p.id,{panelType:g,isRestarting:!0}),x(a,b,c,a=>({...a,tabs:[...a.tabs,p],activeTabId:p.id})),b().fetchLayout(),p}catch{return f.toast.error((0,g.t)("terminal","tabCreateFailed")),null}},deleteTabInPane:async(c,d)=>{(0,h.clearInputDraft)(d),i.default.getState().cancelTab(d),x(a,b,c,a=>{let b=[...a.tabs].sort((a,b)=>a.order-b.order),c=b.findIndex(a=>a.id===d),e=b.filter(a=>a.id!==d);e.forEach((a,b)=>{a.order=b});let f=a.activeTabId;if(a.activeTabId===d){let a=b[c+1]||b[c-1];f=a?.id??null}return{...a,tabs:e,activeTabId:f}});let{workspaceId:e}=b();try{let a=await fetch(t(`/api/layout/pane/${c}/tabs/${d}`,e),{method:"DELETE"});a.ok||404===a.status||(f.toast.error((0,g.t)("terminal","tabDeleteError")),await b().fetchLayout())}catch{f.toast.error((0,g.t)("terminal","tabDeleteError")),await b().fetchLayout()}},restartTabInPane:async(a,c,d)=>{let{workspaceId:e}=b();try{return(await fetch(t(`/api/layout/pane/${a}/tabs/${c}`,e),{method:"POST",headers:d?{"Content-Type":"application/json"}:void 0,body:d?JSON.stringify({command:d}):void 0})).ok}catch{return f.toast.error((0,g.t)("terminal","sessionRestartFailed")),!1}},switchTabInPane:(c,d)=>{x(a,b,c,a=>({...a,activeTabId:d}));let{workspaceId:e}=b();y(t(`/api/layout/pane/${c}`,e),{activeTabId:d}).then(c=>{c&&w(a,b,c)})},renameTabInPane:async(c,d,e)=>{x(a,b,c,a=>({...a,tabs:a.tabs.map(a=>a.id===d?{...a,name:e}:a)}));let{workspaceId:h}=b(),i=await y(t(`/api/layout/pane/${c}/tabs/${d}`,h),{name:e});i?w(a,b,i):f.toast.error((0,g.t)("terminal","tabRenameFailed"))},reorderTabsInPane:(c,d)=>{x(a,b,c,a=>{let b=new Map(a.tabs.map(a=>[a.id,a])),c=d.map((a,c)=>{let d=b.get(a);return d?{...d,order:c}:null}).filter(a=>null!==a);return{...a,tabs:c}});let{workspaceId:e}=b();y(t(`/api/layout/pane/${c}/tabs/order`,e),{tabIds:d}).then(c=>{c&&w(a,b,c)})},removeTabLocally:(a,c)=>{(0,h.clearInputDraft)(c);let{workspaceId:d}=b();fetch(t(`/api/layout/pane/${a}/tabs/${c}`,d),{method:"DELETE"}).then(()=>b().fetchLayout()).catch(()=>{console.log("[layout] removeTabLocally failed")})},equalizeRatios:()=>{let{workspaceId:c}=b();y(t("/api/layout",c),{equalize:!0}).then(c=>{c&&w(a,b,c)})},updateTabPanelType:(c,d,e)=>{x(a,b,c,a=>({...a,tabs:a.tabs.map(a=>{if(a.id!==d)return a;let b={...a,panelType:e};return"terminal"===e&&(b.claudeSessionId=null),b})})),i.default.getState().setPanelType(d,e);let{workspaceId:f}=b();y(t(`/api/layout/pane/${c}/tabs/${d}`,f),{panelType:e}).then(c=>{c&&w(a,b,c)})},clearLayout:()=>{s=!0,p?.abort(),a({layout:null,paneCount:0,canSplit:!1})},focusTab:a=>{let{layout:c}=b();if(!c)return!1;for(let d of(0,l.collectPanes)(c.root))if(d.tabs.some(b=>b.id===a))return b().focusPane(d.id),b().switchTabInPane(d.id,a),!0;return!1},focusPrevTab:()=>{let{layout:a}=b();if(!a)return;let c=(0,l.collectPanes)(a.root),d=c.find(b=>b.id===a.activePaneId);if(!d)return;let e=[...d.tabs].sort((a,b)=>a.order-b.order),f=e.findIndex(a=>a.id===d.activeTabId);if(f>0)b().switchTabInPane(d.id,e[f-1].id);else{let a=c.indexOf(d);if(a>0){let d=c[a-1],e=[...d.tabs].sort((a,b)=>a.order-b.order);b().focusPane(d.id),b().switchTabInPane(d.id,e[e.length-1].id)}}},focusNextTab:()=>{let{layout:a}=b();if(!a)return;let c=(0,l.collectPanes)(a.root),d=c.find(b=>b.id===a.activePaneId);if(!d)return;let e=[...d.tabs].sort((a,b)=>a.order-b.order),f=e.findIndex(a=>a.id===d.activeTabId);if(f<e.length-1)b().switchTabInPane(d.id,e[f+1].id);else{let a=c.indexOf(d);if(a<c.length-1){let d=c[a+1],e=[...d.tabs].sort((a,b)=>a.order-b.order);b().focusPane(d.id),b().switchTabInPane(d.id,e[0].id)}}},focusTabByIndex:a=>{let{layout:c}=b();if(!c?.activePaneId)return;let d=(0,l.collectPanes)(c.root).find(a=>a.id===c.activePaneId);if(!d)return;let e=[...d.tabs].sort((a,b)=>a.order-b.order),f=a>=e.length?e[e.length-1]:e[a];f&&f.id!==d.activeTabId&&b().switchTabInPane(d.id,f.id)}}));z.subscribe((a,b)=>{if(a.layout&&a.workspaceId&&a.layout!==b.layout){var c=a.workspaceId,d=a.layout;try{for(let a of(d.activePaneId&&sessionStorage.setItem(`${m}${c}`,d.activePaneId),(0,l.collectPanes)(d.root)))a.activeTabId&&sessionStorage.setItem(`${n}${a.id}`,a.activeTabId)}catch{}}});let A=(a,b)=>{let d=z.getState();if("/"!==c.default.pathname){z.setState({pendingFocusTabId:b}),j.default.getState().switchWorkspace(a),c.default.push("/");return}a===d.workspaceId?d.focusTab(b):(d.clearLayout(),z.setState({pendingFocusTabId:b}),j.default.getState().switchWorkspace(a))},B=async(a,b,c,d,e)=>{let f=j.default.getState(),g=a,h=f.workspaces.find(b=>b.id===a);if(!h){if(!e)return;let a=await f.createWorkspace(e,d,c??void 0);if(!a)return;g=a.id;let b=await fetch(t("/api/layout",g));if(!b.ok)return;let h=await b.json(),j=(0,l.collectAllTabs)(h.root)[0];if(!j)return;c&&i.default.getState().initTab(j.id,{panelType:"claude-code",isResuming:!0}),A(g,j.id);return}let k=await fetch(t("/api/layout",g));if(!k.ok)return;let m=await k.json();if((0,l.collectAllTabs)(m.root).some(a=>a.id===b))return void A(g,b);let n=m.activePaneId??(0,l.getFirstPaneId)(m.root),o={panelType:"claude-code",cwd:h.directories[0]};c&&(o.resumeSessionId=c);let p=await fetch(t(`/api/layout/pane/${n}/tabs`,g),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)});if(!p.ok)return;let q=await p.json();c&&i.default.getState().initTab(q.id,{panelType:"claude-code",isResuming:!0}),g===z.getState().workspaceId?(z.setState({pendingFocusTabId:q.id}),z.getState().fetchLayout()):A(g,q.id)},C=({workspaceId:a,onFetchError:c})=>((0,b.useEffect)(()=>{q=c??null},[c]),(0,b.useEffect)(()=>{if(a){let b=z.getState();b.setWorkspaceId(a),b.fetchLayout(a)}},[a]),(0,b.useEffect)(()=>z.subscribe(a=>{let b=a.workspaceId;if(!b||!a.layout?.root)return;let c=(0,l.collectPanes)(a.layout.root).flatMap(a=>a.tabs.map(a=>a.id));i.default.getState().setTabOrder(b,c)}),[]),z((0,e.useShallow)(a=>({layout:a.layout,isLoading:a.isLoading,error:a.error,isSplitting:a.isSplitting,paneCount:a.paneCount,canSplit:a.canSplit,splitPane:a.splitPane,closePane:a.closePane,focusPane:a.focusPane,updateRatio:a.updateRatio,moveTab:a.moveTab,createTabInPane:a.createTabInPane,deleteTabInPane:a.deleteTabInPane,restartTabInPane:a.restartTabInPane,switchTabInPane:a.switchTabInPane,renameTabInPane:a.renameTabInPane,reorderTabsInPane:a.reorderTabsInPane,removeTabLocally:a.removeTabLocally,equalizeRatios:a.equalizeRatios,updateTabPanelType:a.updateTabPanelType,clearLayout:a.clearLayout,fetchLayout:a.fetchLayout,focusTab:a.focusTab,focusPrevTab:a.focusPrevTab,focusNextTab:a.focusNextTab,focusTabByIndex:a.focusTabByIndex}))))},199462,a=>{"use strict";a.s(["default",()=>j]);var b=a.i(4873),c=a.i(626605),d=a.i(144784),e=a.i(912251);let f=null,g="",h=()=>{f&&clearTimeout(f),f=setTimeout(()=>{f=null;let{metadata:a}=i.getState(),b=c.useLayoutStore.getState().layout,h=c.useLayoutStore.getState().workspaceId;if(!b||!h)return;let j=`?workspace=${h}`;for(let c of(0,d.collectPanes)(b.root))for(let b of c.tabs){let d=a[b.id];if(!d)continue;let e={};void 0!==d.title&&d.title!==b.title&&(e.title=d.title),void 0!==d.cwd&&d.cwd!==b.cwd&&(e.cwd=d.cwd),void 0!==d.lastCommand&&(d.lastCommand??null)!==(b.lastCommand??null)&&(e.lastCommand=d.lastCommand??null),Object.keys(e).length>0&&fetch(`/api/layout/pane/${c.id}/tabs/${b.id}${j}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}).catch(a=>{console.log(`[tab-metadata] sync failed: ${a instanceof Error?a.message:a}`)})}let k=[...new Set(Object.values(a).map(a=>a.cwd).filter(a=>!!a))],l=k.join("\0");if(l!==g){g=l;let{activeWorkspaceId:a,updateDirectories:b}=e.default.getState();a&&k.length>0&&b(a,k)}},100)},i=(0,b.create)(a=>({metadata:{},setTitle:(b,c)=>{a(a=>{let d=a.metadata[b];return d?.title===c?a:{metadata:{...a.metadata,[b]:{...d,title:c}}}}),h()},setCwd:(b,c)=>{a(a=>{let d=a.metadata[b];return d?.cwd===c?a:{metadata:{...a.metadata,[b]:{...d,cwd:c}}}}),h()},setLastCommand:(b,c)=>{a(a=>{let d=a.metadata[b];return d?.lastCommand===c?a:{metadata:{...a.metadata,[b]:{...d,lastCommand:c}}}}),h()},removeTab:b=>{a(a=>{let{[b]:c,...d}=a.metadata;return{metadata:d}}),h()},hydrate:b=>{a(a=>{let c={};for(let[d,e]of Object.entries(b)){let b=a.metadata[d];b?c[d]={...e,...b.title?{title:b.title}:{},...b.cwd?{cwd:b.cwd}:{}}:c[d]=e}return{metadata:c}}),g=""},retainOnly:b=>{a(a=>{let c={};for(let d of b)a.metadata[d]&&(c[d]=a.metadata[d]);return{metadata:c}})},reset:()=>{f&&clearTimeout(f),f=null,g="",a({metadata:{}})}})),j=i},266254,168711,175679,206456,409679,a=>{"use strict";var b=a.i(127669),c=a.i(760644),d=a.i(199462),e=a.i(4873);let f=(0,e.create)(a=>({data:null,setData:b=>a({data:b})}));a.s(["default",0,f],168711);let g=(0,e.create)(a=>({entries:[],syncFromServer:b=>a({entries:b}),upsertEntry:b=>a(a=>{let c=a.entries.findIndex(a=>a.id===b.id);if(c>=0){let d=[...a.entries];return d[c]=b,{entries:d}}return{entries:[b,...a.entries]}})}));a.s(["default",0,g],175679);let h=new Set(["zsh","bash","fish","sh","-zsh","-bash","-fish","-sh"]),i=a=>{if("~"===a||"/"===a)return a;let b=a.replace(/\/$/,"").split("/");return b[b.length-1]||a},j=a=>{let b=a.trim();if(!b)return null;let c=b.indexOf("|");return c>0?b.slice(0,c):null},k=a=>{let b=a.trim();if(!b)return"";let c=j(a);if(null!==c){let a=b.slice(b.indexOf("|")+1);return h.has(c)?i(a):c}let d=b.match(/@[^:]+:\s*(.*)/);if(d)return i(d[1].trim());if(b.startsWith("/")||b.startsWith("~"))return i(b);let e=b.split(/\s+/)[0];return h.has(e)?"":e||""};a.s(["formatTabTitle",0,k,"parseCurrentCommand",0,j],206456);let l=null;a.s(["ackNotificationInput",0,(a,b)=>{l?.readyState===WebSocket.OPEN&&l.send(JSON.stringify({type:"status:ack-notification",tabId:a,seq:b}))},"default",0,()=>{let a=(0,b.useRef)(0),e=(0,b.useRef)(null),h=(0,b.useRef)(!0);(0,b.useEffect)(()=>{h.current=!0;let b=()=>{if(!h.current)return;let i="https:"===location.protocol?"wss:":"ws:",j=new WebSocket(`${i}//${location.host}/api/status`);l=j,j.onopen=()=>{h.current&&(a.current=0,c.default.getState().setStatusWsConnected(!0))},j.onmessage=a=>{if(h.current)try{let b=JSON.parse(a.data);switch(b.type){case"status:sync":for(let[a,e]of(c.default.getState().syncAllFromServer(b.tabs),Object.entries(b.tabs)))e.paneTitle&&!d.default.getState().metadata[a]?.title&&d.default.getState().setTitle(a,k(e.paneTitle));break;case"status:update":c.default.getState().updateFromServer(b.tabId,{cliState:b.cliState,workspaceId:b.workspaceId,tabName:b.tabName,panelType:b.panelType,terminalStatus:b.terminalStatus,listeningPorts:b.listeningPorts,currentProcess:b.currentProcess,claudeSummary:b.claudeSummary,lastUserMessage:b.lastUserMessage,lastAssistantMessage:b.lastAssistantMessage,currentAction:b.currentAction,readyForReviewAt:b.readyForReviewAt,busySince:b.busySince,dismissedAt:b.dismissedAt,claudeSessionId:b.claudeSessionId,compactingSince:b.compactingSince,lastEvent:b.lastEvent,eventSeq:b.eventSeq}),b.paneTitle&&d.default.getState().setTitle(b.tabId,k(b.paneTitle));break;case"status:hook-event":c.default.getState().applyHookEvent(b.tabId,b.event);break;case"rate-limits:update":f.getState().setData(b.data);break;case"session-history:sync":g.getState().syncFromServer(b.entries);break;case"session-history:update":g.getState().upsertEntry(b.entry)}}catch{}},j.onclose=()=>{if(!h.current)return;c.default.getState().setStatusWsConnected(!1),l=null;let d=Math.min(1e3*Math.pow(2,a.current),3e4);a.current++,e.current=setTimeout(b,d)},j.onerror=()=>{}};b();let i=()=>{if("visible"!==document.visibilityState)return;let c=l?.readyState;c!==WebSocket.OPEN&&c!==WebSocket.CONNECTING&&(e.current&&(clearTimeout(e.current),e.current=null),a.current=0,b())};return document.addEventListener("visibilitychange",i),()=>{h.current=!1,e.current&&(clearTimeout(e.current),e.current=null),l&&(l.close(),l=null),document.removeEventListener("visibilitychange",i)}},[])},"dismissTab",0,a=>{c.default.getState().dismissTab(a),l?.readyState===WebSocket.OPEN&&l.send(JSON.stringify({type:"status:tab-dismissed",tabId:a}))},"requestSync",0,()=>{l?.readyState===WebSocket.OPEN&&l.send(JSON.stringify({type:"status:request-sync"}))}],266254),a.i(986013),a.i(678240),a.i(626605);var m=a.i(721043);let n=async()=>{try{let a=await navigator.serviceWorker.ready,b=await a.pushManager.getSubscription();return b?.endpoint??null}catch{return null}},o=async a=>{fetch("/api/push/register-session",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({endpoint:await n(),sessionId:a}),keepalive:!0}).catch(()=>{})};a.s(["default",0,()=>{(0,b.useRef)(!1),(0,b.useEffect)(()=>{m.default},[]),(0,b.useEffect)(()=>{},[])},"registerPushTarget",0,o],409679)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_0-xx2s1._.js.map
|