@gamelearn/arcade-components 1.4.25 → 1.4.27
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.
|
@@ -17,14 +17,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
17
17
|
|
|
18
18
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
19
19
|
|
|
20
|
-
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
21
|
-
|
|
22
|
-
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
23
|
-
|
|
24
|
-
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
25
|
-
|
|
26
|
-
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
27
|
-
|
|
28
20
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
29
21
|
|
|
30
22
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
@@ -46,19 +38,21 @@ var Board = function Board(_ref) {
|
|
|
46
38
|
feedbackIsShown = _ref.feedbackIsShown,
|
|
47
39
|
resolvePuzzle = _ref.resolvePuzzle,
|
|
48
40
|
soundActions = _ref.soundActions,
|
|
49
|
-
handleSuccess = _ref.handleSuccess
|
|
41
|
+
handleSuccess = _ref.handleSuccess,
|
|
42
|
+
setForceFlipCard = _ref.setForceFlipCard,
|
|
43
|
+
forceFlipCard = _ref.forceFlipCard;
|
|
50
44
|
|
|
51
|
-
var _useState = (0, _react.useState)(
|
|
45
|
+
var _useState = (0, _react.useState)(Array(cards.length).fill(false)),
|
|
52
46
|
_useState2 = _slicedToArray(_useState, 2),
|
|
53
47
|
flipped = _useState2[0],
|
|
54
48
|
setFlipped = _useState2[1];
|
|
55
49
|
|
|
56
|
-
var _useState3 = (0, _react.useState)(
|
|
50
|
+
var _useState3 = (0, _react.useState)(Array(cards.length).fill(false)),
|
|
57
51
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
58
52
|
wrongOrder = _useState4[0],
|
|
59
53
|
setWrongOrder = _useState4[1];
|
|
60
54
|
|
|
61
|
-
var _useState5 = (0, _react.useState)(
|
|
55
|
+
var _useState5 = (0, _react.useState)(0),
|
|
62
56
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
63
57
|
correctCards = _useState6[0],
|
|
64
58
|
setCorrectCards = _useState6[1];
|
|
@@ -72,17 +66,24 @@ var Board = function Board(_ref) {
|
|
|
72
66
|
var isOrderBased = cards.filter(function (card) {
|
|
73
67
|
return card.order;
|
|
74
68
|
}).length > 0;
|
|
69
|
+
var flipTimer;
|
|
70
|
+
(0, _react.useEffect)(function () {
|
|
71
|
+
if (forceFlipCard) {
|
|
72
|
+
setForceFlipCard(false);
|
|
73
|
+
reset();
|
|
74
|
+
clearTimeout(flipTimer);
|
|
75
|
+
}
|
|
76
|
+
}, [flipTimer, forceFlipCard, reset, setForceFlipCard]);
|
|
77
|
+
var reset = (0, _react.useCallback)(function () {
|
|
78
|
+
setFlipped(Array(cards.length).fill(false)); // reset it to the original length
|
|
75
79
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
setWrongOrder(_toConsumableArray(Array(cards.length)).fill(false));
|
|
80
|
-
setCorrectCards(1);
|
|
80
|
+
setWrongOrder(Array(cards.length).fill(false));
|
|
81
|
+
setCorrectCards(0);
|
|
81
82
|
setCurrentOrder(1);
|
|
82
|
-
};
|
|
83
|
+
}, [cards.length, setCurrentOrder]);
|
|
83
84
|
|
|
84
85
|
var timedReset = function timedReset() {
|
|
85
|
-
setTimeout(function () {
|
|
86
|
+
flipTimer = setTimeout(function () {
|
|
86
87
|
reset();
|
|
87
88
|
}, 3000);
|
|
88
89
|
};
|
|
@@ -113,15 +114,17 @@ var Board = function Board(_ref) {
|
|
|
113
114
|
flipAllCorrect();
|
|
114
115
|
}
|
|
115
116
|
}, [flipAllCorrect, resolvePuzzle]);
|
|
117
|
+
(0, _react.useEffect)(function () {
|
|
118
|
+
if (correctCards === numberOfCorrectCards && numberOfCorrectCards > 0) {
|
|
119
|
+
endPuzzle();
|
|
120
|
+
setCorrectCards(0);
|
|
121
|
+
}
|
|
122
|
+
}, [correctCards, endPuzzle, numberOfCorrectCards]);
|
|
116
123
|
|
|
117
124
|
var handleCorrect = function handleCorrect(index) {
|
|
118
125
|
flipACard(index);
|
|
119
126
|
handleSuccess(cards[index].id || null);
|
|
120
127
|
setCorrectCards(correctCards + 1);
|
|
121
|
-
|
|
122
|
-
if (correctCards === numberOfCorrectCards) {
|
|
123
|
-
endPuzzle();
|
|
124
|
-
}
|
|
125
128
|
};
|
|
126
129
|
|
|
127
130
|
var _handleClick = function handleClick(index) {
|
|
@@ -181,11 +184,13 @@ Board.defaultProps = {
|
|
|
181
184
|
handleError: function handleError() {},
|
|
182
185
|
endPuzzle: function endPuzzle() {},
|
|
183
186
|
handleSuccess: function handleSuccess() {},
|
|
187
|
+
setForceFlipCard: function setForceFlipCard() {},
|
|
184
188
|
documentsDict: {},
|
|
185
189
|
cards: [],
|
|
186
190
|
currentOrder: 1,
|
|
187
191
|
resolvePuzzle: false,
|
|
188
|
-
feedbackIsShown: false
|
|
192
|
+
feedbackIsShown: false,
|
|
193
|
+
forceFlipCard: false
|
|
189
194
|
};
|
|
190
195
|
var _default = Board;
|
|
191
196
|
exports.default = _default;
|
package/dist/components/cards-selector-puzzle-component/components/CardsSelectorPuzzleComponent.js
CHANGED
|
@@ -92,6 +92,11 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
92
92
|
var _soundActions = _slicedToArray(soundActions, 1),
|
|
93
93
|
playSound = _soundActions[0];
|
|
94
94
|
|
|
95
|
+
var _useState17 = (0, _react.useState)(false),
|
|
96
|
+
_useState18 = _slicedToArray(_useState17, 2),
|
|
97
|
+
forceFlipCard = _useState18[0],
|
|
98
|
+
setForceFlipCard = _useState18[1];
|
|
99
|
+
|
|
95
100
|
var translate = function translate(id) {
|
|
96
101
|
return emitEvent({
|
|
97
102
|
type: 'translate',
|
|
@@ -115,6 +120,8 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
115
120
|
}, [emitEvent]);
|
|
116
121
|
|
|
117
122
|
var endPuzzle = function endPuzzle() {
|
|
123
|
+
var _info$solution, _specificFeedbacks$co;
|
|
124
|
+
|
|
118
125
|
emitEvent({
|
|
119
126
|
type: 'hidePuzzleButtons',
|
|
120
127
|
payload: true
|
|
@@ -125,33 +132,29 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
125
132
|
setFeedbackResult(true);
|
|
126
133
|
setFeedbackIsShown(true);
|
|
127
134
|
} else {
|
|
128
|
-
var _info$solution, _specificFeedbacks$co;
|
|
129
|
-
|
|
130
135
|
setFeedbackResult(true);
|
|
131
136
|
setFeedbackIsShown(true);
|
|
132
137
|
setFinished(true);
|
|
138
|
+
}
|
|
133
139
|
|
|
134
|
-
|
|
135
|
-
|
|
140
|
+
var _info$solution$right = info === null || info === void 0 ? void 0 : (_info$solution = info.solution) === null || _info$solution === void 0 ? void 0 : _info$solution.right,
|
|
141
|
+
rewards = _info$solution$right.rewards;
|
|
136
142
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
}
|
|
143
|
+
var specificRewards = (specificFeedbacks === null || specificFeedbacks === void 0 ? void 0 : (_specificFeedbacks$co = specificFeedbacks.correctFeedbacks) === null || _specificFeedbacks$co === void 0 ? void 0 : _specificFeedbacks$co.map(function (spReward) {
|
|
144
|
+
return spReward.rewards;
|
|
145
|
+
}).flat()) || [];
|
|
146
|
+
var rewardsData = [].concat(_toConsumableArray(accRewards), _toConsumableArray(rewards), _toConsumableArray(specificRewards));
|
|
147
|
+
setTimeout(function () {
|
|
148
|
+
playSound('score');
|
|
149
|
+
closeFeedbackAndShowPoints(rewardsData);
|
|
150
|
+
}, 3000);
|
|
146
151
|
};
|
|
147
152
|
|
|
148
153
|
var handleFeedbackFuncionOnClose = function handleFeedbackFuncionOnClose() {
|
|
154
|
+
var isCorrect = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
155
|
+
|
|
149
156
|
if (feedbackResult) {
|
|
150
|
-
|
|
151
|
-
var rewards = info.solution.right.rewards;
|
|
152
|
-
var rewardsData = [].concat(_toConsumableArray(accRewards), _toConsumableArray(rewards));
|
|
153
|
-
playSound('score');
|
|
154
|
-
closeFeedbackAndShowPoints(rewardsData);
|
|
157
|
+
endPuzzle();
|
|
155
158
|
} else {
|
|
156
159
|
setFeedbackResult(false);
|
|
157
160
|
disableExit(false);
|
|
@@ -163,9 +166,15 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
163
166
|
}
|
|
164
167
|
|
|
165
168
|
setFeedBackText('');
|
|
169
|
+
|
|
170
|
+
if (!feedbackResult && !isCorrect) {
|
|
171
|
+
setForceFlipCard(true);
|
|
172
|
+
}
|
|
166
173
|
};
|
|
167
174
|
|
|
168
175
|
var handleSuccessPick = function handleSuccessPick(cardId) {
|
|
176
|
+
setRightPick(true);
|
|
177
|
+
|
|
169
178
|
if (specificFeedbacks !== null && specificFeedbacks !== void 0 && specificFeedbacks.specificCorrectFeedbacks) {
|
|
170
179
|
var pickedCard = specificFeedbacks.correctFeedbacks.find(function (greenCard) {
|
|
171
180
|
return greenCard.id === cardId;
|
|
@@ -176,7 +185,7 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
176
185
|
} else {
|
|
177
186
|
setTimeout(function () {
|
|
178
187
|
playSound('score');
|
|
179
|
-
handleFeedbackFuncionOnClose();
|
|
188
|
+
handleFeedbackFuncionOnClose(true);
|
|
180
189
|
emitEvent({
|
|
181
190
|
type: 'hidePuzzleButtons',
|
|
182
191
|
payload: false
|
|
@@ -184,7 +193,6 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
184
193
|
}, 2000);
|
|
185
194
|
}
|
|
186
195
|
|
|
187
|
-
setRightPick(true);
|
|
188
196
|
setFeedbackIsShown(true);
|
|
189
197
|
emitEvent({
|
|
190
198
|
type: 'hidePuzzleButtons',
|
|
@@ -205,7 +213,6 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
205
213
|
if (failedCard !== null && failedCard !== void 0 && failedCard.desc) {
|
|
206
214
|
setFeedBackText(failedCard.desc);
|
|
207
215
|
setFeedbackIsShown(true);
|
|
208
|
-
setRewards([].concat(_toConsumableArray(accRewards), _toConsumableArray(failedCard === null || failedCard === void 0 ? void 0 : failedCard.rewards)));
|
|
209
216
|
} else {
|
|
210
217
|
setFeedbackIsShown(true);
|
|
211
218
|
setTimeout(function () {
|
|
@@ -216,6 +223,8 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
216
223
|
});
|
|
217
224
|
}, 2000);
|
|
218
225
|
}
|
|
226
|
+
|
|
227
|
+
setRewards([].concat(_toConsumableArray(accRewards), _toConsumableArray((failedCard === null || failedCard === void 0 ? void 0 : failedCard.rewards) || [])));
|
|
219
228
|
} // si hay feedback definido
|
|
220
229
|
else if (info.solution.wrong.desc) {
|
|
221
230
|
setFeedBackText(info.solution.wrong.desc);
|
|
@@ -279,7 +288,9 @@ var CardsSelectorPuzzleComponent = function CardsSelectorPuzzleComponent(_ref) {
|
|
|
279
288
|
feedbackIsShown: feedbackIsShown,
|
|
280
289
|
resolvePuzzle: resolvePuzzle,
|
|
281
290
|
soundActions: soundActions,
|
|
282
|
-
handleSuccess: handleSuccessPick
|
|
291
|
+
handleSuccess: handleSuccessPick,
|
|
292
|
+
forceFlipCard: forceFlipCard,
|
|
293
|
+
setForceFlipCard: setForceFlipCard
|
|
283
294
|
})), feedbackIsShown && /*#__PURE__*/_react.default.createElement(_feedbackComponent.default, {
|
|
284
295
|
success: feedbackResult || rightPick,
|
|
285
296
|
text: feedBackText,
|