@ytsaurus/ui 3.3.1 → 3.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/public/build/assets-manifest.json +34 -34
- package/dist/public/build/css/3132.43311d48.chunk.css +2 -0
- package/dist/public/build/css/3132.43311d48.chunk.css.map +1 -0
- package/dist/public/build/css/590.6f40b178.chunk.css +2 -0
- package/dist/public/build/css/590.6f40b178.chunk.css.map +1 -0
- package/dist/public/build/css/scheduling.8b8a192b.chunk.css +2 -0
- package/dist/public/build/css/scheduling.8b8a192b.chunk.css.map +1 -0
- package/dist/public/build/js/2563.bbb74274.chunk.js +2 -0
- package/dist/public/build/js/2563.bbb74274.chunk.js.map +1 -0
- package/dist/public/build/js/4237.57c56e6b.chunk.js +3 -0
- package/dist/public/build/js/4237.57c56e6b.chunk.js.map +1 -0
- package/dist/public/build/js/887.d8e107dc.chunk.js +2 -0
- package/dist/public/build/js/887.d8e107dc.chunk.js.map +1 -0
- package/dist/public/build/js/{app-navigation-page-layout.27364587.chunk.js → app-navigation-page-layout.afb1c1ba.chunk.js} +2 -2
- package/dist/public/build/js/app-navigation-page-layout.afb1c1ba.chunk.js.map +1 -0
- package/dist/public/build/js/{app-navigation.b86557c0.chunk.js → app-navigation.38835895.chunk.js} +2 -2
- package/dist/public/build/js/{app-navigation.b86557c0.chunk.js.map → app-navigation.38835895.chunk.js.map} +1 -1
- package/dist/public/build/js/{cluster-page-wrapper.98d8905c.chunk.js → cluster-page-wrapper.84f72ceb.chunk.js} +2 -2
- package/dist/public/build/js/{cluster-page-wrapper.98d8905c.chunk.js.map → cluster-page-wrapper.84f72ceb.chunk.js.map} +1 -1
- package/dist/public/build/js/{code-assistant-chat.4275144c.chunk.js → code-assistant-chat.a7927638.chunk.js} +2 -2
- package/dist/public/build/js/{code-assistant-chat.4275144c.chunk.js.map → code-assistant-chat.a7927638.chunk.js.map} +1 -1
- package/dist/public/build/js/main.d91d7090.js +3 -0
- package/dist/public/build/js/main.d91d7090.js.map +1 -0
- package/dist/public/build/js/{navigation.c35bb543.chunk.js → navigation.9b4e0429.chunk.js} +2 -2
- package/dist/public/build/js/navigation.9b4e0429.chunk.js.map +1 -0
- package/dist/public/build/js/{query-tracker.17cb6d4e.chunk.js → query-tracker.1b6d537a.chunk.js} +2 -2
- package/dist/public/build/js/{query-tracker.17cb6d4e.chunk.js.map → query-tracker.1b6d537a.chunk.js.map} +1 -1
- package/dist/public/build/js/{runtime.6000b37f.js → runtime.93a1fc00.js} +2 -2
- package/dist/public/build/js/{runtime.6000b37f.js.map → runtime.93a1fc00.js.map} +1 -1
- package/dist/public/build/js/scheduling.943b1602.chunk.js +2 -0
- package/dist/public/build/js/scheduling.943b1602.chunk.js.map +1 -0
- package/dist/public/build/manifest.json +30 -30
- package/dist/server/controllers/ai-chat.js +2 -1
- package/dist/server/types/ai-chat.d.ts +3 -0
- package/package.json +5 -5
- package/dist/public/build/css/3132.62cd9c06.chunk.css +0 -2
- package/dist/public/build/css/3132.62cd9c06.chunk.css.map +0 -1
- package/dist/public/build/css/590.1d7b27ca.chunk.css +0 -2
- package/dist/public/build/css/590.1d7b27ca.chunk.css.map +0 -1
- package/dist/public/build/css/scheduling.f5b832cf.chunk.css +0 -2
- package/dist/public/build/css/scheduling.f5b832cf.chunk.css.map +0 -1
- package/dist/public/build/js/3205.87c8575d.chunk.js +0 -2
- package/dist/public/build/js/3205.87c8575d.chunk.js.map +0 -1
- package/dist/public/build/js/4237.a6d263f6.chunk.js +0 -3
- package/dist/public/build/js/4237.a6d263f6.chunk.js.map +0 -1
- package/dist/public/build/js/887.7bbb21d6.chunk.js +0 -2
- package/dist/public/build/js/887.7bbb21d6.chunk.js.map +0 -1
- package/dist/public/build/js/app-navigation-page-layout.27364587.chunk.js.map +0 -1
- package/dist/public/build/js/main.39129d1a.js +0 -3
- package/dist/public/build/js/main.39129d1a.js.map +0 -1
- package/dist/public/build/js/navigation.c35bb543.chunk.js.map +0 -1
- package/dist/public/build/js/scheduling.3fff0b4f.chunk.js +0 -2
- package/dist/public/build/js/scheduling.3fff0b4f.chunk.js.map +0 -1
- /package/dist/public/build/js/{4237.a6d263f6.chunk.js.LICENSE.txt → 4237.57c56e6b.chunk.js.LICENSE.txt} +0 -0
- /package/dist/public/build/js/{main.39129d1a.js.LICENSE.txt → main.d91d7090.js.LICENSE.txt} +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"main.css": "css/main.0550d347.css",
|
|
3
|
-
"main.js": "js/main.
|
|
4
|
-
"runtime.js": "js/runtime.
|
|
3
|
+
"main.js": "js/main.d91d7090.js",
|
|
4
|
+
"runtime.js": "js/runtime.93a1fc00.js",
|
|
5
5
|
"odin.css": "css/odin.e56678a7.chunk.css",
|
|
6
6
|
"odin.js": "js/odin.e000686b.chunk.js",
|
|
7
7
|
"cluster-menu.css": "css/cluster-menu.16f20cf5.chunk.css",
|
|
8
8
|
"cluster-menu.js": "js/cluster-menu.12b81f0b.chunk.js",
|
|
9
9
|
"cluster-page-wrapper.css": "css/cluster-page-wrapper.00ce068c.chunk.css",
|
|
10
|
-
"cluster-page-wrapper.js": "js/cluster-page-wrapper.
|
|
10
|
+
"cluster-page-wrapper.js": "js/cluster-page-wrapper.84f72ceb.chunk.js",
|
|
11
11
|
"settings-panel.css": "css/settings-panel.e1c01fa0.chunk.css",
|
|
12
12
|
"settings-panel.js": "js/settings-panel.61f7e7e3.chunk.js",
|
|
13
13
|
"manage-tokens.css": "css/manage-tokens.9a74d930.chunk.css",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"query-visualization.js": "js/query-visualization.5da65a4d.chunk.js",
|
|
25
25
|
"incarnations.css": "css/incarnations.d2f8bbcc.chunk.css",
|
|
26
26
|
"incarnations.js": "js/incarnations.5672a83c.chunk.js",
|
|
27
|
-
"app-navigation-page-layout.js": "js/app-navigation-page-layout.
|
|
27
|
+
"app-navigation-page-layout.js": "js/app-navigation-page-layout.afb1c1ba.chunk.js",
|
|
28
28
|
"js/7776.b343bc40.chunk.js": "js/7776.b343bc40.chunk.js",
|
|
29
29
|
"js/897.aff55e07.chunk.js": "js/897.aff55e07.chunk.js",
|
|
30
30
|
"js/4163.848e1939.chunk.js": "js/4163.848e1939.chunk.js",
|
|
@@ -181,7 +181,7 @@
|
|
|
181
181
|
"system.css": "css/system.8f79cb5e.chunk.css",
|
|
182
182
|
"system.js": "js/system.575d664f.chunk.js",
|
|
183
183
|
"navigation.css": "css/navigation.52db90f0.chunk.css",
|
|
184
|
-
"navigation.js": "js/navigation.
|
|
184
|
+
"navigation.js": "js/navigation.9b4e0429.chunk.js",
|
|
185
185
|
"path-viewer.css": "css/path-viewer.ce6360d4.chunk.css",
|
|
186
186
|
"path-viewer.js": "js/path-viewer.09144838.chunk.js",
|
|
187
187
|
"tablet.css": "css/tablet.02872701.chunk.css",
|
|
@@ -192,10 +192,10 @@
|
|
|
192
192
|
"groups.js": "js/groups.22f05e2d.chunk.js",
|
|
193
193
|
"users.css": "css/users.c7f945d8.chunk.css",
|
|
194
194
|
"users.js": "js/users.b88bf764.chunk.js",
|
|
195
|
-
"scheduling.css": "css/scheduling.
|
|
196
|
-
"scheduling.js": "js/scheduling.
|
|
195
|
+
"scheduling.css": "css/scheduling.8b8a192b.chunk.css",
|
|
196
|
+
"scheduling.js": "js/scheduling.943b1602.chunk.js",
|
|
197
197
|
"query-tracker.css": "css/query-tracker.b77df5c1.chunk.css",
|
|
198
|
-
"query-tracker.js": "js/query-tracker.
|
|
198
|
+
"query-tracker.js": "js/query-tracker.1b6d537a.chunk.js",
|
|
199
199
|
"job.css": "css/job.825296a8.chunk.css",
|
|
200
200
|
"job.js": "js/job.a9ec9818.chunk.js",
|
|
201
201
|
"chyt.css": "css/chyt.8ce4594f.chunk.css",
|
|
@@ -206,9 +206,9 @@
|
|
|
206
206
|
"chart-kit.css": "css/chart-kit.8f66d1ee.chunk.css",
|
|
207
207
|
"chart-kit.js": "js/chart-kit.819b87c3.chunk.js",
|
|
208
208
|
"app-navigation.css": "css/app-navigation.6955071c.chunk.css",
|
|
209
|
-
"app-navigation.js": "js/app-navigation.
|
|
209
|
+
"app-navigation.js": "js/app-navigation.38835895.chunk.js",
|
|
210
210
|
"code-assistant-chat.css": "css/code-assistant-chat.12ac3bf4.chunk.css",
|
|
211
|
-
"code-assistant-chat.js": "js/code-assistant-chat.
|
|
211
|
+
"code-assistant-chat.js": "js/code-assistant-chat.a7927638.chunk.js",
|
|
212
212
|
"yt-monaco-editor.css": "css/yt-monaco-editor.f3c34bec.chunk.css",
|
|
213
213
|
"yt-monaco-editor.js": "js/yt-monaco-editor.2d113a81.chunk.js",
|
|
214
214
|
"query-widget.css": "css/query-widget.27c08570.chunk.css",
|
|
@@ -371,9 +371,9 @@
|
|
|
371
371
|
"css/7999.364df33c.chunk.css": "css/7999.364df33c.chunk.css",
|
|
372
372
|
"css/1745.4d611a67.chunk.css": "css/1745.4d611a67.chunk.css",
|
|
373
373
|
"css/5423.526f744e.chunk.css": "css/5423.526f744e.chunk.css",
|
|
374
|
+
"css/3132.43311d48.chunk.css": "css/3132.43311d48.chunk.css",
|
|
374
375
|
"css/4568.a9e44788.chunk.css": "css/4568.a9e44788.chunk.css",
|
|
375
376
|
"css/4136.51403a8c.chunk.css": "css/4136.51403a8c.chunk.css",
|
|
376
|
-
"css/3132.62cd9c06.chunk.css": "css/3132.62cd9c06.chunk.css",
|
|
377
377
|
"css/8638.cbb482c9.chunk.css": "css/8638.cbb482c9.chunk.css",
|
|
378
378
|
"css/8632.16fb4d31.chunk.css": "css/8632.16fb4d31.chunk.css",
|
|
379
379
|
"css/7152.7d94e720.chunk.css": "css/7152.7d94e720.chunk.css",
|
|
@@ -385,7 +385,7 @@
|
|
|
385
385
|
"css/5883.0c0e10fe.chunk.css": "css/5883.0c0e10fe.chunk.css",
|
|
386
386
|
"css/1579.4d7975b2.chunk.css": "css/1579.4d7975b2.chunk.css",
|
|
387
387
|
"css/2433.5fca7517.chunk.css": "css/2433.5fca7517.chunk.css",
|
|
388
|
-
"css/590.
|
|
388
|
+
"css/590.6f40b178.chunk.css": "css/590.6f40b178.chunk.css",
|
|
389
389
|
"css/333.4b28585f.chunk.css": "css/333.4b28585f.chunk.css",
|
|
390
390
|
"css/6560.aef2ade7.chunk.css": "css/6560.aef2ade7.chunk.css",
|
|
391
391
|
"css/914.0cd5cbfe.chunk.css": "css/914.0cd5cbfe.chunk.css",
|
|
@@ -422,18 +422,18 @@
|
|
|
422
422
|
"js/908.fca7a202.chunk.js": "js/908.fca7a202.chunk.js",
|
|
423
423
|
"js/5567.977818b1.chunk.js": "js/5567.977818b1.chunk.js",
|
|
424
424
|
"js/6762.654a9675.chunk.js": "js/6762.654a9675.chunk.js",
|
|
425
|
-
"js/4237.
|
|
425
|
+
"js/4237.57c56e6b.chunk.js": "js/4237.57c56e6b.chunk.js",
|
|
426
426
|
"js/1306.7f2aa880.chunk.js": "js/1306.7f2aa880.chunk.js",
|
|
427
427
|
"js/5708.484bb019.chunk.js": "js/5708.484bb019.chunk.js",
|
|
428
428
|
"js/2941.e5661da9.chunk.js": "js/2941.e5661da9.chunk.js",
|
|
429
429
|
"js/8992.eae96f40.chunk.js": "js/8992.eae96f40.chunk.js",
|
|
430
|
-
"js/887.
|
|
430
|
+
"js/887.d8e107dc.chunk.js": "js/887.d8e107dc.chunk.js",
|
|
431
431
|
"js/663.3cd92e3e.chunk.js": "js/663.3cd92e3e.chunk.js",
|
|
432
432
|
"js/9137.6e072c1c.chunk.js": "js/9137.6e072c1c.chunk.js",
|
|
433
433
|
"js/56.0eb195d7.chunk.js": "js/56.0eb195d7.chunk.js",
|
|
434
434
|
"js/5828.15aab82c.chunk.js": "js/5828.15aab82c.chunk.js",
|
|
435
435
|
"js/5366.3be9a380.chunk.js": "js/5366.3be9a380.chunk.js",
|
|
436
|
-
"js/
|
|
436
|
+
"js/2563.bbb74274.chunk.js": "js/2563.bbb74274.chunk.js",
|
|
437
437
|
"js/7861.69957058.chunk.js": "js/7861.69957058.chunk.js",
|
|
438
438
|
"json.5239aa2e.worker.js": "json.5239aa2e.worker.js",
|
|
439
439
|
"editor.afbd84bf.worker.js": "editor.afbd84bf.worker.js",
|
|
@@ -467,14 +467,14 @@
|
|
|
467
467
|
"assets/images/ui.jpg": "assets/images/ui.bab31938.jpg",
|
|
468
468
|
"assets/images/cluster-2x.svg": "assets/images/cluster-2x.e53788d6.svg",
|
|
469
469
|
"main.0550d347.css.map": "css/main.0550d347.css.map",
|
|
470
|
-
"main.
|
|
471
|
-
"runtime.
|
|
470
|
+
"main.d91d7090.js.map": "js/main.d91d7090.js.map",
|
|
471
|
+
"runtime.93a1fc00.js.map": "js/runtime.93a1fc00.js.map",
|
|
472
472
|
"odin.e56678a7.chunk.css.map": "css/odin.e56678a7.chunk.css.map",
|
|
473
473
|
"odin.e000686b.chunk.js.map": "js/odin.e000686b.chunk.js.map",
|
|
474
474
|
"cluster-menu.16f20cf5.chunk.css.map": "css/cluster-menu.16f20cf5.chunk.css.map",
|
|
475
475
|
"cluster-menu.12b81f0b.chunk.js.map": "js/cluster-menu.12b81f0b.chunk.js.map",
|
|
476
476
|
"cluster-page-wrapper.00ce068c.chunk.css.map": "css/cluster-page-wrapper.00ce068c.chunk.css.map",
|
|
477
|
-
"cluster-page-wrapper.
|
|
477
|
+
"cluster-page-wrapper.84f72ceb.chunk.js.map": "js/cluster-page-wrapper.84f72ceb.chunk.js.map",
|
|
478
478
|
"settings-panel.e1c01fa0.chunk.css.map": "css/settings-panel.e1c01fa0.chunk.css.map",
|
|
479
479
|
"settings-panel.61f7e7e3.chunk.js.map": "js/settings-panel.61f7e7e3.chunk.js.map",
|
|
480
480
|
"manage-tokens.9a74d930.chunk.css.map": "css/manage-tokens.9a74d930.chunk.css.map",
|
|
@@ -491,7 +491,7 @@
|
|
|
491
491
|
"query-visualization.5da65a4d.chunk.js.map": "js/query-visualization.5da65a4d.chunk.js.map",
|
|
492
492
|
"incarnations.d2f8bbcc.chunk.css.map": "css/incarnations.d2f8bbcc.chunk.css.map",
|
|
493
493
|
"incarnations.5672a83c.chunk.js.map": "js/incarnations.5672a83c.chunk.js.map",
|
|
494
|
-
"app-navigation-page-layout.
|
|
494
|
+
"app-navigation-page-layout.afb1c1ba.chunk.js.map": "js/app-navigation-page-layout.afb1c1ba.chunk.js.map",
|
|
495
495
|
"7776.b343bc40.chunk.js.map": "js/7776.b343bc40.chunk.js.map",
|
|
496
496
|
"897.aff55e07.chunk.js.map": "js/897.aff55e07.chunk.js.map",
|
|
497
497
|
"4163.848e1939.chunk.js.map": "js/4163.848e1939.chunk.js.map",
|
|
@@ -648,7 +648,7 @@
|
|
|
648
648
|
"system.8f79cb5e.chunk.css.map": "css/system.8f79cb5e.chunk.css.map",
|
|
649
649
|
"system.575d664f.chunk.js.map": "js/system.575d664f.chunk.js.map",
|
|
650
650
|
"navigation.52db90f0.chunk.css.map": "css/navigation.52db90f0.chunk.css.map",
|
|
651
|
-
"navigation.
|
|
651
|
+
"navigation.9b4e0429.chunk.js.map": "js/navigation.9b4e0429.chunk.js.map",
|
|
652
652
|
"path-viewer.ce6360d4.chunk.css.map": "css/path-viewer.ce6360d4.chunk.css.map",
|
|
653
653
|
"path-viewer.09144838.chunk.js.map": "js/path-viewer.09144838.chunk.js.map",
|
|
654
654
|
"tablet.02872701.chunk.css.map": "css/tablet.02872701.chunk.css.map",
|
|
@@ -659,10 +659,10 @@
|
|
|
659
659
|
"groups.22f05e2d.chunk.js.map": "js/groups.22f05e2d.chunk.js.map",
|
|
660
660
|
"users.c7f945d8.chunk.css.map": "css/users.c7f945d8.chunk.css.map",
|
|
661
661
|
"users.b88bf764.chunk.js.map": "js/users.b88bf764.chunk.js.map",
|
|
662
|
-
"scheduling.
|
|
663
|
-
"scheduling.
|
|
662
|
+
"scheduling.8b8a192b.chunk.css.map": "css/scheduling.8b8a192b.chunk.css.map",
|
|
663
|
+
"scheduling.943b1602.chunk.js.map": "js/scheduling.943b1602.chunk.js.map",
|
|
664
664
|
"query-tracker.b77df5c1.chunk.css.map": "css/query-tracker.b77df5c1.chunk.css.map",
|
|
665
|
-
"query-tracker.
|
|
665
|
+
"query-tracker.1b6d537a.chunk.js.map": "js/query-tracker.1b6d537a.chunk.js.map",
|
|
666
666
|
"job.825296a8.chunk.css.map": "css/job.825296a8.chunk.css.map",
|
|
667
667
|
"job.a9ec9818.chunk.js.map": "js/job.a9ec9818.chunk.js.map",
|
|
668
668
|
"chyt.8ce4594f.chunk.css.map": "css/chyt.8ce4594f.chunk.css.map",
|
|
@@ -673,9 +673,9 @@
|
|
|
673
673
|
"chart-kit.8f66d1ee.chunk.css.map": "css/chart-kit.8f66d1ee.chunk.css.map",
|
|
674
674
|
"chart-kit.819b87c3.chunk.js.map": "js/chart-kit.819b87c3.chunk.js.map",
|
|
675
675
|
"app-navigation.6955071c.chunk.css.map": "css/app-navigation.6955071c.chunk.css.map",
|
|
676
|
-
"app-navigation.
|
|
676
|
+
"app-navigation.38835895.chunk.js.map": "js/app-navigation.38835895.chunk.js.map",
|
|
677
677
|
"code-assistant-chat.12ac3bf4.chunk.css.map": "css/code-assistant-chat.12ac3bf4.chunk.css.map",
|
|
678
|
-
"code-assistant-chat.
|
|
678
|
+
"code-assistant-chat.a7927638.chunk.js.map": "js/code-assistant-chat.a7927638.chunk.js.map",
|
|
679
679
|
"yt-monaco-editor.f3c34bec.chunk.css.map": "css/yt-monaco-editor.f3c34bec.chunk.css.map",
|
|
680
680
|
"yt-monaco-editor.2d113a81.chunk.js.map": "js/yt-monaco-editor.2d113a81.chunk.js.map",
|
|
681
681
|
"query-widget.27c08570.chunk.css.map": "css/query-widget.27c08570.chunk.css.map",
|
|
@@ -838,9 +838,9 @@
|
|
|
838
838
|
"7999.364df33c.chunk.css.map": "css/7999.364df33c.chunk.css.map",
|
|
839
839
|
"1745.4d611a67.chunk.css.map": "css/1745.4d611a67.chunk.css.map",
|
|
840
840
|
"5423.526f744e.chunk.css.map": "css/5423.526f744e.chunk.css.map",
|
|
841
|
+
"3132.43311d48.chunk.css.map": "css/3132.43311d48.chunk.css.map",
|
|
841
842
|
"4568.a9e44788.chunk.css.map": "css/4568.a9e44788.chunk.css.map",
|
|
842
843
|
"4136.51403a8c.chunk.css.map": "css/4136.51403a8c.chunk.css.map",
|
|
843
|
-
"3132.62cd9c06.chunk.css.map": "css/3132.62cd9c06.chunk.css.map",
|
|
844
844
|
"8638.cbb482c9.chunk.css.map": "css/8638.cbb482c9.chunk.css.map",
|
|
845
845
|
"8632.16fb4d31.chunk.css.map": "css/8632.16fb4d31.chunk.css.map",
|
|
846
846
|
"7152.7d94e720.chunk.css.map": "css/7152.7d94e720.chunk.css.map",
|
|
@@ -852,7 +852,7 @@
|
|
|
852
852
|
"5883.0c0e10fe.chunk.css.map": "css/5883.0c0e10fe.chunk.css.map",
|
|
853
853
|
"1579.4d7975b2.chunk.css.map": "css/1579.4d7975b2.chunk.css.map",
|
|
854
854
|
"2433.5fca7517.chunk.css.map": "css/2433.5fca7517.chunk.css.map",
|
|
855
|
-
"590.
|
|
855
|
+
"590.6f40b178.chunk.css.map": "css/590.6f40b178.chunk.css.map",
|
|
856
856
|
"333.4b28585f.chunk.css.map": "css/333.4b28585f.chunk.css.map",
|
|
857
857
|
"6560.aef2ade7.chunk.css.map": "css/6560.aef2ade7.chunk.css.map",
|
|
858
858
|
"914.0cd5cbfe.chunk.css.map": "css/914.0cd5cbfe.chunk.css.map",
|
|
@@ -889,17 +889,17 @@
|
|
|
889
889
|
"908.fca7a202.chunk.js.map": "js/908.fca7a202.chunk.js.map",
|
|
890
890
|
"5567.977818b1.chunk.js.map": "js/5567.977818b1.chunk.js.map",
|
|
891
891
|
"6762.654a9675.chunk.js.map": "js/6762.654a9675.chunk.js.map",
|
|
892
|
-
"4237.
|
|
892
|
+
"4237.57c56e6b.chunk.js.map": "js/4237.57c56e6b.chunk.js.map",
|
|
893
893
|
"1306.7f2aa880.chunk.js.map": "js/1306.7f2aa880.chunk.js.map",
|
|
894
894
|
"5708.484bb019.chunk.js.map": "js/5708.484bb019.chunk.js.map",
|
|
895
895
|
"2941.e5661da9.chunk.js.map": "js/2941.e5661da9.chunk.js.map",
|
|
896
896
|
"8992.eae96f40.chunk.js.map": "js/8992.eae96f40.chunk.js.map",
|
|
897
|
-
"887.
|
|
897
|
+
"887.d8e107dc.chunk.js.map": "js/887.d8e107dc.chunk.js.map",
|
|
898
898
|
"663.3cd92e3e.chunk.js.map": "js/663.3cd92e3e.chunk.js.map",
|
|
899
899
|
"9137.6e072c1c.chunk.js.map": "js/9137.6e072c1c.chunk.js.map",
|
|
900
900
|
"56.0eb195d7.chunk.js.map": "js/56.0eb195d7.chunk.js.map",
|
|
901
901
|
"5828.15aab82c.chunk.js.map": "js/5828.15aab82c.chunk.js.map",
|
|
902
902
|
"5366.3be9a380.chunk.js.map": "js/5366.3be9a380.chunk.js.map",
|
|
903
|
-
"
|
|
903
|
+
"2563.bbb74274.chunk.js.map": "js/2563.bbb74274.chunk.js.map",
|
|
904
904
|
"7861.69957058.chunk.js.map": "js/7861.69957058.chunk.js.map"
|
|
905
905
|
}
|
|
@@ -87,9 +87,10 @@ const sendMessage = async (req, res) => {
|
|
|
87
87
|
};
|
|
88
88
|
try {
|
|
89
89
|
const aiChat = getAiChatInstance(req);
|
|
90
|
-
const { message, metadata, model, conversationId, contextMessages, files } = req.body;
|
|
90
|
+
const { message, promptId, metadata, model, conversationId, contextMessages, files } = req.body;
|
|
91
91
|
const requestData = {
|
|
92
92
|
model,
|
|
93
|
+
prompt: promptId ? { id: promptId } : undefined,
|
|
93
94
|
conversationId: conversationId,
|
|
94
95
|
message,
|
|
95
96
|
metadata,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ytsaurus/ui",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.1",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "github",
|
|
6
6
|
"url": "https://github.com/ytsaurus/ytsaurus-ui/tree/main/packages/ui"
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"@gravity-ui/expresskit": "^2.2.0",
|
|
78
78
|
"@gravity-ui/i18n": "^1.8.0",
|
|
79
79
|
"@gravity-ui/nodekit": "^2.2.1",
|
|
80
|
-
"@ytsaurus/javascript-wrapper": "^0.
|
|
80
|
+
"@ytsaurus/javascript-wrapper": "^0.15.1",
|
|
81
81
|
"axios": "^1.8.4",
|
|
82
82
|
"cacheable-lookup": "^6.1.0",
|
|
83
83
|
"cookie-parser": "1.4.6",
|
|
@@ -144,7 +144,7 @@
|
|
|
144
144
|
"@types/react-router-dom": "^5.3.3",
|
|
145
145
|
"@types/type-is": "^1.6.3",
|
|
146
146
|
"@vitejs/plugin-react": "^4.6.0",
|
|
147
|
-
"@ytsaurus/interface-helpers": "^1.
|
|
147
|
+
"@ytsaurus/interface-helpers": "^1.1.1",
|
|
148
148
|
"bem-cn-lite": "^4.1.0",
|
|
149
149
|
"bignumber.js": "^9.1.2",
|
|
150
150
|
"colord": "^2.9.1",
|
|
@@ -154,7 +154,7 @@
|
|
|
154
154
|
"d3-selection": "3",
|
|
155
155
|
"d3-shape": "3",
|
|
156
156
|
"elkjs": "^0.9.3",
|
|
157
|
-
"eslint": "^8.
|
|
157
|
+
"eslint": "^8.57.1",
|
|
158
158
|
"eslint-plugin-import": "^2.29.1",
|
|
159
159
|
"eslint-plugin-lodash": "^7.4.0",
|
|
160
160
|
"eslint-plugin-react": "^7.33.2",
|
|
@@ -215,7 +215,7 @@
|
|
|
215
215
|
"engines": {
|
|
216
216
|
"node": ">=20"
|
|
217
217
|
},
|
|
218
|
-
"gitHead": "
|
|
218
|
+
"gitHead": "6c6eeb6acf02c5cdc1a414165737cc646d5314d2",
|
|
219
219
|
"overrides": {
|
|
220
220
|
"axios": "$axios",
|
|
221
221
|
"react-split-pane": {
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
.g-breadcrumbs__item{color:var(--secondary-text)}.g-breadcrumbs__link:hover{color:var(--hover-link)!important;cursor:pointer}.g-breadcrumbs__link_is-current{color:var(--primary-text);font-weight:400}.yt-editable-breadcrumbs_view_top-row{flex-grow:1;flex-shrink:1;margin:0 16px}.editable-as-text_edit,.yt-editable-breadcrumbs__breadcrumbs-container{flex-grow:1;flex-shrink:1}.editable-as-text_edit{margin-right:16px}
|
|
2
|
-
/*# sourceMappingURL=3132.62cd9c06.chunk.css.map*/
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"css/3132.62cd9c06.chunk.css","mappings":"AACI,qBACI,4BAGA,2BACI,kCACA,eAEJ,gCACI,0BACA,gBCPR,sCCqEA,YACA,cACA,cD7DJ,uEALQ,YACA,aAOJ,CAHJ,uBAGI","sources":["webpack://@ytsaurus/ui/./src/ui/styles/redefinitions/common/Breadcrumbs.scss","webpack://@ytsaurus/ui/./src/ui/components/EditableBreadcrumbs/EditableBreadcrumbs.scss","webpack://@ytsaurus/ui/./src/ui/styles/mixins.scss"],"sourcesContent":[".g-breadcrumbs {\n &__item {\n color: var(--secondary-text);\n }\n &__link {\n &:hover {\n color: var(--hover-link) !important;\n cursor: pointer;\n }\n &_is-current {\n color: var(--primary-text);\n font-weight: 400;\n }\n }\n}\n","@import '../../styles/redefinitions/common/Breadcrumbs.scss';\n@import '../../styles/mixins.scss';\n\n.yt-editable-breadcrumbs {\n &_view_top-row {\n @include top-row-breadcrumbs();\n }\n\n &__breadcrumbs-container {\n flex-grow: 1;\n flex-shrink: 1;\n }\n}\n\n.editable-as-text_edit {\n flex-grow: 1;\n flex-shrink: 1;\n margin-right: 16px;\n}\n","@import './fonts';\n@import './common';\n\n@mixin ellipsis() {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n@mixin text-label() {\n font-size: 0.9em;\n text-transform: uppercase;\n letter-spacing: 1px;\n}\n\n// reset\n\n@mixin reset-ul() {\n margin: 0;\n padding: 0;\n}\n\n@mixin reset-li() {\n list-style-type: none;\n}\n\n// font\n\n@mixin yt-fonts() {\n font-family: var(--g-font-family-sans);\n font-size: var(--g-font-size);\n line-height: var(--g-line-height);\n}\n\n// heading\n\n@mixin heading-size($key) {\n $sizes: (\n s: (\n 16px,\n 20px,\n $offset-heading-small,\n ),\n xs: (\n 18px,\n 20px,\n $offset-heading-small-x,\n ),\n m: (\n 20px,\n 24px,\n $offset-heading-medium,\n ),\n l: (\n 24px,\n 28px,\n $offset-heading-large,\n ),\n xl: (\n 24px,\n 28px,\n $offset-heading-large,\n ),\n );\n $size: map-get($sizes, $key);\n\n font-size: nth($size, 1);\n line-height: nth($size, 2);\n margin: 0;\n margin-bottom: nth($size, 3);\n}\n\n@mixin top-row-breadcrumbs() {\n flex-grow: 1;\n flex-shrink: 1;\n margin: 0 16px;\n}\n"],"names":[],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
.yt-node-columns__state{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis}.yt-node-columns__text{align-items:center;display:flex;overflow:hidden}.yt-node-columns__text-content{flex-grow:1;flex-shrink:1;overflow:hidden;text-overflow:ellipsis}.yt-node-columns__clickable-column-tooltip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.nodes-memory{width:100%}.nodes-memory__header{border-bottom:1px solid var(--dark-divider);padding:10px 15px}.nodes-memory__content{list-style:none;margin:0;padding:10px 15px}.nodes-memory__tooltip-content{max-height:85vh;overflow:auto}.nodes-memory__category{display:flex;padding:5px 0;width:320px}.nodes-memory__category-data,.nodes-memory__category-legend{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:50%}.nodes-memory__category-legend-color{border-radius:50%;display:inline-block;height:11px;margin-right:10px;width:11px}.nodes-memory__category-data,.nodes-memory__show-all{text-align:right}.components-nodes-templates__tags-container{align-items:center;display:flex;flex-wrap:wrap}.components-nodes-templates__tags-container_inline{display:inline-flex}
|
|
2
|
-
/*# sourceMappingURL=590.1d7b27ca.chunk.css.map*/
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"css/590.1d7b27ca.chunk.css","mappings":"AACI,wBACI,qBACA,eACA,gBACA,uBAEJ,uBAGI,mBAFA,aACA,eACA,CAEJ,+BAGI,YACA,aAAY,CAHZ,gBACA,sBAEA,CAGJ,2CAEI,gBAEA,uBADA,mBAFA,UAGA,CCrBR,cACI,WAEA,sBAGI,4CAFA,iBAEA,CAGJ,uBAII,gBAHA,SACA,iBAEA,CAGJ,+BACI,gBACA,cAGJ,wBACI,aAGA,cADA,WACA,CAEA,4DAKI,gBACA,uBAFA,mBAFA,SAIA,CAGJ,qCAMI,kBALA,qBAGA,YACA,kBAFA,UAGA,CAQR,qDACI,iBCpDJ,4CAEI,mBADA,aAEA,eACA,mDACI","sources":["webpack://@ytsaurus/ui/./src/ui/pages/components/tabs/NodeColumns.scss","webpack://@ytsaurus/ui/./src/ui/pages/components/tabs/nodes/MemoryProgress/MemoryProgress.scss","webpack://@ytsaurus/ui/./src/ui/pages/components/tabs/nodes/tables.scss"],"sourcesContent":[".yt-node-columns {\n &__state {\n display: inline-block;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n &__text {\n display: flex;\n overflow: hidden;\n align-items: center;\n }\n &__text-content {\n overflow: hidden;\n text-overflow: ellipsis;\n flex-grow: 1;\n flex-shrink: 1;\n }\n\n &__clickable-column-tooltip {\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n}\n","$padding: 10px 15px;\n\n.nodes-memory {\n width: 100%;\n\n &__header {\n padding: $padding;\n\n border-bottom: 1px solid var(--dark-divider);\n }\n\n &__content {\n margin: 0;\n padding: $padding;\n\n list-style: none;\n }\n\n &__tooltip-content {\n max-height: 85vh;\n overflow: auto;\n }\n\n &__category {\n display: flex;\n\n width: 320px;\n padding: 5px 0;\n\n &-legend,\n &-data {\n width: 50%;\n\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n &-legend-color {\n display: inline-block;\n\n width: 11px;\n height: 11px;\n margin-right: 10px;\n border-radius: 50%;\n }\n\n &-data {\n text-align: right;\n }\n }\n\n &__show-all {\n text-align: right;\n }\n}\n",".components-nodes-templates {\n &__tags-container {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n &_inline {\n display: inline-flex;\n }\n }\n}\n"],"names":[],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
.yt-charge-level{width:242px}.yt-charge-level .g-progress__item{border-radius:2px;height:calc(100% - 8px);top:4px}.yt-scheduling-meta__progress{min-width:200px;width:100%}.yt-scheduling-meta__progress-control{flex:1 0 calc(50% - 1px)}.yt-scheduling-meta__progress-control_left{border-bottom-right-radius:0;border-top-right-radius:0}.yt-scheduling-meta__progress-control_right{border-bottom-left-radius:0;border-top-left-radius:0}.yt-scheduling-meta__progress-meta-subitem{padding-left:20px}.yt-pools-suggest__popup{min-width:220px}.yt-scheduling-toolbar__filter{flex-grow:1;flex-shrink:1}.yt-expandable-cell__child{padding-left:20px}.yt-expandable-cell__expand{margin-right:4px}.yt-expandable-cell__expand_hidden{visibility:hidden}.yt-expandable-cell__splitter{padding-left:28px}.yt-expandable-cell__splitter:after{border-left:1px solid var(--g-color-line-generic);height:100%}.yt-gravity-table .gt-table__header{top:calc(var(--yt-sticky-container-top-offset) + var(--yt-with-sticky-toolbar-toolbar-height))}.yt-gravity-table .gt-table__header_sticky{z-index:2}.yt-gravity-table .gt-styled-table__cell{--g-text-body-1-font-size:14px}.yt-gravity-table .gt-styled-table__header-cell{--g-text-subheader-1-font-size:14px}.yt-gravity-table .gt-table__cell_pinned-left,.yt-gravity-table .gt-table__cell_pinned-right,.yt-gravity-table .gt-table__header-cell_pinned-left,.yt-gravity-table .gt-table__header-cell_pinned-right{background-color:var(--main-background);opacity:.9}.yt-gravity-table__row_highlighted{background-color:var(--hover-background)}.yt-gravity-table__row_highlighted .gt-table__cell_pinned-left,.yt-gravity-table__row_highlighted .gt-table__cell_pinned-right,.yt-gravity-table__row_highlighted .gt-table__header-cell_pinned-left,.yt-gravity-table__row_highlighted .gt-table__header-cell_pinned-right{background-color:var(--light-background)}.share-usage-bar{display:block!important;position:relative}.share-usage-bar__progress{border:1px solid var(--g-color-base-generic)}.share-usage-bar__tick{border:1px solid var(--g-color-line-generic-accent);height:calc(100% + 4px);left:calc(50% - 1px);position:absolute;top:-3px;width:0;z-index:1}.scheduling-pool-tags__tag,.yt-scheduling-name-cell__pool{flex-shrink:1;overflow:hidden}.scheduling-pool-tags__tag{margin-right:4px;text-overflow:ellipsis}.scheduling-pool-tags__tag:last-child{margin-right:0}.yt-scheduling-table tr{height:48px}.yt-scheduling-table__row_highlighted{background-color:var(--g-color-base-generic)}.yt-scheduling-table__edited-number_autocalculated{color:var(--g-color-text-secondary)}.yt-scheduling-table__name-content{margin:-10px 0}.yt-scheduling-table__share-usage{width:100%}.yt-scheduling-table__duration{white-space:nowrap}.scheduling-content__tabs{margin-bottom:20px}.scheduling-content__attributes{margin-top:-10px}.scheduling__alerts,.scheduling__instruments{margin-bottom:20px}.scheduling__delete-dialog .g-dialog-footer{padding-bottom:10px;padding-top:10px}.scheduling-resources{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px 30px;margin-bottom:20px;padding-top:10px}.pool-editor-dialog .df-dialog{min-height:550px}.pool-editor-dialog .df-dialog .df-tab-field-vertical{font-size:14px;width:200px}.pool-editor-dialog__permissions-warning{color:var(--warning-text)}.pool-editor-dialog__flag{color:var(--secondary-text);font-weight:var(--yt-font-weight-bold)}.pool-editor-dialog__error{margin:0 -1em}.pool-editor-dialog__separator{border-bottom:2px solid var(--light-divider);margin-bottom:10px}.pool-editor-dialog__transfer-quota-notice{padding-bottom:20px}.scheduling-top-row-content__favourites{padding-right:15px}.scheduling-top-row-content__tree{width:20ex}.scheduling-top-row-content__tree-popup{z-index:var(--dialog-suggest-z-index)!important}.scheduling-top-row-content__pool-suggest{margin-left:16px}.scheduling-top-row-content__btn-spacer{flex:0 0 8px;padding-left:8px}.scheduling-top-row-content__clipboard{padding-right:15px}.scheduling-top-row-content__breadcrumbs{display:block}.scheduling-top-row-content__pool-suggest{flex-grow:1}.scheduling-top-row-content__actions{align-items:center;display:flex}.scheduling-top-row-content__extra-control{padding-right:10px}
|
|
2
|
-
/*# sourceMappingURL=scheduling.f5b832cf.chunk.css.map*/
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"css/scheduling.f5b832cf.chunk.css","mappings":"AAAA,iBACI,YAEA,mCACI,kBACA,wBACA,QCLJ,8BACI,gBACA,WAGJ,sCACI,yBAEA,2CAEI,4BAA2B,CAD3B,yBACA,CAGJ,4CAEI,2BAA0B,CAD1B,wBACA,CAIR,2CACI,kBCpBJ,yBACI,gBCDJ,+BACI,YACA,cCFJ,2BACI,kBAGJ,4BACI,iBACA,mCACI,kBAIR,8BACI,kBAEA,oCAEI,kDADA,WACA,CChBR,oCACI,+FAKJ,2CACI,UAGJ,yCACI,8BAA+B,CAEnC,gDACI,mCAAoC,CAGxC,wMAII,wCACA,WAGJ,mCACI,yCAEA,4QAII,yCCjCZ,iBACI,wBACA,kBAEA,2BACI,6CAGJ,uBAKI,oDACA,wBAHA,qBAFA,kBACA,SAEA,QAGA,UCdJ,0DCCI,cACA,eDGA,CALJ,2BACI,iBAIA,uBACA,sCACI,eEPR,wBACI,YAGJ,sCACI,6CAIA,mDACI,oCAIR,mCACI,eAGJ,kCACI,WAGJ,+BACI,mBCvBJ,0BACI,mBAGJ,gCACI,iBCLJ,6CAEI,mBAIA,4CAEI,oBADA,gBACA,CCTZ,sBACI,aACA,oCACA,mBAGA,mBADA,gBACA,CCLA,+BACI,iBAEA,sDACI,eACA,YAIR,yCACI,0BAGJ,0BAEI,4BADA,sCACA,CAGJ,2BACI,cAGJ,+BAEI,6CADA,kBACA,CAGJ,2CACI,oBC5BJ,wCACI,mBAGJ,kCACI,WAGJ,wCACI,gDAGJ,0CACI,iBAGJ,wCAEI,aADA,gBACA,CAGJ,uCACI,mBAGJ,yCACI,cAGJ,0CACI,YAGJ,qCAEI,mBADA,YACA,CAGJ,2CACI","sources":["webpack://@ytsaurus/ui/./src/ui/components/ChargeLevel/ChargeLevel.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/Content/tabs/Overview/SchedulingMeta.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/PoolsSuggest/PoolsSuggest.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/Content/tabs/Overview/SchedulingToolbar.scss","webpack://@ytsaurus/ui/./src/ui/components/DataTableGravity/ExpandableCell.scss","webpack://@ytsaurus/ui/./src/ui/components/DataTableGravity/DataTableGravity.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/Content/controls/ShareUsageBar.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/Content/tabs/Overview/SchedulingTable/PoolTags.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/Content/tabs/Overview/SchedulingTable/NameCell.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/Content/tabs/Overview/SchedulingTable/SchedulingTable.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/Content/Content.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/Scheduling/Scheduling.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/Content/SchedulingResources.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/Scheduling/PoolEditorDialog/PoolEditorDialog.scss","webpack://@ytsaurus/ui/./src/ui/pages/scheduling/Scheduling/SchedulingTopRowContent.scss"],"sourcesContent":[".yt-charge-level {\n width: 242px;\n\n .g-progress__item {\n border-radius: 2px;\n height: calc(100% - 8px);\n top: 4px;\n }\n}\n",".yt-scheduling-meta {\n &__progress {\n min-width: 200px;\n width: 100%;\n }\n\n &__progress-control {\n flex: 1 0 calc(50% - 1px);\n\n &_left {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n\n &_right {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n }\n\n &__progress-meta-subitem {\n padding-left: 20px;\n }\n}\n",".yt-pools-suggest {\n &__popup {\n min-width: 220px;\n }\n}\n",".yt-scheduling-toolbar {\n &__filter {\n flex-grow: 1;\n flex-shrink: 1;\n }\n}\n",".yt-expandable-cell {\n &__child {\n padding-left: 20px;\n }\n\n &__expand {\n margin-right: 4px;\n &_hidden {\n visibility: hidden;\n }\n }\n\n &__splitter {\n padding-left: 28px;\n\n &:after {\n height: 100%;\n border-left: 1px solid var(--g-color-line-generic);\n }\n }\n}\n",".yt-gravity-table {\n .gt-table__header {\n top: calc(\n var(--yt-sticky-container-top-offset) + var(--yt-with-sticky-toolbar-toolbar-height)\n );\n }\n\n .gt-table__header_sticky {\n z-index: 2;\n }\n\n .gt-styled-table__cell {\n --g-text-body-1-font-size: 14px;\n }\n .gt-styled-table__header-cell {\n --g-text-subheader-1-font-size: 14px;\n }\n\n .gt-table__header-cell_pinned-right,\n .gt-table__cell_pinned-right,\n .gt-table__header-cell_pinned-left,\n .gt-table__cell_pinned-left {\n background-color: var(--main-background);\n opacity: 0.9;\n }\n\n &__row_highlighted {\n background-color: var(--hover-background);\n\n .gt-table__header-cell_pinned-right,\n .gt-table__cell_pinned-right,\n .gt-table__header-cell_pinned-left,\n .gt-table__cell_pinned-left {\n background-color: var(--light-background);\n }\n }\n}\n",".share-usage-bar {\n display: block !important;\n position: relative;\n\n &__progress {\n border: 1px solid var(--g-color-base-generic);\n }\n\n &__tick {\n position: absolute;\n top: -3px;\n left: calc(50% - 1px);\n width: 0;\n border: 1px solid var(--g-color-line-generic-accent);\n height: calc(100% + 4px);\n z-index: 1;\n }\n}\n",".scheduling-pool-tags {\n &__tag {\n margin-right: 4px;\n flex-shrink: 1;\n\n overflow: hidden;\n text-overflow: ellipsis;\n &:last-child {\n margin-right: 0;\n }\n }\n}\n",".yt-scheduling-name-cell {\n &__pool {\n flex-shrink: 1;\n overflow: hidden;\n }\n}\n",".yt-scheduling-table {\n tr {\n height: 48px;\n }\n\n &__row_highlighted {\n background-color: var(--g-color-base-generic);\n }\n\n &__edited-number {\n &_autocalculated {\n color: var(--g-color-text-secondary);\n }\n }\n\n &__name-content {\n margin: -10px 0;\n }\n\n &__share-usage {\n width: 100%;\n }\n\n &__duration {\n white-space: nowrap;\n }\n}\n",".scheduling-content {\n &__tabs {\n margin-bottom: 20px;\n }\n\n &__attributes {\n margin-top: -10px;\n }\n}\n",".scheduling {\n &__instruments,\n &__alerts {\n margin-bottom: 20px;\n }\n\n &__delete-dialog {\n .g-dialog-footer {\n padding-top: 10px;\n padding-bottom: 10px;\n }\n }\n}\n",".scheduling-resources {\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n grid-gap: 20px 30px;\n\n padding-top: 10px;\n margin-bottom: 20px;\n}\n",".pool-editor-dialog {\n .df-dialog {\n min-height: 550px;\n\n .df-tab-field-vertical {\n font-size: 14px;\n width: 200px;\n }\n }\n\n &__permissions-warning {\n color: var(--warning-text);\n }\n\n &__flag {\n font-weight: var(--yt-font-weight-bold);\n color: var(--secondary-text);\n }\n\n &__error {\n margin: 0 -1em;\n }\n\n &__separator {\n margin-bottom: 10px;\n border-bottom: 2px solid var(--light-divider);\n }\n\n &__transfer-quota-notice {\n padding-bottom: 20px;\n }\n}\n",".scheduling-top-row-content {\n &__favourites {\n padding-right: 15px;\n }\n\n &__tree {\n width: 20ex;\n }\n\n &__tree-popup {\n z-index: var(--dialog-suggest-z-index) !important;\n }\n\n &__pool-suggest {\n margin-left: 16px;\n }\n\n &__btn-spacer {\n padding-left: 8px;\n flex: 0 0 8px;\n }\n\n &__clipboard {\n padding-right: 15px;\n }\n\n &__breadcrumbs {\n display: block;\n }\n\n &__pool-suggest {\n flex-grow: 1;\n }\n\n &__actions {\n display: flex;\n align-items: center;\n }\n\n &__extra-control {\n padding-right: 10px;\n }\n}\n"],"names":[],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_ytsaurus_ui=self.webpackChunk_ytsaurus_ui||[]).push([[3205],{83205:(e,t,r)=>{r.d(t,{p$:()=>F,mI:()=>P,ly:()=>E,Io:()=>J,hO:()=>T,Yj:()=>j,L6:()=>O,ZY:()=>Y,iJ:()=>U});var n=r(70353),a=r(13322),s=r(40319),i=r(28407),o=r(53775);function u(e){var t,r,n,a=2;for("undefined"!=typeof Symbol&&(r=Symbol.asyncIterator,n=Symbol.iterator);a--;){if(r&&null!=(t=e[r]))return t.call(e);if(n&&null!=(t=e[n]))return new c(t.call(e));r="@@asyncIterator",n="@@iterator"}throw new TypeError("Object is not async iterable")}function c(e){function t(e){if(Object(e)!==e)return Promise.reject(new TypeError(e+" is not an object."));var t=e.done;return Promise.resolve(e.value).then((function(e){return{value:e,done:t}}))}return c=function(e){this.s=e,this.n=e.next},c.prototype={s:null,n:null,next:function(){return t(this.n.apply(this.s,arguments))},return:function(e){var r=this.s.return;return void 0===r?Promise.resolve({value:e,done:!0}):t(r.apply(this.s,arguments))},throw:function(e){var r=this.s.return;return void 0===r?Promise.reject(e):t(r.apply(this.s,arguments))}},new c(e)}function p(e,t){this.v=e,this.k=t}function l(e){var t,r;function n(t,r){try{var s=e[t](r),i=s.value,o=i instanceof p;Promise.resolve(o?i.v:i).then((function(r){if(o){var u="return"===t?"return":"next";if(!i.k||r.done)return n(u,r);r=e[u](r).value}a(s.done?"return":"normal",r)}),(function(e){n("throw",e)}))}catch(e){a("throw",e)}}function a(e,a){switch(e){case"return":t.resolve({value:a,done:!0});break;case"throw":t.reject(a);break;default:t.resolve({value:a,done:!1})}(t=t.next)?n(t.key,t.arg):r=null}this._invoke=function(e,a){return new Promise((function(s,i){var o={key:e,arg:a,resolve:s,reject:i,next:null};r?r=r.next=o:(t=r=o,n(e,a))}))},"function"!=typeof e.return&&(this.return=void 0)}l.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},l.prototype.next=function(e){return this._invoke("next",e)},l.prototype.throw=function(e){return this._invoke("throw",e)},l.prototype.return=function(e){return this._invoke("return",e)};var f=r(51404),d=r(29970),v=r(40315),h=r(41169),m=function(e){if(!e.startsWith("data: ")||"data: [DONE]"===e)return null;try{return JSON.parse(e.substring(6))}catch(e){return null}},y=function(e){return"text"in e?e.text:"type"in e&&"response.output_text.delta"===e.type&&e.delta?e.delta:null},x=function(e){if("mcp_call"===e.type){if("search_docs"===e.name&&e.output)try{var t,r=null===(t=JSON.parse(e.output).response)||void 0===t?void 0:t.result;if(r&&Array.isArray(r))return{id:e.id,type:"mcp_search_answer",value:r}}catch(e){}return"get_table_schema"===e.name&&e.output?{id:e.id,type:"mcp_table_schema_answer",value:e.output}:{id:e.id,type:"mcp_unknown_answer",name:e.name||"unknown",value:e}}},b=function(e,t){if("message"===e.type)return{id:e.id,type:"answer",state:"done",value:t}},w=["<user_message>","<query>","<error>","<warning>","<info>","<library>","<rag_context>"],A=function(e){return e.reduce((function(e,t){if("mcp_call"===t.type){if("search_docs"===t.name)try{var r,n=null===(r=JSON.parse(t.output).response)||void 0===r?void 0:r.result;if(n&&Array.isArray(n))return e.push({id:t.id,type:"mcp_search_answer",value:n}),e}catch(e){}return"get_table_schema"===t.name?(e.push({id:t.id,type:"mcp_table_schema_answer",value:t.output}),e):(e.push({id:t.id,type:"mcp_unknown_answer",name:t.name,value:t}),e)}return w.some((function(e){return t.content[0].text.startsWith(e)}))||("user"===t.role?e.push({id:t.id,type:"question",value:t.content[0].text}):e.push({id:t.id,type:"answer",state:"done",value:t.content[0].text})),e}),[])},k="/api/code-assistant",_={agent:"qt"},g=function(e){return new Promise((function(t,r){var n=new FileReader;n.onload=function(e){var n,a=null===(n=e.target)||void 0===n?void 0:n.result;"string"==typeof a?t(a):r(new Error("Failed to read file as text"))},n.onerror=function(){return r(n.error)},n.readAsText(e)}))},I=null;function N(e){return q.apply(this,arguments)}function q(){var e;return e=(0,o.A)().mark((function e(t){var r,n,a;return(0,o.A)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:e.prev=0;case 1:return e.next=4,new p(t.read(),0);case 4:if(r=e.sent,n=r.done,a=r.value,!n){e.next=9;break}return e.abrupt("return");case 9:return e.next=11,a;case 11:e.next=1;break;case 13:return e.prev=13,t.releaseLock(),e.finish(13);case 16:case"end":return e.stop()}}),e,null,[[0,,13,16]])})),q=function(){return new l(e.apply(this,arguments))},q.apply(this,arguments)}var M=function(e){if(!window.location.pathname.includes("/queries"))return[];var t=(0,d.sh)(e),r=[];if(t.query&&t.query.trim()&&r.push("<query>\n".concat(t.query,"\n</query>")),t.error){var n="string"==typeof t.error?t.error:JSON.stringify(t.error,null,2);r.push("<error>\n".concat(n,"\n</error>"))}return r},S=function(e){return function(){var t=(0,i.A)((0,o.A)().mark((function t(r,n){var a,i,u,c;return(0,o.A)().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=n(),i=(0,f.BF)(a),t.prev=2,t.next=5,h.A.post("".concat(k,"/conversations/").concat(e,"/summarize-title"));case 5:u=t.sent,c=i.items.map((function(t){return t.id===e?(0,s.A)((0,s.A)({},t),{},{metadata:(0,s.A)((0,s.A)({},t.metadata),{},{topic:u.data.title})}):t})),r((0,v.dU)({items:c})),t.next=12;break;case 10:t.prev=10,t.t0=t.catch(2);case 12:case"end":return t.stop()}}),t,null,[[2,10]])})));return function(e,r){return t.apply(this,arguments)}}()},O=function(){return function(){var e=(0,i.A)((0,o.A)().mark((function e(t,r){var n,c,p,l,d,w,A,q,O,P,j,Y,E,J,T,U,F,C,Q,B,$,z,D,R,V,L,W,G,H,X,Z,K,ee,te;return(0,o.A)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=function(e,r){var n=m(e);if(!n)return r;var a=y(n);if(a){var s=r+a;return t((0,v.oY)(s)),s}if("type"in n&&"response.output_item.done"===n.type&&n.item){var i=b(n.item,r);if(i)return t((0,v.a6)(i)),t((0,v.vh)()),"";var o=x(n.item);o&&t((0,v.a6)(o))}return r},c=r(),p=(0,f.f)(c),l=(0,f.V3)(c),d=(0,f.BF)(c),w=d.items,A=d.hasMore,q=d.lastId,O=(0,f._o)(c),P=(0,f.Ye)(),j=!1,p){e.next=10;break}return e.abrupt("return");case 10:if(Y=M(c),t((0,v.iY)("chat")),t((0,v.a6)({id:"",type:"question",value:p})),t((0,v.b2)(void 0)),t((0,v.$c)(!0)),e.prev=15,T=l){e.next=25;break}return e.next=20,h.A.post("".concat(k,"/create-conversation"),{model:P,metadata:(0,s.A)((0,s.A)({},_),{},{topic:"новый чат"})});case 20:U=e.sent,F=U.data,T=F.id,t((0,v.dU)({items:[F].concat((0,a.A)(w)),hasMore:A,lastId:q,loading:!1})),j=!0;case 25:return e.next=27,Promise.all(O.map(function(){var e=(0,i.A)((0,o.A)().mark((function e(t){return(0,o.A)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=t.name,e.t1=t.type,e.next=4,g(t);case 4:return e.t2=e.sent,e.abrupt("return",{name:e.t0,type:e.t1,content:e.t2});case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 27:return C=e.sent,I&&I.abort(),I=new AbortController,e.next=32,fetch("".concat(k,"/send-message"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({message:p,model:P,metadata:_,conversationId:T,contextMessages:Y.length>0?Y:void 0,files:C.length>0?C:void 0}),signal:I.signal});case 32:if((Q=e.sent).ok){e.next=35;break}throw new Error("".concat("HTTP error! status:"," ").concat(Q.status));case 35:if(E=null===(J=Q.body)||void 0===J?void 0:J.getReader(),B=new TextDecoder,E){e.next=39;break}throw new Error("Response body is not readable");case 39:$="",z="",D=!1,R=!1,e.prev=43,L=u(N(E));case 45:return e.next=47,L.next();case 47:if(!(D=!(W=e.sent).done)){e.next=57;break}for(G=W.value,H=B.decode(G,{stream:!0}),X=($+=H).split("\n"),Z=0;Z<X.length-1;Z++)K=X[Z].trim(),z=n(K,z);$=X[X.length-1];case 54:D=!1,e.next=45;break;case 57:e.next=63;break;case 59:e.prev=59,e.t0=e.catch(43),R=!0,V=e.t0;case 63:if(e.prev=63,e.prev=64,!D||null==L.return){e.next=68;break}return e.next=68,L.return();case 68:if(e.prev=68,!R){e.next=71;break}throw V;case 71:return e.finish(68);case 72:return e.finish(63);case 73:(ee=(0,f.id)(r()).items.length)>0&&!(ee%5)&&(j=!0),t((0,v.Ji)(T)),j&&t(S(T)),t((0,v.vd)()),e.next=89;break;case 80:if(e.prev=80,e.t1=e.catch(15),!(e.t1 instanceof Error&&"AbortError"===e.t1.name)){e.next=87;break}return t((0,v.$c)(!1)),t((0,v.vh)()),t((0,v.Nh)(void 0)),e.abrupt("return");case 87:te={type:"error",error:e.t1},t((0,v.a6)(te));case 89:return e.prev=89,t((0,v.$c)(!1)),I=null,e.finish(89);case 93:case"end":return e.stop()}}),e,null,[[15,80,89,93],[43,59,63,73],[64,,68,72]])})));return function(t,r){return e.apply(this,arguments)}}()},P=function(e){return function(t){t((0,v.CX)()),t((0,v.b2)(e)),t((0,v.qv)(!0)),t(O())}},j=function(){return function(){var e=(0,i.A)((0,o.A)().mark((function e(t,r){var n,s,i,u,c,p,l;return(0,o.A)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r(),s=(0,f.BF)(n),i=s.items,u=s.hasMore,c=s.loading,p=s.lastId,u&&!c){e.next=5;break}return e.abrupt("return");case 5:return t((0,v.dU)({loading:!0})),e.prev=6,e.next=9,h.A.get("".concat(k,"/conversations"),{params:{limit:20,after:p}});case 9:l=e.sent,t((0,v.dU)({items:[].concat((0,a.A)(i),(0,a.A)(l.data.data)),hasMore:l.data.has_more,lastId:l.data.last_id,loading:!1})),e.next=17;break;case 13:e.prev=13,e.t0=e.catch(6),t((0,v.dU)({loading:!1})),t((0,v.Nh)(e.t0));case 17:case"end":return e.stop()}}),e,null,[[6,13]])})));return function(t,r){return e.apply(this,arguments)}}()},Y=function(){return function(){var e=(0,i.A)((0,o.A)().mark((function e(t,r){var n,a,s;return(0,o.A)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=r(),a=(0,f.G_)(n),"history"==(s="chat"===a?"history":"chat")&&t(function(){var e=(0,i.A)((0,o.A)().mark((function e(t){var r;return(0,o.A)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t((0,v.r1)(!0)),e.prev=1,e.next=4,h.A.get("".concat(k,"/conversations"),{params:{limit:20}});case 4:r=e.sent,t((0,v.dU)({items:r.data.data,hasMore:r.data.has_more,lastId:r.data.last_id,loading:!1})),e.next=11;break;case 8:e.prev=8,e.t0=e.catch(1),t((0,v.Nh)(e.t0));case 11:return e.prev=11,t((0,v.r1)(!1)),e.finish(11);case 14:case"end":return e.stop()}}),e,null,[[1,8,11,14]])})));return function(t){return e.apply(this,arguments)}}()),t((0,v.iY)(s));case 5:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}()},E=function(e){return function(){var t=(0,i.A)((0,o.A)().mark((function t(r,n){var a,s,i,u,c,p,l,d,m;return(0,o.A)().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,s=n(),i=(0,f.BF)(s),u=i.items,c=i.hasMore,p=i.lastId,l=i.loading,t.next=5,h.A.delete("".concat(k,"/conversations/").concat(e));case 5:d=u.filter((function(t){return t.id!==e})),m=p===e?(null===(a=d[d.length-1])||void 0===a?void 0:a.id)||void 0:p,r((0,v.dU)({items:d,hasMore:c,lastId:m,loading:l})),t.next=13;break;case 10:t.prev=10,t.t0=t.catch(0),r((0,v.Nh)(t.t0));case 13:case"end":return t.stop()}}),t,null,[[0,10]])})));return function(e,r){return t.apply(this,arguments)}}()},J=function(e){return function(){var t=(0,i.A)((0,o.A)().mark((function t(r,n){var a,s;return(0,o.A)().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if((0,f.V3)(n())!==e){t.next=4;break}return r((0,v.iY)("chat")),t.abrupt("return");case 4:return r((0,v.Ji)(e)),r((0,v.Qx)({items:[]})),r((0,v.r1)(!0)),r((0,v.iY)("chat")),t.prev=8,t.next=11,h.A.get("".concat(k,"/conversations/").concat(e,"/items"),{params:{order:"desc",limit:50}});case 11:a=t.sent,s=A(a.data.data).reverse(),r((0,v.Qx)({items:s,hasMore:a.data.has_more,lastId:a.data.last_id})),t.next=19;break;case 16:t.prev=16,t.t0=t.catch(8),r((0,v.Nh)(t.t0));case 19:return t.prev=19,r((0,v.r1)(!1)),t.finish(19);case 22:case"end":return t.stop()}}),t,null,[[8,16,19,22]])})));return function(e,r){return t.apply(this,arguments)}}()},T=function(){return function(){var e=(0,i.A)((0,o.A)().mark((function e(t,r){var n,s,i,u,c,p,l,d,m;return(0,o.A)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r(),s=(0,f.V3)(n),i=(0,f.id)(n),u=i.items,c=i.lastId,p=i.hasMore,l=i.loading,s){e.next=5;break}return e.abrupt("return");case 5:if(p&&!l&&c){e.next=7;break}return e.abrupt("return");case 7:return t((0,v.Qx)({loading:!0})),t((0,v.Nh)(void 0)),e.prev=9,e.next=12,h.A.get("".concat(k,"/conversations/").concat(s,"/items"),{params:{order:"desc",limit:50,after:c}});case 12:d=e.sent,m=A(d.data.data).reverse(),t((0,v.Qx)({items:[].concat((0,a.A)(m),(0,a.A)(u)),hasMore:d.data.has_more,lastId:d.data.last_id})),e.next=20;break;case 17:e.prev=17,e.t0=e.catch(9),t((0,v.Nh)(e.t0));case 20:return e.prev=20,t((0,v.Qx)({loading:!1})),e.finish(20);case 23:case"end":return e.stop()}}),e,null,[[9,17,20,23]])})));return function(t,r){return e.apply(this,arguments)}}()},U=function(){return function(e,t){var r=(0,f.D4)(t());e((0,v.qv)(!r))}},F=function(e){return function(){var t=(0,i.A)((0,o.A)().mark((function t(r,a){var s,i,u,c;return(0,o.A)().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:s=(0,f._o)(a()),i=(0,n.A)(e),t.prev=2,c=(0,o.A)().mark((function e(){var t;return(0,o.A)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=u.value,!s.some((function(e){return e.name===t.name&&e.size===t.size}))){e.next=3;break}return e.abrupt("return",1);case 3:r((0,v.ad)(t));case 4:case"end":return e.stop()}}),e)})),i.s();case 5:if((u=i.n()).done){t.next=11;break}return t.delegateYield(c(),"t0",7);case 7:if(!t.t0){t.next=9;break}return t.abrupt("continue",9);case 9:t.next=5;break;case 11:t.next=16;break;case 13:t.prev=13,t.t1=t.catch(2),i.e(t.t1);case 16:return t.prev=16,i.f(),t.finish(16);case 19:case"end":return t.stop()}}),t,null,[[2,13,16,19]])})));return function(e,r){return t.apply(this,arguments)}}()}}}]);
|
|
2
|
-
//# sourceMappingURL=3205.87c8575d.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"js/3205.87c8575d.chunk.js","mappings":"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","sources":["webpack://@ytsaurus/ui/./node_modules/@babel/runtime/helpers/esm/asyncIterator.js","webpack://@ytsaurus/ui/./node_modules/@babel/runtime/helpers/esm/OverloadYield.js","webpack://@ytsaurus/ui/./node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js","webpack://@ytsaurus/ui/./src/ui/store/actions/ai/helpers.ts","webpack://@ytsaurus/ui/./src/ui/store/actions/ai/chat.ts","webpack://@ytsaurus/ui/./node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js"],"sourcesContent":["function _asyncIterator(r) {\n var n,\n t,\n o,\n e = 2;\n for (\"undefined\" != typeof Symbol && (t = Symbol.asyncIterator, o = Symbol.iterator); e--;) {\n if (t && null != (n = r[t])) return n.call(r);\n if (o && null != (n = r[o])) return new AsyncFromSyncIterator(n.call(r));\n t = \"@@asyncIterator\", o = \"@@iterator\";\n }\n throw new TypeError(\"Object is not async iterable\");\n}\nfunction AsyncFromSyncIterator(r) {\n function AsyncFromSyncIteratorContinuation(r) {\n if (Object(r) !== r) return Promise.reject(new TypeError(r + \" is not an object.\"));\n var n = r.done;\n return Promise.resolve(r.value).then(function (r) {\n return {\n value: r,\n done: n\n };\n });\n }\n return AsyncFromSyncIterator = function AsyncFromSyncIterator(r) {\n this.s = r, this.n = r.next;\n }, AsyncFromSyncIterator.prototype = {\n s: null,\n n: null,\n next: function next() {\n return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments));\n },\n \"return\": function _return(r) {\n var n = this.s[\"return\"];\n return void 0 === n ? Promise.resolve({\n value: r,\n done: !0\n }) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments));\n },\n \"throw\": function _throw(r) {\n var n = this.s[\"return\"];\n return void 0 === n ? Promise.reject(r) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments));\n }\n }, new AsyncFromSyncIterator(r);\n}\nexport { _asyncIterator as default };","function _OverloadYield(e, d) {\n this.v = e, this.k = d;\n}\nexport { _OverloadYield as default };","import OverloadYield from \"./OverloadYield.js\";\nfunction _wrapAsyncGenerator(e) {\n return function () {\n return new AsyncGenerator(e.apply(this, arguments));\n };\n}\nfunction AsyncGenerator(e) {\n var r, t;\n function resume(r, t) {\n try {\n var n = e[r](t),\n o = n.value,\n u = o instanceof OverloadYield;\n Promise.resolve(u ? o.v : o).then(function (t) {\n if (u) {\n var i = \"return\" === r ? \"return\" : \"next\";\n if (!o.k || t.done) return resume(i, t);\n t = e[i](t).value;\n }\n settle(n.done ? \"return\" : \"normal\", t);\n }, function (e) {\n resume(\"throw\", e);\n });\n } catch (e) {\n settle(\"throw\", e);\n }\n }\n function settle(e, n) {\n switch (e) {\n case \"return\":\n r.resolve({\n value: n,\n done: !0\n });\n break;\n case \"throw\":\n r.reject(n);\n break;\n default:\n r.resolve({\n value: n,\n done: !1\n });\n }\n (r = r.next) ? resume(r.key, r.arg) : t = null;\n }\n this._invoke = function (e, n) {\n return new Promise(function (o, u) {\n var i = {\n key: e,\n arg: n,\n resolve: o,\n reject: u,\n next: null\n };\n t ? t = t.next = i : (r = t = i, resume(e, n));\n });\n }, \"function\" != typeof e[\"return\"] && (this[\"return\"] = void 0);\n}\nAsyncGenerator.prototype[\"function\" == typeof Symbol && Symbol.asyncIterator || \"@@asyncIterator\"] = function () {\n return this;\n}, AsyncGenerator.prototype.next = function (e) {\n return this._invoke(\"next\", e);\n}, AsyncGenerator.prototype[\"throw\"] = function (e) {\n return this._invoke(\"throw\", e);\n}, AsyncGenerator.prototype[\"return\"] = function (e) {\n return this._invoke(\"return\", e);\n};\nexport { _wrapAsyncGenerator as default };","import {\n ChatAnswer,\n ChatMessage,\n SearchMcpAnswer,\n SearchMcpResponse,\n TableSchemaMcpAnswer,\n UnknownMcpAnswer,\n} from '../../../types/ai-chat';\nimport {GetConversationItemsResponse, LLMStreamEvent} from '../../../../shared/ai-chat';\n\nexport const parseStreamLine = (line: string): LLMStreamEvent | {text: string} | null => {\n if (!line.startsWith('data: ') || line === 'data: [DONE]') {\n return null;\n }\n\n try {\n return JSON.parse(line.substring(6));\n } catch (e) {\n return null;\n }\n};\n\nexport const getTextDelta = (event: LLMStreamEvent | {text: string}): string | null => {\n if ('text' in event) {\n return event.text;\n }\n\n if ('type' in event && event.type === 'response.output_text.delta' && event.delta) {\n return event.delta;\n }\n\n return null;\n};\n\nexport const createMcpItem = (\n item: NonNullable<LLMStreamEvent['item']>,\n): SearchMcpAnswer | TableSchemaMcpAnswer | UnknownMcpAnswer | undefined => {\n if (item.type !== 'mcp_call') return undefined;\n\n if (item.name === 'search_docs' && item.output) {\n try {\n const output: SearchMcpResponse = JSON.parse(item.output);\n const result = output.response?.result;\n if (result && Array.isArray(result)) {\n return {\n id: item.id,\n type: 'mcp_search_answer',\n value: result,\n };\n }\n } catch (e) {}\n }\n\n if (item.name === 'get_table_schema' && item.output) {\n return {\n id: item.id,\n type: 'mcp_table_schema_answer',\n value: item.output,\n };\n }\n\n return {\n id: item.id,\n type: 'mcp_unknown_answer',\n name: item.name || 'unknown',\n value: item,\n };\n};\n\nexport const createMessageItem = (\n item: NonNullable<LLMStreamEvent['item']>,\n fullText: string,\n): ChatAnswer | undefined => {\n if (item.type !== 'message') return undefined;\n\n return {\n id: item.id,\n type: 'answer',\n state: 'done',\n value: fullText,\n };\n};\n\nconst SPECIAL_TAGS = [\n '<user_message>',\n '<query>',\n '<error>',\n '<warning>',\n '<info>',\n '<library>',\n '<rag_context>',\n];\n\nexport const parseConversationItems = (\n data: GetConversationItemsResponse['data'],\n): ChatMessage[] => {\n return data.reduce<ChatMessage[]>((acc, item) => {\n if (item.type === 'mcp_call') {\n if (item.name === 'search_docs') {\n try {\n const output: SearchMcpResponse = JSON.parse(item.output);\n const result = output.response?.result;\n if (result && Array.isArray(result)) {\n acc.push({\n id: item.id,\n type: 'mcp_search_answer',\n value: result,\n });\n return acc;\n }\n } catch (e) {}\n }\n\n if (item.name === 'get_table_schema') {\n acc.push({\n id: item.id,\n type: 'mcp_table_schema_answer',\n value: item.output,\n });\n return acc;\n }\n\n acc.push({\n id: item.id,\n type: 'mcp_unknown_answer',\n name: item.name,\n value: item,\n });\n\n return acc;\n }\n\n if (SPECIAL_TAGS.some((tag) => item.content[0].text.startsWith(tag))) return acc;\n\n if (item.role === 'user') {\n acc.push({\n id: item.id,\n type: 'question',\n value: item.content[0].text,\n });\n } else {\n acc.push({\n id: item.id,\n type: 'answer',\n state: 'done',\n value: item.content[0].text,\n });\n }\n return acc;\n }, []);\n};\n","import {ThunkAction} from 'redux-thunk';\nimport {Action} from 'redux';\nimport {RootState} from '../../reducers';\nimport {\n selectAiChatModel,\n selectAttachedFiles,\n selectChatMode,\n selectChatOpen,\n selectChatQuestion,\n selectConversation,\n selectConversationId,\n selectConversations,\n} from '../../selectors/ai/chat';\nimport {getQueryDraft} from '../../selectors/query-tracker/query';\nimport {\n addAttachedFile,\n addConversationItem,\n clearAttachedFiles,\n clearCurrentAnswer,\n resetChat,\n setConversation,\n setConversationId,\n setConversations,\n setCurrentAnswer,\n setError,\n setIsOpen,\n setLoading,\n setMode,\n setQuestion,\n setSending,\n} from '../../reducers/ai/chatSlice';\nimport {ChatError} from '../../../types/ai-chat';\nimport axios from 'axios';\nimport {type Conversation, GetConversationItemsResponse} from '../../../../shared/ai-chat';\nimport {\n createMcpItem,\n createMessageItem,\n getTextDelta,\n parseConversationItems,\n parseStreamLine,\n} from './helpers';\n\nconst BASE_PATH = '/api/code-assistant';\ntype AsyncAction = ThunkAction<void, RootState, undefined, Action>;\n\nconst META = {\n agent: 'qt',\n};\n\nconst readFileAsText = (file: File): Promise<string> => {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onload = (e) => {\n const result = e.target?.result;\n if (typeof result === 'string') {\n resolve(result);\n } else {\n reject(new Error('Failed to read file as text'));\n }\n };\n reader.onerror = () => reject(reader.error);\n reader.readAsText(file);\n });\n};\n\nconst ERROR_MESSAGE = {\n HTTP_ERROR: 'HTTP error! status:',\n RESPONSE_NOT_READABLE: 'Response body is not readable',\n};\n\nlet currentAbortController: AbortController | null = null;\n\nasync function* streamAsyncIterator(\n reader: ReadableStreamDefaultReader<Uint8Array>,\n): AsyncGenerator<Uint8Array, void, unknown> {\n try {\n while (true) {\n const {done, value} = await reader.read();\n if (done) return;\n yield value;\n }\n } finally {\n reader.releaseLock();\n }\n}\n\nconst prepareQueryContext = (state: RootState): string[] => {\n const isQueriesPage = window.location.pathname.includes('/queries');\n\n if (!isQueriesPage) {\n return [];\n }\n\n const draft = getQueryDraft(state);\n const contextMessages: string[] = [];\n\n if (draft.query && draft.query.trim()) {\n contextMessages.push(`<query>\\n${draft.query}\\n</query>`);\n }\n\n if (draft.error) {\n const errorText =\n typeof draft.error === 'string' ? draft.error : JSON.stringify(draft.error, null, 2);\n contextMessages.push(`<error>\\n${errorText}\\n</error>`);\n }\n\n return contextMessages;\n};\n\nexport const summarizeConversationTitle =\n (conversationId: string): AsyncAction =>\n async (dispatch, getState) => {\n const state = getState();\n const conversations = selectConversations(state);\n\n try {\n const response = await axios.post<{title: string}>(\n `${BASE_PATH}/conversations/${conversationId}/summarize-title`,\n );\n const newConversations = conversations.items.map((conversation) => {\n if (conversation.id === conversationId) {\n return {\n ...conversation,\n metadata: {\n ...conversation.metadata,\n topic: response.data.title,\n },\n };\n }\n return conversation;\n });\n\n dispatch(setConversations({items: newConversations}));\n } catch (e) {}\n };\n\nconst TITLE_GENERATION_FREQUENCY = 5;\nconst DEFAULT_CONVERSATION_TITLE = 'новый чат';\n\nexport const sendQuestion = (): AsyncAction => async (dispatch, getState) => {\n const processStreamLine = (line: string, fullText: string): string => {\n const event = parseStreamLine(line);\n if (!event) return fullText;\n\n const delta = getTextDelta(event);\n if (delta) {\n const newFullText = fullText + delta;\n dispatch(setCurrentAnswer(newFullText));\n return newFullText;\n }\n\n if ('type' in event && event.type === 'response.output_item.done' && event.item) {\n const messageItem = createMessageItem(event.item, fullText);\n if (messageItem) {\n dispatch(addConversationItem(messageItem));\n dispatch(clearCurrentAnswer());\n return '';\n }\n\n const mcpItem = createMcpItem(event.item);\n if (mcpItem) {\n dispatch(addConversationItem(mcpItem));\n }\n }\n\n return fullText;\n };\n\n const state = getState();\n const question = selectChatQuestion(state);\n const conversationId = selectConversationId(state);\n const {items, hasMore, lastId} = selectConversations(state);\n const attachedFiles = selectAttachedFiles(state);\n const model = selectAiChatModel();\n let summarize = false;\n\n if (!question) return;\n\n const contextMessages = prepareQueryContext(state);\n\n dispatch(setMode('chat'));\n dispatch(\n addConversationItem({\n id: '',\n type: 'question',\n value: question,\n }),\n );\n dispatch(setQuestion(undefined));\n dispatch(setSending(true));\n\n let reader: ReadableStreamDefaultReader<Uint8Array> | undefined;\n\n try {\n let currentConversationId = conversationId;\n if (!currentConversationId) {\n const {data} = await axios.post<Conversation>(`${BASE_PATH}/create-conversation`, {\n model,\n metadata: {...META, topic: DEFAULT_CONVERSATION_TITLE},\n });\n currentConversationId = data.id;\n dispatch(setConversations({items: [data, ...items], hasMore, lastId, loading: false}));\n summarize = true;\n }\n\n const files = await Promise.all(\n attachedFiles.map(async (file) => ({\n name: file.name,\n type: file.type,\n content: await readFileAsText(file),\n })),\n );\n\n if (currentAbortController) {\n currentAbortController.abort();\n }\n currentAbortController = new AbortController();\n const response = await fetch(`${BASE_PATH}/send-message`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n message: question,\n model,\n metadata: META,\n conversationId: currentConversationId,\n contextMessages: contextMessages.length > 0 ? contextMessages : undefined,\n files: files.length > 0 ? files : undefined,\n }),\n signal: currentAbortController.signal,\n });\n\n if (!response.ok) {\n throw new Error(`${ERROR_MESSAGE.HTTP_ERROR} ${response.status}`);\n }\n\n reader = response.body?.getReader();\n const decoder = new TextDecoder();\n\n if (!reader) {\n throw new Error(ERROR_MESSAGE.RESPONSE_NOT_READABLE);\n }\n\n let buffer = '';\n let fullText = '';\n\n for await (const chunk of streamAsyncIterator(reader)) {\n const decodedChunk = decoder.decode(chunk, {stream: true});\n buffer += decodedChunk;\n const lines = buffer.split('\\n');\n\n for (let i = 0; i < lines.length - 1; i++) {\n const line = lines[i].trim();\n fullText = processStreamLine(line, fullText);\n }\n\n buffer = lines[lines.length - 1];\n }\n\n const itemsCount = selectConversation(getState()).items.length;\n if (itemsCount > 0 && !(itemsCount % TITLE_GENERATION_FREQUENCY)) {\n summarize = true;\n }\n\n dispatch(setConversationId(currentConversationId));\n if (summarize) {\n dispatch(summarizeConversationTitle(currentConversationId));\n }\n\n dispatch(clearAttachedFiles());\n } catch (e) {\n if (e instanceof Error && e.name === 'AbortError') {\n dispatch(setSending(false));\n dispatch(clearCurrentAnswer());\n dispatch(setError(undefined));\n return;\n }\n\n const error: ChatError = {\n type: 'error',\n error: e as Error,\n };\n dispatch(addConversationItem(error));\n } finally {\n dispatch(setSending(false));\n currentAbortController = null;\n }\n};\n\nexport const createConversationWithPrompt =\n (prompt: string): AsyncAction =>\n (dispatch) => {\n dispatch(resetChat());\n dispatch(setQuestion(prompt));\n dispatch(setIsOpen(true));\n dispatch(sendQuestion());\n };\n\nconst CONVERSATIONS_LIMIT = 20;\n\nexport const getConversations = (): AsyncAction => async (dispatch) => {\n dispatch(setLoading(true));\n try {\n const response = await axios.get(`${BASE_PATH}/conversations`, {\n params: {\n limit: CONVERSATIONS_LIMIT,\n },\n });\n\n dispatch(\n setConversations({\n items: response.data.data,\n hasMore: response.data.has_more,\n lastId: response.data.last_id,\n loading: false,\n }),\n );\n } catch (e) {\n dispatch(setError(e as Error));\n } finally {\n dispatch(setLoading(false));\n }\n};\n\nexport const loadMoreConversations = (): AsyncAction => async (dispatch, getState) => {\n const state = getState();\n const conversations = selectConversations(state);\n const {items, hasMore, loading, lastId} = conversations;\n\n if (!hasMore || loading) {\n return;\n }\n\n dispatch(setConversations({loading: true}));\n try {\n const response = await axios.get(`${BASE_PATH}/conversations`, {\n params: {\n limit: CONVERSATIONS_LIMIT,\n after: lastId,\n },\n });\n\n dispatch(\n setConversations({\n items: [...items, ...response.data.data],\n hasMore: response.data.has_more,\n lastId: response.data.last_id,\n loading: false,\n }),\n );\n } catch (e) {\n dispatch(setConversations({loading: false}));\n dispatch(setError(e as Error));\n }\n};\n\nexport const toggleChatHistory = (): AsyncAction => async (dispatch, getState) => {\n const state = getState();\n const currentMode = selectChatMode(state);\n const nextMode = currentMode === 'chat' ? 'history' : 'chat';\n\n if (nextMode === 'history') {\n dispatch(getConversations());\n }\n dispatch(setMode(nextMode));\n};\n\nexport const deleteConversation =\n (conversationId: string): AsyncAction =>\n async (dispatch, getState) => {\n try {\n const state = getState();\n const {items, hasMore, lastId, loading} = selectConversations(state);\n await axios.delete(`${BASE_PATH}/conversations/${conversationId}`);\n\n const filteredConversations = items.filter(\n (conversation) => conversation.id !== conversationId,\n );\n\n const newLastId =\n lastId === conversationId\n ? filteredConversations[filteredConversations.length - 1]?.id || undefined\n : lastId;\n\n dispatch(\n setConversations({\n items: filteredConversations,\n hasMore,\n lastId: newLastId,\n loading,\n }),\n );\n } catch (e) {\n dispatch(setError(e as Error));\n }\n };\n\nconst ITEMS_PER_PAGE = 50;\n\nexport const loadConversation =\n (conversationId: string): AsyncAction =>\n async (dispatch, getState) => {\n const currentConversationId = selectConversationId(getState());\n\n if (currentConversationId === conversationId) {\n dispatch(setMode('chat'));\n return;\n }\n\n dispatch(setConversationId(conversationId));\n dispatch(\n setConversation({\n items: [],\n }),\n );\n dispatch(setLoading(true));\n dispatch(setMode('chat'));\n\n try {\n const response = await axios.get<GetConversationItemsResponse>(\n `${BASE_PATH}/conversations/${conversationId}/items`,\n {\n params: {\n order: 'desc',\n limit: ITEMS_PER_PAGE,\n },\n },\n );\n\n // API returns items in desc order (newest first), but we want to display oldest first\n const items = parseConversationItems(response.data.data).reverse();\n dispatch(\n setConversation({\n items,\n hasMore: response.data.has_more,\n lastId: response.data.last_id,\n }),\n );\n } catch (e) {\n dispatch(setError(e as Error));\n } finally {\n dispatch(setLoading(false));\n }\n };\n\nexport const loadMoreConversationItems = (): AsyncAction => async (dispatch, getState) => {\n const state = getState();\n const conversationId = selectConversationId(state);\n const {items, lastId, hasMore, loading} = selectConversation(state);\n\n if (!conversationId) {\n return;\n }\n\n if (!hasMore || loading || !lastId) {\n return;\n }\n\n dispatch(setConversation({loading: true}));\n dispatch(setError(undefined));\n\n try {\n const response = await axios.get<GetConversationItemsResponse>(\n `${BASE_PATH}/conversations/${conversationId}/items`,\n {\n params: {\n order: 'desc',\n limit: ITEMS_PER_PAGE,\n after: lastId,\n },\n },\n );\n\n // API returns items in desc order (newest first), but we want to display oldest first\n const newItems = parseConversationItems(response.data.data).reverse();\n\n dispatch(\n setConversation({\n items: [...newItems, ...items],\n hasMore: response.data.has_more,\n lastId: response.data.last_id,\n }),\n );\n } catch (e) {\n dispatch(setError(e as Error));\n } finally {\n dispatch(setConversation({loading: false}));\n }\n};\n\nexport const toggleChatSidePanel = (): AsyncAction => (dispatch, getState) => {\n const open = selectChatOpen(getState());\n dispatch(setIsOpen(!open));\n};\n\nexport const attachFiles =\n (files: File[]): AsyncAction =>\n async (dispatch, getState) => {\n const currentFiles = selectAttachedFiles(getState());\n\n for (const file of files) {\n if (currentFiles.some((f) => f.name === file.name && f.size === file.size)) {\n continue;\n }\n\n dispatch(addAttachedFile(file));\n }\n };\n","import OverloadYield from \"./OverloadYield.js\";\nfunction _awaitAsyncGenerator(e) {\n return new OverloadYield(e, 0);\n}\nexport { _awaitAsyncGenerator as default };"],"names":["_asyncIterator","r","n","t","o","e","Symbol","asyncIterator","iterator","call","AsyncFromSyncIterator","TypeError","AsyncFromSyncIteratorContinuation","Object","Promise","reject","done","resolve","value","then","this","s","next","prototype","apply","arguments","_OverloadYield","d","v","k","AsyncGenerator","resume","u","i","settle","key","arg","_invoke","parseStreamLine","line","startsWith","JSON","parse","substring","getTextDelta","event","text","type","delta","createMcpItem","item","name","output","_output$response","result","response","Array","isArray","id","createMessageItem","fullText","state","SPECIAL_TAGS","parseConversationItems","data","reduce","acc","_output$response2","push","some","tag","content","role","BASE_PATH","META","agent","readFileAsText","file","reader","FileReader","onload","_e$target","target","Error","onerror","error","readAsText","currentAbortController","streamAsyncIterator","_x","_streamAsyncIterator","_regeneratorRuntime","mark","_callee","_yield$_awaitAsyncGen","wrap","_context","prev","read","sent","abrupt","releaseLock","finish","stop","prepareQueryContext","window","location","pathname","includes","draft","getQueryDraft","contextMessages","query","trim","concat","errorText","stringify","summarizeConversationTitle","conversationId","_ref","_asyncToGenerator","_callee2","dispatch","getState","conversations","newConversations","_context2","selectConversations","axios","post","items","map","conversation","_objectSpread","metadata","topic","title","setConversations","t0","_x2","_x3","sendQuestion","_ref2","_callee4","processStreamLine","question","_selectConversations","hasMore","lastId","attachedFiles","model","summarize","_response$body","currentConversationId","_yield$axios$post","files","decoder","buffer","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","chunk","decodedChunk","lines","itemsCount","_context4","newFullText","setCurrentAnswer","messageItem","addConversationItem","clearCurrentAnswer","mcpItem","selectChatQuestion","selectConversationId","selectAttachedFiles","selectAiChatModel","setMode","setQuestion","undefined","setSending","_toConsumableArray","loading","all","_ref3","_callee3","_context3","t1","t2","_x6","abort","AbortController","fetch","method","headers","body","message","length","signal","ok","status","getReader","TextDecoder","decode","stream","split","selectConversation","setConversationId","clearAttachedFiles","setError","_x4","_x5","createConversationWithPrompt","prompt","resetChat","setIsOpen","loadMoreConversations","_ref5","_callee6","_context6","get","params","limit","after","has_more","last_id","_x8","_x9","toggleChatHistory","_ref6","_callee7","currentMode","nextMode","_context7","selectChatMode","_ref4","_callee5","_context5","setLoading","_x7","_x0","_x1","deleteConversation","_ref7","_callee8","_filteredConversation","_selectConversations2","filteredConversations","newLastId","_context8","filter","_x10","_x11","loadConversation","_ref8","_callee9","_context9","setConversation","order","reverse","_x12","_x13","loadMoreConversationItems","_ref9","_callee0","_selectConversation","newItems","_context0","_x14","_x15","toggleChatSidePanel","open","selectChatOpen","attachFiles","_ref0","_callee1","currentFiles","_iterator2","_step2","_loop","_context10","_createForOfIteratorHelper","_context1","f","size","addAttachedFile","delegateYield","_x16","_x17"],"sourceRoot":""}
|