@gamelearn/arcade-components 0.4.0 → 0.4.2-beta-terminal

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 (71) hide show
  1. package/dist/components/arcade-render/element/AnimateElement.js +6 -2
  2. package/dist/components/arcade-render/element/index.js +10 -18
  3. package/dist/components/arcade-render/loading/LoadingLogic.js +28 -1
  4. package/dist/components/arcade-render/mocks/index.js +3 -3
  5. package/dist/components/chained-image-click-puzzle-component/components/ChainedImageClickPuzzleComponent.js +73 -0
  6. package/dist/components/chained-image-click-puzzle-component/components/CurrentImagePuzzle.js +155 -0
  7. package/dist/components/chained-image-click-puzzle-component/index.js +13 -0
  8. package/dist/components/chained-image-click-puzzle-component/mocks/mockForStory.js +163 -0
  9. package/dist/components/comic-component/mocks/mockForStory.js +4 -4
  10. package/dist/components/conversational-pro-component/components/scene/Panel.js +3 -0
  11. package/dist/components/conversational-pro-component/mocks/mockForStory.js +20 -20
  12. package/dist/components/drag-item-puzzle-component/components/DragItemPuzzleComponent.js +329 -0
  13. package/dist/components/drag-item-puzzle-component/components/Messages.js +55 -0
  14. package/dist/components/drag-item-puzzle-component/index.js +13 -0
  15. package/dist/components/drag-item-puzzle-component/mocks/mockForStory.js +79 -0
  16. package/dist/components/hanged-puzzle-component/mocks/mockForStory.js +1 -1
  17. package/dist/components/image-click-wrapper-component/components/Area/index.js +1 -1
  18. package/dist/components/image-click-wrapper-component/components/Feedback/index.js +4 -5
  19. package/dist/components/image-click-wrapper-component/components/ImageClickWrapperComponent.js +31 -17
  20. package/dist/components/image-component/mocks/mockForStory.js +3 -3
  21. package/dist/components/index.js +40 -0
  22. package/dist/components/inventory-item/components/InventoryItem.js +2 -1
  23. package/dist/components/keyboard-puzzle-component/mocks/mockForStory.js +1 -1
  24. package/dist/components/login-puzzle-component/mocks/mockForStory.js +3 -3
  25. package/dist/components/pdf-component/components/PdfComponent.js +40 -7
  26. package/dist/components/pdf-component/components/PdfVisor.js +86 -33
  27. package/dist/components/pdf-component/mocks/mockForProps.js +21 -5
  28. package/dist/components/terminal-puzzle-component/components/FilesGroup/Item.js +32 -0
  29. package/dist/components/terminal-puzzle-component/components/FilesGroup/index.js +74 -0
  30. package/dist/components/terminal-puzzle-component/components/Image/index.js +26 -0
  31. package/dist/components/terminal-puzzle-component/components/TerminalPuzzleComponent.js +163 -0
  32. package/dist/components/terminal-puzzle-component/components/Visor/index.js +133 -0
  33. package/dist/components/terminal-puzzle-component/components/utils/index.js +29 -0
  34. package/dist/components/terminal-puzzle-component/index.js +13 -0
  35. package/dist/components/terminal-puzzle-component/mocks/mockForStory.js +190 -0
  36. package/dist/components/video-component/mocks/mockForStory.js +5 -5
  37. package/dist/components/video-visor/mocks/mockForStory.js +4 -4
  38. package/dist/components/web-builder-puzzle-component/Popups/PopupColorComponent/index.js +99 -0
  39. package/dist/components/web-builder-puzzle-component/Popups/PopupImageComponent/index.js +113 -0
  40. package/dist/components/web-builder-puzzle-component/Popups/PopupTextComponent/index.js +122 -0
  41. package/dist/components/web-builder-puzzle-component/Popups/index.js +31 -0
  42. package/dist/components/web-builder-puzzle-component/Templates/Bank.js +98 -0
  43. package/dist/components/web-builder-puzzle-component/Templates/Facebook.js +39 -0
  44. package/dist/components/web-builder-puzzle-component/Templates/resourcePath.js +9 -0
  45. package/dist/components/web-builder-puzzle-component/components/EditButton/index.js +28 -0
  46. package/dist/components/web-builder-puzzle-component/components/Feedback/index.js +38 -0
  47. package/dist/components/web-builder-puzzle-component/components/PublishButton/index.js +29 -0
  48. package/dist/components/web-builder-puzzle-component/components/WebBuilderBody/BankBody.js +124 -0
  49. package/dist/components/web-builder-puzzle-component/components/WebBuilderBody/FacebookBody.js +154 -0
  50. package/dist/components/web-builder-puzzle-component/components/WebBuilderBody/index.js +32 -0
  51. package/dist/components/web-builder-puzzle-component/components/WebBuilderFront/index.js +98 -0
  52. package/dist/components/web-builder-puzzle-component/components/WebBuilderHeader/BankHeader.js +92 -0
  53. package/dist/components/web-builder-puzzle-component/components/WebBuilderHeader/FacebookHeader.js +50 -0
  54. package/dist/components/web-builder-puzzle-component/components/WebBuilderHeader/index.js +47 -0
  55. package/dist/components/web-builder-puzzle-component/components/WebBuilderPuzzleComponent.js +337 -0
  56. package/dist/components/web-builder-puzzle-component/components/WebBuilderTopBar/index.js +36 -0
  57. package/dist/components/web-builder-puzzle-component/index.js +13 -0
  58. package/dist/components/web-builder-puzzle-component/mocks/mockForStory.js +29 -0
  59. package/dist/components/writer-puzzle-component/components/ElectionComponent.js +89 -0
  60. package/dist/components/writer-puzzle-component/components/FeedbackComponent.js +138 -0
  61. package/dist/components/writer-puzzle-component/components/FeedbackElement.js +40 -0
  62. package/dist/components/writer-puzzle-component/components/FinishedTextComponent.js +36 -0
  63. package/dist/components/writer-puzzle-component/components/FixedComponent.js +166 -0
  64. package/dist/components/writer-puzzle-component/components/Rewards.js +203 -0
  65. package/dist/components/writer-puzzle-component/components/SingleElection.js +141 -0
  66. package/dist/components/writer-puzzle-component/components/WriterPuzzleComponent.js +552 -0
  67. package/dist/components/writer-puzzle-component/index.js +13 -0
  68. package/dist/components/writer-puzzle-component/mocks/mockForStory.js +861 -0
  69. package/dist/helpers/drawLOD.js +35 -47
  70. package/dist/helpers/useGLB.js +22 -8
  71. package/package.json +6 -14
