@gamelearn/arcade-components 0.22.9 → 0.22.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/components/chained-image-click-puzzle-component/components/CurrentImagePuzzle.js +2 -2
- package/dist/components/frame-click-puzzle-component/components/CurrentFramePuzzle.js +2 -2
- package/dist/components/image-click-wrapper-component/components/ImageClickWrapperComponent.js +36 -22
- package/package.json +1 -1
package/dist/components/chained-image-click-puzzle-component/components/CurrentImagePuzzle.js
CHANGED
|
@@ -112,7 +112,7 @@ var CurrentImageClickPuzzle = function CurrentImageClickPuzzle(_ref) {
|
|
|
112
112
|
if (correct) {
|
|
113
113
|
var _specificFeedbacks$co;
|
|
114
114
|
|
|
115
|
-
if ((_specificFeedbacks$co = specificFeedbacks.correctFeedbacks) !== null && _specificFeedbacks$co !== void 0 && _specificFeedbacks$co.length) {
|
|
115
|
+
if ((_specificFeedbacks$co = specificFeedbacks.correctFeedbacks) !== null && _specificFeedbacks$co !== void 0 && _specificFeedbacks$co.length && !currentImageProps.hasClickOnce) {
|
|
116
116
|
correctClicked.current += 1;
|
|
117
117
|
setSelected(selected + 1);
|
|
118
118
|
} else {
|
|
@@ -141,7 +141,7 @@ var CurrentImageClickPuzzle = function CurrentImageClickPuzzle(_ref) {
|
|
|
141
141
|
correctClicked.current = 0;
|
|
142
142
|
}
|
|
143
143
|
}
|
|
144
|
-
}, [index, list.length, currentImageProps.hasClickOrder, currentImageProps.areas.length, handleFinish, specificFeedbacks, setSelected, selected, emitEvent]);
|
|
144
|
+
}, [index, list.length, currentImageProps.hasClickOrder, currentImageProps.hasClickOnce, currentImageProps.areas.length, handleFinish, specificFeedbacks, setSelected, selected, emitEvent]);
|
|
145
145
|
|
|
146
146
|
var onResolve = function onResolve() {
|
|
147
147
|
playSound('score');
|
|
@@ -86,7 +86,7 @@ var CurrentFramePuzzle = function CurrentFramePuzzle(_ref) {
|
|
|
86
86
|
if (correct) {
|
|
87
87
|
var _specificFeedbacks$co;
|
|
88
88
|
|
|
89
|
-
if ((_specificFeedbacks$co = specificFeedbacks.correctFeedbacks) !== null && _specificFeedbacks$co !== void 0 && _specificFeedbacks$co.length) {
|
|
89
|
+
if ((_specificFeedbacks$co = specificFeedbacks.correctFeedbacks) !== null && _specificFeedbacks$co !== void 0 && _specificFeedbacks$co.length && !props.hasClickOnce) {
|
|
90
90
|
correctClicked.current += 1;
|
|
91
91
|
setSelected(selected + 1);
|
|
92
92
|
} else {
|
|
@@ -117,7 +117,7 @@ var CurrentFramePuzzle = function CurrentFramePuzzle(_ref) {
|
|
|
117
117
|
correctClicked.current = 0;
|
|
118
118
|
}
|
|
119
119
|
}
|
|
120
|
-
}, [emitEvent, specificFeedbacks, framesCompleted, props.hasClickOrder, props.areas.length, list.length, selected, setSelected, setRewards, index, setFramesCompleted, setIndex, handleFinish]);
|
|
120
|
+
}, [emitEvent, specificFeedbacks, framesCompleted, props.hasClickOrder, props.hasClickOnce, props.areas.length, list.length, selected, setSelected, setRewards, index, setFramesCompleted, setIndex, handleFinish]);
|
|
121
121
|
var handleResolve = (0, _react.useCallback)(function () {
|
|
122
122
|
playSound('score');
|
|
123
123
|
emitEvent({
|
package/dist/components/image-click-wrapper-component/components/ImageClickWrapperComponent.js
CHANGED
|
@@ -128,16 +128,16 @@ var ImageClickWrapperComponent = function ImageClickWrapperComponent(props) {
|
|
|
128
128
|
shape: 'poly'
|
|
129
129
|
}, area);
|
|
130
130
|
});
|
|
131
|
-
var handleFinish = (0, _react.useCallback)(function (rewards) {
|
|
131
|
+
var handleFinish = (0, _react.useCallback)(function (rewards, success) {
|
|
132
132
|
if (emitFinish) {
|
|
133
|
-
emitFinish(rewards,
|
|
133
|
+
emitFinish(rewards, success);
|
|
134
134
|
} else {
|
|
135
135
|
emitEvent({
|
|
136
136
|
type: 'addPoints',
|
|
137
137
|
payload: rewards
|
|
138
138
|
});
|
|
139
139
|
}
|
|
140
|
-
}, [emitEvent, emitFinish
|
|
140
|
+
}, [emitEvent, emitFinish]);
|
|
141
141
|
(0, _react.useEffect)(function () {
|
|
142
142
|
if (completed) {
|
|
143
143
|
disableExit(true);
|
|
@@ -147,18 +147,24 @@ var ImageClickWrapperComponent = function ImageClickWrapperComponent(props) {
|
|
|
147
147
|
setCompleted(defaultCompleted);
|
|
148
148
|
}, [defaultCompleted]);
|
|
149
149
|
(0, _react.useEffect)(function () {
|
|
150
|
-
if (areas.length === clickedZones.length
|
|
150
|
+
if ((areas.length === clickedZones.length || hasClickOnce && clickedZones.length > 0) && !completed) {
|
|
151
151
|
var _specificFeedbacks$co;
|
|
152
152
|
|
|
153
153
|
setCompleted(true);
|
|
154
|
+
var lastClicked = clickedZones[clickedZones.length - 1];
|
|
155
|
+
var lastSpecific = specificFeedbacks.correctFeedbacks.find(function (feed) {
|
|
156
|
+
return feed.id === lastClicked.id;
|
|
157
|
+
});
|
|
154
158
|
|
|
155
|
-
if (!((_specificFeedbacks$co = specificFeedbacks.correctFeedbacks) !== null && _specificFeedbacks$co !== void 0 && _specificFeedbacks$co.length)) {
|
|
159
|
+
if (!((_specificFeedbacks$co = specificFeedbacks.correctFeedbacks) !== null && _specificFeedbacks$co !== void 0 && _specificFeedbacks$co.length) || specificFeedbacks.correctFeedbacks.some(function (feed) {
|
|
160
|
+
return !feed.desc;
|
|
161
|
+
}) || hasClickOnce) {
|
|
156
162
|
setFeedbackData(function (oldState) {
|
|
157
163
|
return _objectSpread(_objectSpread({}, oldState), {}, {
|
|
158
164
|
show: true,
|
|
159
165
|
success: true,
|
|
160
|
-
text: info.solution.right.desc,
|
|
161
|
-
rewards: info.solution.right.rewards
|
|
166
|
+
text: lastSpecific ? lastSpecific.desc : info.solution.right.desc,
|
|
167
|
+
rewards: lastSpecific ? lastSpecific.rewards : info.solution.right.rewards
|
|
162
168
|
});
|
|
163
169
|
});
|
|
164
170
|
}
|
|
@@ -188,10 +194,6 @@ var ImageClickWrapperComponent = function ImageClickWrapperComponent(props) {
|
|
|
188
194
|
desc = _solution$wrong.desc;
|
|
189
195
|
var feedback = desc;
|
|
190
196
|
var rewards = wrongRewards;
|
|
191
|
-
emitEvent({
|
|
192
|
-
type: 'hidePuzzleButtons',
|
|
193
|
-
payload: true
|
|
194
|
-
});
|
|
195
197
|
var specific = (_specificFeedbacks$wr = specificFeedbacks.wrongFeedbacks) === null || _specificFeedbacks$wr === void 0 ? void 0 : _specificFeedbacks$wr.find(function (feed) {
|
|
196
198
|
return feed.id === area.id;
|
|
197
199
|
});
|
|
@@ -206,7 +208,14 @@ var ImageClickWrapperComponent = function ImageClickWrapperComponent(props) {
|
|
|
206
208
|
}
|
|
207
209
|
|
|
208
210
|
if (hasClickOrder) {
|
|
211
|
+
var _info$orderFeedback;
|
|
212
|
+
|
|
209
213
|
setClickedZones([]);
|
|
214
|
+
|
|
215
|
+
if (info !== null && info !== void 0 && (_info$orderFeedback = info.orderFeedback) !== null && _info$orderFeedback !== void 0 && _info$orderFeedback.desc) {
|
|
216
|
+
feedback = info.orderFeedback.desc;
|
|
217
|
+
rewards = info.orderFeedback.rewards;
|
|
218
|
+
}
|
|
210
219
|
}
|
|
211
220
|
|
|
212
221
|
setFeedbackData(function (oldState) {
|
|
@@ -221,8 +230,8 @@ var ImageClickWrapperComponent = function ImageClickWrapperComponent(props) {
|
|
|
221
230
|
}
|
|
222
231
|
};
|
|
223
232
|
|
|
224
|
-
var handleOnClose = function
|
|
225
|
-
handleFinish(feedbackData.rewards);
|
|
233
|
+
var handleOnClose = (0, _react.useCallback)(function () {
|
|
234
|
+
handleFinish(feedbackData.rewards, feedbackData.success);
|
|
226
235
|
playSound('click-ui');
|
|
227
236
|
setFeedbackData(function (oldState) {
|
|
228
237
|
return _objectSpread(_objectSpread({}, oldState), {}, {
|
|
@@ -232,7 +241,7 @@ var ImageClickWrapperComponent = function ImageClickWrapperComponent(props) {
|
|
|
232
241
|
rewards: []
|
|
233
242
|
});
|
|
234
243
|
});
|
|
235
|
-
};
|
|
244
|
+
}, [feedbackData.rewards, feedbackData.success, handleFinish, playSound]);
|
|
236
245
|
|
|
237
246
|
var handleCorrectAreaClick = function handleCorrectAreaClick(area) {
|
|
238
247
|
if (!clickedZones.some(function (zone) {
|
|
@@ -241,6 +250,7 @@ var ImageClickWrapperComponent = function ImageClickWrapperComponent(props) {
|
|
|
241
250
|
playSound('click-ui');
|
|
242
251
|
var feedback = solution.right.desc;
|
|
243
252
|
var rewards = solution.right.rewards;
|
|
253
|
+
var updatedZones = [].concat(_toConsumableArray(clickedZones), [area]);
|
|
244
254
|
|
|
245
255
|
if (hasClickOrder && area.index === clickedZones.length || !hasClickOrder) {
|
|
246
256
|
var _specificFeedbacks$co2;
|
|
@@ -257,17 +267,21 @@ var ImageClickWrapperComponent = function ImageClickWrapperComponent(props) {
|
|
|
257
267
|
rewards = specific.rewards;
|
|
258
268
|
}
|
|
259
269
|
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
270
|
+
if (!feedback && areas.length > updatedZones.length && !hasClickOnce) {
|
|
271
|
+
handleFinish(rewards, true);
|
|
272
|
+
} else if (feedback && !hasClickOnce) {
|
|
273
|
+
setFeedbackData(function (oldState) {
|
|
274
|
+
return _objectSpread(_objectSpread({}, oldState), {}, {
|
|
275
|
+
show: true,
|
|
276
|
+
success: true,
|
|
277
|
+
text: feedback,
|
|
278
|
+
rewards: rewards
|
|
279
|
+
});
|
|
266
280
|
});
|
|
267
|
-
}
|
|
281
|
+
}
|
|
268
282
|
}
|
|
269
283
|
|
|
270
|
-
setClickedZones(
|
|
284
|
+
setClickedZones(updatedZones);
|
|
271
285
|
} else {
|
|
272
286
|
handleIncorrectAreaClick(area);
|
|
273
287
|
}
|