viba-cli 0.9.0 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +2 -2
- package/.next/fallback-build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/server/app/_global-error.html +2 -2
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +2 -2
- package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +3 -3
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/new/page/server-reference-manifest.json +23 -23
- package/.next/server/app/new/page.js.nft.json +1 -1
- package/.next/server/app/new/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page/server-reference-manifest.json +23 -23
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/session/[sessionId]/page/server-reference-manifest.json +49 -34
- package/.next/server/app/session/[sessionId]/page.js +1 -1
- package/.next/server/app/session/[sessionId]/page.js.nft.json +1 -1
- package/.next/server/app/session/[sessionId]/page_client-reference-manifest.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__41b2f23a._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__41b2f23a._.js.map +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__528f3aa4._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__528f3aa4._.js.map +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__58bd04dc._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__58bd04dc._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__8174ed94._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__8174ed94._.js.map +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__f1bfaf02._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__f1bfaf02._.js.map +1 -1
- package/.next/server/chunks/ssr/{_db0dffc3._.js → _9646ad08._.js} +2 -2
- package/.next/server/chunks/ssr/{_db0dffc3._.js.map → _9646ad08._.js.map} +1 -1
- package/.next/server/chunks/ssr/{_3ddedfc7._.js → _c0358c5b._.js} +3 -3
- package/.next/server/chunks/ssr/{_3ddedfc7._.js.map → _c0358c5b._.js.map} +1 -1
- package/.next/server/chunks/ssr/{_876ebecd._.js → _d93713cd._.js} +2 -2
- package/.next/server/chunks/ssr/{_876ebecd._.js.map → _d93713cd._.js.map} +1 -1
- package/.next/server/chunks/ssr/src_app_session_[sessionId]_SessionPageClient_tsx_dab490d7._.js +2 -2
- package/.next/server/chunks/ssr/src_app_session_[sessionId]_SessionPageClient_tsx_dab490d7._.js.map +1 -1
- package/.next/server/chunks/ssr/src_components_GitRepoSelector_tsx_05c81afa._.js +1 -1
- package/.next/server/chunks/ssr/src_components_GitRepoSelector_tsx_05c81afa._.js.map +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +2 -2
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +68 -53
- package/.next/static/chunks/{ab57497e68933ba8.js → 3d7671157273c83e.js} +2 -2
- package/.next/static/chunks/{213d40ee98c50fa4.js → 60c8799280c0a2aa.js} +3 -3
- package/.next/static/chunks/{1d5180fde0ab1786.js → d704653fa3877078.js} +1 -1
- package/.next/static/chunks/dc895d87368362da.css +3 -0
- package/.next/static/chunks/{e84f81a4a97e78fe.js → ddf168739520f2c8.js} +1 -1
- package/.next/static/chunks/fa5aedf8f5b6b1cf.js +3 -0
- package/package.json +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__36769160._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__36769160._.js.map +0 -1
- package/.next/static/chunks/37ee090b9f9f2c10.js +0 -3
- package/.next/static/chunks/7611b8b4cbbc4eb6.css +0 -3
- /package/.next/static/{w_uhsrEhAgpd7YNGPM5oc → jf6waTxzXtuKxCuxb-dhb}/_buildManifest.js +0 -0
- /package/.next/static/{w_uhsrEhAgpd7YNGPM5oc → jf6waTxzXtuKxCuxb-dhb}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{w_uhsrEhAgpd7YNGPM5oc → jf6waTxzXtuKxCuxb-dhb}/_ssgManifest.js +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"node": {
|
|
3
|
-
"
|
|
3
|
+
"40462636c960751092e7156c887ecd5c775d22267d": {
|
|
4
4
|
"workers": {
|
|
5
5
|
"app/new/page": {
|
|
6
6
|
"moduleId": 88027,
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"filename": "src/app/actions/git.ts",
|
|
23
23
|
"exportedName": "checkDirectoryAccessible"
|
|
24
24
|
},
|
|
25
|
-
"
|
|
25
|
+
"4080bbb13e50e3eba66c4221569be548e143f60923": {
|
|
26
26
|
"workers": {
|
|
27
27
|
"app/new/page": {
|
|
28
28
|
"moduleId": 88027,
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"filename": "src/app/actions/git.ts",
|
|
45
45
|
"exportedName": "listDirectories"
|
|
46
46
|
},
|
|
47
|
-
"
|
|
47
|
+
"0052526f325cd4e29953b4651cd5c1b8bbbe53e3f5": {
|
|
48
48
|
"workers": {
|
|
49
49
|
"app/new/page": {
|
|
50
50
|
"moduleId": 88027,
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"filename": "src/app/actions/git.ts"
|
|
60
60
|
},
|
|
61
61
|
"app/session/[sessionId]/page": {
|
|
62
|
-
"moduleId":
|
|
62
|
+
"moduleId": 39298,
|
|
63
63
|
"async": false,
|
|
64
64
|
"exportedName": "getHomeDirectory",
|
|
65
65
|
"filename": "src/app/actions/git.ts"
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
"filename": "src/app/actions/git.ts",
|
|
74
74
|
"exportedName": "getHomeDirectory"
|
|
75
75
|
},
|
|
76
|
-
"
|
|
76
|
+
"40b790cb2cdb35e06c06c9a2319b231de1a9918ded": {
|
|
77
77
|
"workers": {
|
|
78
78
|
"app/new/page": {
|
|
79
79
|
"moduleId": 88027,
|
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
"filename": "src/app/actions/git.ts",
|
|
96
96
|
"exportedName": "checkIsGitRepo"
|
|
97
97
|
},
|
|
98
|
-
"
|
|
98
|
+
"4089064505ffd748138851e0e1544d9782c6caada2": {
|
|
99
99
|
"workers": {
|
|
100
100
|
"app/new/page": {
|
|
101
101
|
"moduleId": 88027,
|
|
@@ -117,7 +117,7 @@
|
|
|
117
117
|
"filename": "src/app/actions/git.ts",
|
|
118
118
|
"exportedName": "getBranches"
|
|
119
119
|
},
|
|
120
|
-
"
|
|
120
|
+
"6047ec78f51eb3ba4d0f2f7505f4851c80a977bddd": {
|
|
121
121
|
"workers": {
|
|
122
122
|
"app/new/page": {
|
|
123
123
|
"moduleId": 88027,
|
|
@@ -139,7 +139,7 @@
|
|
|
139
139
|
"filename": "src/app/actions/git.ts",
|
|
140
140
|
"exportedName": "checkoutBranch"
|
|
141
141
|
},
|
|
142
|
-
"
|
|
142
|
+
"7fdfaa1e5b55debb949515847b6502be9efca02631": {
|
|
143
143
|
"workers": {
|
|
144
144
|
"app/new/page": {
|
|
145
145
|
"moduleId": 88027,
|
|
@@ -154,7 +154,7 @@
|
|
|
154
154
|
"filename": "src/app/actions/git.ts"
|
|
155
155
|
},
|
|
156
156
|
"app/session/[sessionId]/page": {
|
|
157
|
-
"moduleId":
|
|
157
|
+
"moduleId": 39298,
|
|
158
158
|
"async": false,
|
|
159
159
|
"exportedName": "startTtydProcess",
|
|
160
160
|
"filename": "src/app/actions/git.ts"
|
|
@@ -168,7 +168,7 @@
|
|
|
168
168
|
"filename": "src/app/actions/git.ts",
|
|
169
169
|
"exportedName": "startTtydProcess"
|
|
170
170
|
},
|
|
171
|
-
"
|
|
171
|
+
"7faf927cccd227030a200d885543981c7cc79dbf4c": {
|
|
172
172
|
"workers": {
|
|
173
173
|
"app/new/page": {
|
|
174
174
|
"moduleId": 88027,
|
|
@@ -190,7 +190,7 @@
|
|
|
190
190
|
"filename": "src/app/actions/git.ts",
|
|
191
191
|
"exportedName": "getStartupScript"
|
|
192
192
|
},
|
|
193
|
-
"
|
|
193
|
+
"7f8d87a4b65f3c6dabb9653e6f30ebf96b7939f13c": {
|
|
194
194
|
"workers": {
|
|
195
195
|
"app/new/page": {
|
|
196
196
|
"moduleId": 88027,
|
|
@@ -212,7 +212,7 @@
|
|
|
212
212
|
"filename": "src/app/actions/git.ts",
|
|
213
213
|
"exportedName": "getDefaultDevServerScript"
|
|
214
214
|
},
|
|
215
|
-
"
|
|
215
|
+
"7f4e5bfeb4532f37deed85bda3fc5bc056e2c2cf21": {
|
|
216
216
|
"workers": {
|
|
217
217
|
"app/new/page": {
|
|
218
218
|
"moduleId": 88027,
|
|
@@ -234,7 +234,7 @@
|
|
|
234
234
|
"filename": "src/app/actions/git.ts",
|
|
235
235
|
"exportedName": "listRepoFiles"
|
|
236
236
|
},
|
|
237
|
-
"
|
|
237
|
+
"7f4c027bd37cd5535f16f02982f013afb7a1c41b37": {
|
|
238
238
|
"workers": {
|
|
239
239
|
"app/new/page": {
|
|
240
240
|
"moduleId": 88027,
|
|
@@ -249,7 +249,7 @@
|
|
|
249
249
|
"filename": "src/app/actions/git.ts"
|
|
250
250
|
},
|
|
251
251
|
"app/session/[sessionId]/page": {
|
|
252
|
-
"moduleId":
|
|
252
|
+
"moduleId": 39298,
|
|
253
253
|
"async": false,
|
|
254
254
|
"exportedName": "saveAttachments",
|
|
255
255
|
"filename": "src/app/actions/git.ts"
|
|
@@ -263,7 +263,7 @@
|
|
|
263
263
|
"filename": "src/app/actions/git.ts",
|
|
264
264
|
"exportedName": "saveAttachments"
|
|
265
265
|
},
|
|
266
|
-
"
|
|
266
|
+
"40d566ae8fed2a04afea397f5023c2603b87c3d3eb": {
|
|
267
267
|
"workers": {
|
|
268
268
|
"app/new/page": {
|
|
269
269
|
"moduleId": 88027,
|
|
@@ -285,7 +285,7 @@
|
|
|
285
285
|
"filename": "src/app/actions/git.ts",
|
|
286
286
|
"exportedName": "checkAgentCliInstalled"
|
|
287
287
|
},
|
|
288
|
-
"
|
|
288
|
+
"40f772d16818593780dde18587d2be3dc31326b8ac": {
|
|
289
289
|
"workers": {
|
|
290
290
|
"app/new/page": {
|
|
291
291
|
"moduleId": 88027,
|
|
@@ -307,7 +307,7 @@
|
|
|
307
307
|
"filename": "src/app/actions/git.ts",
|
|
308
308
|
"exportedName": "installAgentCli"
|
|
309
309
|
},
|
|
310
|
-
"
|
|
310
|
+
"40209f820f23d86c9dde01cbf9bd008331914d1d50": {
|
|
311
311
|
"workers": {
|
|
312
312
|
"app/new/page": {
|
|
313
313
|
"moduleId": 88027,
|
|
@@ -329,7 +329,7 @@
|
|
|
329
329
|
"filename": "src/app/actions/repository.ts",
|
|
330
330
|
"exportedName": "resolveRepositoryByName"
|
|
331
331
|
},
|
|
332
|
-
"
|
|
332
|
+
"707a6615571bb96b003d90d7bc50874388d612f696": {
|
|
333
333
|
"workers": {
|
|
334
334
|
"app/new/page": {
|
|
335
335
|
"moduleId": 88027,
|
|
@@ -351,7 +351,7 @@
|
|
|
351
351
|
"filename": "src/app/actions/session.ts",
|
|
352
352
|
"exportedName": "copySessionAttachments"
|
|
353
353
|
},
|
|
354
|
-
"
|
|
354
|
+
"702d43ade6a73f828eb152e2c4f7f2fcdb42fc70ee": {
|
|
355
355
|
"workers": {
|
|
356
356
|
"app/new/page": {
|
|
357
357
|
"moduleId": 88027,
|
|
@@ -373,7 +373,7 @@
|
|
|
373
373
|
"filename": "src/app/actions/session.ts",
|
|
374
374
|
"exportedName": "createSession"
|
|
375
375
|
},
|
|
376
|
-
"
|
|
376
|
+
"404d988b33c2c9e63917259bd7ccb5bfd5d339f0bc": {
|
|
377
377
|
"workers": {
|
|
378
378
|
"app/new/page": {
|
|
379
379
|
"moduleId": 88027,
|
|
@@ -395,7 +395,7 @@
|
|
|
395
395
|
"filename": "src/app/actions/session.ts",
|
|
396
396
|
"exportedName": "deleteSession"
|
|
397
397
|
},
|
|
398
|
-
"
|
|
398
|
+
"409cd756b10078a1c8332ce2c59e91f893be6662f0": {
|
|
399
399
|
"workers": {
|
|
400
400
|
"app/new/page": {
|
|
401
401
|
"moduleId": 88027,
|
|
@@ -417,7 +417,7 @@
|
|
|
417
417
|
"filename": "src/app/actions/session.ts",
|
|
418
418
|
"exportedName": "getSessionPrefillContext"
|
|
419
419
|
},
|
|
420
|
-
"
|
|
420
|
+
"40284adf4b914d3ad527c2eeb12b193682a600cd1b": {
|
|
421
421
|
"workers": {
|
|
422
422
|
"app/new/page": {
|
|
423
423
|
"moduleId": 88027,
|
|
@@ -439,7 +439,7 @@
|
|
|
439
439
|
"filename": "src/app/actions/session.ts",
|
|
440
440
|
"exportedName": "listSessions"
|
|
441
441
|
},
|
|
442
|
-
"
|
|
442
|
+
"601bb6a36e43a8c6bcd08f490c9ad76229dcfa442a": {
|
|
443
443
|
"workers": {
|
|
444
444
|
"app/new/page": {
|
|
445
445
|
"moduleId": 88027,
|
|
@@ -461,7 +461,7 @@
|
|
|
461
461
|
"filename": "src/app/actions/session.ts",
|
|
462
462
|
"exportedName": "saveSessionLaunchContext"
|
|
463
463
|
},
|
|
464
|
-
"
|
|
464
|
+
"00e94e7c7d0753bf0ba1906353cf2d62a3732f56f4": {
|
|
465
465
|
"workers": {
|
|
466
466
|
"app/new/page": {
|
|
467
467
|
"moduleId": 88027,
|
|
@@ -476,7 +476,7 @@
|
|
|
476
476
|
"filename": "src/app/actions/config.ts"
|
|
477
477
|
},
|
|
478
478
|
"app/session/[sessionId]/page": {
|
|
479
|
-
"moduleId":
|
|
479
|
+
"moduleId": 39298,
|
|
480
480
|
"async": false,
|
|
481
481
|
"exportedName": "getConfig",
|
|
482
482
|
"filename": "src/app/actions/config.ts"
|
|
@@ -490,7 +490,7 @@
|
|
|
490
490
|
"filename": "src/app/actions/config.ts",
|
|
491
491
|
"exportedName": "getConfig"
|
|
492
492
|
},
|
|
493
|
-
"
|
|
493
|
+
"404a85746998c22e07787cfc20adab4b93006d5e51": {
|
|
494
494
|
"workers": {
|
|
495
495
|
"app/new/page": {
|
|
496
496
|
"moduleId": 88027,
|
|
@@ -505,7 +505,7 @@
|
|
|
505
505
|
"filename": "src/app/actions/config.ts"
|
|
506
506
|
},
|
|
507
507
|
"app/session/[sessionId]/page": {
|
|
508
|
-
"moduleId":
|
|
508
|
+
"moduleId": 39298,
|
|
509
509
|
"async": false,
|
|
510
510
|
"exportedName": "updateConfig",
|
|
511
511
|
"filename": "src/app/actions/config.ts"
|
|
@@ -519,7 +519,7 @@
|
|
|
519
519
|
"filename": "src/app/actions/config.ts",
|
|
520
520
|
"exportedName": "updateConfig"
|
|
521
521
|
},
|
|
522
|
-
"
|
|
522
|
+
"60fff778365d399740d59ecef8dcbdd1aca58b47b2": {
|
|
523
523
|
"workers": {
|
|
524
524
|
"app/new/page": {
|
|
525
525
|
"moduleId": 88027,
|
|
@@ -541,10 +541,10 @@
|
|
|
541
541
|
"filename": "src/app/actions/config.ts",
|
|
542
542
|
"exportedName": "updateRepoSettings"
|
|
543
543
|
},
|
|
544
|
-
"
|
|
544
|
+
"40c63f16f811cafdf8118b4c120ac526b115a173bf": {
|
|
545
545
|
"workers": {
|
|
546
546
|
"app/session/[sessionId]/page": {
|
|
547
|
-
"moduleId":
|
|
547
|
+
"moduleId": 39298,
|
|
548
548
|
"async": false,
|
|
549
549
|
"exportedName": "deleteSessionInBackground",
|
|
550
550
|
"filename": "src/app/actions/session.ts"
|
|
@@ -556,10 +556,10 @@
|
|
|
556
556
|
"filename": "src/app/actions/session.ts",
|
|
557
557
|
"exportedName": "deleteSessionInBackground"
|
|
558
558
|
},
|
|
559
|
-
"
|
|
559
|
+
"40f38e4e0f255cc8a7b3dab06e62626a722c50ef0c": {
|
|
560
560
|
"workers": {
|
|
561
561
|
"app/session/[sessionId]/page": {
|
|
562
|
-
"moduleId":
|
|
562
|
+
"moduleId": 39298,
|
|
563
563
|
"async": false,
|
|
564
564
|
"exportedName": "getSessionDivergence",
|
|
565
565
|
"filename": "src/app/actions/session.ts"
|
|
@@ -571,10 +571,10 @@
|
|
|
571
571
|
"filename": "src/app/actions/session.ts",
|
|
572
572
|
"exportedName": "getSessionDivergence"
|
|
573
573
|
},
|
|
574
|
-
"
|
|
574
|
+
"408d24da288d92a656458db6d597e6f5211790d745": {
|
|
575
575
|
"workers": {
|
|
576
576
|
"app/session/[sessionId]/page": {
|
|
577
|
-
"moduleId":
|
|
577
|
+
"moduleId": 39298,
|
|
578
578
|
"async": false,
|
|
579
579
|
"exportedName": "getSessionUncommittedFileCount",
|
|
580
580
|
"filename": "src/app/actions/session.ts"
|
|
@@ -586,10 +586,10 @@
|
|
|
586
586
|
"filename": "src/app/actions/session.ts",
|
|
587
587
|
"exportedName": "getSessionUncommittedFileCount"
|
|
588
588
|
},
|
|
589
|
-
"
|
|
589
|
+
"400c526af91d470661a24269396e481437a659a8db": {
|
|
590
590
|
"workers": {
|
|
591
591
|
"app/session/[sessionId]/page": {
|
|
592
|
-
"moduleId":
|
|
592
|
+
"moduleId": 39298,
|
|
593
593
|
"async": false,
|
|
594
594
|
"exportedName": "listSessionBaseBranches",
|
|
595
595
|
"filename": "src/app/actions/session.ts"
|
|
@@ -601,10 +601,10 @@
|
|
|
601
601
|
"filename": "src/app/actions/session.ts",
|
|
602
602
|
"exportedName": "listSessionBaseBranches"
|
|
603
603
|
},
|
|
604
|
-
"
|
|
604
|
+
"40983ec8a6ba409943b4ea7c7a1f242a6178fad9ff": {
|
|
605
605
|
"workers": {
|
|
606
606
|
"app/session/[sessionId]/page": {
|
|
607
|
-
"moduleId":
|
|
607
|
+
"moduleId": 39298,
|
|
608
608
|
"async": false,
|
|
609
609
|
"exportedName": "mergeSessionToBase",
|
|
610
610
|
"filename": "src/app/actions/session.ts"
|
|
@@ -616,10 +616,10 @@
|
|
|
616
616
|
"filename": "src/app/actions/session.ts",
|
|
617
617
|
"exportedName": "mergeSessionToBase"
|
|
618
618
|
},
|
|
619
|
-
"
|
|
619
|
+
"4079b32064917d9bc9db64617e5f03e5739f5c4c8a": {
|
|
620
620
|
"workers": {
|
|
621
621
|
"app/session/[sessionId]/page": {
|
|
622
|
-
"moduleId":
|
|
622
|
+
"moduleId": 39298,
|
|
623
623
|
"async": false,
|
|
624
624
|
"exportedName": "rebaseSessionOntoBase",
|
|
625
625
|
"filename": "src/app/actions/session.ts"
|
|
@@ -631,10 +631,10 @@
|
|
|
631
631
|
"filename": "src/app/actions/session.ts",
|
|
632
632
|
"exportedName": "rebaseSessionOntoBase"
|
|
633
633
|
},
|
|
634
|
-
"
|
|
634
|
+
"602c28aceb6fcfd7c6bce76132576b5190ecb87cc4": {
|
|
635
635
|
"workers": {
|
|
636
636
|
"app/session/[sessionId]/page": {
|
|
637
|
-
"moduleId":
|
|
637
|
+
"moduleId": 39298,
|
|
638
638
|
"async": false,
|
|
639
639
|
"exportedName": "updateSessionBaseBranch",
|
|
640
640
|
"filename": "src/app/actions/session.ts"
|
|
@@ -646,10 +646,10 @@
|
|
|
646
646
|
"filename": "src/app/actions/session.ts",
|
|
647
647
|
"exportedName": "updateSessionBaseBranch"
|
|
648
648
|
},
|
|
649
|
-
"
|
|
649
|
+
"60e9d82a6fe905fc04d390b014f62b313da96100ad": {
|
|
650
650
|
"workers": {
|
|
651
651
|
"app/session/[sessionId]/page": {
|
|
652
|
-
"moduleId":
|
|
652
|
+
"moduleId": 39298,
|
|
653
653
|
"async": false,
|
|
654
654
|
"exportedName": "writeSessionPromptFile",
|
|
655
655
|
"filename": "src/app/actions/session.ts"
|
|
@@ -661,10 +661,25 @@
|
|
|
661
661
|
"filename": "src/app/actions/session.ts",
|
|
662
662
|
"exportedName": "writeSessionPromptFile"
|
|
663
663
|
},
|
|
664
|
-
"
|
|
664
|
+
"7f3e30ada6e062c5984d2ec838ffdbd18de9583faa": {
|
|
665
665
|
"workers": {
|
|
666
666
|
"app/session/[sessionId]/page": {
|
|
667
|
-
"moduleId":
|
|
667
|
+
"moduleId": 39298,
|
|
668
|
+
"async": false,
|
|
669
|
+
"exportedName": "setTmuxSessionMouseMode",
|
|
670
|
+
"filename": "src/app/actions/git.ts"
|
|
671
|
+
}
|
|
672
|
+
},
|
|
673
|
+
"layer": {
|
|
674
|
+
"app/session/[sessionId]/page": "action-browser"
|
|
675
|
+
},
|
|
676
|
+
"filename": "src/app/actions/git.ts",
|
|
677
|
+
"exportedName": "setTmuxSessionMouseMode"
|
|
678
|
+
},
|
|
679
|
+
"404d529bc3f2451bb1162dbbaaae62abbb7611a164": {
|
|
680
|
+
"workers": {
|
|
681
|
+
"app/session/[sessionId]/page": {
|
|
682
|
+
"moduleId": 39298,
|
|
668
683
|
"async": false,
|
|
669
684
|
"exportedName": "listPathEntries",
|
|
670
685
|
"filename": "src/app/actions/git.ts"
|
|
@@ -676,10 +691,10 @@
|
|
|
676
691
|
"filename": "src/app/actions/git.ts",
|
|
677
692
|
"exportedName": "listPathEntries"
|
|
678
693
|
},
|
|
679
|
-
"
|
|
694
|
+
"40d610d4f03a26a6ff19fc3cb1724e8db8382a9791": {
|
|
680
695
|
"workers": {
|
|
681
696
|
"app/session/[sessionId]/page": {
|
|
682
|
-
"moduleId":
|
|
697
|
+
"moduleId": 39298,
|
|
683
698
|
"async": false,
|
|
684
699
|
"exportedName": "consumeSessionLaunchContext",
|
|
685
700
|
"filename": "src/app/actions/session.ts"
|
|
@@ -691,10 +706,10 @@
|
|
|
691
706
|
"filename": "src/app/actions/session.ts",
|
|
692
707
|
"exportedName": "consumeSessionLaunchContext"
|
|
693
708
|
},
|
|
694
|
-
"
|
|
709
|
+
"40cb205e802eb0eee0ab948cd19779c3f71a2a016d": {
|
|
695
710
|
"workers": {
|
|
696
711
|
"app/session/[sessionId]/page": {
|
|
697
|
-
"moduleId":
|
|
712
|
+
"moduleId": 39298,
|
|
698
713
|
"async": false,
|
|
699
714
|
"exportedName": "getSessionMetadata",
|
|
700
715
|
"filename": "src/app/actions/session.ts"
|
|
@@ -706,10 +721,10 @@
|
|
|
706
721
|
"filename": "src/app/actions/session.ts",
|
|
707
722
|
"exportedName": "getSessionMetadata"
|
|
708
723
|
},
|
|
709
|
-
"
|
|
724
|
+
"40f3e9e7aca7f516a5c5aa73fed364d558a98220c7": {
|
|
710
725
|
"workers": {
|
|
711
726
|
"app/session/[sessionId]/page": {
|
|
712
|
-
"moduleId":
|
|
727
|
+
"moduleId": 39298,
|
|
713
728
|
"async": false,
|
|
714
729
|
"exportedName": "markSessionInitialized",
|
|
715
730
|
"filename": "src/app/actions/session.ts"
|
|
@@ -723,5 +738,5 @@
|
|
|
723
738
|
}
|
|
724
739
|
},
|
|
725
740
|
"edge": {},
|
|
726
|
-
"encryptionKey": "
|
|
741
|
+
"encryptionKey": "GDTHUBfjyH5eZDny0oiHLmkhz5WzoT7R8mpq2E7zNbM="
|
|
727
742
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,5951,e=>{"use strict";var t=e.i(43476),a=e.i(71645),s=e.i(75254);let r=(0,s.default)("folder-git-2",[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]]);var l=e.i(55716),i=e.i(7233);let n=(0,s.default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),c=(0,s.default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]),o=(0,s.default)("folder-cog",[["path",{d:"M10.3 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.98a2 2 0 0 1 1.69.9l.66 1.2A2 2 0 0 0 12 6h8a2 2 0 0 1 2 2v3.3",key:"128dxu"}],["path",{d:"m14.305 19.53.923-.382",key:"3m78fa"}],["path",{d:"m15.228 16.852-.923-.383",key:"npixar"}],["path",{d:"m16.852 15.228-.383-.923",key:"5xggr7"}],["path",{d:"m16.852 20.772-.383.924",key:"dpfhf9"}],["path",{d:"m19.148 15.228.383-.923",key:"1reyyz"}],["path",{d:"m19.53 21.696-.382-.924",key:"1goivc"}],["path",{d:"m20.772 16.852.924-.383",key:"htqkph"}],["path",{d:"m20.772 19.148.924.383",key:"9w9pjp"}],["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}]]),d=(0,s.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]),m=(0,s.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);var u=e.i(27612),h=e.i(31343),p=e.i(95187);let f=(0,p.createServerReference)("40c1e8b3d5e6522c1f7bc5040818c62ff7e9aebaba",p.callServer,void 0,p.findSourceMapURL,"checkDirectoryAccessible"),x=(0,p.createServerReference)("40b8c0e92fc4b126387567d056c1c4fc01f75e70d8",p.callServer,void 0,p.findSourceMapURL,"listDirectories");var b=e.i(72455),g=e.i(27025),v=e.i(71689);let y=(0,s.default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);var w=e.i(81016);function j({title:e,initialPath:s,onSelect:r,onCancel:l,checkRepo:i}){let[n,c]=(0,a.useState)(""),[o,d]=(0,a.useState)(""),[m,u]=(0,a.useState)([]),[h,p]=(0,a.useState)(!1),[j,N]=(0,a.useState)(null);(0,a.useEffect)(()=>{let e=!0;return(async()=>{try{let t=await (0,b.getHomeDirectory)();if(!e)return;d(t),c(s||t)}catch(t){if(console.error("Failed to resolve home directory:",t),!e)return;N("Failed to access your home directory."),c(s||"/")}})(),()=>{e=!1}},[s]),(0,a.useEffect)(()=>{if(!n)return;let e=!0;return(async()=>{p(!0),N(null);try{let t=await x(n);if(!e)return;if(0===t.length&&o&&n!==o){let t=await f(n);if(!e)return;if(!t){N(`Could not access "${n}". Showing home directory.`),c(o);return}}let a=t.map(e=>({name:e.name,path:e.path,isDirectory:e.isDirectory,isGitRepo:e.isGitRepo}));u(a)}catch(t){if(console.error(t),!e)return;if(o&&n!==o){N(`Could not access "${n}". Showing home directory.`),c(o);return}u([]),N("Failed to load directory contents")}finally{e&&p(!1)}})(),()=>{e=!1}},[n,o]);let S=async e=>{if(i&&!await i(e)){N("Selected directory is not a valid git repository."),setTimeout(()=>N(null),3e3);return}await r(e)},k=async()=>{await S(n)};return(0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50 backdrop-blur-sm p-4",children:(0,t.jsxs)("div",{className:"bg-base-200 rounded-lg shadow-xl w-full max-w-3xl h-[80vh] flex flex-col",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between p-4 border-b border-base-300",children:[(0,t.jsxs)("h2",{className:"text-xl font-bold flex items-center gap-2",children:[(0,t.jsx)(g.Folder,{className:"w-5 h-5"}),e||"Browse Local Repository"]}),(0,t.jsx)("button",{onClick:l,className:"btn btn-sm btn-ghost btn-circle",children:"✕"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 p-3 bg-base-300",children:[(0,t.jsx)("button",{onClick:()=>{let e=(0,w.getDirName)(n);e&&e!==n&&c(e)},className:"btn btn-sm btn-square btn-ghost",title:"Go Up",disabled:"/"===n||!n,children:(0,t.jsx)(v.ArrowLeft,{className:"w-4 h-4"})}),(0,t.jsx)("div",{className:"flex-1 overflow-x-auto whitespace-nowrap px-2 font-mono text-sm",children:n}),(0,t.jsx)("button",{onClick:k,className:"btn btn-sm btn-primary",children:"Select Current Folder"})]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto p-2",children:h?(0,t.jsx)("div",{className:"flex justify-center items-center h-full",children:(0,t.jsx)("span",{className:"loading loading-spinner loading-lg"})}):j?(0,t.jsx)("div",{className:"alert alert-error",children:j}):0===m.length?(0,t.jsx)("div",{className:"text-center text-base-content/50 mt-10",children:"Empty directory"}):(0,t.jsx)("div",{className:"grid grid-cols-1 gap-1",children:m.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between p-2 hover:bg-base-100 rounded-md cursor-pointer transition-colors",onClick:()=>{c(e.path)},children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 overflow-hidden",children:[(0,t.jsx)(g.Folder,{className:`w-5 h-5 ${e.isGitRepo?"text-primary":"text-base-content/70"}`}),(0,t.jsx)("span",{className:"truncate",children:e.name}),e.isGitRepo&&(0,t.jsx)("span",{className:"badge badge-xs badge-primary",children:"git"})]}),e.isGitRepo&&(0,t.jsxs)("button",{className:"btn btn-xs btn-primary",onClick:t=>{t.stopPropagation(),S(e.path)},title:`Select ${e.name}`,children:[(0,t.jsx)(y,{className:"w-3 h-3"}),"Select"]})]},e.path))})}),(0,t.jsx)("div",{className:"p-3 border-t border-base-300 text-xs text-base-content/50 text-center",children:'Navigate to a folder and click "Select Current Folder" to choose it.'})]})})}let N=(0,p.createServerReference)("40558db8f5d1953a6fad1157bf4e29bb0978c539eb",p.callServer,void 0,p.findSourceMapURL,"checkIsGitRepo"),S=(0,p.createServerReference)("40d6e1c12cda92b6d1dab3518ca9341ec9b4066d0c",p.callServer,void 0,p.findSourceMapURL,"getBranches"),k=(0,p.createServerReference)("6013b2df34cc557ab76b08385a5c29ba803eb58d38",p.callServer,void 0,p.findSourceMapURL,"checkoutBranch");var R=e.i(32222);let C=(0,p.createServerReference)("7f193f6f22e1f43cee233084148ac8f13fccc6c39d",p.callServer,void 0,p.findSourceMapURL,"getStartupScript"),M=(0,p.createServerReference)("7ff8c568510143aeb5854dff829f0273adf16dca4c",p.callServer,void 0,p.findSourceMapURL,"getDefaultDevServerScript"),D=(0,p.createServerReference)("7f1aaadeb918470b5dbcb97bd0c8a3d3c6661d5a5d",p.callServer,void 0,p.findSourceMapURL,"listRepoFiles");var L=e.i(75262);let E=(0,p.createServerReference)("408af8b78187d763c6f77dca22138a5014521b1ece",p.callServer,void 0,p.findSourceMapURL,"checkAgentCliInstalled"),F=(0,p.createServerReference)("40e84a696156a790e4ef0a33a790d3209eabe7c707",p.callServer,void 0,p.findSourceMapURL,"installAgentCli"),P=(0,p.createServerReference)("40208b8bac3e1376842fb29c57f0dce7aeb24b1ac9",p.callServer,void 0,p.findSourceMapURL,"resolveRepositoryByName"),$=(0,p.createServerReference)("7052755a4fe6109bbb4e7b00db496dcf15be523aff",p.callServer,void 0,p.findSourceMapURL,"copySessionAttachments"),U=(0,p.createServerReference)("702005427292f9ee6d56c5cf059ffa4bc2595296df",p.callServer,void 0,p.findSourceMapURL,"createSession"),A=(0,p.createServerReference)("403c1a87bd98092d4acc5a5cf7c089f8979624b6e1",p.callServer,void 0,p.findSourceMapURL,"deleteSession"),T=(0,p.createServerReference)("4061cececc4de0a286db06ddd47bd395107c37f8c5",p.callServer,void 0,p.findSourceMapURL,"getSessionPrefillContext"),I=(0,p.createServerReference)("40936baf64c5a27f0e35ef4f0ebfae3160f8ebaf07",p.callServer,void 0,p.findSourceMapURL,"listSessions"),K=(0,p.createServerReference)("60b2c5bd8d211b6c5f4e22cd086f70e88a9c9dac4e",p.callServer,void 0,p.findSourceMapURL,"saveSessionLaunchContext");var B=e.i(72056),O=e.i(79008);let G=(0,p.createServerReference)("602d68a4f24d9f2fcba7aa9d331d8e6547878f886b",p.callServer,void 0,p.findSourceMapURL,"updateRepoSettings");var z=e.i(18566),V=e.i(63671),H=e.i(57688);let _=e.i(35027).default,q="After each round of conversation, if work is completed and files changed, commit all changes with an appropriate git commit message. The commit message must include a clear title and a detailed body describing what changed and why, not just a title. No need to confirm when creating commits.",W={gemini:"gemini",codex:"codex",agent:"agent"},Y={gemini:"Gemini CLI",codex:"Codex CLI",agent:"Cursor Agent CLI"};function J({mode:e="home",repoPath:s=null,fromRepoName:p=null,prefillFromSession:f=null}){let[x,b]=(0,a.useState)(!1),[g,v]=(0,a.useState)(!1),[y,J]=(0,a.useState)(null),[Q,X]=(0,a.useState)(null),Z=(0,z.useRouter)(),[ee,et]=(0,a.useState)([]),[ea,es]=(0,a.useState)(""),[er,el]=(0,a.useState)([]),[ei,en]=(0,a.useState)([]),[ec,eo]=(0,a.useState)(null),[ed,em]=(0,a.useState)(""),[eu,eh]=(0,a.useState)(""),[ep,ef]=(0,a.useState)(""),[ex,eb]=(0,a.useState)(!1),[eg,ev]=(0,a.useState)(""),[ey,ew]=(0,a.useState)(""),[ej,eN]=(0,a.useState)([]),[eS,ek]=(0,a.useState)([]),[eR,eC]=(0,a.useState)(null),[eM,eD]=(0,a.useState)(!1),[eL,eE]=(0,a.useState)(!1),[eF,eP]=(0,a.useState)(null),[e$,eU]=(0,a.useState)(null),[eA,eT]=(0,a.useState)(!1),[eI,eK]=(0,a.useState)(!1),[eB,eO]=(0,a.useState)(!1),[eG,ez]=(0,a.useState)(null),[eV,eH]=(0,a.useState)(!1),[e_,eq]=(0,a.useState)(null),[eW,eY]=(0,a.useState)(""),[eJ,eQ]=(0,a.useState)(!1),[eX,eZ]=(0,a.useState)(null),e0=(0,a.useRef)(null),e2=ec&&ed?`Show Session Setup (${ec.name} / ${ed})`:"Show Session Setup",e1=(0,a.useCallback)(()=>{(0,V.notifySessionsUpdated)()},[]),e3=(0,a.useCallback)(async(e=Q)=>{try{let[t,a]=await Promise.all([I(),e?I(e):Promise.resolve([])]);en(t),e&&el(a)}catch(e){console.error("Failed to refresh sessions",e)}},[Q]),e4=(0,a.useCallback)(e=>"gemini"===e||"codex"===e||"agent"===e?e:null,[]);(0,a.useEffect)(()=>{(async()=>{try{let[e,t]=await Promise.all([(0,B.getConfig)(),I()]);J(e),en(t)}catch(e){console.error("Failed to load data",e)}finally{eK(!0)}})()},[]),(0,a.useEffect)(()=>{let t=()=>{e3("new"===e?Q:null)},a=e=>{e.key===V.SESSIONS_UPDATED_STORAGE_KEY&&t()},s=()=>{t()},r=()=>{t()};return window.addEventListener("storage",a),window.addEventListener("focus",s),window.addEventListener(V.SESSIONS_UPDATED_EVENT,r),()=>{window.removeEventListener("storage",a),window.removeEventListener("focus",s),window.removeEventListener(V.SESSIONS_UPDATED_EVENT,r)}},[e,e3,Q]);let e5=async e=>{X(e),ty([]),await e7(e),await te(e),await e3(e)},e6=async t=>{eE(!0),eU(null);try{if(!await N(t))return eU("Selected directory is not a valid git repository."),!1;let a=[...(y||await (0,B.getConfig)()).recentRepos];a.includes(t)?a=[t,...a.filter(e=>e!==t)]:a.unshift(t);let s=await (0,O.updateConfig)({recentRepos:a});if(J(s),b(!1),"home"===e)return Z.push(`/new?repo=${encodeURIComponent(t)}`),!0;return await e5(t),!0}catch(e){return console.error(e),eU("Failed to open repository."),!1}finally{eE(!1)}},e8=async t=>{if("new"!==e)return;let a=t.target.value;if(!a||a===Q||!await e6(a))return;let s=new URLSearchParams;s.set("repo",a),f&&s.set("prefillFromSession",f),Z.replace(`/new?${s.toString()}`)};(0,a.useEffect)(()=>{if("new"===e){if(!s){X(null),el([]),et([]),es("");return}s!==Q&&e6(s)}},[e,s,Q]),(0,a.useEffect)(()=>{if("new"!==e)return;if(s)return void eT(!1);let t=p?.trim()??"";if(!t)return void eT(!1);let a=!1;return(async()=>{eU(null),eT(!0);let e=await P(t);if(a)return;if(!e.success){eU(e.error||"Failed to search repositories."),eT(!1);return}if(!e.repoPath){eU(`Could not find a matching repository for "${t}".`),eT(!1);return}let s=new URLSearchParams;s.set("repo",e.repoPath),f&&s.set("prefillFromSession",f),Z.replace(`/new?${s.toString()}`)})(),()=>{a=!0}},[p,e,f,s,Z]),(0,a.useEffect)(()=>{eD(!1),ek([]),eC(null)},[f]),(0,a.useEffect)(()=>{if("new"!==e||!Q||!f||eM)return;let t=!1;return(async()=>{let e=await T(f);if(t)return;if(!e.success||!e.context){e.error&&eU(e.error),eD(!0);return}let a=e.context;if(a.repoPath!==Q)return eD(!0);let s=_.find(e=>e.cli===a.agentProvider);s&&(eo(s),a.model&&("auto"===a.model||s.models.some(e=>e.id===a.model))?em(a.model):em("auto")),ew(a.title||""),ev(a.initialMessage||""),ek(a.attachmentNames||[]),eC(a.sourceSessionName),eb(!0),eD(!0)})(),()=>{t=!0}},[eM,e,f,Q]);let e7=async e=>{let t=y||await (0,B.getConfig)();y||J(t);let a=t.repoSettings[e]||{},s=a.agentProvider,r=a.agentModel,l=a.startupScript,i=a.devServerScript;if(s){let e=_.find(e=>e.cli===s);e?(eo(e),r&&("auto"===r||e.models.some(e=>e.id===r))?em(r):em("auto")):(eo(_[0]),em("auto"))}else eo(_[0]),em("auto");null!=l?eh(l):eh(await C(e)),null!=i?ef(i):ef(await M(e))},e9=async e=>{J(await (0,O.updateConfig)({defaultRoot:e})),v(!1)},te=async e=>{try{let t=await S(e);et(t);let a=((y||await (0,B.getConfig)()).repoSettings[e]||{}).lastBranch,s=t.find(e=>e.current)?.name;if(a&&t.some(e=>e.name===a)){if(es(a),a!==s)try{await k(e,a);let t=await S(e);et(t)}catch(e){console.warn("Could not auto-checkout to remembered branch",e),s&&es(s)}}else s&&es(s)}catch(e){console.error("Failed to load branches",e),eU("Failed to load branches.")}},tt=async e=>{let t=e.target.value;if(Q){eE(!0);try{await k(Q,t),es(t);let e=await G(Q,{lastBranch:t});J(e);let a=await S(Q);et(a)}catch{eU(`Failed to checkout branch ${t}`)}finally{eE(!1)}}},ta=async e=>{let t=e.target.value,a=_.find(e=>e.cli===t);if(a&&Q){eo(a);let e="auto";em(e),J(await G(Q,{agentProvider:a.cli,agentModel:e}))}},ts=async e=>{let t=e.target.value;em(t),Q&&J(await G(Q,{agentModel:t}))},tr=async e=>{eh(e.target.value)},tl=async()=>{Q&&J(await G(Q,{startupScript:eu}))},ti=async e=>{Q&&J(await G(Q,{devServerScript:e}))},tn=async()=>{await ti(ep)},tc=(0,a.useCallback)((e,t)=>{if(e.name&&e.name.trim().length>0)return e;let a=e.type&&e.type.split("/")[1]?.split("+")[0]||"bin";return new File([e],`pasted-file-${Date.now()}-${t+1}.${a}`,{type:e.type,lastModified:e.lastModified||Date.now()})},[]),to=(0,a.useCallback)(e=>{0!==e.length&&eN(t=>{let a=new Map(t.map(e=>[e.name,e]));return e.forEach(e=>{a.set(e.name,e)}),Array.from(a.values())})},[]),[td,tm]=(0,a.useState)(!1),[tu,th]=(0,a.useState)([]),[,tp]=(0,a.useState)(""),[tf,tx]=(0,a.useState)(0),[tb,tg]=(0,a.useState)(0),[tv,ty]=(0,a.useState)([]),tw=async e=>{let t=e.target.value,a=e.target.selectionStart;ev(t),tx(a);let s=t.substring(0,a),r=s.lastIndexOf("@");if(-1!==r){let e=s.substring(r+1);if(!/\s/.test(e)){if(tp(e),tm(!0),Q){var l;let t,a=tv;0===tv.length&&ty(a=await D(Q)),l=a,t=e.toLowerCase(),th([...[...ej.map(e=>e.name),...eS].filter(e=>e.toLowerCase().includes(t)),...l.filter(e=>e.toLowerCase().includes(t)).slice(0,20)]),tg(0)}return}}tm(!1)},tj=e=>{let t=eg.substring(0,tf).lastIndexOf("@");if(-1!==t){let a=eg.substring(0,t),s=eg.substring(tf);ev(`${a}@${e} ${s}`),tm(!1)}};(0,a.useEffect)(()=>{if("new"!==e||!Q)return;let t=e=>{let t=e.clipboardData;if(!t)return;let a=Array.from(t.items).filter(e=>"file"===e.kind).map(e=>e.getAsFile()).filter(e=>null!==e),s=(a.length>0?a:Array.from(t.files)).map((e,t)=>tc(e,t));0!==s.length&&(e.preventDefault(),to(s))};return window.addEventListener("paste",t),()=>{window.removeEventListener("paste",t)}},[to,e,tc,Q]);let tN=async(e,t)=>{if(e.stopPropagation(),y){let e=y.recentRepos.filter(e=>e!==t);J(await (0,O.updateConfig)({recentRepos:e}))}},tS=(0,a.useCallback)(()=>{if(!eV||!eW||!e0.current)return;let e=e0.current,t=(a=0)=>{if(a>40)return void eZ("Timed out while waiting for terminal to initialize.");try{let s=e.contentWindow;if(s?.term){s.term.paste(`${eW}\r`),eQ(!0),eZ(null),s.focus();return}setTimeout(()=>t(a+1),300)}catch(e){console.error("Failed to inject login command into terminal iframe:",e),eZ("Could not access ttyd terminal. Ensure ttyd is running and try again.")}};setTimeout(()=>t(),500)},[eV,eW]),tk=(0,a.useCallback)(async()=>{let e=e4(ec?.cli);if(!e)return!0;let t=await E(e);if(!t.success)return eU(t.error||`Failed to verify ${Y[e]} installation status.`),!1;if(t.installed)return!0;eO(!0),ez(e),eU(null);let a=await F(e);if(eO(!1),ez(null),!a.success)return eU(a.error||`Failed to install ${Y[e]}.`),!1;let s=await (0,R.startTtydProcess)();return s.success?(eq(e),eY(W[e]),eQ(!1),eZ(null),eH(!0)):eU(s.error||"Failed to start ttyd"),!1},[ec?.cli,e4]),tR=async(e={})=>{if(Q){eE(!0),eU(null);try{if(!e.skipAgentSetup&&!await tk())return void eE(!1);let t=ep.trim();!t&&(t=await M(Q))&&ef(t),await tl(),await ti(t);let a=await (0,R.startTtydProcess)();if(!a.success){eU(a.error||"Failed to start ttyd"),eE(!1);return}let s=await U(Q,ea||"main",{agent:ec?.cli||"agent",model:ed||"",title:ey,devServerScript:t||void 0});if(s.success&&s.sessionName&&s.worktreePath&&s.branchName){let e=[],t=[];if(ej.length>0){let t=new FormData;ej.forEach(e=>t.append(e.name,e)),e=await (0,L.saveAttachments)(s.worktreePath,t)}if(eR&&eS.length>0){let e=await $(eR,s.worktreePath,eS);if(!e.success){eU(e.error||"Failed to carry over attachments from source session"),eE(!1);return}t=e.copiedAttachmentNames}let a=Array.from(new Set([...e,...t])),r=eg.trim(),l=r;l&&(l.includes(q)||(l=`${l}
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,5951,e=>{"use strict";var t=e.i(43476),a=e.i(71645),s=e.i(75254);let r=(0,s.default)("folder-git-2",[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]]);var l=e.i(55716),i=e.i(7233);let n=(0,s.default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),c=(0,s.default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]),o=(0,s.default)("folder-cog",[["path",{d:"M10.3 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.98a2 2 0 0 1 1.69.9l.66 1.2A2 2 0 0 0 12 6h8a2 2 0 0 1 2 2v3.3",key:"128dxu"}],["path",{d:"m14.305 19.53.923-.382",key:"3m78fa"}],["path",{d:"m15.228 16.852-.923-.383",key:"npixar"}],["path",{d:"m16.852 15.228-.383-.923",key:"5xggr7"}],["path",{d:"m16.852 20.772-.383.924",key:"dpfhf9"}],["path",{d:"m19.148 15.228.383-.923",key:"1reyyz"}],["path",{d:"m19.53 21.696-.382-.924",key:"1goivc"}],["path",{d:"m20.772 16.852.924-.383",key:"htqkph"}],["path",{d:"m20.772 19.148.924.383",key:"9w9pjp"}],["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}]]),d=(0,s.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]),m=(0,s.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);var u=e.i(27612),h=e.i(31343),p=e.i(95187);let f=(0,p.createServerReference)("40462636c960751092e7156c887ecd5c775d22267d",p.callServer,void 0,p.findSourceMapURL,"checkDirectoryAccessible"),x=(0,p.createServerReference)("4080bbb13e50e3eba66c4221569be548e143f60923",p.callServer,void 0,p.findSourceMapURL,"listDirectories");var b=e.i(1399),g=e.i(27025),v=e.i(71689);let y=(0,s.default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);var w=e.i(81016);function j({title:e,initialPath:s,onSelect:r,onCancel:l,checkRepo:i}){let[n,c]=(0,a.useState)(""),[o,d]=(0,a.useState)(""),[m,u]=(0,a.useState)([]),[h,p]=(0,a.useState)(!1),[j,N]=(0,a.useState)(null);(0,a.useEffect)(()=>{let e=!0;return(async()=>{try{let t=await (0,b.getHomeDirectory)();if(!e)return;d(t),c(s||t)}catch(t){if(console.error("Failed to resolve home directory:",t),!e)return;N("Failed to access your home directory."),c(s||"/")}})(),()=>{e=!1}},[s]),(0,a.useEffect)(()=>{if(!n)return;let e=!0;return(async()=>{p(!0),N(null);try{let t=await x(n);if(!e)return;if(0===t.length&&o&&n!==o){let t=await f(n);if(!e)return;if(!t){N(`Could not access "${n}". Showing home directory.`),c(o);return}}let a=t.map(e=>({name:e.name,path:e.path,isDirectory:e.isDirectory,isGitRepo:e.isGitRepo}));u(a)}catch(t){if(console.error(t),!e)return;if(o&&n!==o){N(`Could not access "${n}". Showing home directory.`),c(o);return}u([]),N("Failed to load directory contents")}finally{e&&p(!1)}})(),()=>{e=!1}},[n,o]);let S=async e=>{if(i&&!await i(e)){N("Selected directory is not a valid git repository."),setTimeout(()=>N(null),3e3);return}await r(e)},k=async()=>{await S(n)};return(0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50 backdrop-blur-sm p-4",children:(0,t.jsxs)("div",{className:"bg-base-200 rounded-lg shadow-xl w-full max-w-3xl h-[80vh] flex flex-col",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between p-4 border-b border-base-300",children:[(0,t.jsxs)("h2",{className:"text-xl font-bold flex items-center gap-2",children:[(0,t.jsx)(g.Folder,{className:"w-5 h-5"}),e||"Browse Local Repository"]}),(0,t.jsx)("button",{onClick:l,className:"btn btn-sm btn-ghost btn-circle",children:"✕"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 p-3 bg-base-300",children:[(0,t.jsx)("button",{onClick:()=>{let e=(0,w.getDirName)(n);e&&e!==n&&c(e)},className:"btn btn-sm btn-square btn-ghost",title:"Go Up",disabled:"/"===n||!n,children:(0,t.jsx)(v.ArrowLeft,{className:"w-4 h-4"})}),(0,t.jsx)("div",{className:"flex-1 overflow-x-auto whitespace-nowrap px-2 font-mono text-sm",children:n}),(0,t.jsx)("button",{onClick:k,className:"btn btn-sm btn-primary",children:"Select Current Folder"})]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto p-2",children:h?(0,t.jsx)("div",{className:"flex justify-center items-center h-full",children:(0,t.jsx)("span",{className:"loading loading-spinner loading-lg"})}):j?(0,t.jsx)("div",{className:"alert alert-error",children:j}):0===m.length?(0,t.jsx)("div",{className:"text-center text-base-content/50 mt-10",children:"Empty directory"}):(0,t.jsx)("div",{className:"grid grid-cols-1 gap-1",children:m.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between p-2 hover:bg-base-100 rounded-md cursor-pointer transition-colors",onClick:()=>{c(e.path)},children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 overflow-hidden",children:[(0,t.jsx)(g.Folder,{className:`w-5 h-5 ${e.isGitRepo?"text-primary":"text-base-content/70"}`}),(0,t.jsx)("span",{className:"truncate",children:e.name}),e.isGitRepo&&(0,t.jsx)("span",{className:"badge badge-xs badge-primary",children:"git"})]}),e.isGitRepo&&(0,t.jsxs)("button",{className:"btn btn-xs btn-primary",onClick:t=>{t.stopPropagation(),S(e.path)},title:`Select ${e.name}`,children:[(0,t.jsx)(y,{className:"w-3 h-3"}),"Select"]})]},e.path))})}),(0,t.jsx)("div",{className:"p-3 border-t border-base-300 text-xs text-base-content/50 text-center",children:'Navigate to a folder and click "Select Current Folder" to choose it.'})]})})}let N=(0,p.createServerReference)("40b790cb2cdb35e06c06c9a2319b231de1a9918ded",p.callServer,void 0,p.findSourceMapURL,"checkIsGitRepo"),S=(0,p.createServerReference)("4089064505ffd748138851e0e1544d9782c6caada2",p.callServer,void 0,p.findSourceMapURL,"getBranches"),k=(0,p.createServerReference)("6047ec78f51eb3ba4d0f2f7505f4851c80a977bddd",p.callServer,void 0,p.findSourceMapURL,"checkoutBranch");var R=e.i(91201);let C=(0,p.createServerReference)("7faf927cccd227030a200d885543981c7cc79dbf4c",p.callServer,void 0,p.findSourceMapURL,"getStartupScript"),M=(0,p.createServerReference)("7f8d87a4b65f3c6dabb9653e6f30ebf96b7939f13c",p.callServer,void 0,p.findSourceMapURL,"getDefaultDevServerScript"),D=(0,p.createServerReference)("7f4e5bfeb4532f37deed85bda3fc5bc056e2c2cf21",p.callServer,void 0,p.findSourceMapURL,"listRepoFiles");var L=e.i(64129);let E=(0,p.createServerReference)("40d566ae8fed2a04afea397f5023c2603b87c3d3eb",p.callServer,void 0,p.findSourceMapURL,"checkAgentCliInstalled"),F=(0,p.createServerReference)("40f772d16818593780dde18587d2be3dc31326b8ac",p.callServer,void 0,p.findSourceMapURL,"installAgentCli"),P=(0,p.createServerReference)("40209f820f23d86c9dde01cbf9bd008331914d1d50",p.callServer,void 0,p.findSourceMapURL,"resolveRepositoryByName"),$=(0,p.createServerReference)("707a6615571bb96b003d90d7bc50874388d612f696",p.callServer,void 0,p.findSourceMapURL,"copySessionAttachments"),U=(0,p.createServerReference)("702d43ade6a73f828eb152e2c4f7f2fcdb42fc70ee",p.callServer,void 0,p.findSourceMapURL,"createSession"),A=(0,p.createServerReference)("404d988b33c2c9e63917259bd7ccb5bfd5d339f0bc",p.callServer,void 0,p.findSourceMapURL,"deleteSession"),T=(0,p.createServerReference)("409cd756b10078a1c8332ce2c59e91f893be6662f0",p.callServer,void 0,p.findSourceMapURL,"getSessionPrefillContext"),I=(0,p.createServerReference)("40284adf4b914d3ad527c2eeb12b193682a600cd1b",p.callServer,void 0,p.findSourceMapURL,"listSessions"),K=(0,p.createServerReference)("601bb6a36e43a8c6bcd08f490c9ad76229dcfa442a",p.callServer,void 0,p.findSourceMapURL,"saveSessionLaunchContext");var B=e.i(62289),O=e.i(63527);let G=(0,p.createServerReference)("60fff778365d399740d59ecef8dcbdd1aca58b47b2",p.callServer,void 0,p.findSourceMapURL,"updateRepoSettings");var z=e.i(18566),V=e.i(63671),H=e.i(57688);let _=e.i(35027).default,q="After each round of conversation, if work is completed and files changed, commit all changes with an appropriate git commit message. The commit message must include a clear title and a detailed body describing what changed and why, not just a title. No need to confirm when creating commits.",W={gemini:"gemini",codex:"codex",agent:"agent"},Y={gemini:"Gemini CLI",codex:"Codex CLI",agent:"Cursor Agent CLI"};function J({mode:e="home",repoPath:s=null,fromRepoName:p=null,prefillFromSession:f=null}){let[x,b]=(0,a.useState)(!1),[g,v]=(0,a.useState)(!1),[y,J]=(0,a.useState)(null),[Q,X]=(0,a.useState)(null),Z=(0,z.useRouter)(),[ee,et]=(0,a.useState)([]),[ea,es]=(0,a.useState)(""),[er,el]=(0,a.useState)([]),[ei,en]=(0,a.useState)([]),[ec,eo]=(0,a.useState)(null),[ed,em]=(0,a.useState)(""),[eu,eh]=(0,a.useState)(""),[ep,ef]=(0,a.useState)(""),[ex,eb]=(0,a.useState)(!1),[eg,ev]=(0,a.useState)(""),[ey,ew]=(0,a.useState)(""),[ej,eN]=(0,a.useState)([]),[eS,ek]=(0,a.useState)([]),[eR,eC]=(0,a.useState)(null),[eM,eD]=(0,a.useState)(!1),[eL,eE]=(0,a.useState)(!1),[eF,eP]=(0,a.useState)(null),[e$,eU]=(0,a.useState)(null),[eA,eT]=(0,a.useState)(!1),[eI,eK]=(0,a.useState)(!1),[eB,eO]=(0,a.useState)(!1),[eG,ez]=(0,a.useState)(null),[eV,eH]=(0,a.useState)(!1),[e_,eq]=(0,a.useState)(null),[eW,eY]=(0,a.useState)(""),[eJ,eQ]=(0,a.useState)(!1),[eX,eZ]=(0,a.useState)(null),e0=(0,a.useRef)(null),e2=ec&&ed?`Show Session Setup (${ec.name} / ${ed})`:"Show Session Setup",e1=(0,a.useCallback)(()=>{(0,V.notifySessionsUpdated)()},[]),e3=(0,a.useCallback)(async(e=Q)=>{try{let[t,a]=await Promise.all([I(),e?I(e):Promise.resolve([])]);en(t),e&&el(a)}catch(e){console.error("Failed to refresh sessions",e)}},[Q]),e4=(0,a.useCallback)(e=>"gemini"===e||"codex"===e||"agent"===e?e:null,[]);(0,a.useEffect)(()=>{(async()=>{try{let[e,t]=await Promise.all([(0,B.getConfig)(),I()]);J(e),en(t)}catch(e){console.error("Failed to load data",e)}finally{eK(!0)}})()},[]),(0,a.useEffect)(()=>{let t=()=>{e3("new"===e?Q:null)},a=e=>{e.key===V.SESSIONS_UPDATED_STORAGE_KEY&&t()},s=()=>{t()},r=()=>{t()};return window.addEventListener("storage",a),window.addEventListener("focus",s),window.addEventListener(V.SESSIONS_UPDATED_EVENT,r),()=>{window.removeEventListener("storage",a),window.removeEventListener("focus",s),window.removeEventListener(V.SESSIONS_UPDATED_EVENT,r)}},[e,e3,Q]);let e6=async e=>{X(e),ty([]),await e7(e),await te(e),await e3(e)},e5=async t=>{eE(!0),eU(null);try{if(!await N(t))return eU("Selected directory is not a valid git repository."),!1;let a=[...(y||await (0,B.getConfig)()).recentRepos];a.includes(t)?a=[t,...a.filter(e=>e!==t)]:a.unshift(t);let s=await (0,O.updateConfig)({recentRepos:a});if(J(s),b(!1),"home"===e)return Z.push(`/new?repo=${encodeURIComponent(t)}`),!0;return await e6(t),!0}catch(e){return console.error(e),eU("Failed to open repository."),!1}finally{eE(!1)}},e8=async t=>{if("new"!==e)return;let a=t.target.value;if(!a||a===Q||!await e5(a))return;let s=new URLSearchParams;s.set("repo",a),f&&s.set("prefillFromSession",f),Z.replace(`/new?${s.toString()}`)};(0,a.useEffect)(()=>{if("new"===e){if(!s){X(null),el([]),et([]),es("");return}s!==Q&&e5(s)}},[e,s,Q]),(0,a.useEffect)(()=>{if("new"!==e)return;if(s)return void eT(!1);let t=p?.trim()??"";if(!t)return void eT(!1);let a=!1;return(async()=>{eU(null),eT(!0);let e=await P(t);if(a)return;if(!e.success){eU(e.error||"Failed to search repositories."),eT(!1);return}if(!e.repoPath){eU(`Could not find a matching repository for "${t}".`),eT(!1);return}let s=new URLSearchParams;s.set("repo",e.repoPath),f&&s.set("prefillFromSession",f),Z.replace(`/new?${s.toString()}`)})(),()=>{a=!0}},[p,e,f,s,Z]),(0,a.useEffect)(()=>{eD(!1),ek([]),eC(null)},[f]),(0,a.useEffect)(()=>{if("new"!==e||!Q||!f||eM)return;let t=!1;return(async()=>{let e=await T(f);if(t)return;if(!e.success||!e.context){e.error&&eU(e.error),eD(!0);return}let a=e.context;if(a.repoPath!==Q)return eD(!0);let s=_.find(e=>e.cli===a.agentProvider);s&&(eo(s),a.model&&("auto"===a.model||s.models.some(e=>e.id===a.model))?em(a.model):em("auto")),ew(a.title||""),ev(a.initialMessage||""),ek(a.attachmentNames||[]),eC(a.sourceSessionName),eb(!0),eD(!0)})(),()=>{t=!0}},[eM,e,f,Q]);let e7=async e=>{let t=y||await (0,B.getConfig)();y||J(t);let a=t.repoSettings[e]||{},s=a.agentProvider,r=a.agentModel,l=a.startupScript,i=a.devServerScript;if(s){let e=_.find(e=>e.cli===s);e?(eo(e),r&&("auto"===r||e.models.some(e=>e.id===r))?em(r):em("auto")):(eo(_[0]),em("auto"))}else eo(_[0]),em("auto");null!=l?eh(l):eh(await C(e)),null!=i?ef(i):ef(await M(e))},e9=async e=>{J(await (0,O.updateConfig)({defaultRoot:e})),v(!1)},te=async e=>{try{let t=await S(e);et(t);let a=((y||await (0,B.getConfig)()).repoSettings[e]||{}).lastBranch,s=t.find(e=>e.current)?.name;if(a&&t.some(e=>e.name===a)){if(es(a),a!==s)try{await k(e,a);let t=await S(e);et(t)}catch(e){console.warn("Could not auto-checkout to remembered branch",e),s&&es(s)}}else s&&es(s)}catch(e){console.error("Failed to load branches",e),eU("Failed to load branches.")}},tt=async e=>{let t=e.target.value;if(Q){eE(!0);try{await k(Q,t),es(t);let e=await G(Q,{lastBranch:t});J(e);let a=await S(Q);et(a)}catch{eU(`Failed to checkout branch ${t}`)}finally{eE(!1)}}},ta=async e=>{let t=e.target.value,a=_.find(e=>e.cli===t);if(a&&Q){eo(a);let e="auto";em(e),J(await G(Q,{agentProvider:a.cli,agentModel:e}))}},ts=async e=>{let t=e.target.value;em(t),Q&&J(await G(Q,{agentModel:t}))},tr=async e=>{eh(e.target.value)},tl=async()=>{Q&&J(await G(Q,{startupScript:eu}))},ti=async e=>{Q&&J(await G(Q,{devServerScript:e}))},tn=async()=>{await ti(ep)},tc=(0,a.useCallback)((e,t)=>{if(e.name&&e.name.trim().length>0)return e;let a=e.type&&e.type.split("/")[1]?.split("+")[0]||"bin";return new File([e],`pasted-file-${Date.now()}-${t+1}.${a}`,{type:e.type,lastModified:e.lastModified||Date.now()})},[]),to=(0,a.useCallback)(e=>{0!==e.length&&eN(t=>{let a=new Map(t.map(e=>[e.name,e]));return e.forEach(e=>{a.set(e.name,e)}),Array.from(a.values())})},[]),[td,tm]=(0,a.useState)(!1),[tu,th]=(0,a.useState)([]),[,tp]=(0,a.useState)(""),[tf,tx]=(0,a.useState)(0),[tb,tg]=(0,a.useState)(0),[tv,ty]=(0,a.useState)([]),tw=async e=>{let t=e.target.value,a=e.target.selectionStart;ev(t),tx(a);let s=t.substring(0,a),r=s.lastIndexOf("@");if(-1!==r){let e=s.substring(r+1);if(!/\s/.test(e)){if(tp(e),tm(!0),Q){var l;let t,a=tv;0===tv.length&&ty(a=await D(Q)),l=a,t=e.toLowerCase(),th([...[...ej.map(e=>e.name),...eS].filter(e=>e.toLowerCase().includes(t)),...l.filter(e=>e.toLowerCase().includes(t)).slice(0,20)]),tg(0)}return}}tm(!1)},tj=e=>{let t=eg.substring(0,tf).lastIndexOf("@");if(-1!==t){let a=eg.substring(0,t),s=eg.substring(tf);ev(`${a}@${e} ${s}`),tm(!1)}};(0,a.useEffect)(()=>{if("new"!==e||!Q)return;let t=e=>{let t=e.clipboardData;if(!t)return;let a=Array.from(t.items).filter(e=>"file"===e.kind).map(e=>e.getAsFile()).filter(e=>null!==e),s=(a.length>0?a:Array.from(t.files)).map((e,t)=>tc(e,t));0!==s.length&&(e.preventDefault(),to(s))};return window.addEventListener("paste",t),()=>{window.removeEventListener("paste",t)}},[to,e,tc,Q]);let tN=async(e,t)=>{if(e.stopPropagation(),y){let e=y.recentRepos.filter(e=>e!==t);J(await (0,O.updateConfig)({recentRepos:e}))}},tS=(0,a.useCallback)(()=>{if(!eV||!eW||!e0.current)return;let e=e0.current,t=(a=0)=>{if(a>40)return void eZ("Timed out while waiting for terminal to initialize.");try{let s=e.contentWindow;if(s?.term){s.term.paste(`${eW}\r`),eQ(!0),eZ(null),s.focus();return}setTimeout(()=>t(a+1),300)}catch(e){console.error("Failed to inject login command into terminal iframe:",e),eZ("Could not access ttyd terminal. Ensure ttyd is running and try again.")}};setTimeout(()=>t(),500)},[eV,eW]),tk=(0,a.useCallback)(async()=>{let e=e4(ec?.cli);if(!e)return!0;let t=await E(e);if(!t.success)return eU(t.error||`Failed to verify ${Y[e]} installation status.`),!1;if(t.installed)return!0;eO(!0),ez(e),eU(null);let a=await F(e);if(eO(!1),ez(null),!a.success)return eU(a.error||`Failed to install ${Y[e]}.`),!1;let s=await (0,R.startTtydProcess)();return s.success?(eq(e),eY(W[e]),eQ(!1),eZ(null),eH(!0)):eU(s.error||"Failed to start ttyd"),!1},[ec?.cli,e4]),tR=async(e={})=>{if(Q){eE(!0),eU(null);try{if(!e.skipAgentSetup&&!await tk())return void eE(!1);let t=ep.trim();!t&&(t=await M(Q))&&ef(t),await tl(),await ti(t);let a=await (0,R.startTtydProcess)();if(!a.success){eU(a.error||"Failed to start ttyd"),eE(!1);return}let s=await U(Q,ea||"main",{agent:ec?.cli||"agent",model:ed||"",title:ey,devServerScript:t||void 0});if(s.success&&s.sessionName&&s.worktreePath&&s.branchName){let e=[],t=[];if(ej.length>0){let t=new FormData;ej.forEach(e=>t.append(e.name,e)),e=await (0,L.saveAttachments)(s.worktreePath,t)}if(eR&&eS.length>0){let e=await $(eR,s.worktreePath,eS);if(!e.success){eU(e.error||"Failed to carry over attachments from source session"),eE(!1);return}t=e.copiedAttachmentNames}let a=Array.from(new Set([...e,...t])),r=eg.trim(),l=r;l&&(l.includes(q)||(l=`${l}
|
|
2
2
|
|
|
3
3
|
${q}`)),l=l.replace(/@(\S+)/g,(e,t)=>a.includes(t)?`${s.worktreePath}-attachments/${t}`:t);let i=await K(s.sessionName,{title:ey||void 0,initialMessage:l||void 0,rawInitialMessage:r||void 0,startupScript:eu||void 0,attachmentNames:a,agentProvider:ec?.cli||"agent",model:ed||""});if(!i.success){eU(i.error||"Failed to save session context"),eE(!1);return}let n=`/session/${s.sessionName}`;Z.push(n),eE(!1)}else eU(s.error||"Failed to create session worktree"),eE(!1)}catch(e){console.error(e),eU("Failed to start session"),eE(!1)}}},tC=()=>{tR()},tM=async()=>{eH(!1),eq(null),eY(""),eQ(!1),eZ(null),await tR({skipAgentSetup:!0})},tD=async e=>{if(Q){eE(!0);try{let t=await (0,R.startTtydProcess)();if(!t.success){eU(t.error||"Failed to start ttyd"),eE(!1);return}let a=`/session/${e.sessionName}`;Z.push(a),eE(!1)}catch(e){console.error(e),eU("Failed to resume session"),eE(!1)}}},tL=async e=>{if(Q&&confirm(`Delete session "${e.sessionName}"?
|
|
4
4
|
|
|
5
|
-
This will remove the worktree, branch, and session metadata.`)){eP(e.sessionName),eU(null);try{let t=await A(e.sessionName);if(!t.success)return void eU(t.error||"Failed to delete session");let a=await I(Q);el(a);let s=await I();en(s),e1()}catch(e){console.error(e),eU("Failed to delete session")}finally{eP(null)}}},tE=y?.recentRepos??[],tF=Q?tE.includes(Q)?tE:[Q,...tE]:tE;return(0,t.jsxs)(t.Fragment,{children:["home"===e&&(0,t.jsx)("div",{className:"card w-full max-w-2xl bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[(0,t.jsxs)("h2",{className:"card-title flex justify-between items-center",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(H.default,{src:"/icon.png",alt:"Viba",width:24,height:24,className:"rounded-sm"}),"Viba"]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("button",{className:"btn btn-ghost btn-sm gap-2",onClick:()=>v(!0),title:y?.defaultRoot?`Default: ${y.defaultRoot}`:"Set default browsing folder",children:[(0,t.jsx)(o,{className:"w-4 h-4"}),y?.defaultRoot?"Change Default":"Set Default Root"]}),(0,t.jsxs)("button",{className:"btn btn-primary btn-sm gap-2",onClick:()=>b(!0),children:[(0,t.jsx)(i.Plus,{className:"w-4 h-4"})," Open Local Repo"]})]})]}),e$&&(0,t.jsx)("div",{className:"alert alert-error text-sm py-2 px-3 mt-2",children:e$}),(0,t.jsx)("div",{className:"mt-4 space-y-4",children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("h3",{className:"text-sm font-semibold opacity-70 uppercase tracking-wide",children:"Recent Repositories"}),eI?y&&0!==y.recentRepos.length?(0,t.jsx)("div",{className:"flex flex-col gap-2",children:y.recentRepos.map(e=>(0,t.jsxs)("div",{onClick:()=>e6(e),className:"flex items-center justify-between p-3 bg-base-100 hover:bg-base-300 rounded-md cursor-pointer group transition-all border border-base-300",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 overflow-hidden shrink min-w-0",children:[(0,t.jsx)(r,{className:"w-5 h-5 text-secondary shrink-0"}),(0,t.jsxs)("div",{className:"flex flex-col overflow-hidden",children:[(0,t.jsx)("span",{className:"font-medium truncate",children:(0,w.getBaseName)(e)}),(0,t.jsx)("span",{className:"text-xs opacity-50 truncate",children:e})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:[(0,t.jsx)("button",{onClick:t=>tN(t,e),className:"btn btn-circle btn-ghost btn-xs opacity-0 group-hover:opacity-100 text-error",title:"Remove from history",children:(0,t.jsx)(n,{className:"w-3 h-3"})}),(0,t.jsx)(c,{className:"w-4 h-4 opacity-30"})]})]},e))}):(0,t.jsx)("div",{className:"text-center py-8 text-base-content/40 italic bg-base-100 rounded-lg",children:"No recent repositories found."}):(0,t.jsx)("div",{className:"flex items-center justify-center py-8 bg-base-100 rounded-lg",children:(0,t.jsx)("span",{className:"loading loading-spinner loading-md"})})]})})]})}),"new"===e&&Q&&(0,t.jsxs)("div",{className:"w-full max-w-6xl space-y-4",children:[e$&&(0,t.jsx)("div",{className:"alert alert-error text-sm py-2 px-3",children:e$}),(0,t.jsxs)("div",{className:"flex flex-col gap-4 w-full",children:[(0,t.jsx)("div",{className:"card w-full bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[(0,t.jsxs)("h2",{className:"card-title flex justify-between items-center",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(r,{className:"w-6 h-6 text-primary"}),"Git Repository Selector"]}),(0,t.jsx)("button",{className:"btn btn-sm btn-ghost",onClick:()=>Z.push("/"),children:"Change Repo"})]}),(0,t.jsx)("div",{className:"mt-4",children:(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,t.jsxs)("div",{className:"bg-base-100 p-4 rounded-lg border border-base-300 space-y-2",children:[(0,t.jsx)("label",{className:"text-xs opacity-50 uppercase tracking-widest",children:"Current Repository"}),(0,t.jsxs)("div",{className:"join w-full",children:[(0,t.jsx)("div",{className:"join-item bg-base-300 flex items-center px-3 border border-base-content/20 border-r-0",children:(0,t.jsx)(r,{className:"w-4 h-4 text-primary"})}),(0,t.jsx)("select",{className:"select select-bordered join-item w-full font-mono focus:outline-none",value:Q,onChange:e=>{e8(e)},disabled:eL||0===tF.length,children:tF.map(e=>(0,t.jsx)("option",{value:e,children:(0,w.getBaseName)(e)},e))})]}),(0,t.jsx)("div",{className:"text-[10px] opacity-50 font-mono truncate px-1",title:Q,children:Q})]}),(0,t.jsxs)("div",{className:"bg-base-100 p-4 rounded-lg border border-base-300 space-y-2",children:[(0,t.jsxs)("div",{className:"flex justify-between items-center",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70 uppercase tracking-widest",children:"Current Branch"}),eL&&(0,t.jsx)("span",{className:"loading loading-spinner loading-xs"})]}),(0,t.jsxs)("div",{className:"join w-full",children:[(0,t.jsx)("div",{className:"join-item bg-base-300 flex items-center px-3 border border-base-content/20 border-r-0",children:(0,t.jsx)(l.GitBranch,{className:"w-4 h-4"})}),(0,t.jsx)("select",{className:"select select-bordered join-item w-full font-mono focus:outline-none",value:ea,onChange:tt,disabled:eL,children:ee.map(e=>(0,t.jsxs)("option",{value:e.name,children:[e.name," ",e.current?"(checked out)":""]},e.name))})]}),(0,t.jsx)("div",{className:"text-[10px] opacity-50 px-1 italic",children:"Switching branches updates the working directory."})]})]})})]})}),er.length>0&&(0,t.jsx)("div",{className:"card w-full bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[(0,t.jsxs)("h2",{className:"card-title flex items-center gap-2",children:[(0,t.jsx)(h.Play,{className:"w-6 h-6 text-success"}),"Continue Existing Session"]}),(0,t.jsx)("div",{className:"flex flex-col gap-2 mt-4 max-h-64 overflow-y-auto",children:er.map(e=>(0,t.jsx)("div",{className:"flex flex-col gap-2 p-3 bg-base-100 rounded-md border border-base-300",children:(0,t.jsxs)("div",{className:"flex justify-between items-start",children:[(0,t.jsxs)("div",{children:[e.title&&(0,t.jsx)("div",{className:"font-semibold",children:e.title}),(0,t.jsx)("div",{className:"text-xs opacity-60 font-mono",children:e.sessionName}),(0,t.jsxs)("div",{className:"text-xs opacity-60 mt-1",children:["Agent: ",e.agent," • Model: ",e.model]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("button",{className:"btn btn-sm btn-success btn-outline gap-2",onClick:()=>tD(e),disabled:eL||eF===e.sessionName,children:[(0,t.jsx)(h.Play,{className:"w-3 h-3"})," Resume"]}),(0,t.jsxs)("button",{className:"btn btn-sm btn-secondary btn-outline gap-2",onClick:()=>(e=>{if(!Q)return;let t=`/new?repo=${encodeURIComponent(Q)}&prefillFromSession=${encodeURIComponent(e.sessionName)}`;Z.push(t)})(e),disabled:eL||eF===e.sessionName,title:"Start a new attempt prefilled from this session",children:[(0,t.jsx)(i.Plus,{className:"w-3 h-3"})," New Attempt"]}),(0,t.jsxs)("button",{className:"btn btn-sm btn-error btn-outline gap-2",onClick:()=>tL(e),disabled:eL||eF===e.sessionName,children:[(0,t.jsx)(u.Trash2,{className:"w-3 h-3"}),eF===e.sessionName?"Deleting...":"Delete"]})]})]})},e.sessionName))})]})}),(0,t.jsx)("div",{className:"card w-full bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[(0,t.jsxs)("h2",{className:"card-title flex items-center gap-2",children:[(0,t.jsx)(d,{className:"w-6 h-6 text-secondary"}),"Start New Session"]}),(0,t.jsxs)("div",{className:"mt-4 space-y-6",children:[(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("button",{type:"button",className:"btn btn-ghost btn-sm px-2 h-auto min-h-0 normal-case justify-start gap-2",onClick:()=>eb(e=>!e),children:[(0,t.jsx)(c,{className:`w-4 h-4 transition-transform ${ex?"rotate-90":""}`}),ex?"Hide Session Setup":e2]}),ex&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Agent Provider"}),(0,t.jsxs)("div",{className:"join w-full",children:[(0,t.jsx)("div",{className:"join-item bg-base-300 flex items-center px-3 border border-base-content/20 border-r-0",children:(0,t.jsx)(d,{className:"w-4 h-4"})}),(0,t.jsx)("select",{className:"select select-bordered join-item w-full focus:outline-none",value:ec?.cli||"",onChange:ta,disabled:eL,children:_.map(e=>(0,t.jsx)("option",{value:e.cli,children:e.name},e.cli))})]}),ec?.description&&(0,t.jsx)("p",{className:"text-[10px] opacity-60 mt-1 pl-1 italic leading-tight",children:ec.description})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Model"}),(0,t.jsxs)("div",{className:"join w-full",children:[(0,t.jsx)("div",{className:"join-item bg-base-300 flex items-center px-3 border border-base-content/20 border-r-0",children:(0,t.jsx)(m,{className:"w-4 h-4"})}),(0,t.jsxs)("select",{className:"select select-bordered join-item w-full focus:outline-none",value:ed,onChange:ts,disabled:eL||!ec,children:[(0,t.jsx)("option",{value:"auto",children:"Auto"}),ec?.models.map(e=>(0,t.jsx)("option",{value:e.id,children:e.label},e.id))]})]}),ec?.models.find(e=>e.id===ed)?.description&&(0,t.jsx)("p",{className:"text-[10px] opacity-60 mt-1 pl-1 italic leading-tight",children:ec.models.find(e=>e.id===ed)?.description})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Start up script (Optional)"}),(0,t.jsx)("input",{type:"text",className:"input input-bordered w-full font-mono text-sm",placeholder:"npm i",value:eu,onChange:tr,onBlur:tl,onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&"Enter"===e.key&&(e.preventDefault(),tC())},disabled:eL}),(0,t.jsx)("div",{className:"text-xs opacity-50 px-1",children:"Script to run in the terminal agent iframe upon startup."})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Dev server script (Optional)"}),(0,t.jsx)("input",{type:"text",className:"input input-bordered w-full font-mono text-sm",placeholder:"npm run dev",value:ep,onChange:e=>{ef(e.target.value)},onBlur:tn,onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&"Enter"===e.key&&(e.preventDefault(),tC())},disabled:eL}),(0,t.jsx)("div",{className:"text-xs opacity-50 px-1",children:"Script for the Session View Start Dev Server button in the right terminal."})]})]})]}),(0,t.jsx)("div",{className:"divider"}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Title (Optional)"}),(0,t.jsx)("input",{type:"text",className:"input input-bordered w-full font-mono text-sm",placeholder:"Task Title",value:ey,onChange:e=>ew(e.target.value),onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&"Enter"===e.key&&(e.preventDefault(),tC())},disabled:eL})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Initial Message (Optional)"}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("textarea",{className:"textarea textarea-bordered w-full h-64 font-mono text-sm leading-tight resize-none",placeholder:"Describe what you want the agent to do... Type @ to mention files.",value:eg,onChange:tw,onKeyDown:e=>{if((e.metaKey||e.ctrlKey)&&"Enter"===e.key){e.preventDefault(),tC();return}td&&tu.length>0&&("ArrowUp"===e.key?(e.preventDefault(),tg(e=>e>0?e-1:tu.length-1)):"ArrowDown"===e.key?(e.preventDefault(),tg(e=>e<tu.length-1?e+1:0)):"Enter"===e.key||"Tab"===e.key?(e.preventDefault(),tj(tu[tb])):"Escape"===e.key&&(e.preventDefault(),tm(!1)))},onClick:e=>{tx(e.currentTarget.selectionStart),tm(!1)},onKeyUp:e=>tx(e.currentTarget.selectionStart),disabled:eL}),td&&tu.length>0&&(0,t.jsx)("div",{className:"absolute left-0 right-0 z-50 mt-1 max-h-48 overflow-y-auto bg-base-100 border border-base-300 rounded-md shadow-lg",children:tu.map((e,a)=>(0,t.jsx)("button",{className:`w-full text-left px-3 py-2 text-xs border-b border-base-200 last:border-0 truncate ${a===tb?"bg-primary text-primary-content":"hover:bg-primary/10"}`,onMouseDown:t=>{t.preventDefault(),tj(e)},children:e},e))})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Attachments (Optional)"}),(0,t.jsx)("input",{type:"file",multiple:!0,className:"file-input file-input-bordered w-full",onChange:e=>{e.target.files&&(to(Array.from(e.target.files).map((e,t)=>tc(e,t))),e.target.value="")},disabled:eL}),(0,t.jsx)("div",{className:"text-xs opacity-50 px-1",children:"Paste files from clipboard with Cmd/Ctrl+V anywhere on this page."}),ej.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-2 mt-2",children:ej.map((e,a)=>(0,t.jsxs)("span",{className:"badge badge-neutral gap-2 p-3",children:[e.name,(0,t.jsx)("button",{onClick:()=>{eN(e=>e.filter((e,t)=>t!==a))},className:"btn btn-ghost btn-xs btn-circle text-error",children:(0,t.jsx)(n,{className:"w-3 h-3"})})]},`upload-${a}`))}),eS.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-2 mt-2",children:eS.map((e,a)=>(0,t.jsxs)("span",{className:"badge badge-secondary gap-2 p-3",children:[e,(0,t.jsx)("button",{onClick:()=>{ek(e=>e.filter((e,t)=>t!==a))},className:"btn btn-ghost btn-xs btn-circle text-error",title:"Remove carried attachment",children:(0,t.jsx)(n,{className:"w-3 h-3"})})]},`prefill-${e}-${a}`))})]}),(0,t.jsx)("div",{className:"card-actions justify-end mt-4",children:(0,t.jsx)("button",{className:"btn btn-primary btn-wide shadow-lg",onClick:tC,disabled:eL,children:eL?(0,t.jsx)("span",{className:"loading loading-spinner"}):"Start Session"})})]})]})})]})]}),"new"===e&&!Q&&(0,t.jsx)("div",{className:"card w-full max-w-2xl bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[e$&&(0,t.jsx)("div",{className:"alert alert-error text-sm py-2 px-3",children:e$}),(0,t.jsx)("h2",{className:"card-title",children:"Select a Repository"}),(0,t.jsx)("p",{className:"opacity-70 text-sm",children:"Choose a repository first, then start or resume a session."}),(0,t.jsx)("div",{className:"card-actions justify-end mt-4",children:(0,t.jsx)("button",{className:"btn btn-primary",onClick:()=>Z.push("/"),children:"Go to Home"})})]})}),"new"===e&&eB&&eG&&(0,t.jsx)("div",{className:"fixed inset-0 z-[1000] flex items-center justify-center bg-base-content/45 px-4",children:(0,t.jsx)("div",{className:"w-full max-w-md rounded-xl border border-base-300 bg-base-100 p-6 shadow-2xl",children:(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsx)("span",{className:"loading loading-spinner loading-lg text-primary"}),(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsxs)("h3",{className:"text-lg font-semibold",children:["Installing ",Y[eG]]}),(0,t.jsx)("p",{className:"text-sm opacity-70",children:"Please wait while we install the coding agent CLI."})]})]})})}),"new"===e&&eV&&e_&&(0,t.jsx)("div",{className:"fixed inset-0 z-[1001] flex items-center justify-center bg-base-content/60 p-4",children:(0,t.jsx)("div",{className:"w-full max-w-5xl rounded-xl border border-base-300 bg-base-100 shadow-2xl",children:(0,t.jsxs)("div",{className:"space-y-4 p-5 md:p-6",children:[(0,t.jsx)("h3",{className:"text-xl font-semibold",children:"Login Required"}),(0,t.jsxs)("p",{className:"text-sm opacity-80",children:[Y[e_]," has been installed. Complete login in the terminal below, then click Done to continue."]}),(0,t.jsxs)("p",{className:"text-xs opacity-60",children:["Command: ",(0,t.jsx)("span",{className:"font-mono",children:eW})]}),(0,t.jsx)("div",{className:"h-[420px] overflow-hidden rounded-lg border border-base-300 bg-base-200",children:(0,t.jsx)("iframe",{ref:e0,src:"/terminal",className:"h-full w-full border-none",allow:"clipboard-read; clipboard-write",onLoad:tS})}),eX&&(0,t.jsx)("div",{className:"alert alert-error text-sm py-2",children:eX}),!eX&&(0,t.jsx)("div",{className:"text-xs opacity-70",children:eJ?"Login command was sent to the terminal automatically.":"Waiting for terminal to initialize..."}),(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)("button",{className:"btn btn-primary",onClick:()=>void tM(),disabled:eL,children:"Done"})})]})})}),"new"===e&&!Q&&(!s||!!e$)&&(0,t.jsx)("div",{className:"card w-full max-w-2xl bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[(0,t.jsxs)("h2",{className:"card-title flex items-center gap-2",children:[(0,t.jsx)(r,{className:"w-6 h-6 text-primary"}),"Git Repository Selector"]}),eA?(0,t.jsxs)("div",{className:"alert text-sm py-2 px-3 mt-2 flex items-center gap-2",children:[(0,t.jsx)("span",{className:"loading loading-spinner loading-sm"}),p?`Searching for repository "${p}"...`:"Searching for repository..."]}):e$?(0,t.jsx)("div",{className:"alert alert-error text-sm py-2 px-3 mt-2",children:e$}):(0,t.jsx)("div",{className:"text-sm opacity-70 mt-2",children:"No repository specified."}),(0,t.jsx)("div",{className:"mt-4",children:(0,t.jsx)("button",{className:"btn btn-primary btn-sm",onClick:()=>Z.push("/"),children:"Choose Repository"})})]})}),"home"===e&&x&&(0,t.jsx)(j,{initialPath:y?.defaultRoot||void 0,onSelect:e6,onCancel:()=>b(!1),checkRepo:N}),"home"===e&&g&&(0,t.jsx)(j,{title:"Default Root Folder",initialPath:y?.defaultRoot||void 0,onSelect:e9,onCancel:()=>v(!1)})]})}e.s(["default",()=>J],5951)}]);
|
|
5
|
+
This will remove the worktree, branch, and session metadata.`)){eP(e.sessionName),eU(null);try{let t=await A(e.sessionName);if(!t.success)return void eU(t.error||"Failed to delete session");let a=await I(Q);el(a);let s=await I();en(s),e1()}catch(e){console.error(e),eU("Failed to delete session")}finally{eP(null)}}},tE=y?.recentRepos??[],tF=Q?tE.includes(Q)?tE:[Q,...tE]:tE;return(0,t.jsxs)(t.Fragment,{children:["home"===e&&(0,t.jsx)("div",{className:"card w-full max-w-2xl bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[(0,t.jsxs)("h2",{className:"card-title flex justify-between items-center",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(H.default,{src:"/icon.png",alt:"Viba",width:24,height:24,className:"rounded-sm"}),"Viba"]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("button",{className:"btn btn-ghost btn-sm gap-2",onClick:()=>v(!0),title:y?.defaultRoot?`Default: ${y.defaultRoot}`:"Set default browsing folder",children:[(0,t.jsx)(o,{className:"w-4 h-4"}),y?.defaultRoot?"Change Default":"Set Default Root"]}),(0,t.jsxs)("button",{className:"btn btn-primary btn-sm gap-2",onClick:()=>b(!0),children:[(0,t.jsx)(i.Plus,{className:"w-4 h-4"})," Open Local Repo"]})]})]}),e$&&(0,t.jsx)("div",{className:"alert alert-error text-sm py-2 px-3 mt-2",children:e$}),(0,t.jsx)("div",{className:"mt-4 space-y-4",children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("h3",{className:"text-sm font-semibold opacity-70 uppercase tracking-wide",children:"Recent Repositories"}),eI?y&&0!==y.recentRepos.length?(0,t.jsx)("div",{className:"flex flex-col gap-2",children:y.recentRepos.map(e=>(0,t.jsxs)("div",{onClick:()=>e5(e),className:"flex items-center justify-between p-3 bg-base-100 hover:bg-base-300 rounded-md cursor-pointer group transition-all border border-base-300",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 overflow-hidden shrink min-w-0",children:[(0,t.jsx)(r,{className:"w-5 h-5 text-secondary shrink-0"}),(0,t.jsxs)("div",{className:"flex flex-col overflow-hidden",children:[(0,t.jsx)("span",{className:"font-medium truncate",children:(0,w.getBaseName)(e)}),(0,t.jsx)("span",{className:"text-xs opacity-50 truncate",children:e})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:[(0,t.jsx)("button",{onClick:t=>tN(t,e),className:"btn btn-circle btn-ghost btn-xs opacity-0 group-hover:opacity-100 text-error",title:"Remove from history",children:(0,t.jsx)(n,{className:"w-3 h-3"})}),(0,t.jsx)(c,{className:"w-4 h-4 opacity-30"})]})]},e))}):(0,t.jsx)("div",{className:"text-center py-8 text-base-content/40 italic bg-base-100 rounded-lg",children:"No recent repositories found."}):(0,t.jsx)("div",{className:"flex items-center justify-center py-8 bg-base-100 rounded-lg",children:(0,t.jsx)("span",{className:"loading loading-spinner loading-md"})})]})})]})}),"new"===e&&Q&&(0,t.jsxs)("div",{className:"w-full max-w-6xl space-y-4",children:[e$&&(0,t.jsx)("div",{className:"alert alert-error text-sm py-2 px-3",children:e$}),(0,t.jsxs)("div",{className:"flex flex-col gap-4 w-full",children:[(0,t.jsx)("div",{className:"card w-full bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[(0,t.jsxs)("h2",{className:"card-title flex justify-between items-center",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(r,{className:"w-6 h-6 text-primary"}),"Git Repository Selector"]}),(0,t.jsx)("button",{className:"btn btn-sm btn-ghost",onClick:()=>Z.push("/"),children:"Change Repo"})]}),(0,t.jsx)("div",{className:"mt-4",children:(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,t.jsxs)("div",{className:"bg-base-100 p-4 rounded-lg border border-base-300 space-y-2",children:[(0,t.jsx)("label",{className:"text-xs opacity-50 uppercase tracking-widest",children:"Current Repository"}),(0,t.jsxs)("div",{className:"join w-full",children:[(0,t.jsx)("div",{className:"join-item bg-base-300 flex items-center px-3 border border-base-content/20 border-r-0",children:(0,t.jsx)(r,{className:"w-4 h-4 text-primary"})}),(0,t.jsx)("select",{className:"select select-bordered join-item w-full font-mono focus:outline-none",value:Q,onChange:e=>{e8(e)},disabled:eL||0===tF.length,children:tF.map(e=>(0,t.jsx)("option",{value:e,children:(0,w.getBaseName)(e)},e))})]}),(0,t.jsx)("div",{className:"text-[10px] opacity-50 font-mono truncate px-1",title:Q,children:Q})]}),(0,t.jsxs)("div",{className:"bg-base-100 p-4 rounded-lg border border-base-300 space-y-2",children:[(0,t.jsxs)("div",{className:"flex justify-between items-center",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70 uppercase tracking-widest",children:"Current Branch"}),eL&&(0,t.jsx)("span",{className:"loading loading-spinner loading-xs"})]}),(0,t.jsxs)("div",{className:"join w-full",children:[(0,t.jsx)("div",{className:"join-item bg-base-300 flex items-center px-3 border border-base-content/20 border-r-0",children:(0,t.jsx)(l.GitBranch,{className:"w-4 h-4"})}),(0,t.jsx)("select",{className:"select select-bordered join-item w-full font-mono focus:outline-none",value:ea,onChange:tt,disabled:eL,children:ee.map(e=>(0,t.jsxs)("option",{value:e.name,children:[e.name," ",e.current?"(checked out)":""]},e.name))})]}),(0,t.jsx)("div",{className:"text-[10px] opacity-50 px-1 italic",children:"Switching branches updates the working directory."})]})]})})]})}),er.length>0&&(0,t.jsx)("div",{className:"card w-full bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[(0,t.jsxs)("h2",{className:"card-title flex items-center gap-2",children:[(0,t.jsx)(h.Play,{className:"w-6 h-6 text-success"}),"Continue Existing Session"]}),(0,t.jsx)("div",{className:"flex flex-col gap-2 mt-4 max-h-64 overflow-y-auto",children:er.map(e=>(0,t.jsx)("div",{className:"flex flex-col gap-2 p-3 bg-base-100 rounded-md border border-base-300",children:(0,t.jsxs)("div",{className:"flex justify-between items-start",children:[(0,t.jsxs)("div",{children:[e.title&&(0,t.jsx)("div",{className:"font-semibold",children:e.title}),(0,t.jsx)("div",{className:"text-xs opacity-60 font-mono",children:e.sessionName}),(0,t.jsxs)("div",{className:"text-xs opacity-60 mt-1",children:["Agent: ",e.agent," • Model: ",e.model]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("button",{className:"btn btn-sm btn-success btn-outline gap-2",onClick:()=>tD(e),disabled:eL||eF===e.sessionName,children:[(0,t.jsx)(h.Play,{className:"w-3 h-3"})," Resume"]}),(0,t.jsxs)("button",{className:"btn btn-sm btn-secondary btn-outline gap-2",onClick:()=>(e=>{if(!Q)return;let t=`/new?repo=${encodeURIComponent(Q)}&prefillFromSession=${encodeURIComponent(e.sessionName)}`;Z.push(t)})(e),disabled:eL||eF===e.sessionName,title:"Start a new attempt prefilled from this session",children:[(0,t.jsx)(i.Plus,{className:"w-3 h-3"})," New Attempt"]}),(0,t.jsxs)("button",{className:"btn btn-sm btn-error btn-outline gap-2",onClick:()=>tL(e),disabled:eL||eF===e.sessionName,children:[(0,t.jsx)(u.Trash2,{className:"w-3 h-3"}),eF===e.sessionName?"Deleting...":"Delete"]})]})]})},e.sessionName))})]})}),(0,t.jsx)("div",{className:"card w-full bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[(0,t.jsxs)("h2",{className:"card-title flex items-center gap-2",children:[(0,t.jsx)(d,{className:"w-6 h-6 text-secondary"}),"Start New Session"]}),(0,t.jsxs)("div",{className:"mt-4 space-y-6",children:[(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("button",{type:"button",className:"btn btn-ghost btn-sm px-2 h-auto min-h-0 normal-case justify-start gap-2",onClick:()=>eb(e=>!e),children:[(0,t.jsx)(c,{className:`w-4 h-4 transition-transform ${ex?"rotate-90":""}`}),ex?"Hide Session Setup":e2]}),ex&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Agent Provider"}),(0,t.jsxs)("div",{className:"join w-full",children:[(0,t.jsx)("div",{className:"join-item bg-base-300 flex items-center px-3 border border-base-content/20 border-r-0",children:(0,t.jsx)(d,{className:"w-4 h-4"})}),(0,t.jsx)("select",{className:"select select-bordered join-item w-full focus:outline-none",value:ec?.cli||"",onChange:ta,disabled:eL,children:_.map(e=>(0,t.jsx)("option",{value:e.cli,children:e.name},e.cli))})]}),ec?.description&&(0,t.jsx)("p",{className:"text-[10px] opacity-60 mt-1 pl-1 italic leading-tight",children:ec.description})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Model"}),(0,t.jsxs)("div",{className:"join w-full",children:[(0,t.jsx)("div",{className:"join-item bg-base-300 flex items-center px-3 border border-base-content/20 border-r-0",children:(0,t.jsx)(m,{className:"w-4 h-4"})}),(0,t.jsxs)("select",{className:"select select-bordered join-item w-full focus:outline-none",value:ed,onChange:ts,disabled:eL||!ec,children:[(0,t.jsx)("option",{value:"auto",children:"Auto"}),ec?.models.map(e=>(0,t.jsx)("option",{value:e.id,children:e.label},e.id))]})]}),ec?.models.find(e=>e.id===ed)?.description&&(0,t.jsx)("p",{className:"text-[10px] opacity-60 mt-1 pl-1 italic leading-tight",children:ec.models.find(e=>e.id===ed)?.description})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Start up script (Optional)"}),(0,t.jsx)("input",{type:"text",className:"input input-bordered w-full font-mono text-sm",placeholder:"npm i",value:eu,onChange:tr,onBlur:tl,onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&"Enter"===e.key&&(e.preventDefault(),tC())},disabled:eL}),(0,t.jsx)("div",{className:"text-xs opacity-50 px-1",children:"Script to run in the terminal agent iframe upon startup."})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Dev server script (Optional)"}),(0,t.jsx)("input",{type:"text",className:"input input-bordered w-full font-mono text-sm",placeholder:"npm run dev",value:ep,onChange:e=>{ef(e.target.value)},onBlur:tn,onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&"Enter"===e.key&&(e.preventDefault(),tC())},disabled:eL}),(0,t.jsx)("div",{className:"text-xs opacity-50 px-1",children:"Script for the Session View Start Dev Server button in the right terminal."})]})]})]}),(0,t.jsx)("div",{className:"divider"}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Title (Optional)"}),(0,t.jsx)("input",{type:"text",className:"input input-bordered w-full font-mono text-sm",placeholder:"Task Title",value:ey,onChange:e=>ew(e.target.value),onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&"Enter"===e.key&&(e.preventDefault(),tC())},disabled:eL})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Initial Message (Optional)"}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("textarea",{className:"textarea textarea-bordered w-full h-64 font-mono text-sm leading-tight resize-none",placeholder:"Describe what you want the agent to do... Type @ to mention files.",value:eg,onChange:tw,onKeyDown:e=>{if((e.metaKey||e.ctrlKey)&&"Enter"===e.key){e.preventDefault(),tC();return}td&&tu.length>0&&("ArrowUp"===e.key?(e.preventDefault(),tg(e=>e>0?e-1:tu.length-1)):"ArrowDown"===e.key?(e.preventDefault(),tg(e=>e<tu.length-1?e+1:0)):"Enter"===e.key||"Tab"===e.key?(e.preventDefault(),tj(tu[tb])):"Escape"===e.key&&(e.preventDefault(),tm(!1)))},onClick:e=>{tx(e.currentTarget.selectionStart),tm(!1)},onKeyUp:e=>tx(e.currentTarget.selectionStart),disabled:eL}),td&&tu.length>0&&(0,t.jsx)("div",{className:"absolute left-0 right-0 z-50 mt-1 max-h-48 overflow-y-auto bg-base-100 border border-base-300 rounded-md shadow-lg",children:tu.map((e,a)=>(0,t.jsx)("button",{className:`w-full text-left px-3 py-2 text-xs border-b border-base-200 last:border-0 truncate ${a===tb?"bg-primary text-primary-content":"hover:bg-primary/10"}`,onMouseDown:t=>{t.preventDefault(),tj(e)},children:e},e))})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium opacity-70",children:"Attachments (Optional)"}),(0,t.jsx)("input",{type:"file",multiple:!0,className:"file-input file-input-bordered w-full",onChange:e=>{e.target.files&&(to(Array.from(e.target.files).map((e,t)=>tc(e,t))),e.target.value="")},disabled:eL}),(0,t.jsx)("div",{className:"text-xs opacity-50 px-1",children:"Paste files from clipboard with Cmd/Ctrl+V anywhere on this page."}),ej.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-2 mt-2",children:ej.map((e,a)=>(0,t.jsxs)("span",{className:"badge badge-neutral gap-2 p-3",children:[e.name,(0,t.jsx)("button",{onClick:()=>{eN(e=>e.filter((e,t)=>t!==a))},className:"btn btn-ghost btn-xs btn-circle text-error",children:(0,t.jsx)(n,{className:"w-3 h-3"})})]},`upload-${a}`))}),eS.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-2 mt-2",children:eS.map((e,a)=>(0,t.jsxs)("span",{className:"badge badge-secondary gap-2 p-3",children:[e,(0,t.jsx)("button",{onClick:()=>{ek(e=>e.filter((e,t)=>t!==a))},className:"btn btn-ghost btn-xs btn-circle text-error",title:"Remove carried attachment",children:(0,t.jsx)(n,{className:"w-3 h-3"})})]},`prefill-${e}-${a}`))})]}),(0,t.jsx)("div",{className:"card-actions justify-end mt-4",children:(0,t.jsx)("button",{className:"btn btn-primary btn-wide shadow-lg",onClick:tC,disabled:eL,children:eL?(0,t.jsx)("span",{className:"loading loading-spinner"}):"Start Session"})})]})]})})]})]}),"new"===e&&!Q&&(0,t.jsx)("div",{className:"card w-full max-w-2xl bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[e$&&(0,t.jsx)("div",{className:"alert alert-error text-sm py-2 px-3",children:e$}),(0,t.jsx)("h2",{className:"card-title",children:"Select a Repository"}),(0,t.jsx)("p",{className:"opacity-70 text-sm",children:"Choose a repository first, then start or resume a session."}),(0,t.jsx)("div",{className:"card-actions justify-end mt-4",children:(0,t.jsx)("button",{className:"btn btn-primary",onClick:()=>Z.push("/"),children:"Go to Home"})})]})}),"new"===e&&eB&&eG&&(0,t.jsx)("div",{className:"fixed inset-0 z-[1000] flex items-center justify-center bg-base-content/45 px-4",children:(0,t.jsx)("div",{className:"w-full max-w-md rounded-xl border border-base-300 bg-base-100 p-6 shadow-2xl",children:(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsx)("span",{className:"loading loading-spinner loading-lg text-primary"}),(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsxs)("h3",{className:"text-lg font-semibold",children:["Installing ",Y[eG]]}),(0,t.jsx)("p",{className:"text-sm opacity-70",children:"Please wait while we install the coding agent CLI."})]})]})})}),"new"===e&&eV&&e_&&(0,t.jsx)("div",{className:"fixed inset-0 z-[1001] flex items-center justify-center bg-base-content/60 p-4",children:(0,t.jsx)("div",{className:"w-full max-w-5xl rounded-xl border border-base-300 bg-base-100 shadow-2xl",children:(0,t.jsxs)("div",{className:"space-y-4 p-5 md:p-6",children:[(0,t.jsx)("h3",{className:"text-xl font-semibold",children:"Login Required"}),(0,t.jsxs)("p",{className:"text-sm opacity-80",children:[Y[e_]," has been installed. Complete login in the terminal below, then click Done to continue."]}),(0,t.jsxs)("p",{className:"text-xs opacity-60",children:["Command: ",(0,t.jsx)("span",{className:"font-mono",children:eW})]}),(0,t.jsx)("div",{className:"h-[420px] overflow-hidden rounded-lg border border-base-300 bg-base-200",children:(0,t.jsx)("iframe",{ref:e0,src:"/terminal",className:"h-full w-full border-none",allow:"clipboard-read; clipboard-write",onLoad:tS})}),eX&&(0,t.jsx)("div",{className:"alert alert-error text-sm py-2",children:eX}),!eX&&(0,t.jsx)("div",{className:"text-xs opacity-70",children:eJ?"Login command was sent to the terminal automatically.":"Waiting for terminal to initialize..."}),(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)("button",{className:"btn btn-primary",onClick:()=>void tM(),disabled:eL,children:"Done"})})]})})}),"new"===e&&!Q&&(!s||!!e$)&&(0,t.jsx)("div",{className:"card w-full max-w-2xl bg-base-200 shadow-xl",children:(0,t.jsxs)("div",{className:"card-body",children:[(0,t.jsxs)("h2",{className:"card-title flex items-center gap-2",children:[(0,t.jsx)(r,{className:"w-6 h-6 text-primary"}),"Git Repository Selector"]}),eA?(0,t.jsxs)("div",{className:"alert text-sm py-2 px-3 mt-2 flex items-center gap-2",children:[(0,t.jsx)("span",{className:"loading loading-spinner loading-sm"}),p?`Searching for repository "${p}"...`:"Searching for repository..."]}):e$?(0,t.jsx)("div",{className:"alert alert-error text-sm py-2 px-3 mt-2",children:e$}):(0,t.jsx)("div",{className:"text-sm opacity-70 mt-2",children:"No repository specified."}),(0,t.jsx)("div",{className:"mt-4",children:(0,t.jsx)("button",{className:"btn btn-primary btn-sm",onClick:()=>Z.push("/"),children:"Choose Repository"})})]})}),"home"===e&&x&&(0,t.jsx)(j,{initialPath:y?.defaultRoot||void 0,onSelect:e5,onCancel:()=>b(!1),checkRepo:N}),"home"===e&&g&&(0,t.jsx)(j,{title:"Default Root Folder",initialPath:y?.defaultRoot||void 0,onSelect:e9,onCancel:()=>v(!1)})]})}e.s(["default",()=>J],5951)}]);
|