@gamelearn/arcade-components 2.39.2 → 2.40.0

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.
@@ -14,7 +14,7 @@ var LectureButtons = function LectureButtons(_ref) {
14
14
  seconds = _ref.seconds,
15
15
  btnText = _ref.btnText;
16
16
  return /*#__PURE__*/_react.default.createElement("div", {
17
- className: "readings--buttons"
17
+ className: "lectures--buttons"
18
18
  }, goToLecture ? /*#__PURE__*/_react.default.createElement("button", {
19
19
  type: "button",
20
20
  className: "gat--btn__navigation",
@@ -36,7 +36,8 @@ var LecturesComponent = function LecturesComponent(_ref) {
36
36
  audioType = _ref.audioType,
37
37
  audioVolume = _ref.audioVolume,
38
38
  voice = _ref.voice,
39
- pause = _ref.pause;
39
+ pause = _ref.pause,
40
+ styles = _ref.styles;
40
41
  var _useState = (0, _react.useState)(),
41
42
  _useState2 = _slicedToArray(_useState, 2),
42
43
  interval = _useState2[0],
@@ -120,16 +121,18 @@ var LecturesComponent = function LecturesComponent(_ref) {
120
121
  var minutes = Math.floor(formatTime / 60);
121
122
  var seconds = formatTime % 60;
122
123
  return visible ? /*#__PURE__*/_react.default.createElement("div", {
123
- className: "".concat(viewed ? 'notes--results' : 'readings--container', " ").concat(!viewed && backgroundImage !== null && backgroundImage !== void 0 && backgroundImage.url ? 'readings--container--with-custom-bg' : ''),
124
+ className: "".concat(viewed ? 'notes--results' : "lectures--container lectures--container--".concat(styles), " ").concat(!viewed && backgroundImage !== null && backgroundImage !== void 0 && backgroundImage.url ? 'lectures--container--with-custom-bg' : ''),
124
125
  style: !viewed && backgroundImage !== null && backgroundImage !== void 0 && backgroundImage.url ? {
125
126
  backgroundImage: "url('".concat(backgroundImage.url, "')")
126
127
  } : {}
127
128
  }, /*#__PURE__*/_react.default.createElement("div", {
128
- className: viewed ? 'notes--results__text' : 'readings'
129
+ className: viewed ? '' : 'lectures__overlay'
129
130
  }, /*#__PURE__*/_react.default.createElement("div", {
130
- className: "readings--title"
131
+ className: viewed ? 'notes--results__text' : "lectures lectures--".concat(styles)
132
+ }, /*#__PURE__*/_react.default.createElement("div", {
133
+ className: "lectures--title"
131
134
  }, name), /*#__PURE__*/_react.default.createElement("div", {
132
- className: "readings--text",
135
+ className: "lectures--text",
133
136
  dir: "auto"
134
137
  }, /*#__PURE__*/_react.default.createElement("div", null, currentLecture ? (0, _htmlReactParser.default)(currentLecture) : null), !viewed ? /*#__PURE__*/_react.default.createElement(_LectureButtons.default, {
135
138
  goToLecture: goToLecture,
@@ -137,7 +140,7 @@ var LecturesComponent = function LecturesComponent(_ref) {
137
140
  minutes: minutes,
138
141
  seconds: seconds,
139
142
  btnText: translate('screens.continue')
140
- }) : null))) : null;
143
+ }) : null)))) : null;
141
144
  };
142
145
  LecturesComponent.defaultProps = {
143
146
  emitEvent: function emitEvent() {},
@@ -147,7 +150,8 @@ LecturesComponent.defaultProps = {
147
150
  documentType: '',
148
151
  viewed: false,
149
152
  required: false,
150
- context: {}
153
+ context: {},
154
+ styles: ''
151
155
  };
152
156
  var _default = LecturesComponent;
153
157
  exports.default = _default;
@@ -1,11 +1,16 @@
1
1
  "use strict";
2
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); }
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.default = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _useTimeout2 = _interopRequireDefault(require("../../../helpers/useTimeout"));
10
+ var _LangIsRtl = _interopRequireDefault(require("../../../helpers/LangIsRtl"));
8
11
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ 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); }
13
+ 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; }
9
14
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
15
  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."); }
