@gamelearn/arcade-components 0.11.0 → 0.11.2

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.
@@ -51,7 +51,16 @@ var SceneElements = function SceneElements(_ref) {
51
51
  if ((_object$userData = object.userData) !== null && _object$userData !== void 0 && _object$userData.isPrimitive) {
52
52
  return /*#__PURE__*/_react.default.createElement("mesh", _extends({
53
53
  key: object.uid || i
54
- }, object), /*#__PURE__*/_react.default.createElement(_customGeometry.default, {
54
+ }, object, {
55
+ onBeforeRender: function onBeforeRender() {
56
+ _three.DefaultLoadingManager.onStart(1, 0, 1);
57
+ },
58
+ onAfterRender: function onAfterRender() {
59
+ _three.DefaultLoadingManager.onProgress(1, 1, 1);
60
+
61
+ _three.DefaultLoadingManager.onLoad();
62
+ }
63
+ }), /*#__PURE__*/_react.default.createElement(_customGeometry.default, {
55
64
  type: object.userData.primitiveType,
56
65
  args: object.userData.props
57
66
  }), /*#__PURE__*/_react.default.createElement("meshLambertMaterial", material));
@@ -51,6 +51,10 @@ var ClickableArea = function ClickableArea(_ref) {
51
51
  loaded = _useState2[0],
52
52
  setLoaded = _useState2[1];
53
53
 
54
+ if (usingScale.length === 2) {
55
+ usingScale.push(1);
56
+ }
57
+
54
58
  (0, _react.useEffect)(function () {
55
59
  setLoaded(true);
56
60
  }, []);
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _react = require("react");
9
+
10
+ var _fiber = require("@react-three/fiber");
11
+
12
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
13
+
14
+ 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."); }
15
+
16
+ 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); }
17
+
18
+ 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; }
19
+
20
+ 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; }
21
+
22
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
23
+
24
+ var ConfigController = function ConfigController(_ref) {
25
+ var current = _ref.current;
26
+
27
+ var _useThree = (0, _fiber.useThree)(function (state) {
28
+ return [state.gl, state.scene, state.invalidate];
29
+ }),
30
+ _useThree2 = _slicedToArray(_useThree, 3),
31
+ gl = _useThree2[0],
32
+ scene = _useThree2[1],
33
+ invalidate = _useThree2[2];
34
+
35
+ (0, _fiber.useFrame)(function (_ref2) {
36
+ var gl = _ref2.gl,
37
+ scene = _ref2.scene,
38
+ camera = _ref2.camera;
39
+ gl.render(scene, camera);
40
+
41
+ if (!current.animate) {
42
+ invalidate();
43
+ }
44
+ }, 1);
45
+ (0, _react.useEffect)(function () {
46
+ gl.shadowMap.enabled = current.shadows;
47
+
48
+ if (!current.animate) {
49
+ invalidate();
50
+ }
51
+ }, [gl, scene, current, invalidate]);
52
+ return null;
53
+ };
54
+
55
+ var _default = ConfigController;
56
+ exports.default = _default;
@@ -19,6 +19,8 @@ var _background = _interopRequireDefault(require("../background"));
19
19
 
20
20
  var _loading = _interopRequireWildcard(require("../loading"));
21
21
 
22
+ var _ConfigController = _interopRequireDefault(require("./ConfigController"));
23
+
22
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
25
 
24
26
  function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
@@ -37,61 +39,30 @@ function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "und
37
39
 
38
40
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
39
41
 
