@gamelearn/arcade-components 1.0.0 → 1.0.5

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 (35) hide show
  1. package/dist/components/animation-component/components/AnimationComponent.js +1 -1
  2. package/dist/components/animation-component/mocks/mockForStory.js +2 -14
  3. package/dist/components/conversational-pro-component/components/scene/Panel.js +9 -12
  4. package/dist/components/conversational-pro-component/components/scene/index.js +15 -16
  5. package/dist/components/dialog-component/components/DialogComponent.js +19 -14
  6. package/dist/components/dialog-component/mocks/mockForStory.js +2 -2
  7. package/dist/components/hanged-puzzle-component/components/HangedPuzzleComponent.js +27 -9
  8. package/dist/components/index.js +0 -56
  9. package/dist/components/inventory-item/components/InventoryItem.js +7 -11
  10. package/dist/components/inventory-item/mocks/mockForStory.js +3 -3
  11. package/dist/components/keyboard-puzzle-component/components/KeyboardPuzzleComponent.js +2 -1
  12. package/dist/components/login-puzzle-component/components/LoginPuzzleComponent.js +36 -14
  13. package/dist/components/zoom-test/mocks/mockForStory.js +2 -2
  14. package/dist/test/testSceneWrapper.js +11 -16
  15. package/package.json +6 -6
  16. package/dist/components/arcade-render/background/index.js +0 -24
  17. package/dist/components/arcade-render/background/scene-elements/customGeometry/index.js +0 -46
  18. package/dist/components/arcade-render/background/scene-elements/index.js +0 -106
  19. package/dist/components/arcade-render/element/AnimateElement.js +0 -136
  20. package/dist/components/arcade-render/element/BoundingBox.js +0 -65
  21. package/dist/components/arcade-render/element/Projection.js +0 -38
  22. package/dist/components/arcade-render/element/index.js +0 -163
  23. package/dist/components/arcade-render/elements-list/ClickableArea.js +0 -94
  24. package/dist/components/arcade-render/elements-list/Poster.js +0 -92
  25. package/dist/components/arcade-render/elements-list/index.js +0 -165
  26. package/dist/components/arcade-render/light/index.js +0 -35
  27. package/dist/components/arcade-render/light/useLight.js +0 -62
  28. package/dist/components/arcade-render/loading/Loading.js +0 -54
  29. package/dist/components/arcade-render/loading/LoadingLogic.js +0 -56
  30. package/dist/components/arcade-render/loading/index.js +0 -13
  31. package/dist/components/arcade-render/mocks/index.js +0 -32
  32. package/dist/components/arcade-render/scene/ConfigController.js +0 -68
  33. package/dist/components/arcade-render/scene/index.js +0 -129
  34. package/dist/components/arcade-render/scene/useCameraPan.js +0 -115
  35. package/dist/helpers/HtmlPro.js +0 -36
