@gamelearn/arcade-components 1.11.9 → 1.12.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.
|
@@ -11,6 +11,8 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
|
|
12
12
|
var _useTimeout2 = _interopRequireDefault(require("../../../helpers/useTimeout"));
|
|
13
13
|
|
|
14
|
+
var _useEkho2 = _interopRequireDefault(require("../../../helpers/useEkho"));
|
|
15
|
+
|
|
14
16
|
var _Slide = _interopRequireDefault(require("./Slide"));
|
|
15
17
|
|
|
16
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -31,9 +33,11 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
31
33
|
|
|
32
34
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
33
35
|
|
|
34
|
-
var characterMs =
|
|
36
|
+
var characterMs = 75;
|
|
35
37
|
|
|
36
38
|
var ComicComponent = function ComicComponent(_ref) {
|
|
39
|
+
var _slides$slideCount, _slides$slideCount2, _slides$slideCount3, _slides$slideCount3$v, _slides$slideCount4;
|
|
40
|
+
|
|
37
41
|
var slides = _ref.slides,
|
|
38
42
|
emitEvent = _ref.emitEvent,
|
|
39
43
|
_ref$soundActions = _ref.soundActions,
|
|
@@ -95,18 +99,34 @@ var ComicComponent = function ComicComponent(_ref) {
|
|
|
95
99
|
goToPreviousSlide();
|
|
96
100
|
};
|
|
97
101
|
|
|
102
|
+
var _useEkho = (0, _useEkho2.default)({
|
|
103
|
+
audioType: slides === null || slides === void 0 ? void 0 : (_slides$slideCount = slides[slideCount]) === null || _slides$slideCount === void 0 ? void 0 : _slides$slideCount.audioType,
|
|
104
|
+
voice: slides === null || slides === void 0 ? void 0 : (_slides$slideCount2 = slides[slideCount]) === null || _slides$slideCount2 === void 0 ? void 0 : _slides$slideCount2.voice,
|
|
105
|
+
text: slides === null || slides === void 0 ? void 0 : (_slides$slideCount3 = slides[slideCount]) === null || _slides$slideCount3 === void 0 ? void 0 : (_slides$slideCount3$v = _slides$slideCount3.vignettes[0].textData) === null || _slides$slideCount3$v === void 0 ? void 0 : _slides$slideCount3$v.text,
|
|
106
|
+
audio: slides === null || slides === void 0 ? void 0 : (_slides$slideCount4 = slides[slideCount]) === null || _slides$slideCount4 === void 0 ? void 0 : _slides$slideCount4.audio,
|
|
107
|
+
soundActions: soundActions,
|
|
108
|
+
emitEvent: emitEvent
|
|
109
|
+
}),
|
|
110
|
+
onFinish = _useEkho.onFinish;
|
|
111
|
+
|
|
98
112
|
(0, _react.useEffect)(function () {
|
|
99
|
-
|
|
100
|
-
var _slides$slideCount, _slides$slideCount$vi, _slides$slideCount$vi2;
|
|
113
|
+
var slide = slides === null || slides === void 0 ? void 0 : slides[slideCount];
|
|
101
114
|
|
|
102
|
-
|
|
103
|
-
|
|
115
|
+
if (automatic) {
|
|
116
|
+
if (!Object.keys(slide.voice || {}).length) {
|
|
117
|
+
var _slide$vignettes$, _slide$vignettes$$tex;
|
|
118
|
+
|
|
119
|
+
var time = characterMs * ((slide === null || slide === void 0 ? void 0 : (_slide$vignettes$ = slide.vignettes[0]) === null || _slide$vignettes$ === void 0 ? void 0 : (_slide$vignettes$$tex = _slide$vignettes$.textData) === null || _slide$vignettes$$tex === void 0 ? void 0 : _slide$vignettes$$tex.text.length) || 0);
|
|
120
|
+
start(goToNextSlide, time < 1400 ? 1400 : time);
|
|
121
|
+
} else {
|
|
122
|
+
onFinish(goToNextSlide);
|
|
123
|
+
}
|
|
104
124
|
}
|
|
105
125
|
|
|
106
126
|
return function () {
|
|
107
127
|
stop();
|
|
108
128
|
};
|
|
109
|
-
}, [automatic, goToNextSlide, slideCount, slides, start, stop]);
|
|
129
|
+
}, [automatic, goToNextSlide, onFinish, slideCount, slides, start, stop]);
|
|
110
130
|
if (!(slides !== null && slides !== void 0 && slides.length)) return null;
|
|
111
131
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
112
132
|
className: "comic component growIn-animation"
|
|
@@ -9,26 +9,12 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
|
|
10
10
|
var _Vignette = _interopRequireDefault(require("./Vignette"));
|
|
11
11
|
|
|
12
|
-
var _useEkho = _interopRequireDefault(require("../../../helpers/useEkho"));
|
|
13
|
-
|
|
14
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
13
|
|
|
16
14
|
var Slide = function Slide(_ref) {
|
|
17
|
-
var _slide$vignettes$0$te;
|
|
18
|
-
|
|
19
15
|
var slide = _ref.slide,
|
|
20
|
-
transition = _ref.transition
|
|
21
|
-
soundActions = _ref.soundActions,
|
|
22
|
-
emitEvent = _ref.emitEvent;
|
|
16
|
+
transition = _ref.transition;
|
|
23
17
|
var slideTransition = slide.transitionEffects || transition;
|
|
24
|
-
(0, _useEkho.default)({
|
|
25
|
-
audioType: slide === null || slide === void 0 ? void 0 : slide.audioType,
|
|
26
|
-
voice: slide === null || slide === void 0 ? void 0 : slide.voice,
|
|
27
|
-
text: slide === null || slide === void 0 ? void 0 : (_slide$vignettes$0$te = slide.vignettes[0].textData) === null || _slide$vignettes$0$te === void 0 ? void 0 : _slide$vignettes$0$te.text,
|
|
28
|
-
audio: slide === null || slide === void 0 ? void 0 : slide.audio,
|
|
29
|
-
soundActions: soundActions,
|
|
30
|
-
emitEvent: emitEvent
|
|
31
|
-
});
|
|
32
18
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
33
19
|
className: "comic--slide__item ".concat(slideTransition)
|
|
34
20
|
}, slide.vignettes.map(function (vignette) {
|
package/dist/helpers/useEkho.js
CHANGED
|
@@ -28,6 +28,8 @@ var useEkho = function useEkho(_ref) {
|
|
|
28
28
|
var voice = _ref.voice,
|
|
29
29
|
text = _ref.text,
|
|
30
30
|
audioType = _ref.audioType,
|
|
31
|
+
_ref$loop = _ref.loop,
|
|
32
|
+
loop = _ref$loop === void 0 ? false : _ref$loop,
|
|
31
33
|
audio = _ref.audio,
|
|
32
34
|
soundActions = _ref.soundActions,
|
|
33
35
|
emitEvent = _ref.emitEvent;
|
|
@@ -52,7 +54,15 @@ var useEkho = function useEkho(_ref) {
|
|
|
52
54
|
type: 'translate',
|
|
53
55
|
payload: id
|
|
54
56
|
});
|
|
55
|
-
}, [emitEvent]);
|
|
57
|
+
}, [emitEvent]);
|
|
58
|
+
var finishCallback = (0, _react.useRef)(function () {});
|
|
59
|
+
var startCallback = (0, _react.useRef)(function () {});
|
|
60
|
+
var onStartAudio = (0, _react.useCallback)(function (fn) {
|
|
61
|
+
startCallback.current = fn;
|
|
62
|
+
}, []);
|
|
63
|
+
var onFinishAudio = (0, _react.useCallback)(function (fn) {
|
|
64
|
+
finishCallback.current = fn;
|
|
65
|
+
}, []); // Setted when is mounted
|
|
56
66
|
|
|
57
67
|
(0, _react.useEffect)(function () {
|
|
58
68
|
setIsMounted(true);
|
|
@@ -91,8 +101,12 @@ var useEkho = function useEkho(_ref) {
|
|
|
91
101
|
url: url,
|
|
92
102
|
cc: cc
|
|
93
103
|
};
|
|
94
|
-
|
|
95
|
-
|
|
104
|
+
startCallback.current({
|
|
105
|
+
url: url,
|
|
106
|
+
cc: cc
|
|
107
|
+
});
|
|
108
|
+
playSound(url, cc, loop, 0.5, finishCallback.current);
|
|
109
|
+
}, [playSound, loop]);
|
|
96
110
|
var playSpeech = (0, _react.useCallback)( /*#__PURE__*/function () {
|
|
97
111
|
var _ref3 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(payload) {
|
|
98
112
|
var url;
|
|
@@ -145,6 +159,10 @@ var useEkho = function useEkho(_ref) {
|
|
|
145
159
|
}
|
|
146
160
|
}
|
|
147
161
|
}, [getVoice, playSpeech, isMounted, voice, text, audioType, audio === null || audio === void 0 ? void 0 : audio.url, audio, setCurrentPlaying]);
|
|
162
|
+
return {
|
|
163
|
+
onStart: onStartAudio,
|
|
164
|
+
onFinish: onFinishAudio
|
|
165
|
+
};
|
|
148
166
|
};
|
|
149
167
|
|
|
150
168
|
var _default = useEkho;
|