@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.
- package/dist/types/src/api/index.d.ts +3 -3
- package/dist/types/src/components/TagsTextarea/index.d.ts +1 -0
- package/dist/types/src/components/VgenAgent/components/KnowledgeContinueMsg.d.ts +14 -0
- package/dist/types/src/components/VgenAgent/components/KnowledgeStartMsg.d.ts +14 -0
- package/dist/types/src/components/VgenAgent/components/MessageContent.d.ts +1 -0
- package/dist/types/src/components/VgenAgent/type.d.ts +9 -1
- package/dist/vgen-agent-assistant.css +1 -1
- package/dist/vgen-agent-assistant.css.gz +0 -0
- package/dist/vgen-agent-assistant.es.js +525 -324
- package/dist/vgen-agent-assistant.es.js.gz +0 -0
- package/dist/vgen-agent-assistant.umd.js +8 -8
- package/dist/vgen-agent-assistant.umd.js.gz +0 -0
- package/package.json +1 -1
|
@@ -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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
1092
|
-
const ChevronDown = createLucideIcon("chevron-down", __iconNode$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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-
|
|
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
|
|
21931
|
-
|
|
21932
|
-
"
|
|
21933
|
-
|
|
21934
|
-
"
|
|
21935
|
-
|
|
21936
|
-
"
|
|
21937
|
-
|
|
21938
|
-
"
|
|
21939
|
-
|
|
21940
|
-
"
|
|
21941
|
-
|
|
21942
|
-
"
|
|
21943
|
-
|
|
21944
|
-
"
|
|
21945
|
-
|
|
21946
|
-
"
|
|
21947
|
-
|
|
21948
|
-
"
|
|
21949
|
-
|
|
21950
|
-
"/
|
|
21951
|
-
|
|
21952
|
-
"
|
|
21953
|
-
|
|
21954
|
-
|
|
21955
|
-
|
|
21956
|
-
"
|
|
21957
|
-
|
|
21958
|
-
|
|
21959
|
-
|
|
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
|
-
|
|
21970
|
-
|
|
21971
|
-
|
|
21972
|
-
|
|
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-
|
|
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-
|
|
22089
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[12px] text-gray-600 group-hover:text-
|
|
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-
|
|
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.
|
|
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 = "
|
|
55546
|
-
const searchResultsHeader = "
|
|
55547
|
-
const searchResultsTitle = "
|
|
55548
|
-
const resultTitle = "
|
|
55549
|
-
const resultDot = "
|
|
55550
|
-
const searchResultsActions = "
|
|
55551
|
-
const actionButton = "
|
|
55552
|
-
const refreshButton = "
|
|
55553
|
-
const externalButton = "
|
|
55554
|
-
const clearButton = "
|
|
55555
|
-
const resultsList = "
|
|
55556
|
-
const resultsFooter = "
|
|
55557
|
-
const footerText = "
|
|
55558
|
-
const footerActions = "
|
|
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-
|
|
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 = "
|
|
55731
|
-
const modalTipWrapper = "
|
|
55732
|
-
const vgenModal = "
|
|
55733
|
-
const modalContent = "
|
|
55734
|
-
const modalTitleLeft = "
|
|
55735
|
-
const modalTitle = "
|
|
55736
|
-
const modalContentText = "
|
|
55737
|
-
const modalFooter = "
|
|
55738
|
-
const btnOk = "
|
|
55739
|
-
const btnCancel = "
|
|
55740
|
-
const blackMode = "
|
|
55741
|
-
const modalLeft = "
|
|
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 = `${
|
|
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 = `${
|
|
59319
|
+
const url = `${vgenBaseUrl}/mainPage?recordId=${recordId}`;
|
|
59287
59320
|
window.open(url, "_blank");
|
|
59288
59321
|
} else {
|
|
59289
|
-
const url = `${
|
|
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-
|
|
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-
|
|
59328
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: cn("absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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
|
|
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-
|
|
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 = `${
|
|
59867
|
+
const url = `${vgenBaseUrl}/studyMap/${extraInfo.id}`;
|
|
59835
59868
|
window.open(url, "_blank");
|
|
59836
59869
|
},
|
|
59837
|
-
className: "bg-
|
|
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 = `${
|
|
59885
|
+
const url = `${vgenBaseUrl}/knowledgeDetailPage/${extraInfo.knowledgeId}`;
|
|
59853
59886
|
window.open(url, "_blank");
|
|
59854
59887
|
},
|
|
59855
|
-
className: "bg-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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 = "
|
|
60519
|
-
const colletionList = "
|
|
60520
|
-
const colletionListHeader = "
|
|
60521
|
-
const buyVip = "
|
|
60522
|
-
const countText = "
|
|
60523
|
-
const collectionList = "
|
|
60524
|
-
const videoList = "
|
|
60525
|
-
const videoItem = "
|
|
60526
|
-
const title = "
|
|
60527
|
-
const freeBadge = "
|
|
60528
|
-
const icon = "
|
|
60529
|
-
const selected = "
|
|
60530
|
-
const collectionTitle = "
|
|
60531
|
-
const freeCount = "
|
|
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(
|
|
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) =>
|
|
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
|
-
|
|
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 = `${
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
61812
|
-
item.id === chatId && "border-
|
|
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
|
-
|
|
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-
|
|
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-
|
|
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-
|
|
62028
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { title: videoInfo == null ? void 0 : videoInfo.name, className: "text-[11px] font-medium text-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
62162
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[11px] font-medium text-gray-600 group-hover:text-
|
|
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-
|
|
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-
|
|
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-
|
|
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.
|
|
62240
|
-
|
|
62241
|
-
|
|
62242
|
-
|
|
62243
|
-
|
|
62244
|
-
|
|
62245
|
-
|
|
62246
|
-
|
|
62247
|
-
|
|
62248
|
-
|
|
62249
|
-
|
|
62250
|
-
|
|
62251
|
-
|
|
62252
|
-
|
|
62253
|
-
|
|
62254
|
-
|
|
62255
|
-
|
|
62256
|
-
|
|
62257
|
-
|
|
62258
|
-
|
|
62259
|
-
|
|
62260
|
-
|
|
62261
|
-
|
|
62262
|
-
|
|
62263
|
-
|
|
62264
|
-
|
|
62265
|
-
|
|
62266
|
-
|
|
62267
|
-
|
|
62268
|
-
|
|
62269
|
-
|
|
62270
|
-
|
|
62271
|
-
|
|
62272
|
-
|
|
62273
|
-
|
|
62274
|
-
|
|
62275
|
-
|
|
62276
|
-
|
|
62277
|
-
|
|
62278
|
-
|
|
62279
|
-
|
|
62280
|
-
|
|
62281
|
-
|
|
62282
|
-
{
|
|
62283
|
-
|
|
62284
|
-
|
|
62285
|
-
|
|
62286
|
-
|
|
62287
|
-
|
|
62288
|
-
|
|
62289
|
-
|
|
62290
|
-
|
|
62291
|
-
|
|
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
|
}
|