@gamelearn/arcade-components 2.41.1 → 3.0.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/README.md +8 -5
- package/dist/arcade-components.cjs +91984 -0
- package/dist/arcade-components.js +91968 -0
- package/package.json +74 -73
- package/dist/components/animation-component/components/AnimationComponent.js +0 -98
- package/dist/components/animation-component/index.js +0 -10
- package/dist/components/animation-component/mocks/mockForStory.js +0 -26
- package/dist/components/auto-evaluation-component/components/AutoEvaluation.js +0 -215
- package/dist/components/auto-evaluation-component/components/EndScreen.js +0 -43
- package/dist/components/auto-evaluation-component/components/StartScreen.js +0 -32
- package/dist/components/auto-evaluation-component/index.js +0 -10
- package/dist/components/auto-evaluation-component/mocks/mockForStory.js +0 -38
- package/dist/components/cards-selector-puzzle-component/components/Board/index.js +0 -159
- package/dist/components/cards-selector-puzzle-component/components/Card/index.js +0 -115
- package/dist/components/cards-selector-puzzle-component/components/CardsSelectorPuzzleComponent.js +0 -289
- package/dist/components/cards-selector-puzzle-component/index.js +0 -10
- package/dist/components/cards-selector-puzzle-component/mocks/mockForStory.js +0 -446
- package/dist/components/cartel-component/components/CartelComponent.js +0 -124
- package/dist/components/cartel-component/index.js +0 -10
- package/dist/components/chained-image-click-puzzle-component/components/ChainedImageClickPuzzleComponent.js +0 -80
- package/dist/components/chained-image-click-puzzle-component/components/CurrentImagePuzzle.js +0 -182
- package/dist/components/chained-image-click-puzzle-component/index.js +0 -10
- package/dist/components/chained-image-click-puzzle-component/mocks/mockForStory.js +0 -413
- package/dist/components/comic-component/components/ComicComponent.js +0 -201
- package/dist/components/comic-component/components/Slide.js +0 -31
- package/dist/components/comic-component/components/Vignette.js +0 -70
- package/dist/components/comic-component/index.js +0 -10
- package/dist/components/comic-component/mocks/mockForStory.js +0 -314
- package/dist/components/conversational-component/components/ConversationalComponent.js +0 -101
- package/dist/components/conversational-component/index.js +0 -10
- package/dist/components/conversational-pro-component/components/ConversationalProComponent.js +0 -543
- package/dist/components/conversational-pro-component/components/Message.js +0 -37
- package/dist/components/conversational-pro-component/components/Slot.js +0 -92
- package/dist/components/conversational-pro-component/components/SlotList.js +0 -162
- package/dist/components/conversational-pro-component/components/scene/Panel.js +0 -179
- package/dist/components/conversational-pro-component/components/scene/Panels.js +0 -46
- package/dist/components/conversational-pro-component/components/scene/index.js +0 -77
- package/dist/components/conversational-pro-component/index.js +0 -10
- package/dist/components/conversational-pro-component/mocks/mockForStory.js +0 -1529
- package/dist/components/cracker-puzzle-component/components/CrackerPuzzleComponent.js +0 -261
- package/dist/components/cracker-puzzle-component/components/DrawGrid/index.js +0 -33
- package/dist/components/cracker-puzzle-component/components/DrawItem/index.js +0 -48
- package/dist/components/cracker-puzzle-component/components/DrawRow/index.js +0 -43
- package/dist/components/cracker-puzzle-component/components/colors.js +0 -12
- package/dist/components/cracker-puzzle-component/components/helpers.js +0 -133
- package/dist/components/cracker-puzzle-component/index.js +0 -10
- package/dist/components/cracker-puzzle-component/mocks/mockForStory.js +0 -277
- package/dist/components/decision-component/components/DecisionBody.js +0 -116
- package/dist/components/decision-component/components/DecisionComponent.js +0 -248
- package/dist/components/decision-component/components/Feedback.js +0 -40
- package/dist/components/decision-component/components/Options.js +0 -74
- package/dist/components/decision-component/index.js +0 -10
- package/dist/components/decision-component/mocks/mockForStory.js +0 -166
- package/dist/components/dialog-component/components/BubbleWrapper.js +0 -39
- package/dist/components/dialog-component/components/DialogComponent.js +0 -779
- package/dist/components/dialog-component/components/DialogDecision.js +0 -44
- package/dist/components/dialog-component/components/SpeechBubbleComponent.js +0 -66
- package/dist/components/dialog-component/index.js +0 -10
- package/dist/components/dialog-component/mocks/mockForStory.js +0 -550
- package/dist/components/drag-item-puzzle-component/components/DragItemPuzzleComponent.js +0 -361
- package/dist/components/drag-item-puzzle-component/index.js +0 -10
- package/dist/components/drag-item-puzzle-component/mocks/mockForStory.js +0 -74
- package/dist/components/feedback-component/components/FeedbackComponent.js +0 -126
- package/dist/components/feedback-component/index.js +0 -10
- package/dist/components/feedback-component/mocks/mockForStory.js +0 -52
- package/dist/components/frame-click-puzzle-component/components/Counter/index.js +0 -24
- package/dist/components/frame-click-puzzle-component/components/CurrentFramePuzzle.js +0 -196
- package/dist/components/frame-click-puzzle-component/components/FrameClickPuzzleComponent.js +0 -178
- package/dist/components/frame-click-puzzle-component/components/Tooltip/index.js +0 -23
- package/dist/components/frame-click-puzzle-component/index.js +0 -10
- package/dist/components/frame-click-puzzle-component/mocks/mockForStory.js +0 -717
- package/dist/components/hacker-puzzle-component/components/HackerPuzzleComponent.js +0 -255
- package/dist/components/hacker-puzzle-component/components/languages.js +0 -13
- package/dist/components/hacker-puzzle-component/index.js +0 -10
- package/dist/components/hacker-puzzle-component/mocks/mockForStory.js +0 -103
- package/dist/components/hanged-puzzle-component/components/HangedPuzzleComponent.js +0 -488
- package/dist/components/hanged-puzzle-component/index.js +0 -10
- package/dist/components/hanged-puzzle-component/mocks/mockForStory.js +0 -61
- package/dist/components/hanged-puzzle-component/utils.js +0 -64
- package/dist/components/image-click-puzzle-component/components/ImageClickPuzzleComponent.js +0 -40
- package/dist/components/image-click-puzzle-component/index.js +0 -10
- package/dist/components/image-click-puzzle-component/mocks/mockForStory.js +0 -427
- package/dist/components/image-click-wrapper-component/components/CountDown/index.js +0 -18
- package/dist/components/image-click-wrapper-component/components/ImageClickWrapperComponent.js +0 -472
- package/dist/components/image-click-wrapper-component/components/TimerDialog/index.js +0 -26
- package/dist/components/image-click-wrapper-component/index.js +0 -10
- package/dist/components/image-click-wrapper-component/mocks/mockForStory.js +0 -432
- package/dist/components/image-component/components/ImageComponent.js +0 -83
- package/dist/components/image-component/index.js +0 -10
- package/dist/components/image-component/mocks/mockForStory.js +0 -52
- package/dist/components/index.js +0 -260
- package/dist/components/inventory-item/components/InventoryItem.js +0 -120
- package/dist/components/inventory-item/index.js +0 -10
- package/dist/components/inventory-item/mocks/mockForStory.js +0 -29
- package/dist/components/keyboard-puzzle-component/components/KeyboardPuzzleComponent.js +0 -275
- package/dist/components/keyboard-puzzle-component/index.js +0 -10
- package/dist/components/keyboard-puzzle-component/mocks/mockForStory.js +0 -40
- package/dist/components/konva-components/Area/index.js +0 -170
- package/dist/components/konva-components/KonvaMapper.js +0 -185
- package/dist/components/lectures-component/components/LectureButtons.js +0 -40
- package/dist/components/lectures-component/components/LecturesComponent.js +0 -157
- package/dist/components/lectures-component/index.js +0 -10
- package/dist/components/lectures-component/mocks/mockForStory.js +0 -39
- package/dist/components/login-puzzle-component/components/LoginPuzzleComponent.js +0 -243
- package/dist/components/login-puzzle-component/index.js +0 -10
- package/dist/components/login-puzzle-component/mocks/mockForStory.js +0 -38
- package/dist/components/notice-component/components/NoticeComponent.js +0 -96
- package/dist/components/notice-component/index.js +0 -10
- package/dist/components/notice-component/mocks/mockForStory.js +0 -20
- package/dist/components/pattern-component/components/PatternComponent.js +0 -78
- package/dist/components/pattern-component/index.js +0 -10
- package/dist/components/pattern-component/mocks/mockForStory.js +0 -35
- package/dist/components/pdf-component/components/PdfComponent.js +0 -122
- package/dist/components/pdf-component/components/PdfVisor.js +0 -187
- package/dist/components/pdf-component/index.js +0 -20
- package/dist/components/pdf-component/mocks/mockForProps.js +0 -38
- package/dist/components/referral-component/components/EmailPill.js +0 -26
- package/dist/components/referral-component/components/ReferralComponent.js +0 -115
- package/dist/components/referral-component/components/StepOne.js +0 -170
- package/dist/components/referral-component/components/StepTwo.js +0 -57
- package/dist/components/referral-component/index.js +0 -10
- package/dist/components/referral-component/mocks/mockForStory.js +0 -40
- package/dist/components/survey-component/components/ApplicableBox.js +0 -49
- package/dist/components/survey-component/components/OpinionBox.js +0 -45
- package/dist/components/survey-component/components/SurveyComponent.js +0 -150
- package/dist/components/survey-component/components/TextBox.js +0 -40
- package/dist/components/survey-component/index.js +0 -10
- package/dist/components/survey-component/mocks/mockForStory.js +0 -14
- package/dist/components/terminal-puzzle-component/components/FilesGroup/Item.js +0 -28
- package/dist/components/terminal-puzzle-component/components/FilesGroup/index.js +0 -76
- package/dist/components/terminal-puzzle-component/components/Image/index.js +0 -22
- package/dist/components/terminal-puzzle-component/components/TerminalPuzzleComponent.js +0 -216
- package/dist/components/terminal-puzzle-component/components/Visor/index.js +0 -129
- package/dist/components/terminal-puzzle-component/components/utils/index.js +0 -26
- package/dist/components/terminal-puzzle-component/index.js +0 -10
- package/dist/components/terminal-puzzle-component/mocks/mockForStory.js +0 -188
- package/dist/components/test-component/components/Container.js +0 -211
- package/dist/components/test-component/components/Feedbacks.js +0 -48
- package/dist/components/test-component/components/Questions.js +0 -145
- package/dist/components/test-component/components/Results.js +0 -208
- package/dist/components/test-component/components/TestComponent.js +0 -302
- package/dist/components/test-component/index.js +0 -10
- package/dist/components/test-component/mocks/mockForStory.js +0 -113
- package/dist/components/text-click-puzzle-component/components/TextClickPuzzleComponent.js +0 -387
- package/dist/components/text-click-puzzle-component/index.js +0 -10
- package/dist/components/text-click-puzzle-component/mocks/mockForStory.js +0 -485
- package/dist/components/text-click-puzzle-component/utils/index.js +0 -76
- package/dist/components/url-component/components/UrlComponent.js +0 -88
- package/dist/components/url-component/index.js +0 -10
- package/dist/components/url-component/mocks/mockForProps.js +0 -20
- package/dist/components/video-component/components/VideoComponent.js +0 -73
- package/dist/components/video-component/index.js +0 -10
- package/dist/components/video-component/mocks/mockForStory.js +0 -94
- package/dist/components/video-visor/components/VideoControllers/BufferBar.js +0 -108
- package/dist/components/video-visor/components/VideoControllers/ControlButtons.js +0 -31
- package/dist/components/video-visor/components/VideoControllers/FinishedVideoButtons.js +0 -32
- package/dist/components/video-visor/components/VideoControllers/PlayInitButton.js +0 -37
- package/dist/components/video-visor/components/VideoControllers/SkipButton.js +0 -37
- package/dist/components/video-visor/components/VideoControllers/Timer.js +0 -37
- package/dist/components/video-visor/components/VideoControllers/VolumeBar.js +0 -92
- package/dist/components/video-visor/components/VideoControllers/index.js +0 -122
- package/dist/components/video-visor/components/VideoVisor.js +0 -271
- package/dist/components/video-visor/index.js +0 -10
- package/dist/components/video-visor/mocks/mockForStory.js +0 -42
- package/dist/components/web-builder-puzzle-component/Popups/PopupColorComponent/index.js +0 -87
- package/dist/components/web-builder-puzzle-component/Popups/PopupImageComponent/index.js +0 -94
- package/dist/components/web-builder-puzzle-component/Popups/PopupTextComponent/index.js +0 -114
- package/dist/components/web-builder-puzzle-component/Popups/index.js +0 -27
- package/dist/components/web-builder-puzzle-component/Templates/Bank.js +0 -98
- package/dist/components/web-builder-puzzle-component/Templates/Facebook.js +0 -37
- package/dist/components/web-builder-puzzle-component/Templates/resourcePath.js +0 -9
- package/dist/components/web-builder-puzzle-component/components/EditButton/index.js +0 -28
- package/dist/components/web-builder-puzzle-component/components/Feedback/index.js +0 -41
- package/dist/components/web-builder-puzzle-component/components/PublishButton/index.js +0 -29
- package/dist/components/web-builder-puzzle-component/components/WebBuilderBody/BankBody.js +0 -118
- package/dist/components/web-builder-puzzle-component/components/WebBuilderBody/FacebookBody.js +0 -149
- package/dist/components/web-builder-puzzle-component/components/WebBuilderBody/index.js +0 -25
- package/dist/components/web-builder-puzzle-component/components/WebBuilderFront/index.js +0 -89
- package/dist/components/web-builder-puzzle-component/components/WebBuilderHeader/BankHeader.js +0 -84
- package/dist/components/web-builder-puzzle-component/components/WebBuilderHeader/FacebookHeader.js +0 -38
- package/dist/components/web-builder-puzzle-component/components/WebBuilderHeader/index.js +0 -40
- package/dist/components/web-builder-puzzle-component/components/WebBuilderPuzzleComponent.js +0 -302
- package/dist/components/web-builder-puzzle-component/components/WebBuilderTopBar/index.js +0 -30
- package/dist/components/web-builder-puzzle-component/index.js +0 -10
- package/dist/components/web-builder-puzzle-component/mocks/mockForStory.js +0 -27
- package/dist/components/writer-puzzle-component/components/ElectionComponent.js +0 -69
- package/dist/components/writer-puzzle-component/components/FeedbackComponent.js +0 -97
- package/dist/components/writer-puzzle-component/components/FeedbackElement.js +0 -32
- package/dist/components/writer-puzzle-component/components/FinishedTextComponent.js +0 -25
- package/dist/components/writer-puzzle-component/components/FixedComponent.js +0 -120
- package/dist/components/writer-puzzle-component/components/SingleElection.js +0 -85
- package/dist/components/writer-puzzle-component/components/WriterPuzzleComponent.js +0 -450
- package/dist/components/writer-puzzle-component/index.js +0 -10
- package/dist/components/writer-puzzle-component/mocks/mockForStory.js +0 -1194
- package/dist/components/zoom-test/components/ZoomTest.js +0 -73
- package/dist/components/zoom-test/index.js +0 -10
- package/dist/components/zoom-test/mocks/mockForStory.js +0 -21
- package/dist/helpers/LangIsRtl.js +0 -16
- package/dist/helpers/LightSet.js +0 -35
- package/dist/helpers/LodController.js +0 -28
- package/dist/helpers/deviceDetection.js +0 -21
- package/dist/helpers/drawLOD.js +0 -310
- package/dist/helpers/index.js +0 -268
- package/dist/helpers/lodStats.js +0 -55
- package/dist/helpers/mocker.js +0 -116
- package/dist/helpers/useEkho.js +0 -172
- package/dist/helpers/useGLB.js +0 -57
- package/dist/helpers/useStateMachine.js +0 -277
- package/dist/helpers/useTimeout.js +0 -32
- package/dist/helpers/useWindowSize.js +0 -44
- package/dist/index.js +0 -16
- package/dist/test/testSceneWrapper.js +0 -31
|
@@ -1,261 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.default = void 0;
|
|
8
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
var _reactTypist = _interopRequireDefault(require("react-typist"));
|
|
10
|
-
var _helpers = require("./helpers");
|
|
11
|
-
var _DrawGrid = _interopRequireDefault(require("./DrawGrid"));
|
|
12
|
-
var _colors = require("./colors");
|
|
13
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
|
-
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); }
|
|
15
|
-
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; }
|
|
16
|
-
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
17
|
-
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."); }
|
|
18
|
-
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
19
|
-
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
20
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
21
|
-
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."); }
|
|
22
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
23
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
24
|
-
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
25
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /* eslint-disable react-hooks/exhaustive-deps */ // TODO Refactor this component
|
|
26
|
-
var VELOCITY_MAP = {
|
|
27
|
-
slow: 2,
|
|
28
|
-
fast: 5,
|
|
29
|
-
fastest: 10
|
|
30
|
-
};
|
|
31
|
-
var DIFFICULTY_MAP = {
|
|
32
|
-
easy: {
|
|
33
|
-
visibleRows: 'auto',
|
|
34
|
-
visibleColumns: 40,
|
|
35
|
-
totalRows: 25
|
|
36
|
-
},
|
|
37
|
-
medium: {
|
|
38
|
-
visibleRows: 'auto',
|
|
39
|
-
visibleColumns: 40,
|
|
40
|
-
totalRows: 40
|
|
41
|
-
},
|
|
42
|
-
hard: {
|
|
43
|
-
visibleRows: 'auto',
|
|
44
|
-
visibleColumns: 40,
|
|
45
|
-
totalRows: 80
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
var CrackerPuzzleComponent = function CrackerPuzzleComponent(_ref) {
|
|
49
|
-
var emitEvent = _ref.emitEvent,
|
|
50
|
-
soundActions = _ref.soundActions,
|
|
51
|
-
info = _ref.info,
|
|
52
|
-
velocity = _ref.velocity,
|
|
53
|
-
password = _ref.password,
|
|
54
|
-
disableExit = _ref.disableExit,
|
|
55
|
-
difficulty = _ref.difficulty,
|
|
56
|
-
setResolveAction = _ref.setResolveAction;
|
|
57
|
-
var _soundActions = _slicedToArray(soundActions, 1),
|
|
58
|
-
playSound = _soundActions[0];
|
|
59
|
-
var translate = function translate(id) {
|
|
60
|
-
return emitEvent({
|
|
61
|
-
type: 'translate',
|
|
62
|
-
payload: id
|
|
63
|
-
});
|
|
64
|
-
};
|
|
65
|
-
var requestRef = _react.default.useRef();
|
|
66
|
-
var previousTimeRef = _react.default.useRef();
|
|
67
|
-
|
|
68
|
-
// Common PuzzleComponent
|
|
69
|
-
var solution = info.solution;
|
|
70
|
-
var _useState = (0, _react.useState)(password.toLowerCase()),
|
|
71
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
72
|
-
remainingPassword = _useState2[0],
|
|
73
|
-
setRemainingPassword = _useState2[1];
|
|
74
|
-
var _useState3 = (0, _react.useState)(),
|
|
75
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
|
76
|
-
passwordPosition = _useState4[0],
|
|
77
|
-
setPasswordPosition = _useState4[1];
|
|
78
|
-
var _useState5 = (0, _react.useState)(Array(password.toLowerCase().length).fill('')),
|
|
79
|
-
_useState6 = _slicedToArray(_useState5, 2),
|
|
80
|
-
paintSolution = _useState6[0],
|
|
81
|
-
setPaintSolution = _useState6[1];
|
|
82
|
-
var _useState7 = (0, _react.useState)(false),
|
|
83
|
-
_useState8 = _slicedToArray(_useState7, 2),
|
|
84
|
-
finished = _useState8[0],
|
|
85
|
-
setFinished = _useState8[1];
|
|
86
|
-
var _useState9 = (0, _react.useState)([0, 0]),
|
|
87
|
-
_useState10 = _slicedToArray(_useState9, 2),
|
|
88
|
-
cursorPosition = _useState10[0],
|
|
89
|
-
setCursorPosition = _useState10[1];
|
|
90
|
-
var crackedPasswordMsg = translate('puzzle.cracker.crackedPassword');
|
|
91
|
-
var feedbackMessage = info.solution.right.desc && info.solution.right.desc !== '' ? info.solution.right.desc : '';
|
|
92
|
-
var congratulationsMsg = translate('puzzle.cracker.congratulations');
|
|
93
|
-
var _useState11 = (0, _react.useState)([[]]),
|
|
94
|
-
_useState12 = _slicedToArray(_useState11, 2),
|
|
95
|
-
grid = _useState12[0],
|
|
96
|
-
setGrid = _useState12[1];
|
|
97
|
-
var _DIFFICULTY_MAP$diffi = DIFFICULTY_MAP[difficulty],
|
|
98
|
-
visibleRows = _DIFFICULTY_MAP$diffi.visibleRows,
|
|
99
|
-
numberOfColumns = _DIFFICULTY_MAP$diffi.visibleColumns;
|
|
100
|
-
var numberOfRows = visibleRows === 'auto' ? Math.ceil(window.innerHeight * 0.025) : visibleRows;
|
|
101
|
-
numberOfRows = numberOfRows >= 20 ? numberOfRows : 20;
|
|
102
|
-
(0, _react.useEffect)(function () {
|
|
103
|
-
if (finished) {
|
|
104
|
-
disableExit(true);
|
|
105
|
-
}
|
|
106
|
-
}, [finished, disableExit]);
|
|
107
|
-
(0, _react.useEffect)(function () {
|
|
108
|
-
setResolveAction(function (callback) {
|
|
109
|
-
playSound('score');
|
|
110
|
-
setFinished(true);
|
|
111
|
-
setTimeout(function () {
|
|
112
|
-
emitEvent({
|
|
113
|
-
type: 'hidePuzzleButtons',
|
|
114
|
-
payload: false
|
|
115
|
-
});
|
|
116
|
-
callback();
|
|
117
|
-
}, 0);
|
|
118
|
-
});
|
|
119
|
-
}, [setResolveAction, playSound]);
|
|
120
|
-
var handleFinish = function handleFinish() {
|
|
121
|
-
playSound('click-ui');
|
|
122
|
-
var rewards = solution.right.rewards;
|
|
123
|
-
emitEvent({
|
|
124
|
-
type: 'addPoints',
|
|
125
|
-
complex: true,
|
|
126
|
-
finish: true,
|
|
127
|
-
payload: rewards
|
|
128
|
-
});
|
|
129
|
-
emitEvent({
|
|
130
|
-
type: 'passPuzzle'
|
|
131
|
-
});
|
|
132
|
-
};
|
|
133
|
-
var generatePasswordPositions = function generatePasswordPositions() {
|
|
134
|
-
var tempArray = password.toLowerCase().split('');
|
|
135
|
-
return tempArray.map(function (char, index) {
|
|
136
|
-
return {
|
|
137
|
-
char: char,
|
|
138
|
-
index: index,
|
|
139
|
-
used: false
|
|
140
|
-
};
|
|
141
|
-
});
|
|
142
|
-
};
|
|
143
|
-
var getRemainingPassword = function getRemainingPassword(positions) {
|
|
144
|
-
return positions.filter(function (obj) {
|
|
145
|
-
return obj.used === false;
|
|
146
|
-
}).map(function (word) {
|
|
147
|
-
return word.char;
|
|
148
|
-
}).join('');
|
|
149
|
-
};
|
|
150
|
-
var handleSetGrid = function handleSetGrid(prevGrid) {
|
|
151
|
-
if (prevGrid[0].length > 0 && !finished) {
|
|
152
|
-
var shiftedGrid = _toConsumableArray(prevGrid);
|
|
153
|
-
shiftedGrid.push(shiftedGrid.shift());
|
|
154
|
-
return shiftedGrid;
|
|
155
|
-
}
|
|
156
|
-
return prevGrid;
|
|
157
|
-
};
|
|
158
|
-
var ms = 0;
|
|
159
|
-
var loop = function loop(time) {
|
|
160
|
-
if (previousTimeRef.current !== undefined) {
|
|
161
|
-
var deltaTime = time - previousTimeRef.current;
|
|
162
|
-
ms += deltaTime;
|
|
163
|
-
if (ms > 1000 / VELOCITY_MAP[velocity]) {
|
|
164
|
-
setGrid(handleSetGrid);
|
|
165
|
-
ms = 0;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
previousTimeRef.current = time;
|
|
169
|
-
requestRef.current = requestAnimationFrame(loop);
|
|
170
|
-
};
|
|
171
|
-
(0, _react.useEffect)(function () {
|
|
172
|
-
setRemainingPassword(password.toLowerCase());
|
|
173
|
-
var generatedGrid = (0, _helpers.makeSomeNoise)({
|
|
174
|
-
numberOfColumns: numberOfColumns,
|
|
175
|
-
numberOfRows: numberOfRows,
|
|
176
|
-
password: password.toLowerCase()
|
|
177
|
-
});
|
|
178
|
-
setGrid(generatedGrid);
|
|
179
|
-
setPasswordPosition(generatePasswordPositions());
|
|
180
|
-
requestRef.current = requestAnimationFrame(loop);
|
|
181
|
-
return function () {
|
|
182
|
-
return cancelAnimationFrame(requestRef.current);
|
|
183
|
-
};
|
|
184
|
-
}, []);
|
|
185
|
-
var handleMouseOver = function handleMouseOver() {
|
|
186
|
-
if (grid.length <= 1) return;
|
|
187
|
-
var _cursorPosition = _slicedToArray(cursorPosition, 2),
|
|
188
|
-
gridX = _cursorPosition[0],
|
|
189
|
-
gridY = _cursorPosition[1];
|
|
190
|
-
var currentElement = grid[gridX][gridY];
|
|
191
|
-
if (currentElement.hiddenColor === _colors.GREEN) {
|
|
192
|
-
var char = passwordPosition.filter(function (obj) {
|
|
193
|
-
return obj.char === currentElement.value.toLowerCase() && obj.used === false;
|
|
194
|
-
})[0];
|
|
195
|
-
if (char) {
|
|
196
|
-
var index = char.index;
|
|
197
|
-
playSound('score');
|
|
198
|
-
var newPasswordPosition = passwordPosition;
|
|
199
|
-
newPasswordPosition[index].used = true;
|
|
200
|
-
setPasswordPosition(newPasswordPosition);
|
|
201
|
-
var currentPaintSolution = _toConsumableArray(paintSolution);
|
|
202
|
-
currentPaintSolution[index] = currentElement.value;
|
|
203
|
-
var newRemainPswd = getRemainingPassword(newPasswordPosition);
|
|
204
|
-
setRemainingPassword(newRemainPswd);
|
|
205
|
-
var repaintedGrid = (0, _helpers.repaintGridPassword)(grid, newRemainPswd, numberOfRows, numberOfColumns);
|
|
206
|
-
setGrid(repaintedGrid);
|
|
207
|
-
setPaintSolution(currentPaintSolution);
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
if (remainingPassword <= 0) {
|
|
211
|
-
playSound('score');
|
|
212
|
-
setFinished(true);
|
|
213
|
-
}
|
|
214
|
-
};
|
|
215
|
-
(0, _react.useEffect)(function () {
|
|
216
|
-
if (!finished) handleMouseOver();
|
|
217
|
-
}, [cursorPosition]);
|
|
218
|
-
return /*#__PURE__*/_react.default.createElement("div", {
|
|
219
|
-
className: "puzzle--cracker__container"
|
|
220
|
-
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
221
|
-
className: "puzzle--cracker__header"
|
|
222
|
-
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
223
|
-
className: "title"
|
|
224
|
-
}, "Dcoder.exe"), /*#__PURE__*/_react.default.createElement("div", {
|
|
225
|
-
className: "puzzle--pieces"
|
|
226
|
-
}, paintSolution.map(function (char, ind) {
|
|
227
|
-
return /*#__PURE__*/_react.default.createElement("span", {
|
|
228
|
-
key: "".concat(char + ind),
|
|
229
|
-
className: "puzzle--pieces__item"
|
|
230
|
-
}, char && /*#__PURE__*/_react.default.createElement("span", {
|
|
231
|
-
className: "character success-transition-animation",
|
|
232
|
-
"data-testid": "solution".concat(ind)
|
|
233
|
-
}, char));
|
|
234
|
-
}))), /*#__PURE__*/_react.default.createElement(_DrawGrid.default, {
|
|
235
|
-
grid: finished ? [[]] : grid,
|
|
236
|
-
cursorPosition: cursorPosition,
|
|
237
|
-
setCursorPosition: setCursorPosition
|
|
238
|
-
}), finished && crackedPasswordMsg && congratulationsMsg && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactTypist.default, {
|
|
239
|
-
avgTypingDelay: 110,
|
|
240
|
-
cursor: {
|
|
241
|
-
hideWhenDone: true
|
|
242
|
-
},
|
|
243
|
-
className: "puzzle--cracker__result"
|
|
244
|
-
}, /*#__PURE__*/_react.default.createElement(_reactTypist.default.Delay, {
|
|
245
|
-
ms: 300
|
|
246
|
-
}), /*#__PURE__*/_react.default.createElement("span", null, "".concat(crackedPasswordMsg, " ").concat(password.toLowerCase()), " "), /*#__PURE__*/_react.default.createElement("span", null, congratulationsMsg, " "), feedbackMessage !== '' && /*#__PURE__*/_react.default.createElement("span", null, feedbackMessage)), /*#__PURE__*/_react.default.createElement("div", {
|
|
247
|
-
className: "position--absolute bottom center"
|
|
248
|
-
}, /*#__PURE__*/_react.default.createElement("button", {
|
|
249
|
-
type: "button",
|
|
250
|
-
className: "gat--btn gat--btn__primary gat--btn__cracker",
|
|
251
|
-
onClick: handleFinish
|
|
252
|
-
}, translate('screens.continue')))));
|
|
253
|
-
};
|
|
254
|
-
CrackerPuzzleComponent.defaultProps = {
|
|
255
|
-
velocity: 'slow',
|
|
256
|
-
difficulty: 'easy',
|
|
257
|
-
context: {},
|
|
258
|
-
info: {}
|
|
259
|
-
};
|
|
260
|
-
var _default = CrackerPuzzleComponent;
|
|
261
|
-
exports.default = _default;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var _index = _interopRequireDefault(require("../DrawRow/index"));
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
/* eslint-disable react/no-array-index-key */
|
|
11
|
-
|
|
12
|
-
// Draws the characters map
|
|
13
|
-
var DrawGrid = function DrawGrid(_ref) {
|
|
14
|
-
var grid = _ref.grid,
|
|
15
|
-
cursorPosition = _ref.cursorPosition,
|
|
16
|
-
setCursorPosition = _ref.setCursorPosition;
|
|
17
|
-
return /*#__PURE__*/_react.default.createElement("div", {
|
|
18
|
-
className: "puzzle--cracker__canvas"
|
|
19
|
-
}, grid.map(function (row, rowIndex) {
|
|
20
|
-
return /*#__PURE__*/_react.default.createElement(_index.default, {
|
|
21
|
-
key: rowIndex,
|
|
22
|
-
row: row,
|
|
23
|
-
rowIndex: rowIndex,
|
|
24
|
-
cursorPosition: cursorPosition,
|
|
25
|
-
setCursorPosition: setCursorPosition
|
|
26
|
-
});
|
|
27
|
-
}));
|
|
28
|
-
};
|
|
29
|
-
DrawGrid.defaultProps = {
|
|
30
|
-
setCursorPosition: function setCursorPosition() {}
|
|
31
|
-
};
|
|
32
|
-
var _default = DrawGrid;
|
|
33
|
-
exports.default = _default;
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
// Draws the square of colors around item
|
|
11
|
-
var DrawItem = function DrawItem(_ref) {
|
|
12
|
-
var item = _ref.item,
|
|
13
|
-
rowIndex = _ref.rowIndex,
|
|
14
|
-
columnIndex = _ref.columnIndex,
|
|
15
|
-
setCursorPosition = _ref.setCursorPosition,
|
|
16
|
-
cursorPosition = _ref.cursorPosition;
|
|
17
|
-
var isNear = Math.abs(rowIndex - cursorPosition[0]) < 3 && Math.abs(columnIndex - cursorPosition[1]) < 3;
|
|
18
|
-
return /*#__PURE__*/_react.default.createElement("span", {
|
|
19
|
-
className: "puzzle--cracker__item",
|
|
20
|
-
style: {
|
|
21
|
-
backgroundColor: "".concat(isNear ? item.hiddenColor : item.color),
|
|
22
|
-
flexGrow: 1,
|
|
23
|
-
textAlign: 'center'
|
|
24
|
-
},
|
|
25
|
-
onMouseOver: function onMouseOver() {
|
|
26
|
-
setCursorPosition([rowIndex, columnIndex]);
|
|
27
|
-
},
|
|
28
|
-
onFocus: function onFocus() {
|
|
29
|
-
setCursorPosition([rowIndex, columnIndex]);
|
|
30
|
-
}
|
|
31
|
-
}, item.value);
|
|
32
|
-
};
|
|
33
|
-
DrawItem.defaultProps = {
|
|
34
|
-
setCursorPosition: function setCursorPosition() {}
|
|
35
|
-
};
|
|
36
|
-
DrawItem.propTypes = {
|
|
37
|
-
item: _propTypes.default.shape({
|
|
38
|
-
color: _propTypes.default.string,
|
|
39
|
-
hiddenColor: _propTypes.default.string,
|
|
40
|
-
value: _propTypes.default.string
|
|
41
|
-
}).isRequired,
|
|
42
|
-
rowIndex: _propTypes.default.number.isRequired,
|
|
43
|
-
columnIndex: _propTypes.default.number.isRequired,
|
|
44
|
-
cursorPosition: _propTypes.default.arrayOf(_propTypes.default.number).isRequired,
|
|
45
|
-
setCursorPosition: _propTypes.default.func
|
|
46
|
-
};
|
|
47
|
-
var _default = DrawItem;
|
|
48
|
-
exports.default = _default;
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
-
var _DrawItem = _interopRequireDefault(require("../DrawItem"));
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
/* eslint-disable react/no-array-index-key */
|
|
12
|
-
|
|
13
|
-
// Draws the characters map
|
|
14
|
-
var DrawRow = function DrawRow(_ref) {
|
|
15
|
-
var row = _ref.row,
|
|
16
|
-
rowIndex = _ref.rowIndex,
|
|
17
|
-
setCursorPosition = _ref.setCursorPosition,
|
|
18
|
-
cursorPosition = _ref.cursorPosition;
|
|
19
|
-
if (!row.length) return null;
|
|
20
|
-
return /*#__PURE__*/_react.default.createElement("div", {
|
|
21
|
-
className: "puzzle--cracker"
|
|
22
|
-
}, row.map(function (item, columnIndex) {
|
|
23
|
-
return /*#__PURE__*/_react.default.createElement(_DrawItem.default, {
|
|
24
|
-
key: columnIndex,
|
|
25
|
-
item: item,
|
|
26
|
-
rowIndex: rowIndex,
|
|
27
|
-
columnIndex: columnIndex,
|
|
28
|
-
setCursorPosition: setCursorPosition,
|
|
29
|
-
cursorPosition: cursorPosition
|
|
30
|
-
});
|
|
31
|
-
}));
|
|
32
|
-
};
|
|
33
|
-
DrawRow.defaultProps = {
|
|
34
|
-
row: []
|
|
35
|
-
};
|
|
36
|
-
DrawRow.propTypes = {
|
|
37
|
-
row: _propTypes.default.arrayOf(_propTypes.default.shape({})),
|
|
38
|
-
rowIndex: _propTypes.default.number.isRequired,
|
|
39
|
-
setCursorPosition: _propTypes.default.func.isRequired,
|
|
40
|
-
cursorPosition: _propTypes.default.arrayOf(_propTypes.default.number).isRequired
|
|
41
|
-
};
|
|
42
|
-
var _default = DrawRow;
|
|
43
|
-
exports.default = _default;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.RED = exports.ORANGE = exports.GREEN = void 0;
|
|
7
|
-
var GREEN = '#44d7ab';
|
|
8
|
-
exports.GREEN = GREEN;
|
|
9
|
-
var ORANGE = '#FFB34B';
|
|
10
|
-
exports.ORANGE = ORANGE;
|
|
11
|
-
var RED = '#FF634D';
|
|
12
|
-
exports.RED = RED;
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.repaintGridPassword = exports.makeSomeNoise = void 0;
|
|
7
|
-
var _LangIsRtl = _interopRequireDefault(require("../../../helpers/LangIsRtl"));
|
|
8
|
-
var _colors = require("./colors");
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
11
|
-
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."); }
|
|
12
|
-
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
13
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
14
|
-
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
15
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
16
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } /* eslint-disable no-restricted-syntax */
|
|
17
|
-
var getDistance = function getDistance(point1, point2) {
|
|
18
|
-
return Math.max(Math.abs(point1[0] - point2[0]), Math.abs(point1[1] - point2[1]));
|
|
19
|
-
};
|
|
20
|
-
var generatePasswordPositions = function generatePasswordPositions(grid, password, numberOfRows, numberOfColumns) {
|
|
21
|
-
var passwordPositions = [];
|
|
22
|
-
var tempGrid = grid;
|
|
23
|
-
var _iterator = _createForOfIteratorHelper(password.toLowerCase()),
|
|
24
|
-
_step;
|
|
25
|
-
try {
|
|
26
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
27
|
-
var char = _step.value;
|
|
28
|
-
var randomRow = Math.floor(Math.random() * numberOfRows);
|
|
29
|
-
var randomColumn = Math.floor(Math.random() * numberOfColumns);
|
|
30
|
-
tempGrid[randomRow][randomColumn].value = char;
|
|
31
|
-
passwordPositions.push({
|
|
32
|
-
char: char,
|
|
33
|
-
position: [randomRow, randomColumn]
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
} catch (err) {
|
|
37
|
-
_iterator.e(err);
|
|
38
|
-
} finally {
|
|
39
|
-
_iterator.f();
|
|
40
|
-
}
|
|
41
|
-
return [tempGrid, passwordPositions];
|
|
42
|
-
};
|
|
43
|
-
var paintedGridPassword = function paintedGridPassword(blackGrid, numberOfRows, numberOfColumns, passwordPositions) {
|
|
44
|
-
var coloredGrid = blackGrid;
|
|
45
|
-
var _loop = function _loop(rowIndex) {
|
|
46
|
-
var _loop2 = function _loop2(columnIndex) {
|
|
47
|
-
var distanceToPassword = passwordPositions.reduce(function (acc, cur) {
|
|
48
|
-
var gridPosition = [rowIndex, columnIndex];
|
|
49
|
-
var distance = getDistance(cur.position, gridPosition);
|
|
50
|
-
return distance < acc ? distance : acc;
|
|
51
|
-
}, 9999);
|
|
52
|
-
switch (distanceToPassword) {
|
|
53
|
-
case 0:
|
|
54
|
-
coloredGrid[rowIndex][columnIndex].hiddenColor = _colors.GREEN;
|
|
55
|
-
break;
|
|
56
|
-
case 1:
|
|
57
|
-
coloredGrid[rowIndex][columnIndex].hiddenColor = _colors.ORANGE;
|
|
58
|
-
break;
|
|
59
|
-
case 2:
|
|
60
|
-
coloredGrid[rowIndex][columnIndex].hiddenColor = _colors.RED;
|
|
61
|
-
break;
|
|
62
|
-
default:
|
|
63
|
-
break;
|
|
64
|
-
}
|
|
65
|
-
};
|
|
66
|
-
for (var columnIndex = 0; columnIndex < numberOfColumns; columnIndex += 1) {
|
|
67
|
-
_loop2(columnIndex);
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
for (var rowIndex = 0; rowIndex < numberOfRows; rowIndex += 1) {
|
|
71
|
-
_loop(rowIndex);
|
|
72
|
-
}
|
|
73
|
-
return coloredGrid;
|
|
74
|
-
};
|
|
75
|
-
var resetColors = function resetColors(numberOfRows, numberOfColumns, actualGrid) {
|
|
76
|
-
var cleanGrid = actualGrid;
|
|
77
|
-
for (var rowIndex = 0; rowIndex < numberOfRows; rowIndex += 1) {
|
|
78
|
-
for (var columnIndex = 0; columnIndex < numberOfColumns; columnIndex += 1) {
|
|
79
|
-
cleanGrid[rowIndex][columnIndex].color = '';
|
|
80
|
-
cleanGrid[rowIndex][columnIndex].hiddenColor = _colors.RED;
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
return cleanGrid;
|
|
84
|
-
};
|
|
85
|
-
var repaintGridPassword = function repaintGridPassword(actualGrid, newPassword, numberOfRows, numberOfColumns) {
|
|
86
|
-
var resetedColorsGrid = resetColors(numberOfRows, numberOfColumns, actualGrid);
|
|
87
|
-
var _generatePasswordPosi = generatePasswordPositions(resetedColorsGrid, newPassword, numberOfRows, numberOfColumns),
|
|
88
|
-
_generatePasswordPosi2 = _slicedToArray(_generatePasswordPosi, 2),
|
|
89
|
-
blackGrid = _generatePasswordPosi2[0],
|
|
90
|
-
passwordPositions = _generatePasswordPosi2[1];
|
|
91
|
-
var paintedGrid = paintedGridPassword(blackGrid, numberOfRows, numberOfColumns, passwordPositions);
|
|
92
|
-
return paintedGrid;
|
|
93
|
-
};
|
|
94
|
-
exports.repaintGridPassword = repaintGridPassword;
|
|
95
|
-
var prepareAcceptedChars = function prepareAcceptedChars(password, charactersString) {
|
|
96
|
-
return charactersString.split('').filter(function (character) {
|
|
97
|
-
return !password.includes(character);
|
|
98
|
-
}).join('');
|
|
99
|
-
};
|
|
100
|
-
var generateBasicGrid = function generateBasicGrid(numberOfRows, numberOfColumns, acceptedChars) {
|
|
101
|
-
var basicGrid = [];
|
|
102
|
-
for (var rowIndex = 0; rowIndex < numberOfRows; rowIndex += 1) {
|
|
103
|
-
var row = [];
|
|
104
|
-
for (var columnIndex = 0; columnIndex < numberOfColumns; columnIndex += 1) {
|
|
105
|
-
var cell = {
|
|
106
|
-
color: '',
|
|
107
|
-
hiddenColor: _colors.RED,
|
|
108
|
-
value: acceptedChars[Math.floor(Math.random() * acceptedChars.length)]
|
|
109
|
-
};
|
|
110
|
-
row.push(cell);
|
|
111
|
-
}
|
|
112
|
-
basicGrid.push(row);
|
|
113
|
-
}
|
|
114
|
-
return basicGrid;
|
|
115
|
-
};
|
|
116
|
-
|
|
117
|
-
// generates the character map with the password and puts colors attribute
|
|
118
|
-
var makeSomeNoise = function makeSomeNoise(_ref) {
|
|
119
|
-
var numberOfColumns = _ref.numberOfColumns,
|
|
120
|
-
numberOfRows = _ref.numberOfRows,
|
|
121
|
-
password = _ref.password;
|
|
122
|
-
var charactersForLang = (0, _LangIsRtl.default)() ? '٠١٢٣٤٥٦٧٨٩شزذيثبلاهتنمورخحضقسفعدصطغظ' : '0123456789abcdefghijklmnopqrstuvwxyz';
|
|
123
|
-
var acceptedChars = prepareAcceptedChars(password, charactersForLang);
|
|
124
|
-
var grid = generateBasicGrid(numberOfRows, numberOfColumns, acceptedChars);
|
|
125
|
-
var _generatePasswordPosi3 = generatePasswordPositions(grid, password, numberOfRows, numberOfColumns),
|
|
126
|
-
_generatePasswordPosi4 = _slicedToArray(_generatePasswordPosi3, 2),
|
|
127
|
-
blackGrid = _generatePasswordPosi4[0],
|
|
128
|
-
passwordPositions = _generatePasswordPosi4[1];
|
|
129
|
-
var paintedGrid = paintedGridPassword(blackGrid, numberOfRows, numberOfColumns, passwordPositions);
|
|
130
|
-
return paintedGrid;
|
|
131
|
-
};
|
|
132
|
-
// eslint-disable-next-line import/prefer-default-export
|
|
133
|
-
exports.makeSomeNoise = makeSomeNoise;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _CrackerPuzzleComponent = _interopRequireDefault(require("./components/CrackerPuzzleComponent"));
|
|
8
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
|
-
var _default = _CrackerPuzzleComponent.default;
|
|
10
|
-
exports.default = _default;
|