@oscloudlab/vgen-agent-assistant 0.0.7 → 0.0.9

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.
@@ -1024,18 +1024,18 @@ const createLucideIcon = (iconName, iconNode) => {
1024
1024
  * This source code is licensed under the ISC license.
1025
1025
  * See the LICENSE file in the root directory of this source tree.
1026
1026
  */
1027
- const __iconNode$F = [
1027
+ const __iconNode$D = [
1028
1028
  ["path", { d: "M5 12h14", key: "1ays0h" }],
1029
1029
  ["path", { d: "m12 5 7 7-7 7", key: "xquz4c" }]
1030
1030
  ];
1031
- const ArrowRight = createLucideIcon("arrow-right", __iconNode$F);
1031
+ const ArrowRight = createLucideIcon("arrow-right", __iconNode$D);
1032
1032
  /**
1033
1033
  * @license lucide-react v0.544.0 - ISC
1034
1034
  *
1035
1035
  * This source code is licensed under the ISC license.
1036
1036
  * See the LICENSE file in the root directory of this source tree.
1037
1037
  */
1038
- const __iconNode$E = [
1038
+ const __iconNode$C = [
1039
1039
  ["path", { d: "M12 7v14", key: "1akyts" }],
1040
1040
  ["path", { d: "M16 12h2", key: "7q9ll5" }],
1041
1041
  ["path", { d: "M16 8h2", key: "msurwy" }],
@@ -1049,14 +1049,14 @@ const __iconNode$E = [
1049
1049
  ["path", { d: "M6 12h2", key: "32wvfc" }],
1050
1050
  ["path", { d: "M6 8h2", key: "30oboj" }]
1051
1051
  ];
1052
- const BookOpenText = createLucideIcon("book-open-text", __iconNode$E);
1052
+ const BookOpenText = createLucideIcon("book-open-text", __iconNode$C);
1053
1053
  /**
1054
1054
  * @license lucide-react v0.544.0 - ISC
1055
1055
  *
1056
1056
  * This source code is licensed under the ISC license.
1057
1057
  * See the LICENSE file in the root directory of this source tree.
1058
1058
  */
1059
- const __iconNode$D = [
1059
+ const __iconNode$B = [
1060
1060
  ["path", { d: "M12 7v14", key: "1akyts" }],
1061
1061
  [
1062
1062
  "path",
@@ -1066,14 +1066,14 @@ const __iconNode$D = [
1066
1066
  }
1067
1067
  ]
1068
1068
  ];
1069
- const BookOpen = createLucideIcon("book-open", __iconNode$D);
1069
+ const BookOpen = createLucideIcon("book-open", __iconNode$B);
1070
1070
  /**
1071
1071
  * @license lucide-react v0.544.0 - ISC
1072
1072
  *
1073
1073
  * This source code is licensed under the ISC license.
1074
1074
  * See the LICENSE file in the root directory of this source tree.
1075
1075
  */
1076
- const __iconNode$C = [
1076
+ const __iconNode$A = [
1077
1077
  ["path", { d: "M12 8V4H8", key: "hb8ula" }],
1078
1078
  ["rect", { width: "16", height: "12", x: "4", y: "8", rx: "2", key: "enze0r" }],
1079
1079
  ["path", { d: "M2 14h2", key: "vft8re" }],
@@ -1081,22 +1081,22 @@ const __iconNode$C = [
1081
1081
  ["path", { d: "M15 13v2", key: "1xurst" }],
1082
1082
  ["path", { d: "M9 13v2", key: "rq6x2g" }]
1083
1083
  ];
1084
- const Bot = createLucideIcon("bot", __iconNode$C);
1084
+ const Bot = createLucideIcon("bot", __iconNode$A);
1085
1085
  /**
1086
1086
  * @license lucide-react v0.544.0 - ISC
1087
1087
  *
1088
1088
  * This source code is licensed under the ISC license.
1089
1089
  * See the LICENSE file in the root directory of this source tree.
1090
1090
  */
1091
- const __iconNode$B = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
1092
- const ChevronDown = createLucideIcon("chevron-down", __iconNode$B);
1091
+ const __iconNode$z = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
1092
+ const ChevronDown = createLucideIcon("chevron-down", __iconNode$z);
1093
1093
  /**
1094
1094
  * @license lucide-react v0.544.0 - ISC
1095
1095
  *
1096
1096
  * This source code is licensed under the ISC license.
1097
1097
  * See the LICENSE file in the root directory of this source tree.
1098
1098
  */
1099
- const __iconNode$A = [
1099
+ const __iconNode$y = [
1100
1100
  [
1101
1101
  "path",
1102
1102
  {
@@ -1106,48 +1106,48 @@ const __iconNode$A = [
1106
1106
  ],
1107
1107
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]
1108
1108
  ];
1109
- const CirclePlay = createLucideIcon("circle-play", __iconNode$A);
1109
+ const CirclePlay = createLucideIcon("circle-play", __iconNode$y);
1110
1110
  /**
1111
1111
  * @license lucide-react v0.544.0 - ISC
1112
1112
  *
1113
1113
  * This source code is licensed under the ISC license.
1114
1114
  * See the LICENSE file in the root directory of this source tree.
1115
1115
  */
1116
- const __iconNode$z = [
1116
+ const __iconNode$x = [
1117
1117
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
1118
1118
  ["rect", { x: "9", y: "9", width: "6", height: "6", rx: "1", key: "1ssd4o" }]
1119
1119
  ];
1120
- const CircleStop = createLucideIcon("circle-stop", __iconNode$z);
1120
+ const CircleStop = createLucideIcon("circle-stop", __iconNode$x);
1121
1121
  /**
1122
1122
  * @license lucide-react v0.544.0 - ISC
1123
1123
  *
1124
1124
  * This source code is licensed under the ISC license.
1125
1125
  * See the LICENSE file in the root directory of this source tree.
1126
1126
  */
1127
- const __iconNode$y = [
1127
+ const __iconNode$w = [
1128
1128
  ["path", { d: "m18 16 4-4-4-4", key: "1inbqp" }],
1129
1129
  ["path", { d: "m6 8-4 4 4 4", key: "15zrgr" }],
1130
1130
  ["path", { d: "m14.5 4-5 16", key: "e7oirm" }]
1131
1131
  ];
1132
- const CodeXml = createLucideIcon("code-xml", __iconNode$y);
1132
+ const CodeXml = createLucideIcon("code-xml", __iconNode$w);
1133
1133
  /**
1134
1134
  * @license lucide-react v0.544.0 - ISC
1135
1135
  *
1136
1136
  * This source code is licensed under the ISC license.
1137
1137
  * See the LICENSE file in the root directory of this source tree.
1138
1138
  */
1139
- const __iconNode$x = [
1139
+ const __iconNode$v = [
1140
1140
  ["path", { d: "m16 18 6-6-6-6", key: "eg8j8" }],
1141
1141
  ["path", { d: "m8 6-6 6 6 6", key: "ppft3o" }]
1142
1142
  ];
1143
- const Code = createLucideIcon("code", __iconNode$x);
1143
+ const Code = createLucideIcon("code", __iconNode$v);
1144
1144
  /**
1145
1145
  * @license lucide-react v0.544.0 - ISC
1146
1146
  *
1147
1147
  * This source code is licensed under the ISC license.
1148
1148
  * See the LICENSE file in the root directory of this source tree.
1149
1149
  */
1150
- const __iconNode$w = [
1150
+ const __iconNode$u = [
1151
1151
  ["path", { d: "M12 2a10 10 0 1 0 10 10 4 4 0 0 1-5-5 4 4 0 0 1-5-5", key: "laymnq" }],
1152
1152
  ["path", { d: "M8.5 8.5v.01", key: "ue8clq" }],
1153
1153
  ["path", { d: "M16 15.5v.01", key: "14dtrp" }],
@@ -1155,25 +1155,25 @@ const __iconNode$w = [
1155
1155
  ["path", { d: "M11 17v.01", key: "1hyl5a" }],
1156
1156
  ["path", { d: "M7 14v.01", key: "uct60s" }]
1157
1157
  ];
1158
- const Cookie = createLucideIcon("cookie", __iconNode$w);
1158
+ const Cookie = createLucideIcon("cookie", __iconNode$u);
1159
1159
  /**
1160
1160
  * @license lucide-react v0.544.0 - ISC
1161
1161
  *
1162
1162
  * This source code is licensed under the ISC license.
1163
1163
  * See the LICENSE file in the root directory of this source tree.
1164
1164
  */
1165
- const __iconNode$v = [
1165
+ const __iconNode$t = [
1166
1166
  ["rect", { width: "14", height: "14", x: "8", y: "8", rx: "2", ry: "2", key: "17jyea" }],
1167
1167
  ["path", { d: "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2", key: "zix9uf" }]
1168
1168
  ];
1169
- const Copy = createLucideIcon("copy", __iconNode$v);
1169
+ const Copy = createLucideIcon("copy", __iconNode$t);
1170
1170
  /**
1171
1171
  * @license lucide-react v0.544.0 - ISC
1172
1172
  *
1173
1173
  * This source code is licensed under the ISC license.
1174
1174
  * See the LICENSE file in the root directory of this source tree.
1175
1175
  */
1176
- const __iconNode$u = [
1176
+ const __iconNode$s = [
1177
1177
  [
1178
1178
  "path",
1179
1179
  {
@@ -1183,51 +1183,51 @@ const __iconNode$u = [
1183
1183
  ],
1184
1184
  ["circle", { cx: "12", cy: "12", r: "3", key: "1v7zrd" }]
1185
1185
  ];
1186
- const Eye = createLucideIcon("eye", __iconNode$u);
1186
+ const Eye = createLucideIcon("eye", __iconNode$s);
1187
1187
  /**
1188
1188
  * @license lucide-react v0.544.0 - ISC
1189
1189
  *
1190
1190
  * This source code is licensed under the ISC license.
1191
1191
  * See the LICENSE file in the root directory of this source tree.
1192
1192
  */
1193
- const __iconNode$t = [
1193
+ const __iconNode$r = [
1194
1194
  ["path", { d: "M10 12.5 8 15l2 2.5", key: "1tg20x" }],
1195
1195
  ["path", { d: "m14 12.5 2 2.5-2 2.5", key: "yinavb" }],
1196
1196
  ["path", { d: "M14 2v4a2 2 0 0 0 2 2h4", key: "tnqrlb" }],
1197
1197
  ["path", { d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7z", key: "1mlx9k" }]
1198
1198
  ];
1199
- const FileCode = createLucideIcon("file-code", __iconNode$t);
1199
+ const FileCode = createLucideIcon("file-code", __iconNode$r);
1200
1200
  /**
1201
1201
  * @license lucide-react v0.544.0 - ISC
1202
1202
  *
1203
1203
  * This source code is licensed under the ISC license.
1204
1204
  * See the LICENSE file in the root directory of this source tree.
1205
1205
  */
1206
- const __iconNode$s = [
1206
+ const __iconNode$q = [
1207
1207
  ["path", { d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z", key: "1rqfz7" }],
1208
1208
  ["path", { d: "M14 2v4a2 2 0 0 0 2 2h4", key: "tnqrlb" }],
1209
1209
  ["path", { d: "M10 9H8", key: "b1mrlr" }],
1210
1210
  ["path", { d: "M16 13H8", key: "t4e002" }],
1211
1211
  ["path", { d: "M16 17H8", key: "z1uh3a" }]
1212
1212
  ];
1213
- const FileText = createLucideIcon("file-text", __iconNode$s);
1213
+ const FileText = createLucideIcon("file-text", __iconNode$q);
1214
1214
  /**
1215
1215
  * @license lucide-react v0.544.0 - ISC
1216
1216
  *
1217
1217
  * This source code is licensed under the ISC license.
1218
1218
  * See the LICENSE file in the root directory of this source tree.
1219
1219
  */
1220
- const __iconNode$r = [
1220
+ const __iconNode$p = [
1221
1221
  ["path", { d: "M2 16s9-15 20-4C11 23 2 8 2 8", key: "h4oh4o" }]
1222
1222
  ];
1223
- const FishSymbol = createLucideIcon("fish-symbol", __iconNode$r);
1223
+ const FishSymbol = createLucideIcon("fish-symbol", __iconNode$p);
1224
1224
  /**
1225
1225
  * @license lucide-react v0.544.0 - ISC
1226
1226
  *
1227
1227
  * This source code is licensed under the ISC license.
1228
1228
  * See the LICENSE file in the root directory of this source tree.
1229
1229
  */
1230
- const __iconNode$q = [
1230
+ const __iconNode$o = [
1231
1231
  [
1232
1232
  "path",
1233
1233
  {
@@ -1236,27 +1236,27 @@ const __iconNode$q = [
1236
1236
  }
1237
1237
  ]
1238
1238
  ];
1239
- const Folder = createLucideIcon("folder", __iconNode$q);
1239
+ const Folder = createLucideIcon("folder", __iconNode$o);
1240
1240
  /**
1241
1241
  * @license lucide-react v0.544.0 - ISC
1242
1242
  *
1243
1243
  * This source code is licensed under the ISC license.
1244
1244
  * See the LICENSE file in the root directory of this source tree.
1245
1245
  */
1246
- const __iconNode$p = [
1246
+ const __iconNode$n = [
1247
1247
  ["line", { x1: "6", x2: "6", y1: "3", y2: "15", key: "17qcm7" }],
1248
1248
  ["circle", { cx: "18", cy: "6", r: "3", key: "1h7g24" }],
1249
1249
  ["circle", { cx: "6", cy: "18", r: "3", key: "fqmcym" }],
1250
1250
  ["path", { d: "M18 9a9 9 0 0 1-9 9", key: "n2h4wq" }]
1251
1251
  ];
1252
- const GitBranch = createLucideIcon("git-branch", __iconNode$p);
1252
+ const GitBranch = createLucideIcon("git-branch", __iconNode$n);
1253
1253
  /**
1254
1254
  * @license lucide-react v0.544.0 - ISC
1255
1255
  *
1256
1256
  * This source code is licensed under the ISC license.
1257
1257
  * See the LICENSE file in the root directory of this source tree.
1258
1258
  */
1259
- const __iconNode$o = [
1259
+ const __iconNode$m = [
1260
1260
  [
1261
1261
  "path",
1262
1262
  {
@@ -1267,26 +1267,26 @@ const __iconNode$o = [
1267
1267
  ["path", { d: "M22 10v6", key: "1lu8f3" }],
1268
1268
  ["path", { d: "M6 12.5V16a6 3 0 0 0 12 0v-3.5", key: "1r8lef" }]
1269
1269
  ];
1270
- const GraduationCap = createLucideIcon("graduation-cap", __iconNode$o);
1270
+ const GraduationCap = createLucideIcon("graduation-cap", __iconNode$m);
1271
1271
  /**
1272
1272
  * @license lucide-react v0.544.0 - ISC
1273
1273
  *
1274
1274
  * This source code is licensed under the ISC license.
1275
1275
  * See the LICENSE file in the root directory of this source tree.
1276
1276
  */
1277
- const __iconNode$n = [
1277
+ const __iconNode$l = [
1278
1278
  ["path", { d: "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8", key: "1357e3" }],
1279
1279
  ["path", { d: "M3 3v5h5", key: "1xhq8a" }],
1280
1280
  ["path", { d: "M12 7v5l4 2", key: "1fdv2h" }]
1281
1281
  ];
1282
- const History = createLucideIcon("history", __iconNode$n);
1282
+ const History = createLucideIcon("history", __iconNode$l);
1283
1283
  /**
1284
1284
  * @license lucide-react v0.544.0 - ISC
1285
1285
  *
1286
1286
  * This source code is licensed under the ISC license.
1287
1287
  * See the LICENSE file in the root directory of this source tree.
1288
1288
  */
1289
- const __iconNode$m = [
1289
+ const __iconNode$k = [
1290
1290
  [
1291
1291
  "path",
1292
1292
  {
@@ -1297,14 +1297,14 @@ const __iconNode$m = [
1297
1297
  ["path", { d: "M9 18h6", key: "x1upvd" }],
1298
1298
  ["path", { d: "M10 22h4", key: "ceow96" }]
1299
1299
  ];
1300
- const Lightbulb = createLucideIcon("lightbulb", __iconNode$m);
1300
+ const Lightbulb = createLucideIcon("lightbulb", __iconNode$k);
1301
1301
  /**
1302
1302
  * @license lucide-react v0.544.0 - ISC
1303
1303
  *
1304
1304
  * This source code is licensed under the ISC license.
1305
1305
  * See the LICENSE file in the root directory of this source tree.
1306
1306
  */
1307
- const __iconNode$l = [
1307
+ const __iconNode$j = [
1308
1308
  [
1309
1309
  "path",
1310
1310
  {
@@ -1313,39 +1313,27 @@ const __iconNode$l = [
1313
1313
  }
1314
1314
  ]
1315
1315
  ];
1316
- const MessageSquare = createLucideIcon("message-square", __iconNode$l);
1316
+ const MessageSquare = createLucideIcon("message-square", __iconNode$j);
1317
1317
  /**
1318
1318
  * @license lucide-react v0.544.0 - ISC
1319
1319
  *
1320
1320
  * This source code is licensed under the ISC license.
1321
1321
  * See the LICENSE file in the root directory of this source tree.
1322
1322
  */
1323
- const __iconNode$k = [
1323
+ const __iconNode$i = [
1324
1324
  ["path", { d: "m14 10 7-7", key: "oa77jy" }],
1325
1325
  ["path", { d: "M20 10h-6V4", key: "mjg0md" }],
1326
1326
  ["path", { d: "m3 21 7-7", key: "tjx5ai" }],
1327
1327
  ["path", { d: "M4 14h6v6", key: "rmj7iw" }]
1328
1328
  ];
1329
- const Minimize2 = createLucideIcon("minimize-2", __iconNode$k);
1330
- /**
1331
- * @license lucide-react v0.544.0 - ISC
1332
- *
1333
- * This source code is licensed under the ISC license.
1334
- * See the LICENSE file in the root directory of this source tree.
1335
- */
1336
- const __iconNode$j = [
1337
- ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
1338
- ["path", { d: "M3 9h18", key: "1pudct" }],
1339
- ["path", { d: "M9 21V9", key: "1oto5p" }]
1340
- ];
1341
- const PanelsTopLeft = createLucideIcon("panels-top-left", __iconNode$j);
1329
+ const Minimize2 = createLucideIcon("minimize-2", __iconNode$i);
1342
1330
  /**
1343
1331
  * @license lucide-react v0.544.0 - ISC
1344
1332
  *
1345
1333
  * This source code is licensed under the ISC license.
1346
1334
  * See the LICENSE file in the root directory of this source tree.
1347
1335
  */
1348
- const __iconNode$i = [
1336
+ const __iconNode$h = [
1349
1337
  ["path", { d: "M13 21h8", key: "1jsn5i" }],
1350
1338
  [
1351
1339
  "path",
@@ -1355,14 +1343,14 @@ const __iconNode$i = [
1355
1343
  }
1356
1344
  ]
1357
1345
  ];
1358
- const PenLine = createLucideIcon("pen-line", __iconNode$i);
1346
+ const PenLine = createLucideIcon("pen-line", __iconNode$h);
1359
1347
  /**
1360
1348
  * @license lucide-react v0.544.0 - ISC
1361
1349
  *
1362
1350
  * This source code is licensed under the ISC license.
1363
1351
  * See the LICENSE file in the root directory of this source tree.
1364
1352
  */
1365
- const __iconNode$h = [
1353
+ const __iconNode$g = [
1366
1354
  [
1367
1355
  "path",
1368
1356
  {
@@ -1372,14 +1360,14 @@ const __iconNode$h = [
1372
1360
  ],
1373
1361
  ["path", { d: "m15 5 4 4", key: "1mk7zo" }]
1374
1362
  ];
1375
- const Pencil = createLucideIcon("pencil", __iconNode$h);
1363
+ const Pencil = createLucideIcon("pencil", __iconNode$g);
1376
1364
  /**
1377
1365
  * @license lucide-react v0.544.0 - ISC
1378
1366
  *
1379
1367
  * This source code is licensed under the ISC license.
1380
1368
  * See the LICENSE file in the root directory of this source tree.
1381
1369
  */
1382
- const __iconNode$g = [
1370
+ const __iconNode$f = [
1383
1371
  [
1384
1372
  "path",
1385
1373
  {
@@ -1388,41 +1376,18 @@ const __iconNode$g = [
1388
1376
  }
1389
1377
  ]
1390
1378
  ];
1391
- const Play = createLucideIcon("play", __iconNode$g);
1379
+ const Play = createLucideIcon("play", __iconNode$f);
1392
1380
  /**
1393
1381
  * @license lucide-react v0.544.0 - ISC
1394
1382
  *
1395
1383
  * This source code is licensed under the ISC license.
1396
1384
  * See the LICENSE file in the root directory of this source tree.
1397
1385
  */
1398
- const __iconNode$f = [
1386
+ const __iconNode$e = [
1399
1387
  ["path", { d: "M5 12h14", key: "1ays0h" }],
1400
1388
  ["path", { d: "M12 5v14", key: "s699le" }]
1401
1389
  ];
1402
- const Plus = createLucideIcon("plus", __iconNode$f);
1403
- /**
1404
- * @license lucide-react v0.544.0 - ISC
1405
- *
1406
- * This source code is licensed under the ISC license.
1407
- * See the LICENSE file in the root directory of this source tree.
1408
- */
1409
- const __iconNode$e = [
1410
- [
1411
- "path",
1412
- {
1413
- d: "M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z",
1414
- key: "rib7q0"
1415
- }
1416
- ],
1417
- [
1418
- "path",
1419
- {
1420
- d: "M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z",
1421
- key: "1ymkrd"
1422
- }
1423
- ]
1424
- ];
1425
- const Quote = createLucideIcon("quote", __iconNode$e);
1390
+ const Plus = createLucideIcon("plus", __iconNode$e);
1426
1391
  /**
1427
1392
  * @license lucide-react v0.544.0 - ISC
1428
1393
  *
@@ -21457,7 +21422,7 @@ const CookieLife = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAACAAAAAgACAYAAA
21457
21422
  const CourseContinueMsg = (props) => {
21458
21423
  const { courseInfo, handleSendMessage } = props;
21459
21424
  return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-4", children: [
21460
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2 text-blue-600 font-bold text-sm", children: [
21425
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2 text-primary-600 font-bold text-sm", children: [
21461
21426
  /* @__PURE__ */ jsxRuntimeExports.jsx(Star, { className: "w-4 h-4" }),
21462
21427
  "欢迎回来~ 继续学习《",
21463
21428
  courseInfo.name,
@@ -21927,36 +21892,71 @@ const msgTypeSceneMap = {
21927
21892
  ]: "form_learn_task"
21928
21893
  /* FROM_LEARN_TASK */
21929
21894
  };
21930
- const API_PREFIX_MAP = {
21931
- // @ts-ignore
21932
- "/api/v1.0": void 0,
21933
- // @ts-ignore
21934
- "/api/v0.3": void 0,
21935
- // @ts-ignore
21936
- "/vod": void 0,
21937
- // @ts-ignore
21938
- "/ai-agent-app": void 0,
21939
- // @ts-ignore
21940
- "/message/user": void 0,
21941
- // @ts-ignore
21942
- "/chat": void 0,
21943
- // @ts-ignore
21944
- "/saas/chat": void 0,
21945
- // @ts-ignore
21946
- "/scene": void 0,
21947
- // @ts-ignore
21948
- "/api/start": void 0,
21949
- // @ts-ignore
21950
- "/api/release": void 0,
21951
- // @ts-ignore
21952
- "/cmd/template": void 0,
21953
- // @ts-ignore
21954
- "/api/v1/": void 0,
21955
- // @ts-ignore
21956
- "/api/v2/": void 0,
21957
- // 默认
21958
- // @ts-ignore
21959
- default: void 0
21895
+ const devEnvUrl$1 = {
21896
+ "VITE_BASE_API_URL": "https://gw-test.cloudlab.top/ai-agent-app",
21897
+ "VITE_BASE_RUNNER_API_URL": "https://runner-test.cloudlab.top",
21898
+ "VITE_BASE_CLOUD_LAB_URL": "https://lab-test.cloudlab.top",
21899
+ "VITE_BASE_RUNNER": "https://run-test.cloudlab.top",
21900
+ "VITE_BASE_QUIZ": "https://quiz-test.cloudlab.top",
21901
+ "VITE_BASE_VIDEO_LICENSE": "https://openapi-test.cloudlab.top",
21902
+ "VITE_BASE_AI_AGENT_URL": "https://gw-test.cloudlab.top",
21903
+ "VITE_BASE_VGEN_API_URL": "https://vgen-server-test.cloudlab.top",
21904
+ "VITE_BASE_VGEN_BLOG_URL": "https://vblog-test.cloudlab.top",
21905
+ "VITE_BASE_VGEN_NEW_AGENT": "https://v-agent-test.cloudlab.top",
21906
+ "VITE_BASE_CLOUD_WS_URL": "wss://lab-test.cloudlab.top",
21907
+ "VITE_BASE_AI_ENGINE_URL": "https://ai-engine-test.cloudlab.top",
21908
+ "VITE_BASE_CLOUD_MSG_URL": "https://api-test.cloudlab.top",
21909
+ "VITE_BASE_CLOUD_GATEWAY_URL": "https://gateway-test.cloudlab.top",
21910
+ "VITE_BASE_TBOX_ENTERPRISE_URL": "https://b.tbox.cn",
21911
+ "VITE_BASE_TBOX_COMMUNITY_URL": "https://www.tbox.cn",
21912
+ "VITE_BASE_VGEN_URL": "https://vgen-test.cloudlab.top",
21913
+ "VITE_BASE_VGEN_BLOG_LABCODE": "linux1",
21914
+ "VITE_BASE_VGEN_BLOG_CODE": "KiBjHH",
21915
+ "VITE_BASE_VGEN_BLOG_LINK": "https://linux1.test.cloudlab.top/os/KiBjHH",
21916
+ "VITE_BASE_WS_URL_PTY": "wss://pty-test.cloudlab.top",
21917
+ "VITE_BASE_API_URL_PTY": "https://pty-test.cloudlab.top",
21918
+ "VITE_BASE_CODE_PTY_NAMESPACE": "pty-test"
21919
+ };
21920
+ const proEnvUrl = {
21921
+ "VITE_BASE_RUNNER_API_URL": "https://runner.cloudlab.top",
21922
+ "VITE_BASE_CLOUD_LAB_URL": "https://lab.cloudlab.top",
21923
+ "VITE_BASE_RUNNER": "https://run.cloudlab.top",
21924
+ "VITE_BASE_QUIZ": "https://quiz.cloudlab.top",
21925
+ "VITE_BASE_VIDEO_LICENSE": "https://open-api.cloudlab.top",
21926
+ "VITE_BASE_AI_AGENT_URL": "https://gw.cloudlab.top",
21927
+ "VITE_BASE_VGEN_API_URL": "https://vgen-server.cloudlab.top",
21928
+ "VITE_BASE_VGEN_BLOG_URL": "https://vblog.cloudlab.top",
21929
+ "VITE_BASE_VGEN_NEW_AGENT": "https://v-agent.cloudlab.top",
21930
+ "VITE_BASE_CLOUD_WS_URL": "wss://lab.cloudlab.top",
21931
+ "VITE_BASE_AI_ENGINE_URL": "https://ai-engine.cloudlab.top",
21932
+ "VITE_BASE_CLOUD_MSG_URL": "https://api.cloudlab.top",
21933
+ "VITE_BASE_CLOUD_GATEWAY_URL": "https://gateway.cloudlab.top",
21934
+ "VITE_BASE_TBOX_ENTERPRISE_URL": "https://b.tbox.cn",
21935
+ "VITE_BASE_TBOX_COMMUNITY_URL": "https://www.tbox.cn",
21936
+ "VITE_BASE_VGEN_URL": "https://vgen.cloudlab.top",
21937
+ "VITE_BASE_VGEN_BLOG_LABCODE": "cloudlab",
21938
+ "VITE_BASE_VGEN_BLOG_CODE": "k891b1",
21939
+ "VITE_BASE_VGEN_BLOG_LINK": "https://cloudlab.beta.cloudlab.top/os/k891b1",
21940
+ "VITE_BASE_WS_URL_PTY": "wss://pty.cloudlab.top",
21941
+ "VITE_BASE_API_URL_PTY": "https://pty.cloudlab.top",
21942
+ "VITE_BASE_CODE_PTY_NAMESPACE": "pty-prod"
21943
+ };
21944
+ const API_PREFIX_MAP = (isDev) => {
21945
+ return {
21946
+ "/api/v1.0": isDev ? devEnvUrl$1.VITE_BASE_VGEN_API_URL : proEnvUrl.VITE_BASE_VGEN_API_URL,
21947
+ "/api/v0.3": isDev ? devEnvUrl$1.VITE_BASE_CLOUD_LAB_URL : proEnvUrl.VITE_BASE_CLOUD_LAB_URL,
21948
+ "/vod": isDev ? devEnvUrl$1.VITE_BASE_VIDEO_LICENSE : proEnvUrl.VITE_BASE_VIDEO_LICENSE,
21949
+ "/ai-agent-app": isDev ? devEnvUrl$1.VITE_BASE_AI_AGENT_URL : proEnvUrl.VITE_BASE_AI_AGENT_URL,
21950
+ "/message/user": isDev ? devEnvUrl$1.VITE_BASE_CLOUD_MSG_URL : proEnvUrl.VITE_BASE_CLOUD_MSG_URL,
21951
+ "/chat": isDev ? devEnvUrl$1.VITE_BASE_VGEN_NEW_AGENT : proEnvUrl.VITE_BASE_VGEN_NEW_AGENT,
21952
+ "/saas/chat": isDev ? devEnvUrl$1.VITE_BASE_VGEN_NEW_AGENT : proEnvUrl.VITE_BASE_VGEN_NEW_AGENT,
21953
+ "/scene": isDev ? devEnvUrl$1.VITE_BASE_VGEN_NEW_AGENT : proEnvUrl.VITE_BASE_VGEN_NEW_AGENT,
21954
+ "/api/start": isDev ? devEnvUrl$1.VITE_BASE_API_URL_PTY : proEnvUrl.VITE_BASE_API_URL_PTY,
21955
+ "/api/release": isDev ? devEnvUrl$1.VITE_BASE_API_URL_PTY : proEnvUrl.VITE_BASE_API_URL_PTY,
21956
+ "/cmd/template": isDev ? devEnvUrl$1.VITE_BASE_API_URL_PTY : proEnvUrl.VITE_BASE_API_URL_PTY,
21957
+ "/api/v1/": isDev ? devEnvUrl$1.VITE_BASE_AI_ENGINE_URL : proEnvUrl.VITE_BASE_AI_ENGINE_URL,
21958
+ "/api/v2/": isDev ? devEnvUrl$1.VITE_BASE_CLOUD_GATEWAY_URL : proEnvUrl.VITE_BASE_CLOUD_GATEWAY_URL
21959
+ };
21960
21960
  };
21961
21961
  const currentFeatures = [
21962
21962
  {
@@ -21965,12 +21965,12 @@ const currentFeatures = [
21965
21965
  icon: /* @__PURE__ */ jsxRuntimeExports.jsx(FileText, { className: "w-3.5 h-3.5" }),
21966
21966
  color: "text-blue-600"
21967
21967
  },
21968
- {
21969
- id: "card",
21970
- label: "知识卡片",
21971
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(PanelsTopLeft, { className: "w-3.5 h-3.5" }),
21972
- color: "text-indigo-600"
21973
- },
21968
+ // {
21969
+ // id: "card",
21970
+ // label: "知识卡片",
21971
+ // icon: <Layout className="w-3.5 h-3.5" />,
21972
+ // color: "text-indigo-600",
21973
+ // },
21974
21974
  // {
21975
21975
  // id: "ask",
21976
21976
  // label: "划线答疑",
@@ -22071,7 +22071,7 @@ const CourseStartMsg = (props) => {
22071
22071
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "h-px bg-gray-100" }),
22072
22072
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-4", children: [
22073
22073
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2", children: [
22074
- /* @__PURE__ */ jsxRuntimeExports.jsx(BookOpen, { className: "w-4 h-4 text-blue-500" }),
22074
+ /* @__PURE__ */ jsxRuntimeExports.jsx(BookOpen, { className: "w-4 h-4 text-primary-500" }),
22075
22075
  /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "text-[12px] font-bold text-gray-800", children: [
22076
22076
  "当前章节:",
22077
22077
  courseInfo.chapter
@@ -22085,8 +22085,8 @@ const CourseStartMsg = (props) => {
22085
22085
  onClick: () => handleSendMessage({ input: item.label }),
22086
22086
  className: "flex items-center gap-2 group hover:translate-x-1 transition-all active:scale-95",
22087
22087
  children: [
22088
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-1.5 h-1.5 rounded-full bg-blue-400 group-hover:bg-blue-600 group-hover:scale-125 transition-all" }),
22089
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[12px] text-gray-600 group-hover:text-blue-600 group-hover:font-bold group-hover:underline underline-offset-4 decoration-blue-200 text-left transition-all", children: item.label })
22088
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-1.5 h-1.5 rounded-full bg-primary-400 group-hover:bg-primary-600 group-hover:scale-125 transition-all" }),
22089
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[12px] text-gray-600 group-hover:text-primary-600 group-hover:font-bold group-hover:underline underline-offset-4 decoration-primary-200 text-left transition-all", children: item.label })
22090
22090
  ]
22091
22091
  },
22092
22092
  item.id
@@ -22112,7 +22112,7 @@ const CourseStartMsg = (props) => {
22112
22112
  ].map((link2) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
22113
22113
  "button",
22114
22114
  {
22115
- className: "text-[11px] text-gray-500 hover:text-blue-600 flex items-center gap-1.5 transition-colors",
22115
+ className: "text-[11px] text-gray-500 hover:text-primary-600 flex items-center gap-1.5 transition-colors",
22116
22116
  children: [
22117
22117
  link2.icon,
22118
22118
  link2.label
@@ -25509,19 +25509,16 @@ const axiosInstance = axios.create({
25509
25509
  });
25510
25510
  axiosInstance.interceptors.request.use(
25511
25511
  (config) => {
25512
+ var _a2;
25512
25513
  const { url } = config;
25513
- for (const [prefix2, baseURL] of Object.entries(API_PREFIX_MAP)) {
25514
+ for (const [prefix2, baseURL] of Object.entries(API_PREFIX_MAP(window.isRunInDev))) {
25514
25515
  if (url == null ? void 0 : url.startsWith(prefix2)) {
25515
- console.log("prefix", prefix2);
25516
- console.log("baseURL", baseURL);
25517
25516
  config.baseURL = baseURL;
25518
25517
  break;
25519
25518
  }
25520
25519
  }
25521
- console.log("config.url", config.url);
25522
- console.log("API_PREFIX_MAP", API_PREFIX_MAP);
25523
25520
  if (!config.baseURL) {
25524
- config.baseURL = API_PREFIX_MAP.default;
25521
+ config.baseURL = (_a2 = API_PREFIX_MAP(window.isRunInDev)) == null ? void 0 : _a2["/api/v1.0"];
25525
25522
  }
25526
25523
  const tokenStr = getTokenFromCookie();
25527
25524
  const token2 = localStorage.getItem(TOKEN) || tokenStr;
@@ -25599,15 +25596,12 @@ axiosInstance.interceptors.response.use(
25599
25596
  function sseForChat(config, events) {
25600
25597
  var _a2;
25601
25598
  let baseUrl = "";
25602
- for (const [prefix2, baseURL] of Object.entries(API_PREFIX_MAP)) {
25599
+ for (const [prefix2, baseURL] of Object.entries(API_PREFIX_MAP(window.isRunInDev))) {
25603
25600
  if ((_a2 = config.url) == null ? void 0 : _a2.startsWith(prefix2)) {
25604
25601
  baseUrl = baseURL;
25605
25602
  break;
25606
25603
  }
25607
25604
  }
25608
- console.log("config.url", config.url);
25609
- console.log("API_PREFIX_MAP", API_PREFIX_MAP);
25610
- console.log("baseUrl", baseUrl);
25611
25605
  let fullUrl = `${baseUrl}${config.url}`;
25612
25606
  const token2 = localStorage.getItem(TOKEN);
25613
25607
  const tokenStr = getTokenFromCookie();
@@ -55542,20 +55536,20 @@ const MyReactMarkdown = memo$1(({ children }) => {
55542
55536
  }
55543
55537
  ) });
55544
55538
  });
55545
- const searchResults = "_searchResults_74xay_32";
55546
- const searchResultsHeader = "_searchResultsHeader_74xay_32";
55547
- const searchResultsTitle = "_searchResultsTitle_74xay_38";
55548
- const resultTitle = "_resultTitle_74xay_43";
55549
- const resultDot = "_resultDot_74xay_47";
55550
- const searchResultsActions = "_searchResultsActions_74xay_57";
55551
- const actionButton = "_actionButton_74xay_62";
55552
- const refreshButton = "_refreshButton_74xay_74";
55553
- const externalButton = "_externalButton_74xay_81";
55554
- const clearButton = "_clearButton_74xay_88";
55555
- const resultsList = "_resultsList_74xay_95";
55556
- const resultsFooter = "_resultsFooter_74xay_241";
55557
- const footerText = "_footerText_74xay_249";
55558
- const footerActions = "_footerActions_74xay_253";
55539
+ const searchResults = "_searchResults_1ec6f_32";
55540
+ const searchResultsHeader = "_searchResultsHeader_1ec6f_32";
55541
+ const searchResultsTitle = "_searchResultsTitle_1ec6f_38";
55542
+ const resultTitle = "_resultTitle_1ec6f_43";
55543
+ const resultDot = "_resultDot_1ec6f_47";
55544
+ const searchResultsActions = "_searchResultsActions_1ec6f_57";
55545
+ const actionButton = "_actionButton_1ec6f_62";
55546
+ const refreshButton = "_refreshButton_1ec6f_74";
55547
+ const externalButton = "_externalButton_1ec6f_81";
55548
+ const clearButton = "_clearButton_1ec6f_88";
55549
+ const resultsList = "_resultsList_1ec6f_95";
55550
+ const resultsFooter = "_resultsFooter_1ec6f_241";
55551
+ const footerText = "_footerText_1ec6f_249";
55552
+ const footerActions = "_footerActions_1ec6f_253";
55559
55553
  const styles$2 = {
55560
55554
  searchResults,
55561
55555
  searchResultsHeader,
@@ -55673,7 +55667,7 @@ const BiliRecommend = (props) => {
55673
55667
  ),
55674
55668
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute inset-0 bg-black/10 group-hover/video:bg-black/30 transition-colors" }),
55675
55669
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute bottom-1 right-1 rounded bg-black/70 px-1 py-0.5 text-[9px] font-medium text-white backdrop-blur-sm", children: result.duration }),
55676
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute inset-0 flex items-center justify-center opacity-0 group-hover/video:opacity-100 transition-opacity", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex h-7 w-7 items-center justify-center rounded-full bg-primary/50 text-primary-foreground", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Play, { className: "h-3.5 w-3.5 text-blue-600" }) }) })
55670
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute inset-0 flex items-center justify-center opacity-0 group-hover/video:opacity-100 transition-opacity", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex h-7 w-7 items-center justify-center rounded-full bg-primary/50 text-primary-foreground", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Play, { className: "h-3.5 w-3.5 text-primary-600" }) }) })
55677
55671
  ] }),
55678
55672
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex h-full flex-1 flex-col justify-between py-0.5", children: [
55679
55673
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-1", children: [
@@ -55727,18 +55721,18 @@ const BiliRecommend = (props) => {
55727
55721
  ] }) });
55728
55722
  };
55729
55723
  const BiliRecommend$1 = memo$1(BiliRecommend);
55730
- const modalWrapper = "_modalWrapper_1efyv_32";
55731
- const modalTipWrapper = "_modalTipWrapper_1efyv_37";
55732
- const vgenModal = "_vgenModal_1efyv_40";
55733
- const modalContent = "_modalContent_1efyv_49";
55734
- const modalTitleLeft = "_modalTitleLeft_1efyv_52";
55735
- const modalTitle = "_modalTitle_1efyv_52";
55736
- const modalContentText = "_modalContentText_1efyv_71";
55737
- const modalFooter = "_modalFooter_1efyv_77";
55738
- const btnOk = "_btnOk_1efyv_85";
55739
- const btnCancel = "_btnCancel_1efyv_90";
55740
- const blackMode = "_blackMode_1efyv_101";
55741
- const modalLeft = "_modalLeft_1efyv_107";
55724
+ const modalWrapper = "_modalWrapper_143da_32";
55725
+ const modalTipWrapper = "_modalTipWrapper_143da_37";
55726
+ const vgenModal = "_vgenModal_143da_40";
55727
+ const modalContent = "_modalContent_143da_49";
55728
+ const modalTitleLeft = "_modalTitleLeft_143da_52";
55729
+ const modalTitle = "_modalTitle_143da_52";
55730
+ const modalContentText = "_modalContentText_143da_71";
55731
+ const modalFooter = "_modalFooter_143da_77";
55732
+ const btnOk = "_btnOk_143da_85";
55733
+ const btnCancel = "_btnCancel_143da_90";
55734
+ const blackMode = "_blackMode_143da_101";
55735
+ const modalLeft = "_modalLeft_143da_107";
55742
55736
  const styles$1 = {
55743
55737
  modalWrapper,
55744
55738
  modalTipWrapper,
@@ -59135,6 +59129,41 @@ const VgenModal = (props) => {
59135
59129
  }
59136
59130
  ) });
59137
59131
  };
59132
+ const parseQuotedContent = (content2) => {
59133
+ const segments = [];
59134
+ const regex = /<<<([\s\S]*?)>>>/g;
59135
+ let lastIndex = 0;
59136
+ let match5;
59137
+ while ((match5 = regex.exec(content2)) !== null) {
59138
+ if (match5.index > lastIndex) {
59139
+ segments.push({
59140
+ type: "text",
59141
+ content: content2.slice(lastIndex, match5.index)
59142
+ });
59143
+ }
59144
+ segments.push({
59145
+ type: "quoted",
59146
+ content: match5[1].trim()
59147
+ });
59148
+ lastIndex = regex.lastIndex;
59149
+ }
59150
+ if (lastIndex < content2.length) {
59151
+ segments.push({
59152
+ type: "text",
59153
+ content: content2.slice(lastIndex)
59154
+ });
59155
+ }
59156
+ return segments;
59157
+ };
59158
+ const RenderContentWithQuotes = memo$1(({ content: content2 }) => {
59159
+ const segments = useMemo$1(() => parseQuotedContent(content2), [content2]);
59160
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: segments.map((segment, index2) => {
59161
+ if (segment.type === "quoted") {
59162
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "mb-1 qouteSpan relative inline-flex items-center mx-1 pl-4 pr-2 py-1 rounded-md text-sm font-medium bg-primary-100 text-primary-600 border border-primary-200 select-none transition-all", children: segment.content.length > 10 ? segment.content.substring(0, 10) + "..." : segment.content }, index2);
59163
+ }
59164
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "whitespace-pre-wrap", children: segment.content }, index2);
59165
+ }) });
59166
+ });
59138
59167
  const formSubmitTextMap = {
59139
59168
  [msgType.FROM_LEARN_PATH]: "定制学习路径",
59140
59169
  [msgType.FROM_KNOWLEDGE_CARD]: "生成知识点",
@@ -59164,7 +59193,8 @@ const MessageContent = (props) => {
59164
59193
  toCheckVideo,
59165
59194
  recommendVideos,
59166
59195
  handleSend,
59167
- isTaskPage
59196
+ isTaskPage,
59197
+ isDev
59168
59198
  } = props;
59169
59199
  const [sessionToKnowledgeModalVisible, setSessionToKnowledgeModalVisible] = useState(false);
59170
59200
  const [sessionToKnowledgeLoading, setSessionToKnowledgeLoading] = useState(false);
@@ -59267,8 +59297,11 @@ const MessageContent = (props) => {
59267
59297
  setConfirmAnalyzeModalVisible == null ? void 0 : setConfirmAnalyzeModalVisible(true);
59268
59298
  setAnalyzeMsgShouldSave == null ? void 0 : setAnalyzeMsgShouldSave(true);
59269
59299
  };
59300
+ const vgenBaseUrl = useMemo$1(() => {
59301
+ return isDev ? devEnvUrl$1.VITE_BASE_VGEN_URL : proEnvUrl.VITE_BASE_VGEN_URL;
59302
+ }, [isDev, devEnvUrl$1, proEnvUrl]);
59270
59303
  const toCheckStudyPath = (extraInfo) => {
59271
- const url = `${void 0}/editStudyPath/${extraInfo.id}`;
59304
+ const url = `${vgenBaseUrl}/editStudyPath/${extraInfo.id}`;
59272
59305
  window.open(url, "_blank");
59273
59306
  };
59274
59307
  const toEditTask = (extraInfo) => {
@@ -59283,10 +59316,10 @@ const MessageContent = (props) => {
59283
59316
  message.loading("视频获取中...");
59284
59317
  const { viewDetail, shareUserId, recordId } = video;
59285
59318
  if (viewDetail) {
59286
- const url = `${void 0}/mainPage?recordId=${recordId}`;
59319
+ const url = `${vgenBaseUrl}/mainPage?recordId=${recordId}`;
59287
59320
  window.open(url, "_blank");
59288
59321
  } else {
59289
- const url = `${void 0}/mainPage?recordId=${recordId}&fromShare=true&shareUserId=${shareUserId}`;
59322
+ const url = `${vgenBaseUrl}/mainPage?recordId=${recordId}&fromShare=true&shareUserId=${shareUserId}`;
59290
59323
  window.open(url, "_blank");
59291
59324
  }
59292
59325
  };
@@ -59319,28 +59352,28 @@ const MessageContent = (props) => {
59319
59352
  {
59320
59353
  className: cn(
59321
59354
  "w-10 h-10 rounded-2xl flex items-center justify-center shrink-0 shadow-sm",
59322
- msg.role === "user" ? "bg-blue-600 text-white" : "bg-white text-blue-600 border border-gray-100"
59355
+ msg.role === "user" ? "bg-primary-600 text-white" : "bg-white text-primary-600 border border-gray-100"
59323
59356
  ),
59324
59357
  children: msg.role === "user" ? /* @__PURE__ */ jsxRuntimeExports.jsx(User, { className: "w-5 h-5" }) : /* @__PURE__ */ jsxRuntimeExports.jsx(Bot, { className: "w-5 h-5" })
59325
59358
  }
59326
59359
  ),
59327
- thinkContent && !answerIsDone && index2 === messages2.length - 1 ? /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: cn("max-w-[85%] bg-gradient-to-r from-blue-50 to-purple-50 px-4 py-3 rounded-lg border border-blue-100 shadow-sm relative overflow-hidden", "chat-animate-pulse"), children: [
59328
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: cn("absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-blue-400 via-purple-400 to-pink-400", "chat-animate-progress") }),
59360
+ thinkContent && !answerIsDone && index2 === messages2.length - 1 ? /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: cn("max-w-[85%] bg-gradient-to-r from-primary-50 to-purple-50 px-4 py-3 rounded-lg border border-primary-100 shadow-sm relative overflow-hidden", "chat-animate-pulse"), children: [
59361
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: cn("absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-primary-400 via-purple-400 to-pink-400", "chat-animate-progress") }),
59329
59362
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative z-10 text-[13px]", children: [
59330
59363
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center mb-2", children: [
59331
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: cn("w-2 h-2 bg-blue-500 rounded-full mr-2", "chat-animate-bounce") }),
59364
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: cn("w-2 h-2 bg-primary-500 rounded-full mr-2", "chat-animate-bounce") }),
59332
59365
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: cn("w-2 h-2 bg-purple-500 rounded-full mr-2", "chat-animate-bounce"), style: { animationDelay: "0.2s" } }),
59333
59366
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: cn("w-2 h-2 bg-pink-500 rounded-full", "chat-animate-bounce"), style: { animationDelay: "0.4s" } }),
59334
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "ml-2 text-sm font-medium text-blue-600", children: "AI 思考中..." })
59367
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "ml-2 text-sm font-medium text-primary-600", children: "AI 思考中..." })
59335
59368
  ] }),
59336
59369
  /* @__PURE__ */ jsxRuntimeExports.jsx(MyReactMarkdown, { children: thinkContent })
59337
59370
  ] }),
59338
59371
  recommendScene && recommendSceneData ? /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "mt-4", children: [
59339
59372
  recommendScene === agentScene.SYSTEMATIZE_LEARNING && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
59340
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex items-center mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm font-medium text-blue-600", children: "学习路径正在来的路上,可以先试试看:" }) }),
59373
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex items-center mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm font-medium text-primary-600", children: "学习路径正在来的路上,可以先试试看:" }) }),
59341
59374
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-1 gap-4", children: recommendSceneData.map((path2) => /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "bg-white rounded-xl shadow-sm border border-gray-200 p-6 hover:shadow-md transition-all group relative overflow-hidden", children: [
59342
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-blue-400 via-purple-400 to-pink-400" }),
59343
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-between items-start mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: path2.name, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-lg font-bold text-gray-900 line-clamp-1 group-hover:text-blue-600 transition-colors", children: path2.name }) }) }) }),
59375
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-primary-400 via-purple-400 to-pink-400" }),
59376
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-between items-start mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: path2.name, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-lg font-bold text-gray-900 line-clamp-1 group-hover:text-primary-600 transition-colors", children: path2.name }) }) }) }),
59344
59377
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: path2.desc, children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm text-gray-700 line-clamp-2", children: path2.desc }) }) }),
59345
59378
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex gap-2", children: [
59346
59379
  /* @__PURE__ */ jsxRuntimeExports.jsxs(
@@ -59356,7 +59389,7 @@ const MessageContent = (props) => {
59356
59389
  window.open(url, "_blank");
59357
59390
  }
59358
59391
  },
59359
- className: "flex-1 flex items-center justify-center px-3 py-2 bg-gradient-to-r from-blue-50 via-purple-50 to-pink-50 text-blue-600 text-sm font-medium rounded-lg hover:from-blue-100 hover:via-purple-100 hover:to-pink-100 transition-all shadow-sm hover:shadow",
59392
+ className: "flex-1 flex items-center justify-center px-3 py-2 bg-gradient-to-r from-primary-50 via-purple-50 to-pink-50 text-primary-600 text-sm font-medium rounded-lg hover:from-primary-100 hover:via-purple-100 hover:to-pink-100 transition-all shadow-sm hover:shadow",
59360
59393
  children: [
59361
59394
  /* @__PURE__ */ jsxRuntimeExports.jsx(CirclePlay, { className: "h-4 w-4 mr-2" }),
59362
59395
  "开始学习"
@@ -59370,7 +59403,7 @@ const MessageContent = (props) => {
59370
59403
  const url = `${window.location.origin}/editStudyPath/${path2.id}`;
59371
59404
  window.open(url, "_blank");
59372
59405
  },
59373
- className: "flex items-center justify-center px-3 py-2 bg-white border border-gray-200 text-gray-600 text-sm font-medium rounded-lg hover:bg-gray-50 hover:border-blue-300 transition-colors",
59406
+ className: "flex items-center justify-center px-3 py-2 bg-white border border-gray-200 text-gray-600 text-sm font-medium rounded-lg hover:bg-gray-50 hover:border-primary-300 transition-colors",
59374
59407
  title: "编辑路径",
59375
59408
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(PenLine, { className: "h-4 w-4" })
59376
59409
  }
@@ -59379,19 +59412,19 @@ const MessageContent = (props) => {
59379
59412
  ] }, path2.id)) })
59380
59413
  ] }),
59381
59414
  recommendScene === agentScene.SKILL_TO_KNOWLEDGE && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
59382
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex items-center mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm font-medium text-blue-600", children: "知识点正在来的路上,可以先试试看:" }) }),
59415
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex items-center mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm font-medium text-primary-600", children: "知识点正在来的路上,可以先试试看:" }) }),
59383
59416
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-1 gap-4", children: recommendSceneData.map((item) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
59384
59417
  "div",
59385
59418
  {
59386
59419
  className: "bg-white rounded-xl shadow-sm border border-gray-200 p-6 hover:shadow-md transition-all group relative overflow-hidden",
59387
59420
  children: [
59388
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-blue-400 via-purple-400 to-pink-400" }),
59421
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-primary-400 via-purple-400 to-pink-400" }),
59389
59422
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex justify-between items-start mb-4", children: [
59390
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: item.title, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-lg font-bold text-gray-900 line-clamp-1 group-hover:text-blue-600 transition-colors", children: item.title }) }) }),
59423
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: item.title, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-lg font-bold text-gray-900 line-clamp-1 group-hover:text-primary-600 transition-colors", children: item.title }) }) }),
59391
59424
  /* @__PURE__ */ jsxRuntimeExports.jsx(
59392
59425
  "div",
59393
59426
  {
59394
- className: `px-2 py-1 text-xs font-medium rounded-full ${item.type === "conceptual_knowledge" ? "bg-blue-100 text-blue-700" : "bg-purple-100 text-purple-700"}`,
59427
+ className: `px-2 py-1 text-xs font-medium rounded-full ${item.type === "conceptual_knowledge" ? "bg-primary-100 text-primary-700" : "bg-purple-100 text-purple-700"}`,
59395
59428
  children: item.type === "conceptual_knowledge" ? "概念型" : "实操型"
59396
59429
  }
59397
59430
  )
@@ -59408,7 +59441,7 @@ const MessageContent = (props) => {
59408
59441
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "mt-4 flex gap-2", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
59409
59442
  "button",
59410
59443
  {
59411
- className: "flex-1 flex items-center justify-center px-3 py-2 bg-gradient-to-r from-blue-50 via-purple-50 to-pink-50 text-blue-600 text-sm font-medium rounded-lg hover:from-blue-100 hover:via-purple-100 hover:to-pink-100 transition-all shadow-sm hover:shadow",
59444
+ className: "flex-1 flex items-center justify-center px-3 py-2 bg-gradient-to-r from-primary-50 via-purple-50 to-pink-50 text-primary-600 text-sm font-medium rounded-lg hover:from-primary-100 hover:via-purple-100 hover:to-pink-100 transition-all shadow-sm hover:shadow",
59412
59445
  onClick: () => {
59413
59446
  const { viewDetail, shareUserId, knowledgeId } = item;
59414
59447
  if (viewDetail) {
@@ -59428,7 +59461,7 @@ const MessageContent = (props) => {
59428
59461
  )) })
59429
59462
  ] }),
59430
59463
  recommendScene === agentScene.QUESTION_GENERATION && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
59431
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex items-center mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm font-medium text-blue-600", children: "练习题正在来的路上,可以先试试看:" }) }),
59464
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex items-center mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm font-medium text-primary-600", children: "练习题正在来的路上,可以先试试看:" }) }),
59432
59465
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-1 gap-4", children: recommendSceneData.map((ex) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
59433
59466
  motion.div,
59434
59467
  {
@@ -59436,8 +59469,8 @@ const MessageContent = (props) => {
59436
59469
  animate: { opacity: 1, x: 0 },
59437
59470
  className: "bg-white rounded-xl shadow-sm border border-gray-200 p-6 hover:shadow-md transition-all group relative overflow-hidden cursor-pointer",
59438
59471
  children: [
59439
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-blue-400 via-purple-400 to-pink-400" }),
59440
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-between items-start mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { title: ex.topic, className: "text-lg font-bold text-gray-900 line-clamp-1 group-hover:text-blue-600 transition-colors", children: ex.topic }) }) }),
59472
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-primary-400 via-purple-400 to-pink-400" }),
59473
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-between items-start mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { title: ex.topic, className: "text-lg font-bold text-gray-900 line-clamp-1 group-hover:text-primary-600 transition-colors", children: ex.topic }) }) }),
59441
59474
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "mb-4 flex items-center gap-4 text-sm text-gray-400 font-medium", children: [
59442
59475
  /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "flex items-center gap-1.5", children: [
59443
59476
  getQuestionTypeIcon(ex.type),
@@ -59457,7 +59490,7 @@ const MessageContent = (props) => {
59457
59490
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex gap-2", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
59458
59491
  "button",
59459
59492
  {
59460
- className: "flex-1 flex items-center justify-center px-3 py-2 bg-gradient-to-r from-blue-50 via-purple-50 to-pink-50 text-blue-600 text-sm font-medium rounded-lg hover:from-blue-100 hover:via-purple-100 hover:to-pink-100 transition-all shadow-sm hover:shadow",
59493
+ className: "flex-1 flex items-center justify-center px-3 py-2 bg-gradient-to-r from-primary-50 via-purple-50 to-pink-50 text-primary-600 text-sm font-medium rounded-lg hover:from-primary-100 hover:via-purple-100 hover:to-pink-100 transition-all shadow-sm hover:shadow",
59461
59494
  onClick: () => {
59462
59495
  const url = `${window.location.origin}/mySpaces/practices?questionIdForRightNow=${ex.id}`;
59463
59496
  localStorage.setItem("questionIdForRightNowData", ex);
@@ -59486,11 +59519,11 @@ const MessageContent = (props) => {
59486
59519
  {
59487
59520
  className: cn(
59488
59521
  "w-full px-4 rounded-[24px] text-[13px] leading-relaxed shadow-sm",
59489
- msg.role === "user" ? "bg-blue-600 text-white rounded-tr-none" : "py-4 bg-white text-gray-800 border border-gray-100 rounded-tl-none"
59522
+ msg.role === "user" ? "bg-primary-600 text-white rounded-tr-none" : "bg-white text-gray-800 border border-gray-100 rounded-tl-none"
59490
59523
  ),
59491
59524
  children: [
59492
59525
  msg.messageType === msgType.NODE && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "px-1 py-2 whitespace-pre-wrap break-words", children: msg.content }),
59493
- (msg.messageType === msgType.TEXT || !msg.messageType) && typeof (msg == null ? void 0 : msg.content) === "string" && ((_a2 = msg == null ? void 0 : msg.content) == null ? void 0 : _a2.indexOf("<think>")) === -1 ? msg.role === "user" ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "px-1 py-2 whitespace-pre-wrap break-words text-[13px]", children: msg.content }) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative text-[13px]", children: /* @__PURE__ */ jsxRuntimeExports.jsx(MyReactMarkdown, { children: msg.content }) }) : msg.messageType === msgType.TEXT || !msg.messageType ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "py-4 text-red-400", children: "思考已中断..." }) : null,
59526
+ (msg.messageType === msgType.TEXT || !msg.messageType) && typeof (msg == null ? void 0 : msg.content) === "string" && ((_a2 = msg == null ? void 0 : msg.content) == null ? void 0 : _a2.indexOf("<think>")) === -1 ? msg.role === "user" ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "px-1 py-2 whitespace-pre-wrap break-words", children: /* @__PURE__ */ jsxRuntimeExports.jsx(RenderContentWithQuotes, { content: msg.content, role: msg.role }) }) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative", children: /* @__PURE__ */ jsxRuntimeExports.jsx(MyReactMarkdown, { children: msg.content }) }) : msg.messageType === msgType.TEXT || !msg.messageType ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "py-4 text-red-400", children: "思考已中断..." }) : null,
59494
59527
  msg.messageType === msgType.FROM_PARSE_VIDEO && (extraInfo == null ? void 0 : extraInfo.form) && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "py-4 italic text-purple-600", children: extraInfo.form.url ? "视频解析请求" : "视频推荐" }),
