@gamelearn/arcade-components 0.16.4 → 0.17.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 +56 -21
- package/dist/components/cards-selector-puzzle-component/mocks/mockForStory.js +192 -3
- package/dist/components/chained-image-click-puzzle-component/mocks/mockForStory.js +2 -2
- package/dist/components/cracker-puzzle-component/components/CrackerPuzzleComponent.js +1 -1
- package/dist/components/cracker-puzzle-component/mocks/mockForStory.js +65 -3
- package/dist/components/drag-item-puzzle-component/components/DragItemPuzzleComponent.js +56 -34
- package/dist/components/drag-item-puzzle-component/components/Messages.js +3 -37
- package/dist/components/feedback-component/components/FeedbackComponent.js +46 -14
- package/dist/components/feedback-component/mocks/mockForStory.js +25 -5
- package/dist/components/frame-click-puzzle-component/components/CurrentFramePuzzle.js +4 -3
- package/dist/components/frame-click-puzzle-component/components/FrameClickPuzzleComponent.js +10 -1
- package/dist/components/frame-click-puzzle-component/mocks/mockForStory.js +2 -2
- package/dist/components/hacker-puzzle-component/mocks/mockForStory.js +7 -1
- package/dist/components/hanged-puzzle-component/components/HangedPuzzleComponent.js +71 -18
- package/dist/components/hanged-puzzle-component/mocks/mockForStory.js +7 -1
- package/dist/components/image-click-puzzle-component/mocks/mockForStory.js +7 -1
- package/dist/components/image-click-wrapper-component/components/ImageClickWrapperComponent.js +51 -64
- package/dist/components/image-click-wrapper-component/mocks/mockForStory.js +8 -2
- package/dist/components/image-component/mocks/mockForStory.js +7 -1
- package/dist/components/keyboard-puzzle-component/components/KeyboardPuzzleComponent.js +10 -2
- package/dist/components/keyboard-puzzle-component/mocks/mockForStory.js +7 -1
- package/dist/components/konva-components/KonvaMapper.js +4 -4
- package/dist/components/lectures-component/components/LecturesComponent.js +11 -5
- package/dist/components/terminal-puzzle-component/components/FilesGroup/index.js +6 -6
- package/dist/components/terminal-puzzle-component/components/Visor/index.js +5 -28
- package/dist/components/terminal-puzzle-component/mocks/mockForStory.js +7 -2
- package/package.json +3 -3
|
@@ -142,25 +142,25 @@ var KonvaMapper = function KonvaMapper(_ref) {
|
|
|
142
142
|
opacity: 0
|
|
143
143
|
}), /*#__PURE__*/_react.default.createElement(_reactKonva.Group, {
|
|
144
144
|
ref: badAreasGroup
|
|
145
|
-
}, badAreasList.map(function (area) {
|
|
145
|
+
}, badAreasList.map(function (area, ind) {
|
|
146
146
|
return /*#__PURE__*/_react.default.createElement(_Area.default, {
|
|
147
147
|
hasHighlights: hasHighlights,
|
|
148
148
|
completed: completed,
|
|
149
149
|
onClick: onClick,
|
|
150
150
|
onClickOutside: onClickOutside,
|
|
151
|
-
key: area.name,
|
|
151
|
+
key: area.name + '_' + ind,
|
|
152
152
|
area: area,
|
|
153
153
|
isBad: true
|
|
154
154
|
});
|
|
155
155
|
})), /*#__PURE__*/_react.default.createElement(_reactKonva.Group, {
|
|
156
156
|
ref: goodAreasGroup
|
|
157
|
-
}, areas.map(function (area) {
|
|
157
|
+
}, areas.map(function (area, ind) {
|
|
158
158
|
return /*#__PURE__*/_react.default.createElement(_Area.default, {
|
|
159
159
|
hasHighlights: hasHighlights,
|
|
160
160
|
completed: completed,
|
|
161
161
|
onClick: onClick,
|
|
162
162
|
onClickOutside: onClickOutside,
|
|
163
|
-
key: area.name,
|
|
163
|
+
key: area.name + '_' + ind,
|
|
164
164
|
area: area,
|
|
165
165
|
isClicked: clickedZones.some(function (c) {
|
|
166
166
|
return c.index === area.index;
|
|
@@ -48,10 +48,15 @@ var LecturesComponent = function LecturesComponent(_ref) {
|
|
|
48
48
|
interval = _useState2[0],
|
|
49
49
|
saveInterval = _useState2[1];
|
|
50
50
|
|
|
51
|
-
var _useState3 = (0, _react.useState)(
|
|
51
|
+
var _useState3 = (0, _react.useState)(false),
|
|
52
52
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
saved = _useState4[0],
|
|
54
|
+
save = _useState4[1];
|
|
55
|
+
|
|
56
|
+
var _useState5 = (0, _react.useState)(0),
|
|
57
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
58
|
+
time = _useState6[0],
|
|
59
|
+
setTime = _useState6[1];
|
|
55
60
|
|
|
56
61
|
var currentLecture = text;
|
|
57
62
|
var limit = Math.trunc(currentLecture.split(' ').length * READING_TIME);
|
|
@@ -70,8 +75,9 @@ var LecturesComponent = function LecturesComponent(_ref) {
|
|
|
70
75
|
}
|
|
71
76
|
}, [documentType, emitEvent, goToLecture, name, text]);
|
|
72
77
|
(0, _react.useEffect)(function () {
|
|
73
|
-
if (!visible) {
|
|
78
|
+
if (!visible && !saved) {
|
|
74
79
|
close();
|
|
80
|
+
save(true);
|
|
75
81
|
}
|
|
76
82
|
|
|
77
83
|
if (required && visible) {
|
|
@@ -87,7 +93,7 @@ var LecturesComponent = function LecturesComponent(_ref) {
|
|
|
87
93
|
}
|
|
88
94
|
|
|
89
95
|
return undefined;
|
|
90
|
-
}, [close, required, visible]);
|
|
96
|
+
}, [close, required, saved, visible]);
|
|
91
97
|
(0, _react.useEffect)(function () {
|
|
92
98
|
if (time === limit) {
|
|
93
99
|
clearInterval(interval);
|
|
@@ -21,17 +21,17 @@ var FilesGroup = function FilesGroup(_ref) {
|
|
|
21
21
|
selectItem = _ref.selectItem;
|
|
22
22
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, file.id === 'init' ? /*#__PURE__*/_react.default.createElement("ul", {
|
|
23
23
|
className: "puzzle--terminal__folder__list desktop"
|
|
24
|
-
}, file.children.map(function (item) {
|
|
24
|
+
}, file.children.map(function (item, i) {
|
|
25
25
|
return /*#__PURE__*/_react.default.createElement(_Item.default, {
|
|
26
|
-
key:
|
|
26
|
+
key: i,
|
|
27
27
|
selectItem: selectItem,
|
|
28
28
|
item: item
|
|
29
29
|
});
|
|
30
30
|
})) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("ul", {
|
|
31
31
|
className: "puzzle--terminal__folder__list desktop"
|
|
32
|
-
}, initFile.children.map(function (item) {
|
|
32
|
+
}, initFile.children.map(function (item, i) {
|
|
33
33
|
return /*#__PURE__*/_react.default.createElement(_Item.default, {
|
|
34
|
-
key:
|
|
34
|
+
key: i,
|
|
35
35
|
selectItem: selectItem,
|
|
36
36
|
item: item
|
|
37
37
|
});
|
|
@@ -61,9 +61,9 @@ var FilesGroup = function FilesGroup(_ref) {
|
|
|
61
61
|
className: "puzzle--terminal__folder--body"
|
|
62
62
|
}, /*#__PURE__*/_react.default.createElement("ul", {
|
|
63
63
|
className: "puzzle--terminal__folder__list"
|
|
64
|
-
}, file.children.map(function (item) {
|
|
64
|
+
}, file.children.map(function (item, i) {
|
|
65
65
|
return /*#__PURE__*/_react.default.createElement(_Item.default, {
|
|
66
|
-
key:
|
|
66
|
+
key: i,
|
|
67
67
|
selectItem: selectItem,
|
|
68
68
|
item: item
|
|
69
69
|
});
|
|
@@ -93,40 +93,17 @@ var Visor = function Visor(_ref) {
|
|
|
93
93
|
var filename = file.name;
|
|
94
94
|
var title = filename.replace(/.jpg|.png|.pdf|.mp4/gi, '');
|
|
95
95
|
var solutionId = solution.fileId;
|
|
96
|
-
|
|
97
|
-
var Feedback = function Feedback(_ref2) {
|
|
98
|
-
var status = _ref2.status,
|
|
99
|
-
feedback = _ref2.feedback;
|
|
100
|
-
return /*#__PURE__*/_react.default.createElement("div", {
|
|
101
|
-
className: "puzzle--terminal__visor--message ".concat(status)
|
|
102
|
-
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
103
|
-
className: "puzzle--terminal__visor--file"
|
|
104
|
-
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
105
|
-
className: "puzzle--terminal__icon ".concat(ICONS[file.type])
|
|
106
|
-
}), /*#__PURE__*/_react.default.createElement("span", null, title)), /*#__PURE__*/_react.default.createElement("span", {
|
|
107
|
-
className: "title"
|
|
108
|
-
}, feedback ? translate(feedback) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)), /*#__PURE__*/_react.default.createElement("span", {
|
|
109
|
-
onClick: function onClick() {
|
|
110
|
-
return backFile();
|
|
111
|
-
},
|
|
112
|
-
className: "puzzle--terminal__folder--close"
|
|
113
|
-
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
114
|
-
className: "icon-close"
|
|
115
|
-
})));
|
|
116
|
-
};
|
|
117
|
-
|
|
118
96
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
119
97
|
className: "puzzle--terminal__visor"
|
|
120
|
-
},
|
|
121
|
-
|
|
122
|
-
|
|
98
|
+
}, /*#__PURE__*/_react.default.createElement(_FeedbackComponent.default, {
|
|
99
|
+
shortText: true,
|
|
100
|
+
success: fileId === solutionId,
|
|
101
|
+
text: fileId === solutionId ? info.solution.right.desc : info.solution.wrong.desc,
|
|
123
102
|
functionOnClose: backFile,
|
|
124
103
|
additionalStyle: ICONS[file.type],
|
|
125
104
|
secondText: title,
|
|
105
|
+
translate: translate,
|
|
126
106
|
puzzleHeaderClass: 'puzzle--terminal__visor--message'
|
|
127
|
-
}) : /*#__PURE__*/_react.default.createElement(Feedback, {
|
|
128
|
-
success: "failed",
|
|
129
|
-
feedback: info.solution.wrong.desc
|
|
130
107
|
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
131
108
|
className: "puzzle--terminal__visor--body"
|
|
132
109
|
}, /*#__PURE__*/_react.default.createElement(View, viewProps)), /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -14,6 +14,10 @@ var disableExit = function disableExit(p) {
|
|
|
14
14
|
console.log('disable exit', p);
|
|
15
15
|
};
|
|
16
16
|
|
|
17
|
+
var translate = function translate(payload) {
|
|
18
|
+
return 'wtf';
|
|
19
|
+
};
|
|
20
|
+
|
|
17
21
|
var mockProps = {
|
|
18
22
|
emitEvent: emitEvent,
|
|
19
23
|
disableExit: disableExit,
|
|
@@ -90,11 +94,11 @@ var mockProps = {
|
|
|
90
94
|
},
|
|
91
95
|
solution: {
|
|
92
96
|
right: {
|
|
93
|
-
desc: '
|
|
97
|
+
desc: '160maxA while back I needed to count the amount of letters that a piece of text in an email template had (to avoid passing any character limits)asd asdf sdf A ',
|
|
94
98
|
rewards: [{}]
|
|
95
99
|
},
|
|
96
100
|
wrong: {
|
|
97
|
-
desc: '
|
|
101
|
+
desc: '160maxA while back I needed to count the amount of letters that a piece of text in an email template had (to avoid passing any character limits)asd asdf sdf A ',
|
|
98
102
|
rewards: [{}]
|
|
99
103
|
}
|
|
100
104
|
},
|
|
@@ -115,6 +119,7 @@ exports.mockProps = mockProps;
|
|
|
115
119
|
var realMockProps = {
|
|
116
120
|
emitEvent: emitEvent,
|
|
117
121
|
disableExit: disableExit,
|
|
122
|
+
soundActions: [function () {}, function () {}],
|
|
118
123
|
backgroundImage: {
|
|
119
124
|
url: "https://min.gamelearn.io/css-resources/gamelearn/resources/cosmos-bg-min.jpg"
|
|
120
125
|
},
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gamelearn/arcade-components",
|
|
3
3
|
"license": "Gamelearn",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.17.1",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"files": [
|
|
7
7
|
"dist",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"@babel/cli": "7.12.10",
|
|
56
56
|
"@babel/preset-env": "7.12.11",
|
|
57
57
|
"@babel/preset-react": "7.12.10",
|
|
58
|
-
"@gamelearn/ui-components-core": "
|
|
58
|
+
"@gamelearn/ui-components-core": "5.32.0",
|
|
59
59
|
"@react-three/test-renderer": "6.0.6",
|
|
60
60
|
"@storybook/addon-actions": "6.1.11",
|
|
61
61
|
"@storybook/addon-essentials": "6.1.11",
|
|
@@ -76,4 +76,4 @@
|
|
|
76
76
|
"^react-pdf$": "react-pdf/dist/umd/entry.jest"
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
|
-
}
|
|
79
|
+
}
|