@@ -51,7 +51,7 @@ var AnimationComponent = function AnimationComponent(_ref) {
51
51
  if (!mounted) {
52
52
  var object;
53
53
  scene.traverseVisible(function (node) {
54
- if (node.uid === resource.uid && !object) {
54
+ if (resource.uid && node.uid === resource.uid && !object) {
55
55
  object = node;
56
56
  }
57
57
  });
@@ -5,12 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.mockProps = exports.default = void 0;
7
7
 
8
- var _bg001_street = _interopRequireDefault(require("../../arcade-render/mocks/scenes/bg001_street.json"));
9
-
10
- var _characters = require("../../arcade-render/mocks/scenes/characters.json");
11
-
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
-
14
8
  /* eslint-disable no-console */
15
9
 
16
10
  /* eslint-disable max-len */
@@ -19,15 +13,9 @@ var emitEvent = function emitEvent() {
19
13
  };
20
14
 
21
15
  var mockProps = {
22
- background: _bg001_street.default,
23
- elements: _characters.elements,
24
- scene: {
25
- sceneChanged: true,
26
- loadingText: 'Cargando... {percent}%',
27
- hasControls: false
28
- },
29
16
  resource: {
30
- elementUid: 'snHJhg'
17
+ elementUid: 'snHJhg',
18
+ uid: 'snHJhg'
31
19
  },
32
20
  loopTimes: 1,
33
21
  animation: {
@@ -13,16 +13,14 @@ var _fiber = require("@react-three/fiber");
13
13
 
14
14
  var _drei = require("@react-three/drei");
15
15
 
16
- var _three = require("three");
16
+ var _arcadeThreeCore = require("@gamelearn/arcade-three-core");
17
17
 
18
- var _element = _interopRequireDefault(require("../../../arcade-render/element"));
18
+ var _three = require("three");
19
19
 
20
20
  var _helpers = require("../../../../helpers");
21
21
 
22
22
  var _LightSet = _interopRequireDefault(require("../../../../helpers/LightSet"));
23
23
 
24
- var _drawLOD = _interopRequireDefault(require("../../../../helpers/drawLOD"));
25
-
26
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
25
 
28
26
  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); }
@@ -35,8 +33,7 @@ function Panel(_ref) {
35
33
  var _character$resource4, _character$resource5;
36
34
 
37
35
  var character = _ref.character,
38
- active = _ref.active,
39
- lodSettings = _ref.lodSettings;
36
+ active = _ref.active;
40
37
  var cameraRef = (0, _react.useRef)(null);
41
38
  var sceneRef = (0, _react.useRef)(null);
42
39
  var isCharacter = character.type === 'character';
@@ -73,9 +70,8 @@ function Panel(_ref) {
73
70
  }
74
71
 
75
72
  cameraRef.current.updateProjectionMatrix();
76
- (0, _drawLOD.default)(sceneRef.current, cameraRef.current, lodSettings);
77
73
  }
78
- }, [character, lodSettings]);
74
+ }, [character]);
79
75
  (0, _fiber.useFrame)(function (_ref2) {
80
76
  var gl = _ref2.gl;
81
77
 
@@ -105,16 +101,17 @@ function Panel(_ref) {
105
101
  }, 100);
106
102
  return character.type === 'image' ? null : /*#__PURE__*/_react.default.createElement("scene", {
107
103
  ref: sceneRef
108
- }, /*#__PURE__*/_react.default.createElement(_react.Suspense, {
109
- fallback: null
110
- }, (_character$resource5 = character.resource) !== null && _character$resource5 !== void 0 && _character$resource5.url ? /*#__PURE__*/_react.default.createElement(_element.default, {
104
+ }, (_character$resource5 = character.resource) !== null && _character$resource5 !== void 0 && _character$resource5.url ? /*#__PURE__*/_react.default.createElement(_arcadeThreeCore.LodWrapper, {
105
+ progressive: true,
106
+ individualProgress: true
107
+ }, /*#__PURE__*/_react.default.createElement(_arcadeThreeCore.TriggerWrapper, {
111
108
  name: "char_".concat(character.uid),
112
109
  url: character.resource.url,
113
110
  animationUrl: emotion.url,
114
111
  type: character.type,
115
112
  position: [0, 0, 0],
116
113
  onLoad: onLoadElement
117
- }) : null), /*#__PURE__*/_react.default.createElement(_drei.PerspectiveCamera, {
114
+ })) : null, /*#__PURE__*/_react.default.createElement(_drei.PerspectiveCamera, {
118
115
  name: "camera_".concat(character.uid),
119
116
  fov: 35,
120
117
  focus: 10,
@@ -11,6 +11,8 @@ var _react = _interopRequireWildcard(require("react"));
11
11
 
12
12
  var _fiber = require("@react-three/fiber");
13
13
 
14
+ var _arcadeThreeCore = require("@gamelearn/arcade-three-core");
15
+
14
16
  var _drei = require("@react-three/drei");
15
17
 
16
18
  var _Panels = _interopRequireDefault(require("./Panels"));
@@ -33,15 +35,14 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
33
35
 
34
36
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
35
37
 
36
- function Renderer(_ref) {
38
+ var PanelsWrapper = function PanelsWrapper(_ref) {
37
39
  var characters = _ref.characters,
38
40
  slots = _ref.slots,
39
41
  slotRefs = _ref.slotRefs,
40
42
  flex = _ref.flex,
41
- currentMessage = _ref.currentMessage,
42
- lodSettings = _ref.lodSettings;
43
+ currentMessage = _ref.currentMessage;
43
44
 
44
- var _useState = (0, _react.useState)(),
45
+ var _useState = (0, _react.useState)(false),
45
46
  _useState2 = _slicedToArray(_useState, 2),
46
47
  built = _useState2[0],
47
48
  finishBuild = _useState2[1];
@@ -51,8 +52,9 @@ function Renderer(_ref) {
51
52
  gl.setScissorTest(false);
52
53
  gl.clear(true, true);
53
54
  gl.setScissorTest(true);
54
- }, 100);
55
+ });
55
56
  (0, _react.useEffect)(function () {
57
+ // let useFrame execute at least once
56
58
  finishBuild(true);
57
59
  }, []);
58
60
  return built ? /*#__PURE__*/_react.default.createElement(_Panels.default, {
@@ -60,32 +62,29 @@ function Renderer(_ref) {
60
62
  slots: slots,
61
63
  slotRefs: slotRefs,
62
64
  flex: flex,
63
- activeIndex: currentMessage.position,
64
- lodSettings: lodSettings
65
+ activeIndex: currentMessage.position
65
66
  }) : null;
66
- }
67
+ };
67
68
 
68
69
  var Scene = function Scene(props) {
69
- return /*#__PURE__*/_react.default.createElement(_fiber.Canvas, {
70
- resize: {
71
- scroll: false
72
- },
70
+ return /*#__PURE__*/_react.default.createElement(_arcadeThreeCore.Renderer, {
71
+ fullscreen: false,
73
72
  className: "conversation--canvas",
74
73
  style: {
75
74
  position: 'absolute',
76
75
  width: '100%',
77
76
  height: '100%'
78
77
  },
79
- flat: true,
80
- mode: "concurrent",
81
78
  onCreated: function onCreated(_ref3) {
82
79
  var gl = _ref3.gl;
83
80
  gl.setClearColor('white', 0);
84
81
  gl.physicallyCorrectLights = true;
85
82
  }
86
- }, /*#__PURE__*/_react.default.createElement(Renderer, props), /*#__PURE__*/_react.default.createElement(_drei.Preload, {
83
+ }, /*#__PURE__*/_react.default.createElement(_react.Suspense, {
84
+ fallback: null
85
+ }, /*#__PURE__*/_react.default.createElement(PanelsWrapper, props), /*#__PURE__*/_react.default.createElement(_drei.Preload, {
87
86
  all: true
88
- }));
87
+ })));
89
88
  };
90
89
 
91
90
  var _default = Scene;
@@ -15,14 +15,14 @@ var _three = require("three");
15
15
 
16
16
  var _GLTFLoader = require("three/examples/jsm/loaders/GLTFLoader");
17
17
 
18
+ var _arcadeThreeCore = require("@gamelearn/arcade-three-core");
19
+
18
20
  var _SpeechBubbleComponent = _interopRequireDefault(require("./SpeechBubbleComponent"));
19
21
 
20
22
  var _decisionComponent = _interopRequireDefault(require("../../decision-component"));
21
23
 
22
24
  var _helpers = require("../../../helpers");
23
25
 
24
- var _HtmlPro = _interopRequireDefault(require("../../../helpers/HtmlPro"));
25
-
26
26
  var _deviceDetection = require("../../../helpers/deviceDetection");
27
27
 
28
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -554,18 +554,23 @@ var DialogComponent = function DialogComponent(_ref) {
554
554
  height: '100vh',
555
555
  position: 'static'
556
556
  };
557
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, currentLine.decision ? /*#__PURE__*/_react.default.createElement(_HtmlPro.default, {
558
- zIndexRange: [3, 3],
559
- style: cleanStyle,
560
- calculatePosition: function calculatePosition() {
561
- return [0, 0];
562
- }
563
- }, /*#__PURE__*/_react.default.createElement(_decisionComponent.default, _extends({
564
- inScene: true
565
- }, decisionPayload))) : null, currentMessage.text ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("group", {
557
+
558
+ if (currentLine.decision) {
559
+ return /*#__PURE__*/_react.default.createElement(_arcadeThreeCore.HtmlPro, {
560
+ zIndexRange: [3, 3],
561
+ style: cleanStyle,
562
+ calculatePosition: function calculatePosition() {
563
+ return [0, 0];
564
+ }
565
+ }, /*#__PURE__*/_react.default.createElement(_decisionComponent.default, _extends({
566
+ inScene: true
567
+ }, decisionPayload)));
568
+ }
569
+
570
+ return currentMessage.text ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("group", {
566
571
  ref: groupRef,
567
572
  position: messagePosition.current.pos
568
- }, /*#__PURE__*/_react.default.createElement(_HtmlPro.default, {
573
+ }, /*#__PURE__*/_react.default.createElement(_arcadeThreeCore.HtmlPro, {
569
574
  zIndexRange: [2, 2],
570
575
  calculatePosition: currentMessage.inScene ? undefined : function () {
571
576
  return [0, 0];
@@ -576,7 +581,7 @@ var DialogComponent = function DialogComponent(_ref) {
576
581
  }, /*#__PURE__*/_react.default.createElement(_SpeechBubbleComponent.default, {
577
582
  ref: bubbleRef,
578
583
  message: currentMessage
579
- }))), /*#__PURE__*/_react.default.createElement(_HtmlPro.default, {
584
+ }))), /*#__PURE__*/_react.default.createElement(_arcadeThreeCore.HtmlPro, {
580
585
  style: {
581
586
  width: '100vw',
582
587
  height: '100vh'
@@ -601,7 +606,7 @@ var DialogComponent = function DialogComponent(_ref) {
601
606
  onClick: nextLine
602
607
  }, /*#__PURE__*/_react.default.createElement("span", {
603
608
  className: "icon-next"
604
- }))))) : null);
609
+ }))))) : null;
605
610
  };
