@gamelearn/arcade-components 1.12.1 → 1.13.0
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/cracker-puzzle-component/components/helpers.js +8 -3
- package/dist/components/feedback-component/components/FeedbackComponent.js +3 -1
- package/dist/components/hanged-puzzle-component/components/HangedPuzzleComponent.js +3 -0
- package/dist/components/hanged-puzzle-component/utils.js +5 -1
- package/dist/components/login-puzzle-component/components/LoginPuzzleComponent.js +15 -0
- package/dist/components/writer-puzzle-component/components/FeedbackElement.js +3 -1
- package/dist/components/writer-puzzle-component/components/WriterPuzzleComponent.js +5 -1
- package/dist/helpers/LangIsRtl.js +20 -0
- package/package.json +2 -2
|
@@ -5,8 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.repaintGridPassword = exports.makeSomeNoise = void 0;
|
|
7
7
|
|
|
8
|
+
var _LangIsRtl = _interopRequireDefault(require("../../../helpers/LangIsRtl"));
|
|
9
|
+
|
|
8
10
|
var _colors = require("./colors");
|
|
9
11
|
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
10
14
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
11
15
|
|
|
12
16
|
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."); }
|
|
@@ -120,8 +124,8 @@ var repaintGridPassword = function repaintGridPassword(actualGrid, newPassword,
|
|
|
120
124
|
|
|
121
125
|
exports.repaintGridPassword = repaintGridPassword;
|
|
122
126
|
|
|
123
|
-
var prepareAcceptedChars = function prepareAcceptedChars(password) {
|
|
124
|
-
return
|
|
127
|
+
var prepareAcceptedChars = function prepareAcceptedChars(password, charactersString) {
|
|
128
|
+
return charactersString.split('').filter(function (character) {
|
|
125
129
|
return !password.includes(character);
|
|
126
130
|
}).join('');
|
|
127
131
|
};
|
|
@@ -152,7 +156,8 @@ var makeSomeNoise = function makeSomeNoise(_ref) {
|
|
|
152
156
|
var numberOfColumns = _ref.numberOfColumns,
|
|
153
157
|
numberOfRows = _ref.numberOfRows,
|
|
154
158
|
password = _ref.password;
|
|
155
|
-
var
|
|
159
|
+
var charactersForLang = (0, _LangIsRtl.default)() ? '٠١٢٣٤٥٦٧٨٩شزذيثبلاهتنمورخحضقسفعدصطغظ' : '0123456789abcdefghijklmnopqrstuvwxyz';
|
|
160
|
+
var acceptedChars = prepareAcceptedChars(password, charactersForLang);
|
|
156
161
|
var grid = generateBasicGrid(numberOfRows, numberOfColumns, acceptedChars);
|
|
157
162
|
|
|
158
163
|
var _generatePasswordPosi3 = generatePasswordPositions(grid, password, numberOfRows, numberOfColumns),
|
|
@@ -126,7 +126,9 @@ var FeedbackComponent = function FeedbackComponent(_ref) {
|
|
|
126
126
|
className: "feedback-layer__explainwrap"
|
|
127
127
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
128
128
|
className: "feedback-layer__explain"
|
|
129
|
-
}, /*#__PURE__*/_react.default.createElement("div",
|
|
129
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
130
|
+
dir: "auto"
|
|
131
|
+
}, text)))));
|
|
130
132
|
};
|
|
131
133
|
|
|
132
134
|
FeedbackComponent.defaultProps = {
|
|
@@ -67,6 +67,7 @@ var AnswerPanel = function AnswerPanel(_ref) {
|
|
|
67
67
|
});
|
|
68
68
|
return words.map(function (word, index) {
|
|
69
69
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
70
|
+
dir: "auto",
|
|
70
71
|
key: "".concat(word + index),
|
|
71
72
|
className: "puzzle--hanged__word",
|
|
72
73
|
"data-testid": "result-".concat(index)
|
|
@@ -436,8 +437,10 @@ var HangedPuzzleComponent = function HangedPuzzleComponent(_ref4) {
|
|
|
436
437
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
437
438
|
className: "puzzle--hanged__controls"
|
|
438
439
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
440
|
+
dir: "auto",
|
|
439
441
|
className: "puzzle--hanged__header"
|
|
440
442
|
}, question), /*#__PURE__*/_react.default.createElement("div", {
|
|
443
|
+
dir: "auto",
|
|
441
444
|
className: "puzzle--hanged__solution ".concat(resolvedClass),
|
|
442
445
|
"data-testid": "".concat(resolvedClass)
|
|
443
446
|
}, showCorrectSolution ? /*#__PURE__*/_react.default.createElement(AnswerPanel, {
|
|
@@ -5,6 +5,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.sortChar = exports.restrictCharacters = exports.makeChar = void 0;
|
|
7
7
|
|
|
8
|
+
var _LangIsRtl = _interopRequireDefault(require("../../helpers/LangIsRtl"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
8
12
|
var restrictCharacters = function restrictCharacters(char, operator) {
|
|
9
13
|
var restrictedChar = false;
|
|
10
14
|
|
|
@@ -36,7 +40,7 @@ var sortChar = function sortChar(a, b) {
|
|
|
36
40
|
exports.sortChar = sortChar;
|
|
37
41
|
|
|
38
42
|
var makeChar = function makeChar() {
|
|
39
|
-
var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
|
|
43
|
+
var characters = (0, _LangIsRtl.default)() ? 'شزذيثبلاهتنمورخحضثقسفعدصطغظ' : 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
|
|
40
44
|
var charactersLength = characters.length;
|
|
41
45
|
return characters.charAt(Math.floor(Math.random() * charactersLength));
|
|
42
46
|
};
|
|
@@ -9,6 +9,10 @@ exports.default = void 0;
|
|
|
9
9
|
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
|
|
12
|
+
var _LangIsRtl = _interopRequireDefault(require("../../../helpers/LangIsRtl"));
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
|
|
12
16
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
13
17
|
|
|
14
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; }
|
|
@@ -54,6 +58,8 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
|
|
|
54
58
|
});
|
|
55
59
|
};
|
|
56
60
|
|
|
61
|
+
var isRtl = (0, _LangIsRtl.default)();
|
|
62
|
+
|
|
57
63
|
var _useState = (0, _react.useState)(''),
|
|
58
64
|
_useState2 = _slicedToArray(_useState, 2),
|
|
59
65
|
inputUser = _useState2[0],
|
|
@@ -187,10 +193,13 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
|
|
|
187
193
|
}, " "), !finished && /*#__PURE__*/_react.default.createElement("span", {
|
|
188
194
|
className: "puzzle--login__title"
|
|
189
195
|
}, translate('puzzle.initSession')), /*#__PURE__*/_react.default.createElement("div", null, login && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
|
|
196
|
+
dir: "auto",
|
|
190
197
|
className: "puzzle--login__label"
|
|
191
198
|
}, translate('puzzle.user')), /*#__PURE__*/_react.default.createElement("div", {
|
|
199
|
+
dir: "auto",
|
|
192
200
|
className: "puzzle--login__group"
|
|
193
201
|
}, showCorrectSolution ? /*#__PURE__*/_react.default.createElement("input", {
|
|
202
|
+
dir: isRtl ? 'rtl' : 'auto',
|
|
194
203
|
disabled: finished,
|
|
195
204
|
"data-testid": "username",
|
|
196
205
|
className: "puzzle--login__input ".concat(successClass),
|
|
@@ -198,6 +207,7 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
|
|
|
198
207
|
placeholder: user,
|
|
199
208
|
value: user
|
|
200
209
|
}) : /*#__PURE__*/_react.default.createElement("input", {
|
|
210
|
+
dir: isRtl ? 'rtl' : 'auto',
|
|
201
211
|
disabled: finished,
|
|
202
212
|
"data-testid": "username",
|
|
203
213
|
className: "puzzle--login__input ".concat(successClass),
|
|
@@ -211,10 +221,13 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
|
|
|
211
221
|
}), /*#__PURE__*/_react.default.createElement("span", {
|
|
212
222
|
className: "icon-circle-check"
|
|
213
223
|
}, " "))), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
|
|
224
|
+
dir: "auto",
|
|
214
225
|
className: "puzzle--login__label"
|
|
215
226
|
}, /*#__PURE__*/_react.default.createElement("span", null, translate('puzzle.password'))), /*#__PURE__*/_react.default.createElement("div", {
|
|
227
|
+
dir: "auto",
|
|
216
228
|
className: "puzzle--login__group"
|
|
217
229
|
}, showCorrectSolution ? /*#__PURE__*/_react.default.createElement("input", {
|
|
230
|
+
dir: isRtl ? 'rtl' : 'auto',
|
|
218
231
|
disabled: true,
|
|
219
232
|
"data-testid": "password",
|
|
220
233
|
className: "puzzle--login__input puzzle--login__input--fakepassword success",
|
|
@@ -222,6 +235,7 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
|
|
|
222
235
|
placeholder: password,
|
|
223
236
|
value: password
|
|
224
237
|
}) : /*#__PURE__*/_react.default.createElement("input", {
|
|
238
|
+
dir: isRtl ? 'rtl' : 'auto',
|
|
225
239
|
disabled: finished,
|
|
226
240
|
"data-testid": "password",
|
|
227
241
|
className: "puzzle--login__input puzzle--login__input--fakepassword ".concat(successClass),
|
|
@@ -240,6 +254,7 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
|
|
|
240
254
|
setErrorMessage(false);
|
|
241
255
|
}
|
|
242
256
|
}), !showCorrectSolution ? /*#__PURE__*/_react.default.createElement("div", {
|
|
257
|
+
dir: isRtl ? 'rtl' : 'auto',
|
|
243
258
|
className: "login-fakepassword".concat(inputPasswordFocus ? ' login-fakepassword--focus' : '').concat(fakeHashes.length ? ' login-fakepassword--fill' : '', " ").concat(successClass || '')
|
|
244
259
|
}, inputPassword ? fakeHashes : translate('puzzle.password')) : null, /*#__PURE__*/_react.default.createElement("span", {
|
|
245
260
|
className: "icon-circle-check"
|
|
@@ -17,8 +17,10 @@ var FeedbackElement = function FeedbackElement(_ref) {
|
|
|
17
17
|
return /*#__PURE__*/_react.default.createElement("div", null, body !== '' && /*#__PURE__*/_react.default.createElement("div", {
|
|
18
18
|
className: "writer-feedback-decision-item"
|
|
19
19
|
}, title && /*#__PURE__*/_react.default.createElement("div", {
|
|
20
|
+
dir: "auto",
|
|
20
21
|
className: "writer-feedback-decision-item__title"
|
|
21
|
-
}, title,
|
|
22
|
+
}, title, ' '), body && /*#__PURE__*/_react.default.createElement("div", {
|
|
23
|
+
dir: "auto",
|
|
22
24
|
className: "writer-feedback-decision-item__message"
|
|
23
25
|
}, decision.correct ? /*#__PURE__*/_react.default.createElement("span", {
|
|
24
26
|
className: "icon-check-circle-black color--success"
|
|
@@ -17,6 +17,8 @@ var _FeedbackComponent = _interopRequireDefault(require("./FeedbackComponent"));
|
|
|
17
17
|
|
|
18
18
|
var _FinishedTextComponent = _interopRequireDefault(require("./FinishedTextComponent"));
|
|
19
19
|
|
|
20
|
+
var _LangIsRtl = _interopRequireDefault(require("../../../helpers/LangIsRtl"));
|
|
21
|
+
|
|
20
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
23
|
|
|
22
24
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -465,9 +467,11 @@ var WriterPuzzleComponent = function WriterPuzzleComponent(_ref) {
|
|
|
465
467
|
}), !showFeedback && /*#__PURE__*/_react.default.createElement("div", {
|
|
466
468
|
className: "writer-puzzle__container"
|
|
467
469
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
470
|
+
dir: "auto",
|
|
468
471
|
className: "writer-puzzle__title"
|
|
469
472
|
}, documentTitle !== '' && documentTitle), /*#__PURE__*/_react.default.createElement("div", {
|
|
470
|
-
className: "writer-puzzle__body"
|
|
473
|
+
className: "writer-puzzle__body",
|
|
474
|
+
dir: (0, _LangIsRtl.default)() ? 'rtl' : 'auto'
|
|
471
475
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
472
476
|
className: "writer-puzzle__scroll",
|
|
473
477
|
ref: automaticScroll
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var LangIsRtl = function LangIsRtl() {
|
|
9
|
+
var langsRtl = ['ar', 'fa', 'he', 'ku', 'ur'];
|
|
10
|
+
var currentLang = document.querySelector('html').getAttribute('lang');
|
|
11
|
+
|
|
12
|
+
if (langsRtl.includes(currentLang)) {
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
return false;
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
var _default = LangIsRtl;
|
|
20
|
+
exports.default = _default;
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@gamelearn/arcade-components",
|
|
3
3
|
"author": "Gamelearn",
|
|
4
4
|
"license": "unlicense",
|
|
5
|
-
"version": "1.
|
|
5
|
+
"version": "1.13.0",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"files": [
|
|
8
8
|
"dist",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"url": "https://github.com/gamelearn/arcade-components"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@gamelearn/arcade-styles": "0.
|
|
16
|
+
"@gamelearn/arcade-styles": "0.11.1",
|
|
17
17
|
"@gamelearn/arcade-three-core": "1.1.15",
|
|
18
18
|
"@react-three/drei": "8.8.1",
|
|
19
19
|
"@react-three/fiber": "7.0.25",
|