59495
59528
  msg.messageType === msgType.RECOMMEND_VIDEO && (extraInfo == null ? void 0 : extraInfo.form) && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "py-4 italic text-purple-600", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
59496
59529
  BiliRecommend$1,
@@ -59804,7 +59837,7 @@ const MessageContent = (props) => {
59804
59837
  type: "primary",
59805
59838
  disabled: studyPathSaving,
59806
59839
  loading: studyPathSaving,
59807
- className: "w-full bg-blue-600 mt-2 flex items-center justify-center px-4 py-4 text-white text-sm font-bold shadow-md hover:shadow-lg disabled:opacity-50 disabled:shadow-none transform active:scale-[0.98]",
59840
+ className: "w-full bg-primary-600 mt-2 flex items-center justify-center px-4 py-4 text-white text-sm font-bold shadow-md hover:shadow-lg disabled:opacity-50 disabled:shadow-none transform active:scale-[0.98]",
59808
59841
  children: [
59809
59842
  /* @__PURE__ */ jsxRuntimeExports.jsx(Zap, { className: "h-4 w-4 mr-2" }),
59810
59843
  "保存路径"
@@ -59831,10 +59864,10 @@ const MessageContent = (props) => {
59831
59864
  "button",
59832
59865
  {
59833
59866
  onClick: () => {
59834
- const url = `${void 0}/studyMap/${extraInfo.id}`;
59867
+ const url = `${vgenBaseUrl}/studyMap/${extraInfo.id}`;
59835
59868
  window.open(url, "_blank");
59836
59869
  },
59837
- className: "bg-blue-600 hover:bg-blue-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",
59870
+ className: "bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",
59838
59871
  children: "去学习"
59839
59872
  }
59840
59873
  )
@@ -59849,10 +59882,10 @@ const MessageContent = (props) => {
59849
59882
  "button",
59850
59883
  {
59851
59884
  onClick: () => {
59852
- const url = `${void 0}/knowledgeDetailPage/${extraInfo.knowledgeId}`;
59885
+ const url = `${vgenBaseUrl}/knowledgeDetailPage/${extraInfo.knowledgeId}`;
59853
59886
  window.open(url, "_blank");
59854
59887
  },
59855
- className: "bg-blue-600 hover:bg-blue-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",
59888
+ className: "bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",
59856
59889
  children: "立即查看"
59857
59890
  }
59858
59891
  )
@@ -59872,7 +59905,7 @@ const MessageContent = (props) => {
59872
59905
  e.stopPropagation();
59873
59906
  toCheckQuestions == null ? void 0 : toCheckQuestions(extraInfo);
59874
59907
  },
59875
- className: "whitespace-nowrap bg-blue-600 hover:bg-blue-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",
59908
+ className: "whitespace-nowrap bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",
59876
59909
  children: [
59877
59910
  "去答题 (共",
59878
59911
  extraInfo.questionCenterIds.length,
@@ -59885,12 +59918,12 @@ const MessageContent = (props) => {
59885
59918
  msg.messageType === msgType.REL_RECORD && extraInfo && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "py-4", children: [
59886
59919
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "pt-4 max-w-[300px]", children: [
59887
59920
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex gap-2 items-start mb-2", children: [
59888
- /* @__PURE__ */ jsxRuntimeExports.jsx(Video, { className: "w-[44px] h-[26px] text-blue-400" }),
59921
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Video, { className: "w-[44px] h-[26px] text-primary-400" }),
59889
59922
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { title: extraInfo.title, className: "text-[16px] font-bold text-gray-900 line-clamp-1", children: extraInfo.title })
59890
59923
  ] }),
59891
59924
  /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-sm text-gray-500 mb-2 leading-relaxed line-clamp-3", children: "点击查看视频分析结果,获取详细的视频内容解析和学习建议。" }),
59892
59925
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-between pt-4 border-t border-gray-50", children: [
59893
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[12px] font-bold text-blue-400 uppercase tracking-wider" }),
59926
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[12px] font-bold text-primary-400 uppercase tracking-wider" }),
59894
59927
  /* @__PURE__ */ jsxRuntimeExports.jsxs(
59895
59928
  "button",
59896
59929
  {
@@ -59898,7 +59931,7 @@ const MessageContent = (props) => {
59898
59931
  e.stopPropagation();
59899
59932
  toCheckVideo == null ? void 0 : toCheckVideo(extraInfo.recordId || extraInfo.id);
59900
59933
  },
59901
- className: "bg-blue-600 hover:bg-blue-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",
59934
+ className: "bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",
59902
59935
  children: [
59903
59936
  "查看视频",
59904
59937
  /* @__PURE__ */ jsxRuntimeExports.jsx(ArrowRight, { className: "w-3.5 h-3.5" })
@@ -59909,13 +59942,13 @@ const MessageContent = (props) => {
59909
59942
  ] }),
59910
59943
  (recommendVideos == null ? void 0 : recommendVideos.length) && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "mt-4 max-w-[300px] pt-4 border-t border-gray-100", children: [
59911
59944
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2 mb-3", children: [
59912
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-1 h-4 bg-gradient-to-b from-blue-400 to-blue-600 rounded-full" }),
59945
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-1 h-4 bg-gradient-to-b from-primary-400 to-primary-600 rounded-full" }),
59913
59946
  /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm font-bold text-gray-800", children: "视频拼命解析中,先来看看这些吧~" })
59914
59947
  ] }),