@@ -11,6 +11,10 @@ var _react = _interopRequireWildcard(require("react"));
11
11
 
12
12
  var _drei = require("@react-three/drei");
13
13
 
14
+ var _useGLB2 = _interopRequireDefault(require("../../../helpers/useGLB"));
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
14
18
  function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
15
19
 
16
20
  function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (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; }
@@ -28,8 +32,8 @@ var AnimateElement = function AnimateElement(_ref) {
28
32
  animationUrl = _ref.animationUrl,
29
33
  props = _objectWithoutProperties(_ref, ["model", "position", "rotation", "animationUrl"]);
30
34
 
31
- var _useGLTF = (0, _drei.useGLTF)(animationUrl),
32
- animations = _useGLTF.animations;
35
+ var _useGLB = (0, _useGLB2.default)(animationUrl),
36
+ animations = _useGLB.animations;
33
37
 
34
38
  var _useAnimations = (0, _drei.useAnimations)(animations),
35
39
  ref = _useAnimations.ref,
@@ -19,7 +19,7 @@ var _three = require("three");
19
19
 
20
20
  var _Projection = _interopRequireDefault(require("./Projection"));
21
21
 
22
- var _drei = require("@react-three/drei");
22
+ var _useGLB2 = _interopRequireDefault(require("../../../helpers/useGLB"));
23
23
 
24
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
25
 
@@ -45,9 +45,6 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
45
45
 
46
46
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
47
47
 
48
- // const whiteImage = new Image();
49
- // whiteImage.src =
50
- // 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8/x8AAwMCAO+ip1sAAAAASUVORK5CYII=';
51
48
  var Element = function Element(_ref) {
52
49
  var url = _ref.url,
53
50
  animationUrl = _ref.animationUrl,
@@ -61,23 +58,25 @@ var Element = function Element(_ref) {
61
58
  material = _ref$material === void 0 ? {} : _ref$material,
62
59
  _ref$layers = _ref.layers,
63
60
  layers = _ref$layers === void 0 ? 0 : _ref$layers,
61
+ type = _ref.type,
64
62
  _ref$onLoad = _ref.onLoad,
65
63
  onLoad = _ref$onLoad === void 0 ? function () {} : _ref$onLoad,
66
- props = _objectWithoutProperties(_ref, ["url", "animationUrl", "position", "rotation", "scale", "size", "material", "layers", "onLoad"]);
64
+ props = _objectWithoutProperties(_ref, ["url", "animationUrl", "position", "rotation", "scale", "size", "material", "layers", "type", "onLoad"]);
67
65
 
68
- var _useGLTF = (0, _drei.useGLTF)(url),
69
- scene = _useGLTF.scene;
66
+ var _useGLB = (0, _useGLB2.default)(url),
67
+ scene = _useGLB.scene;
70
68
 
71
69
  var model = (0, _react.useMemo)(function () {
72
70
  return _SkeletonUtils.SkeletonUtils.clone(scene);
73
71
  }, [scene]);
74
72
  var usingScale = size ? Object.values(size) : scale;
73
+ var isCharacter = type === 'character';
75
74
 
76
75
  if (usingScale.length < 3) {
77
76
  usingScale.push(1);
78
77
  }
79
78
 
80
- model.url = url;
79
+ model.userData.url = url;
81
80
 
82
81
  var _useThree = (0, _fiber.useThree)(function (state) {
83
82
  return [state.scene, state.camera];
@@ -94,7 +93,7 @@ var Element = function Element(_ref) {
94
93
  node.castShadow = true;
95
94
  node.material.roughness = 0.7;
96
95
  node.material.metalness = 0.5;
97
- node.frustrumCulled = false;
96
+ if (isCharacter) node.frustumCulled = false;
98
97
 
99
98
  if (node.isSkinnedMesh) {
100
99
  node.material.skinned = true;
@@ -106,14 +105,7 @@ var Element = function Element(_ref) {
106
105
 
107
106
  if (layers > 0) {
108
107
  node.layers.set(layers);
109
- } // const keys = Object.keys(node.material);
110
- // keys.forEach((key) => {
111
- // const value = node.material[key];
112
- // if (value && value.isTexture) {
113
- // node.material[key].image = whiteImage;
114
- // }
115
- // });
116
-
108
+ }
117
109
 
118
110
  if (node.material.map) node.material.map.encoding = _three.sRGBEncoding;
119
111
  if (node.material.emissiveMap) node.material.emissiveMap.encoding = _three.sRGBEncoding;
@@ -122,7 +114,7 @@ var Element = function Element(_ref) {
122
114
  });
123
115
  onLoad(model, currentScene, camera);
124
116
  }
125
- }, [model, material, onLoad, currentScene, camera, layers]);
117
+ }, [model, material, onLoad, currentScene, camera, layers, isCharacter]);
126
118
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, animationUrl ? /*#__PURE__*/_react.default.createElement(_AnimateElement.default, _extends({
127
119
  animationUrl: animationUrl,
128
120
  model: model,
@@ -9,17 +9,44 @@ var _react = require("react");
9
9
 
10
10
  var _drei = require("@react-three/drei");
11
11
 
12
+ var _fiber = require("@react-three/fiber");
13
+
14
+ var _drawLOD = _interopRequireDefault(require("../../../helpers/drawLOD"));
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
18
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
19
+
20
+ 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."); }
21
+
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
+
24
+ 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; }
25
+
26
+ function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
27
+
28
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
29
+
12
30
  function LoadingLogic(_ref) {
13
31
  var onFinish = _ref.onFinish;
14
32
  var progress = (0, _drei.useProgress)(function (state) {
15
33
  return state.progress;
16
34
  });
35
+
36
+ var _useThree = (0, _fiber.useThree)(function (state) {
37
+ return [state.scene, state.camera];
38
+ }),
39
+ _useThree2 = _slicedToArray(_useThree, 2),
40
+ scene = _useThree2[0],
41
+ camera = _useThree2[1];
42
+
17
43
  var percentage = Math.floor(progress);
18
44
  (0, _react.useEffect)(function () {
19
45
  if (percentage === 100) {
20
46
  onFinish();
47
+ (0, _drawLOD.default)(scene, camera);
21
48
  }
22
- }, [onFinish, percentage]);
49
+ }, [onFinish, percentage, scene, camera]);
23
50
  return null;
24
51
  }
25
52
 
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.character = exports.taxi = exports.avocado = void 0;
7
- var avocado = "https://s3-eu-west-1.amazonaws.com/int.statics.gamelearn.io/gat/objects/avocado/Avocado.glb";
7
+ var avocado = 'https://min.int.gamelearn.io/statics/gat/objects/avocado/Avocado.glb';
8
8
  exports.avocado = avocado;
9
- var taxi = 'https://gl-lms-storage.s3-eu-west-1.amazonaws.com/development/clients/5981fca94d82290bcbe957fe/object/5e53b649ef1f60000fb9cc1c/draco_pr0065_car_004.glb';
9
+ var taxi = 'https://min.int.gamelearn.io/cooked.gl-lms-storage/clients/5981fca94d82290bcbe957fe/object/5e53b649ef1f60000fb9cc1c/draco_pr0065_car_004.glb';
10
10
  exports.taxi = taxi;
11
- var character = 'https://gl-lms-storage.s3-eu-west-1.amazonaws.com/prod/clients/5981fca94d82290bcbe957fe/character/5fe33236fffcf50011e04687/character.glb';
11
+ var character = 'https://min.gamelearn.io/cooked.gl-lms-storage/clients/5981fca94d82290bcbe957fe/character/5fe33236fffcf50011e04687/character.glb';
12
12
  exports.character = character;
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _CurrentImagePuzzle = _interopRequireDefault(require("./CurrentImagePuzzle"));
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+
16
+ function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
17
+
18
+ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (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; }
19
+
20
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
21
+
22
+ 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."); }
23
+
24
+ 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); }
25
+
26
+ 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; }
27
+
28
+ function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
29
+
30
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
31
+
32
+ var ChainedImageClickPuzzleComponent = function ChainedImageClickPuzzleComponent(props) {
33
+ var setInfo = props.setInfo,
34
+ emitEvent = props.emitEvent,
35
+ nodeId = props.nodeId,
36
+ list = props.list,
37
+ description = props.description,
38
+ soundActions = props.soundActions,
39
+ showFrames = props.showFrames,
40
+ disableExit = props.disableExit,
41
+ setResolveAction = props.setResolveAction;
42
+
43
+ var _useState = (0, _react.useState)(0),
44
+ _useState2 = _slicedToArray(_useState, 2),
45
+ selected = _useState2[0],
46
+ setSelected = _useState2[1];
47
+
48
+ var currentPuzzleProps = {
49
+ list: list,
50
+ description: description,
51
+ nodeId: nodeId,
52
+ disableExit: disableExit,
53
+ setResolveAction: setResolveAction,
54
+ emitEvent: emitEvent,
55
+ soundActions: soundActions,
56
+ setInfo: setInfo,
57
+ setSelected: setSelected,
58
+ selected: selected
59
+ };
60
+ var totalCorrects = list.reduce(function (acc, current) {
61
+ return acc + current.areas.length;
62
+ }, 0);
63
+ return /*#__PURE__*/_react.default.createElement("div", {
64
+ className: "puzzle--image__click"
65
+ }, showFrames ? /*#__PURE__*/_react.default.createElement("div", {
66
+ className: "puzzle-image__info"
67
+ }, /*#__PURE__*/_react.default.createElement("span", {
68
+ className: "info-circle"
69
+ }), /*#__PURE__*/_react.default.createElement("span", null, selected, " / ", totalCorrects)) : null, /*#__PURE__*/_react.default.createElement(_CurrentImagePuzzle.default, currentPuzzleProps));
70
+ };
71
+
72
+ var _default = ChainedImageClickPuzzleComponent;
73
+ exports.default = _default;
@@ -0,0 +1,155 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _imageClickWrapperComponent = _interopRequireDefault(require("../../image-click-wrapper-component"));
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+
16
+ function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
17
+
18
+ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (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; }
19
+
20
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
21
+
22
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
23
+
24
+ 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."); }
25
+
26
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
27
+
28
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
29
+
30
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
31
+
32
+ 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."); }
33
+
34
+ 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); }
35
+
36
+ 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; }
37
+
38
+ function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
39
+
40
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
41
+
42
+ var CurrentImageClickPuzzle = function CurrentImageClickPuzzle(_ref) {
43
+ var list = _ref.list,
44
+ description = _ref.description,
45
+ nodeId = _ref.nodeId,
46
+ setInfo = _ref.setInfo,
47
+ emitEvent = _ref.emitEvent,
48
+ disableExit = _ref.disableExit,
49
+ setResolveAction = _ref.setResolveAction,
50
+ soundActions = _ref.soundActions,
51
+ setSelected = _ref.setSelected,
52
+ selected = _ref.selected;
53
+ var accRewards = (0, _react.useRef)([]);
54
+
55
+ var _useState = (0, _react.useState)(0),
56
+ _useState2 = _slicedToArray(_useState, 2),
57
+ index = _useState2[0],
58
+ setIndex = _useState2[1];
59
+
60
+ var puzzleId = "chained-image-click-puzzle_".concat(index, "_").concat(nodeId);
61
+ var currentPuzzleStatus = (0, _react.useMemo)(function () {
62
+ return emitEvent({
63
+ type: 'loadObjectStatus',
64
+ payload: puzzleId
65
+ });
66
+ }, [emitEvent, puzzleId]);
67
+
68
+ var setRewards = function setRewards(rewards) {
69
+ accRewards.current = [].concat(_toConsumableArray(accRewards.current), _toConsumableArray(rewards));
70
+ };
71
+
72
+ var handleFinish = (0, _react.useCallback)(function (rewards) {
73
+ emitEvent({
74
+ type: 'addPoints',
75
+ payload: [].concat(_toConsumableArray(accRewards.current), _toConsumableArray(rewards))
76
+ });
77
+ }, [emitEvent]);
78
+ var handleResolve = (0, _react.useCallback)(function () {
79
+ emitEvent({
80
+ type: 'puzzleAction',
81
+ action: 'resolve',
82
+ payload: {
83
+ element: puzzleId,
84
+ rewards: accRewards.current
85
+ }
86
+ });
87
+ }, [emitEvent, puzzleId]);
88
+ var currentImageProps = list[index];
89
+ var info = currentImageProps.info;
90
+ info.description = description;
91
+ var onComplete = (0, _react.useCallback)(function (rw) {
92
+ var _emit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
93
+
94
+ if (index + 1 >= list.length) {
95
+ handleFinish(rw);
96
+ } else {
97
+ setRewards(rw);
98
+ setIndex(index + 1);
99
+ }
100
+
101
+ setSelected(selected + currentImageProps.areas.length);
102
+
103
+ if (_emit) {
104
+ handleResolve();
105
+ }
106
+ }, [index, list.length, selected, currentImageProps.areas.length, handleFinish, handleResolve, setSelected]);
107
+
108
+ var onResolve = function onResolve(resolve) {
109
+ resolve(false);
110
+ setTimeout(function () {
111
+ onComplete(info.resolve.rewards || [], false);
112
+ }, 2000);
113
+ };
114
+
115
+ (0, _react.useEffect)(function () {
116
+ setInfo(info);
117
+ }, [info, setInfo]);
118
+ (0, _react.useEffect)(function () {
119
+ var timeout;
120
+
121
+ if (currentPuzzleStatus) {
122
+ alert('TEST');
123
+ timeout = setTimeout(function () {
124
+ onComplete([], false);
125
+ }, 2000);
126
+ }
127
+
128
+ return function () {
129
+ if (timeout) {
130
+ clearTimeout(timeout);
131
+ }
132
+ };
133
+ }, [onComplete, puzzleId, currentPuzzleStatus]);
134
+ return /*#__PURE__*/_react.default.createElement(_imageClickWrapperComponent.default, _extends({
135
+ key: index
136
+ }, currentImageProps, {
137
+ puzzle: {
138
+ name: "chained-image-click-puzzle_".concat(index),
139
+ component: 'chained-image-click-puzzle'
140
+ },
141
+ emitFinish: onComplete,
142
+ emitError: setRewards,
143
+ emitResolve: onResolve,
144
+ isLast: index + 1 === list.length,
145
+ defaultCompleted: currentPuzzleStatus,
146
+ hideContinue: !(index + 1 === list.length),
147
+ emitEvent: emitEvent,
148
+ disableExit: disableExit,
149
+ soundActions: soundActions,
150
+ setResolveAction: setResolveAction
151
+ }));
152
+ };
153
+
154
+ var _default = CurrentImageClickPuzzle;
155
+ exports.default = _default;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _ChainedImageClickPuzzleComponent = _interopRequireDefault(require("./components/ChainedImageClickPuzzleComponent"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ var _default = _ChainedImageClickPuzzleComponent.default;
13
+ exports.default = _default;
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.mockProps = void 0;
7
+
8
+ var emitEvent = function emitEvent() {
9
+ console.log('Emit event called');
10
+ };
11
+
12
+ var soundActions = [function (sound) {
13
+ console.log('PlaySound called :', sound);
14
+ }, function () {}];
15
+ var mockProps = {
16
+ nodeId: 'xxas',
17
+ description: 'Dale al arma',
18
+ showFrames: true,
19
+ setInfo: function setInfo() {},
20
+ emitEvent: emitEvent,
21
+ soundActions: soundActions,
22
+ disableExit: function disableExit() {},
23
+ setResolveAction: function setResolveAction() {},
24
+ list: [{
25
+ info: {
26
+ hint: {
27
+ active: true,
28
+ desc: 'hint',
29
+ rewards: []
30
+ },
31
+ resolve: {
32
+ rewards: []
33
+ },
34
+ solution: {
35
+ right: {
36
+ desc: 'Estupendo',
37
+ desc_labelId: 'alfalfa01',
38
+ rewards: []
39
+ },
40
+ wrong: {
41
+ desc: 'BUUUU',
42
+ desc_labelId: 'fabada01',
43
+ rewards: [{
44
+ id: 'grade',
45
+ name: 'grade',
46
+ points: -17,
47
+ type: 'grade'
48
+ }]
49
+ }
50
+ },
51
+ instructions: 'instructions'
52
+ },
53
+ itemOrder: 1,
54
+ image: {
55
+ imgName: 'Paz-Vizla-Concept.png',
56
+ img: {
57
+ url: 'https://min.int.gamelearn.io/cooked.gl-lms-storage/clients/58dccfba26561500117caf53/image/609a9b30901f3e001247c031/Paz-Vizla-Concept.png',
58
+ imgName: 'Paz-Vizla-Concept.png',
59
+ resourceId: '609a9b30901f3e001247c031'
60
+ },
61
+ width: 1920,
62
+ height: 1097
63
+ },
64
+ areas: [{
65
+ name: 'Uno',
66
+ x: 0,
67
+ y: 0,
68
+ fill: 'rgba(255, 255, 255, 0.1)',
69
+ draggable: true,
70
+ points: [1150.0742574257429, 217.48228650990103, 1570.95297029703, 65.42288056930694, 1704.0049504950498, 195.7595142326733, 1576.383663366337, 421.13327660891093, 1247.8267326732675, 510.73971225247533],
71
+ stroke: 'rgb(101,154,93)',
72
+ closed: true
73
+ }],
74
+ badAreas: [{
75
+ id: 'AllArea',
76
+ name: 'BadArea',
77
+ x: 0,
78
+ y: 0,
79
+ fill: 'rgba(255, 255, 255, 0.1)',
80
+ draggable: true,
81
+ points: [0, 0, 1920, 0, 1920, 1097, 0, 1097, 0, 0],
82
+ stroke: '#ff634d',
83
+ strokeWidth: 2,
84
+ closed: true
85
+ }],
86
+ hasClickOrder: false,
87
+ hasHighlights: true
88
+ }, {
89
+ info: {
90
+ hint: {
91
+ active: true,
92
+ desc: 'hint',
93
+ rewards: []
94
+ },
95
+ resolve: {
96
+ rewards: []
97
+ },
98
+ solution: {
99
+ right: {
100
+ desc: 'Estupendo',
101
+ desc_labelId: 'alfalfa01',
102
+ rewards: []
103
+ },
104
+ wrong: {
105
+ desc: 'BUUUU',
106
+ desc_labelId: 'fabada01',
107
+ rewards: [{
108
+ id: 'grade',
109
+ name: 'grade',
110
+ points: -17,
111
+ type: 'grade'
112
+ }]
113
+ }
114
+ },
115
+ instructions: 'instructions'
116
+ },
117
+ itemOrder: 2,
118
+ image: {
119
+ imgName: 'pablo-carpio-slave2.jpeg',
120
+ img: {
121
+ url: 'https://min.int.gamelearn.io/cooked.gl-lms-storage/clients/58dccfba26561500117caf53/image/609e3d358782ea00116a7eee/pablo-carpio-slave2.jpeg',
122
+ imgName: 'Paz-Vizla-Concept.png',
123
+ resourceId: '609e3d358782ea00116a7eee'
124
+ },
125
+ width: 1920,
126
+ height: 1099
127
+ },
128
+ areas: [{
129
+ name: 'Uno',
130
+ x: 0,
131
+ y: 0,
132
+ fill: 'rgba(68, 215, 171, 0.56)',
133
+ draggable: true,
134
+ points: [1305.4777227722775, 606.8812654702971, 1455.094059405941, 593.2797803217823, 1463.2549504950498, 941.4778001237626, 1346.282178217822, 1012.2055228960397, 1275.5544554455448, 906.1139387376239],
135
+ stroke: 'rgb(101,154,93)',
136
+ closed: true
137
+ }, {
138
+ name: 'Dos',
139
+ x: 0,
140
+ y: 0,
141
+ fill: 'rgba(68, 215, 171, 0.56)',
142
+ draggable: true,
143
+ points: [171.1138613861387, 506.23027537128723, 312.5693069306932, 519.8317605198021, 304.4084158415843, 593.2797803217823, 157.51237623762387, 585.1188892326734],
144
+ stroke: 'rgb(101,154,93)',
145
+ closed: true
146
+ }],
147
+ badAreas: [{
148
+ id: 'AllArea',
149
+ name: 'BadArea',
150
+ x: 0,
151
+ y: 0,
152
+ fill: 'rgba(255, 255, 255, 0.1)',
153
+ draggable: true,
154
+ points: [0, 0, 1920, 0, 1920, 1099, 0, 1099, 0, 0],
155
+ stroke: '#ff634d',
156
+ strokeWidth: 2,
157
+ closed: true
158
+ }],
159
+ hasClickOrder: true,
160
+ hasHighlights: true
161
+ }]
162
+ };
163
+ exports.mockProps = mockProps;
@@ -9,12 +9,12 @@ var comicProps = {
9
9
  slideOrder: 1,
10
10
  transitionEffects: null,
11
11
  audio: {
12
- url: 'https://s3-eu-west-1.amazonaws.com/gl-lms-storage/development/clients/58dccfba26561500117caf53/documents/Cat-sound.mp3'
12
+ url: 'https://min.int.gamelearn.io/cooked.gl-lms-storage/clients/58dccfba26561500117caf53/documents/Cat-sound.mp3'
13
13
  },
14
14
  vignettes: [{
15
15
  vignetteOrder: 1,
16
16
  img: {
17
- url: 'https://s3-eu-west-1.amazonaws.com/gl-lms-storage/development/clients/58dccfba26561500117caf53/image/60508f84901f3e00123a0796/holamundo.jpg',
17
+ url: 'https://min.int.gamelearn.io/cooked.gl-lms-storage/clients/58dccfba26561500117caf53/image/60508f84901f3e00123a0796/holamundo.jpg',
18
18
  imgName: 'prueba6.png',
19
19
  resourceId: '6007f80eac41ad001120f135'
20
20
  },
@@ -33,12 +33,12 @@ var comicProps = {
33
33
  slideOrder: 2,
34
34
  transitionEffects: null,
35
35
  audio: {
36
- url: 'https://s3-eu-west-1.amazonaws.com/gl-lms-storage/development/clients/58dccfba26561500117caf53/audio/5f646497f6d21e001139b0ed/coin.wav'
36
+ url: 'https://min.int.gamelearn.io/cooked.gl-lms-storage/clients/58dccfba26561500117caf53/audio/5f646497f6d21e001139b0ed/coin.wav'
37
37
  },
38
38
  vignettes: [{
39
39
  vignetteOrder: 1,
40
40
  img: {
41
- url: 'https://s3-eu-west-1.amazonaws.com/gl-lms-storage/development/clients/58dccfba26561500117caf53/image/60507fb0901f3e00123a05db/14b936c651869bf50fdfb8071e719c47.png',
41
+ url: 'https://min.int.gamelearn.io/cooked.gl-lms-storage/clients/58dccfba26561500117caf53/image/60507fb0901f3e00123a05db/14b936c651869bf50fdfb8071e719c47.png',
42
42
  imgName: 'holamundo.jpg',
43
43
  resourceId: '60508f84901f3e00123a0796'
44
44
  },
@@ -21,6 +21,8 @@ var _helpers = require("../../../../helpers");
21
21
 
22
22
  var _LightSet = _interopRequireDefault(require("../../../../helpers/LightSet"));
23
23
 
24
+ var _drawLOD = _interopRequireDefault(require("../../../../helpers/drawLOD"));
25
+
24
26
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
27
 
26
28
  function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
@@ -54,6 +56,7 @@ function Panel(_ref) {
54
56
  }
55
57
 
56
58
  cameraRef.current.updateProjectionMatrix();
59
+ (0, _drawLOD.default)(sceneRef.current, cameraRef.current);
57
60
  }
58
61
  }, [character]);
59
62
  (0, _fiber.useFrame)(function (_ref2) {