606
611
 
607
612
  var _default = DialogComponent;
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.mockScene = exports.mockProps = void 0;
7
7
 
8
- var _bg001_street = _interopRequireDefault(require("components/arcade-render/mocks/scenes/bg001_street.json"));
8
+ var _bg001_street = _interopRequireDefault(require("test/mocks/bg001_street.json"));
9
9
 
10
- var _characters = require("components/arcade-render/mocks/scenes/characters.json");
10
+ var _characters = require("test/mocks/characters.json");
11
11
 
12
12
  var _mocker = require("helpers/mocker");
13
13
 
@@ -49,7 +49,9 @@ var MAX_POOL_LETTERS = 26;
49
49
  var MAX_EXTRA_LETTERS = 8;
50
50
 
51
51
  var AnswerPanel = function AnswerPanel(_ref) {
52
- var answer = _ref.answer;
52
+ var answer = _ref.answer,
53
+ _ref$show = _ref.show,
54
+ show = _ref$show === void 0 ? false : _ref$show;
53
55
  var words = [];
54
56
  var wordIndex = 0;
55
57
  answer.forEach(function (a) {
@@ -68,7 +70,12 @@ var AnswerPanel = function AnswerPanel(_ref) {
68
70
  key: "".concat(word + index),
69
71
  className: "puzzle--hanged__word",
70
72
  "data-testid": "result-".concat(index)
71
- }, word.filter(function (_ref2) {
73
+ }, show ? word.map(function (char, i) {
74
+ return /*#__PURE__*/_react.default.createElement("span", {
75
+ key: "".concat(char + i),
76
+ className: "puzzle--hanged__letter active"
77
+ }, char);
78
+ }) : word.filter(function (_ref2) {
72
79
  var char = _ref2.char;
73
80
  return char !== ' ';
74
81
  }).map(function (_ref3, i) {
@@ -133,6 +140,11 @@ var HangedPuzzleComponent = function HangedPuzzleComponent(_ref4) {
133
140
  accRewards = _useState12[0],
134
141
  setRewards = _useState12[1];
135
142
 
143
+ var _useState13 = (0, _react.useState)(false),
144
+ _useState14 = _slicedToArray(_useState13, 2),
145
+ showCorrectSolution = _useState14[0],
146
+ setCorrectSolution = _useState14[1];
147
+
136
148
  var translatedAnswer = answer.toUpperCase().split('');
137
149
  var answerPanel = translatedAnswer.filter(function (char) {
138
150
  return (0, _utils.restrictCharacters)(char, 'and');
@@ -388,12 +400,15 @@ var HangedPuzzleComponent = function HangedPuzzleComponent(_ref4) {
388
400
  }
389
401
 
390
402
  setResolveAction(function () {
391
- var rewardsData = [].concat(_toConsumableArray(accRewards), _toConsumableArray(info.resolve.rewards));
392
- emitEvent({
393
- type: 'hidePuzzleButtons',
394
- payload: false
395
- });
396
- setShowPoints(rewardsData);
403
+ setCorrectSolution(true);
404
+ setTimeout(function () {
405
+ var rewardsData = [].concat(_toConsumableArray(accRewards), _toConsumableArray(info.resolve.rewards));
406
+ emitEvent({
407
+ type: 'hidePuzzleButtons',
408
+ payload: false
409
+ });
410
+ setShowPoints(rewardsData);
411
+ }, 2000);
397
412
  });
398
413
  }, [setHiddenAnswer, mounted, answer, setResolveAction, emitEvent, accRewards, info.resolve.rewards, setShowPoints]);
399
414
  return /*#__PURE__*/_react.default.createElement("div", {
@@ -416,7 +431,10 @@ var HangedPuzzleComponent = function HangedPuzzleComponent(_ref4) {
416
431
  }, question), /*#__PURE__*/_react.default.createElement("div", {
417
432
  className: "puzzle--hanged__solution ".concat(resolvedClass),
418
433
  "data-testid": "".concat(resolvedClass)
419
- }, /*#__PURE__*/_react.default.createElement(AnswerPanel, {
434
+ }, showCorrectSolution ? /*#__PURE__*/_react.default.createElement(AnswerPanel, {
435
+ answer: answer.split(''),
436
+ show: true
437
+ }) : /*#__PURE__*/_react.default.createElement(AnswerPanel, {
420
438
  answer: resolvedAnswer
421
439
  })), /*#__PURE__*/_react.default.createElement("div", {
422
440
  className: "puzzle--hanged__keyboard"
@@ -5,12 +5,6 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- Object.defineProperty(exports, "AnimateElement", {
9
- enumerable: true,
10
- get: function get() {
11
- return _AnimateElement.default;
12
- }
13
- });
14
8
  Object.defineProperty(exports, "AnimationComponent", {
15
9
  enumerable: true,
16
10
  get: function get() {
@@ -23,12 +17,6 @@ Object.defineProperty(exports, "AutoEvaluationComponent", {
23
17
  return _autoEvaluationComponent.default;
24
18
  }
25
19
  });
26
- Object.defineProperty(exports, "Background", {
27
- enumerable: true,
28
- get: function get() {
29
- return _background.default;
30
- }
31
- });
32
20
  Object.defineProperty(exports, "CardsSelectorPuzzleComponent", {
33
21
  enumerable: true,
34
22
  get: function get() {
@@ -47,12 +35,6 @@ Object.defineProperty(exports, "ChainedImageClickPuzzleComponent", {
47
35
  return _chainedImageClickPuzzleComponent.default;
48
36
  }
49
37
  });
50
- Object.defineProperty(exports, "ClickableArea", {
51
- enumerable: true,
52
- get: function get() {
53
- return _ClickableArea.default;
54
- }
55
- });
56
38
  Object.defineProperty(exports, "ComicComponent", {
57
39
  enumerable: true,
58
40
  get: function get() {
@@ -95,18 +77,6 @@ Object.defineProperty(exports, "DragItemPuzzleComponent", {
95
77
  return _dragItemPuzzleComponent.default;
96
78
  }
97
79
  });
98
- Object.defineProperty(exports, "Element", {
99
- enumerable: true,
100
- get: function get() {
101
- return _element.default;
102
- }
103
- });
104
- Object.defineProperty(exports, "ElementList", {
105
- enumerable: true,
106
- get: function get() {
107
- return _elementsList.default;
108
- }
109
- });
110
80
  Object.defineProperty(exports, "FrameImageClickComponent", {
111
81
  enumerable: true,
112
82
  get: function get() {
@@ -191,18 +161,6 @@ Object.defineProperty(exports, "PdfVisor", {
191
161
  return _pdfComponent.PdfVisor;
192
162
  }
193
163
  });
194
- Object.defineProperty(exports, "Poster", {
195
- enumerable: true,
196
- get: function get() {
197
- return _Poster.default;
198
- }
199
- });
200
- Object.defineProperty(exports, "Scene", {
201
- enumerable: true,
202
- get: function get() {
203
- return _scene.default;
204
- }
205
- });
206
164
  Object.defineProperty(exports, "SurveyComponent", {
207
165
  enumerable: true,
208
166
  get: function get() {
@@ -264,20 +222,6 @@ Object.defineProperty(exports, "ZoomTest", {
264
222
  }
265
223
  });
266
224
 
267
- var _scene = _interopRequireDefault(require("./arcade-render/scene"));
268
-
269
- var _elementsList = _interopRequireDefault(require("./arcade-render/elements-list"));
270
-
271
- var _ClickableArea = _interopRequireDefault(require("./arcade-render/elements-list/ClickableArea"));
272
-
273
- var _Poster = _interopRequireDefault(require("./arcade-render/elements-list/Poster"));
274
-
275
- var _background = _interopRequireDefault(require("./arcade-render/background"));
276
-
277
- var _element = _interopRequireDefault(require("./arcade-render/element"));
278
-
279
- var _AnimateElement = _interopRequireDefault(require("./arcade-render/element/AnimateElement"));
280
-
281
225
  var _noticeComponent = _interopRequireDefault(require("./notice-component"));
282
226
 
283
227
  var _inventoryItem = _interopRequireDefault(require("./inventory-item"));
@@ -9,18 +9,16 @@ exports.default = void 0;
9
9
 
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
 
12
+ var _drei = require("@react-three/drei");
13
+
12
14
  var _fiber = require("@react-three/fiber");
13
15
 
14
- var _drei = require("@react-three/drei");
16
+ var _arcadeThreeCore = require("@gamelearn/arcade-three-core");
15
17
 
16
18
  var _helpers = require("../../../helpers");
17
19
 
18
- var _element = _interopRequireDefault(require("../../arcade-render/element"));
19
-
20
20
  var _LightSet = _interopRequireDefault(require("../../../helpers/LightSet"));
21
21
 
22
- var _drawLOD = _interopRequireDefault(require("../../../helpers/drawLOD"));
23
-
24
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
23
 
26
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); }
@@ -44,7 +42,6 @@ var InventoryItem = function InventoryItem(_ref) {
44
42
  description = _ref.description,
45
43
  element = _ref.element,
46
44
  onFinish = _ref.onFinish,
47
- lodSettings = _ref.lodSettings,
48
45
  soundActions = _ref.soundActions;
49
46
  var orbit = (0, _react.useRef)();
50
47
 
@@ -69,7 +66,6 @@ var InventoryItem = function InventoryItem(_ref) {
69
66
  camera.fov = 35;
70
67
  camera.updateProjectionMatrix();
71
68
  (0, _helpers.cameraFitAnyObject)(model, camera, null, orbit.current);
72
- (0, _drawLOD.default)(scene, camera, lodSettings);
73
69
  }
74
70
  };
75
71
 
@@ -94,9 +90,9 @@ var InventoryItem = function InventoryItem(_ref) {
94
90
  mode: "concurrent",
95
91
  shadows: true,
96
92
  onCreated: handleOnCreate
97
- }, /*#__PURE__*/_react.default.createElement(_LightSet.default, null), /*#__PURE__*/_react.default.createElement(_react.Suspense, {
98
- fallback: null
99
- }, element ? /*#__PURE__*/_react.default.createElement(_element.default, {
93
+ }, /*#__PURE__*/_react.default.createElement(_LightSet.default, null), /*#__PURE__*/_react.default.createElement(_arcadeThreeCore.LodWrapper, {
94
+ lod: "divideby16"
95
+ }, /*#__PURE__*/_react.default.createElement(_arcadeThreeCore.StaticResource, {
100
96
  key: "".concat(element.uid),
101
97
  url: element.url,
102
98
  position: [0, 0, 0],
@@ -105,7 +101,7 @@ var InventoryItem = function InventoryItem(_ref) {
105
101
  material: element.material || {},
106
102
  name: element.name,
107
103
  onLoad: onLoad
108
- }) : null), /*#__PURE__*/_react.default.createElement(_drei.OrbitControls, {
104
+ })), /*#__PURE__*/_react.default.createElement(_drei.OrbitControls, {
109
105
  ref: orbit,
110
106
  enableKeys: false,
111
107
  enableZoom: false,
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.mockProps = exports.default = void 0;
7
7
 
8
- var _mocker = require("helpers/mocker");
8
+ var _characters = require("test/mocks/characters.json");
9
9
 
10
- var _mocks = require("../../arcade-render/mocks");
10
+ var _mocker = require("helpers/mocker");
11
11
 
12
12
  var mockProps = {
13
13
  emitEvent: _mocker.emitEvent,
@@ -18,7 +18,7 @@ var mockProps = {
18
18
  name: 'Avocado',
19
19
  description: 'El que tengo aqui condimentado',
20
20
  element: {
21
- url: _mocks.taxi,
21
+ url: _characters.elements[5].url,
22
22
  type: 'object',
23
23
  position: [0, -5, 0],
24
24
  rotation: [0, 0, 0],
@@ -177,13 +177,14 @@ var KeyboardPuzzleComponent = function KeyboardPuzzleComponent(_ref) {
177
177
  setPassClass('success');
178
178
  setFeedbackResult(true);
179
179
  setFeedBackText(info.solution.right.desc);
180
+ setInputPassword(password);
180
181
  setFinished(true);
181
182
  var rewardsData = [].concat(_toConsumableArray(accRewards), _toConsumableArray(info.resolve.rewards));
182
183
  setTimeout(function () {
183
184
  closeFeedbackAndShowPoints(rewardsData);
184
185
  }, 2000);
185
186
  });
186
- }, [setResolveAction, disableExit, info.solution.right.desc, playSound, info.resolve.rewards, accRewards, closeFeedbackAndShowPoints]);
187
+ }, [setResolveAction, disableExit, info.solution.right.desc, playSound, info.resolve.rewards, accRewards, closeFeedbackAndShowPoints, password]);
187
188
 
188
189
  var handleNumbClick = function handleNumbClick(row, col) {
189
190
  var char = keyboard[row][col];
@@ -90,13 +90,18 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
90
90
  errorMessage = _useState14[0],
91
91
  setErrorMessage = _useState14[1];
92
92
 
93
+ var _useState15 = (0, _react.useState)(false),
94
+ _useState16 = _slicedToArray(_useState15, 2),
95
+ showCorrectSolution = _useState16[0],
96
+ setCorrectSolution = _useState16[1];
97
+
93
98
  var _soundActions = _slicedToArray(soundActions, 1),
94
99
  playSound = _soundActions[0];
95
100
 
96
- var _useState15 = (0, _react.useState)([]),
97
- _useState16 = _slicedToArray(_useState15, 2),
98
- accRewards = _useState16[0],
99
- setRewards = _useState16[1];
101
+ var _useState17 = (0, _react.useState)([]),
102
+ _useState18 = _slicedToArray(_useState17, 2),
103
+ accRewards = _useState18[0],
104
+ setRewards = _useState18[1];
100
105
 
101
106
  var imgURL = ((_image$img = image.img) === null || _image$img === void 0 ? void 0 : _image$img.url) || imagenPorDefecto;
102
107
 
@@ -151,11 +156,14 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
151
156
  (0, _react.useEffect)(function () {
152
157
  setResolveAction(function () {
153
158
  var rewardsData = [].concat(_toConsumableArray(accRewards), _toConsumableArray(info.resolve.rewards));
154
- emitEvent({
155
- type: 'hidePuzzleButtons',
156
- payload: false
157
- });
158
- setShowPoints(rewardsData);
159
+ setCorrectSolution(true);
160
+ setTimeout(function () {
161
+ emitEvent({
162
+ type: 'hidePuzzleButtons',
163
+ payload: false
164
+ });
165
+ setShowPoints(rewardsData);
166
+ }, 2000);
159
167
  });
160
168
  }, [accRewards, info.resolve.rewards, emitEvent, setShowPoints, setResolveAction]);
161
169
  return /*#__PURE__*/_react.default.createElement("div", {
@@ -173,7 +181,14 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
173
181
  className: "puzzle--login__label"
174
182
  }, translate('puzzle.user')), /*#__PURE__*/_react.default.createElement("div", {
175
183
  className: "puzzle--login__group"
176
- }, /*#__PURE__*/_react.default.createElement("input", {
184
+ }, showCorrectSolution ? /*#__PURE__*/_react.default.createElement("input", {
185
+ disabled: finished,
186
+ "data-testid": "username",
187
+ className: "puzzle--login__input ".concat(successClass),
188
+ type: "text",
189
+ placeholder: user,
190
+ value: user
191
+ }) : /*#__PURE__*/_react.default.createElement("input", {
177
192
  disabled: finished,
178
193
  "data-testid": "username",
179
194
  className: "puzzle--login__input ".concat(successClass),
@@ -188,9 +203,16 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
188
203
  className: "icon-circle-check"
189
204
  }, " "))), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
190
205
  className: "puzzle--login__label"
191
- }, /*#__PURE__*/_react.default.createElement("span", null, translate('puzzle.password'))), /*#__PURE__*/_react.default.createElement("div", {
206
+ }, /*#__PURE__*/_react.default.createElement("span", null, translate('puzzle.password'), " ", password)), /*#__PURE__*/_react.default.createElement("div", {
192
207
  className: "puzzle--login__group"
193
- }, /*#__PURE__*/_react.default.createElement("input", {
208
+ }, showCorrectSolution ? /*#__PURE__*/_react.default.createElement("input", {
209
+ disabled: finished,
210
+ "data-testid": "password",
211
+ className: "puzzle--login__input puzzle--login__input--fakepassword ".concat(successClass),
212
+ type: "text",
213
+ placeholder: password,
214
+ value: password
215
+ }) : /*#__PURE__*/_react.default.createElement("input", {
194
216
  disabled: finished,
195
217
  "data-testid": "password",
196
218
  className: "puzzle--login__input puzzle--login__input--fakepassword ".concat(successClass),
@@ -208,9 +230,9 @@ var LoginPuzzleComponent = function LoginPuzzleComponent(_ref) {
208
230
  setSuccessClass('');
209
231
  setErrorMessage(false);
210
232
  }
211
- }), /*#__PURE__*/_react.default.createElement("div", {
233
+ }), !showCorrectSolution ? /*#__PURE__*/_react.default.createElement("div", {
212
234
  className: "login-fakepassword".concat(inputPasswordFocus ? ' login-fakepassword--focus' : '').concat(fakeHashes.length ? ' login-fakepassword--fill' : '', " ").concat(successClass || '')
213
- }, inputPassword ? fakeHashes : translate('puzzle.password')), /*#__PURE__*/_react.default.createElement("span", {
235
+ }, inputPassword ? fakeHashes : translate('puzzle.password')) : null, /*#__PURE__*/_react.default.createElement("span", {
214
236
  className: "icon-circle-check"
215
237
  }, " ")))), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("button", {
216
238
  type: "button",
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.mockProps = exports.default = void 0;
7
7
 
8
- var _bg001_street = _interopRequireDefault(require("../../arcade-render/mocks/scenes/bg001_street.json"));
8
+ var _bg001_street = _interopRequireDefault(require("test/mocks/bg001_street.json"));
9
9
 
10
- var _characters = require("../../arcade-render/mocks/scenes/characters.json");
10
+ var _characters = require("test/mocks/characters.json");
11
11
 
12
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
13