59915
59948
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "space-y-2", children: recommendVideos.map((video) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
59916
59949
  "div",
59917
59950
  {
59918
- className: "flex items-center gap-3 p-2.5 rounded-xl bg-gradient-to-r from-gray-50 to-white hover:from-blue-50 hover:to-blue-50 transition-all duration-200 cursor-pointer group/item border border-gray-100 hover:border-blue-200 hover:shadow-md",
59951
+ className: "flex items-center gap-3 p-2.5 rounded-xl bg-gradient-to-r from-gray-50 to-white hover:from-primary-50 hover:to-primary-50 transition-all duration-200 cursor-pointer group/item border border-gray-100 hover:border-primary-200 hover:shadow-md",
59919
59952
  onClick: (e) => {
59920
59953
  e.stopPropagation();
59921
59954
  recommendVideoSelect(video);
@@ -59930,7 +59963,7 @@ const MessageContent = (props) => {
59930
59963
  }
59931
59964
  ),
59932
59965
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex-1 min-w-0", children: [
59933
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { title: video.title, className: "text-sm font-semibold text-gray-900 line-clamp-2 group-hover/item:text-blue-600 transition-colors", children: video.title }),
59966
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { title: video.title, className: "text-sm font-semibold text-gray-900 line-clamp-2 group-hover/item:text-primary-600 transition-colors", children: video.title }),
59934
59967
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2 mt-1", children: [
59935
59968
  /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-xs text-gray-500 whitespace-nowrap", children: video.createTime.split(" ")[0] }),
