mario-education 2.4.600-feedback → 2.4.601-feedback
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/containers/MarioAi/cofigs/type.d.ts +13 -0
- package/dist/index.js +49 -164
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +49 -164
- package/dist/index.modern.js.map +1 -1
- package/dist/services/geminiAiService.d.ts +2 -1
- package/package.json +1 -1
|
@@ -119,3 +119,16 @@ export interface IAnswer {
|
|
|
119
119
|
startTime: string;
|
|
120
120
|
teacherName: string;
|
|
121
121
|
}
|
|
122
|
+
export interface AiRequest {
|
|
123
|
+
historyId?: number;
|
|
124
|
+
promptId: number;
|
|
125
|
+
labelTime: string;
|
|
126
|
+
startDate?: number;
|
|
127
|
+
endDate?: number;
|
|
128
|
+
studentName: string;
|
|
129
|
+
chatHistory: IChat[];
|
|
130
|
+
}
|
|
131
|
+
export interface FilterRequest {
|
|
132
|
+
startDate?: number;
|
|
133
|
+
endDate?: number;
|
|
134
|
+
}
|
package/dist/index.js
CHANGED
|
@@ -80095,7 +80095,7 @@ var useGeminiAI = function useGeminiAI() {
|
|
|
80095
80095
|
var _temp4 = _catch(function () {
|
|
80096
80096
|
var _systemPrompt;
|
|
80097
80097
|
|
|
80098
|
-
var genAI = new generativeAi.GoogleGenerativeAI("
|
|
80098
|
+
var genAI = new generativeAi.GoogleGenerativeAI("AIzaSyAb1MebW5BcT__I8WZtbvKkDHYzZDHKZro");
|
|
80099
80099
|
var model = genAI.getGenerativeModel({
|
|
80100
80100
|
model: "gemini-1.5-flash",
|
|
80101
80101
|
generationConfig: {
|
|
@@ -80269,7 +80269,6 @@ var CALENDAR_OPTIONS$2 = [{
|
|
|
80269
80269
|
startDate: moment().startOf("year").valueOf(),
|
|
80270
80270
|
endDate: moment().endOf("year").valueOf()
|
|
80271
80271
|
}];
|
|
80272
|
-
var timeKeywords = ["this month", "this week", "this year", "last month", "last week", "last year", "today"];
|
|
80273
80272
|
var IDataType;
|
|
80274
80273
|
|
|
80275
80274
|
(function (IDataType) {
|
|
@@ -80559,6 +80558,7 @@ var ListPrompts = function ListPrompts(_ref) {
|
|
|
80559
80558
|
};
|
|
80560
80559
|
|
|
80561
80560
|
var PROMPT_URL = marioCore.BASE_URL + "/api/Prompt";
|
|
80561
|
+
var GEMINI_AI_URL = marioCore.BASE_URL + "/api/GeminiAi";
|
|
80562
80562
|
var getPrompt = function getPrompt() {
|
|
80563
80563
|
return marioCore.api.get("" + PROMPT_URL);
|
|
80564
80564
|
};
|
|
@@ -80568,11 +80568,6 @@ var getById$p = function getById(id) {
|
|
|
80568
80568
|
var getHistoryPrompt = function getHistoryPrompt() {
|
|
80569
80569
|
return marioCore.api.get(PROMPT_URL + "/history");
|
|
80570
80570
|
};
|
|
80571
|
-
var getSessionAnswer = function getSessionAnswer(params) {
|
|
80572
|
-
return marioCore.api.get(PROMPT_URL + "/session-data", {
|
|
80573
|
-
params: params
|
|
80574
|
-
});
|
|
80575
|
-
};
|
|
80576
80571
|
var createHistory = function createHistory(data) {
|
|
80577
80572
|
return marioCore.api.post(PROMPT_URL + "/create-history", data);
|
|
80578
80573
|
};
|
|
@@ -80582,10 +80577,8 @@ var removeHistory = function removeHistory(id) {
|
|
|
80582
80577
|
var getHistoryById = function getHistoryById(id) {
|
|
80583
80578
|
return marioCore.api.get(PROMPT_URL + "/history/" + id);
|
|
80584
80579
|
};
|
|
80585
|
-
var
|
|
80586
|
-
return marioCore.api.
|
|
80587
|
-
params: params
|
|
80588
|
-
});
|
|
80580
|
+
var chatWithAi = function chatWithAi(data) {
|
|
80581
|
+
return marioCore.api.post(GEMINI_AI_URL + "/generate", data);
|
|
80589
80582
|
};
|
|
80590
80583
|
|
|
80591
80584
|
var useAIMario = function useAIMario() {
|
|
@@ -80952,24 +80945,13 @@ var useAIChat = function useAIChat() {
|
|
|
80952
80945
|
historyId = _useState4[0],
|
|
80953
80946
|
setHistoryId = _useState4[1];
|
|
80954
80947
|
|
|
80955
|
-
var _useState5 = React.useState(
|
|
80956
|
-
|
|
80957
|
-
|
|
80948
|
+
var _useState5 = React.useState(""),
|
|
80949
|
+
inputString = _useState5[0],
|
|
80950
|
+
setInputString = _useState5[1];
|
|
80958
80951
|
|
|
80959
|
-
var _useState6 = React.useState(
|
|
80960
|
-
|
|
80961
|
-
|
|
80962
|
-
|
|
80963
|
-
var _useState7 = React.useState({
|
|
80964
|
-
checkInCompleteCount: 0,
|
|
80965
|
-
checkInCount: 0,
|
|
80966
|
-
oneToOneCompleteCount: 0,
|
|
80967
|
-
oneToOneCount: 0,
|
|
80968
|
-
studentNotDoneCheckIns: [],
|
|
80969
|
-
studentNotDoneConversations: []
|
|
80970
|
-
}),
|
|
80971
|
-
totalCheckIns = _useState7[0],
|
|
80972
|
-
setTotalCheckIns = _useState7[1];
|
|
80952
|
+
var _useState6 = React.useState(),
|
|
80953
|
+
filters = _useState6[0],
|
|
80954
|
+
setFilters = _useState6[1];
|
|
80973
80955
|
|
|
80974
80956
|
var goBack = function goBack() {
|
|
80975
80957
|
history.goBack();
|
|
@@ -81050,8 +81032,8 @@ var useAIChat = function useAIChat() {
|
|
|
81050
81032
|
isSystem: false
|
|
81051
81033
|
}]);
|
|
81052
81034
|
setChats(responses);
|
|
81053
|
-
var startDate;
|
|
81054
|
-
var endDate;
|
|
81035
|
+
var startDate = filters === null || filters === void 0 ? void 0 : filters.startDate;
|
|
81036
|
+
var endDate = filters === null || filters === void 0 ? void 0 : filters.endDate;
|
|
81055
81037
|
|
|
81056
81038
|
switch (option.toLowerCase()) {
|
|
81057
81039
|
case "this month":
|
|
@@ -81083,20 +81065,14 @@ var useAIChat = function useAIChat() {
|
|
|
81083
81065
|
break;
|
|
81084
81066
|
}
|
|
81085
81067
|
|
|
81086
|
-
if (
|
|
81087
|
-
|
|
81088
|
-
|
|
81089
|
-
|
|
81090
|
-
|
|
81091
|
-
!!prompt && askGeminiAI(dataInputPrompt, prompt, "", responses);
|
|
81092
|
-
} else {
|
|
81093
|
-
var _dataInputPrompt = "This is the data:\n" + (!(answers !== null && answers !== void 0 && answers.length) ? "No data available for analysis." : answers.map(function (r) {
|
|
81094
|
-
return "Student name: " + r.fullName + ", \n Answer: " + r.answer + ", \n Student grade: " + r.grade + ", \n Start time: " + r.startTime + ", \n Question: " + r.question + ", \n Teacher name: " + r.teacherName + ";";
|
|
81095
|
-
}).join("\n"));
|
|
81096
|
-
|
|
81097
|
-
!!prompt && askGeminiAI(_dataInputPrompt, prompt, "", responses);
|
|
81098
|
-
}
|
|
81068
|
+
if (endDate && startDate) {
|
|
81069
|
+
setFilters({
|
|
81070
|
+
startDate: startDate,
|
|
81071
|
+
endDate: endDate
|
|
81072
|
+
});
|
|
81099
81073
|
}
|
|
81074
|
+
|
|
81075
|
+
!!prompt && askGeminiAI(prompt, option, responses, startDate, endDate);
|
|
81100
81076
|
} catch (err) {
|
|
81101
81077
|
var _err$response;
|
|
81102
81078
|
|
|
@@ -81107,33 +81083,11 @@ var useAIChat = function useAIChat() {
|
|
|
81107
81083
|
}
|
|
81108
81084
|
};
|
|
81109
81085
|
|
|
81110
|
-
var
|
|
81086
|
+
var saveHistoryPrompt = React.useCallback(function (data) {
|
|
81111
81087
|
try {
|
|
81112
81088
|
var _temp6 = _catch(function () {
|
|
81113
|
-
|
|
81114
|
-
|
|
81115
|
-
endDate: endDate,
|
|
81116
|
-
question: prompt.question,
|
|
81117
|
-
instruction: prompt.instruction,
|
|
81118
|
-
studentName: inputString
|
|
81119
|
-
};
|
|
81120
|
-
return Promise.resolve(prompt.dataType != IDataType.Total ? getSessionAnswer(filters) : getTotalSession(filters)).then(function (res) {
|
|
81121
|
-
if (prompt.dataType == IDataType.Total) {
|
|
81122
|
-
setTotalCheckIns(res.data);
|
|
81123
|
-
var totals = res.data;
|
|
81124
|
-
var dataInputPrompt = "Here is the data summary: \n - Total check-ins: " + totals.checkInCount + " \n - Completed check-ins: " + totals.checkInCompleteCount + " \n - Total one-on-one sessions: " + totals.oneToOneCount + " \n - Completed one-on-one sessions: " + totals.oneToOneCompleteCount + " \n\n The following students and teachers have not completed their tasks: \n - Pending check-ins: " + totals.studentNotDoneCheckIns.join(", ") + " \n - Pending one-on-one conversations: " + totals.studentNotDoneConversations.join(", ");
|
|
81125
|
-
askGeminiAI(dataInputPrompt, prompt, labelTime, responses);
|
|
81126
|
-
} else {
|
|
81127
|
-
var _answers = res.data || [];
|
|
81128
|
-
|
|
81129
|
-
setAnswers(_answers);
|
|
81130
|
-
|
|
81131
|
-
var _dataInputPrompt2 = "This is the data:\n" + (!(_answers !== null && _answers !== void 0 && _answers.length) ? "No data available for analysis." : _answers.map(function (r) {
|
|
81132
|
-
return "Student name: " + r.fullName + ", \n Answer: " + r.answer + ", \n Student grade: " + r.grade + ", \n Start time: " + r.startTime + ", \n Question: " + r.question + ", \n Teacher name: " + r.teacherName + ";";
|
|
81133
|
-
}).join("\n"));
|
|
81134
|
-
|
|
81135
|
-
askGeminiAI(_dataInputPrompt2, prompt, labelTime, responses);
|
|
81136
|
-
}
|
|
81089
|
+
return Promise.resolve(createHistory(data)).then(function (res) {
|
|
81090
|
+
setHistoryId(res.data);
|
|
81137
81091
|
});
|
|
81138
81092
|
}, function (err) {
|
|
81139
81093
|
var _err$response2;
|
|
@@ -81148,103 +81102,23 @@ var useAIChat = function useAIChat() {
|
|
|
81148
81102
|
} catch (e) {
|
|
81149
81103
|
return Promise.reject(e);
|
|
81150
81104
|
}
|
|
81151
|
-
}, [prompt, historyId, inputString]);
|
|
81152
|
-
var saveHistoryPrompt = React.useCallback(function (data) {
|
|
81153
|
-
try {
|
|
81154
|
-
var _temp8 = _catch(function () {
|
|
81155
|
-
return Promise.resolve(createHistory(data)).then(function (res) {
|
|
81156
|
-
setHistoryId(res.data);
|
|
81157
|
-
});
|
|
81158
|
-
}, function (err) {
|
|
81159
|
-
var _err$response3;
|
|
81160
|
-
|
|
81161
|
-
dispatch(marioCore.setAlert({
|
|
81162
|
-
type: "danger",
|
|
81163
|
-
message: ((_err$response3 = err.response) === null || _err$response3 === void 0 ? void 0 : _err$response3.data) || err.message
|
|
81164
|
-
}));
|
|
81165
|
-
});
|
|
81166
|
-
|
|
81167
|
-
return Promise.resolve(_temp8 && _temp8.then ? _temp8.then(function () {}) : void 0);
|
|
81168
|
-
} catch (e) {
|
|
81169
|
-
return Promise.reject(e);
|
|
81170
|
-
}
|
|
81171
81105
|
}, [historyId]);
|
|
81172
81106
|
|
|
81173
|
-
var askGeminiAI = function askGeminiAI(
|
|
81107
|
+
var askGeminiAI = function askGeminiAI(prompt, labelTime, responses, startDate, endDate) {
|
|
81174
81108
|
try {
|
|
81175
|
-
var
|
|
81176
|
-
|
|
81177
|
-
|
|
81178
|
-
|
|
81179
|
-
|
|
81180
|
-
|
|
81181
|
-
|
|
81182
|
-
|
|
81183
|
-
|
|
81184
|
-
}).
|
|
81185
|
-
var
|
|
81186
|
-
|
|
81187
|
-
return {
|
|
81188
|
-
role: (_i$role2 = i.role) === null || _i$role2 === void 0 ? void 0 : _i$role2.toString().toLowerCase(),
|
|
81189
|
-
parts: [{
|
|
81190
|
-
text: (_i$message = i.message) === null || _i$message === void 0 ? void 0 : _i$message.replace(/{time}/g, labelTime)
|
|
81191
|
-
}]
|
|
81192
|
-
};
|
|
81193
|
-
});
|
|
81194
|
-
var updatedChatHistory = responses.filter(function (r) {
|
|
81195
|
-
return r.message;
|
|
81196
|
-
}).reduce(function (acc, i) {
|
|
81197
|
-
acc.push({
|
|
81198
|
-
role: i.isUser ? "user" : "model",
|
|
81199
|
-
parts: [{
|
|
81200
|
-
text: i.message
|
|
81201
|
-
}]
|
|
81202
|
-
});
|
|
81203
|
-
|
|
81204
|
-
if (timeKeywords.includes(i.message.toLowerCase())) {
|
|
81205
|
-
acc.push({
|
|
81206
|
-
role: "user",
|
|
81207
|
-
parts: [{
|
|
81208
|
-
text: dataInputPrompt
|
|
81209
|
-
}]
|
|
81210
|
-
});
|
|
81211
|
-
}
|
|
81212
|
-
|
|
81213
|
-
return acc;
|
|
81214
|
-
}, []);
|
|
81215
|
-
var systemMessages = prompt.messages.filter(function (r) {
|
|
81216
|
-
var _r$role3;
|
|
81217
|
-
|
|
81218
|
-
return ((_r$role3 = r.role) === null || _r$role3 === void 0 ? void 0 : _r$role3.toString()) == "System";
|
|
81219
|
-
}).map(function (i) {
|
|
81220
|
-
var _i$message2;
|
|
81221
|
-
|
|
81222
|
-
return {
|
|
81223
|
-
text: (_i$message2 = i.message) === null || _i$message2 === void 0 ? void 0 : _i$message2.replace(/{time}/g, labelTime)
|
|
81224
|
-
};
|
|
81225
|
-
});
|
|
81226
|
-
var contents = [].concat(userMessages, updatedChatHistory);
|
|
81227
|
-
return Promise.resolve(model.generateContent({
|
|
81228
|
-
contents: contents,
|
|
81229
|
-
systemInstruction: {
|
|
81230
|
-
role: "system",
|
|
81231
|
-
parts: [].concat(systemMessages, [{
|
|
81232
|
-
text: dataInputPrompt
|
|
81233
|
-
}])
|
|
81234
|
-
},
|
|
81235
|
-
generationConfig: {
|
|
81236
|
-
temperature: prompt.temperature,
|
|
81237
|
-
topP: prompt.topP,
|
|
81238
|
-
topK: prompt.topK,
|
|
81239
|
-
maxOutputTokens: prompt.maxOutputTokens,
|
|
81240
|
-
frequencyPenalty: prompt.frequencyPenalty,
|
|
81241
|
-
presencePenalty: prompt.presencePenalty,
|
|
81242
|
-
responseMimeType: "text/plain"
|
|
81243
|
-
}
|
|
81244
|
-
})).then(function (result) {
|
|
81245
|
-
var _result$response;
|
|
81109
|
+
var _temp8 = _catch(function () {
|
|
81110
|
+
return Promise.resolve(chatWithAi({
|
|
81111
|
+
chatHistory: responses,
|
|
81112
|
+
startDate: startDate,
|
|
81113
|
+
endDate: endDate,
|
|
81114
|
+
studentName: inputString,
|
|
81115
|
+
promptId: prompt.id,
|
|
81116
|
+
labelTime: labelTime,
|
|
81117
|
+
historyId: historyId || undefined
|
|
81118
|
+
})).then(function (res) {
|
|
81119
|
+
var _res$data;
|
|
81246
81120
|
|
|
81247
|
-
var partialText =
|
|
81121
|
+
var partialText = (res === null || res === void 0 ? void 0 : (_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.text) || "";
|
|
81248
81122
|
|
|
81249
81123
|
if (!!partialText) {
|
|
81250
81124
|
var aiChats = [];
|
|
@@ -81273,6 +81147,17 @@ var useAIChat = function useAIChat() {
|
|
|
81273
81147
|
aiChats = updatedChats;
|
|
81274
81148
|
return updatedChats;
|
|
81275
81149
|
});
|
|
81150
|
+
var systemMessages = prompt.messages.filter(function (r) {
|
|
81151
|
+
var _r$role2;
|
|
81152
|
+
|
|
81153
|
+
return ((_r$role2 = r.role) === null || _r$role2 === void 0 ? void 0 : _r$role2.toString()) == "System";
|
|
81154
|
+
}).map(function (i) {
|
|
81155
|
+
var _i$message;
|
|
81156
|
+
|
|
81157
|
+
return {
|
|
81158
|
+
text: (_i$message = i.message) === null || _i$message === void 0 ? void 0 : _i$message.replace(/{time}/g, labelTime)
|
|
81159
|
+
};
|
|
81160
|
+
});
|
|
81276
81161
|
var formattedSystemMessages = systemMessages.map(function (msg) {
|
|
81277
81162
|
return {
|
|
81278
81163
|
message: msg.text,
|
|
@@ -81293,15 +81178,15 @@ var useAIChat = function useAIChat() {
|
|
|
81293
81178
|
}
|
|
81294
81179
|
});
|
|
81295
81180
|
}, function (err) {
|
|
81296
|
-
var _err$
|
|
81181
|
+
var _err$response3, _err$response3$data;
|
|
81297
81182
|
|
|
81298
81183
|
dispatch(marioCore.setAlert({
|
|
81299
81184
|
type: "danger",
|
|
81300
|
-
message: ((_err$
|
|
81185
|
+
message: ((_err$response3 = err.response) === null || _err$response3 === void 0 ? void 0 : (_err$response3$data = _err$response3.data) === null || _err$response3$data === void 0 ? void 0 : _err$response3$data.title) || err.message
|
|
81301
81186
|
}));
|
|
81302
81187
|
});
|
|
81303
81188
|
|
|
81304
|
-
return Promise.resolve(
|
|
81189
|
+
return Promise.resolve(_temp8 && _temp8.then ? _temp8.then(function () {}) : void 0);
|
|
81305
81190
|
} catch (e) {
|
|
81306
81191
|
return Promise.reject(e);
|
|
81307
81192
|
}
|