40
- var ConfigController = function ConfigController(_ref) {
41
- var current = _ref.current;
42
-
43
- var _useThree = (0, _fiber.useThree)(function (state) {
44
- return [state.gl, state.scene, state.invalidate];
45
- }),
46
- _useThree2 = _slicedToArray(_useThree, 3),
47
- gl = _useThree2[0],
48
- scene = _useThree2[1],
49
- invalidate = _useThree2[2];
50
-
51
- (0, _fiber.useFrame)(function (_ref2) {
52
- var gl = _ref2.gl,
53
- scene = _ref2.scene,
54
- camera = _ref2.camera;
55
- gl.render(scene, camera);
56
-
57
- if (!current.animate) {
58
- invalidate();
59
- }
60
- }, 1);
61
- (0, _react.useEffect)(function () {
62
- gl.shadowMap.enabled = current.shadows;
63
-
64
- if (!current.animate) {
65
- invalidate();
66
- }
67
- }, [gl, scene, current, invalidate]);
68
- return null;
69
- };
70
-
71
- var Scene = function Scene(_ref3) {
72
- var _ref3$elements = _ref3.elements,
73
- elements = _ref3$elements === void 0 ? [] : _ref3$elements,
74
- _ref3$hasControls = _ref3.hasControls,
75
- hasControls = _ref3$hasControls === void 0 ? false : _ref3$hasControls,
76
- _ref3$backgroundData = _ref3.backgroundData,
77
- backgroundData = _ref3$backgroundData === void 0 ? {} : _ref3$backgroundData,
78
- _ref3$loadingText = _ref3.loadingText,
79
- loadingText = _ref3$loadingText === void 0 ? '' : _ref3$loadingText,
80
- _ref3$toggleShadows = _ref3.toggleShadows,
81
- toggleShadows = _ref3$toggleShadows === void 0 ? true : _ref3$toggleShadows,
82
- _ref3$stopAnimate = _ref3.stopAnimate,
83
- stopAnimate = _ref3$stopAnimate === void 0 ? false : _ref3$stopAnimate,
84
- _ref3$emitEvent = _ref3.emitEvent,
85
- emitEvent = _ref3$emitEvent === void 0 ? function () {} : _ref3$emitEvent;
42
+ var Scene = function Scene(_ref) {
43
+ var _ref$elements = _ref.elements,
44
+ elements = _ref$elements === void 0 ? [] : _ref$elements,
45
+ _ref$hasControls = _ref.hasControls,
46
+ hasControls = _ref$hasControls === void 0 ? false : _ref$hasControls,
47
+ _ref$backgroundData = _ref.backgroundData,
48
+ backgroundData = _ref$backgroundData === void 0 ? {} : _ref$backgroundData,
49
+ _ref$loadingText = _ref.loadingText,
50
+ loadingText = _ref$loadingText === void 0 ? '' : _ref$loadingText,
51
+ _ref$toggleShadows = _ref.toggleShadows,
52
+ toggleShadows = _ref$toggleShadows === void 0 ? true : _ref$toggleShadows,
53
+ _ref$stopAnimate = _ref.stopAnimate,
54
+ stopAnimate = _ref$stopAnimate === void 0 ? false : _ref$stopAnimate,
55
+ _ref$emitEvent = _ref.emitEvent,
56
+ emitEvent = _ref$emitEvent === void 0 ? function () {} : _ref$emitEvent;
86
57
 
87
58
  var _useState = (0, _react.useState)(true),
88
59
  _useState2 = _slicedToArray(_useState, 2),
89
60
  showLoad = _useState2[0],
90
61
  setShowLoad = _useState2[1];
91
62
 
92
- var handleOnCreate = function handleOnCreate(_ref4) {
93
- var gl = _ref4.gl,
94
- raycaster = _ref4.raycaster;
63
+ var handleOnCreate = function handleOnCreate(_ref2) {
64
+ var gl = _ref2.gl,
65
+ raycaster = _ref2.raycaster;
95
66
  raycaster.layers.set(1);
96
67
  gl.outputEncoding = 3001;
97
68
  gl.gammaFactor = 2.2;
@@ -101,13 +72,12 @@ var Scene = function Scene(_ref3) {
101
72
  gl.physicallyCorrectLights = true;
102
73
  };
103
74
 
104
- var handleLoadFinish = function handleLoadFinish() {
75
+ var handleLoadFinish = (0, _react.useCallback)(function () {
105
76
  emitEvent({
106
77
  type: 'sceneLoaded'
107
78
  });
108
79
  setShowLoad(false);
109
- };
110
-
80
+ }, [emitEvent]);
111
81
  (0, _react.useEffect)(function () {
112
82
  setShowLoad(true);
113
83
  }, [backgroundData, elements]);
@@ -126,7 +96,7 @@ var Scene = function Scene(_ref3) {
126
96
  frameloop: "demand",
127
97
  onCreated: handleOnCreate,
128
98
  tabIndex: 0
129
- }, /*#__PURE__*/_react.default.createElement(ConfigController, {
99
+ }, /*#__PURE__*/_react.default.createElement(_ConfigController.default, {
130
100
  current: {
131
101
  shadows: toggleShadows,
132
102
  animate: stopAnimate
@@ -120,6 +120,9 @@ var ConversationProViewer = function ConversationProViewer(_ref) {
120
120
  var flexedPosition = characters.findIndex(function (char) {
121
121
  return char.uid === currentMessage.uid;
122
122
  });
123
+ characters.forEach(function (c) {
124
+ if (c.uid === currentMessage.uid) c.name = currentMessage.alias;
125
+ });
123
126
  currentMessage.position = isFlex ? flexedPosition : notFlexedPosition;
124
127
  }
125
128
  }
@@ -87,7 +87,7 @@ var SlotList = function SlotList(_ref) {
87
87
  slots: slots,
88
88
  flex: flex,
89
89
  currentMessage: currentMessage
90
- }), children ? children : /*#__PURE__*/_react.default.createElement(Slots, null));
90
+ }), children && children.ref ? children : /*#__PURE__*/_react.default.createElement(Slots, null));
91
91
  };
92
92
 
93
93
  SlotList.propTypes = {
@@ -32,12 +32,14 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
32
32
  var defaultCamPos = [0, 14.63, 16];
33
33
 
34
34
  function Panel(_ref) {
35
+ var _character$resource, _character$resource$a;
36
+
35
37
  var character = _ref.character,
36
38
  active = _ref.active;
37
39
  var cameraRef = (0, _react.useRef)(null);
38
40
  var sceneRef = (0, _react.useRef)(null);
39
41
  var isCharacter = character.type === 'character';
40
- var emotion = isCharacter ? character.resource.animations[character.emotion || 'neutral'] : {};
42
+ var emotion = isCharacter ? (character === null || character === void 0 ? void 0 : (_character$resource = character.resource) === null || _character$resource === void 0 ? void 0 : (_character$resource$a = _character$resource.animations) === null || _character$resource$a === void 0 ? void 0 : _character$resource$a[character.emotion || 'neutral']) || {} : {};
41
43
  var onLoadElement = (0, _react.useCallback)(function (model) {
42
44
  if (cameraRef.current) {
43
45
  var boundingBox = new _three.Box3();
@@ -90,13 +92,13 @@ function Panel(_ref) {
90
92
  ref: sceneRef
91
93
  }, /*#__PURE__*/_react.default.createElement(_react.Suspense, {
92
94
  fallback: null
93
- }, /*#__PURE__*/_react.default.createElement(_element.default, {
95
+ }, character.resource.url ? /*#__PURE__*/_react.default.createElement(_element.default, {
94
96
  name: "char_".concat(character.uid),
95
97
  url: character.resource.url,
96
98
  animationUrl: emotion.url,
97
99
  position: [0, 0, 0],
98
100
  onLoad: onLoadElement
99
- })), /*#__PURE__*/_react.default.createElement(_drei.PerspectiveCamera, {
101
+ }) : null), /*#__PURE__*/_react.default.createElement(_drei.PerspectiveCamera, {
100
102
  name: "camera_".concat(character.uid),
101
103
  fov: 35,
102
104
  focus: 10,
@@ -131,45 +131,5 @@ var DecisionBody = function DecisionBody(_ref) {
131
131
  return /*#__PURE__*/_react.default.createElement(BasicDecision, null, children);
132
132
  };
133
133
 
134
- DecisionBody.defaultProps = {
135
- options: [],
136
- currentSelectedChoice: {},
137
- showingResults: false,
138
- question: '',
139
- changeOption: noop,
140
- onExit: noop,
141
- onNext: noop,
142
- onBack: noop,
143
- inherited: false,
144
- failed: false,
145
- children: [],
146
- hasRewards: []
147
- };
148
- DecisionBody.propTypes = {
149
- children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node]),
150
- options: _propTypes.default.arrayOf(_propTypes.default.shape({
151
- id: _propTypes.default.number,
152
- feedback: _propTypes.default.string,
153
- slot: _propTypes.default.bool,
154
- text: _propTypes.default.string,
155
- rewards: _propTypes.default.arrayOf(_propTypes.default.shape())
156
- })),
157
- currentSelectedChoice: _propTypes.default.shape({
158
- id: _propTypes.default.number,
159
- rewards: _propTypes.default.arrayOf(_propTypes.default.shape()),
160
- feedback: _propTypes.default.string,
161
- slot: _propTypes.default.bool,
162
- text: _propTypes.default.string
163
- }),
164
- changeOption: _propTypes.default.func,
165
- onExit: _propTypes.default.func,
166
- onNext: _propTypes.default.func,
167
- onBack: _propTypes.default.func,
168
- question: _propTypes.default.string,
169
- inherited: _propTypes.default.bool,
170
- failed: _propTypes.default.bool,
171
- showingResults: _propTypes.default.bool,
172
- hasRewards: _propTypes.default.arrayOf(_propTypes.default.shape())
173
- };
174
134
  var _default = DecisionBody;
175
135
  exports.default = _default;
@@ -9,8 +9,6 @@ exports.default = void 0;
9
9
 
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
 
12
- var _propTypes = _interopRequireDefault(require("prop-types"));
13
-
14
12
  var _SlotList = _interopRequireDefault(require("../../conversational-pro-component/components/SlotList"));
15
13
 
16
14
  var _DecisionBody = _interopRequireDefault(require("./DecisionBody"));
@@ -57,7 +55,8 @@ var DecisionComponent = function DecisionComponent(_ref) {
57
55
  var emitEvent = _ref.emitEvent,
58
56
  props = _objectWithoutProperties(_ref, ["emitEvent"]);
59
57
 
60
- var inheritProps = props.inheritProps,
58
+ var _props$inheritProps = props.inheritProps,
59
+ inheritProps = _props$inheritProps === void 0 ? {} : _props$inheritProps,
61
60
  required = props.required,
62
61
  question = props.question,
63
62
  onFinish = props.onFinish;
@@ -200,33 +199,5 @@ var DecisionComponent = function DecisionComponent(_ref) {
200
199
  return /*#__PURE__*/_react.default.createElement(BackgroundWrapper, null, /*#__PURE__*/_react.default.createElement(Body, null));
201
200
  };
202
201
 
203
- DecisionComponent.defaultProps = {
204
- inheritProps: {},
205
- required: false,
206
- onFinish: null,
207
- question: '',
208
- options: []
209
- };
210
- DecisionComponent.propTypes = {
211
- required: _propTypes.default.bool,
212
- onFinish: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.oneOf([null])]),
213
- inheritProps: _propTypes.default.shape({
214
- background: _propTypes.default.string,
215
- flex: _propTypes.default.bool,
216
- voiceOver: _propTypes.default.shape({}),
217
- name: _propTypes.default.string,
218
- text: _propTypes.default.string,
219
- slots: _propTypes.default.arrayOf({})
220
- }),
221
- options: _propTypes.default.arrayOf(_propTypes.default.shape({
222
- id: _propTypes.default.number,
223
- feedback: _propTypes.default.string,
224
- slot: _propTypes.default.bool,
225
- text: _propTypes.default.string,
226
- audioId: _propTypes.default.string,
227
- rewards: _propTypes.default.arrayOf(_propTypes.default.shape())
228
- })),
229
- question: _propTypes.default.string
230
- };
231
202
  var _default = DecisionComponent;
232
203
  exports.default = _default;
@@ -1,13 +1,11 @@
1
1
  "use strict";
2
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
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
6
  exports.default = void 0;
9
7
 
10
- var _react = _interopRequireWildcard(require("react"));
8
+ var _react = _interopRequireDefault(require("react"));
11
9
 
12
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
11
 
@@ -15,31 +13,26 @@ var _RewardsComponent = _interopRequireDefault(require("../../rewards-component/
15
13
 
16
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
15
 
18
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
19
-
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; }
21
-
22
16
  var FeedBack = function FeedBack(_ref) {
23
17
  var choice = _ref.choice,
24
18
  inherited = _ref.inherited,
25
19
  rewards = _ref.rewards,
26
20
  emitEvent = _ref.emitEvent;
27
- var noFeedBack = choice.feedback === '' || !choice.feedback;
28
- var centerRewards = noFeedBack;
29
21
 
30
22
  var Wrapper = function Wrapper(_ref2) {
31
23
  var children = _ref2.children;
32
24
  return inherited ? /*#__PURE__*/_react.default.createElement("div", {
33
- className: "conversation--feedback ".concat(centerRewards ? 'only--rewards' : '')
34
- }, children) : centerRewards ? /*#__PURE__*/_react.default.createElement("div", {
25
+ className: "conversation--feedback ".concat(!choice.feedback ? 'only--rewards' : '')
26
+ }, children) : !choice.feedback ? /*#__PURE__*/_react.default.createElement("div", {
35
27
  className: "popup__basicDecision__only--rewards only--rewards"
36
- }, children) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, children);
28
+ }, children) : children;
37
29
  };
38
30
 
39
31
  var noRewards = rewards.filter(function (reward) {
40
32
  return reward.type !== 'grade';
41
33
  }).length === 0;
42
- return noFeedBack && noRewards ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null) : /*#__PURE__*/_react.default.createElement(Wrapper, null, !noFeedBack ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
34
+ if (!choice.feedback && noRewards) return null;
35
+ return /*#__PURE__*/_react.default.createElement(Wrapper, null, !!choice.feedback ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
43
36
  className: "conversation--feedback__title"
44
37
  }, "Feedback"), /*#__PURE__*/_react.default.createElement("div", {
45
38
  className: "conversation--feedback__text"
@@ -53,23 +46,5 @@ var FeedBack = function FeedBack(_ref) {
53
46
  }) : null);
54
47
  };
55
48
 
56
- FeedBack.defaultProps = {
57
- rewards: [],
58
- choice: {},
59
- inherited: false,
60
- nodeId: 0
61
- };
62
- FeedBack.propTypes = {
63
- inherited: _propTypes.default.bool,
64
- rewards: _propTypes.default.arrayOf(_propTypes.default.shape({})),
65
- choice: _propTypes.default.shape({
66
- id: _propTypes.default.number,
67
- rewards: _propTypes.default.arrayOf(_propTypes.default.shape()),
68
- feedback: _propTypes.default.string,
69
- slot: _propTypes.default.bool,
70
- right: _propTypes.default.bool,
71
- text: _propTypes.default.string
72
- })
73
- };
74
49
  var _default = FeedBack;
75
50
  exports.default = _default;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gamelearn/arcade-components",
3
3
  "license": "Gamelearn",
4
- "version": "0.11.0",
4
+ "version": "0.11.2",
5
5
  "main": "dist/index.js",
6
6
  "files": [
7
7
  "dist",
@@ -55,7 +55,7 @@
55
55
  "@babel/cli": "7.12.10",
56
56
  "@babel/preset-env": "7.12.11",
57
57
  "@babel/preset-react": "7.12.10",
58
- "@gamelearn/ui-components-core": "5.21.0",
58
+ "@gamelearn/ui-components-core": "5.22.0",
59
59
  "@react-three/test-renderer": "6.0.6",
60
60
  "@storybook/addon-actions": "6.1.11",
61
61
  "@storybook/addon-essentials": "6.1.11",