59936
59969
  /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-xs text-gray-300", children: "•" }),
@@ -59940,7 +59973,7 @@ const MessageContent = (props) => {
59940
59973
  ] })
59941
59974
  ] })
59942
59975
  ] }),
59943
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "opacity-0 group-hover/item:opacity-100 transition-opacity", children: /* @__PURE__ */ jsxRuntimeExports.jsx(ArrowRight, { className: "w-4 h-4 text-blue-500" }) })
59976
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "opacity-0 group-hover/item:opacity-100 transition-opacity", children: /* @__PURE__ */ jsxRuntimeExports.jsx(ArrowRight, { className: "w-4 h-4 text-primary-500" }) })
59944
59977
  ]
59945
59978
  },
59946
59979
  video.recordId
@@ -59982,7 +60015,7 @@ const MessageContent = (props) => {
59982
60015
  const url = `${window.location.origin}/taskManagement`;
59983
60016
  window.open(url, "_blank");
59984
60017
  },
59985
- className: "bg-blue-600 hover:bg-blue-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",
60018
+ className: "bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",
59986
60019
  children: [
59987
60020
  "查看任务",
59988
60021
  /* @__PURE__ */ jsxRuntimeExports.jsx(ArrowRight, { className: "w-3.5 h-3.5" })
@@ -60067,16 +60100,16 @@ const MessageContent = (props) => {
60067
60100
  onClick: () => {
60068
60101
  handleSend({ input: wholeTip, scene: item.scene });
60069
60102
  },
60070
- className: "w-full group/recommend flex items-center justify-between p-4 bg-white/80 backdrop-blur-sm border border-slate-100 rounded-xl hover:border-blue-200 hover:bg-blue-50/30 transition-all duration-300 text-left shadow-sm hover:shadow-md",
60103
+ className: "w-full group/recommend flex items-center justify-between p-4 bg-white/80 backdrop-blur-sm border border-slate-100 rounded-xl hover:border-primary-200 hover:bg-primary-50/30 transition-all duration-300 text-left shadow-sm hover:shadow-md",
60071
60104
  children: [
60072
60105
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-3", children: [
60073
60106
  Icon2 && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-sm px-2 py-1.5 flex items-center gap-1 transition-colors rounded-md bg-primary/10 text-primary border border-primary/20", children: [
60074
60107
  /* @__PURE__ */ jsxRuntimeExports.jsx(Icon2, { className: `${sceneIconColorMap[item.scene]} w-5 h-5` }),
60075
60108
  sceneTitleMap[item.scene]
60076
60109
  ] }),
