@oscloudlab/vgen-agent-assistant 0.0.8 → 0.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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/index.d.ts +2 -2
- package/dist/types/src/components/VgenAgent/type.d.ts +15 -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 +450 -276
- 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,
|
|
@@ -22000,12 +21965,12 @@ const currentFeatures = [
|
|
|
22000
21965
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(FileText, { className: "w-3.5 h-3.5" }),
|
|
22001
21966
|
color: "text-blue-600"
|
|
22002
21967
|
},
|
|
22003
|
-
{
|
|
22004
|
-
|
|
22005
|
-
|
|
22006
|
-
|
|
22007
|
-
|
|
22008
|
-
},
|
|
21968
|
+
// {
|
|
21969
|
+
// id: "card",
|
|
21970
|
+
// label: "知识卡片",
|
|
21971
|
+
// icon: <Layout className="w-3.5 h-3.5" />,
|
|
21972
|
+
// color: "text-indigo-600",
|
|
21973
|
+
// },
|
|
22009
21974
|
// {
|
|
22010
21975
|
// id: "ask",
|
|
22011
21976
|
// label: "划线答疑",
|
|
@@ -22106,7 +22071,7 @@ const CourseStartMsg = (props) => {
|
|
|
22106
22071
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "h-px bg-gray-100" }),
|
|
22107
22072
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-4", children: [
|
|
22108
22073
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
22109
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(BookOpen, { className: "w-4 h-4 text-
|
|
22074
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(BookOpen, { className: "w-4 h-4 text-primary-500" }),
|
|
22110
22075
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "text-[12px] font-bold text-gray-800", children: [
|
|
22111
22076
|
"当前章节:",
|
|
22112
22077
|
courseInfo.chapter
|
|
@@ -22120,8 +22085,8 @@ const CourseStartMsg = (props) => {
|
|
|
22120
22085
|
onClick: () => handleSendMessage({ input: item.label }),
|
|
22121
22086
|
className: "flex items-center gap-2 group hover:translate-x-1 transition-all active:scale-95",
|
|
22122
22087
|
children: [
|
|
22123
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-1.5 h-1.5 rounded-full bg-
|
|
22124
|
-
/* @__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 })
|
|
22125
22090
|
]
|
|
22126
22091
|
},
|
|
22127
22092
|
item.id
|
|
@@ -22147,7 +22112,7 @@ const CourseStartMsg = (props) => {
|
|
|
22147
22112
|
].map((link2) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
22148
22113
|
"button",
|
|
22149
22114
|
{
|
|
22150
|
-
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",
|
|
22151
22116
|
children: [
|
|
22152
22117
|
link2.icon,
|
|
22153
22118
|
link2.label
|
|
@@ -55571,20 +55536,20 @@ const MyReactMarkdown = memo$1(({ children }) => {
|
|
|
55571
55536
|
}
|
|
55572
55537
|
) });
|
|
55573
55538
|
});
|
|
55574
|
-
const searchResults = "
|
|
55575
|
-
const searchResultsHeader = "
|
|
55576
|
-
const searchResultsTitle = "
|
|
55577
|
-
const resultTitle = "
|
|
55578
|
-
const resultDot = "
|
|
55579
|
-
const searchResultsActions = "
|
|
55580
|
-
const actionButton = "
|
|
55581
|
-
const refreshButton = "
|
|
55582
|
-
const externalButton = "
|
|
55583
|
-
const clearButton = "
|
|
55584
|
-
const resultsList = "
|
|
55585
|
-
const resultsFooter = "
|
|
55586
|
-
const footerText = "
|
|
55587
|
-
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";
|
|
55588
55553
|
const styles$2 = {
|
|
55589
55554
|
searchResults,
|
|
55590
55555
|
searchResultsHeader,
|
|
@@ -55702,7 +55667,7 @@ const BiliRecommend = (props) => {
|
|
|
55702
55667
|
),
|
|
55703
55668
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute inset-0 bg-black/10 group-hover/video:bg-black/30 transition-colors" }),
|
|
55704
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 }),
|
|
55705
|
-
/* @__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" }) }) })
|
|
55706
55671
|
] }),
|
|
55707
55672
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex h-full flex-1 flex-col justify-between py-0.5", children: [
|
|
55708
55673
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-1", children: [
|
|
@@ -55756,18 +55721,18 @@ const BiliRecommend = (props) => {
|
|
|
55756
55721
|
] }) });
|
|
55757
55722
|
};
|
|
55758
55723
|
const BiliRecommend$1 = memo$1(BiliRecommend);
|
|
55759
|
-
const modalWrapper = "
|
|
55760
|
-
const modalTipWrapper = "
|
|
55761
|
-
const vgenModal = "
|
|
55762
|
-
const modalContent = "
|
|
55763
|
-
const modalTitleLeft = "
|
|
55764
|
-
const modalTitle = "
|
|
55765
|
-
const modalContentText = "
|
|
55766
|
-
const modalFooter = "
|
|
55767
|
-
const btnOk = "
|
|
55768
|
-
const btnCancel = "
|
|
55769
|
-
const blackMode = "
|
|
55770
|
-
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";
|
|
55771
55736
|
const styles$1 = {
|
|
55772
55737
|
modalWrapper,
|
|
55773
55738
|
modalTipWrapper,
|
|
@@ -59164,6 +59129,41 @@ const VgenModal = (props) => {
|
|
|
59164
59129
|
}
|
|
59165
59130
|
) });
|
|
59166
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
|
+
});
|
|
59167
59167
|
const formSubmitTextMap = {
|
|
59168
59168
|
[msgType.FROM_LEARN_PATH]: "定制学习路径",
|
|
59169
59169
|
[msgType.FROM_KNOWLEDGE_CARD]: "生成知识点",
|
|
@@ -59352,28 +59352,28 @@ const MessageContent = (props) => {
|
|
|
59352
59352
|
{
|
|
59353
59353
|
className: cn(
|
|
59354
59354
|
"w-10 h-10 rounded-2xl flex items-center justify-center shrink-0 shadow-sm",
|
|
59355
|
-
msg.role === "user" ? "bg-
|
|
59355
|
+
msg.role === "user" ? "bg-primary-600 text-white" : "bg-white text-primary-600 border border-gray-100"
|
|
59356
59356
|
),
|
|
59357
59357
|
children: msg.role === "user" ? /* @__PURE__ */ jsxRuntimeExports.jsx(User, { className: "w-5 h-5" }) : /* @__PURE__ */ jsxRuntimeExports.jsx(Bot, { className: "w-5 h-5" })
|
|
59358
59358
|
}
|
|
59359
59359
|
),
|
|
59360
|
-
thinkContent && !answerIsDone && index2 === messages2.length - 1 ? /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: cn("max-w-[85%] bg-gradient-to-r from-
|
|
59361
|
-
/* @__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") }),
|
|
59362
59362
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative z-10 text-[13px]", children: [
|
|
59363
59363
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center mb-2", children: [
|
|
59364
|
-
/* @__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") }),
|
|
59365
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" } }),
|
|
59366
59366
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: cn("w-2 h-2 bg-pink-500 rounded-full", "chat-animate-bounce"), style: { animationDelay: "0.4s" } }),
|
|
59367
|
-
/* @__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 思考中..." })
|
|
59368
59368
|
] }),
|
|
59369
59369
|
/* @__PURE__ */ jsxRuntimeExports.jsx(MyReactMarkdown, { children: thinkContent })
|
|
59370
59370
|
] }),
|
|
59371
59371
|
recommendScene && recommendSceneData ? /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "mt-4", children: [
|
|
59372
59372
|
recommendScene === agentScene.SYSTEMATIZE_LEARNING && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
|
|
59373
|
-
/* @__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: "学习路径正在来的路上,可以先试试看:" }) }),
|
|
59374
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: [
|
|
59375
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-
|
|
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-
|
|
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 }) }) }) }),
|
|
59377
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 }) }) }),
|
|
59378
59378
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex gap-2", children: [
|
|
59379
59379
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
@@ -59389,7 +59389,7 @@ const MessageContent = (props) => {
|
|
|
59389
59389
|
window.open(url, "_blank");
|
|
59390
59390
|
}
|
|
59391
59391
|
},
|
|
59392
|
-
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",
|
|
59393
59393
|
children: [
|
|
59394
59394
|
/* @__PURE__ */ jsxRuntimeExports.jsx(CirclePlay, { className: "h-4 w-4 mr-2" }),
|
|
59395
59395
|
"开始学习"
|
|
@@ -59403,7 +59403,7 @@ const MessageContent = (props) => {
|
|
|
59403
59403
|
const url = `${window.location.origin}/editStudyPath/${path2.id}`;
|
|
59404
59404
|
window.open(url, "_blank");
|
|
59405
59405
|
},
|
|
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-
|
|
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",
|
|
59407
59407
|
title: "编辑路径",
|
|
59408
59408
|
children: /* @__PURE__ */ jsxRuntimeExports.jsx(PenLine, { className: "h-4 w-4" })
|
|
59409
59409
|
}
|
|
@@ -59412,19 +59412,19 @@ const MessageContent = (props) => {
|
|
|
59412
59412
|
] }, path2.id)) })
|
|
59413
59413
|
] }),
|
|
59414
59414
|
recommendScene === agentScene.SKILL_TO_KNOWLEDGE && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
|
|
59415
|
-
/* @__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: "知识点正在来的路上,可以先试试看:" }) }),
|
|
59416
59416
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-1 gap-4", children: recommendSceneData.map((item) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
59417
59417
|
"div",
|
|
59418
59418
|
{
|
|
59419
59419
|
className: "bg-white rounded-xl shadow-sm border border-gray-200 p-6 hover:shadow-md transition-all group relative overflow-hidden",
|
|
59420
59420
|
children: [
|
|
59421
|
-
/* @__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" }),
|
|
59422
59422
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex justify-between items-start mb-4", children: [
|
|
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-
|
|
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 }) }) }),
|
|
59424
59424
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
59425
59425
|
"div",
|
|
59426
59426
|
{
|
|
59427
|
-
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"}`,
|
|
59428
59428
|
children: item.type === "conceptual_knowledge" ? "概念型" : "实操型"
|
|
59429
59429
|
}
|
|
59430
59430
|
)
|
|
@@ -59441,7 +59441,7 @@ const MessageContent = (props) => {
|
|
|
59441
59441
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "mt-4 flex gap-2", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
59442
59442
|
"button",
|
|
59443
59443
|
{
|
|
59444
|
-
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",
|
|
59445
59445
|
onClick: () => {
|
|
59446
59446
|
const { viewDetail, shareUserId, knowledgeId } = item;
|
|
59447
59447
|
if (viewDetail) {
|
|
@@ -59461,7 +59461,7 @@ const MessageContent = (props) => {
|
|
|
59461
59461
|
)) })
|
|
59462
59462
|
] }),
|
|
59463
59463
|
recommendScene === agentScene.QUESTION_GENERATION && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
|
|
59464
|
-
/* @__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: "练习题正在来的路上,可以先试试看:" }) }),
|
|
59465
59465
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-1 gap-4", children: recommendSceneData.map((ex) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
59466
59466
|
motion.div,
|
|
59467
59467
|
{
|
|
@@ -59469,8 +59469,8 @@ const MessageContent = (props) => {
|
|
|
59469
59469
|
animate: { opacity: 1, x: 0 },
|
|
59470
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",
|
|
59471
59471
|
children: [
|
|
59472
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-
|
|
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-
|
|
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 }) }) }),
|
|
59474
59474
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "mb-4 flex items-center gap-4 text-sm text-gray-400 font-medium", children: [
|
|
59475
59475
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "flex items-center gap-1.5", children: [
|
|
59476
59476
|
getQuestionTypeIcon(ex.type),
|
|
@@ -59490,7 +59490,7 @@ const MessageContent = (props) => {
|
|
|
59490
59490
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex gap-2", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
59491
59491
|
"button",
|
|
59492
59492
|
{
|
|
59493
|
-
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",
|
|
59494
59494
|
onClick: () => {
|
|
59495
59495
|
const url = `${window.location.origin}/mySpaces/practices?questionIdForRightNow=${ex.id}`;
|
|
59496
59496
|
localStorage.setItem("questionIdForRightNowData", ex);
|
|
@@ -59519,11 +59519,11 @@ const MessageContent = (props) => {
|
|
|
59519
59519
|
{
|
|
59520
59520
|
className: cn(
|
|
59521
59521
|
"w-full px-4 rounded-[24px] text-[13px] leading-relaxed shadow-sm",
|
|
59522
|
-
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"
|
|
59523
59523
|
),
|
|
59524
59524
|
children: [
|
|
59525
59525
|
msg.messageType === msgType.NODE && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "px-1 py-2 whitespace-pre-wrap break-words", children: msg.content }),
|
|
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
|
|
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,
|
|
59527
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 ? "视频解析请求" : "视频推荐" }),
|
|
59528
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(
|
|
59529
59529
|
BiliRecommend$1,
|
|
@@ -59837,7 +59837,7 @@ const MessageContent = (props) => {
|
|
|
59837
59837
|
type: "primary",
|
|
59838
59838
|
disabled: studyPathSaving,
|
|
59839
59839
|
loading: studyPathSaving,
|
|
59840
|
-
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]",
|
|
59841
59841
|
children: [
|
|
59842
59842
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Zap, { className: "h-4 w-4 mr-2" }),
|
|
59843
59843
|
"保存路径"
|
|
@@ -59867,7 +59867,7 @@ const MessageContent = (props) => {
|
|
|
59867
59867
|
const url = `${vgenBaseUrl}/studyMap/${extraInfo.id}`;
|
|
59868
59868
|
window.open(url, "_blank");
|
|
59869
59869
|
},
|
|
59870
|
-
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",
|
|
59871
59871
|
children: "去学习"
|
|
59872
59872
|
}
|
|
59873
59873
|
)
|
|
@@ -59885,7 +59885,7 @@ const MessageContent = (props) => {
|
|
|
59885
59885
|
const url = `${vgenBaseUrl}/knowledgeDetailPage/${extraInfo.knowledgeId}`;
|
|
59886
59886
|
window.open(url, "_blank");
|
|
59887
59887
|
},
|
|
59888
|
-
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",
|
|
59889
59889
|
children: "立即查看"
|
|
59890
59890
|
}
|
|
59891
59891
|
)
|
|
@@ -59905,7 +59905,7 @@ const MessageContent = (props) => {
|
|
|
59905
59905
|
e.stopPropagation();
|
|
59906
59906
|
toCheckQuestions == null ? void 0 : toCheckQuestions(extraInfo);
|
|
59907
59907
|
},
|
|
59908
|
-
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",
|
|
59909
59909
|
children: [
|
|
59910
59910
|
"去答题 (共",
|
|
59911
59911
|
extraInfo.questionCenterIds.length,
|
|
@@ -59918,12 +59918,12 @@ const MessageContent = (props) => {
|
|
|
59918
59918
|
msg.messageType === msgType.REL_RECORD && extraInfo && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "py-4", children: [
|
|
59919
59919
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "pt-4 max-w-[300px]", children: [
|
|
59920
59920
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex gap-2 items-start mb-2", children: [
|
|
59921
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Video, { className: "w-[44px] h-[26px] text-
|
|
59921
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Video, { className: "w-[44px] h-[26px] text-primary-400" }),
|
|
59922
59922
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { title: extraInfo.title, className: "text-[16px] font-bold text-gray-900 line-clamp-1", children: extraInfo.title })
|
|
59923
59923
|
] }),
|
|
59924
59924
|
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-sm text-gray-500 mb-2 leading-relaxed line-clamp-3", children: "点击查看视频分析结果,获取详细的视频内容解析和学习建议。" }),
|
|
59925
59925
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-between pt-4 border-t border-gray-50", children: [
|
|
59926
|
-
/* @__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" }),
|
|
59927
59927
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
59928
59928
|
"button",
|
|
59929
59929
|
{
|
|
@@ -59931,7 +59931,7 @@ const MessageContent = (props) => {
|
|
|
59931
59931
|
e.stopPropagation();
|
|
59932
59932
|
toCheckVideo == null ? void 0 : toCheckVideo(extraInfo.recordId || extraInfo.id);
|
|
59933
59933
|
},
|
|
59934
|
-
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",
|
|
59935
59935
|
children: [
|
|
59936
59936
|
"查看视频",
|
|
59937
59937
|
/* @__PURE__ */ jsxRuntimeExports.jsx(ArrowRight, { className: "w-3.5 h-3.5" })
|
|
@@ -59942,13 +59942,13 @@ const MessageContent = (props) => {
|
|
|
59942
59942
|
] }),
|
|
59943
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: [
|
|
59944
59944
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2 mb-3", children: [
|
|
59945
|
-
/* @__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" }),
|
|
59946
59946
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm font-bold text-gray-800", children: "视频拼命解析中,先来看看这些吧~" })
|
|
59947
59947
|
] }),
|
|
59948
59948
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "space-y-2", children: recommendVideos.map((video) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
59949
59949
|
"div",
|
|
59950
59950
|
{
|
|
59951
|
-
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",
|
|
59952
59952
|
onClick: (e) => {
|
|
59953
59953
|
e.stopPropagation();
|
|
59954
59954
|
recommendVideoSelect(video);
|
|
@@ -59963,7 +59963,7 @@ const MessageContent = (props) => {
|
|
|
59963
59963
|
}
|
|
59964
59964
|
),
|
|
59965
59965
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex-1 min-w-0", children: [
|
|
59966
|
-
/* @__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 }),
|
|
59967
59967
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2 mt-1", children: [
|
|
59968
59968
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-xs text-gray-500 whitespace-nowrap", children: video.createTime.split(" ")[0] }),
|
|
59969
59969
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-xs text-gray-300", children: "•" }),
|
|
@@ -59973,7 +59973,7 @@ const MessageContent = (props) => {
|
|
|
59973
59973
|
] })
|
|
59974
59974
|
] })
|
|
59975
59975
|
] }),
|
|
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-
|
|
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" }) })
|
|
59977
59977
|
]
|
|
59978
59978
|
},
|
|
59979
59979
|
video.recordId
|
|
@@ -60015,7 +60015,7 @@ const MessageContent = (props) => {
|
|
|
60015
60015
|
const url = `${window.location.origin}/taskManagement`;
|
|
60016
60016
|
window.open(url, "_blank");
|
|
60017
60017
|
},
|
|
60018
|
-
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",
|
|
60019
60019
|
children: [
|
|
60020
60020
|
"查看任务",
|
|
60021
60021
|
/* @__PURE__ */ jsxRuntimeExports.jsx(ArrowRight, { className: "w-3.5 h-3.5" })
|
|
@@ -60100,16 +60100,16 @@ const MessageContent = (props) => {
|
|
|
60100
60100
|
onClick: () => {
|
|
60101
60101
|
handleSend({ input: wholeTip, scene: item.scene });
|
|
60102
60102
|
},
|
|
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-
|
|
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",
|
|
60104
60104
|
children: [
|
|
60105
60105
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-3", children: [
|
|
60106
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: [
|
|
60107
60107
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Icon2, { className: `${sceneIconColorMap[item.scene]} w-5 h-5` }),
|
|
60108
60108
|
sceneTitleMap[item.scene]
|
|
60109
60109
|
] }),
|
|
60110
|
-
/* @__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 })
|
|
60111
60111
|
] }),
|
|
60112
|
-
/* @__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" })
|
|
60113
60113
|
]
|
|
60114
60114
|
}
|
|
60115
60115
|
)
|
|
@@ -60133,7 +60133,7 @@ const MessageContent = (props) => {
|
|
|
60133
60133
|
open: sessionToKnowledgeModalVisible,
|
|
60134
60134
|
title: sessionToKnowledgeLoading ? "正在转化..." : "转化完成",
|
|
60135
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: [
|
|
60136
|
-
/* @__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" }) }),
|
|
60137
60137
|
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-gray-600", children: sessionToKnowledgeLoadingText || "正在将对话内容转化为知识点..." })
|
|
60138
60138
|
] }) : /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-center py-4", children: [
|
|
60139
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" }) }) }),
|
|
@@ -60213,6 +60213,7 @@ const TagsTextarea = forwardRef((props, ref) => {
|
|
|
60213
60213
|
getStructuredData: () => structuredData,
|
|
60214
60214
|
addText,
|
|
60215
60215
|
addTag,
|
|
60216
|
+
addQuotedText,
|
|
60216
60217
|
addInput,
|
|
60217
60218
|
addDropdown,
|
|
60218
60219
|
focusInput,
|
|
@@ -60223,10 +60224,12 @@ const TagsTextarea = forwardRef((props, ref) => {
|
|
|
60223
60224
|
const results = [];
|
|
60224
60225
|
const nodes = editorRef.current.childNodes;
|
|
60225
60226
|
nodes.forEach((node2) => {
|
|
60226
|
-
var _a2;
|
|
60227
|
+
var _a2, _b, _c;
|
|
60227
60228
|
if (node2.nodeType === Node.TEXT_NODE) {
|
|
60228
60229
|
const text2 = (_a2 = node2.textContent) == null ? void 0 : _a2.trim();
|
|
60229
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 });
|
|
60230
60233
|
} else if (node2.nodeType === Node.ELEMENT_NODE && node2.nodeName === "BR") {
|
|
60231
60234
|
results.push({ type: "br", value: "" });
|
|
60232
60235
|
} else if (node2.nodeType === Node.ELEMENT_NODE) {
|
|
@@ -60355,6 +60358,20 @@ const TagsTextarea = forwardRef((props, ref) => {
|
|
|
60355
60358
|
span.appendChild(createDeleteBtn(span));
|
|
60356
60359
|
insertNode(span);
|
|
60357
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
|
+
};
|
|
60358
60375
|
const addInput = (value, placeholder2) => {
|
|
60359
60376
|
const span = document.createElement("span");
|
|
60360
60377
|
span.contentEditable = "false";
|
|
@@ -60548,20 +60565,20 @@ const TagsTextarea = forwardRef((props, ref) => {
|
|
|
60548
60565
|
}
|
|
60549
60566
|
) });
|
|
60550
60567
|
});
|
|
60551
|
-
const analyzeCom = "
|
|
60552
|
-
const colletionList = "
|
|
60553
|
-
const colletionListHeader = "
|
|
60554
|
-
const buyVip = "
|
|
60555
|
-
const countText = "
|
|
60556
|
-
const collectionList = "
|
|
60557
|
-
const videoList = "
|
|
60558
|
-
const videoItem = "
|
|
60559
|
-
const title = "
|
|
60560
|
-
const freeBadge = "
|
|
60561
|
-
const icon = "
|
|
60562
|
-
const selected = "
|
|
60563
|
-
const collectionTitle = "
|
|
60564
|
-
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";
|
|
60565
60582
|
const styles = {
|
|
60566
60583
|
analyzeCom,
|
|
60567
60584
|
colletionList,
|
|
@@ -61061,6 +61078,30 @@ const AnalyzeUrl = (props) => {
|
|
|
61061
61078
|
)
|
|
61062
61079
|
] });
|
|
61063
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);
|
|
61064
61105
|
const VgenAgent = forwardRef((props, ref) => {
|
|
61065
61106
|
const {
|
|
61066
61107
|
containerRef,
|
|
@@ -61068,10 +61109,12 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61068
61109
|
viewMode = "default",
|
|
61069
61110
|
courseInfo,
|
|
61070
61111
|
videoInfo,
|
|
61112
|
+
knowledgeInfo,
|
|
61071
61113
|
initPos,
|
|
61072
61114
|
initStyle,
|
|
61073
61115
|
hoverTip,
|
|
61074
|
-
isDev
|
|
61116
|
+
isDev,
|
|
61117
|
+
chatId: chatIdFromPorps
|
|
61075
61118
|
} = props;
|
|
61076
61119
|
const [isLogin, setIsLogin] = useState(false);
|
|
61077
61120
|
const [isAiPanelOpen, setIsAiPanelOpen] = useState(false);
|
|
@@ -61079,7 +61122,7 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61079
61122
|
const [messages2, setMessages] = useState([]);
|
|
61080
61123
|
const [inputValue, setInputValue] = useState("");
|
|
61081
61124
|
const [showPracticeGuide, setShowPracticeGuide] = useState(false);
|
|
61082
|
-
const [chatId, setChatId] = useState(
|
|
61125
|
+
const [chatId, setChatId] = useState(-1);
|
|
61083
61126
|
const [inputPlaceholder, setInputPlaceholder] = useState("在此输入你的需求或问题...");
|
|
61084
61127
|
const [sceneNow, setSceneNow] = useState("");
|
|
61085
61128
|
const [generatedResources, setGeneratedResources] = useState([]);
|
|
@@ -61100,12 +61143,47 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61100
61143
|
const [isMoreActionsOpen, setIsMoreActionsOpen] = useState(false);
|
|
61101
61144
|
const [quotedText, setQuotedText] = useState("");
|
|
61102
61145
|
const [sessionList, setSessionList] = useState([]);
|
|
61146
|
+
const quotedTextRef = useRef("");
|
|
61103
61147
|
const isDragging2 = useRef(false);
|
|
61104
61148
|
const scrollRef = useRef(null);
|
|
61105
61149
|
const scrollToBottomTimer = useRef(null);
|
|
61106
61150
|
const tagsTextareaRef = useRef(null);
|
|
61151
|
+
useEffect(() => {
|
|
61152
|
+
return () => {
|
|
61153
|
+
addQuoteTimer.current && clearTimeout(addQuoteTimer.current);
|
|
61154
|
+
sendMsgTimerRef.current && clearTimeout(sendMsgTimerRef.current);
|
|
61155
|
+
};
|
|
61156
|
+
}, []);
|
|
61157
|
+
const addQuoteTimer = useRef(null);
|
|
61158
|
+
const setQuotedTextAndInput = (text2) => {
|
|
61159
|
+
if (!text2) {
|
|
61160
|
+
setQuotedText("");
|
|
61161
|
+
quotedTextRef.current = "";
|
|
61162
|
+
return;
|
|
61163
|
+
}
|
|
61164
|
+
quotedTextRef.current = text2;
|
|
61165
|
+
setQuotedText(text2);
|
|
61166
|
+
setIsAiPanelOpen(true);
|
|
61167
|
+
addQuoteTimer.current = setTimeout(() => {
|
|
61168
|
+
var _a2, _b;
|
|
61169
|
+
(_a2 = tagsTextareaRef.current) == null ? void 0 : _a2.focusInput();
|
|
61170
|
+
(_b = tagsTextareaRef.current) == null ? void 0 : _b.addQuotedText(`<<<${text2}>>>`);
|
|
61171
|
+
}, 100);
|
|
61172
|
+
};
|
|
61173
|
+
const sendMsgTimerRef = useRef(null);
|
|
61107
61174
|
useImperativeHandle(ref, () => ({
|
|
61108
|
-
setQuotedText: (val) =>
|
|
61175
|
+
setQuotedText: (val) => setQuotedTextAndInput(val),
|
|
61176
|
+
sendMsg: (val) => {
|
|
61177
|
+
setIsAiPanelOpen(true);
|
|
61178
|
+
sendMsgTimerRef.current && clearTimeout(sendMsgTimerRef.current);
|
|
61179
|
+
sendMsgTimerRef.current = setTimeout(() => {
|
|
61180
|
+
var _a2;
|
|
61181
|
+
(_a2 = tagsTextareaRef.current) == null ? void 0 : _a2.focusInput();
|
|
61182
|
+
handleSend({
|
|
61183
|
+
input: val
|
|
61184
|
+
});
|
|
61185
|
+
}, 100);
|
|
61186
|
+
}
|
|
61109
61187
|
}));
|
|
61110
61188
|
useEffect(() => {
|
|
61111
61189
|
if (typeof window !== "undefined") {
|
|
@@ -61125,12 +61203,15 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61125
61203
|
toGetAgentFormFields();
|
|
61126
61204
|
}
|
|
61127
61205
|
}, [isLogin]);
|
|
61206
|
+
useEffect(() => {
|
|
61207
|
+
setChatId(chatIdFromPorps || -1);
|
|
61208
|
+
}, [chatIdFromPorps]);
|
|
61128
61209
|
useEffect(() => {
|
|
61129
61210
|
if (!isLogin) {
|
|
61130
61211
|
return;
|
|
61131
61212
|
}
|
|
61132
61213
|
initGet();
|
|
61133
|
-
}, [isLogin, viewMode]);
|
|
61214
|
+
}, [isLogin, viewMode, videoInfo, courseInfo]);
|
|
61134
61215
|
const toGetAgentFormFields = async () => {
|
|
61135
61216
|
const res = await getAgentFormFields();
|
|
61136
61217
|
setAgentFormFields(res.data);
|
|
@@ -61140,6 +61221,11 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61140
61221
|
case "video":
|
|
61141
61222
|
videoInitGet();
|
|
61142
61223
|
break;
|
|
61224
|
+
case "course":
|
|
61225
|
+
break;
|
|
61226
|
+
case "knowledgeCard":
|
|
61227
|
+
knowledgeCardInitGet();
|
|
61228
|
+
break;
|
|
61143
61229
|
}
|
|
61144
61230
|
};
|
|
61145
61231
|
const videoInitGet = () => {
|
|
@@ -61162,7 +61248,7 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61162
61248
|
if (!res.dataList.length) {
|
|
61163
61249
|
createSession({
|
|
61164
61250
|
btype: 2,
|
|
61165
|
-
|
|
61251
|
+
dataType: 10,
|
|
61166
61252
|
dataId: videoInfo.recordId
|
|
61167
61253
|
}).then((res2) => {
|
|
61168
61254
|
setChatId(res2);
|
|
@@ -61176,6 +61262,46 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61176
61262
|
}
|
|
61177
61263
|
});
|
|
61178
61264
|
};
|
|
61265
|
+
const knowledgeCardInitGet = () => {
|
|
61266
|
+
if (!knowledgeInfo) {
|
|
61267
|
+
message.error("知识卡片信息未传入!");
|
|
61268
|
+
return;
|
|
61269
|
+
}
|
|
61270
|
+
if (chatIdFromPorps) {
|
|
61271
|
+
setChatId(chatIdFromPorps);
|
|
61272
|
+
setSessionList([]);
|
|
61273
|
+
toGetHistoryList(chatIdFromPorps);
|
|
61274
|
+
return;
|
|
61275
|
+
}
|
|
61276
|
+
getSessionListByBiz({
|
|
61277
|
+
currentPage: 1,
|
|
61278
|
+
pageSize: 20,
|
|
61279
|
+
dataBtype: 1,
|
|
61280
|
+
dataId: knowledgeInfo.knowledgeId,
|
|
61281
|
+
orders: [
|
|
61282
|
+
{
|
|
61283
|
+
key: "create_time",
|
|
61284
|
+
asc: false
|
|
61285
|
+
}
|
|
61286
|
+
]
|
|
61287
|
+
}).then((res) => {
|
|
61288
|
+
if (!res.dataList.length) {
|
|
61289
|
+
createSession({
|
|
61290
|
+
btype: 2,
|
|
61291
|
+
dataType: 1,
|
|
61292
|
+
dataId: knowledgeInfo.knowledgeId
|
|
61293
|
+
}).then((res2) => {
|
|
61294
|
+
setChatId(res2);
|
|
61295
|
+
sceneMsgSend(res2);
|
|
61296
|
+
toGetHistoryList(res2);
|
|
61297
|
+
});
|
|
61298
|
+
} else {
|
|
61299
|
+
setChatId(res.dataList[0].id);
|
|
61300
|
+
setSessionList(res.dataList);
|
|
61301
|
+
toGetHistoryList(res.dataList[0].id);
|
|
61302
|
+
}
|
|
61303
|
+
});
|
|
61304
|
+
};
|
|
61179
61305
|
const toSetViewModeTem = () => {
|
|
61180
61306
|
switch (viewMode) {
|
|
61181
61307
|
case "video":
|
|
@@ -61184,6 +61310,9 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61184
61310
|
case "course":
|
|
61185
61311
|
toSetCourseTem();
|
|
61186
61312
|
break;
|
|
61313
|
+
case "knowledgeCard":
|
|
61314
|
+
toSetKnowledgeCardTem();
|
|
61315
|
+
break;
|
|
61187
61316
|
default:
|
|
61188
61317
|
toSetDefaultTem();
|
|
61189
61318
|
break;
|
|
@@ -61234,6 +61363,51 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61234
61363
|
]);
|
|
61235
61364
|
}
|
|
61236
61365
|
};
|
|
61366
|
+
const toSetKnowledgeCardTem = () => {
|
|
61367
|
+
let hasHistory = messages2.length > 0;
|
|
61368
|
+
if (!knowledgeInfo) {
|
|
61369
|
+
setMessages([
|
|
61370
|
+
{
|
|
61371
|
+
role: "ai",
|
|
61372
|
+
messageType: msgType$1.NODE,
|
|
61373
|
+
id: randomNumber(),
|
|
61374
|
+
content: /* @__PURE__ */ jsxRuntimeExports.jsx(DefalutWelcomeMsg, { videoMode: viewMode })
|
|
61375
|
+
}
|
|
61376
|
+
]);
|
|
61377
|
+
return;
|
|
61378
|
+
}
|
|
61379
|
+
if (hasHistory) {
|
|
61380
|
+
setMessages([
|
|
61381
|
+
{
|
|
61382
|
+
role: "ai",
|
|
61383
|
+
messageType: msgType$1.NODE,
|
|
61384
|
+
id: randomNumber(),
|
|
61385
|
+
content: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
61386
|
+
KnowledgeContinueMsg$1,
|
|
61387
|
+
{
|
|
61388
|
+
knowledgeInfo,
|
|
61389
|
+
handleSendMessage: handleSend
|
|
61390
|
+
}
|
|
61391
|
+
)
|
|
61392
|
+
}
|
|
61393
|
+
]);
|
|
61394
|
+
} else {
|
|
61395
|
+
setMessages([
|
|
61396
|
+
{
|
|
61397
|
+
role: "ai",
|
|
61398
|
+
messageType: msgType$1.NODE,
|
|
61399
|
+
id: randomNumber(),
|
|
61400
|
+
content: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
61401
|
+
KnowledgeStartMsg$1,
|
|
61402
|
+
{
|
|
61403
|
+
knowledgeInfo,
|
|
61404
|
+
handleSendMessage: handleSend
|
|
61405
|
+
}
|
|
61406
|
+
)
|
|
61407
|
+
}
|
|
61408
|
+
]);
|
|
61409
|
+
}
|
|
61410
|
+
};
|
|
61237
61411
|
const toSetCourseTem = () => {
|
|
61238
61412
|
if (!courseInfo) {
|
|
61239
61413
|
setMessages([
|
|
@@ -61422,16 +61596,23 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61422
61596
|
setRecommendSceneData(null);
|
|
61423
61597
|
let systemContext = "";
|
|
61424
61598
|
systemContext += `<scene>${scene || sceneNow}</scene>`;
|
|
61599
|
+
const hasQuotedText = quotedTextRef.current && input.startsWith("[");
|
|
61600
|
+
const extraInfo = hasQuotedText ? JSON.stringify({
|
|
61601
|
+
quotedText: quotedTextRef.current
|
|
61602
|
+
}) : void 0;
|
|
61425
61603
|
saveMsg({
|
|
61426
61604
|
role: "user",
|
|
61427
61605
|
content: input,
|
|
61428
61606
|
toPost: false,
|
|
61429
61607
|
currnetMsgId: randomNumber(1e4, 1e5),
|
|
61430
|
-
messageType: msgType$1.TEXT
|
|
61608
|
+
messageType: msgType$1.TEXT,
|
|
61609
|
+
extraInfo
|
|
61431
61610
|
});
|
|
61432
61611
|
scrollToBottom();
|
|
61433
61612
|
setInputValue("");
|
|
61434
61613
|
setSceneNow("");
|
|
61614
|
+
setQuotedText("");
|
|
61615
|
+
quotedTextRef.current = "";
|
|
61435
61616
|
const currnetMsgId = randomNumber(1e4, 1e5);
|
|
61436
61617
|
const extraObj = {
|
|
61437
61618
|
enableSearch: enableGlobalSearch,
|
|
@@ -61713,7 +61894,7 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61713
61894
|
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(
|
|
61714
61895
|
"div",
|
|
61715
61896
|
{
|
|
61716
|
-
className: "flex items-center gap-3 p-2.5 rounded-xl cursor-pointer hover:bg-
|
|
61897
|
+
className: "flex items-center gap-3 p-2.5 rounded-xl cursor-pointer hover:bg-primary-50 group transition-colors",
|
|
61717
61898
|
onClick: () => {
|
|
61718
61899
|
switch (res.type) {
|
|
61719
61900
|
case msgType$1.REL_KNOWLEDGE_CARD:
|
|
@@ -61735,13 +61916,13 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61735
61916
|
{
|
|
61736
61917
|
className: cn(
|
|
61737
61918
|
"w-8 h-8 rounded-lg flex items-center justify-center shrink-0",
|
|
61738
|
-
res.type === msgType$1.REL_LEARN_PATH ? "bg-
|
|
61919
|
+
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"
|
|
61739
61920
|
),
|
|
61740
61921
|
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" })
|
|
61741
61922
|
}
|
|
61742
61923
|
),
|
|
61743
61924
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex-1 min-w-0", children: [
|
|
61744
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-[12px] font-bold text-gray-900 truncate group-hover:text-
|
|
61925
|
+
/* @__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 }),
|
|
61745
61926
|
/* @__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 ? "练习题" : "知识讲解" })
|
|
61746
61927
|
] })
|
|
61747
61928
|
]
|
|
@@ -61847,8 +62028,8 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61847
62028
|
"div",
|
|
61848
62029
|
{
|
|
61849
62030
|
className: cn(
|
|
61850
|
-
"bg-white p-3 rounded-xl border border-gray-100 shadow-sm hover:border-
|
|
61851
|
-
item.id === chatId && "border-
|
|
62031
|
+
"bg-white p-3 rounded-xl border border-gray-100 shadow-sm hover:border-primary-200 transition-colors cursor-pointer group relative",
|
|
62032
|
+
item.id === chatId && "border-primary-300"
|
|
61852
62033
|
),
|
|
61853
62034
|
onClick: () => {
|
|
61854
62035
|
toGetHistoryList(item.id);
|
|
@@ -61900,6 +62081,18 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61900
62081
|
messageType: msgType$1.INVISIBLE_TEXT
|
|
61901
62082
|
});
|
|
61902
62083
|
break;
|
|
62084
|
+
case "course":
|
|
62085
|
+
break;
|
|
62086
|
+
case "knowledgeCard":
|
|
62087
|
+
saveMsg({
|
|
62088
|
+
role: "user",
|
|
62089
|
+
content: (knowledgeInfo == null ? void 0 : knowledgeInfo.content) || "",
|
|
62090
|
+
onlyPost: true,
|
|
62091
|
+
toPost: true,
|
|
62092
|
+
chatId: chatIdHere,
|
|
62093
|
+
messageType: msgType$1.INVISIBLE_TEXT
|
|
62094
|
+
});
|
|
62095
|
+
break;
|
|
61903
62096
|
}
|
|
61904
62097
|
};
|
|
61905
62098
|
const addNewSession = () => {
|
|
@@ -61907,7 +62100,7 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
61907
62100
|
case "video":
|
|
61908
62101
|
createSession({
|
|
61909
62102
|
btype: 2,
|
|
61910
|
-
|
|
62103
|
+
dataType: 10,
|
|
61911
62104
|
dataId: videoInfo == null ? void 0 : videoInfo.recordId
|
|
61912
62105
|
}).then((res) => {
|
|
61913
62106
|
setChatId(res);
|
|
@@ -62026,17 +62219,17 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
62026
62219
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-[13px] font-bold text-gray-800", children: "饼干 AI 学伴" })
|
|
62027
62220
|
] }),
|
|
62028
62221
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-1 z-10", children: [
|
|
62029
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: "开启新对话", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
62222
|
+
viewMode !== "knowledgeCard" && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: "开启新对话", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
62030
62223
|
"button",
|
|
62031
62224
|
{
|
|
62032
62225
|
onClick: () => {
|
|
62033
62226
|
addNewSession();
|
|
62034
62227
|
},
|
|
62035
|
-
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",
|
|
62036
62229
|
children: /* @__PURE__ */ jsxRuntimeExports.jsx(Plus, { className: "w-4 h-4" })
|
|
62037
62230
|
}
|
|
62038
62231
|
) }),
|
|
62039
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
62232
|
+
viewMode !== "knowledgeCard" && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
62040
62233
|
Popover,
|
|
62041
62234
|
{
|
|
62042
62235
|
placement: "bottomRight",
|
|
@@ -62045,7 +62238,7 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
62045
62238
|
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
62046
62239
|
"button",
|
|
62047
62240
|
{
|
|
62048
|
-
className: "p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-
|
|
62241
|
+
className: "p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-primary-600 transition-colors",
|
|
62049
62242
|
children: /* @__PURE__ */ jsxRuntimeExports.jsx(History, { className: "w-4 h-4" })
|
|
62050
62243
|
}
|
|
62051
62244
|
)
|
|
@@ -62063,13 +62256,13 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
62063
62256
|
]
|
|
62064
62257
|
}
|
|
62065
62258
|
),
|
|
62066
|
-
viewMode === "video" && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "bg-
|
|
62067
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { title: videoInfo == null ? void 0 : videoInfo.name, className: "text-[11px] font-medium text-
|
|
62259
|
+
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: [
|
|
62260
|
+
/* @__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 }),
|
|
62068
62261
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex flex-wrap gap-2", children: ["视频总结", "章节大纲"].map(
|
|
62069
62262
|
(item) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
62070
62263
|
"button",
|
|
62071
62264
|
{
|
|
62072
|
-
className: "px-2 py-1 bg-white border border-
|
|
62265
|
+
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",
|
|
62073
62266
|
children: item
|
|
62074
62267
|
},
|
|
62075
62268
|
item
|
|
@@ -62138,7 +62331,7 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
62138
62331
|
] }),
|
|
62139
62332
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "h-px bg-gray-100" }),
|
|
62140
62333
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-3", children: [
|
|
62141
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: "text-[12px] font-bold text-
|
|
62334
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: "text-[12px] font-bold text-primary-900 flex items-center gap-1.5 justify-center", children: [
|
|
62142
62335
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Star, { className: "w-4 h-4 text-yellow-500 fill-yellow-500" }),
|
|
62143
62336
|
" ",
|
|
62144
62337
|
"🌟 Vgen 深度学习"
|
|
@@ -62164,7 +62357,7 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
62164
62357
|
Button,
|
|
62165
62358
|
{
|
|
62166
62359
|
type: "primary",
|
|
62167
|
-
className: "w-full bg-
|
|
62360
|
+
className: "w-full bg-primary-600 text-white h-10 font-bold border-none",
|
|
62168
62361
|
onClick: () => {
|
|
62169
62362
|
setShowPracticeGuide(false);
|
|
62170
62363
|
window.open(
|
|
@@ -62196,10 +62389,10 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
62196
62389
|
"button",
|
|
62197
62390
|
{
|
|
62198
62391
|
onClick: () => handleSend({ input: item.label }),
|
|
62199
|
-
className: "flex items-center gap-1.5 px-3 py-1.5 bg-white border border-gray-100 rounded-full shadow-sm hover:border-
|
|
62392
|
+
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",
|
|
62200
62393
|
children: [
|
|
62201
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: cn("text-
|
|
62202
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[11px] font-medium text-gray-600 group-hover:text-
|
|
62394
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: cn("text-primary-500", "w-3.5 h-3.5"), children: item.icon }),
|
|
62395
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[11px] font-medium text-gray-600 group-hover:text-primary-600 whitespace-nowrap", children: item.label })
|
|
62203
62396
|
]
|
|
62204
62397
|
},
|
|
62205
62398
|
item.id
|
|
@@ -62211,10 +62404,10 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
62211
62404
|
onClick: () => setIsMoreActionsOpen(!isMoreActionsOpen),
|
|
62212
62405
|
className: cn(
|
|
62213
62406
|
"flex items-center gap-1.5 px-3 py-1.5 border rounded-full shadow-sm transition-all active:scale-95",
|
|
62214
|
-
isMoreActionsOpen ? "bg-
|
|
62407
|
+
isMoreActionsOpen ? "bg-primary-600 border-primary-600 text-white" : "bg-primary-50 border-primary-100 text-primary-700 hover:bg-primary-100"
|
|
62215
62408
|
),
|
|
62216
62409
|
children: [
|
|
62217
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Sparkles, { className: cn("w-3.5 h-3.5", isMoreActionsOpen ? "text-white" : "text-
|
|
62410
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Sparkles, { className: cn("w-3.5 h-3.5", isMoreActionsOpen ? "text-white" : "text-primary-600") }),
|
|
62218
62411
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[11px] font-bold whitespace-nowrap", children: "更多" })
|
|
62219
62412
|
]
|
|
62220
62413
|
}
|
|
@@ -62243,7 +62436,7 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
62243
62436
|
label: "生成学习路径",
|
|
62244
62437
|
desc: "帮我生成学习路径",
|
|
62245
62438
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(GitBranch, { className: "w-3.5 h-3.5" }),
|
|
62246
|
-
color: "text-
|
|
62439
|
+
color: "text-primary-500"
|
|
62247
62440
|
},
|
|
62248
62441
|
{
|
|
62249
62442
|
label: "AI智能出题",
|
|
@@ -62276,78 +62469,59 @@ const VgenAgent = forwardRef((props, ref) => {
|
|
|
62276
62469
|
] })
|
|
62277
62470
|
] })
|
|
62278
62471
|
] }) }),
|
|
62279
|
-
/* @__PURE__ */ jsxRuntimeExports.
|
|
62280
|
-
|
|
62281
|
-
|
|
62282
|
-
|
|
62283
|
-
|
|
62284
|
-
|
|
62285
|
-
|
|
62286
|
-
|
|
62287
|
-
|
|
62288
|
-
|
|
62289
|
-
|
|
62290
|
-
|
|
62291
|
-
|
|
62292
|
-
|
|
62293
|
-
|
|
62294
|
-
|
|
62295
|
-
|
|
62296
|
-
|
|
62297
|
-
|
|
62298
|
-
|
|
62299
|
-
|
|
62300
|
-
|
|
62301
|
-
|
|
62302
|
-
|
|
62303
|
-
|
|
62304
|
-
|
|
62305
|
-
|
|
62306
|
-
|
|
62307
|
-
|
|
62308
|
-
|
|
62309
|
-
|
|
62310
|
-
|
|
62311
|
-
|
|
62312
|
-
|
|
62313
|
-
|
|
62314
|
-
|
|
62315
|
-
|
|
62316
|
-
|
|
62317
|
-
|
|
62318
|
-
|
|
62319
|
-
|
|
62320
|
-
|
|
62321
|
-
|
|
62322
|
-
{
|
|
62323
|
-
|
|
62324
|
-
|
|
62325
|
-
|
|
62326
|
-
|
|
62327
|
-
|
|
62328
|
-
|
|
62329
|
-
|
|
62330
|
-
|
|
62331
|
-
|
|
62332
|
-
inputValue.trim() ? "bg-blue-600 text-white shadow-blue-200" : "bg-gray-200 text-white"
|
|
62333
|
-
),
|
|
62334
|
-
children: /* @__PURE__ */ jsxRuntimeExports.jsx(Send, { className: "w-4 h-4" })
|
|
62335
|
-
}
|
|
62336
|
-
) : /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: "停止回答", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
62337
|
-
Button,
|
|
62338
|
-
{
|
|
62339
|
-
type: "primary",
|
|
62340
|
-
onClick: () => {
|
|
62341
|
-
sendMsgController.current.close();
|
|
62342
|
-
setAnswerIsDone(true);
|
|
62343
|
-
setInputValue("");
|
|
62344
|
-
},
|
|
62345
|
-
className: "rounded-xl h-10 px-3 shadow-lg transition-all flex items-center justify-center bg-blue-500 text-white",
|
|
62346
|
-
children: /* @__PURE__ */ jsxRuntimeExports.jsx(CircleStop, { className: "w-5 h-5" })
|
|
62347
|
-
}
|
|
62348
|
-
) })
|
|
62349
|
-
] })
|
|
62350
|
-
] })
|
|
62472
|
+
/* @__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: [
|
|
62473
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
62474
|
+
"div",
|
|
62475
|
+
{
|
|
62476
|
+
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",
|
|
62477
|
+
style: {
|
|
62478
|
+
paddingTop: "6px"
|
|
62479
|
+
},
|
|
62480
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
62481
|
+
TagsTextarea,
|
|
62482
|
+
{
|
|
62483
|
+
minHeight: 30,
|
|
62484
|
+
maxHeight: 120,
|
|
62485
|
+
onChange: tagsTextareaValueChange,
|
|
62486
|
+
placeholder: inputPlaceholder,
|
|
62487
|
+
sendMsg: () => {
|
|
62488
|
+
handleSend({ input: inputValue });
|
|
62489
|
+
},
|
|
62490
|
+
ref: tagsTextareaRef
|
|
62491
|
+
}
|
|
62492
|
+
)
|
|
62493
|
+
}
|
|
62494
|
+
),
|
|
62495
|
+
answerIsDone ? /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
62496
|
+
Button,
|
|
62497
|
+
{
|
|
62498
|
+
type: "primary",
|
|
62499
|
+
onClick: () => {
|
|
62500
|
+
var _a2;
|
|
62501
|
+
handleSend({ input: inputValue });
|
|
62502
|
+
(_a2 = tagsTextareaRef.current) == null ? void 0 : _a2.clearContent();
|
|
62503
|
+
},
|
|
62504
|
+
disabled: !inputValue.trim(),
|
|
62505
|
+
className: cn(
|
|
62506
|
+
"rounded-xl h-10 px-3 shadow-lg transition-all flex items-center justify-center",
|
|
62507
|
+
inputValue.trim() ? "bg-primary-600 text-white shadow-primary-200" : "bg-gray-200 text-white"
|
|
62508
|
+
),
|
|
62509
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(Send, { className: "w-4 h-4" })
|
|
62510
|
+
}
|
|
62511
|
+
) : /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, { title: "停止回答", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
62512
|
+
Button,
|
|
62513
|
+
{
|
|
62514
|
+
type: "primary",
|
|
62515
|
+
onClick: () => {
|
|
62516
|
+
sendMsgController.current.close();
|
|
62517
|
+
setAnswerIsDone(true);
|
|
62518
|
+
setInputValue("");
|
|
62519
|
+
},
|
|
62520
|
+
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",
|
|
62521
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(CircleStop, { className: "w-5 h-5" })
|
|
62522
|
+
}
|
|
62523
|
+
) })
|
|
62524
|
+
] }) })
|
|
62351
62525
|
] })
|
|
62352
62526
|
]
|
|
62353
62527
|
}
|