11
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); }
@@ -18,41 +23,74 @@ var NoticeComponent = function NoticeComponent(_ref) {
18
23
  buttonText = _ref.buttonText,
19
24
  emitEvent = _ref.emitEvent,
20
25
  soundActions = _ref.soundActions,
21
- keyboardControl = _ref.keyboardControl;
26
+ keyboardControl = _ref.keyboardControl,
27
+ styles = _ref.styles,
28
+ autoEnd = _ref.autoEnd;
22
29
  var _soundActions = _slicedToArray(soundActions, 1),
23
30
  playSound = _soundActions[0];
24
- var onFinish = function onFinish() {
31
+ var _useTimeout = (0, _useTimeout2.default)(),
32
+ start = _useTimeout.start,
33
+ stop = _useTimeout.stop;
34
+ var characterMs = 75;
35
+ var onFinish = (0, _react.useCallback)(function () {
25
36
  playSound('click-ui');
26
37
  emitEvent({
27
38
  type: 'success'
28
39
  });
29
- };
40
+ }, [emitEvent, playSound]);
41
+ (0, _react.useEffect)(function () {
42
+ if (autoEnd) {
43
+ var time = characterMs * (text.length || 0);
44
+ start(onFinish, time < 2000 ? 2000 : time);
45
+ }
46
+ return function () {
47
+ stop();
48
+ };
49
+ }, [autoEnd, onFinish, start, stop, text]);
30
50
  keyboardControl(null, onFinish, onFinish);
31
51
  return /*#__PURE__*/_react.default.createElement("div", {
32
- className: "popup--layer"
52
+ className: "notice--layer notice--layer--".concat(styles)
33
53
  }, /*#__PURE__*/_react.default.createElement("div", {
34
- className: "popup popup--notice"
35
- }, /*#__PURE__*/_react.default.createElement("span", {
36
- className: "popup--head__title"
54
+ className: "notice notice--".concat(styles)
55
+ }, /*#__PURE__*/_react.default.createElement("div", {
56
+ className: "notice--head__title--wrapper"
57
+ }, ['classic', 'futuristic'].includes(styles) && /*#__PURE__*/_react.default.createElement("span", {
58
+ className: "notice--head__title"
59
+ }, title), ['futuristic'].includes(styles) && /*#__PURE__*/_react.default.createElement("span", {
60
+ className: "notice--head__title-part2"
61
+ }), ['futuristic'].includes(styles) && /*#__PURE__*/_react.default.createElement("span", {
62
+ className: "notice--head__title-part3"
63
+ })), /*#__PURE__*/_react.default.createElement("div", {
64
+ className: "notice--info"
65
+ }, ['notification-light', 'notification-dark', 'minimalist'].includes(styles) && /*#__PURE__*/_react.default.createElement("span", {
66
+ className: "notice--info__title"
37
67
  }, title), /*#__PURE__*/_react.default.createElement("div", {
38
- className: "popup--info"
68
+ className: "notice--info__item"
39
69
  }, /*#__PURE__*/_react.default.createElement("span", {
40
- className: "popup--info__item",
70
+ className: "notice--info__text",
41
71
  style: {
42
72
  whiteSpace: 'pre-line'
43
73
  }
44
- }, text)), /*#__PURE__*/_react.default.createElement("button", {
74
+ }, text), ['classic'].includes(styles) ? /*#__PURE__*/_react.default.createElement("button", {
45
75
  className: "gat--btn gat--btn__primary",
46
76
  onClick: onFinish,
47
77
  type: "button"
48
- }, buttonText)));
78
+ }, buttonText) : /*#__PURE__*/_react.default.createElement("button", {
79
+ type: "button",
80
+ className: "gat--btn__navigation",
81
+ onClick: onFinish
82
+ }, /*#__PURE__*/_react.default.createElement("span", {
83
+ className: (0, _LangIsRtl.default)() ? 'icon-back' : 'icon-next'
84
+ }))))));
49
85
  };
50
86
  NoticeComponent.defaultProps = {
51
87
  title: '',
52
88
  buttonText: 'X',
53
89
  color: '#CCC',
54
90
  text: '',
55
- context: {}
91
+ context: {},
92
+ styles: 'classic',
93
+ autoEnd: false
56
94
  };
57
95
  var _default = NoticeComponent;
58
96
  exports.default = _default;
@@ -145,8 +145,11 @@ var TextClickPuzzleComponent = function TextClickPuzzleComponent(_ref) {
145
145
  text: ''
146
146
  });
147
147
  });
148
- if (document.querySelector('.text-click__failed')) {
149
- document.querySelector('.text-click__failed').classList.remove('text-click__failed');
148
+ var allElementsWithClassTextClickFailed = document.querySelectorAll('.text-click__failed');
149
+ if (allElementsWithClassTextClickFailed.length > 0) {
150
+ allElementsWithClassTextClickFailed.forEach(function (el) {
151
+ return el.classList.remove('text-click__failed');
152
+ });
150
153
  }
151
154
  }, [emitEvent, goForward]);
152
155
  var handleCorrectClick = (0, _react.useCallback)(function (allDataTextIds, specificFeedback) {
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@gamelearn/arcade-components",
3
3
  "author": "Gamelearn",
4
4
  "license": "unlicense",
5
- "version": "2.39.2",
5
+ "version": "2.40.0",
6
6
  "main": "dist/index.js",
7
7
  "files": [
8
8
  "dist",
@@ -14,7 +14,7 @@
14
14
  },
15
15
  "dependencies": {
16
16
  "@babel/runtime": "^7.18.6",
17
- "@gamelearn/arcade-styles": "2.22.1",
17
+ "@gamelearn/arcade-styles": "2.25.0",
18
18
  "@gamelearn/arcade-three-core": "1.24.3",
19
19
  "@react-three/a11y": "^3.0.0",
20
20
  "@react-three/drei": "9.4.3",