@twick/core 0.14.21 → 0.15.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.
- package/dist/index.cjs +6465 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +3919 -0
- package/dist/index.d.ts +3919 -0
- package/dist/index.js +6225 -0
- package/dist/index.js.map +1 -0
- package/package.json +28 -18
- package/tsconfig.project.json +1 -0
- package/lib/app/Logger.d.ts +0 -105
- package/lib/app/Logger.d.ts.map +0 -1
- package/lib/app/Logger.js +0 -77
- package/lib/app/PlaybackManager.d.ts +0 -55
- package/lib/app/PlaybackManager.d.ts.map +0 -1
- package/lib/app/PlaybackManager.js +0 -179
- package/lib/app/PlaybackStatus.d.ts +0 -30
- package/lib/app/PlaybackStatus.d.ts.map +0 -1
- package/lib/app/PlaybackStatus.js +0 -46
- package/lib/app/Player.d.ts +0 -130
- package/lib/app/Player.d.ts.map +0 -1
- package/lib/app/Player.js +0 -375
- package/lib/app/Project.d.ts +0 -145
- package/lib/app/Project.d.ts.map +0 -1
- package/lib/app/Project.js +0 -10
- package/lib/app/Renderer.d.ts +0 -90
- package/lib/app/Renderer.d.ts.map +0 -1
- package/lib/app/Renderer.js +0 -318
- package/lib/app/SharedWebGLContext.d.ts +0 -24
- package/lib/app/SharedWebGLContext.d.ts.map +0 -1
- package/lib/app/SharedWebGLContext.js +0 -200
- package/lib/app/Stage.d.ts +0 -30
- package/lib/app/Stage.d.ts.map +0 -1
- package/lib/app/Stage.js +0 -75
- package/lib/app/TimeEstimator.d.ts +0 -53
- package/lib/app/TimeEstimator.d.ts.map +0 -1
- package/lib/app/TimeEstimator.js +0 -70
- package/lib/app/index.d.ts +0 -16
- package/lib/app/index.d.ts.map +0 -1
- package/lib/app/index.js +0 -16
- package/lib/app/makeProject.d.ts +0 -15
- package/lib/app/makeProject.d.ts.map +0 -1
- package/lib/app/makeProject.js +0 -72
- package/lib/app/project-settings.d.ts +0 -8
- package/lib/app/project-settings.d.ts.map +0 -1
- package/lib/app/project-settings.js +0 -13
- package/lib/decorators/decorate.d.ts +0 -2
- package/lib/decorators/decorate.d.ts.map +0 -1
- package/lib/decorators/decorate.js +0 -10
- package/lib/decorators/deprecated.d.ts +0 -5
- package/lib/decorators/deprecated.d.ts.map +0 -1
- package/lib/decorators/deprecated.js +0 -23
- package/lib/decorators/index.d.ts +0 -9
- package/lib/decorators/index.d.ts.map +0 -1
- package/lib/decorators/index.js +0 -9
- package/lib/decorators/lazy.d.ts +0 -14
- package/lib/decorators/lazy.d.ts.map +0 -1
- package/lib/decorators/lazy.js +0 -27
- package/lib/decorators/threadable.d.ts +0 -2
- package/lib/decorators/threadable.d.ts.map +0 -1
- package/lib/decorators/threadable.js +0 -9
- package/lib/events/AsyncEventDispatcher.d.ts +0 -45
- package/lib/events/AsyncEventDispatcher.d.ts.map +0 -1
- package/lib/events/AsyncEventDispatcher.js +0 -33
- package/lib/events/EventDispatcher.d.ts +0 -38
- package/lib/events/EventDispatcher.d.ts.map +0 -1
- package/lib/events/EventDispatcher.js +0 -29
- package/lib/events/EventDispatcherBase.d.ts +0 -55
- package/lib/events/EventDispatcherBase.d.ts.map +0 -1
- package/lib/events/EventDispatcherBase.js +0 -68
- package/lib/events/FlagDispatcher.d.ts +0 -54
- package/lib/events/FlagDispatcher.d.ts.map +0 -1
- package/lib/events/FlagDispatcher.js +0 -63
- package/lib/events/ValueDispatcher.d.ts +0 -81
- package/lib/events/ValueDispatcher.d.ts.map +0 -1
- package/lib/events/ValueDispatcher.js +0 -97
- package/lib/events/index.d.ts +0 -11
- package/lib/events/index.d.ts.map +0 -1
- package/lib/events/index.js +0 -11
- package/lib/exporter/Exporter.d.ts +0 -101
- package/lib/exporter/Exporter.d.ts.map +0 -1
- package/lib/exporter/Exporter.js +0 -2
- package/lib/exporter/FFmpegExporter.d.ts +0 -50
- package/lib/exporter/FFmpegExporter.d.ts.map +0 -1
- package/lib/exporter/FFmpegExporter.js +0 -140
- package/lib/exporter/ImageExporter.d.ts +0 -34
- package/lib/exporter/ImageExporter.d.ts.map +0 -1
- package/lib/exporter/ImageExporter.js +0 -80
- package/lib/exporter/WasmExporter.d.ts +0 -19
- package/lib/exporter/WasmExporter.d.ts.map +0 -1
- package/lib/exporter/WasmExporter.js +0 -78
- package/lib/exporter/download-videos.d.ts +0 -3
- package/lib/exporter/download-videos.d.ts.map +0 -1
- package/lib/exporter/download-videos.js +0 -45
- package/lib/exporter/index.d.ts +0 -5
- package/lib/exporter/index.d.ts.map +0 -1
- package/lib/exporter/index.js +0 -5
- package/lib/flow/all.d.ts +0 -18
- package/lib/flow/all.d.ts.map +0 -1
- package/lib/flow/all.js +0 -25
- package/lib/flow/any.d.ts +0 -18
- package/lib/flow/any.d.ts.map +0 -1
- package/lib/flow/any.js +0 -25
- package/lib/flow/chain.d.ts +0 -36
- package/lib/flow/chain.d.ts.map +0 -1
- package/lib/flow/chain.js +0 -46
- package/lib/flow/delay.d.ts +0 -29
- package/lib/flow/delay.d.ts.map +0 -1
- package/lib/flow/delay.js +0 -39
- package/lib/flow/every.d.ts +0 -41
- package/lib/flow/every.d.ts.map +0 -1
- package/lib/flow/every.js +0 -61
- package/lib/flow/index.d.ts +0 -17
- package/lib/flow/index.d.ts.map +0 -1
- package/lib/flow/index.js +0 -17
- package/lib/flow/join.d.ts +0 -35
- package/lib/flow/join.d.ts.map +0 -1
- package/lib/flow/join.js +0 -33
- package/lib/flow/loop.d.ts +0 -58
- package/lib/flow/loop.d.ts.map +0 -1
- package/lib/flow/loop.js +0 -51
- package/lib/flow/loopFor.d.ts +0 -25
- package/lib/flow/loopFor.d.ts.map +0 -1
- package/lib/flow/loopFor.js +0 -42
- package/lib/flow/names.d.ts +0 -3
- package/lib/flow/names.d.ts.map +0 -1
- package/lib/flow/names.js +0 -11
- package/lib/flow/run.d.ts +0 -45
- package/lib/flow/run.d.ts.map +0 -1
- package/lib/flow/run.js +0 -14
- package/lib/flow/scheduling.d.ts +0 -18
- package/lib/flow/scheduling.d.ts.map +0 -1
- package/lib/flow/scheduling.js +0 -33
- package/lib/flow/sequence.d.ts +0 -22
- package/lib/flow/sequence.d.ts.map +0 -1
- package/lib/flow/sequence.js +0 -31
- package/lib/index.d.ts +0 -16
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js +0 -16
- package/lib/media/index.d.ts +0 -7
- package/lib/media/index.d.ts.map +0 -1
- package/lib/media/index.js +0 -7
- package/lib/media/loadImage.d.ts +0 -8
- package/lib/media/loadImage.d.ts.map +0 -1
- package/lib/media/loadImage.js +0 -29
- package/lib/plugin/DefaultPlugin.d.ts +0 -10
- package/lib/plugin/DefaultPlugin.d.ts.map +0 -1
- package/lib/plugin/DefaultPlugin.js +0 -17
- package/lib/plugin/Plugin.d.ts +0 -53
- package/lib/plugin/Plugin.d.ts.map +0 -1
- package/lib/plugin/Plugin.js +0 -2
- package/lib/plugin/index.d.ts +0 -3
- package/lib/plugin/index.d.ts.map +0 -1
- package/lib/plugin/index.js +0 -3
- package/lib/plugin/makePlugin.d.ts +0 -15
- package/lib/plugin/makePlugin.d.ts.map +0 -1
- package/lib/plugin/makePlugin.js +0 -16
- package/lib/scenes/GeneratorScene.d.ts +0 -95
- package/lib/scenes/GeneratorScene.d.ts.map +0 -1
- package/lib/scenes/GeneratorScene.js +0 -273
- package/lib/scenes/Inspectable.d.ts +0 -71
- package/lib/scenes/Inspectable.d.ts.map +0 -1
- package/lib/scenes/Inspectable.js +0 -4
- package/lib/scenes/LifecycleEvents.d.ts +0 -18
- package/lib/scenes/LifecycleEvents.d.ts.map +0 -1
- package/lib/scenes/LifecycleEvents.js +0 -45
- package/lib/scenes/Random.d.ts +0 -66
- package/lib/scenes/Random.d.ts.map +0 -1
- package/lib/scenes/Random.js +0 -101
- package/lib/scenes/Scene.d.ts +0 -298
- package/lib/scenes/Scene.d.ts.map +0 -1
- package/lib/scenes/Scene.js +0 -25
- package/lib/scenes/SceneState.d.ts +0 -34
- package/lib/scenes/SceneState.d.ts.map +0 -1
- package/lib/scenes/SceneState.js +0 -35
- package/lib/scenes/Shaders.d.ts +0 -63
- package/lib/scenes/Shaders.d.ts.map +0 -1
- package/lib/scenes/Shaders.js +0 -158
- package/lib/scenes/Slides.d.ts +0 -33
- package/lib/scenes/Slides.d.ts.map +0 -1
- package/lib/scenes/Slides.js +0 -115
- package/lib/scenes/Threadable.d.ts +0 -19
- package/lib/scenes/Threadable.d.ts.map +0 -1
- package/lib/scenes/Threadable.js +0 -4
- package/lib/scenes/Variables.d.ts +0 -24
- package/lib/scenes/Variables.d.ts.map +0 -1
- package/lib/scenes/Variables.js +0 -39
- package/lib/scenes/index.d.ts +0 -16
- package/lib/scenes/index.d.ts.map +0 -1
- package/lib/scenes/index.js +0 -16
- package/lib/signals/CompoundSignalContext.d.ts +0 -21
- package/lib/signals/CompoundSignalContext.d.ts.map +0 -1
- package/lib/signals/CompoundSignalContext.js +0 -73
- package/lib/signals/ComputedContext.d.ts +0 -14
- package/lib/signals/ComputedContext.d.ts.map +0 -1
- package/lib/signals/ComputedContext.js +0 -36
- package/lib/signals/DependencyContext.d.ts +0 -32
- package/lib/signals/DependencyContext.d.ts.map +0 -1
- package/lib/signals/DependencyContext.js +0 -87
- package/lib/signals/SignalContext.d.ts +0 -120
- package/lib/signals/SignalContext.d.ts.map +0 -1
- package/lib/signals/SignalContext.js +0 -245
- package/lib/signals/createComputed.d.ts +0 -3
- package/lib/signals/createComputed.d.ts.map +0 -1
- package/lib/signals/createComputed.js +0 -5
- package/lib/signals/createComputedAsync.d.ts +0 -4
- package/lib/signals/createComputedAsync.d.ts.map +0 -1
- package/lib/signals/createComputedAsync.js +0 -15
- package/lib/signals/createSignal.d.ts +0 -5
- package/lib/signals/createSignal.d.ts.map +0 -1
- package/lib/signals/createSignal.js +0 -6
- package/lib/signals/index.d.ts +0 -16
- package/lib/signals/index.d.ts.map +0 -1
- package/lib/signals/index.js +0 -16
- package/lib/signals/symbols.d.ts +0 -2
- package/lib/signals/symbols.d.ts.map +0 -1
- package/lib/signals/symbols.js +0 -2
- package/lib/signals/types.d.ts +0 -51
- package/lib/signals/types.d.ts.map +0 -1
- package/lib/signals/types.js +0 -2
- package/lib/signals/utils.d.ts +0 -5
- package/lib/signals/utils.d.ts.map +0 -1
- package/lib/signals/utils.js +0 -10
- package/lib/threading/Thread.d.ts +0 -77
- package/lib/threading/Thread.d.ts.map +0 -1
- package/lib/threading/Thread.js +0 -169
- package/lib/threading/ThreadGenerator.d.ts +0 -39
- package/lib/threading/ThreadGenerator.d.ts.map +0 -1
- package/lib/threading/ThreadGenerator.js +0 -17
- package/lib/threading/cancel.d.ts +0 -17
- package/lib/threading/cancel.d.ts.map +0 -1
- package/lib/threading/cancel.js +0 -26
- package/lib/threading/index.d.ts +0 -11
- package/lib/threading/index.d.ts.map +0 -1
- package/lib/threading/index.js +0 -11
- package/lib/threading/spawn.d.ts +0 -28
- package/lib/threading/spawn.d.ts.map +0 -1
- package/lib/threading/spawn.js +0 -30
- package/lib/threading/threads.d.ts +0 -46
- package/lib/threading/threads.d.ts.map +0 -1
- package/lib/threading/threads.js +0 -89
- package/lib/transitions/fadeTransition.d.ts +0 -8
- package/lib/transitions/fadeTransition.d.ts.map +0 -1
- package/lib/transitions/fadeTransition.js +0 -16
- package/lib/transitions/index.d.ts +0 -11
- package/lib/transitions/index.d.ts.map +0 -1
- package/lib/transitions/index.js +0 -11
- package/lib/transitions/slideTransition.d.ts +0 -18
- package/lib/transitions/slideTransition.d.ts.map +0 -1
- package/lib/transitions/slideTransition.js +0 -14
- package/lib/transitions/useTransition.d.ts +0 -10
- package/lib/transitions/useTransition.d.ts.map +0 -1
- package/lib/transitions/useTransition.js +0 -27
- package/lib/transitions/zoomInTransition.d.ts +0 -10
- package/lib/transitions/zoomInTransition.d.ts.map +0 -1
- package/lib/transitions/zoomInTransition.js +0 -33
- package/lib/transitions/zoomOutTransition.d.ts +0 -10
- package/lib/transitions/zoomOutTransition.d.ts.map +0 -1
- package/lib/transitions/zoomOutTransition.js +0 -33
- package/lib/tsconfig.build.tsbuildinfo +0 -1
- package/lib/tweening/helpers.d.ts +0 -5
- package/lib/tweening/helpers.d.ts.map +0 -1
- package/lib/tweening/helpers.js +0 -16
- package/lib/tweening/index.d.ts +0 -11
- package/lib/tweening/index.d.ts.map +0 -1
- package/lib/tweening/index.js +0 -11
- package/lib/tweening/interpolationFunctions.d.ts +0 -38
- package/lib/tweening/interpolationFunctions.d.ts.map +0 -1
- package/lib/tweening/interpolationFunctions.js +0 -107
- package/lib/tweening/spring.d.ts +0 -20
- package/lib/tweening/spring.d.ts.map +0 -1
- package/lib/tweening/spring.js +0 -103
- package/lib/tweening/timingFunctions.d.ts +0 -46
- package/lib/tweening/timingFunctions.d.ts.map +0 -1
- package/lib/tweening/timingFunctions.js +0 -233
- package/lib/tweening/tween.d.ts +0 -3
- package/lib/tweening/tween.d.ts.map +0 -1
- package/lib/tweening/tween.js +0 -21
- package/lib/types/BBox.d.ts +0 -73
- package/lib/types/BBox.d.ts.map +0 -1
- package/lib/types/BBox.js +0 -249
- package/lib/types/Canvas.d.ts +0 -3
- package/lib/types/Canvas.d.ts.map +0 -1
- package/lib/types/Canvas.js +0 -2
- package/lib/types/Color.d.ts +0 -65
- package/lib/types/Color.d.ts.map +0 -1
- package/lib/types/Color.js +0 -185
- package/lib/types/Matrix.d.ts +0 -3
- package/lib/types/Matrix.d.ts.map +0 -1
- package/lib/types/Matrix.js +0 -10
- package/lib/types/Matrix2D.d.ts +0 -363
- package/lib/types/Matrix2D.d.ts.map +0 -1
- package/lib/types/Matrix2D.js +0 -554
- package/lib/types/Origin.d.ts +0 -17
- package/lib/types/Origin.d.ts.map +0 -1
- package/lib/types/Origin.js +0 -53
- package/lib/types/Spacing.d.ts +0 -36
- package/lib/types/Spacing.d.ts.map +0 -1
- package/lib/types/Spacing.js +0 -70
- package/lib/types/Type.d.ts +0 -9
- package/lib/types/Type.d.ts.map +0 -1
- package/lib/types/Type.js +0 -5
- package/lib/types/Vector.d.ts +0 -203
- package/lib/types/Vector.d.ts.map +0 -1
- package/lib/types/Vector.js +0 -355
- package/lib/types/alignment-enums.d.ts +0 -22
- package/lib/types/alignment-enums.d.ts.map +0 -1
- package/lib/types/alignment-enums.js +0 -25
- package/lib/types/index.d.ts +0 -17
- package/lib/types/index.d.ts.map +0 -1
- package/lib/types/index.js +0 -17
- package/lib/types/vector-transformations.d.ts +0 -20
- package/lib/types/vector-transformations.d.ts.map +0 -1
- package/lib/types/vector-transformations.js +0 -31
- package/lib/utils/DetailedError.d.ts +0 -24
- package/lib/utils/DetailedError.d.ts.map +0 -1
- package/lib/utils/DetailedError.js +0 -16
- package/lib/utils/ExperimentalError.d.ts +0 -10
- package/lib/utils/ExperimentalError.d.ts.map +0 -1
- package/lib/utils/ExperimentalError.js +0 -32
- package/lib/utils/Semaphore.d.ts +0 -12
- package/lib/utils/Semaphore.d.ts.map +0 -1
- package/lib/utils/Semaphore.js +0 -25
- package/lib/utils/beginSlide.d.ts +0 -3
- package/lib/utils/beginSlide.d.ts.map +0 -1
- package/lib/utils/beginSlide.js +0 -12
- package/lib/utils/capitalize.d.ts +0 -2
- package/lib/utils/capitalize.d.ts.map +0 -1
- package/lib/utils/capitalize.js +0 -4
- package/lib/utils/createRef.d.ts +0 -15
- package/lib/utils/createRef.d.ts.map +0 -1
- package/lib/utils/createRef.js +0 -21
- package/lib/utils/createRefArray.d.ts +0 -27
- package/lib/utils/createRefArray.d.ts.map +0 -1
- package/lib/utils/createRefArray.js +0 -49
- package/lib/utils/createRefMap.d.ts +0 -50
- package/lib/utils/createRefMap.d.ts.map +0 -1
- package/lib/utils/createRefMap.js +0 -77
- package/lib/utils/debug.d.ts +0 -24
- package/lib/utils/debug.d.ts.map +0 -1
- package/lib/utils/debug.js +0 -47
- package/lib/utils/deprecate.d.ts +0 -9
- package/lib/utils/deprecate.d.ts.map +0 -1
- package/lib/utils/deprecate.js +0 -15
- package/lib/utils/errorToLog.d.ts +0 -3
- package/lib/utils/errorToLog.d.ts.map +0 -1
- package/lib/utils/errorToLog.js +0 -8
- package/lib/utils/experimentalLog.d.ts +0 -3
- package/lib/utils/experimentalLog.d.ts.map +0 -1
- package/lib/utils/experimentalLog.js +0 -10
- package/lib/utils/getContext.d.ts +0 -2
- package/lib/utils/getContext.d.ts.map +0 -1
- package/lib/utils/getContext.js +0 -8
- package/lib/utils/index.d.ts +0 -26
- package/lib/utils/index.d.ts.map +0 -1
- package/lib/utils/index.js +0 -26
- package/lib/utils/math.d.ts +0 -15
- package/lib/utils/math.d.ts.map +0 -1
- package/lib/utils/math.js +0 -15
- package/lib/utils/range.d.ts +0 -40
- package/lib/utils/range.d.ts.map +0 -1
- package/lib/utils/range.js +0 -18
- package/lib/utils/useContext.d.ts +0 -13
- package/lib/utils/useContext.d.ts.map +0 -1
- package/lib/utils/useContext.js +0 -18
- package/lib/utils/usePlayback.d.ts +0 -8
- package/lib/utils/usePlayback.d.ts.map +0 -1
- package/lib/utils/usePlayback.js +0 -20
- package/lib/utils/useScene.d.ts +0 -17
- package/lib/utils/useScene.d.ts.map +0 -1
- package/lib/utils/useScene.js +0 -33
- package/lib/utils/useThread.d.ts +0 -8
- package/lib/utils/useThread.d.ts.map +0 -1
- package/lib/utils/useThread.js +0 -24
- package/lib/utils/useTime.d.ts +0 -19
- package/lib/utils/useTime.d.ts.map +0 -1
- package/lib/utils/useTime.js +0 -22
- package/project.d.ts +0 -24
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import loadMp4Module from 'mp4-wasm';
|
|
2
|
-
import { download } from './download-videos';
|
|
3
|
-
export class WasmExporter {
|
|
4
|
-
static async create(project, settings) {
|
|
5
|
-
return new WasmExporter(project, settings);
|
|
6
|
-
}
|
|
7
|
-
constructor(project, settings) {
|
|
8
|
-
this.project = project;
|
|
9
|
-
this.settings = settings;
|
|
10
|
-
}
|
|
11
|
-
async start() {
|
|
12
|
-
const resp = await fetch('/@mp4-wasm');
|
|
13
|
-
const buffer = await resp.arrayBuffer();
|
|
14
|
-
const mp4 = await loadMp4Module({
|
|
15
|
-
wasmBinary: buffer,
|
|
16
|
-
});
|
|
17
|
-
this.encoder = mp4.createWebCodecsEncoder({
|
|
18
|
-
width: this.settings.size.x,
|
|
19
|
-
height: this.settings.size.y,
|
|
20
|
-
fps: this.project.settings.rendering.fps,
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
async handleFrame(canvas) {
|
|
24
|
-
const frame = new VideoFrame(canvas, { timestamp: 0 });
|
|
25
|
-
await this.encoder.addFrame(frame);
|
|
26
|
-
frame.close();
|
|
27
|
-
}
|
|
28
|
-
async stop() {
|
|
29
|
-
const buf = await this.encoder.end();
|
|
30
|
-
const formData = new FormData();
|
|
31
|
-
formData.append('file', new Blob([buf], { type: 'video/mp4' }), 'video.mp4');
|
|
32
|
-
formData.append('tempDir', `twick-${this.settings.name}-${this.settings.hiddenFolderId}`);
|
|
33
|
-
await fetch('/twick-ffmpeg-decoder/finished', {
|
|
34
|
-
method: 'POST',
|
|
35
|
-
headers: {
|
|
36
|
-
// eslint-disable-next-line
|
|
37
|
-
'Content-Type': 'application/json',
|
|
38
|
-
},
|
|
39
|
-
body: JSON.stringify({}),
|
|
40
|
-
});
|
|
41
|
-
await fetch('/uploadVideoFile', {
|
|
42
|
-
method: 'POST',
|
|
43
|
-
body: formData,
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
async generateAudio(assets, startFrame, endFrame) {
|
|
47
|
-
await fetch('/audio-processing/generate-audio', {
|
|
48
|
-
method: 'POST',
|
|
49
|
-
// TODO: add type and validate on the other side
|
|
50
|
-
body: JSON.stringify({
|
|
51
|
-
tempDir: `twick-${this.settings.name}-${this.settings.hiddenFolderId}`,
|
|
52
|
-
assets,
|
|
53
|
-
startFrame,
|
|
54
|
-
endFrame,
|
|
55
|
-
fps: this.settings.fps,
|
|
56
|
-
}),
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
async mergeMedia() {
|
|
60
|
-
const outputFilename = this.settings.name;
|
|
61
|
-
const tempDir = `twick-${this.settings.name}-${this.settings.hiddenFolderId}`;
|
|
62
|
-
await fetch('/audio-processing/merge-media', {
|
|
63
|
-
method: 'POST',
|
|
64
|
-
// TODO: add type and validate on the other side
|
|
65
|
-
body: JSON.stringify({
|
|
66
|
-
outputFilename,
|
|
67
|
-
tempDir,
|
|
68
|
-
format: 'mp4',
|
|
69
|
-
}),
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
async downloadVideos(assets) {
|
|
73
|
-
await download(assets);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
WasmExporter.id = '@twick/core/wasm';
|
|
77
|
-
WasmExporter.displayName = 'Video (Wasm)';
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2FzbUV4cG9ydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4cG9ydGVyL1dhc21FeHBvcnRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLGFBQWEsTUFBTSxVQUFVLENBQUM7QUFJckMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBRTNDLE1BQU0sT0FBTyxZQUFZO0lBSWhCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQWdCLEVBQUUsUUFBMEI7UUFDckUsT0FBTyxJQUFJLFlBQVksQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFlBQ21CLE9BQWdCLEVBQ2hCLFFBQTBCO1FBRDFCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDMUMsQ0FBQztJQUVHLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLE1BQU0sSUFBSSxHQUFHLE1BQU0sS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRXhDLE1BQU0sR0FBRyxHQUFHLE1BQU0sYUFBYSxDQUFDO1lBQzlCLFVBQVUsRUFBRSxNQUFNO1NBQ25CLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLHNCQUFzQixDQUFDO1lBQ3hDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzNCLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVCLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRztTQUN6QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBSU0sS0FBSyxDQUFDLFdBQVcsQ0FBQyxNQUF5QjtRQUNoRCxNQUFN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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"download-videos.d.ts","sourceRoot":"","sources":["../../src/exporter/download-videos.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,QAAQ,CAAC;AAEtC,wBAAsB,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA0DnE"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
export async function download(assets) {
|
|
2
|
-
const videoRanges = new Map();
|
|
3
|
-
assets.forEach(frameAssets => {
|
|
4
|
-
frameAssets.forEach(asset => {
|
|
5
|
-
if (asset.type !== 'video' || asset.decoder !== 'ffmpeg') {
|
|
6
|
-
return;
|
|
7
|
-
}
|
|
8
|
-
if (videoRanges.has(asset.src)) {
|
|
9
|
-
const range = videoRanges.get(asset.src);
|
|
10
|
-
range.start = Math.min(range.start, asset.currentTime);
|
|
11
|
-
range.end = Math.max(range.end, asset.currentTime);
|
|
12
|
-
return;
|
|
13
|
-
}
|
|
14
|
-
videoRanges.set(asset.src, {
|
|
15
|
-
start: asset.currentTime,
|
|
16
|
-
end: asset.currentTime,
|
|
17
|
-
});
|
|
18
|
-
});
|
|
19
|
-
});
|
|
20
|
-
const videoDurations = Array.from(videoRanges.entries()).map(([src, { start, end }]) => ({
|
|
21
|
-
src,
|
|
22
|
-
startTime: start,
|
|
23
|
-
endTime: end,
|
|
24
|
-
}));
|
|
25
|
-
videoDurations.forEach(({ src, startTime, endTime }) => {
|
|
26
|
-
console.log(`downloading ${src} from ${startTime}s to ${endTime}s`);
|
|
27
|
-
});
|
|
28
|
-
const response = await fetch('/twick-ffmpeg-decoder/download-video-chunks', {
|
|
29
|
-
method: 'POST',
|
|
30
|
-
headers: {
|
|
31
|
-
// eslint-disable-next-line
|
|
32
|
-
'Content-Type': 'application/json',
|
|
33
|
-
},
|
|
34
|
-
body: JSON.stringify(videoDurations),
|
|
35
|
-
});
|
|
36
|
-
if (!response.ok) {
|
|
37
|
-
throw new Error(`HTTP error! status: ${response.status}`);
|
|
38
|
-
}
|
|
39
|
-
const result = await response.json();
|
|
40
|
-
if (!result.success) {
|
|
41
|
-
throw new Error(`Error downloading video chunks: ${result.error}`);
|
|
42
|
-
}
|
|
43
|
-
console.log('finished downloading');
|
|
44
|
-
}
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQtdmlkZW9zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V4cG9ydGVyL2Rvd25sb2FkLXZpZGVvcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsS0FBSyxVQUFVLFFBQVEsQ0FBQyxNQUFxQjtJQUNsRCxNQUFNLFdBQVcsR0FBOEMsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUV6RSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1FBQzNCLFdBQVcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDMUIsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUN6RCxPQUFPO1lBQ1QsQ0FBQztZQUVELElBQUksV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsTUFBTSxLQUFLLEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFFLENBQUM7Z0JBQzFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDdkQsS0FBSyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUNuRCxPQUFPO1lBQ1QsQ0FBQztZQUVELFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRTtnQkFDekIsS0FBSyxFQUFFLEtBQUssQ0FBQyxXQUFXO2dCQUN4QixHQUFHLEVBQUUsS0FBSyxDQUFDLFdBQVc7YUFDdkIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsR0FBRyxDQUMxRCxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUMsS0FBSyxFQUFFLEdBQUcsRUFBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEIsR0FBRztRQUNILFNBQVMsRUFBRSxLQUFLO1FBQ2hCLE9BQU8sRUFBRSxHQUFHO0tBQ2IsQ0FBQyxDQUNILENBQUM7SUFFRixjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBQyxFQUFFLEVBQUU7UUFDbkQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLEdBQUcsU0FBUyxTQUFTLFFBQVEsT0FBTyxHQUFHLENBQUMsQ0FBQztJQUN0RSxDQUFDLENBQUMsQ0FBQztJQUVILE1BQU0sUUFBUSxHQUFHLE1BQU0sS0FBSyxDQUMxQiw2Q0FBNkMsRUFDN0M7UUFDRSxNQUFNLEVBQUUsTUFBTTtRQUNkLE9BQU8sRUFBRTtZQUNQLDJCQUEyQjtZQUMzQixjQUFjLEVBQUUsa0JBQWtCO1NBQ25DO1FBQ0QsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDO0tBQ3JDLENBQ0YsQ0FBQztJQUVGLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELE1BQU0sTUFBTSxHQUFHLE1BQU0sUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBRXJDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsQ0FBQztBQUN0QyxDQUFDIn0=
|
package/lib/exporter/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/exporter/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC"}
|
package/lib/exporter/index.js
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export * from './Exporter';
|
|
2
|
-
export * from './FFmpegExporter';
|
|
3
|
-
export * from './ImageExporter';
|
|
4
|
-
export * from './WasmExporter';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXhwb3J0ZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsZ0JBQWdCLENBQUMifQ==
|
package/lib/flow/all.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { ThreadGenerator } from '../threading';
|
|
2
|
-
/**
|
|
3
|
-
* Run all tasks concurrently and wait for all of them to finish.
|
|
4
|
-
*
|
|
5
|
-
* @example
|
|
6
|
-
* ```ts
|
|
7
|
-
* // current time: 0s
|
|
8
|
-
* yield* all(
|
|
9
|
-
* rect.fill('#ff0000', 2),
|
|
10
|
-
* rect.opacity(1, 1),
|
|
11
|
-
* );
|
|
12
|
-
* // current time: 2s
|
|
13
|
-
* ```
|
|
14
|
-
*
|
|
15
|
-
* @param tasks - A list of tasks to run.
|
|
16
|
-
*/
|
|
17
|
-
export declare function all(...tasks: ThreadGenerator[]): ThreadGenerator;
|
|
18
|
-
//# sourceMappingURL=all.d.ts.map
|
package/lib/flow/all.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"all.d.ts","sourceRoot":"","sources":["../../src/flow/all.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAIlD;;;;;;;;;;;;;;GAcG;AACH,wBAAiB,GAAG,CAAC,GAAG,KAAK,EAAE,eAAe,EAAE,GAAG,eAAe,CAKjE"}
|
package/lib/flow/all.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { decorate, threadable } from '../decorators';
|
|
2
|
-
import { join } from './join';
|
|
3
|
-
decorate(all, threadable());
|
|
4
|
-
/**
|
|
5
|
-
* Run all tasks concurrently and wait for all of them to finish.
|
|
6
|
-
*
|
|
7
|
-
* @example
|
|
8
|
-
* ```ts
|
|
9
|
-
* // current time: 0s
|
|
10
|
-
* yield* all(
|
|
11
|
-
* rect.fill('#ff0000', 2),
|
|
12
|
-
* rect.opacity(1, 1),
|
|
13
|
-
* );
|
|
14
|
-
* // current time: 2s
|
|
15
|
-
* ```
|
|
16
|
-
*
|
|
17
|
-
* @param tasks - A list of tasks to run.
|
|
18
|
-
*/
|
|
19
|
-
export function* all(...tasks) {
|
|
20
|
-
for (const task of tasks) {
|
|
21
|
-
yield task;
|
|
22
|
-
}
|
|
23
|
-
yield* join(...tasks);
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Zsb3cvYWxsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFFNUIsUUFBUSxDQUFDLEdBQUcsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0FBQzVCOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsTUFBTSxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUF3QjtJQUM5QyxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3pCLE1BQU0sSUFBSSxDQUFDO0lBQ2IsQ0FBQztJQUNELEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO0FBQ3hCLENBQUMifQ==
|
package/lib/flow/any.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { ThreadGenerator } from '../threading';
|
|
2
|
-
/**
|
|
3
|
-
* Run all tasks concurrently and wait for any of them to finish.
|
|
4
|
-
*
|
|
5
|
-
* @example
|
|
6
|
-
* ```ts
|
|
7
|
-
* // current time: 0s
|
|
8
|
-
* yield* any(
|
|
9
|
-
* rect.fill('#ff0000', 2),
|
|
10
|
-
* rect.opacity(1, 1),
|
|
11
|
-
* );
|
|
12
|
-
* // current time: 1s
|
|
13
|
-
* ```
|
|
14
|
-
*
|
|
15
|
-
* @param tasks - A list of tasks to run.
|
|
16
|
-
*/
|
|
17
|
-
export declare function any(...tasks: ThreadGenerator[]): ThreadGenerator;
|
|
18
|
-
//# sourceMappingURL=any.d.ts.map
|
package/lib/flow/any.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"any.d.ts","sourceRoot":"","sources":["../../src/flow/any.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAIlD;;;;;;;;;;;;;;GAcG;AACH,wBAAiB,GAAG,CAAC,GAAG,KAAK,EAAE,eAAe,EAAE,GAAG,eAAe,CAKjE"}
|
package/lib/flow/any.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { decorate, threadable } from '../decorators';
|
|
2
|
-
import { join } from './join';
|
|
3
|
-
decorate(any, threadable());
|
|
4
|
-
/**
|
|
5
|
-
* Run all tasks concurrently and wait for any of them to finish.
|
|
6
|
-
*
|
|
7
|
-
* @example
|
|
8
|
-
* ```ts
|
|
9
|
-
* // current time: 0s
|
|
10
|
-
* yield* any(
|
|
11
|
-
* rect.fill('#ff0000', 2),
|
|
12
|
-
* rect.opacity(1, 1),
|
|
13
|
-
* );
|
|
14
|
-
* // current time: 1s
|
|
15
|
-
* ```
|
|
16
|
-
*
|
|
17
|
-
* @param tasks - A list of tasks to run.
|
|
18
|
-
*/
|
|
19
|
-
export function* any(...tasks) {
|
|
20
|
-
for (const task of tasks) {
|
|
21
|
-
yield task;
|
|
22
|
-
}
|
|
23
|
-
yield* join(false, ...tasks);
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW55LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Zsb3cvYW55LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFFNUIsUUFBUSxDQUFDLEdBQUcsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0FBQzVCOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsTUFBTSxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUF3QjtJQUM5QyxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3pCLE1BQU0sSUFBSSxDQUFDO0lBQ2IsQ0FBQztJQUNELEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxLQUFLLENBQUMsQ0FBQztBQUMvQixDQUFDIn0=
|
package/lib/flow/chain.d.ts
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import type { ThreadGenerator } from '../threading';
|
|
2
|
-
/**
|
|
3
|
-
* Run tasks one after another.
|
|
4
|
-
*
|
|
5
|
-
* @example
|
|
6
|
-
* ```ts
|
|
7
|
-
* // current time: 0s
|
|
8
|
-
* yield* chain(
|
|
9
|
-
* rect.fill('#ff0000', 2),
|
|
10
|
-
* rect.opacity(1, 1),
|
|
11
|
-
* );
|
|
12
|
-
* // current time: 3s
|
|
13
|
-
* ```
|
|
14
|
-
*
|
|
15
|
-
* Note that the same animation can be written as:
|
|
16
|
-
* ```ts
|
|
17
|
-
* yield* rect.fill('#ff0000', 2),
|
|
18
|
-
* yield* rect.opacity(1, 1),
|
|
19
|
-
* ```
|
|
20
|
-
*
|
|
21
|
-
* The reason `chain` exists is to make it easier to pass it to other flow
|
|
22
|
-
* functions. For example:
|
|
23
|
-
* ```ts
|
|
24
|
-
* yield* all(
|
|
25
|
-
* rect.radius(20, 3),
|
|
26
|
-
* chain(
|
|
27
|
-
* rect.fill('#ff0000', 2),
|
|
28
|
-
* rect.opacity(1, 1),
|
|
29
|
-
* ),
|
|
30
|
-
* );
|
|
31
|
-
* ```
|
|
32
|
-
*
|
|
33
|
-
* @param tasks - A list of tasks to run.
|
|
34
|
-
*/
|
|
35
|
-
export declare function chain(...tasks: (ThreadGenerator | Callback)[]): ThreadGenerator;
|
|
36
|
-
//# sourceMappingURL=chain.d.ts.map
|
package/lib/flow/chain.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../src/flow/chain.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAGlD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAiB,KAAK,CACpB,GAAG,KAAK,EAAE,CAAC,eAAe,GAAG,QAAQ,CAAC,EAAE,GACvC,eAAe,CAQjB"}
|
package/lib/flow/chain.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { decorate, threadable } from '../decorators';
|
|
2
|
-
decorate(chain, threadable());
|
|
3
|
-
/**
|
|
4
|
-
* Run tasks one after another.
|
|
5
|
-
*
|
|
6
|
-
* @example
|
|
7
|
-
* ```ts
|
|
8
|
-
* // current time: 0s
|
|
9
|
-
* yield* chain(
|
|
10
|
-
* rect.fill('#ff0000', 2),
|
|
11
|
-
* rect.opacity(1, 1),
|
|
12
|
-
* );
|
|
13
|
-
* // current time: 3s
|
|
14
|
-
* ```
|
|
15
|
-
*
|
|
16
|
-
* Note that the same animation can be written as:
|
|
17
|
-
* ```ts
|
|
18
|
-
* yield* rect.fill('#ff0000', 2),
|
|
19
|
-
* yield* rect.opacity(1, 1),
|
|
20
|
-
* ```
|
|
21
|
-
*
|
|
22
|
-
* The reason `chain` exists is to make it easier to pass it to other flow
|
|
23
|
-
* functions. For example:
|
|
24
|
-
* ```ts
|
|
25
|
-
* yield* all(
|
|
26
|
-
* rect.radius(20, 3),
|
|
27
|
-
* chain(
|
|
28
|
-
* rect.fill('#ff0000', 2),
|
|
29
|
-
* rect.opacity(1, 1),
|
|
30
|
-
* ),
|
|
31
|
-
* );
|
|
32
|
-
* ```
|
|
33
|
-
*
|
|
34
|
-
* @param tasks - A list of tasks to run.
|
|
35
|
-
*/
|
|
36
|
-
export function* chain(...tasks) {
|
|
37
|
-
for (const generator of tasks) {
|
|
38
|
-
if ('next' in generator) {
|
|
39
|
-
yield* generator;
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
generator();
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZmxvdy9jaGFpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUduRCxRQUFRLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7QUFDOUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ0NHO0FBQ0gsTUFBTSxTQUFTLENBQUMsQ0FBQyxLQUFLLENBQ3BCLEdBQUcsS0FBcUM7SUFFeEMsS0FBSyxNQUFNLFNBQVMsSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUM5QixJQUFJLE1BQU0sSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUN4QixLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDbkIsQ0FBQzthQUFNLENBQUM7WUFDTixTQUFTLEVBQUUsQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0FBQ0gsQ0FBQyJ9
|
package/lib/flow/delay.d.ts
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import type { ThreadGenerator } from '../threading';
|
|
2
|
-
/**
|
|
3
|
-
* Run the given generator or callback after a specific amount of time.
|
|
4
|
-
*
|
|
5
|
-
* @example
|
|
6
|
-
* ```ts
|
|
7
|
-
* yield* delay(1, rect.fill('#ff0000', 2));
|
|
8
|
-
* ```
|
|
9
|
-
*
|
|
10
|
-
* Note that the same animation can be written as:
|
|
11
|
-
* ```ts
|
|
12
|
-
* yield* waitFor(1),
|
|
13
|
-
* yield* rect.fill('#ff0000', 2),
|
|
14
|
-
* ```
|
|
15
|
-
*
|
|
16
|
-
* The reason `delay` exists is to make it easier to pass it to other flow
|
|
17
|
-
* functions. For example:
|
|
18
|
-
* ```ts
|
|
19
|
-
* yield* all(
|
|
20
|
-
* rect.opacity(1, 3),
|
|
21
|
-
* delay(1, rect.fill('#ff0000', 2));
|
|
22
|
-
* );
|
|
23
|
-
* ```
|
|
24
|
-
*
|
|
25
|
-
* @param time - The delay in seconds
|
|
26
|
-
* @param task - The task or callback to run after the delay.
|
|
27
|
-
*/
|
|
28
|
-
export declare function delay(time: number, task: ThreadGenerator | Callback): ThreadGenerator;
|
|
29
|
-
//# sourceMappingURL=delay.d.ts.map
|
package/lib/flow/delay.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"delay.d.ts","sourceRoot":"","sources":["../../src/flow/delay.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAIlD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAiB,KAAK,CACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,eAAe,GAAG,QAAQ,GAC/B,eAAe,CAOjB"}
|
package/lib/flow/delay.js
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { decorate, threadable } from '../decorators';
|
|
2
|
-
import { waitFor } from './scheduling';
|
|
3
|
-
decorate(delay, threadable());
|
|
4
|
-
/**
|
|
5
|
-
* Run the given generator or callback after a specific amount of time.
|
|
6
|
-
*
|
|
7
|
-
* @example
|
|
8
|
-
* ```ts
|
|
9
|
-
* yield* delay(1, rect.fill('#ff0000', 2));
|
|
10
|
-
* ```
|
|
11
|
-
*
|
|
12
|
-
* Note that the same animation can be written as:
|
|
13
|
-
* ```ts
|
|
14
|
-
* yield* waitFor(1),
|
|
15
|
-
* yield* rect.fill('#ff0000', 2),
|
|
16
|
-
* ```
|
|
17
|
-
*
|
|
18
|
-
* The reason `delay` exists is to make it easier to pass it to other flow
|
|
19
|
-
* functions. For example:
|
|
20
|
-
* ```ts
|
|
21
|
-
* yield* all(
|
|
22
|
-
* rect.opacity(1, 3),
|
|
23
|
-
* delay(1, rect.fill('#ff0000', 2));
|
|
24
|
-
* );
|
|
25
|
-
* ```
|
|
26
|
-
*
|
|
27
|
-
* @param time - The delay in seconds
|
|
28
|
-
* @param task - The task or callback to run after the delay.
|
|
29
|
-
*/
|
|
30
|
-
export function* delay(time, task) {
|
|
31
|
-
yield* waitFor(time);
|
|
32
|
-
if ('next' in task) {
|
|
33
|
-
yield* task;
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
task();
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsYXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZmxvdy9kZWxheS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBRXJDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztBQUM5Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlCRztBQUNILE1BQU0sU0FBUyxDQUFDLENBQUMsS0FBSyxDQUNwQixJQUFZLEVBQ1osSUFBZ0M7SUFFaEMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JCLElBQUksTUFBTSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ25CLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNkLENBQUM7U0FBTSxDQUFDO1FBQ04sSUFBSSxFQUFFLENBQUM7SUFDVCxDQUFDO0FBQ0gsQ0FBQyJ9
|
package/lib/flow/every.d.ts
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import type { ThreadGenerator } from '../threading';
|
|
2
|
-
export interface EveryCallback {
|
|
3
|
-
/**
|
|
4
|
-
* A callback called by {@link EveryTimer} every N seconds.
|
|
5
|
-
*
|
|
6
|
-
* @param tick - The amount of times the timer has ticked.
|
|
7
|
-
*/
|
|
8
|
-
(tick: number): void;
|
|
9
|
-
}
|
|
10
|
-
export interface EveryTimer {
|
|
11
|
-
/**
|
|
12
|
-
* The generator responsible for running this timer.
|
|
13
|
-
*/
|
|
14
|
-
runner: ThreadGenerator;
|
|
15
|
-
setInterval(value: number): void;
|
|
16
|
-
setCallback(value: EveryCallback): void;
|
|
17
|
-
/**
|
|
18
|
-
* Wait until the timer ticks.
|
|
19
|
-
*/
|
|
20
|
-
sync(): ThreadGenerator;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Call the given callback every N seconds.
|
|
24
|
-
*
|
|
25
|
-
* @example
|
|
26
|
-
* ```ts
|
|
27
|
-
* const timer = every(2, time => console.log(time));
|
|
28
|
-
* yield timer.runner;
|
|
29
|
-
*
|
|
30
|
-
* // current time: 0s
|
|
31
|
-
* yield* waitFor(5);
|
|
32
|
-
* // current time: 5s
|
|
33
|
-
* yield* timer.sync();
|
|
34
|
-
* // current time: 6s
|
|
35
|
-
* ```
|
|
36
|
-
*
|
|
37
|
-
* @param interval - The interval between subsequent calls.
|
|
38
|
-
* @param callback - The callback to be called.
|
|
39
|
-
*/
|
|
40
|
-
export declare function every(interval: number, callback: EveryCallback): EveryTimer;
|
|
41
|
-
//# sourceMappingURL=every.d.ts.map
|
package/lib/flow/every.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"every.d.ts","sourceRoot":"","sources":["../../src/flow/every.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAGlD,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,MAAM,EAAE,eAAe,CAAC;IACxB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;IAExC;;OAEG;IACH,IAAI,IAAI,eAAe,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,UAAU,CAwC3E"}
|
package/lib/flow/every.js
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { decorate, threadable } from '../decorators';
|
|
2
|
-
import { usePlayback } from '../utils';
|
|
3
|
-
/**
|
|
4
|
-
* Call the given callback every N seconds.
|
|
5
|
-
*
|
|
6
|
-
* @example
|
|
7
|
-
* ```ts
|
|
8
|
-
* const timer = every(2, time => console.log(time));
|
|
9
|
-
* yield timer.runner;
|
|
10
|
-
*
|
|
11
|
-
* // current time: 0s
|
|
12
|
-
* yield* waitFor(5);
|
|
13
|
-
* // current time: 5s
|
|
14
|
-
* yield* timer.sync();
|
|
15
|
-
* // current time: 6s
|
|
16
|
-
* ```
|
|
17
|
-
*
|
|
18
|
-
* @param interval - The interval between subsequent calls.
|
|
19
|
-
* @param callback - The callback to be called.
|
|
20
|
-
*/
|
|
21
|
-
export function every(interval, callback) {
|
|
22
|
-
let changed = false;
|
|
23
|
-
decorate(everyRunner, threadable('every'));
|
|
24
|
-
function* everyRunner() {
|
|
25
|
-
const project = usePlayback();
|
|
26
|
-
let acc = 0;
|
|
27
|
-
let tick = 0;
|
|
28
|
-
callback(tick);
|
|
29
|
-
changed = true;
|
|
30
|
-
while (true) {
|
|
31
|
-
if (acc >= project.secondsToFrames(interval)) {
|
|
32
|
-
acc = 0;
|
|
33
|
-
tick++;
|
|
34
|
-
callback(tick);
|
|
35
|
-
changed = true;
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
changed = false;
|
|
39
|
-
}
|
|
40
|
-
acc++;
|
|
41
|
-
yield;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return {
|
|
45
|
-
runner: everyRunner(),
|
|
46
|
-
setInterval(value) {
|
|
47
|
-
interval = value;
|
|
48
|
-
changed = false;
|
|
49
|
-
},
|
|
50
|
-
setCallback(value) {
|
|
51
|
-
callback = value;
|
|
52
|
-
changed = false;
|
|
53
|
-
},
|
|
54
|
-
*sync() {
|
|
55
|
-
while (!changed) {
|
|
56
|
-
yield;
|
|
57
|
-
}
|
|
58
|
-
},
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZmxvdy9ldmVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBeUJyQzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFDSCxNQUFNLFVBQVUsS0FBSyxDQUFDLFFBQWdCLEVBQUUsUUFBdUI7SUFDN0QsSUFBSSxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLFFBQVEsQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDM0MsUUFBUSxDQUFDLENBQUMsV0FBVztRQUNuQixNQUFNLE9BQU8sR0FBRyxXQUFXLEVBQUUsQ0FBQztRQUM5QixJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDWixJQUFJLElBQUksR0FBRyxDQUFDLENBQUM7UUFDYixRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDZixPQUFPLEdBQUcsSUFBSSxDQUFDO1FBRWYsT0FBTyxJQUFJLEVBQUUsQ0FBQztZQUNaLElBQUksR0FBRyxJQUFJLE9BQU8sQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztnQkFDN0MsR0FBRyxHQUFHLENBQUMsQ0FBQztnQkFDUixJQUFJLEVBQUUsQ0FBQztnQkFDUCxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2YsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNqQixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNsQixDQUFDO1lBQ0QsR0FBRyxFQUFFLENBQUM7WUFDTixLQUFLLENBQUM7UUFDUixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU87UUFDTCxNQUFNLEVBQUUsV0FBVyxFQUFFO1FBQ3JCLFdBQVcsQ0FBQyxLQUFLO1lBQ2YsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUNqQixPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLENBQUM7UUFDRCxXQUFXLENBQUMsS0FBSztZQUNmLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDakIsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNsQixDQUFDO1FBQ0QsQ0FBQyxJQUFJO1lBQ0gsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNoQixLQUFLLENBQUM7WUFDUixDQUFDO1FBQ0gsQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDIn0=
|
package/lib/flow/index.d.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utilities for controlling the flow and timing of an animation.
|
|
3
|
-
* @packageDocumentation
|
|
4
|
-
*/
|
|
5
|
-
export * from './all';
|
|
6
|
-
export * from './any';
|
|
7
|
-
export * from './chain';
|
|
8
|
-
export * from './delay';
|
|
9
|
-
export * from './every';
|
|
10
|
-
export * from './join';
|
|
11
|
-
export * from './loop';
|
|
12
|
-
export * from './loopFor';
|
|
13
|
-
export * from './names';
|
|
14
|
-
export * from './run';
|
|
15
|
-
export * from './scheduling';
|
|
16
|
-
export * from './sequence';
|
|
17
|
-
//# sourceMappingURL=index.d.ts.map
|
package/lib/flow/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/flow/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
|
package/lib/flow/index.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utilities for controlling the flow and timing of an animation.
|
|
3
|
-
* @packageDocumentation
|
|
4
|
-
*/
|
|
5
|
-
export * from './all';
|
|
6
|
-
export * from './any';
|
|
7
|
-
export * from './chain';
|
|
8
|
-
export * from './delay';
|
|
9
|
-
export * from './every';
|
|
10
|
-
export * from './join';
|
|
11
|
-
export * from './loop';
|
|
12
|
-
export * from './loopFor';
|
|
13
|
-
export * from './names';
|
|
14
|
-
export * from './run';
|
|
15
|
-
export * from './scheduling';
|
|
16
|
-
export * from './sequence';
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZmxvdy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFlBQVksQ0FBQyJ9
|
package/lib/flow/join.d.ts
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import type { ThreadGenerator } from '../threading/ThreadGenerator';
|
|
2
|
-
/**
|
|
3
|
-
* Pause the current generator until all listed tasks are finished.
|
|
4
|
-
*
|
|
5
|
-
* @example
|
|
6
|
-
* ```ts
|
|
7
|
-
* const task = yield generatorFunction();
|
|
8
|
-
*
|
|
9
|
-
* // do something concurrently
|
|
10
|
-
*
|
|
11
|
-
* yield* join(task);
|
|
12
|
-
* ```
|
|
13
|
-
*
|
|
14
|
-
* @param tasks - A list of tasks to join.
|
|
15
|
-
*/
|
|
16
|
-
export declare function join(...tasks: ThreadGenerator[]): ThreadGenerator;
|
|
17
|
-
/**
|
|
18
|
-
* Pause the current generator until listed tasks are finished.
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```ts
|
|
22
|
-
* const taskA = yield generatorFunctionA();
|
|
23
|
-
* const taskB = yield generatorFunctionB();
|
|
24
|
-
*
|
|
25
|
-
* // do something concurrently
|
|
26
|
-
*
|
|
27
|
-
* // await any of the tasks
|
|
28
|
-
* yield* join(false, taskA, taskB);
|
|
29
|
-
* ```
|
|
30
|
-
*
|
|
31
|
-
* @param all - Whether we should wait for all tasks or for at least one.
|
|
32
|
-
* @param tasks - A list of tasks to join.
|
|
33
|
-
*/
|
|
34
|
-
export declare function join(all: boolean, ...tasks: ThreadGenerator[]): ThreadGenerator;
|
|
35
|
-
//# sourceMappingURL=join.d.ts.map
|
package/lib/flow/join.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"join.d.ts","sourceRoot":"","sources":["../../src/flow/join.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAIlE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,IAAI,CAAC,GAAG,KAAK,EAAE,eAAe,EAAE,GAAG,eAAe,CAAC;AACnE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,IAAI,CAClB,GAAG,EAAE,OAAO,EACZ,GAAG,KAAK,EAAE,eAAe,EAAE,GAC1B,eAAe,CAAC"}
|
package/lib/flow/join.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { decorate, threadable } from '../decorators';
|
|
2
|
-
import { useThread } from '../utils';
|
|
3
|
-
decorate(join, threadable());
|
|
4
|
-
export function* join(first, ...tasks) {
|
|
5
|
-
let all = true;
|
|
6
|
-
if (typeof first === 'boolean') {
|
|
7
|
-
all = first;
|
|
8
|
-
}
|
|
9
|
-
else {
|
|
10
|
-
tasks.push(first);
|
|
11
|
-
}
|
|
12
|
-
const parent = useThread();
|
|
13
|
-
const threads = (tasks
|
|
14
|
-
.map(task => parent.children.find(thread => thread.runner === task))
|
|
15
|
-
.filter(thread => thread));
|
|
16
|
-
const startTime = parent.time();
|
|
17
|
-
let childTime;
|
|
18
|
-
if (all) {
|
|
19
|
-
while (threads.find(thread => !thread.canceled)) {
|
|
20
|
-
yield;
|
|
21
|
-
}
|
|
22
|
-
childTime = Math.max(...threads.map(thread => thread.time()));
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
while (!threads.find(thread => thread.canceled)) {
|
|
26
|
-
yield;
|
|
27
|
-
}
|
|
28
|
-
const canceled = threads.filter(thread => thread.canceled);
|
|
29
|
-
childTime = Math.min(...canceled.map(thread => thread.time()));
|
|
30
|
-
}
|
|
31
|
-
parent.time(Math.max(startTime, childTime));
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam9pbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mbG93L2pvaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHbkQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUVuQyxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7QUFxQzdCLE1BQU0sU0FBUyxDQUFDLENBQUMsSUFBSSxDQUNuQixLQUFnQyxFQUNoQyxHQUFHLEtBQXdCO0lBRTNCLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQztJQUNmLElBQUksT0FBTyxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDL0IsR0FBRyxHQUFHLEtBQUssQ0FBQztJQUNkLENBQUM7U0FBTSxDQUFDO1FBQ04sS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRUQsTUFBTSxNQUFNLEdBQUcsU0FBUyxFQUFFLENBQUM7SUFDM0IsTUFBTSxPQUFPLEdBQWEsQ0FDeEIsS0FBSztTQUNGLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsQ0FBQztTQUNuRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FDNUIsQ0FBQztJQUVGLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQyxJQUFJLFNBQVMsQ0FBQztJQUNkLElBQUksR0FBRyxFQUFFLENBQUM7UUFDUixPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ2hELEtBQUssQ0FBQztRQUNSLENBQUM7UUFDRCxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7U0FBTSxDQUFDO1FBQ04sT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNoRCxLQUFLLENBQUM7UUFDUixDQUFDO1FBQ0QsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMzRCxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFDOUMsQ0FBQyJ9
|