@gamelearn/arcade-components 1.19.1 → 1.20.1
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/components/cards-selector-puzzle-component/components/CardsSelectorPuzzleComponent.js +20 -4
- package/dist/components/cracker-puzzle-component/components/CrackerPuzzleComponent.js +2 -7
- package/dist/components/hacker-puzzle-component/components/HackerPuzzleComponent.js +2 -7
- package/dist/components/hanged-puzzle-component/components/HangedPuzzleComponent.js +30 -24
- package/dist/components/hanged-puzzle-component/mocks/mockForStory.js +1 -0
- package/dist/components/image-click-wrapper-component/components/ImageClickWrapperComponent.js +2 -1
- package/dist/components/keyboard-puzzle-component/components/KeyboardPuzzleComponent.js +19 -3
- package/dist/components/login-puzzle-component/components/LoginPuzzleComponent.js +11 -6
- package/dist/components/terminal-puzzle-component/components/TerminalPuzzleComponent.js +11 -6
- package/dist/components/text-click-puzzle-component/components/TextClickPuzzleComponent.js +2 -8
- package/dist/components/web-builder-puzzle-component/components/WebBuilderPuzzleComponent.js +2 -7
- package/package.json +1 -1
package/dist/components/cards-selector-puzzle-component/components/CardsSelectorPuzzleComponent.js
CHANGED
|
@@ -40,7 +40,7 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
40
40
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
41
41
|
|
|
42
42
|
var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
43
|
-
var _info$solution2;
|
|
43
|
+
var _info$solution2, _info$resolve2;
|
|
44
44
|
|
|
45
45
|
var emitEvent = _ref.emitEvent,
|
|
46
46
|
info = _ref.info,
|
|
@@ -49,7 +49,8 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
49
49
|
disableExit = _ref.disableExit,
|
|
50
50
|
setResolveAction = _ref.setResolveAction,
|
|
51
51
|
soundActions = _ref.soundActions,
|
|
52
|
-
backgroundImage = _ref.backgroundImage
|
|
52
|
+
backgroundImage = _ref.backgroundImage,
|
|
53
|
+
nodeId = _ref.nodeId;
|
|
53
54
|
|
|
54
55
|
var _useState = (0, _react.useState)(false),
|
|
55
56
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -101,6 +102,7 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
101
102
|
});
|
|
102
103
|
};
|
|
103
104
|
|
|
105
|
+
var puzzleId = "cards-selector-puzzle_".concat(nodeId);
|
|
104
106
|
var closeFeedbackAndShowPoints = (0, _react.useCallback)(function (rewardsData) {
|
|
105
107
|
setFeedbackResult(false);
|
|
106
108
|
setFeedbackIsShown(false);
|
|
@@ -254,10 +256,24 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
254
256
|
setResolvePuzzle(true);
|
|
255
257
|
var rewardsData = [].concat(_toConsumableArray(accRewards), _toConsumableArray(info === null || info === void 0 ? void 0 : (_info$resolve = info.resolve) === null || _info$resolve === void 0 ? void 0 : _info$resolve.rewards));
|
|
256
258
|
setTimeout(function () {
|
|
257
|
-
|
|
259
|
+
setFeedbackResult(false);
|
|
260
|
+
setFeedbackIsShown(false);
|
|
261
|
+
emitEvent({
|
|
262
|
+
type: 'hidePuzzleButtons',
|
|
263
|
+
payload: false
|
|
264
|
+
});
|
|
265
|
+
emitEvent({
|
|
266
|
+
type: 'puzzleAction',
|
|
267
|
+
action: 'resolve',
|
|
268
|
+
payload: {
|
|
269
|
+
element: puzzleId,
|
|
270
|
+
rewards: rewardsData,
|
|
271
|
+
finish: true
|
|
272
|
+
}
|
|
273
|
+
});
|
|
258
274
|
}, 2000);
|
|
259
275
|
});
|
|
260
|
-
}, [setResolveAction, disableExit, accRewards, info.resolve.rewards, emitEvent,
|
|
276
|
+
}, [setResolveAction, disableExit, accRewards, info === null || info === void 0 ? void 0 : (_info$resolve2 = info.resolve) === null || _info$resolve2 === void 0 ? void 0 : _info$resolve2.rewards, emitEvent, puzzleId]);
|
|
261
277
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
262
278
|
className: "cards-selector ".concat(backgroundImage !== null && backgroundImage !== void 0 && backgroundImage.url ? 'cards-selector--with-custom-bg' : ''),
|
|
263
279
|
style: backgroundImage !== null && backgroundImage !== void 0 && backgroundImage.url ? {
|
|
@@ -138,7 +138,7 @@ var CrackerPuzzleComponent = function CrackerPuzzleComponent(_ref) {
|
|
|
138
138
|
}
|
|
139
139
|
}, [finished, disableExit]);
|
|
140
140
|
(0, _react.useEffect)(function () {
|
|
141
|
-
setResolveAction(function () {
|
|
141
|
+
setResolveAction(function (callback) {
|
|
142
142
|
playSound('score');
|
|
143
143
|
setFinished(true);
|
|
144
144
|
setTimeout(function () {
|
|
@@ -146,12 +146,7 @@ var CrackerPuzzleComponent = function CrackerPuzzleComponent(_ref) {
|
|
|
146
146
|
type: 'hidePuzzleButtons',
|
|
147
147
|
payload: false
|
|
148
148
|
});
|
|
149
|
-
|
|
150
|
-
type: 'addPoints',
|
|
151
|
-
complex: true,
|
|
152
|
-
finish: true,
|
|
153
|
-
payload: info.resolve.rewards
|
|
154
|
-
});
|
|
149
|
+
callback();
|
|
155
150
|
}, 0);
|
|
156
151
|
});
|
|
157
152
|
}, [setResolveAction, playSound]);
|
|
@@ -146,19 +146,14 @@ var HackerPuzzleComponent = function HackerPuzzleComponent(_ref) {
|
|
|
146
146
|
}
|
|
147
147
|
}, [finished]);
|
|
148
148
|
(0, _react.useEffect)(function () {
|
|
149
|
-
setResolveAction(function () {
|
|
149
|
+
setResolveAction(function (callback) {
|
|
150
150
|
playSound('score');
|
|
151
151
|
setFinished(true);
|
|
152
152
|
emitEvent({
|
|
153
153
|
type: 'hidePuzzleButtons',
|
|
154
154
|
payload: false
|
|
155
155
|
});
|
|
156
|
-
|
|
157
|
-
type: 'addPoints',
|
|
158
|
-
complex: true,
|
|
159
|
-
finish: true,
|
|
160
|
-
payload: info.resolve.rewards
|
|
161
|
-
});
|
|
156
|
+
callback();
|
|
162
157
|
});
|
|
163
158
|
}, [setResolveAction]);
|
|
164
159
|
|
|
@@ -103,7 +103,8 @@ var HangedPuzzleComponent = function HangedPuzzleComponent(_ref4) {
|
|
|
103
103
|
info = _ref4.info,
|
|
104
104
|
answer = _ref4.answer,
|
|
105
105
|
hintUsed = _ref4.hintUsed,
|
|
106
|
-
setResolveAction = _ref4.setResolveAction
|
|
106
|
+
setResolveAction = _ref4.setResolveAction,
|
|
107
|
+
setHintAction = _ref4.setHintAction;
|
|
107
108
|
|
|
108
109
|
var _soundActions = _slicedToArray(soundActions, 1),
|
|
109
110
|
playSound = _soundActions[0];
|
|
@@ -175,23 +176,23 @@ var HangedPuzzleComponent = function HangedPuzzleComponent(_ref4) {
|
|
|
175
176
|
|
|
176
177
|
return [].concat(_toConsumableArray(newPool), _toConsumableArray(extraPool));
|
|
177
178
|
}, [answerPanel]);
|
|
178
|
-
var
|
|
179
|
-
|
|
180
|
-
if ((0, _utils.restrictCharacters)(char, 'or')) {
|
|
181
|
-
return {
|
|
182
|
-
index: index,
|
|
183
|
-
letter: char,
|
|
184
|
-
char: char,
|
|
185
|
-
fixed: true
|
|
186
|
-
};
|
|
187
|
-
}
|
|
188
|
-
|
|
179
|
+
var hiddenAnswer = answer.toUpperCase().split('').map(function (char, index) {
|
|
180
|
+
if ((0, _utils.restrictCharacters)(char, 'or')) {
|
|
189
181
|
return {
|
|
190
182
|
index: index,
|
|
191
183
|
letter: char,
|
|
192
|
-
char:
|
|
184
|
+
char: char,
|
|
185
|
+
fixed: true
|
|
193
186
|
};
|
|
194
|
-
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
return {
|
|
190
|
+
index: index,
|
|
191
|
+
letter: char,
|
|
192
|
+
char: ''
|
|
193
|
+
};
|
|
194
|
+
});
|
|
195
|
+
var setHiddenAnswer = (0, _react.useCallback)(function () {
|
|
195
196
|
var newPool = resetPool();
|
|
196
197
|
|
|
197
198
|
var _loop = function _loop() {
|
|
@@ -226,7 +227,7 @@ var HangedPuzzleComponent = function HangedPuzzleComponent(_ref4) {
|
|
|
226
227
|
|
|
227
228
|
setAnswer(hiddenAnswer);
|
|
228
229
|
setPoolLetters(newPool);
|
|
229
|
-
}, [
|
|
230
|
+
}, [hiddenAnswer, hintUsed, resetPool]);
|
|
230
231
|
|
|
231
232
|
var removedPool = function removedPool(character, ind) {
|
|
232
233
|
var newPool = poolLetters.map(function (letter, index) {
|
|
@@ -405,23 +406,28 @@ var HangedPuzzleComponent = function HangedPuzzleComponent(_ref4) {
|
|
|
405
406
|
setHiddenAnswer();
|
|
406
407
|
}
|
|
407
408
|
|
|
408
|
-
setResolveAction(function () {
|
|
409
|
+
setResolveAction(function (callback) {
|
|
409
410
|
setCorrectSolution(true);
|
|
410
411
|
setTimeout(function () {
|
|
411
|
-
var rewardsData = [].concat(_toConsumableArray(accRewards), _toConsumableArray(info.resolve.rewards));
|
|
412
412
|
emitEvent({
|
|
413
413
|
type: 'hidePuzzleButtons',
|
|
414
414
|
payload: false
|
|
415
415
|
});
|
|
416
|
-
|
|
417
|
-
type: 'addPoints',
|
|
418
|
-
complex: true,
|
|
419
|
-
finish: true,
|
|
420
|
-
payload: rewardsData
|
|
421
|
-
});
|
|
416
|
+
callback();
|
|
422
417
|
}, 2000);
|
|
423
418
|
});
|
|
424
|
-
|
|
419
|
+
setHintAction(function (callback) {
|
|
420
|
+
var newPool = [];
|
|
421
|
+
hiddenAnswer.forEach(function (_ref6) {
|
|
422
|
+
var letter = _ref6.letter;
|
|
423
|
+
if (letter !== ' ') newPool.push({
|
|
424
|
+
char: letter
|
|
425
|
+
});
|
|
426
|
+
});
|
|
427
|
+
setPoolLetters(newPool);
|
|
428
|
+
callback();
|
|
429
|
+
});
|
|
430
|
+
}, [setHiddenAnswer, mounted, answer, setResolveAction, emitEvent, accRewards, info.resolve.rewards, hiddenAnswer, setHintAction]);
|
|
425
431
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
426
432
|
className: "puzzle--hanged",
|
|
427
433
|
style: {
|
package/dist/components/image-click-wrapper-component/components/ImageClickWrapperComponent.js
CHANGED
|
@@ -185,6 +185,7 @@ var ImageClickWrapperComponent = function ImageClickWrapperComponent(props) {
|
|
|
185
185
|
clearListenerForActualDate();
|
|
186
186
|
}, [clearListenerForActualDate]);
|
|
187
187
|
var listenerForActualDate = (0, _react.useCallback)(function () {
|
|
188
|
+
clearInterval(intervalForActualDate.current);
|
|
188
189
|
intervalForActualDate.current = setInterval(function () {
|
|
189
190
|
actualDate.current = Date.now(); // show timerFeedback when finish the time
|
|
190
191
|
|
|
@@ -202,7 +203,7 @@ var ImageClickWrapperComponent = function ImageClickWrapperComponent(props) {
|
|
|
202
203
|
setTimeExpired(true);
|
|
203
204
|
clearListenerForActualDate();
|
|
204
205
|
}
|
|
205
|
-
},
|
|
206
|
+
}, 250);
|
|
206
207
|
}, [clearListenerForActualDate, info === null || info === void 0 ? void 0 : (_info$timerFeedback3 = info.timerFeedback) === null || _info$timerFeedback3 === void 0 ? void 0 : _info$timerFeedback3.desc, info === null || info === void 0 ? void 0 : (_info$timerFeedback4 = info.timerFeedback) === null || _info$timerFeedback4 === void 0 ? void 0 : _info$timerFeedback4.rewards]);
|
|
207
208
|
(0, _react.useEffect)(function () {
|
|
208
209
|
if ((areas.length === clickedZones.length || hasClickOnce && clickedZones.length > 0) && !completed) {
|
|
@@ -49,7 +49,8 @@ var KeyboardPuzzleComponent = function KeyboardPuzzleComponent(_ref) {
|
|
|
49
49
|
info = _ref.info,
|
|
50
50
|
disableExit = _ref.disableExit,
|
|
51
51
|
soundActions = _ref.soundActions,
|
|
52
|
-
setResolveAction = _ref.setResolveAction
|
|
52
|
+
setResolveAction = _ref.setResolveAction,
|
|
53
|
+
nodeId = _ref.nodeId;
|
|
53
54
|
|
|
54
55
|
var _useState = (0, _react.useState)(false),
|
|
55
56
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -93,6 +94,7 @@ var KeyboardPuzzleComponent = function KeyboardPuzzleComponent(_ref) {
|
|
|
93
94
|
});
|
|
94
95
|
};
|
|
95
96
|
|
|
97
|
+
var puzzleId = "keyboard-puzzle_".concat(nodeId);
|
|
96
98
|
var imageURL = ((_image$img = image.img) === null || _image$img === void 0 ? void 0 : _image$img.url) || defaultImage;
|
|
97
99
|
|
|
98
100
|
var _soundActions = _slicedToArray(soundActions, 1),
|
|
@@ -185,10 +187,24 @@ var KeyboardPuzzleComponent = function KeyboardPuzzleComponent(_ref) {
|
|
|
185
187
|
setFinished(true);
|
|
186
188
|
var rewardsData = [].concat(_toConsumableArray(accRewards), _toConsumableArray(info.resolve.rewards));
|
|
187
189
|
setTimeout(function () {
|
|
188
|
-
|
|
190
|
+
setFeedbackResult(false);
|
|
191
|
+
setFeedbackIsShown(false);
|
|
192
|
+
emitEvent({
|
|
193
|
+
type: 'hidePuzzleButtons',
|
|
194
|
+
payload: false
|
|
195
|
+
});
|
|
196
|
+
emitEvent({
|
|
197
|
+
type: 'puzzleAction',
|
|
198
|
+
action: 'resolve',
|
|
199
|
+
payload: {
|
|
200
|
+
element: puzzleId,
|
|
201
|
+
rewards: rewardsData,
|
|
202
|
+
finish: true
|
|
203
|
+
}
|
|
204
|
+
});
|
|
189
205
|
}, 2000);
|
|
190
206
|
});
|
|
191
|
-
}, [setResolveAction, disableExit, info.solution.right.desc, playSound, info.resolve.rewards, accRewards,
|
|
207
|
+
}, [setResolveAction, disableExit, info.solution.right.desc, playSound, info.resolve.rewards, accRewards, password, emitEvent, puzzleId]);
|
|
192
208
|
|
|
193
209
|
var handleNumbClick = function handleNumbClick(row, col) {
|
|
194
210
|
var char = keyboard[row][col];
|
|
@@ -49,7 +49,8 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
|
|
|
49
49
|
login = _ref.login,
|
|
50
50
|
password = _ref.password,
|
|
51
51
|
image = _ref.image,
|
|
52
|
-
setResolveAction = _ref.setResolveAction
|
|
52
|
+
setResolveAction = _ref.setResolveAction,
|
|
53
|
+
nodeId = _ref.nodeId;
|
|
53
54
|
|
|
54
55
|
var translate = function translate(id) {
|
|
55
56
|
return emitEvent({
|
|
@@ -58,6 +59,7 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
|
|
|
58
59
|
});
|
|
59
60
|
};
|
|
60
61
|
|
|
62
|
+
var puzzleId = "login-puzzle_".concat(nodeId);
|
|
61
63
|
var isRtl = (0, _LangIsRtl.default)();
|
|
62
64
|
|
|
63
65
|
var _useState = (0, _react.useState)(''),
|
|
@@ -173,14 +175,17 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
|
|
|
173
175
|
payload: false
|
|
174
176
|
});
|
|
175
177
|
emitEvent({
|
|
176
|
-
type: '
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
178
|
+
type: 'puzzleAction',
|
|
179
|
+
action: 'resolve',
|
|
180
|
+
payload: {
|
|
181
|
+
element: puzzleId,
|
|
182
|
+
rewards: rewardsData,
|
|
183
|
+
finish: true
|
|
184
|
+
}
|
|
180
185
|
});
|
|
181
186
|
}, 2000);
|
|
182
187
|
});
|
|
183
|
-
}, [accRewards, info.resolve.rewards, emitEvent, setResolveAction]);
|
|
188
|
+
}, [accRewards, info.resolve.rewards, emitEvent, setResolveAction, puzzleId]);
|
|
184
189
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
185
190
|
className: "puzzle--layer",
|
|
186
191
|
style: {
|
|
@@ -67,7 +67,8 @@ var TerminalPuzzleComponent = function TerminalPuzzleComponent(_ref) {
|
|
|
67
67
|
info = _ref.info,
|
|
68
68
|
disableExit = _ref.disableExit,
|
|
69
69
|
soundActions = _ref.soundActions,
|
|
70
|
-
setResolveAction = _ref.setResolveAction
|
|
70
|
+
setResolveAction = _ref.setResolveAction,
|
|
71
|
+
nodeId = _ref.nodeId;
|
|
71
72
|
|
|
72
73
|
// todo: PREPROCESS BACKGROUND IMAGE IN ARCADE
|
|
73
74
|
var _useState = (0, _react.useState)({}),
|
|
@@ -96,6 +97,7 @@ var TerminalPuzzleComponent = function TerminalPuzzleComponent(_ref) {
|
|
|
96
97
|
});
|
|
97
98
|
};
|
|
98
99
|
|
|
100
|
+
var puzzleId = "terminal-puzzle_".concat(nodeId);
|
|
99
101
|
var initFile = (0, _react.useMemo)(function () {
|
|
100
102
|
return {
|
|
101
103
|
name: 'init',
|
|
@@ -148,13 +150,16 @@ var TerminalPuzzleComponent = function TerminalPuzzleComponent(_ref) {
|
|
|
148
150
|
payload: false
|
|
149
151
|
});
|
|
150
152
|
emitEvent({
|
|
151
|
-
type: '
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
153
|
+
type: 'puzzleAction',
|
|
154
|
+
action: 'resolve',
|
|
155
|
+
payload: {
|
|
156
|
+
element: puzzleId,
|
|
157
|
+
rewards: rewards,
|
|
158
|
+
finish: true
|
|
159
|
+
}
|
|
155
160
|
});
|
|
156
161
|
});
|
|
157
|
-
}, [setResolveAction, info.resolve.rewards, emitEvent]);
|
|
162
|
+
}, [setResolveAction, info.resolve.rewards, emitEvent, puzzleId]);
|
|
158
163
|
|
|
159
164
|
var backFile = function backFile() {
|
|
160
165
|
accRewards.current = [].concat(_toConsumableArray(accRewards.current), _toConsumableArray(info.solution.wrong.rewards));
|
|
@@ -386,23 +386,17 @@ var TextClickPuzzleComponent = function TextClickPuzzleComponent(_ref) {
|
|
|
386
386
|
}
|
|
387
387
|
}, [currentSlide, description, getnumberAllCorrectFragments, list, recursiveStuff, setInfo]);
|
|
388
388
|
(0, _react.useEffect)(function () {
|
|
389
|
-
setResolveAction(function () {
|
|
389
|
+
setResolveAction(function (callback) {
|
|
390
390
|
emitEvent({
|
|
391
391
|
type: 'hidePuzzleButtons',
|
|
392
392
|
payload: true
|
|
393
393
|
});
|
|
394
|
-
var resolveRewards = list[currentSlide].info.resolve.rewards;
|
|
395
394
|
setTimeout(function () {
|
|
396
395
|
emitEvent({
|
|
397
396
|
type: 'hidePuzzleButtons',
|
|
398
397
|
payload: false
|
|
399
398
|
});
|
|
400
|
-
|
|
401
|
-
type: 'addPoints',
|
|
402
|
-
complex: true,
|
|
403
|
-
finish: true,
|
|
404
|
-
payload: resolveRewards
|
|
405
|
-
});
|
|
399
|
+
callback();
|
|
406
400
|
}, 2000);
|
|
407
401
|
});
|
|
408
402
|
}, [setResolveAction, emitEvent, list, currentSlide]);
|
package/dist/components/web-builder-puzzle-component/components/WebBuilderPuzzleComponent.js
CHANGED
|
@@ -307,18 +307,13 @@ var WebBuilderPuzzleComponent = function WebBuilderPuzzleComponent(_ref) {
|
|
|
307
307
|
};
|
|
308
308
|
|
|
309
309
|
(0, _react.useEffect)(function () {
|
|
310
|
-
setResolveAction(function () {
|
|
310
|
+
setResolveAction(function (callback) {
|
|
311
311
|
setResolved(true);
|
|
312
312
|
showCurrentFeed('success');
|
|
313
313
|
showReference(false);
|
|
314
314
|
setTimeout(function () {
|
|
315
315
|
showCurrentFeed('');
|
|
316
|
-
|
|
317
|
-
type: 'addPoints',
|
|
318
|
-
complex: true,
|
|
319
|
-
finish: true,
|
|
320
|
-
payload: info.resolve.rewards
|
|
321
|
-
});
|
|
316
|
+
callback();
|
|
322
317
|
}, 4000);
|
|
323
318
|
});
|
|
324
319
|
disableExit(true);
|