@remotion/player 3.0.0-lambda.2 → 3.0.0-lambda.203
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.
- package/dist/Loading.js +3 -5
- package/dist/Loading.js.map +1 -1
- package/dist/Player.d.ts +6 -1
- package/dist/Player.d.ts.map +1 -1
- package/dist/Player.js +20 -8
- package/dist/Player.js.map +1 -1
- package/dist/PlayerSeekBar.d.ts.map +1 -1
- package/dist/PlayerSeekBar.js +2 -1
- package/dist/PlayerSeekBar.js.map +1 -1
- package/dist/PlayerUI.d.ts +4 -0
- package/dist/PlayerUI.d.ts.map +1 -1
- package/dist/PlayerUI.js +15 -6
- package/dist/PlayerUI.js.map +1 -1
- package/dist/PredefinedAudioTags.d.ts +11 -0
- package/dist/PredefinedAudioTags.d.ts.map +1 -0
- package/dist/PredefinedAudioTags.js +98 -0
- package/dist/PredefinedAudioTags.js.map +1 -0
- package/dist/calculate-next-frame.d.ts +15 -0
- package/dist/calculate-next-frame.d.ts.map +1 -0
- package/dist/calculate-next-frame.js +29 -0
- package/dist/calculate-next-frame.js.map +1 -0
- package/dist/error-boundary.d.ts +7 -4
- package/dist/error-boundary.d.ts.map +1 -1
- package/dist/error-boundary.js +6 -4
- package/dist/error-boundary.js.map +1 -1
- package/dist/event-emitter.d.ts +7 -2
- package/dist/event-emitter.d.ts.map +1 -1
- package/dist/event-emitter.js +6 -0
- package/dist/event-emitter.js.map +1 -1
- package/dist/events.d.ts +1 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +2 -0
- package/dist/events.js.map +1 -0
- package/dist/index.d.ts +5 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/test/validate-prop.test.js +36 -6
- package/dist/test/validate-prop.test.js.map +1 -1
- package/dist/use-playback.d.ts +2 -1
- package/dist/use-playback.d.ts.map +1 -1
- package/dist/use-playback.js +32 -32
- package/dist/use-playback.js.map +1 -1
- package/dist/use-player.d.ts.map +1 -1
- package/dist/use-player.js +6 -6
- package/dist/use-player.js.map +1 -1
- package/dist/utils/use-throttle.d.ts +2 -0
- package/dist/utils/use-throttle.d.ts.map +1 -0
- package/dist/utils/use-throttle.js +24 -0
- package/dist/utils/use-throttle.js.map +1 -0
- package/dist/utils/validate-playbackrate.d.ts +2 -0
- package/dist/utils/validate-playbackrate.d.ts.map +1 -0
- package/dist/utils/validate-playbackrate.js +19 -0
- package/dist/utils/validate-playbackrate.js.map +1 -0
- package/package.json +4 -4
- package/dist/Freeze.d.ts +0 -7
- package/dist/Freeze.d.ts.map +0 -1
- package/dist/Freeze.js +0 -18
- package/dist/Freeze.js.map +0 -1
package/dist/Loading.js
CHANGED
|
@@ -3,16 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Loading = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const Loading = ({ size }) => {
|
|
6
|
-
const triangle = (opacity, triangleSize) => (jsx_runtime_1.jsxs("svg", Object.assign({ xmlnsXlink: "http://www.w3.org/1999/xlink", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 400 400", style: {
|
|
6
|
+
const triangle = (opacity, triangleSize) => ((0, jsx_runtime_1.jsxs)("svg", Object.assign({ xmlnsXlink: "http://www.w3.org/1999/xlink", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 400 400", style: {
|
|
7
7
|
opacity,
|
|
8
8
|
width: triangleSize,
|
|
9
9
|
height: triangleSize,
|
|
10
10
|
position: 'absolute',
|
|
11
11
|
transform: 'rotate(90deg)',
|
|
12
|
-
} }, { children: [jsx_runtime_1.jsx("defs", { children: jsx_runtime_1.jsxs("linearGradient", Object.assign({ id: "gradient" }, { children: [jsx_runtime_1.jsx("stop", { stopColor: "#42e9f5", stopOpacity: "1", offset: "0" }, void 0),
|
|
13
|
-
|
|
14
|
-
jsx_runtime_1.jsx("g", Object.assign({ stroke: 'url("#gradient")', strokeWidth: "100px", strokeLinejoin: "round" }, { children: jsx_runtime_1.jsx("path", { fill: 'url("#gradient")', d: "M 102 272 a 196 100 0 0 0 195 5 A 196 240 0 0 0 200 102.259 A 196 240 0 0 0 102 272 z", stroke: 'url("#gradient")', strokeWidth: "100px" }, void 0) }), void 0)] }), void 0));
|
|
15
|
-
return (jsx_runtime_1.jsxs("div", Object.assign({ style: {
|
|
12
|
+
} }, { children: [(0, jsx_runtime_1.jsx)("defs", { children: (0, jsx_runtime_1.jsxs)("linearGradient", Object.assign({ id: "gradient" }, { children: [(0, jsx_runtime_1.jsx)("stop", { stopColor: "#42e9f5", stopOpacity: "1", offset: "0" }, void 0), (0, jsx_runtime_1.jsx)("stop", { stopColor: "#4290f5", stopOpacity: "1", offset: "100%" }, void 0)] }), void 0) }, void 0), (0, jsx_runtime_1.jsx)("g", Object.assign({ stroke: 'url("#gradient")', strokeWidth: "100px", strokeLinejoin: "round" }, { children: (0, jsx_runtime_1.jsx)("path", { fill: 'url("#gradient")', d: "M 102 272 a 196 100 0 0 0 195 5 A 196 240 0 0 0 200 102.259 A 196 240 0 0 0 102 272 z", stroke: 'url("#gradient")', strokeWidth: "100px" }, void 0) }), void 0)] }), void 0));
|
|
13
|
+
return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ style: {
|
|
16
14
|
display: 'flex',
|
|
17
15
|
justifyContent: 'center',
|
|
18
16
|
alignItems: 'center',
|
package/dist/Loading.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Loading.js","sourceRoot":"","sources":["../src/Loading.tsx"],"names":[],"mappings":";;;;AAAO,MAAM,OAAO,GAEf,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE;IACf,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,YAAoB,EAAE,EAAE,CAAC,CAC3D,
|
|
1
|
+
{"version":3,"file":"Loading.js","sourceRoot":"","sources":["../src/Loading.tsx"],"names":[],"mappings":";;;;AAAO,MAAM,OAAO,GAEf,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE;IACf,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,YAAoB,EAAE,EAAE,CAAC,CAC3D,+CACC,UAAU,EAAC,8BAA8B,EACzC,KAAK,EAAC,4BAA4B,EAClC,OAAO,EAAC,aAAa,EACrB,KAAK,EAAE;YACN,OAAO;YACP,KAAK,EAAE,YAAY;YACnB,MAAM,EAAE,YAAY;YACpB,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,eAAe;SAC1B,iBAED,2CACC,0DAAgB,EAAE,EAAC,UAAU,iBAC5B,iCAAM,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,GAAG,EAAC,MAAM,EAAC,GAAG,WAAG,EACvD,iCAAM,SAAS,EAAC,SAAS,EAAC,WAAW,EAAC,GAAG,EAAC,MAAM,EAAC,MAAM,WAAG,aAC1C,WACX,EACP,4CAAG,MAAM,EAAC,kBAAkB,EAAC,WAAW,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,gBACtE,iCACC,IAAI,EAAC,kBAAkB,EACvB,CAAC,EAAC,uFAAuF,EACzF,MAAM,EAAC,kBAAkB,EACzB,WAAW,EAAC,OAAO,WAClB,YACC,aACC,CACN,CAAC;IAEF,OAAO,CACN,+CACC,KAAK,EAAE;YACN,OAAO,EAAE,MAAM;YACf,cAAc,EAAE,QAAQ;YACxB,UAAU,EAAE,QAAQ;YACpB,IAAI,EAAE,CAAC;YACP,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,MAAM;SACb,iBAEA,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,EACnB,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAC9B,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,aACxB,CACN,CAAC;AACH,CAAC,CAAC;AAjDW,QAAA,OAAO,WAiDlB"}
|
package/dist/Player.d.ts
CHANGED
|
@@ -6,6 +6,9 @@ declare type PropsIfHasProps<Props> = {} extends Props ? {
|
|
|
6
6
|
} : {
|
|
7
7
|
inputProps: Props;
|
|
8
8
|
};
|
|
9
|
+
export declare type ErrorFallback = (info: {
|
|
10
|
+
error: Error;
|
|
11
|
+
}) => React.ReactNode;
|
|
9
12
|
export declare type PlayerProps<T> = {
|
|
10
13
|
durationInFrames: number;
|
|
11
14
|
compositionWidth: number;
|
|
@@ -13,6 +16,7 @@ export declare type PlayerProps<T> = {
|
|
|
13
16
|
fps: number;
|
|
14
17
|
showVolumeControls?: boolean;
|
|
15
18
|
controls?: boolean;
|
|
19
|
+
errorFallback?: ErrorFallback;
|
|
16
20
|
style?: React.CSSProperties;
|
|
17
21
|
loop?: boolean;
|
|
18
22
|
autoPlay?: boolean;
|
|
@@ -21,8 +25,9 @@ export declare type PlayerProps<T> = {
|
|
|
21
25
|
doubleClickToFullscreen?: boolean;
|
|
22
26
|
spaceKeyToPlayOrPause?: boolean;
|
|
23
27
|
numberOfSharedAudioTags?: number;
|
|
28
|
+
playbackRate?: number;
|
|
24
29
|
} & PropsIfHasProps<T> & CompProps<T>;
|
|
25
|
-
export declare const PlayerFn: <T>({ durationInFrames, compositionHeight, compositionWidth, fps, inputProps, style, controls, loop, autoPlay, showVolumeControls, allowFullscreen, clickToPlay, doubleClickToFullscreen, spaceKeyToPlayOrPause, numberOfSharedAudioTags, ...componentProps }: PlayerProps<T>, ref: MutableRefObject<PlayerRef>) => JSX.Element;
|
|
30
|
+
export declare const PlayerFn: <T>({ durationInFrames, compositionHeight, compositionWidth, fps, inputProps, style, controls, loop, autoPlay, showVolumeControls, allowFullscreen, clickToPlay, doubleClickToFullscreen, spaceKeyToPlayOrPause, numberOfSharedAudioTags, errorFallback, playbackRate, ...componentProps }: PlayerProps<T>, ref: MutableRefObject<PlayerRef>) => JSX.Element;
|
|
26
31
|
declare module 'react' {
|
|
27
32
|
function forwardRef<T, P = {}>(render: (props: P, ref: React.MutableRefObject<T>) => React.ReactElement | null): (props: P & React.RefAttributes<T>) => React.ReactElement | null;
|
|
28
33
|
}
|
package/dist/Player.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Player.d.ts","sourceRoot":"","sources":["../src/Player.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEb,gBAAgB,
|
|
1
|
+
{"version":3,"file":"Player.d.ts","sourceRoot":"","sources":["../src/Player.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEb,gBAAgB,EAQhB,MAAM,OAAO,CAAC;AACf,OAAO,EAEN,SAAS,EAOT,MAAM,UAAU,CAAC;AAIlB,OAAO,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAK3C,aAAK,eAAe,CAAC,KAAK,IAAI,EAAE,SAAS,KAAK,GAC3C;IACA,UAAU,CAAC,EAAE,KAAK,CAAC;CAClB,GACD;IACA,UAAU,EAAE,KAAK,CAAC;CACjB,CAAC;AAEL,oBAAY,aAAa,GAAG,CAAC,IAAI,EAAE;IAAC,KAAK,EAAE,KAAK,CAAA;CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;AAEtE,oBAAY,WAAW,CAAC,CAAC,IAAI;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,eAAe,CAAC,CAAC,CAAC,GACrB,SAAS,CAAC,CAAC,CAAC,CAAC;AAOd,eAAO,MAAM,QAAQ,mTAqBf,iBAAiB,SAAS,CAAC,gBAiQhC,CAAC;AAEF,OAAO,QAAQ,OAAO,CAAC;IAEtB,SAAS,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,EAC5B,MAAM,EAAE,CACP,KAAK,EAAE,CAAC,EACR,GAAG,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAC1B,KAAK,CAAC,YAAY,GAAG,IAAI,GAC5B,CAAC,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;CACpE;AAED,eAAO,MAAM,MAAM,iEAHwB,kBAAkB,GAAG,IAGtB,CAAC"}
|
package/dist/Player.js
CHANGED
|
@@ -11,15 +11,17 @@ const emitter_context_1 = require("./emitter-context");
|
|
|
11
11
|
const event_emitter_1 = require("./event-emitter");
|
|
12
12
|
const player_css_classname_1 = require("./player-css-classname");
|
|
13
13
|
const PlayerUI_1 = __importDefault(require("./PlayerUI"));
|
|
14
|
+
const validate_playbackrate_1 = require("./utils/validate-playbackrate");
|
|
14
15
|
const volume_persistance_1 = require("./volume-persistance");
|
|
15
16
|
remotion_1.Internals.CSSUtils.injectCSS(remotion_1.Internals.CSSUtils.makeDefaultCSS(`.${player_css_classname_1.PLAYER_CSS_CLASSNAME}`));
|
|
16
17
|
// eslint-disable-next-line complexity
|
|
17
|
-
const PlayerFn = ({ durationInFrames, compositionHeight, compositionWidth, fps, inputProps, style, controls = false, loop = false, autoPlay = false, showVolumeControls = true, allowFullscreen = true, clickToPlay, doubleClickToFullscreen = false, spaceKeyToPlayOrPause = true, numberOfSharedAudioTags = 5, ...componentProps }, ref) => {
|
|
18
|
-
(
|
|
19
|
-
|
|
18
|
+
const PlayerFn = ({ durationInFrames, compositionHeight, compositionWidth, fps, inputProps, style, controls = false, loop = false, autoPlay = false, showVolumeControls = true, allowFullscreen = true, clickToPlay, doubleClickToFullscreen = false, spaceKeyToPlayOrPause = true, numberOfSharedAudioTags = 5, errorFallback = () => '⚠️', playbackRate = 1, ...componentProps }, ref) => {
|
|
19
|
+
if (typeof window !== 'undefined') {
|
|
20
|
+
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
21
|
+
(0, react_1.useLayoutEffect)(() => {
|
|
20
22
|
window.remotion_isPlayer = true;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
+
}, []);
|
|
24
|
+
}
|
|
23
25
|
const component = remotion_1.Internals.useLazyComponent(componentProps);
|
|
24
26
|
const [frame, setFrame] = (0, react_1.useState)(0);
|
|
25
27
|
const [playing, setPlaying] = (0, react_1.useState)(false);
|
|
@@ -28,6 +30,7 @@ const PlayerFn = ({ durationInFrames, compositionHeight, compositionWidth, fps,
|
|
|
28
30
|
const rootRef = (0, react_1.useRef)(null);
|
|
29
31
|
const [mediaMuted, setMediaMuted] = (0, react_1.useState)(false);
|
|
30
32
|
const [mediaVolume, setMediaVolume] = (0, react_1.useState)((0, volume_persistance_1.getPreferredVolume)());
|
|
33
|
+
const imperativePlaying = (0, react_1.useRef)(false);
|
|
31
34
|
if (typeof compositionHeight !== 'number') {
|
|
32
35
|
throw new TypeError(`'compositionHeight' must be a number but got '${typeof compositionHeight}' instead`);
|
|
33
36
|
}
|
|
@@ -73,6 +76,10 @@ const PlayerFn = ({ durationInFrames, compositionHeight, compositionWidth, fps,
|
|
|
73
76
|
numberOfSharedAudioTags < 0) {
|
|
74
77
|
throw new TypeError(`'numberOfSharedAudioTags' must be an integer but got '${numberOfSharedAudioTags}' instead`);
|
|
75
78
|
}
|
|
79
|
+
(0, validate_playbackrate_1.validatePlaybackRate)(playbackRate);
|
|
80
|
+
(0, react_1.useEffect)(() => {
|
|
81
|
+
emitter.dispatchRatechange(playbackRate);
|
|
82
|
+
}, [emitter, playbackRate]);
|
|
76
83
|
const setMediaVolumeAndPersist = (0, react_1.useCallback)((vol) => {
|
|
77
84
|
setMediaVolume(vol);
|
|
78
85
|
(0, volume_persistance_1.persistVolume)(vol);
|
|
@@ -84,8 +91,13 @@ const PlayerFn = ({ durationInFrames, compositionHeight, compositionWidth, fps,
|
|
|
84
91
|
playing,
|
|
85
92
|
rootId,
|
|
86
93
|
shouldRegisterSequences: false,
|
|
94
|
+
playbackRate,
|
|
95
|
+
imperativePlaying,
|
|
96
|
+
setPlaybackRate: () => {
|
|
97
|
+
throw new Error('playback rate');
|
|
98
|
+
},
|
|
87
99
|
};
|
|
88
|
-
}, [frame, playing, rootId]);
|
|
100
|
+
}, [frame, playbackRate, playing, rootId]);
|
|
89
101
|
const setTimelineContextValue = (0, react_1.useMemo)(() => {
|
|
90
102
|
return {
|
|
91
103
|
setFrame,
|
|
@@ -140,9 +152,9 @@ const PlayerFn = ({ durationInFrames, compositionHeight, compositionWidth, fps,
|
|
|
140
152
|
const passedInputProps = (0, react_1.useMemo)(() => {
|
|
141
153
|
return inputProps !== null && inputProps !== void 0 ? inputProps : {};
|
|
142
154
|
}, [inputProps]);
|
|
143
|
-
return ((0, jsx_runtime_1.jsx)(remotion_1.Internals.Timeline.TimelineContext.Provider, Object.assign({ value: timelineContextValue }, { children: (0, jsx_runtime_1.jsx)(remotion_1.Internals.Timeline.SetTimelineContext.Provider, Object.assign({ value: setTimelineContextValue }, { children: (0, jsx_runtime_1.jsx)(remotion_1.Internals.CompositionManager.Provider, Object.assign({ value: compositionManagerContext }, { children: (0, jsx_runtime_1.jsx)(remotion_1.Internals.MediaVolumeContext.Provider, Object.assign({ value: mediaVolumeContextValue }, { children: (0, jsx_runtime_1.jsx)(remotion_1.Internals.SetMediaVolumeContext.Provider, Object.assign({ value: setMediaVolumeContextValue }, { children: (0, jsx_runtime_1.jsx)(remotion_1.Internals.SharedAudioContextProvider, Object.assign({ numberOfAudioTags: numberOfSharedAudioTags }, { children: (0, jsx_runtime_1.jsx)(emitter_context_1.PlayerEventEmitterContext.Provider, Object.assign({ value: emitter }, { children: (0, jsx_runtime_1.jsx)(PlayerUI_1.default, { ref: rootRef, autoPlay: Boolean(autoPlay), loop: Boolean(loop), controls: Boolean(controls), style: style, inputProps: passedInputProps, allowFullscreen: Boolean(allowFullscreen), clickToPlay: typeof clickToPlay === 'boolean'
|
|
155
|
+
return ((0, jsx_runtime_1.jsx)(remotion_1.Internals.Timeline.TimelineContext.Provider, Object.assign({ value: timelineContextValue }, { children: (0, jsx_runtime_1.jsx)(remotion_1.Internals.Timeline.SetTimelineContext.Provider, Object.assign({ value: setTimelineContextValue }, { children: (0, jsx_runtime_1.jsx)(remotion_1.Internals.CompositionManager.Provider, Object.assign({ value: compositionManagerContext }, { children: (0, jsx_runtime_1.jsx)(remotion_1.Internals.MediaVolumeContext.Provider, Object.assign({ value: mediaVolumeContextValue }, { children: (0, jsx_runtime_1.jsx)(remotion_1.Internals.SetMediaVolumeContext.Provider, Object.assign({ value: setMediaVolumeContextValue }, { children: (0, jsx_runtime_1.jsx)(remotion_1.Internals.SharedAudioContextProvider, Object.assign({ numberOfAudioTags: numberOfSharedAudioTags }, { children: (0, jsx_runtime_1.jsx)(emitter_context_1.PlayerEventEmitterContext.Provider, Object.assign({ value: emitter }, { children: (0, jsx_runtime_1.jsx)(PlayerUI_1.default, { ref: rootRef, autoPlay: Boolean(autoPlay), loop: Boolean(loop), controls: Boolean(controls), errorFallback: errorFallback, style: style, inputProps: passedInputProps, allowFullscreen: Boolean(allowFullscreen), clickToPlay: typeof clickToPlay === 'boolean'
|
|
144
156
|
? clickToPlay
|
|
145
|
-
: Boolean(controls), showVolumeControls: Boolean(showVolumeControls), setMediaVolume: setMediaVolumeAndPersist, mediaVolume: mediaVolume, mediaMuted: mediaMuted, doubleClickToFullscreen: Boolean(doubleClickToFullscreen), setMediaMuted: setMediaMuted, spaceKeyToPlayOrPause: Boolean(spaceKeyToPlayOrPause) }, void 0) }), void 0) }), void 0) }), void 0) }), void 0) }), void 0) }), void 0) }), void 0));
|
|
157
|
+
: Boolean(controls), showVolumeControls: Boolean(showVolumeControls), setMediaVolume: setMediaVolumeAndPersist, mediaVolume: mediaVolume, mediaMuted: mediaMuted, doubleClickToFullscreen: Boolean(doubleClickToFullscreen), setMediaMuted: setMediaMuted, spaceKeyToPlayOrPause: Boolean(spaceKeyToPlayOrPause), playbackRate: playbackRate }, void 0) }), void 0) }), void 0) }), void 0) }), void 0) }), void 0) }), void 0) }), void 0));
|
|
146
158
|
};
|
|
147
159
|
exports.PlayerFn = PlayerFn;
|
|
148
160
|
exports.Player = (0, react_1.forwardRef)(exports.PlayerFn);
|
package/dist/Player.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Player.js","sourceRoot":"","sources":["../src/Player.tsx"],"names":[],"mappings":";;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"Player.js","sourceRoot":"","sources":["../src/Player.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlayerSeekBar.d.ts","sourceRoot":"","sources":["../src/PlayerSeekBar.tsx"],"names":[],"mappings":";AA0CA,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,gBAAgB,EAAE,MAAM,CAAC;CACzB,
|
|
1
|
+
{"version":3,"file":"PlayerSeekBar.d.ts","sourceRoot":"","sources":["../src/PlayerSeekBar.tsx"],"names":[],"mappings":";AA0CA,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,gBAAgB,EAAE,MAAM,CAAC;CACzB,CA+HA,CAAC"}
|
package/dist/PlayerSeekBar.js
CHANGED
|
@@ -100,7 +100,8 @@ const PlayerSeekBar = ({ durationInFrames }) => {
|
|
|
100
100
|
position: 'absolute',
|
|
101
101
|
top: VERTICAL_PADDING - KNOB_SIZE / 2 + 5 / 2,
|
|
102
102
|
backgroundColor: 'white',
|
|
103
|
-
left: Math.max(0, (frame / (durationInFrames - 1)) * ((_a = size === null || size === void 0 ? void 0 : size.width) !== null && _a !== void 0 ? _a : 0) -
|
|
103
|
+
left: Math.max(0, (frame / Math.max(1, durationInFrames - 1)) * ((_a = size === null || size === void 0 ? void 0 : size.width) !== null && _a !== void 0 ? _a : 0) -
|
|
104
|
+
KNOB_SIZE / 2),
|
|
104
105
|
boxShadow: '0 0 2px black',
|
|
105
106
|
opacity: Number(barHovered),
|
|
106
107
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlayerSeekBar.js","sourceRoot":"","sources":["../src/PlayerSeekBar.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PlayerSeekBar.js","sourceRoot":"","sources":["../src/PlayerSeekBar.tsx"],"names":[],"mappings":"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"}
|
package/dist/PlayerUI.d.ts
CHANGED
|
@@ -15,6 +15,10 @@ declare const _default: (props: {
|
|
|
15
15
|
setMediaVolume: (v: number) => void;
|
|
16
16
|
setMediaMuted: (v: boolean) => void;
|
|
17
17
|
mediaVolume: number;
|
|
18
|
+
errorFallback: (info: {
|
|
19
|
+
error: Error;
|
|
20
|
+
}) => React.ReactNode;
|
|
21
|
+
playbackRate: number;
|
|
18
22
|
} & {
|
|
19
23
|
children?: React.ReactNode;
|
|
20
24
|
} & React.RefAttributes<PlayerRef | null>) => React.ReactElement<any, string | React.JSXElementConstructor<any>> | null;
|
package/dist/PlayerUI.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlayerUI.d.ts","sourceRoot":"","sources":["../src/PlayerUI.tsx"],"names":[],"mappings":"AACA,OAAO,KAWN,MAAM,OAAO,CAAC;AAKf,OAAO,EAAgB,SAAS,EAAC,MAAM,kBAAkB,CAAC
|
|
1
|
+
{"version":3,"file":"PlayerUI.d.ts","sourceRoot":"","sources":["../src/PlayerUI.tsx"],"names":[],"mappings":"AACA,OAAO,KAWN,MAAM,OAAO,CAAC;AAKf,OAAO,EAAgB,SAAS,EAAC,MAAM,kBAAkB,CAAC;;;;;;;;;;;;;;;;;;;;;;;AA2Y1D,wBAAoC"}
|
package/dist/PlayerUI.js
CHANGED
|
@@ -15,8 +15,8 @@ const calculate_player_size_1 = require("./utils/calculate-player-size");
|
|
|
15
15
|
const is_node_1 = require("./utils/is-node");
|
|
16
16
|
const use_click_prevention_on_double_click_1 = require("./utils/use-click-prevention-on-double-click");
|
|
17
17
|
const use_element_size_1 = require("./utils/use-element-size");
|
|
18
|
-
const PlayerUI = ({ controls, style, loop, autoPlay, allowFullscreen, inputProps, clickToPlay, showVolumeControls, mediaVolume, mediaMuted, doubleClickToFullscreen, setMediaMuted, setMediaVolume, spaceKeyToPlayOrPause, }, ref) => {
|
|
19
|
-
var _a, _b;
|
|
18
|
+
const PlayerUI = ({ controls, style, loop, autoPlay, allowFullscreen, inputProps, clickToPlay, showVolumeControls, mediaVolume, mediaMuted, doubleClickToFullscreen, setMediaMuted, setMediaVolume, spaceKeyToPlayOrPause, errorFallback, playbackRate, }, ref) => {
|
|
19
|
+
var _a, _b, _c;
|
|
20
20
|
const config = remotion_1.Internals.useUnsafeVideoConfig();
|
|
21
21
|
const video = remotion_1.Internals.useVideo();
|
|
22
22
|
const container = (0, react_1.useRef)(null);
|
|
@@ -25,7 +25,7 @@ const PlayerUI = ({ controls, style, loop, autoPlay, allowFullscreen, inputProps
|
|
|
25
25
|
const [hasPausedToResume, setHasPausedToResume] = (0, react_1.useState)(false);
|
|
26
26
|
const [shouldAutoplay, setShouldAutoPlay] = (0, react_1.useState)(autoPlay);
|
|
27
27
|
const [isFullscreen, setIsFullscreen] = (0, react_1.useState)(() => false);
|
|
28
|
-
(0, use_playback_1.usePlayback)({ loop });
|
|
28
|
+
(0, use_playback_1.usePlayback)({ loop, playbackRate });
|
|
29
29
|
const player = (0, use_player_1.usePlayer)();
|
|
30
30
|
(0, react_1.useEffect)(() => {
|
|
31
31
|
if (hasPausedToResume && !player.playing) {
|
|
@@ -82,6 +82,7 @@ const PlayerUI = ({ controls, style, loop, autoPlay, allowFullscreen, inputProps
|
|
|
82
82
|
document.exitFullscreen();
|
|
83
83
|
}
|
|
84
84
|
}, []);
|
|
85
|
+
const durationInFrames = (_a = config === null || config === void 0 ? void 0 : config.durationInFrames) !== null && _a !== void 0 ? _a : 1;
|
|
85
86
|
(0, react_1.useImperativeHandle)(ref, () => {
|
|
86
87
|
const methods = {
|
|
87
88
|
play: player.play,
|
|
@@ -90,11 +91,17 @@ const PlayerUI = ({ controls, style, loop, autoPlay, allowFullscreen, inputProps
|
|
|
90
91
|
getContainerNode: () => container.current,
|
|
91
92
|
getCurrentFrame: player.getCurrentFrame,
|
|
92
93
|
seekTo: (f) => {
|
|
94
|
+
const lastFrame = durationInFrames - 1;
|
|
95
|
+
const frameToSeekTo = Math.max(0, Math.min(lastFrame, f));
|
|
93
96
|
if (player.isPlaying()) {
|
|
94
|
-
|
|
97
|
+
const pauseToResume = frameToSeekTo !== lastFrame || loop;
|
|
98
|
+
setHasPausedToResume(pauseToResume);
|
|
95
99
|
player.pause();
|
|
96
100
|
}
|
|
97
|
-
|
|
101
|
+
if (frameToSeekTo === lastFrame && !loop) {
|
|
102
|
+
player.emitter.dispatchEnded();
|
|
103
|
+
}
|
|
104
|
+
player.seek(frameToSeekTo);
|
|
98
105
|
},
|
|
99
106
|
isFullscreen: () => isFullscreen,
|
|
100
107
|
requestFullscreen,
|
|
@@ -127,8 +134,10 @@ const PlayerUI = ({ controls, style, loop, autoPlay, allowFullscreen, inputProps
|
|
|
127
134
|
};
|
|
128
135
|
return Object.assign(player.emitter, methods);
|
|
129
136
|
}, [
|
|
137
|
+
durationInFrames,
|
|
130
138
|
exitFullscreen,
|
|
131
139
|
isFullscreen,
|
|
140
|
+
loop,
|
|
132
141
|
mediaMuted,
|
|
133
142
|
mediaVolume,
|
|
134
143
|
player,
|
|
@@ -237,7 +246,7 @@ const PlayerUI = ({ controls, style, loop, autoPlay, allowFullscreen, inputProps
|
|
|
237
246
|
if (!config) {
|
|
238
247
|
return null;
|
|
239
248
|
}
|
|
240
|
-
const content = ((0, jsx_runtime_1.jsxs)("div", Object.assign({ ref: container, style: outerStyle }, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ style: outer, onClick: clickToPlay ? handleClick : undefined, onDoubleClick: doubleClickToFullscreen ? handleDoubleClick : undefined }, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ style: containerStyle, className: player_css_classname_1.PLAYER_CSS_CLASSNAME }, { children: VideoComponent ? ((0, jsx_runtime_1.jsx)(error_boundary_1.ErrorBoundary, Object.assign({ onError: onError }, { children: (0, jsx_runtime_1.jsx)(VideoComponent, Object.assign({}, ((
|
|
249
|
+
const content = ((0, jsx_runtime_1.jsxs)("div", Object.assign({ ref: container, style: outerStyle }, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ style: outer, onClick: clickToPlay ? handleClick : undefined, onDoubleClick: doubleClickToFullscreen ? handleDoubleClick : undefined }, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ style: containerStyle, className: player_css_classname_1.PLAYER_CSS_CLASSNAME }, { children: VideoComponent ? ((0, jsx_runtime_1.jsx)(error_boundary_1.ErrorBoundary, Object.assign({ onError: onError, errorFallback: errorFallback }, { children: (0, jsx_runtime_1.jsx)(VideoComponent, Object.assign({}, ((_b = video === null || video === void 0 ? void 0 : video.props) !== null && _b !== void 0 ? _b : {}), ((_c = inputProps) !== null && _c !== void 0 ? _c : {})), void 0) }), void 0)) : null }), void 0) }), void 0), controls ? ((0, jsx_runtime_1.jsx)(PlayerControls_1.Controls, { fps: config.fps, durationInFrames: config.durationInFrames, hovered: hovered, player: player, onFullscreenButtonClick: onFullscreenButtonClick, isFullscreen: isFullscreen, allowFullscreen: allowFullscreen, showVolumeControls: showVolumeControls, onExitFullscreenButtonClick: onExitFullscreenButtonClick, spaceKeyToPlayOrPause: spaceKeyToPlayOrPause }, void 0)) : null] }), void 0));
|
|
241
250
|
// Don't render suspense on Node.js
|
|
242
251
|
if (is_node_1.IS_NODE) {
|
|
243
252
|
return content;
|
package/dist/PlayerUI.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlayerUI.js","sourceRoot":"","sources":["../src/PlayerUI.tsx"],"names":[],"mappings":";;;AACA,iCAWe;AACf,uCAAmC;AACnC,uDAAiD;AACjD,qDAA+C;AAC/C,iEAA4D;AAE5D,qDAA0C;AAC1C,uDAAgD;AAChD,iDAA2C;AAC3C,6CAAuC;AACvC,qFAA8E;AAC9E,yEAAkE;AAClE,6CAAwC;AACxC,uGAA6F;AAC7F,+DAAwD;AAExD,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"PlayerUI.js","sourceRoot":"","sources":["../src/PlayerUI.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { RemotionAudioProps } from 'remotion';
|
|
3
|
+
declare type AudioElem = {
|
|
4
|
+
id: number;
|
|
5
|
+
props: RemotionAudioProps;
|
|
6
|
+
el: React.RefObject<HTMLAudioElement>;
|
|
7
|
+
};
|
|
8
|
+
export declare const SharedAudioContextProvider: React.FC;
|
|
9
|
+
export declare const useSharedAudio: (aud: RemotionAudioProps) => AudioElem;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=PredefinedAudioTags.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PredefinedAudioTags.d.ts","sourceRoot":"","sources":["../src/PredefinedAudioTags.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AACf,OAAO,EAAC,kBAAkB,EAAC,MAAM,UAAU,CAAC;AAE5C,aAAK,SAAS,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,kBAAkB,CAAC;IAC1B,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;CACtC,CAAC;AAsBF,eAAO,MAAM,0BAA0B,EAAE,KAAK,CAAC,EA4F9C,CAAC;AAEF,eAAO,MAAM,cAAc,QAAS,kBAAkB,cAgBrD,CAAC"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useSharedAudio = exports.SharedAudioContextProvider = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const react_1 = require("react");
|
|
6
|
+
const SharedAudioContext = react_1.createContext({
|
|
7
|
+
registerAudio: () => {
|
|
8
|
+
throw new Error('sharedaudiocontext not mounted');
|
|
9
|
+
},
|
|
10
|
+
unregisterAudio: () => {
|
|
11
|
+
throw new Error('sharedaudiocontext not mounted');
|
|
12
|
+
},
|
|
13
|
+
updateAudio: () => {
|
|
14
|
+
throw new Error('sharedaudiocontext not mounted');
|
|
15
|
+
},
|
|
16
|
+
});
|
|
17
|
+
const numberOfAudios = 5;
|
|
18
|
+
const SharedAudioContextProvider = ({ children }) => {
|
|
19
|
+
const [, setAudios] = react_1.useState([]);
|
|
20
|
+
const refs = react_1.useMemo(() => {
|
|
21
|
+
return new Array(numberOfAudios).fill(true).map(() => {
|
|
22
|
+
return { id: Math.random(), ref: react_1.createRef() };
|
|
23
|
+
});
|
|
24
|
+
}, []);
|
|
25
|
+
const [takenAudios, setTakenAudios] = react_1.useState(() => new Array(numberOfAudios).fill(false));
|
|
26
|
+
const registerAudio = react_1.useCallback((aud) => {
|
|
27
|
+
const firstFreeAudio = takenAudios.findIndex((a) => a === false);
|
|
28
|
+
if (firstFreeAudio === -1) {
|
|
29
|
+
throw new Error('Trying to register more than XXX audio elements at the same time');
|
|
30
|
+
}
|
|
31
|
+
setTakenAudios((prevTaken) => {
|
|
32
|
+
const cloned = [...prevTaken];
|
|
33
|
+
cloned[firstFreeAudio] = true;
|
|
34
|
+
return cloned;
|
|
35
|
+
});
|
|
36
|
+
const { id, ref } = refs[firstFreeAudio];
|
|
37
|
+
const newElem = {
|
|
38
|
+
props: aud,
|
|
39
|
+
id,
|
|
40
|
+
el: ref,
|
|
41
|
+
};
|
|
42
|
+
setAudios((prevAudios) => [...prevAudios, newElem]);
|
|
43
|
+
return newElem;
|
|
44
|
+
}, [refs, takenAudios]);
|
|
45
|
+
const unregisterAudio = react_1.useCallback((id) => {
|
|
46
|
+
setTakenAudios((prevTaken) => {
|
|
47
|
+
const cloned = [...prevTaken];
|
|
48
|
+
const index = refs.findIndex((r) => r.id === id);
|
|
49
|
+
if (index === -1) {
|
|
50
|
+
throw new TypeError('unregister audio');
|
|
51
|
+
}
|
|
52
|
+
cloned[index] = false;
|
|
53
|
+
return cloned;
|
|
54
|
+
});
|
|
55
|
+
setAudios((prevAudios) => {
|
|
56
|
+
return prevAudios.filter((a) => a.id !== id);
|
|
57
|
+
});
|
|
58
|
+
}, [refs]);
|
|
59
|
+
const updateAudio = react_1.useCallback((id, aud) => {
|
|
60
|
+
setAudios((prevAudios) => {
|
|
61
|
+
return prevAudios.map((prevA) => {
|
|
62
|
+
if (prevA.id === id) {
|
|
63
|
+
return {
|
|
64
|
+
...prevA,
|
|
65
|
+
props: aud,
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
return prevA;
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
}, []);
|
|
72
|
+
const value = react_1.useMemo(() => {
|
|
73
|
+
return {
|
|
74
|
+
registerAudio,
|
|
75
|
+
unregisterAudio,
|
|
76
|
+
updateAudio,
|
|
77
|
+
};
|
|
78
|
+
}, [registerAudio, unregisterAudio, updateAudio]);
|
|
79
|
+
return (jsx_runtime_1.jsxs(SharedAudioContext.Provider, Object.assign({ value: value }, { children: [refs.map(({ id, ref }) => {
|
|
80
|
+
return jsx_runtime_1.jsx("audio", { ref: ref }, id);
|
|
81
|
+
}), children] }), void 0));
|
|
82
|
+
};
|
|
83
|
+
exports.SharedAudioContextProvider = SharedAudioContextProvider;
|
|
84
|
+
const useSharedAudio = (aud) => {
|
|
85
|
+
const ctx = react_1.useContext(SharedAudioContext);
|
|
86
|
+
const [elem] = react_1.useState(() => ctx.registerAudio(aud));
|
|
87
|
+
react_1.useLayoutEffect(() => {
|
|
88
|
+
return () => {
|
|
89
|
+
ctx.unregisterAudio(elem.id);
|
|
90
|
+
};
|
|
91
|
+
}, [ctx, elem.id]);
|
|
92
|
+
react_1.useLayoutEffect(() => {
|
|
93
|
+
ctx.updateAudio(elem.id, aud);
|
|
94
|
+
}, [aud, ctx, elem.id]);
|
|
95
|
+
return elem;
|
|
96
|
+
};
|
|
97
|
+
exports.useSharedAudio = useSharedAudio;
|
|
98
|
+
//# sourceMappingURL=PredefinedAudioTags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PredefinedAudioTags.js","sourceRoot":"","sources":["../src/PredefinedAudioTags.tsx"],"names":[],"mappings":";;;;AAAA,iCAQe;AAef,MAAM,kBAAkB,GAAG,qBAAa,CAAgB;IACvD,aAAa,EAAE,GAAG,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACnD,CAAC;IACD,eAAe,EAAE,GAAG,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACnD,CAAC;IACD,WAAW,EAAE,GAAG,EAAE;QACjB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACnD,CAAC;CACD,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,CAAC,CAAC;AAElB,MAAM,0BAA0B,GAAa,CAAC,EAAC,QAAQ,EAAC,EAAE,EAAE;IAClE,MAAM,CAAC,EAAE,SAAS,CAAC,GAAG,gBAAQ,CAAc,EAAE,CAAC,CAAC;IAEhD,MAAM,IAAI,GAAG,eAAO,CAAC,GAAG,EAAE;QACzB,OAAO,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE;YACpD,OAAO,EAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,iBAAS,EAAoB,EAAC,CAAC;QAChE,CAAC,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,gBAAQ,CAAC,GAAG,EAAE,CACnD,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CACrC,CAAC;IAEF,MAAM,aAAa,GAAG,mBAAW,CAChC,CAAC,GAAuB,EAAE,EAAE;QAC3B,MAAM,cAAc,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;QACjE,IAAI,cAAc,KAAK,CAAC,CAAC,EAAE;YAC1B,MAAM,IAAI,KAAK,CACd,kEAAkE,CAClE,CAAC;SACF;QAED,cAAc,CAAC,CAAC,SAAS,EAAE,EAAE;YAC5B,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;YAC9B,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;YAC9B,OAAO,MAAM,CAAC;QACf,CAAC,CAAC,CAAC;QACH,MAAM,EAAC,EAAE,EAAE,GAAG,EAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;QACvC,MAAM,OAAO,GAAc;YAC1B,KAAK,EAAE,GAAG;YACV,EAAE;YACF,EAAE,EAAE,GAAG;SACP,CAAC;QACF,SAAS,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,GAAG,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QACpD,OAAO,OAAO,CAAC;IAChB,CAAC,EACD,CAAC,IAAI,EAAE,WAAW,CAAC,CACnB,CAAC;IAEF,MAAM,eAAe,GAAG,mBAAW,CAClC,CAAC,EAAU,EAAE,EAAE;QACd,cAAc,CAAC,CAAC,SAAS,EAAE,EAAE;YAC5B,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;YAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YACjD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;gBACjB,MAAM,IAAI,SAAS,CAAC,kBAAkB,CAAC,CAAC;aACxC;YAED,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YAEtB,OAAO,MAAM,CAAC;QACf,CAAC,CAAC,CAAC;QACH,SAAS,CAAC,CAAC,UAAU,EAAE,EAAE;YACxB,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACJ,CAAC,EACD,CAAC,IAAI,CAAC,CACN,CAAC;IAEF,MAAM,WAAW,GAAG,mBAAW,CAAC,CAAC,EAAU,EAAE,GAAuB,EAAE,EAAE;QACvE,SAAS,CAAC,CAAC,UAAU,EAAE,EAAE;YACxB,OAAO,UAAU,CAAC,GAAG,CACpB,CAAC,KAAK,EAAa,EAAE;gBACpB,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE;oBACpB,OAAO;wBACN,GAAG,KAAK;wBACR,KAAK,EAAE,GAAG;qBACV,CAAC;iBACF;gBAED,OAAO,KAAK,CAAC;YACd,CAAC,CACD,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,KAAK,GAAkB,eAAO,CAAC,GAAG,EAAE;QACzC,OAAO;YACN,aAAa;YACb,eAAe;YACf,WAAW;SACX,CAAC;IACH,CAAC,EAAE,CAAC,aAAa,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC,CAAC;IAElD,OAAO,CACN,mBAAC,kBAAkB,CAAC,QAAQ,kBAAC,KAAK,EAAE,KAAK,iBACvC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC,EAAE,EAAE,GAAG,EAAC,EAAE,EAAE;gBACvB,OAAO,6BAAgB,GAAG,EAAE,GAAG,IAAZ,EAAE,CAAc,CAAC;YACrC,CAAC,CAAC,EACD,QAAQ,aACoB,CAC9B,CAAC;AACH,CAAC,CAAC;AA5FW,QAAA,0BAA0B,8BA4FrC;AAEK,MAAM,cAAc,GAAG,CAAC,GAAuB,EAAE,EAAE;IACzD,MAAM,GAAG,GAAG,kBAAU,CAAC,kBAAkB,CAAC,CAAC;IAE3C,MAAM,CAAC,IAAI,CAAC,GAAG,gBAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;IAEtD,uBAAe,CAAC,GAAG,EAAE;QACpB,OAAO,GAAG,EAAE;YACX,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAEnB,uBAAe,CAAC,GAAG,EAAE;QACpB,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAExB,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAhBW,QAAA,cAAc,kBAgBzB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const calculateNextFrame: ({ time, currentFrame: startFrame, playbackSpeed, fps, actualLastFrame, actualFirstFrame, framesAdvanced, shouldLoop, }: {
|
|
2
|
+
time: number;
|
|
3
|
+
currentFrame: number;
|
|
4
|
+
playbackSpeed: number;
|
|
5
|
+
fps: number;
|
|
6
|
+
actualFirstFrame: number;
|
|
7
|
+
actualLastFrame: number;
|
|
8
|
+
framesAdvanced: number;
|
|
9
|
+
shouldLoop: boolean;
|
|
10
|
+
}) => {
|
|
11
|
+
nextFrame: number;
|
|
12
|
+
framesToAdvance: number;
|
|
13
|
+
hasEnded: boolean;
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=calculate-next-frame.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calculate-next-frame.d.ts","sourceRoot":"","sources":["../src/calculate-next-frame.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB;UAUxB,MAAM;kBACE,MAAM;mBACL,MAAM;SAChB,MAAM;sBACO,MAAM;qBACP,MAAM;oBACP,MAAM;gBACV,OAAO;;eACJ,MAAM;qBAAmB,MAAM;cAAY,OAAO;CA+BjE,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.calculateNextFrame = void 0;
|
|
4
|
+
const calculateNextFrame = ({ time, currentFrame: startFrame, playbackSpeed, fps, actualLastFrame, actualFirstFrame, framesAdvanced, shouldLoop, }) => {
|
|
5
|
+
const op = playbackSpeed < 0 ? Math.ceil : Math.floor;
|
|
6
|
+
const framesToAdvance = op((time * playbackSpeed) / (1000 / fps)) - framesAdvanced;
|
|
7
|
+
const nextFrame = framesToAdvance + startFrame;
|
|
8
|
+
const isCurrentFrameOutside = startFrame > actualLastFrame || startFrame < actualFirstFrame;
|
|
9
|
+
const isNextFrameOutside = nextFrame > actualLastFrame || nextFrame < actualFirstFrame;
|
|
10
|
+
const hasEnded = !shouldLoop && isNextFrameOutside && !isCurrentFrameOutside;
|
|
11
|
+
if (playbackSpeed > 0) {
|
|
12
|
+
// Play forwards
|
|
13
|
+
if (isNextFrameOutside) {
|
|
14
|
+
return {
|
|
15
|
+
nextFrame: actualFirstFrame,
|
|
16
|
+
framesToAdvance,
|
|
17
|
+
hasEnded,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
return { nextFrame, framesToAdvance, hasEnded };
|
|
21
|
+
}
|
|
22
|
+
// Reverse playback
|
|
23
|
+
if (isNextFrameOutside) {
|
|
24
|
+
return { nextFrame: actualLastFrame, framesToAdvance, hasEnded };
|
|
25
|
+
}
|
|
26
|
+
return { nextFrame, framesToAdvance, hasEnded };
|
|
27
|
+
};
|
|
28
|
+
exports.calculateNextFrame = calculateNextFrame;
|
|
29
|
+
//# sourceMappingURL=calculate-next-frame.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calculate-next-frame.js","sourceRoot":"","sources":["../src/calculate-next-frame.ts"],"names":[],"mappings":";;;AAAO,MAAM,kBAAkB,GAAG,CAAC,EAClC,IAAI,EACJ,YAAY,EAAE,UAAU,EACxB,aAAa,EACb,GAAG,EACH,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,UAAU,GAUV,EAAmE,EAAE;IACrE,MAAM,EAAE,GAAG,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;IACtD,MAAM,eAAe,GACpB,EAAE,CAAC,CAAC,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,cAAc,CAAC;IAE5D,MAAM,SAAS,GAAG,eAAe,GAAG,UAAU,CAAC;IAC/C,MAAM,qBAAqB,GAC1B,UAAU,GAAG,eAAe,IAAI,UAAU,GAAG,gBAAgB,CAAC;IAC/D,MAAM,kBAAkB,GACvB,SAAS,GAAG,eAAe,IAAI,SAAS,GAAG,gBAAgB,CAAC;IAE7D,MAAM,QAAQ,GAAG,CAAC,UAAU,IAAI,kBAAkB,IAAI,CAAC,qBAAqB,CAAC;IAC7E,IAAI,aAAa,GAAG,CAAC,EAAE;QACtB,gBAAgB;QAChB,IAAI,kBAAkB,EAAE;YACvB,OAAO;gBACN,SAAS,EAAE,gBAAgB;gBAC3B,eAAe;gBACf,QAAQ;aACR,CAAC;SACF;QAED,OAAO,EAAC,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAC,CAAC;KAC9C;IAED,mBAAmB;IACnB,IAAI,kBAAkB,EAAE;QACvB,OAAO,EAAC,SAAS,EAAE,eAAe,EAAE,eAAe,EAAE,QAAQ,EAAC,CAAC;KAC/D;IAED,OAAO,EAAC,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAC,CAAC;AAC/C,CAAC,CAAC;AAjDW,QAAA,kBAAkB,sBAiD7B"}
|
package/dist/error-boundary.d.ts
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
export declare class ErrorBoundary extends React.Component<{
|
|
3
3
|
onError: (error: Error) => void;
|
|
4
|
+
errorFallback: (info: {
|
|
5
|
+
error: Error;
|
|
6
|
+
}) => React.ReactNode;
|
|
4
7
|
}, {
|
|
5
|
-
hasError:
|
|
8
|
+
hasError: Error | null;
|
|
6
9
|
}> {
|
|
7
10
|
state: {
|
|
8
|
-
hasError:
|
|
11
|
+
hasError: null;
|
|
9
12
|
};
|
|
10
|
-
static getDerivedStateFromError(): {
|
|
11
|
-
hasError:
|
|
13
|
+
static getDerivedStateFromError(error: Error): {
|
|
14
|
+
hasError: Error;
|
|
12
15
|
};
|
|
13
16
|
componentDidCatch(error: Error): void;
|
|
14
17
|
render(): React.ReactNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-boundary.d.ts","sourceRoot":"","sources":["../src/error-boundary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,qBAAa,aAAc,SAAQ,KAAK,CAAC,SAAS,CACjD;IACC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"error-boundary.d.ts","sourceRoot":"","sources":["../src/error-boundary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,qBAAa,aAAc,SAAQ,KAAK,CAAC,SAAS,CACjD;IACC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAChC,aAAa,EAAE,CAAC,IAAI,EAAE;QAAC,KAAK,EAAE,KAAK,CAAA;KAAC,KAAK,KAAK,CAAC,SAAS,CAAC;CACzD,EACD;IAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAA;CAAC,CACxB;IACA,KAAK;;MAAoB;IACzB,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK;;;IAK5C,iBAAiB,CAAC,KAAK,EAAE,KAAK;IAI9B,MAAM;CAcN"}
|
package/dist/error-boundary.js
CHANGED
|
@@ -17,11 +17,11 @@ const errorStyle = {
|
|
|
17
17
|
class ErrorBoundary extends react_1.default.Component {
|
|
18
18
|
constructor() {
|
|
19
19
|
super(...arguments);
|
|
20
|
-
this.state = { hasError:
|
|
20
|
+
this.state = { hasError: null };
|
|
21
21
|
}
|
|
22
|
-
static getDerivedStateFromError() {
|
|
22
|
+
static getDerivedStateFromError(error) {
|
|
23
23
|
// Update state so the next render will show the fallback UI.
|
|
24
|
-
return { hasError:
|
|
24
|
+
return { hasError: error };
|
|
25
25
|
}
|
|
26
26
|
componentDidCatch(error) {
|
|
27
27
|
this.props.onError(error);
|
|
@@ -29,7 +29,9 @@ class ErrorBoundary extends react_1.default.Component {
|
|
|
29
29
|
render() {
|
|
30
30
|
if (this.state.hasError) {
|
|
31
31
|
// You can render any custom fallback UI
|
|
32
|
-
return (0, jsx_runtime_1.jsx)("div", Object.assign({ style: errorStyle }, { children:
|
|
32
|
+
return ((0, jsx_runtime_1.jsx)("div", Object.assign({ style: errorStyle }, { children: this.props.errorFallback({
|
|
33
|
+
error: this.state.hasError,
|
|
34
|
+
}) }), void 0));
|
|
33
35
|
}
|
|
34
36
|
return this.props.children;
|
|
35
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-boundary.js","sourceRoot":"","sources":["../src/error-boundary.tsx"],"names":[],"mappings":";;;;;;;AAAA,kDAA0B;AAE1B,MAAM,UAAU,GAAwB;IACvC,OAAO,EAAE,MAAM;IACf,cAAc,EAAE,QAAQ;IACxB,UAAU,EAAE,QAAQ;IACpB,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,MAAM;CACb,CAAC;AAEF,MAAa,aAAc,SAAQ,eAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"error-boundary.js","sourceRoot":"","sources":["../src/error-boundary.tsx"],"names":[],"mappings":";;;;;;;AAAA,kDAA0B;AAE1B,MAAM,UAAU,GAAwB;IACvC,OAAO,EAAE,MAAM;IACf,cAAc,EAAE,QAAQ;IACxB,UAAU,EAAE,QAAQ;IACpB,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,MAAM;CACb,CAAC;AAEF,MAAa,aAAc,SAAQ,eAAK,CAAC,SAMxC;IAND;;QAOC,UAAK,GAAG,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;IAwB1B,CAAC;IAvBA,MAAM,CAAC,wBAAwB,CAAC,KAAY;QAC3C,6DAA6D;QAC7D,OAAO,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAC;IAC1B,CAAC;IAED,iBAAiB,CAAC,KAAY;QAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM;QACL,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACxB,wCAAwC;YACxC,OAAO,CACN,8CAAK,KAAK,EAAE,UAAU,gBACpB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;oBACzB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;iBAC1B,CAAC,YACG,CACN,CAAC;SACF;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC5B,CAAC;CACD;AA/BD,sCA+BC"}
|