@gamelearn/arcade-components 2.41.0 → 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.
Files changed (212) hide show
  1. package/README.md +8 -5
  2. package/dist/arcade-components.cjs +91984 -0
  3. package/dist/arcade-components.js +91968 -0
  4. package/package.json +74 -73
  5. package/dist/components/animation-component/components/AnimationComponent.js +0 -98
  6. package/dist/components/animation-component/index.js +0 -10
  7. package/dist/components/animation-component/mocks/mockForStory.js +0 -26
  8. package/dist/components/auto-evaluation-component/components/AutoEvaluation.js +0 -215
  9. package/dist/components/auto-evaluation-component/components/EndScreen.js +0 -43
  10. package/dist/components/auto-evaluation-component/components/StartScreen.js +0 -32
  11. package/dist/components/auto-evaluation-component/index.js +0 -10
  12. package/dist/components/auto-evaluation-component/mocks/mockForStory.js +0 -38
  13. package/dist/components/cards-selector-puzzle-component/components/Board/index.js +0 -159
  14. package/dist/components/cards-selector-puzzle-component/components/Card/index.js +0 -115
  15. package/dist/components/cards-selector-puzzle-component/components/CardsSelectorPuzzleComponent.js +0 -289
  16. package/dist/components/cards-selector-puzzle-component/index.js +0 -10
  17. package/dist/components/cards-selector-puzzle-component/mocks/mockForStory.js +0 -446
  18. package/dist/components/cartel-component/components/CartelComponent.js +0 -124
  19. package/dist/components/cartel-component/index.js +0 -10
  20. package/dist/components/chained-image-click-puzzle-component/components/ChainedImageClickPuzzleComponent.js +0 -80
  21. package/dist/components/chained-image-click-puzzle-component/components/CurrentImagePuzzle.js +0 -182
  22. package/dist/components/chained-image-click-puzzle-component/index.js +0 -10
  23. package/dist/components/chained-image-click-puzzle-component/mocks/mockForStory.js +0 -413
  24. package/dist/components/comic-component/components/ComicComponent.js +0 -201
  25. package/dist/components/comic-component/components/Slide.js +0 -31
  26. package/dist/components/comic-component/components/Vignette.js +0 -70
  27. package/dist/components/comic-component/index.js +0 -10
  28. package/dist/components/comic-component/mocks/mockForStory.js +0 -314
  29. package/dist/components/conversational-component/components/ConversationalComponent.js +0 -101
  30. package/dist/components/conversational-component/index.js +0 -10
  31. package/dist/components/conversational-pro-component/components/ConversationalProComponent.js +0 -543
  32. package/dist/components/conversational-pro-component/components/Message.js +0 -37
  33. package/dist/components/conversational-pro-component/components/Slot.js +0 -92
  34. package/dist/components/conversational-pro-component/components/SlotList.js +0 -162
  35. package/dist/components/conversational-pro-component/components/scene/Panel.js +0 -179
  36. package/dist/components/conversational-pro-component/components/scene/Panels.js +0 -46
  37. package/dist/components/conversational-pro-component/components/scene/index.js +0 -77
  38. package/dist/components/conversational-pro-component/index.js +0 -10
  39. package/dist/components/conversational-pro-component/mocks/mockForStory.js +0 -1529
  40. package/dist/components/cracker-puzzle-component/components/CrackerPuzzleComponent.js +0 -261
  41. package/dist/components/cracker-puzzle-component/components/DrawGrid/index.js +0 -33
  42. package/dist/components/cracker-puzzle-component/components/DrawItem/index.js +0 -48
  43. package/dist/components/cracker-puzzle-component/components/DrawRow/index.js +0 -43
  44. package/dist/components/cracker-puzzle-component/components/colors.js +0 -12
  45. package/dist/components/cracker-puzzle-component/components/helpers.js +0 -133
  46. package/dist/components/cracker-puzzle-component/index.js +0 -10
  47. package/dist/components/cracker-puzzle-component/mocks/mockForStory.js +0 -277
  48. package/dist/components/decision-component/components/DecisionBody.js +0 -116
  49. package/dist/components/decision-component/components/DecisionComponent.js +0 -248
  50. package/dist/components/decision-component/components/Feedback.js +0 -40
  51. package/dist/components/decision-component/components/Options.js +0 -74
  52. package/dist/components/decision-component/index.js +0 -10
  53. package/dist/components/decision-component/mocks/mockForStory.js +0 -166
  54. package/dist/components/dialog-component/components/BubbleWrapper.js +0 -39
  55. package/dist/components/dialog-component/components/DialogComponent.js +0 -779
  56. package/dist/components/dialog-component/components/DialogDecision.js +0 -44
  57. package/dist/components/dialog-component/components/SpeechBubbleComponent.js +0 -66
  58. package/dist/components/dialog-component/index.js +0 -10
  59. package/dist/components/dialog-component/mocks/mockForStory.js +0 -550
  60. package/dist/components/drag-item-puzzle-component/components/DragItemPuzzleComponent.js +0 -359
  61. package/dist/components/drag-item-puzzle-component/index.js +0 -10
  62. package/dist/components/drag-item-puzzle-component/mocks/mockForStory.js +0 -74
  63. package/dist/components/feedback-component/components/FeedbackComponent.js +0 -126
  64. package/dist/components/feedback-component/index.js +0 -10
  65. package/dist/components/feedback-component/mocks/mockForStory.js +0 -52
  66. package/dist/components/frame-click-puzzle-component/components/Counter/index.js +0 -24
  67. package/dist/components/frame-click-puzzle-component/components/CurrentFramePuzzle.js +0 -196
  68. package/dist/components/frame-click-puzzle-component/components/FrameClickPuzzleComponent.js +0 -178
  69. package/dist/components/frame-click-puzzle-component/components/Tooltip/index.js +0 -23
  70. package/dist/components/frame-click-puzzle-component/index.js +0 -10
  71. package/dist/components/frame-click-puzzle-component/mocks/mockForStory.js +0 -717
  72. package/dist/components/hacker-puzzle-component/components/HackerPuzzleComponent.js +0 -255
  73. package/dist/components/hacker-puzzle-component/components/languages.js +0 -13
  74. package/dist/components/hacker-puzzle-component/index.js +0 -10
  75. package/dist/components/hacker-puzzle-component/mocks/mockForStory.js +0 -103
  76. package/dist/components/hanged-puzzle-component/components/HangedPuzzleComponent.js +0 -488
  77. package/dist/components/hanged-puzzle-component/index.js +0 -10
  78. package/dist/components/hanged-puzzle-component/mocks/mockForStory.js +0 -61
  79. package/dist/components/hanged-puzzle-component/utils.js +0 -64
  80. package/dist/components/image-click-puzzle-component/components/ImageClickPuzzleComponent.js +0 -40
  81. package/dist/components/image-click-puzzle-component/index.js +0 -10
  82. package/dist/components/image-click-puzzle-component/mocks/mockForStory.js +0 -427
  83. package/dist/components/image-click-wrapper-component/components/CountDown/index.js +0 -18
  84. package/dist/components/image-click-wrapper-component/components/ImageClickWrapperComponent.js +0 -472
  85. package/dist/components/image-click-wrapper-component/components/TimerDialog/index.js +0 -26
  86. package/dist/components/image-click-wrapper-component/index.js +0 -10
  87. package/dist/components/image-click-wrapper-component/mocks/mockForStory.js +0 -432
  88. package/dist/components/image-component/components/ImageComponent.js +0 -83
  89. package/dist/components/image-component/index.js +0 -10
  90. package/dist/components/image-component/mocks/mockForStory.js +0 -52
  91. package/dist/components/index.js +0 -260
  92. package/dist/components/inventory-item/components/InventoryItem.js +0 -120
  93. package/dist/components/inventory-item/index.js +0 -10
  94. package/dist/components/inventory-item/mocks/mockForStory.js +0 -29
  95. package/dist/components/keyboard-puzzle-component/components/KeyboardPuzzleComponent.js +0 -275
  96. package/dist/components/keyboard-puzzle-component/index.js +0 -10
  97. package/dist/components/keyboard-puzzle-component/mocks/mockForStory.js +0 -40
  98. package/dist/components/konva-components/Area/index.js +0 -170
  99. package/dist/components/konva-components/KonvaMapper.js +0 -185
  100. package/dist/components/lectures-component/components/LectureButtons.js +0 -40
  101. package/dist/components/lectures-component/components/LecturesComponent.js +0 -157
  102. package/dist/components/lectures-component/index.js +0 -10
  103. package/dist/components/lectures-component/mocks/mockForStory.js +0 -39
  104. package/dist/components/login-puzzle-component/components/LoginPuzzleComponent.js +0 -243
  105. package/dist/components/login-puzzle-component/index.js +0 -10
  106. package/dist/components/login-puzzle-component/mocks/mockForStory.js +0 -38
  107. package/dist/components/notice-component/components/NoticeComponent.js +0 -96
  108. package/dist/components/notice-component/index.js +0 -10
  109. package/dist/components/notice-component/mocks/mockForStory.js +0 -20
  110. package/dist/components/pattern-component/components/PatternComponent.js +0 -78
  111. package/dist/components/pattern-component/index.js +0 -10
  112. package/dist/components/pattern-component/mocks/mockForStory.js +0 -35
  113. package/dist/components/pdf-component/components/PdfComponent.js +0 -122
  114. package/dist/components/pdf-component/components/PdfVisor.js +0 -187
  115. package/dist/components/pdf-component/index.js +0 -20
  116. package/dist/components/pdf-component/mocks/mockForProps.js +0 -38
  117. package/dist/components/referral-component/components/EmailPill.js +0 -26
  118. package/dist/components/referral-component/components/ReferralComponent.js +0 -115
  119. package/dist/components/referral-component/components/StepOne.js +0 -170
  120. package/dist/components/referral-component/components/StepTwo.js +0 -57
  121. package/dist/components/referral-component/index.js +0 -10
  122. package/dist/components/referral-component/mocks/mockForStory.js +0 -40
  123. package/dist/components/survey-component/components/ApplicableBox.js +0 -49
  124. package/dist/components/survey-component/components/OpinionBox.js +0 -45
  125. package/dist/components/survey-component/components/SurveyComponent.js +0 -150
  126. package/dist/components/survey-component/components/TextBox.js +0 -40
  127. package/dist/components/survey-component/index.js +0 -10
  128. package/dist/components/survey-component/mocks/mockForStory.js +0 -14
  129. package/dist/components/terminal-puzzle-component/components/FilesGroup/Item.js +0 -28
  130. package/dist/components/terminal-puzzle-component/components/FilesGroup/index.js +0 -76
  131. package/dist/components/terminal-puzzle-component/components/Image/index.js +0 -22
  132. package/dist/components/terminal-puzzle-component/components/TerminalPuzzleComponent.js +0 -216
  133. package/dist/components/terminal-puzzle-component/components/Visor/index.js +0 -129
  134. package/dist/components/terminal-puzzle-component/components/utils/index.js +0 -26
  135. package/dist/components/terminal-puzzle-component/index.js +0 -10
  136. package/dist/components/terminal-puzzle-component/mocks/mockForStory.js +0 -188
  137. package/dist/components/test-component/components/Container.js +0 -211
  138. package/dist/components/test-component/components/Feedbacks.js +0 -48
  139. package/dist/components/test-component/components/Questions.js +0 -145
  140. package/dist/components/test-component/components/Results.js +0 -208
  141. package/dist/components/test-component/components/TestComponent.js +0 -302
  142. package/dist/components/test-component/index.js +0 -10
  143. package/dist/components/test-component/mocks/mockForStory.js +0 -113
  144. package/dist/components/text-click-puzzle-component/components/TextClickPuzzleComponent.js +0 -387
  145. package/dist/components/text-click-puzzle-component/index.js +0 -10
  146. package/dist/components/text-click-puzzle-component/mocks/mockForStory.js +0 -485
  147. package/dist/components/text-click-puzzle-component/utils/index.js +0 -76
  148. package/dist/components/url-component/components/UrlComponent.js +0 -88
  149. package/dist/components/url-component/index.js +0 -10
  150. package/dist/components/url-component/mocks/mockForProps.js +0 -20
  151. package/dist/components/video-component/components/VideoComponent.js +0 -73
  152. package/dist/components/video-component/index.js +0 -10
  153. package/dist/components/video-component/mocks/mockForStory.js +0 -94
  154. package/dist/components/video-visor/components/VideoControllers/BufferBar.js +0 -108
  155. package/dist/components/video-visor/components/VideoControllers/ControlButtons.js +0 -31
  156. package/dist/components/video-visor/components/VideoControllers/FinishedVideoButtons.js +0 -32
  157. package/dist/components/video-visor/components/VideoControllers/PlayInitButton.js +0 -37
  158. package/dist/components/video-visor/components/VideoControllers/SkipButton.js +0 -37
  159. package/dist/components/video-visor/components/VideoControllers/Timer.js +0 -37
  160. package/dist/components/video-visor/components/VideoControllers/VolumeBar.js +0 -92
  161. package/dist/components/video-visor/components/VideoControllers/index.js +0 -122
  162. package/dist/components/video-visor/components/VideoVisor.js +0 -271
  163. package/dist/components/video-visor/index.js +0 -10
  164. package/dist/components/video-visor/mocks/mockForStory.js +0 -42
  165. package/dist/components/web-builder-puzzle-component/Popups/PopupColorComponent/index.js +0 -87
  166. package/dist/components/web-builder-puzzle-component/Popups/PopupImageComponent/index.js +0 -94
  167. package/dist/components/web-builder-puzzle-component/Popups/PopupTextComponent/index.js +0 -114
  168. package/dist/components/web-builder-puzzle-component/Popups/index.js +0 -27
  169. package/dist/components/web-builder-puzzle-component/Templates/Bank.js +0 -98
  170. package/dist/components/web-builder-puzzle-component/Templates/Facebook.js +0 -37
  171. package/dist/components/web-builder-puzzle-component/Templates/resourcePath.js +0 -9
  172. package/dist/components/web-builder-puzzle-component/components/EditButton/index.js +0 -28
  173. package/dist/components/web-builder-puzzle-component/components/Feedback/index.js +0 -41
  174. package/dist/components/web-builder-puzzle-component/components/PublishButton/index.js +0 -29
  175. package/dist/components/web-builder-puzzle-component/components/WebBuilderBody/BankBody.js +0 -118
  176. package/dist/components/web-builder-puzzle-component/components/WebBuilderBody/FacebookBody.js +0 -149
  177. package/dist/components/web-builder-puzzle-component/components/WebBuilderBody/index.js +0 -25
  178. package/dist/components/web-builder-puzzle-component/components/WebBuilderFront/index.js +0 -89
  179. package/dist/components/web-builder-puzzle-component/components/WebBuilderHeader/BankHeader.js +0 -84
  180. package/dist/components/web-builder-puzzle-component/components/WebBuilderHeader/FacebookHeader.js +0 -38
  181. package/dist/components/web-builder-puzzle-component/components/WebBuilderHeader/index.js +0 -40
  182. package/dist/components/web-builder-puzzle-component/components/WebBuilderPuzzleComponent.js +0 -302
  183. package/dist/components/web-builder-puzzle-component/components/WebBuilderTopBar/index.js +0 -30
  184. package/dist/components/web-builder-puzzle-component/index.js +0 -10
  185. package/dist/components/web-builder-puzzle-component/mocks/mockForStory.js +0 -27
  186. package/dist/components/writer-puzzle-component/components/ElectionComponent.js +0 -69
  187. package/dist/components/writer-puzzle-component/components/FeedbackComponent.js +0 -97
  188. package/dist/components/writer-puzzle-component/components/FeedbackElement.js +0 -32
  189. package/dist/components/writer-puzzle-component/components/FinishedTextComponent.js +0 -25
  190. package/dist/components/writer-puzzle-component/components/FixedComponent.js +0 -120
  191. package/dist/components/writer-puzzle-component/components/SingleElection.js +0 -85
  192. package/dist/components/writer-puzzle-component/components/WriterPuzzleComponent.js +0 -450
  193. package/dist/components/writer-puzzle-component/index.js +0 -10
  194. package/dist/components/writer-puzzle-component/mocks/mockForStory.js +0 -1194
  195. package/dist/components/zoom-test/components/ZoomTest.js +0 -73
  196. package/dist/components/zoom-test/index.js +0 -10
  197. package/dist/components/zoom-test/mocks/mockForStory.js +0 -21
  198. package/dist/helpers/LangIsRtl.js +0 -16
  199. package/dist/helpers/LightSet.js +0 -35
  200. package/dist/helpers/LodController.js +0 -28
  201. package/dist/helpers/deviceDetection.js +0 -21
  202. package/dist/helpers/drawLOD.js +0 -310
  203. package/dist/helpers/index.js +0 -268
  204. package/dist/helpers/lodStats.js +0 -55
  205. package/dist/helpers/mocker.js +0 -116
  206. package/dist/helpers/useEkho.js +0 -172
  207. package/dist/helpers/useGLB.js +0 -57
  208. package/dist/helpers/useStateMachine.js +0 -277
  209. package/dist/helpers/useTimeout.js +0 -32
  210. package/dist/helpers/useWindowSize.js +0 -44
  211. package/dist/index.js +0 -16
  212. 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;