@editframe/elements 0.30.2-beta.0 → 0.31.0-beta.1
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/EF_FRAMEGEN.d.ts +5 -0
- package/dist/EF_FRAMEGEN.js +20 -4
- package/dist/EF_FRAMEGEN.js.map +1 -1
- package/dist/EF_INTERACTIVE.js.map +1 -1
- package/dist/_virtual/rolldown_runtime.js +27 -0
- package/dist/canvas/EFCanvas.d.ts +311 -0
- package/dist/canvas/EFCanvas.js +1089 -0
- package/dist/canvas/EFCanvas.js.map +1 -0
- package/dist/canvas/EFCanvasItem.d.ts +55 -0
- package/dist/canvas/EFCanvasItem.js +72 -0
- package/dist/canvas/EFCanvasItem.js.map +1 -0
- package/dist/canvas/api/CanvasAPI.d.ts +115 -0
- package/dist/canvas/api/CanvasAPI.js +182 -0
- package/dist/canvas/api/CanvasAPI.js.map +1 -0
- package/dist/canvas/api/types.d.ts +42 -0
- package/dist/canvas/coordinateTransform.js +90 -0
- package/dist/canvas/coordinateTransform.js.map +1 -0
- package/dist/canvas/getElementBounds.js +40 -0
- package/dist/canvas/getElementBounds.js.map +1 -0
- package/dist/canvas/overlays/SelectionOverlay.js +265 -0
- package/dist/canvas/overlays/SelectionOverlay.js.map +1 -0
- package/dist/canvas/overlays/overlayState.js +153 -0
- package/dist/canvas/overlays/overlayState.js.map +1 -0
- package/dist/canvas/selection/SelectionController.js +105 -0
- package/dist/canvas/selection/SelectionController.js.map +1 -0
- package/dist/canvas/selection/SelectionModel.d.ts +98 -0
- package/dist/canvas/selection/SelectionModel.js +229 -0
- package/dist/canvas/selection/SelectionModel.js.map +1 -0
- package/dist/canvas/selection/selectionContext.d.ts +31 -0
- package/dist/canvas/selection/selectionContext.js +12 -0
- package/dist/canvas/selection/selectionContext.js.map +1 -0
- package/dist/elements/ContainerInfo.d.ts +29 -0
- package/dist/elements/ContainerInfo.js +30 -0
- package/dist/elements/ContainerInfo.js.map +1 -0
- package/dist/elements/EFAudio.d.ts +13 -3
- package/dist/elements/EFAudio.js +64 -10
- package/dist/elements/EFAudio.js.map +1 -1
- package/dist/elements/EFCaptions.d.ts +18 -16
- package/dist/elements/EFCaptions.js +110 -19
- package/dist/elements/EFCaptions.js.map +1 -1
- package/dist/elements/EFImage.d.ts +16 -6
- package/dist/elements/EFImage.js +79 -9
- package/dist/elements/EFImage.js.map +1 -1
- package/dist/elements/EFMedia/AssetIdMediaEngine.js +51 -4
- package/dist/elements/EFMedia/AssetIdMediaEngine.js.map +1 -1
- package/dist/elements/EFMedia/AssetMediaEngine.js +125 -52
- package/dist/elements/EFMedia/AssetMediaEngine.js.map +1 -1
- package/dist/elements/EFMedia/BaseMediaEngine.js +24 -6
- package/dist/elements/EFMedia/BaseMediaEngine.js.map +1 -1
- package/dist/elements/EFMedia/JitMediaEngine.js +12 -8
- package/dist/elements/EFMedia/JitMediaEngine.js.map +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioBufferTask.js +46 -7
- package/dist/elements/EFMedia/audioTasks/makeAudioBufferTask.js.map +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioFrequencyAnalysisTask.js +98 -73
- package/dist/elements/EFMedia/audioTasks/makeAudioFrequencyAnalysisTask.js.map +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioInitSegmentFetchTask.js +28 -5
- package/dist/elements/EFMedia/audioTasks/makeAudioInitSegmentFetchTask.js.map +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioInputTask.js +18 -6
- package/dist/elements/EFMedia/audioTasks/makeAudioInputTask.js.map +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioSeekTask.js +8 -2
- package/dist/elements/EFMedia/audioTasks/makeAudioSeekTask.js.map +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioSegmentFetchTask.js +31 -6
- package/dist/elements/EFMedia/audioTasks/makeAudioSegmentFetchTask.js.map +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioSegmentIdTask.js +28 -5
- package/dist/elements/EFMedia/audioTasks/makeAudioSegmentIdTask.js.map +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioTimeDomainAnalysisTask.js +97 -72
- package/dist/elements/EFMedia/audioTasks/makeAudioTimeDomainAnalysisTask.js.map +1 -1
- package/dist/elements/EFMedia/shared/AudioSpanUtils.js +3 -1
- package/dist/elements/EFMedia/shared/AudioSpanUtils.js.map +1 -1
- package/dist/elements/EFMedia/shared/BufferUtils.js +1 -1
- package/dist/elements/EFMedia/shared/BufferUtils.js.map +1 -1
- package/dist/elements/EFMedia/shared/ThumbnailExtractor.js +25 -14
- package/dist/elements/EFMedia/shared/ThumbnailExtractor.js.map +1 -1
- package/dist/elements/EFMedia/tasks/makeMediaEngineTask.js +47 -16
- package/dist/elements/EFMedia/tasks/makeMediaEngineTask.js.map +1 -1
- package/dist/elements/EFMedia/videoTasks/MainVideoInputCache.js +37 -19
- package/dist/elements/EFMedia/videoTasks/MainVideoInputCache.js.map +1 -1
- package/dist/elements/EFMedia/videoTasks/ScrubInputCache.js +65 -21
- package/dist/elements/EFMedia/videoTasks/ScrubInputCache.js.map +1 -1
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoBufferTask.js +8 -3
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoBufferTask.js.map +1 -1
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoInitSegmentFetchTask.js +32 -9
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoInitSegmentFetchTask.js.map +1 -1
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoInputTask.js +33 -10
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoInputTask.js.map +1 -1
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoSeekTask.js +23 -8
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoSeekTask.js.map +1 -1
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoSegmentFetchTask.js +34 -10
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoSegmentFetchTask.js.map +1 -1
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoSegmentIdTask.js +31 -8
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoSegmentIdTask.js.map +1 -1
- package/dist/elements/EFMedia/videoTasks/makeUnifiedVideoSeekTask.js +31 -114
- package/dist/elements/EFMedia/videoTasks/makeUnifiedVideoSeekTask.js.map +1 -1
- package/dist/elements/EFMedia/videoTasks/makeVideoBufferTask.js +44 -8
- package/dist/elements/EFMedia/videoTasks/makeVideoBufferTask.js.map +1 -1
- package/dist/elements/EFMedia.d.ts +18 -7
- package/dist/elements/EFMedia.js +23 -3
- package/dist/elements/EFMedia.js.map +1 -1
- package/dist/elements/EFPanZoom.d.ts +96 -0
- package/dist/elements/EFPanZoom.js +290 -0
- package/dist/elements/EFPanZoom.js.map +1 -0
- package/dist/elements/EFSourceMixin.js +7 -6
- package/dist/elements/EFSourceMixin.js.map +1 -1
- package/dist/elements/EFSurface.d.ts +6 -6
- package/dist/elements/EFSurface.js +7 -2
- package/dist/elements/EFSurface.js.map +1 -1
- package/dist/elements/EFTemporal.d.ts +2 -1
- package/dist/elements/EFTemporal.js +192 -71
- package/dist/elements/EFTemporal.js.map +1 -1
- package/dist/elements/EFText.d.ts +5 -4
- package/dist/elements/EFText.js +102 -13
- package/dist/elements/EFText.js.map +1 -1
- package/dist/elements/EFTextSegment.d.ts +32 -6
- package/dist/elements/EFTextSegment.js +53 -15
- package/dist/elements/EFTextSegment.js.map +1 -1
- package/dist/elements/EFThumbnailStrip.d.ts +129 -56
- package/dist/elements/EFThumbnailStrip.js +605 -359
- package/dist/elements/EFThumbnailStrip.js.map +1 -1
- package/dist/elements/EFTimegroup.d.ts +233 -25
- package/dist/elements/EFTimegroup.js +865 -144
- package/dist/elements/EFTimegroup.js.map +1 -1
- package/dist/elements/EFVideo.d.ts +42 -5
- package/dist/elements/EFVideo.js +165 -11
- package/dist/elements/EFVideo.js.map +1 -1
- package/dist/elements/EFWaveform.d.ts +6 -6
- package/dist/elements/EFWaveform.js +2 -1
- package/dist/elements/EFWaveform.js.map +1 -1
- package/dist/elements/ElementPositionInfo.d.ts +35 -0
- package/dist/elements/ElementPositionInfo.js +49 -0
- package/dist/elements/ElementPositionInfo.js.map +1 -0
- package/dist/elements/FetchMixin.js +16 -1
- package/dist/elements/FetchMixin.js.map +1 -1
- package/dist/elements/SessionThumbnailCache.js +154 -0
- package/dist/elements/SessionThumbnailCache.js.map +1 -0
- package/dist/elements/TargetController.js +3 -1
- package/dist/elements/TargetController.js.map +1 -1
- package/dist/elements/TimegroupController.js +9 -3
- package/dist/elements/TimegroupController.js.map +1 -1
- package/dist/elements/findRootTemporal.js +30 -0
- package/dist/elements/findRootTemporal.js.map +1 -0
- package/dist/elements/renderTemporalAudio.js +18 -5
- package/dist/elements/renderTemporalAudio.js.map +1 -1
- package/dist/elements/updateAnimations.js +171 -28
- package/dist/elements/updateAnimations.js.map +1 -1
- package/dist/getRenderInfo.d.ts +2 -2
- package/dist/gui/ContextMixin.js +4 -2
- package/dist/gui/ContextMixin.js.map +1 -1
- package/dist/gui/Controllable.js +74 -1
- package/dist/gui/Controllable.js.map +1 -1
- package/dist/gui/EFActiveRootTemporal.d.ts +50 -0
- package/dist/gui/EFActiveRootTemporal.js +94 -0
- package/dist/gui/EFActiveRootTemporal.js.map +1 -0
- package/dist/gui/EFConfiguration.d.ts +7 -1
- package/dist/gui/EFConfiguration.js.map +1 -1
- package/dist/gui/EFControls.d.ts +2 -2
- package/dist/gui/EFControls.js +109 -13
- package/dist/gui/EFControls.js.map +1 -1
- package/dist/gui/EFDial.d.ts +4 -4
- package/dist/gui/EFFilmstrip.d.ts +11 -214
- package/dist/gui/EFFilmstrip.js +53 -1152
- package/dist/gui/EFFilmstrip.js.map +1 -1
- package/dist/gui/EFFitScale.d.ts +3 -3
- package/dist/gui/EFFitScale.js +39 -12
- package/dist/gui/EFFitScale.js.map +1 -1
- package/dist/gui/EFFocusOverlay.d.ts +4 -4
- package/dist/gui/EFOverlayItem.d.ts +48 -0
- package/dist/gui/EFOverlayItem.js +97 -0
- package/dist/gui/EFOverlayItem.js.map +1 -0
- package/dist/gui/EFOverlayLayer.d.ts +70 -0
- package/dist/gui/EFOverlayLayer.js +104 -0
- package/dist/gui/EFOverlayLayer.js.map +1 -0
- package/dist/gui/EFPause.d.ts +4 -4
- package/dist/gui/EFPlay.d.ts +4 -4
- package/dist/gui/EFResizableBox.d.ts +12 -16
- package/dist/gui/EFResizableBox.js +109 -451
- package/dist/gui/EFResizableBox.js.map +1 -1
- package/dist/gui/EFScrubber.d.ts +30 -5
- package/dist/gui/EFScrubber.js +224 -31
- package/dist/gui/EFScrubber.js.map +1 -1
- package/dist/gui/EFTimeDisplay.d.ts +4 -4
- package/dist/gui/EFTimeDisplay.js +4 -1
- package/dist/gui/EFTimeDisplay.js.map +1 -1
- package/dist/gui/EFTimelineRuler.d.ts +71 -0
- package/dist/gui/EFTimelineRuler.js +320 -0
- package/dist/gui/EFTimelineRuler.js.map +1 -0
- package/dist/gui/EFToggleLoop.d.ts +4 -4
- package/dist/gui/EFTogglePlay.d.ts +4 -4
- package/dist/gui/EFTransformHandles.d.ts +91 -0
- package/dist/gui/EFTransformHandles.js +393 -0
- package/dist/gui/EFTransformHandles.js.map +1 -0
- package/dist/gui/EFWorkbench.d.ts +178 -0
- package/dist/gui/EFWorkbench.js +2067 -22
- package/dist/gui/EFWorkbench.js.map +1 -1
- package/dist/gui/FitScaleHelpers.d.ts +31 -0
- package/dist/gui/FitScaleHelpers.js +41 -0
- package/dist/gui/FitScaleHelpers.js.map +1 -0
- package/dist/gui/PlaybackController.d.ts +2 -1
- package/dist/gui/PlaybackController.js +46 -15
- package/dist/gui/PlaybackController.js.map +1 -1
- package/dist/gui/TWMixin.js +1 -1
- package/dist/gui/TWMixin.js.map +1 -1
- package/dist/gui/hierarchy/EFHierarchy.d.ts +65 -0
- package/dist/gui/hierarchy/EFHierarchy.js +338 -0
- package/dist/gui/hierarchy/EFHierarchy.js.map +1 -0
- package/dist/gui/hierarchy/EFHierarchyItem.d.ts +118 -0
- package/dist/gui/hierarchy/EFHierarchyItem.js +551 -0
- package/dist/gui/hierarchy/EFHierarchyItem.js.map +1 -0
- package/dist/gui/hierarchy/hierarchyContext.d.ts +38 -0
- package/dist/gui/hierarchy/hierarchyContext.js +8 -0
- package/dist/gui/hierarchy/hierarchyContext.js.map +1 -0
- package/dist/gui/icons.js +34 -0
- package/dist/gui/icons.js.map +1 -0
- package/dist/gui/panZoomTransformContext.js +12 -0
- package/dist/gui/panZoomTransformContext.js.map +1 -0
- package/dist/gui/previewSettingsContext.js +12 -0
- package/dist/gui/previewSettingsContext.js.map +1 -0
- package/dist/gui/timeline/EFTimeline.d.ts +270 -0
- package/dist/gui/timeline/EFTimeline.js +1369 -0
- package/dist/gui/timeline/EFTimeline.js.map +1 -0
- package/dist/gui/timeline/EFTimelineRow.js +374 -0
- package/dist/gui/timeline/EFTimelineRow.js.map +1 -0
- package/dist/gui/timeline/TrimHandles.d.ts +36 -0
- package/dist/gui/timeline/TrimHandles.js +204 -0
- package/dist/gui/timeline/TrimHandles.js.map +1 -0
- package/dist/gui/timeline/flattenHierarchy.js +31 -0
- package/dist/gui/timeline/flattenHierarchy.js.map +1 -0
- package/dist/gui/timeline/timelineStateContext.d.ts +26 -0
- package/dist/gui/timeline/timelineStateContext.js +42 -0
- package/dist/gui/timeline/timelineStateContext.js.map +1 -0
- package/dist/gui/timeline/tracks/AudioTrack.js +264 -0
- package/dist/gui/timeline/tracks/AudioTrack.js.map +1 -0
- package/dist/gui/timeline/tracks/CaptionsTrack.js +595 -0
- package/dist/gui/timeline/tracks/CaptionsTrack.js.map +1 -0
- package/dist/gui/timeline/tracks/HTMLTrack.js +19 -0
- package/dist/gui/timeline/tracks/HTMLTrack.js.map +1 -0
- package/dist/gui/timeline/tracks/ImageTrack.js +53 -0
- package/dist/gui/timeline/tracks/ImageTrack.js.map +1 -0
- package/dist/gui/timeline/tracks/TextTrack.js +250 -0
- package/dist/gui/timeline/tracks/TextTrack.js.map +1 -0
- package/dist/gui/timeline/tracks/TimegroupTrack.js +143 -0
- package/dist/gui/timeline/tracks/TimegroupTrack.js.map +1 -0
- package/dist/gui/timeline/tracks/TrackItem.js +269 -0
- package/dist/gui/timeline/tracks/TrackItem.js.map +1 -0
- package/dist/gui/timeline/tracks/VideoTrack.js +265 -0
- package/dist/gui/timeline/tracks/VideoTrack.js.map +1 -0
- package/dist/gui/timeline/tracks/WaveformTrack.js +19 -0
- package/dist/gui/timeline/tracks/WaveformTrack.js.map +1 -0
- package/dist/gui/timeline/tracks/ensureTrackItemInit.js +1 -0
- package/dist/gui/timeline/tracks/preloadTracks.js +9 -0
- package/dist/gui/timeline/tracks/renderTrackChildren.js +119 -0
- package/dist/gui/timeline/tracks/renderTrackChildren.js.map +1 -0
- package/dist/gui/timeline/tracks/waveformUtils.js +80 -0
- package/dist/gui/timeline/tracks/waveformUtils.js.map +1 -0
- package/dist/gui/transformCalculations.js +217 -0
- package/dist/gui/transformCalculations.js.map +1 -0
- package/dist/gui/transformUtils.d.ts +37 -0
- package/dist/gui/transformUtils.js +77 -0
- package/dist/gui/transformUtils.js.map +1 -0
- package/dist/gui/tree/EFTree.d.ts +59 -0
- package/dist/gui/tree/EFTree.js +174 -0
- package/dist/gui/tree/EFTree.js.map +1 -0
- package/dist/gui/tree/EFTreeItem.d.ts +38 -0
- package/dist/gui/tree/EFTreeItem.js +146 -0
- package/dist/gui/tree/EFTreeItem.js.map +1 -0
- package/dist/gui/tree/treeContext.d.ts +60 -0
- package/dist/gui/tree/treeContext.js +23 -0
- package/dist/gui/tree/treeContext.js.map +1 -0
- package/dist/index.d.ts +32 -8
- package/dist/index.js +30 -6
- package/dist/index.js.map +1 -1
- package/dist/node_modules/react/cjs/react-jsx-runtime.development.js +688 -0
- package/dist/node_modules/react/cjs/react-jsx-runtime.development.js.map +1 -0
- package/dist/node_modules/react/cjs/react.development.js +1521 -0
- package/dist/node_modules/react/cjs/react.development.js.map +1 -0
- package/dist/node_modules/react/index.js +13 -0
- package/dist/node_modules/react/index.js.map +1 -0
- package/dist/node_modules/react/jsx-runtime.js +13 -0
- package/dist/node_modules/react/jsx-runtime.js.map +1 -0
- package/dist/preview/AdaptiveResolutionTracker.js +228 -0
- package/dist/preview/AdaptiveResolutionTracker.js.map +1 -0
- package/dist/preview/RenderProfiler.js +135 -0
- package/dist/preview/RenderProfiler.js.map +1 -0
- package/dist/preview/previewSettings.js +131 -0
- package/dist/preview/previewSettings.js.map +1 -0
- package/dist/preview/previewTypes.js +64 -0
- package/dist/preview/previewTypes.js.map +1 -0
- package/dist/preview/renderTimegroupPreview.js +656 -0
- package/dist/preview/renderTimegroupPreview.js.map +1 -0
- package/dist/preview/renderTimegroupToCanvas.d.ts +37 -0
- package/dist/preview/renderTimegroupToCanvas.js +833 -0
- package/dist/preview/renderTimegroupToCanvas.js.map +1 -0
- package/dist/preview/renderTimegroupToVideo.d.ts +39 -0
- package/dist/preview/renderTimegroupToVideo.js +274 -0
- package/dist/preview/renderTimegroupToVideo.js.map +1 -0
- package/dist/preview/renderers.js +16 -0
- package/dist/preview/renderers.js.map +1 -0
- package/dist/preview/statsTrackingStrategy.js +201 -0
- package/dist/preview/statsTrackingStrategy.js.map +1 -0
- package/dist/preview/thumbnailCacheSettings.js +52 -0
- package/dist/preview/thumbnailCacheSettings.js.map +1 -0
- package/dist/preview/workers/WorkerPool.js +178 -0
- package/dist/preview/workers/WorkerPool.js.map +1 -0
- package/dist/preview/workers/encoderWorkerInline.js +103 -0
- package/dist/preview/workers/encoderWorkerInline.js.map +1 -0
- package/dist/sandbox/PlaybackControls.js +10 -0
- package/dist/sandbox/PlaybackControls.js.map +1 -0
- package/dist/sandbox/ScenarioRunner.js +1 -0
- package/dist/sandbox/index.js +2 -0
- package/dist/style.css +71 -67
- package/dist/transcoding/types/index.d.ts +2 -1
- package/dist/transcoding/utils/UrlGenerator.d.ts +6 -1
- package/dist/transcoding/utils/UrlGenerator.js +12 -3
- package/dist/transcoding/utils/UrlGenerator.js.map +1 -1
- package/dist/utils/LRUCache.js +1 -375
- package/dist/utils/LRUCache.js.map +1 -1
- package/dist/utils/frameTime.js +14 -0
- package/dist/utils/frameTime.js.map +1 -0
- package/package.json +3 -3
- package/test/profilingPlugin.ts +223 -0
- package/test/recordReplayProxyPlugin.js +22 -27
- package/test/thumbnail-performance-test.html +116 -0
- package/test/visualRegressionUtils.ts +286 -0
- package/types.json +1 -1
- package/dist/elements/TimegroupController.d.ts +0 -18
- package/dist/msToTimeCode.js +0 -17
- package/dist/msToTimeCode.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { nothing } from "lit";
|
package/dist/style.css
CHANGED
|
@@ -433,37 +433,55 @@ video {
|
|
|
433
433
|
display: none;
|
|
434
434
|
}
|
|
435
435
|
/* biome-ignore lint/suspicious/noUnknownAtRules: @tailwind is a valid Tailwind CSS directive */
|
|
436
|
+
.\!container {
|
|
437
|
+
width: 100% !important;
|
|
438
|
+
}
|
|
436
439
|
.container {
|
|
437
440
|
width: 100%;
|
|
438
441
|
}
|
|
439
442
|
@media (min-width: 640px) {
|
|
443
|
+
.\!container {
|
|
444
|
+
max-width: 640px !important;
|
|
445
|
+
}
|
|
440
446
|
.container {
|
|
441
447
|
max-width: 640px;
|
|
442
448
|
}
|
|
443
449
|
}
|
|
444
450
|
@media (min-width: 768px) {
|
|
451
|
+
.\!container {
|
|
452
|
+
max-width: 768px !important;
|
|
453
|
+
}
|
|
445
454
|
.container {
|
|
446
455
|
max-width: 768px;
|
|
447
456
|
}
|
|
448
457
|
}
|
|
449
458
|
@media (min-width: 1024px) {
|
|
459
|
+
.\!container {
|
|
460
|
+
max-width: 1024px !important;
|
|
461
|
+
}
|
|
450
462
|
.container {
|
|
451
463
|
max-width: 1024px;
|
|
452
464
|
}
|
|
453
465
|
}
|
|
454
466
|
@media (min-width: 1280px) {
|
|
467
|
+
.\!container {
|
|
468
|
+
max-width: 1280px !important;
|
|
469
|
+
}
|
|
455
470
|
.container {
|
|
456
471
|
max-width: 1280px;
|
|
457
472
|
}
|
|
458
473
|
}
|
|
459
474
|
@media (min-width: 1536px) {
|
|
475
|
+
.\!container {
|
|
476
|
+
max-width: 1536px !important;
|
|
477
|
+
}
|
|
460
478
|
.container {
|
|
461
479
|
max-width: 1536px;
|
|
462
480
|
}
|
|
463
481
|
}
|
|
464
482
|
/* biome-ignore lint/suspicious/noUnknownAtRules: @tailwind is a valid Tailwind CSS directive */
|
|
465
|
-
|
|
466
|
-
|
|
483
|
+
.\!visible {
|
|
484
|
+
visibility: visible !important;
|
|
467
485
|
}
|
|
468
486
|
.visible {
|
|
469
487
|
visibility: visible;
|
|
@@ -471,6 +489,9 @@ video {
|
|
|
471
489
|
.invisible {
|
|
472
490
|
visibility: hidden;
|
|
473
491
|
}
|
|
492
|
+
.collapse {
|
|
493
|
+
visibility: collapse;
|
|
494
|
+
}
|
|
474
495
|
.static {
|
|
475
496
|
position: static;
|
|
476
497
|
}
|
|
@@ -483,6 +504,9 @@ video {
|
|
|
483
504
|
.relative {
|
|
484
505
|
position: relative;
|
|
485
506
|
}
|
|
507
|
+
.sticky {
|
|
508
|
+
position: sticky;
|
|
509
|
+
}
|
|
486
510
|
.inset-0 {
|
|
487
511
|
inset: 0px;
|
|
488
512
|
}
|
|
@@ -495,24 +519,11 @@ video {
|
|
|
495
519
|
.isolate {
|
|
496
520
|
isolation: isolate;
|
|
497
521
|
}
|
|
498
|
-
.z-10 {
|
|
499
|
-
z-index: 10;
|
|
500
|
-
}
|
|
501
|
-
.z-20 {
|
|
502
|
-
z-index: 20;
|
|
503
|
-
}
|
|
504
|
-
.z-\[20\] {
|
|
505
|
-
z-index: 20;
|
|
506
|
-
}
|
|
507
522
|
.z-\[5\] {
|
|
508
523
|
z-index: 5;
|
|
509
524
|
}
|
|
510
|
-
.
|
|
511
|
-
|
|
512
|
-
}
|
|
513
|
-
.mx-2 {
|
|
514
|
-
margin-left: 0.5rem;
|
|
515
|
-
margin-right: 0.5rem;
|
|
525
|
+
.mb-0 {
|
|
526
|
+
margin-bottom: 0px;
|
|
516
527
|
}
|
|
517
528
|
.mb-\[1px\] {
|
|
518
529
|
margin-bottom: 1px;
|
|
@@ -529,9 +540,18 @@ video {
|
|
|
529
540
|
.flex {
|
|
530
541
|
display: flex;
|
|
531
542
|
}
|
|
543
|
+
.inline-flex {
|
|
544
|
+
display: inline-flex;
|
|
545
|
+
}
|
|
546
|
+
.table {
|
|
547
|
+
display: table;
|
|
548
|
+
}
|
|
532
549
|
.grid {
|
|
533
550
|
display: grid;
|
|
534
551
|
}
|
|
552
|
+
.inline-grid {
|
|
553
|
+
display: inline-grid;
|
|
554
|
+
}
|
|
535
555
|
.contents {
|
|
536
556
|
display: contents;
|
|
537
557
|
}
|
|
@@ -557,6 +577,9 @@ video {
|
|
|
557
577
|
.h-\[360px\] {
|
|
558
578
|
height: 360px;
|
|
559
579
|
}
|
|
580
|
+
.h-\[400px\] {
|
|
581
|
+
height: 400px;
|
|
582
|
+
}
|
|
560
583
|
.h-\[500px\] {
|
|
561
584
|
height: 500px;
|
|
562
585
|
}
|
|
@@ -572,8 +595,8 @@ video {
|
|
|
572
595
|
.w-\[1000px\] {
|
|
573
596
|
width: 1000px;
|
|
574
597
|
}
|
|
575
|
-
.w-\[
|
|
576
|
-
width:
|
|
598
|
+
.w-\[200px\] {
|
|
599
|
+
width: 200px;
|
|
577
600
|
}
|
|
578
601
|
.w-\[480px\] {
|
|
579
602
|
width: 480px;
|
|
@@ -587,30 +610,35 @@ video {
|
|
|
587
610
|
.w-full {
|
|
588
611
|
width: 100%;
|
|
589
612
|
}
|
|
613
|
+
.flex-shrink {
|
|
614
|
+
flex-shrink: 1;
|
|
615
|
+
}
|
|
616
|
+
.shrink {
|
|
617
|
+
flex-shrink: 1;
|
|
618
|
+
}
|
|
619
|
+
.\!transform {
|
|
620
|
+
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important;
|
|
621
|
+
}
|
|
590
622
|
.transform {
|
|
591
623
|
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
592
624
|
}
|
|
593
|
-
.cursor-
|
|
594
|
-
cursor:
|
|
595
|
-
}
|
|
596
|
-
.touch-none {
|
|
597
|
-
touch-action: none;
|
|
625
|
+
.cursor-grabbing {
|
|
626
|
+
cursor: grabbing;
|
|
598
627
|
}
|
|
599
|
-
.
|
|
600
|
-
|
|
601
|
-
touch-action: var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom);
|
|
628
|
+
.cursor-pointer {
|
|
629
|
+
cursor: pointer;
|
|
602
630
|
}
|
|
603
631
|
.resize {
|
|
604
632
|
resize: both;
|
|
605
633
|
}
|
|
606
|
-
.
|
|
607
|
-
|
|
634
|
+
.flex-row {
|
|
635
|
+
flex-direction: row;
|
|
608
636
|
}
|
|
609
637
|
.items-center {
|
|
610
638
|
align-items: center;
|
|
611
639
|
}
|
|
612
|
-
.
|
|
613
|
-
|
|
640
|
+
.gap-2 {
|
|
641
|
+
gap: 0.5rem;
|
|
614
642
|
}
|
|
615
643
|
.overflow-hidden {
|
|
616
644
|
overflow: hidden;
|
|
@@ -630,9 +658,6 @@ video {
|
|
|
630
658
|
.border {
|
|
631
659
|
border-width: 1px;
|
|
632
660
|
}
|
|
633
|
-
.border-r-2 {
|
|
634
|
-
border-right-width: 2px;
|
|
635
|
-
}
|
|
636
661
|
.bg-black {
|
|
637
662
|
--tw-bg-opacity: 1;
|
|
638
663
|
background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
|
|
@@ -649,9 +674,6 @@ video {
|
|
|
649
674
|
--tw-bg-opacity: 1;
|
|
650
675
|
background-color: rgb(250 204 21 / var(--tw-bg-opacity, 1));
|
|
651
676
|
}
|
|
652
|
-
.bg-opacity-20 {
|
|
653
|
-
--tw-bg-opacity: 0.2;
|
|
654
|
-
}
|
|
655
677
|
.object-contain {
|
|
656
678
|
-o-object-fit: contain;
|
|
657
679
|
object-fit: contain;
|
|
@@ -659,37 +681,13 @@ video {
|
|
|
659
681
|
.p-4 {
|
|
660
682
|
padding: 1rem;
|
|
661
683
|
}
|
|
662
|
-
.p-\[1px\] {
|
|
663
|
-
padding: 1px;
|
|
664
|
-
}
|
|
665
684
|
.px-0\.5 {
|
|
666
685
|
padding-left: 0.125rem;
|
|
667
686
|
padding-right: 0.125rem;
|
|
668
687
|
}
|
|
669
|
-
.pb-0 {
|
|
670
|
-
padding-bottom: 0px;
|
|
671
|
-
}
|
|
672
|
-
.pl-1 {
|
|
673
|
-
padding-left: 0.25rem;
|
|
674
|
-
}
|
|
675
|
-
.pl-2 {
|
|
676
|
-
padding-left: 0.5rem;
|
|
677
|
-
}
|
|
678
|
-
.pr-0 {
|
|
679
|
-
padding-right: 0px;
|
|
680
|
-
}
|
|
681
|
-
.pr-1 {
|
|
682
|
-
padding-right: 0.25rem;
|
|
683
|
-
}
|
|
684
|
-
.pt-\[8px\] {
|
|
685
|
-
padding-top: 8px;
|
|
686
|
-
}
|
|
687
688
|
.text-center {
|
|
688
689
|
text-align: center;
|
|
689
690
|
}
|
|
690
|
-
.font-mono {
|
|
691
|
-
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
|
692
|
-
}
|
|
693
691
|
.text-\[8px\] {
|
|
694
692
|
font-size: 8px;
|
|
695
693
|
}
|
|
@@ -704,9 +702,14 @@ video {
|
|
|
704
702
|
.font-bold {
|
|
705
703
|
font-weight: 700;
|
|
706
704
|
}
|
|
707
|
-
.
|
|
708
|
-
|
|
709
|
-
|
|
705
|
+
.uppercase {
|
|
706
|
+
text-transform: uppercase;
|
|
707
|
+
}
|
|
708
|
+
.capitalize {
|
|
709
|
+
text-transform: capitalize;
|
|
710
|
+
}
|
|
711
|
+
.italic {
|
|
712
|
+
font-style: italic;
|
|
710
713
|
}
|
|
711
714
|
.text-black {
|
|
712
715
|
--tw-text-opacity: 1;
|
|
@@ -720,9 +723,6 @@ video {
|
|
|
720
723
|
--tw-text-opacity: 1;
|
|
721
724
|
color: rgb(20 83 45 / var(--tw-text-opacity, 1));
|
|
722
725
|
}
|
|
723
|
-
.line-through {
|
|
724
|
-
text-decoration-line: line-through;
|
|
725
|
-
}
|
|
726
726
|
.opacity-50 {
|
|
727
727
|
opacity: 0.5;
|
|
728
728
|
}
|
|
@@ -738,6 +738,10 @@ video {
|
|
|
738
738
|
--tw-blur: blur(8px);
|
|
739
739
|
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
740
740
|
}
|
|
741
|
+
.drop-shadow {
|
|
742
|
+
--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
|
|
743
|
+
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
744
|
+
}
|
|
741
745
|
.filter {
|
|
742
746
|
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
743
747
|
}
|
|
@@ -81,8 +81,9 @@ interface MediaEngine {
|
|
|
81
81
|
* Uses scrub rendition and batches by segment for optimal performance
|
|
82
82
|
* Returns thumbnail objects in same order as input timestamps
|
|
83
83
|
* Returns null for any timestamps that fail to extract
|
|
84
|
+
* @param signal - Optional AbortSignal to cancel in-flight requests when element is disconnected
|
|
84
85
|
*/
|
|
85
|
-
extractThumbnails(timestamps: number[]): Promise<(ThumbnailResult | null)[]>;
|
|
86
|
+
extractThumbnails(timestamps: number[], signal?: AbortSignal): Promise<(ThumbnailResult | null)[]>;
|
|
86
87
|
}
|
|
87
88
|
interface ThumbnailResult {
|
|
88
89
|
timestamp: number;
|
|
@@ -5,6 +5,10 @@ import { MediaEngine, RenditionId } from "../types/index.js";
|
|
|
5
5
|
declare class UrlGenerator {
|
|
6
6
|
private baseUrl;
|
|
7
7
|
constructor(baseUrl: () => string);
|
|
8
|
+
/**
|
|
9
|
+
* Get the base URL for constructing absolute URLs
|
|
10
|
+
*/
|
|
11
|
+
getBaseUrl(): string;
|
|
8
12
|
/**
|
|
9
13
|
* Generate video segment URL
|
|
10
14
|
*/
|
|
@@ -18,7 +22,8 @@ declare class UrlGenerator {
|
|
|
18
22
|
*/
|
|
19
23
|
generateManifestUrl(mediaUrl: string): string;
|
|
20
24
|
/**
|
|
21
|
-
* Generate track fragment index URL
|
|
25
|
+
* Generate track fragment index URL using production API format
|
|
26
|
+
* @deprecated Use MD5-based URL generation in AssetMediaEngine.fetch() instead
|
|
22
27
|
*/
|
|
23
28
|
generateTrackFragmentIndexUrl(mediaUrl: string): string;
|
|
24
29
|
/**
|
|
@@ -4,6 +4,12 @@ var UrlGenerator = class {
|
|
|
4
4
|
this.baseUrl = baseUrl;
|
|
5
5
|
}
|
|
6
6
|
/**
|
|
7
|
+
* Get the base URL for constructing absolute URLs
|
|
8
|
+
*/
|
|
9
|
+
getBaseUrl() {
|
|
10
|
+
return this.baseUrl();
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
7
13
|
* Generate video segment URL
|
|
8
14
|
*/
|
|
9
15
|
generateSegmentUrl(segmentId, renditionId, metadata) {
|
|
@@ -20,7 +26,7 @@ var UrlGenerator = class {
|
|
|
20
26
|
* Generate init segment URL
|
|
21
27
|
*/
|
|
22
28
|
generateInitSegmentUrl(mediaUrl, rendition) {
|
|
23
|
-
return `${this.baseUrl()}/api/v1/transcode/${rendition}/init.
|
|
29
|
+
return `${this.baseUrl()}/api/v1/transcode/${rendition}/init.mp4?url=${encodeURIComponent(mediaUrl)}`;
|
|
24
30
|
}
|
|
25
31
|
/**
|
|
26
32
|
* Generate manifest URL
|
|
@@ -29,10 +35,13 @@ var UrlGenerator = class {
|
|
|
29
35
|
return `${this.baseUrl()}/api/v1/transcode/manifest.json?url=${encodeURIComponent(mediaUrl)}`;
|
|
30
36
|
}
|
|
31
37
|
/**
|
|
32
|
-
* Generate track fragment index URL
|
|
38
|
+
* Generate track fragment index URL using production API format
|
|
39
|
+
* @deprecated Use MD5-based URL generation in AssetMediaEngine.fetch() instead
|
|
33
40
|
*/
|
|
34
41
|
generateTrackFragmentIndexUrl(mediaUrl) {
|
|
35
|
-
|
|
42
|
+
let normalizedSrc = mediaUrl.startsWith("/") ? mediaUrl.slice(1) : mediaUrl;
|
|
43
|
+
normalizedSrc = normalizedSrc.replace(/^\/+/, "");
|
|
44
|
+
return `@ef-track-fragment-index/${normalizedSrc}`;
|
|
36
45
|
}
|
|
37
46
|
/**
|
|
38
47
|
* Generate quality presets URL
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UrlGenerator.js","names":["baseUrl: () => string"],"sources":["../../../src/transcoding/utils/UrlGenerator.ts"],"sourcesContent":["/**\n * URL generation utilities for transcoding endpoints\n */\n\nimport type { RenditionId } from \"../types/index.js\";\nimport type { MediaEngine } from \"../types/index.ts\";\n\nexport class UrlGenerator {\n constructor(private baseUrl: () => string) {}\n\n /**\n * Generate video segment URL\n */\n generateSegmentUrl(\n segmentId: \"init\" | number,\n renditionId: RenditionId,\n metadata: MediaEngine,\n ): string {\n const audioRendition = metadata.audioRendition;\n const videoRendition = metadata.videoRendition;\n const rendition = audioRendition ?? videoRendition;\n if (!rendition) {\n console.error(\"Rendition not found\", metadata);\n throw new Error(`Rendition ${renditionId} not found`);\n }\n\n const template =\n segmentId === \"init\"\n ? metadata.templates.initSegment\n : metadata.templates.mediaSegment;\n return template\n .replace(\"{rendition}\", renditionId)\n .replace(\"{segmentId}\", segmentId.toString())\n .replace(\"{src}\", metadata.src)\n .replace(\"{trackId}\", rendition.trackId?.toString() ?? \"\");\n }\n\n /**\n * Generate init segment URL\n */\n generateInitSegmentUrl(mediaUrl: string, rendition: string): string {\n return `${this.baseUrl()}/api/v1/transcode/${rendition}/init.
|
|
1
|
+
{"version":3,"file":"UrlGenerator.js","names":["baseUrl: () => string"],"sources":["../../../src/transcoding/utils/UrlGenerator.ts"],"sourcesContent":["/**\n * URL generation utilities for transcoding endpoints\n */\n\nimport type { RenditionId } from \"../types/index.js\";\nimport type { MediaEngine } from \"../types/index.ts\";\n\nexport class UrlGenerator {\n constructor(private baseUrl: () => string) {}\n\n /**\n * Get the base URL for constructing absolute URLs\n */\n getBaseUrl(): string {\n return this.baseUrl();\n }\n\n /**\n * Generate video segment URL\n */\n generateSegmentUrl(\n segmentId: \"init\" | number,\n renditionId: RenditionId,\n metadata: MediaEngine,\n ): string {\n const audioRendition = metadata.audioRendition;\n const videoRendition = metadata.videoRendition;\n const rendition = audioRendition ?? videoRendition;\n if (!rendition) {\n console.error(\"Rendition not found\", metadata);\n throw new Error(`Rendition ${renditionId} not found`);\n }\n\n const template =\n segmentId === \"init\"\n ? metadata.templates.initSegment\n : metadata.templates.mediaSegment;\n return template\n .replace(\"{rendition}\", renditionId)\n .replace(\"{segmentId}\", segmentId.toString())\n .replace(\"{src}\", metadata.src)\n .replace(\"{trackId}\", rendition.trackId?.toString() ?? \"\");\n }\n\n /**\n * Generate init segment URL\n */\n generateInitSegmentUrl(mediaUrl: string, rendition: string): string {\n return `${this.baseUrl()}/api/v1/transcode/${rendition}/init.mp4?url=${encodeURIComponent(mediaUrl)}`;\n }\n\n /**\n * Generate manifest URL\n */\n generateManifestUrl(mediaUrl: string): string {\n return `${this.baseUrl()}/api/v1/transcode/manifest.json?url=${encodeURIComponent(mediaUrl)}`;\n }\n\n /**\n * Generate track fragment index URL using production API format\n * @deprecated Use MD5-based URL generation in AssetMediaEngine.fetch() instead\n */\n generateTrackFragmentIndexUrl(mediaUrl: string): string {\n // Normalize the path: remove leading slash and any double slashes\n let normalizedSrc = mediaUrl.startsWith(\"/\")\n ? mediaUrl.slice(1)\n : mediaUrl;\n // Remove any remaining leading slashes (handles cases like \"//assets/video.mp4\")\n normalizedSrc = normalizedSrc.replace(/^\\/+/, \"\");\n // Legacy format - kept for backward compatibility but should not be used\n return `@ef-track-fragment-index/${normalizedSrc}`;\n }\n\n /**\n * Generate quality presets URL\n */\n generatePresetsUrl(): string {\n return `${this.baseUrl()}/api/v1/transcode/presets`;\n }\n}\n"],"mappings":";AAOA,IAAa,eAAb,MAA0B;CACxB,YAAY,AAAQA,SAAuB;EAAvB;;;;;CAKpB,aAAqB;AACnB,SAAO,KAAK,SAAS;;;;;CAMvB,mBACE,WACA,aACA,UACQ;EACR,MAAM,iBAAiB,SAAS;EAChC,MAAM,iBAAiB,SAAS;EAChC,MAAM,YAAY,kBAAkB;AACpC,MAAI,CAAC,WAAW;AACd,WAAQ,MAAM,uBAAuB,SAAS;AAC9C,SAAM,IAAI,MAAM,aAAa,YAAY,YAAY;;AAOvD,UAHE,cAAc,SACV,SAAS,UAAU,cACnB,SAAS,UAAU,cAEtB,QAAQ,eAAe,YAAY,CACnC,QAAQ,eAAe,UAAU,UAAU,CAAC,CAC5C,QAAQ,SAAS,SAAS,IAAI,CAC9B,QAAQ,aAAa,UAAU,SAAS,UAAU,IAAI,GAAG;;;;;CAM9D,uBAAuB,UAAkB,WAA2B;AAClE,SAAO,GAAG,KAAK,SAAS,CAAC,oBAAoB,UAAU,gBAAgB,mBAAmB,SAAS;;;;;CAMrG,oBAAoB,UAA0B;AAC5C,SAAO,GAAG,KAAK,SAAS,CAAC,sCAAsC,mBAAmB,SAAS;;;;;;CAO7F,8BAA8B,UAA0B;EAEtD,IAAI,gBAAgB,SAAS,WAAW,IAAI,GACxC,SAAS,MAAM,EAAE,GACjB;AAEJ,kBAAgB,cAAc,QAAQ,QAAQ,GAAG;AAEjD,SAAO,4BAA4B;;;;;CAMrC,qBAA6B;AAC3B,SAAO,GAAG,KAAK,SAAS,CAAC"}
|