analytica-frontend-lib 1.1.31 → 1.1.32
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/Quiz/index.js +40 -0
- package/dist/Quiz/index.js.map +1 -1
- package/dist/Quiz/index.mjs +40 -0
- package/dist/Quiz/index.mjs.map +1 -1
- package/dist/Quiz/useQuizStore/index.d.mts +6 -1
- package/dist/Quiz/useQuizStore/index.d.ts +6 -1
- package/dist/Quiz/useQuizStore/index.js +42 -0
- package/dist/Quiz/useQuizStore/index.js.map +1 -1
- package/dist/Quiz/useQuizStore/index.mjs +41 -0
- package/dist/Quiz/useQuizStore/index.mjs.map +1 -1
- package/dist/index.js +40 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +40 -0
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -8057,10 +8057,12 @@ var ANSWER_STATUS = /* @__PURE__ */ ((ANSWER_STATUS2) => {
|
|
|
8057
8057
|
ANSWER_STATUS2["NAO_RESPONDIDO"] = "NAO_RESPONDIDO";
|
|
8058
8058
|
return ANSWER_STATUS2;
|
|
8059
8059
|
})(ANSWER_STATUS || {});
|
|
8060
|
+
var MINUTE_INTERVAL_MS = 6e4;
|
|
8060
8061
|
var useQuizStore = create7()(
|
|
8061
8062
|
devtools(
|
|
8062
8063
|
(set, get) => {
|
|
8063
8064
|
let timerInterval = null;
|
|
8065
|
+
let minuteCallbackInterval = null;
|
|
8064
8066
|
const startTimer = () => {
|
|
8065
8067
|
if (get().isFinished) {
|
|
8066
8068
|
return;
|
|
@@ -8079,6 +8081,35 @@ var useQuizStore = create7()(
|
|
|
8079
8081
|
timerInterval = null;
|
|
8080
8082
|
}
|
|
8081
8083
|
};
|
|
8084
|
+
const setMinuteCallback = (callback) => {
|
|
8085
|
+
set({ minuteCallback: callback });
|
|
8086
|
+
};
|
|
8087
|
+
const startMinuteCallback = () => {
|
|
8088
|
+
const { minuteCallback, isFinished } = get();
|
|
8089
|
+
if (isFinished || !minuteCallback) {
|
|
8090
|
+
return;
|
|
8091
|
+
}
|
|
8092
|
+
if (minuteCallbackInterval) {
|
|
8093
|
+
clearInterval(minuteCallbackInterval);
|
|
8094
|
+
}
|
|
8095
|
+
minuteCallbackInterval = setInterval(() => {
|
|
8096
|
+
const {
|
|
8097
|
+
minuteCallback: currentCallback,
|
|
8098
|
+
isFinished: currentIsFinished
|
|
8099
|
+
} = get();
|
|
8100
|
+
if (currentIsFinished || !currentCallback) {
|
|
8101
|
+
stopMinuteCallback();
|
|
8102
|
+
return;
|
|
8103
|
+
}
|
|
8104
|
+
currentCallback();
|
|
8105
|
+
}, MINUTE_INTERVAL_MS);
|
|
8106
|
+
};
|
|
8107
|
+
const stopMinuteCallback = () => {
|
|
8108
|
+
if (minuteCallbackInterval) {
|
|
8109
|
+
clearInterval(minuteCallbackInterval);
|
|
8110
|
+
minuteCallbackInterval = null;
|
|
8111
|
+
}
|
|
8112
|
+
};
|
|
8082
8113
|
return {
|
|
8083
8114
|
// Initial State
|
|
8084
8115
|
currentQuestionIndex: 0,
|
|
@@ -8089,6 +8120,7 @@ var useQuizStore = create7()(
|
|
|
8089
8120
|
isFinished: false,
|
|
8090
8121
|
userId: "",
|
|
8091
8122
|
variant: "default",
|
|
8123
|
+
minuteCallback: null,
|
|
8092
8124
|
questionsResult: null,
|
|
8093
8125
|
currentQuestionResult: null,
|
|
8094
8126
|
// Setters
|
|
@@ -8323,13 +8355,16 @@ var useQuizStore = create7()(
|
|
|
8323
8355
|
startQuiz: () => {
|
|
8324
8356
|
set({ isStarted: true, timeElapsed: 0 });
|
|
8325
8357
|
startTimer();
|
|
8358
|
+
startMinuteCallback();
|
|
8326
8359
|
},
|
|
8327
8360
|
finishQuiz: () => {
|
|
8328
8361
|
set({ isFinished: true });
|
|
8329
8362
|
stopTimer();
|
|
8363
|
+
stopMinuteCallback();
|
|
8330
8364
|
},
|
|
8331
8365
|
resetQuiz: () => {
|
|
8332
8366
|
stopTimer();
|
|
8367
|
+
stopMinuteCallback();
|
|
8333
8368
|
set({
|
|
8334
8369
|
currentQuestionIndex: 0,
|
|
8335
8370
|
selectedAnswers: {},
|
|
@@ -8339,6 +8374,7 @@ var useQuizStore = create7()(
|
|
|
8339
8374
|
isFinished: false,
|
|
8340
8375
|
userId: "",
|
|
8341
8376
|
variant: "default",
|
|
8377
|
+
minuteCallback: null,
|
|
8342
8378
|
questionsResult: null,
|
|
8343
8379
|
currentQuestionResult: null
|
|
8344
8380
|
});
|
|
@@ -8347,6 +8383,10 @@ var useQuizStore = create7()(
|
|
|
8347
8383
|
updateTime: (time) => set({ timeElapsed: time }),
|
|
8348
8384
|
startTimer,
|
|
8349
8385
|
stopTimer,
|
|
8386
|
+
// Minute Callback
|
|
8387
|
+
setMinuteCallback,
|
|
8388
|
+
startMinuteCallback,
|
|
8389
|
+
stopMinuteCallback,
|
|
8350
8390
|
// Getters
|
|
8351
8391
|
getCurrentQuestion: () => {
|
|
8352
8392
|
const { currentQuestionIndex, getActiveQuiz } = get();
|