60077
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { title: item.topic, className: "flex-1 text-[15px] text-slate-700 font-medium group-hover/recommend:text-blue-600 transition-colors line-clamp-1", children: wholeTip })
60110
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { title: item.topic, className: "flex-1 text-[15px] text-slate-700 font-medium group-hover/recommend:text-primary-600 transition-colors line-clamp-1", children: wholeTip })
60078
60111
  ] }),
60079
- /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon, { className: "text-slate-300 group-hover/recommend:text-blue-400 opacity-100 group-hover/recommend:opacity-100 -translate-x-2 group-hover/recommend:translate-x-0 transition-all" })
60112
+ /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon, { className: "text-slate-300 group-hover/recommend:text-primary-400 opacity-100 group-hover/recommend:opacity-100 -translate-x-2 group-hover/recommend:translate-x-0 transition-all" })
60080
60113
  ]
60081
60114
  }
60082
60115
  )
@@ -60100,7 +60133,7 @@ const MessageContent = (props) => {
60100
60133
  open: sessionToKnowledgeModalVisible,
60101
60134
  title: sessionToKnowledgeLoading ? "正在转化..." : "转化完成",
60102
60135
  content: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-[140px]", children: sessionToKnowledgeLoading ? /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col items-center justify-center py-8", children: [
60103
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-16 h-16 bg-blue-50 text-blue-600 rounded-2xl flex items-center justify-center mx-auto mb-6 animate-bounce", children: /* @__PURE__ */ jsxRuntimeExports.jsx(BookOpenText, { className: "w-8 h-8 opacity-50" }) }),
60136
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-16 h-16 bg-primary-50 text-primary-600 rounded-2xl flex items-center justify-center mx-auto mb-6 animate-bounce", children: /* @__PURE__ */ jsxRuntimeExports.jsx(BookOpenText, { className: "w-8 h-8 opacity-50" }) }),
60104
60137
  /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-gray-600", children: sessionToKnowledgeLoadingText || "正在将对话内容转化为知识点..." })
60105
60138
  ] }) : /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-center py-4", children: [
60106
60139
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "mx-auto w-16 h-16 bg-green-100 rounded-full flex items-center justify-center mb-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { className: "w-8 h-8 text-green-500", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsxRuntimeExports.jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M5 13l4 4L19 7" }) }) }),
@@ -60180,6 +60213,7 @@ const TagsTextarea = forwardRef((props, ref) => {
60180
60213
  getStructuredData: () => structuredData,
60181
60214
  addText,
60182
60215
  addTag,
60216
+ addQuotedText,
60183
60217
  addInput,
60184
60218
  addDropdown,
60185
60219
  focusInput,
@@ -60190,10 +60224,12 @@ const TagsTextarea = forwardRef((props, ref) => {
60190
60224
  const results = [];
60191
60225
  const nodes = editorRef.current.childNodes;
60192
60226
  nodes.forEach((node2) => {
60193
- var _a2;
60227
+ var _a2, _b, _c;
60194
60228
  if (node2.nodeType === Node.TEXT_NODE) {
60195
60229
  const text2 = (_a2 = node2.textContent) == null ? void 0 : _a2.trim();
60196
60230
  if (text2) results.push({ type: "text", value: text2 });
60231
+ } else if (node2.nodeType === Node.ELEMENT_NODE && ((_b = node2 == null ? void 0 : node2.dataset) == null ? void 0 : _b.quote)) {
60232
+ results.push({ type: "text", value: (_c = node2 == null ? void 0 : node2.dataset) == null ? void 0 : _c.quote });
60197
60233
  } else if (node2.nodeType === Node.ELEMENT_NODE && node2.nodeName === "BR") {
60198
60234
  results.push({ type: "br", value: "" });
60199
60235
  } else if (node2.nodeType === Node.ELEMENT_NODE) {
@@ -60322,6 +60358,20 @@ const TagsTextarea = forwardRef((props, ref) => {
60322
60358
  span.appendChild(createDeleteBtn(span));
60323
60359
  insertNode(span);
60324
60360
  };
60361
+ const addQuotedText = (text2) => {
60362
+ const span = document.createElement("span");
60363
+ span.contentEditable = "false";
60364
+ span.className = "mb-1 qouteSpan relative inline-flex items-center mx-1 pl-4 pr-2 py-1 rounded-md text-sm font-medium bg-blue-50 text-blue-600 border border-blue-200 select-none transition-all hover:bg-blue-100";
60365
+ const content2 = document.createElement("span");
60366
+ const quotedMatch = text2.match(/<<<(.*?)>>>/);
60367
+ const quotedDisplay = quotedMatch == null ? void 0 : quotedMatch[1];
60368
+ if (!quotedDisplay) return;
60369
+ const quotedPrefix = quotedDisplay.slice(0, 10);
60370
+ content2.innerHTML = `${quotedPrefix}...`;
60371
+ span.dataset.quote = text2;
60372
+ span.appendChild(content2);
60373
+ insertNode(span);
60374
+ };
60325
60375
  const addInput = (value, placeholder2) => {
60326
60376
  const span = document.createElement("span");
60327
60377
  span.contentEditable = "false";
@@ -60515,20 +60565,20 @@ const TagsTextarea = forwardRef((props, ref) => {
60515
60565
  }
60516
60566
  ) });
60517
60567
  });
60518
- const analyzeCom = "_analyzeCom_1bpz5_32";
60519
- const colletionList = "_colletionList_1bpz5_129";
60520
- const colletionListHeader = "_colletionListHeader_1bpz5_132";
60521
- const buyVip = "_buyVip_1bpz5_142";
60522
- const countText = "_countText_1bpz5_150";
60523
- const collectionList = "_collectionList_1bpz5_156";
60524
- const videoList = "_videoList_1bpz5_181";
60525
- const videoItem = "_videoItem_1bpz5_190";
60526
- const title = "_title_1bpz5_203";
60527
- const freeBadge = "_freeBadge_1bpz5_209";
60528
- const icon = "_icon_1bpz5_222";
60529
- const selected = "_selected_1bpz5_230";
60530
- const collectionTitle = "_collectionTitle_1bpz5_240";
60531
- const freeCount = "_freeCount_1bpz5_252";
60568
+ const analyzeCom = "_analyzeCom_1r6dj_32";
60569
+ const colletionList = "_colletionList_1r6dj_129";
60570
+ const colletionListHeader = "_colletionListHeader_1r6dj_132";
60571
+ const buyVip = "_buyVip_1r6dj_142";
60572
+ const countText = "_countText_1r6dj_150";
60573
+ const collectionList = "_collectionList_1r6dj_156";
60574
+ const videoList = "_videoList_1r6dj_181";
60575
+ const videoItem = "_videoItem_1r6dj_190";
60576
+ const title = "_title_1r6dj_203";
60577
+ const freeBadge = "_freeBadge_1r6dj_209";
60578
+ const icon = "_icon_1r6dj_222";
60579
+ const selected = "_selected_1r6dj_230";
60580
+ const collectionTitle = "_collectionTitle_1r6dj_240";
60581
+ const freeCount = "_freeCount_1r6dj_252";
60532
60582
  const styles = {
60533
60583
  analyzeCom,
60534
60584
  colletionList,
@@ -61028,6 +61078,30 @@ const AnalyzeUrl = (props) => {
61028
61078
  )
61029
61079
  ] });
61030
61080
  };
61081
+ const KnowledgeContinueMsg = (props) => {
61082
+ const { knowledgeInfo } = props;
61083
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-1", children: [
61084
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: "text-[15px] font-bold text-gray-900", children: [
61085
+ "欢迎继续学习《",
61086
+ knowledgeInfo == null ? void 0 : knowledgeInfo.title,
61087
+ "》!"
61088
+ ] }),
61089
+ /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-[13px] text-gray-600 leading-relaxed", children: "我是你的 AI 学伴饼干,有什么不明白的,随时都可以问我哦~ (。•̀ᴗ-)و✧" })
61090
+ ] }) });
61091
+ };
61092
+ const KnowledgeContinueMsg$1 = memo$1(KnowledgeContinueMsg);
61093
+ const KnowledgeStartMsg = (props) => {
61094
+ const { knowledgeInfo } = props;
61095
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-1", children: [
61096
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: "text-[15px] font-bold text-gray-900", children: [
61097
+ "欢迎学习《",
61098
+ knowledgeInfo == null ? void 0 : knowledgeInfo.title,
61099
+ "》!"
61100
+ ] }),
61101
+ /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-[13px] text-gray-600 leading-relaxed", children: "我是你的 AI 学伴饼干,有什么不明白的,随时都可以问我哦~ (。•̀ᴗ-)و✧" })
61102
+ ] }) });
61103
+ };
61104
+ const KnowledgeStartMsg$1 = memo$1(KnowledgeStartMsg);
61031
61105
  const VgenAgent = forwardRef((props, ref) => {
61032
61106
  const {
61033
61107
  containerRef,
@@ -61035,9 +61109,12 @@ const VgenAgent = forwardRef((props, ref) => {
61035
61109
  viewMode = "default",
61036
61110
  courseInfo,
61037
61111
  videoInfo,
61112
+ knowledgeInfo,
61038
61113
  initPos,
61039
61114
  initStyle,
61040
- hoverTip
61115
+ hoverTip,
61116
+ isDev,
61117
+ chatId: chatIdFromPorps
61041
61118
  } = props;
61042
61119
  const [isLogin, setIsLogin] = useState(false);
61043
61120
  const [isAiPanelOpen, setIsAiPanelOpen] = useState(false);
@@ -61045,7 +61122,7 @@ const VgenAgent = forwardRef((props, ref) => {
61045
61122
  const [messages2, setMessages] = useState([]);
61046
61123
  const [inputValue, setInputValue] = useState("");
61047
61124
  const [showPracticeGuide, setShowPracticeGuide] = useState(false);
61048
- const [chatId, setChatId] = useState(3908);
61125
+ const [chatId, setChatId] = useState(-1);
61049
61126
  const [inputPlaceholder, setInputPlaceholder] = useState("在此输入你的需求或问题...");
61050
61127
  const [sceneNow, setSceneNow] = useState("");
61051
61128
  const [generatedResources, setGeneratedResources] = useState([]);
@@ -61066,13 +61143,40 @@ const VgenAgent = forwardRef((props, ref) => {
61066
61143
  const [isMoreActionsOpen, setIsMoreActionsOpen] = useState(false);
61067
61144
  const [quotedText, setQuotedText] = useState("");
61068
61145
  const [sessionList, setSessionList] = useState([]);
61146
+ const quotedTextRef = useRef("");
61069
61147
  const isDragging2 = useRef(false);
61070
61148
  const scrollRef = useRef(null);
61071
61149
  const scrollToBottomTimer = useRef(null);
61072
61150
  const tagsTextareaRef = useRef(null);
61151
+ useEffect(() => {
61152
+ return () => {
61153
+ addQuoteTimer.current && clearTimeout(addQuoteTimer.current);
61154
+ };
61155
+ }, []);
61156
+ const addQuoteTimer = useRef(null);
61157
+ const setQuotedTextAndInput = (text2) => {
61158
+ if (!text2) {
61159
+ setQuotedText("");
61160
+ quotedTextRef.current = "";
61161
+ return;
61162
+ }
61163
+ quotedTextRef.current = text2;
61164
+ setQuotedText(text2);
61165
+ setIsAiPanelOpen(true);
61166
+ addQuoteTimer.current = setTimeout(() => {
61167
+ var _a2, _b;
61168
+ (_a2 = tagsTextareaRef.current) == null ? void 0 : _a2.focusInput();
61169
+ (_b = tagsTextareaRef.current) == null ? void 0 : _b.addQuotedText(`<<<${text2}>>>`);
61170
+ }, 100);
61171
+ };
61073
61172
  useImperativeHandle(ref, () => ({
61074
- setQuotedText: (val) => setQuotedText(val)
61173
+ setQuotedText: (val) => setQuotedTextAndInput(val)
61075
61174
  }));
61175
+ useEffect(() => {
61176
+ if (typeof window !== "undefined") {
61177
+ window.isRunInDev = isDev;
61178
+ }
61179
+ }, [isDev]);
61076
61180
  useEffect(() => {
61077
61181
  localStorage.setItem(TOKEN, token2);
61078
61182
  toGetUserInfo();
@@ -61086,12 +61190,15 @@ const VgenAgent = forwardRef((props, ref) => {
61086
61190
  toGetAgentFormFields();
61087
61191
  }
61088
61192
  }, [isLogin]);
61193
+ useEffect(() => {
61194
+ setChatId(chatIdFromPorps || -1);
61195
+ }, [chatIdFromPorps]);
61089
61196
  useEffect(() => {
61090
61197
  if (!isLogin) {
61091
61198
  return;
61092
61199
  }
61093
61200
  initGet();
61094
- }, [isLogin, viewMode]);
61201
+ }, [isLogin, viewMode, videoInfo, courseInfo]);
61095
61202
  const toGetAgentFormFields = async () => {
61096
61203
  const res = await getAgentFormFields();
61097
61204
  setAgentFormFields(res.data);
@@ -61101,6 +61208,11 @@ const VgenAgent = forwardRef((props, ref) => {
61101
61208
  case "video":
61102
61209
  videoInitGet();
61103
61210
  break;
61211
+ case "course":
61212
+ break;
61213
+ case "knowledgeCard":
61214
+ knowledgeCardInitGet();
61215
+ break;
61104
61216
  }
61105
61217
  };
61106
61218
  const videoInitGet = () => {
@@ -61123,7 +61235,7 @@ const VgenAgent = forwardRef((props, ref) => {
61123
61235
  if (!res.dataList.length) {
61124
61236
  createSession({
61125
61237
  btype: 2,
61126
- dataBtype: 10,
61238
+ dataType: 10,
61127
61239
  dataId: videoInfo.recordId
61128
61240
  }).then((res2) => {
61129
61241
  setChatId(res2);
@@ -61137,6 +61249,46 @@ const VgenAgent = forwardRef((props, ref) => {
61137
61249
  }
61138
61250
  });
61139
61251
  };
61252
+ const knowledgeCardInitGet = () => {
61253
+ if (!knowledgeInfo) {
61254
+ message.error("知识卡片信息未传入!");
61255
+ return;
61256
+ }
61257
+ if (chatIdFromPorps) {
61258
+ setChatId(chatIdFromPorps);
61259
+ setSessionList([]);
61260
+ toGetHistoryList(chatIdFromPorps);
61261
+ return;
61262
+ }
61263
+ getSessionListByBiz({
61264
+ currentPage: 1,
61265
+ pageSize: 20,
61266
+ dataBtype: 1,
61267
+ dataId: knowledgeInfo.knowledgeId,
61268
+ orders: [
61269
+ {
61270
+ key: "create_time",
61271
+ asc: false
61272
+ }
61273
+ ]
61274
+ }).then((res) => {
61275
+ if (!res.dataList.length) {
61276
+ createSession({
61277
+ btype: 2,
61278
+ dataType: 1,
61279
+ dataId: knowledgeInfo.knowledgeId
61280
+ }).then((res2) => {
61281
+ setChatId(res2);
61282
+ sceneMsgSend(res2);
61283
+ toGetHistoryList(res2);
61284
+ });
61285
+ } else {
61286
+ setChatId(res.dataList[0].id);
61287
+ setSessionList(res.dataList);
61288
+ toGetHistoryList(res.dataList[0].id);
61289
+ }
61290
+ });
61291
+ };
61140
61292
  const toSetViewModeTem = () => {
61141
61293
  switch (viewMode) {
61142
61294
  case "video":
@@ -61145,6 +61297,9 @@ const VgenAgent = forwardRef((props, ref) => {
61145
61297
  case "course":
61146
61298
  toSetCourseTem();
61147
61299
  break;
61300
+ case "knowledgeCard":
61301
+ toSetKnowledgeCardTem();
61302
+ break;
61148
61303
  default:
61149
61304
  toSetDefaultTem();
61150
61305
  break;
@@ -61195,6 +61350,51 @@ const VgenAgent = forwardRef((props, ref) => {
61195
61350
  ]);
61196
61351
  }
61197
61352
  };
61353
+ const toSetKnowledgeCardTem = () => {
61354
+ let hasHistory = messages2.length > 0;
61355
+ if (!knowledgeInfo) {
61356
+ setMessages([
61357
+ {
61358
+ role: "ai",
61359
+ messageType: msgType$1.NODE,
61360
+ id: randomNumber(),
61361
+ content: /* @__PURE__ */ jsxRuntimeExports.jsx(DefalutWelcomeMsg, { videoMode: viewMode })
61362
+ }
61363
+ ]);
61364
+ return;
61365
+ }
61366
+ if (hasHistory) {
61367
+ setMessages([
61368
+ {
61369
+ role: "ai",
61370
+ messageType: msgType$1.NODE,
61371
+ id: randomNumber(),
61372
+ content: /* @__PURE__ */ jsxRuntimeExports.jsx(
61373
+ KnowledgeContinueMsg$1,
61374
+ {
61375
+ knowledgeInfo,
61376
+ handleSendMessage: handleSend
61377
+ }
61378
+ )
61379
+ }
61380
+ ]);
61381
+ } else {
61382
+ setMessages([
61383
+ {
61384
+ role: "ai",
61385
+ messageType: msgType$1.NODE,
61386
+ id: randomNumber(),
61387
+ content: /* @__PURE__ */ jsxRuntimeExports.jsx(
61388
+ KnowledgeStartMsg$1,
61389
+ {
61390
+ knowledgeInfo,
61391
+ handleSendMessage: handleSend
61392
+ }
61393
+ )
61394
+ }
61395
+ ]);
61396
+ }
61397
+ };
61198
61398
  const toSetCourseTem = () => {
61199
61399
  if (!courseInfo) {
61200
61400
  setMessages([
@@ -61383,16 +61583,23 @@ const VgenAgent = forwardRef((props, ref) => {
61383
61583
  setRecommendSceneData(null);
61384
61584
  let systemContext = "";
61385
61585
  systemContext += `<scene>${scene || sceneNow}</scene>`;
61586
+ const hasQuotedText = quotedTextRef.current && input.startsWith("[");
61587
+ const extraInfo = hasQuotedText ? JSON.stringify({
61588
+ quotedText: quotedTextRef.current
61589
+ }) : void 0;
61386
61590
  saveMsg({
61387
61591
  role: "user",
61388
61592
  content: input,
61389
61593
  toPost: false,
61390
61594
  currnetMsgId: randomNumber(1e4, 1e5),
61391
- messageType: msgType$1.TEXT
61595
+ messageType: msgType$1.TEXT,
61596
+ extraInfo
61392
61597
  });
61393
61598
  scrollToBottom();
61394
61599
  setInputValue("");
61395
61600
  setSceneNow("");
61601
+ setQuotedText("");
61602
+ quotedTextRef.current = "";
61396
61603
  const currnetMsgId = randomNumber(1e4, 1e5);
61397
61604
  const extraObj = {
61398
61605
  enableSearch: enableGlobalSearch,
@@ -61668,13 +61875,13 @@ const VgenAgent = forwardRef((props, ref) => {
61668
61875
  const toCheckKnowledgeCard = (extraInfo) => {
61669
61876
  };
61670
61877
  const toCheckQuestions = (extraInfo) => {
61671
- const url = `${void 0}?batchId=${extraInfo.batchId}&toPractice=true`;
61878
+ const url = `${isDev ? devEnvUrl.VITE_BASE_VGEN_URL : proEnvUrl.VITE_BASE_VGEN_URL}?batchId=${extraInfo.batchId}&toPractice=true`;
61672
61879
  window.open(url, "_blank");
61673
61880
  };
61674
61881
  const renderGeneratedResources = () => /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex flex-col gap-1 max-h-72 overflow-y-auto p-1 custom-scrollbar", children: generatedResources.length > 0 ? generatedResources.map((res) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
61675
61882
  "div",
61676
61883
  {
61677
- className: "flex items-center gap-3 p-2.5 rounded-xl cursor-pointer hover:bg-blue-50 group transition-colors",
61884
+ className: "flex items-center gap-3 p-2.5 rounded-xl cursor-pointer hover:bg-primary-50 group transition-colors",
61678
61885
  onClick: () => {
61679
61886
  switch (res.type) {
61680
61887
  case msgType$1.REL_KNOWLEDGE_CARD:
@@ -61696,13 +61903,13 @@ const VgenAgent = forwardRef((props, ref) => {
61696
61903
  {
61697
61904
  className: cn(
61698
61905
  "w-8 h-8 rounded-lg flex items-center justify-center shrink-0",
61699
- res.type === msgType$1.REL_LEARN_PATH ? "bg-blue-50 text-blue-600" : res.type === msgType$1.REL_RECORD ? "bg-purple-50 text-purple-600" : res.type === msgType$1.REL_QUESTION ? "bg-emerald-50 text-emerald-600" : "bg-gray-50 text-gray-600"
61906
+ res.type === msgType$1.REL_LEARN_PATH ? "bg-primary-50 text-primary-600" : res.type === msgType$1.REL_RECORD ? "bg-purple-50 text-purple-600" : res.type === msgType$1.REL_QUESTION ? "bg-emerald-50 text-emerald-600" : "bg-gray-50 text-gray-600"
61700
61907
  ),
61701
61908
  children: res.type === msgType$1.REL_LEARN_PATH ? /* @__PURE__ */ jsxRuntimeExports.jsx(GraduationCap, { className: "w-4 h-4" }) : res.type === msgType$1.REL_RECORD ? /* @__PURE__ */ jsxRuntimeExports.jsx(Video, { className: "w-4 h-4" }) : res.type === msgType$1.REL_QUESTION ? /* @__PURE__ */ jsxRuntimeExports.jsx(BookOpen, { className: "w-4 h-4" }) : /* @__PURE__ */ jsxRuntimeExports.jsx(FileText, { className: "w-4 h-4" })
61702
61909
  }
61703
61910
  ),
61704
61911
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex-1 min-w-0", children: [
61705
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-[12px] font-bold text-gray-900 truncate group-hover:text-blue-600", children: res.type === msgType$1.REL_LEARN_PATH ? res.extraInfo.name : res.type === msgType$1.REL_RECORD ? res.extraInfo.title : res.type === msgType$1.REL_QUESTION ? `题目批次ID:${res.extraInfo.batchId}` : res.extraInfo.title }),
61912
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-[12px] font-bold text-gray-900 truncate group-hover:text-primary-600", children: res.type === msgType$1.REL_LEARN_PATH ? res.extraInfo.name : res.type === msgType$1.REL_RECORD ? res.extraInfo.title : res.type === msgType$1.REL_QUESTION ? `题目批次ID:${res.extraInfo.batchId}` : res.extraInfo.title }),
61706
61913
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-[10px] text-gray-400 font-medium", children: res.type === msgType$1.REL_LEARN_PATH ? "学习路径" : res.type === msgType$1.REL_RECORD ? "视频解析" : res.type === msgType$1.REL_QUESTION ? "练习题" : "知识讲解" })
61707
61914
  ] })
61708
61915
  ]
@@ -61808,8 +62015,8 @@ const VgenAgent = forwardRef((props, ref) => {
61808
62015
  "div",
61809
62016
  {
61810
62017
  className: cn(
61811
- "bg-white p-3 rounded-xl border border-gray-100 shadow-sm hover:border-blue-200 transition-colors cursor-pointer group relative",
61812
- item.id === chatId && "border-blue-300"
62018
+ "bg-white p-3 rounded-xl border border-gray-100 shadow-sm hover:border-primary-200 transition-colors cursor-pointer group relative",
62019
+ item.id === chatId && "border-primary-300"
61813
62020
  ),
61814
62021
  onClick: () => {
61815
62022
  toGetHistoryList(item.id);
@@ -61861,6 +62068,18 @@ const VgenAgent = forwardRef((props, ref) => {
61861
62068
  messageType: msgType$1.INVISIBLE_TEXT
61862
62069
  });
61863
62070
  break;
62071
+ case "course":
62072
+ break;
62073
+ case "knowledgeCard":
62074
+ saveMsg({
62075
+ role: "user",
62076
+ content: (knowledgeInfo == null ? void 0 : knowledgeInfo.content) || "",
62077
+ onlyPost: true,
62078
+ toPost: true,
62079
+ chatId: chatIdHere,
62080
+ messageType: msgType$1.INVISIBLE_TEXT
62081
+ });
62082
+ break;
61864
62083
  }
61865
62084
  };
61866
62085
  const addNewSession = () => {
@@ -61868,7 +62087,7 @@ const VgenAgent = forwardRef((props, ref) => {
61868
62087
  case "video":
61869
62088
  createSession({
61870
62089
  btype: 2,
61871
- dataBtype: 10,
62090
+ dataType: 10,
61872
62091
  dataId: videoInfo == null ? void 0 : videoInfo.recordId
61873
62092
  }).then((res) => {
61874
62093
  setChatId(res);
@@ -61987,17 +62206,17 @@ const VgenAgent = forwardRef((props, ref) => {
61987
62206
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-[13px] font-bold text-gray-800", children: "饼干 AI 学伴" })
61988
62207
  ] }),
61989
62208
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-1 z-10", children: [
61990
- /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: "开启新对话", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
62209
+ viewMode !== "knowledgeCard" && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: "开启新对话", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
61991
62210
  "button",
61992
62211
  {
61993
62212
  onClick: () => {
61994
62213
  addNewSession();
61995
62214
  },
61996
- className: "p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-blue-600 transition-colors",
62215
+ className: "p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-primary-600 transition-colors",
61997
62216
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(Plus, { className: "w-4 h-4" })
61998
62217
  }
61999
62218
  ) }),
62000
- /* @__PURE__ */ jsxRuntimeExports.jsx(
62219
+ viewMode !== "knowledgeCard" && /* @__PURE__ */ jsxRuntimeExports.jsx(
62001
62220
  Popover,
62002
62221
  {
62003
62222
  placement: "bottomRight",
@@ -62006,7 +62225,7 @@ const VgenAgent = forwardRef((props, ref) => {
62006
62225
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(
62007
62226
  "button",
62008
62227
  {
62009
- className: "p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-blue-600 transition-colors",
62228
+ className: "p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-primary-600 transition-colors",
62010
62229
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(History, { className: "w-4 h-4" })
62011
62230
  }
62012
62231
  )
@@ -62024,13 +62243,13 @@ const VgenAgent = forwardRef((props, ref) => {
62024
62243
  ]
62025
62244
  }
62026
62245
  ),
62027
- viewMode === "video" && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "bg-blue-50 px-4 py-3 border-b border-blue-100 animate-in slide-in-from-top-2 duration-300", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-between", children: [
62028
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { title: videoInfo == null ? void 0 : videoInfo.name, className: "text-[11px] font-medium text-blue-900 truncate pr-4 flex-1 text-ellipsis", children: videoInfo == null ? void 0 : videoInfo.name }),
62246
+ viewMode === "video" && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "bg-primary-50 px-4 py-3 border-b border-primary-100 animate-in slide-in-from-top-2 duration-300", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-between", children: [
62247
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { title: videoInfo == null ? void 0 : videoInfo.name, className: "text-[11px] font-medium text-primary-900 truncate pr-4 flex-1 text-ellipsis", children: videoInfo == null ? void 0 : videoInfo.name }),
62029
62248
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex flex-wrap gap-2", children: ["视频总结", "章节大纲"].map(
62030
62249
  (item) => /* @__PURE__ */ jsxRuntimeExports.jsx(
62031
62250
  "button",
62032
62251
  {
62033
- className: "px-2 py-1 bg-white border border-blue-100 rounded text-[10px] text-blue-700 shadow-sm hover:bg-blue-50 transition-colors",
62252
+ className: "px-2 py-1 bg-white border border-primary-100 rounded text-[10px] text-primary-700 shadow-sm hover:bg-primary-50 transition-colors",
62034
62253
  children: item
62035
62254
  },
62036
62255
  item
@@ -62077,7 +62296,8 @@ const VgenAgent = forwardRef((props, ref) => {
62077
62296
  toCheckQuestions,
62078
62297
  toCheckVideo,
62079
62298
  recommendVideos,
62080
- handleSend
62299
+ handleSend,
62300
+ isDev
62081
62301
  }
62082
62302
  ) })
62083
62303
  }
@@ -62098,7 +62318,7 @@ const VgenAgent = forwardRef((props, ref) => {
62098
62318
  ] }),
62099
62319
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "h-px bg-gray-100" }),
62100
62320
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-3", children: [
62101
- /* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: "text-[12px] font-bold text-blue-900 flex items-center gap-1.5 justify-center", children: [
62321
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: "text-[12px] font-bold text-primary-900 flex items-center gap-1.5 justify-center", children: [
62102
62322
  /* @__PURE__ */ jsxRuntimeExports.jsx(Star, { className: "w-4 h-4 text-yellow-500 fill-yellow-500" }),
62103
62323
  " ",
62104
62324
  "🌟 Vgen 深度学习"
@@ -62124,7 +62344,7 @@ const VgenAgent = forwardRef((props, ref) => {
62124
62344
  Button,
62125
62345
  {
62126
62346
  type: "primary",
62127
- className: "w-full bg-blue-600 text-white h-10 font-bold border-none",
62347
+ className: "w-full bg-primary-600 text-white h-10 font-bold border-none",
62128
62348
  onClick: () => {
62129
62349
  setShowPracticeGuide(false);
62130
62350
  window.open(
@@ -62156,10 +62376,10 @@ const VgenAgent = forwardRef((props, ref) => {
62156
62376
  "button",
62157
62377
  {
62158
62378
  onClick: () => handleSend({ input: item.label }),
62159
- className: "flex items-center gap-1.5 px-3 py-1.5 bg-white border border-gray-100 rounded-full shadow-sm hover:border-blue-200 hover:bg-blue-50 transition-all group active:scale-95",
62379
+ className: "flex items-center gap-1.5 px-3 py-1.5 bg-white border border-gray-100 rounded-full shadow-sm hover:border-primary-200 hover:bg-primary-50 transition-all group active:scale-95",
62160
62380
  children: [
62161
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: cn("text-blue-500", "w-3.5 h-3.5"), children: item.icon }),
62162
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[11px] font-medium text-gray-600 group-hover:text-blue-600 whitespace-nowrap", children: item.label })
62381
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: cn("text-primary-500", "w-3.5 h-3.5"), children: item.icon }),
62382
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[11px] font-medium text-gray-600 group-hover:text-primary-600 whitespace-nowrap", children: item.label })
62163
62383
  ]
62164
62384
  },
62165
62385
  item.id
@@ -62171,10 +62391,10 @@ const VgenAgent = forwardRef((props, ref) => {
62171
62391
  onClick: () => setIsMoreActionsOpen(!isMoreActionsOpen),
62172
62392
  className: cn(
62173
62393
  "flex items-center gap-1.5 px-3 py-1.5 border rounded-full shadow-sm transition-all active:scale-95",
62174
- isMoreActionsOpen ? "bg-blue-600 border-blue-600 text-white" : "bg-blue-50 border-blue-100 text-blue-700 hover:bg-blue-100"
62394
+ isMoreActionsOpen ? "bg-primary-600 border-primary-600 text-white" : "bg-primary-50 border-primary-100 text-primary-700 hover:bg-primary-100"
62175
62395
  ),
62176
62396
  children: [
62177
- /* @__PURE__ */ jsxRuntimeExports.jsx(Sparkles, { className: cn("w-3.5 h-3.5", isMoreActionsOpen ? "text-white" : "text-blue-600") }),
62397
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Sparkles, { className: cn("w-3.5 h-3.5", isMoreActionsOpen ? "text-white" : "text-primary-600") }),
62178
62398
  /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[11px] font-bold whitespace-nowrap", children: "更多" })
62179
62399
  ]
62180
62400
  }
@@ -62203,7 +62423,7 @@ const VgenAgent = forwardRef((props, ref) => {
62203
62423
  label: "生成学习路径",
62204
62424
  desc: "帮我生成学习路径",
62205
62425
  icon: /* @__PURE__ */ jsxRuntimeExports.jsx(GitBranch, { className: "w-3.5 h-3.5" }),
62206
- color: "text-blue-500"
62426
+ color: "text-primary-500"
62207
62427
  },
62208
62428
  {
62209
62429
  label: "AI智能出题",
@@ -62236,78 +62456,59 @@ const VgenAgent = forwardRef((props, ref) => {
62236
62456
  ] })
62237
62457
  ] })
62238
62458
  ] }) }),
62239
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative flex-1 flex flex-col gap-2", children: [
62240
- quotedText && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-between bg-blue-50 border border-blue-100 rounded-lg px-3 py-1.5 animate-in slide-in-from-bottom-2 duration-200", children: [
62241
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2 truncate", children: [
62242
- /* @__PURE__ */ jsxRuntimeExports.jsx(Quote, { className: "w-3 h-3 text-blue-400 shrink-0" }),
62243
- /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "text-[11px] text-blue-700 truncate font-medium", children: [
62244
- "引用自文档:",
62245
- quotedText
62246
- ] })
62247
- ] }),
62248
- /* @__PURE__ */ jsxRuntimeExports.jsx(
62249
- "button",
62250
- {
62251
- onClick: () => setQuotedText(""),
62252
- className: "p-1 hover:bg-blue-100 rounded-full text-blue-400 transition-colors",
62253
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(X, { className: "w-3 h-3" })
62254
- }
62255
- )
62256
- ] }),
62257
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative flex items-center gap-2", children: [
62258
- /* @__PURE__ */ jsxRuntimeExports.jsx(
62259
- "div",
62260
- {
62261
- className: "w-full px-4 pb-1 pt-1.5 bg-white rounded-[12px] cursor-text border border-gray-100 focus-within:border-blue-200 transition-all overflow-hidden",
62262
- style: {
62263
- paddingTop: "6px"
62264
- },
62265
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(
62266
- TagsTextarea,
62267
- {
62268
- minHeight: 30,
62269
- maxHeight: 120,
62270
- onChange: tagsTextareaValueChange,
62271
- placeholder: inputPlaceholder,
62272
- sendMsg: () => {
62273
- handleSend({ input: inputValue });
62274
- },
62275
- ref: tagsTextareaRef
62276
- }
62277
- )
62278
- }
62279
- ),
62280
- answerIsDone ? /* @__PURE__ */ jsxRuntimeExports.jsx(
62281
- Button,
62282
- {
62283
- type: "primary",
62284
- onClick: () => {
62285
- var _a2;
62286
- handleSend({ input: inputValue });
62287
- (_a2 = tagsTextareaRef.current) == null ? void 0 : _a2.clearContent();
62288
- },
62289
- disabled: !inputValue.trim(),
62290
- className: cn(
62291
- "rounded-xl h-10 px-3 shadow-lg transition-all flex items-center justify-center",
62292
- inputValue.trim() ? "bg-blue-600 text-white shadow-blue-200" : "bg-gray-200 text-white"
62293
- ),
62294
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(Send, { className: "w-4 h-4" })
62295
- }
62296
- ) : /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: "停止回答", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
62297
- Button,
62298
- {
62299
- type: "primary",
62300
- onClick: () => {
62301
- sendMsgController.current.close();
62302
- setAnswerIsDone(true);
62303
- setInputValue("");
62304
- },
62305
- className: "rounded-xl h-10 px-3 shadow-lg transition-all flex items-center justify-center bg-blue-500 text-white",
62306
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(CircleStop, { className: "w-5 h-5" })
62307
- }
62308
- ) })
62309
- ] })
62310
- ] })
62459
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative flex-1 flex flex-col gap-2", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative flex items-center gap-2", children: [
62460
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
62461
+ "div",
62462
+ {
62463
+ className: "w-full px-4 pb-1 pt-1.5 bg-white rounded-[12px] cursor-text border border-gray-100 focus-within:border-primary-200 transition-all overflow-hidden",
62464
+ style: {
62465
+ paddingTop: "6px"
62466
+ },
62467
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(
62468
+ TagsTextarea,
62469
+ {
62470
+ minHeight: 30,
62471
+ maxHeight: 120,
62472
+ onChange: tagsTextareaValueChange,
62473
+ placeholder: inputPlaceholder,
62474
+ sendMsg: () => {
62475
+ handleSend({ input: inputValue });
62476
+ },
62477
+ ref: tagsTextareaRef
62478
+ }
62479
+ )
62480
+ }
62481
+ ),
62482
+ answerIsDone ? /* @__PURE__ */ jsxRuntimeExports.jsx(
62483
+ Button,
62484
+ {
62485
+ type: "primary",
62486
+ onClick: () => {
62487
+ var _a2;
62488
+ handleSend({ input: inputValue });
62489
+ (_a2 = tagsTextareaRef.current) == null ? void 0 : _a2.clearContent();
62490
+ },
62491
+ disabled: !inputValue.trim(),
62492
+ className: cn(
62493
+ "rounded-xl h-10 px-3 shadow-lg transition-all flex items-center justify-center",
62494
+ inputValue.trim() ? "bg-primary-600 text-white shadow-primary-200" : "bg-gray-200 text-white"
62495
+ ),
62496
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(Send, { className: "w-4 h-4" })
62497
+ }
62498
+ ) : /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: "停止回答", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
62499
+ Button,
62500
+ {
62501
+ type: "primary",
62502
+ onClick: () => {
62503
+ sendMsgController.current.close();
62504
+ setAnswerIsDone(true);
62505
+ setInputValue("");
62506
+ },
62507
+ className: "rounded-xl h-10 px-3 shadow-lg transition-all flex items-center justify-center bg-primary-500 text-white hover:!bg-primary-600",
62508
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(CircleStop, { className: "w-5 h-5" })
62509
+ }
62510
+ ) })
62511
+ ] }) })
62311
62512
  ] })
62312
62513
  ]
62313
62514
  }