@remotion/promo-pages 4.0.540 → 4.0.541

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/design.js CHANGED
@@ -3578,8 +3578,9 @@ var cutPath = (d, length) => {
3578
3578
  if (summedUpLength + instructionAndInfo.length > length) {
3579
3579
  const remainingLength = length - summedUpLength;
3580
3580
  const progress = remainingLength / instructionAndInfo.length;
3581
+ const { instruction } = instructionAndInfo;
3581
3582
  const cut = cutInstruction({
3582
- instruction: instructionAndInfo.instruction,
3583
+ instruction: instruction.type === "Z" ? { type: "L", x: segment.startPoint.x, y: segment.startPoint.y } : instruction,
3583
3584
  lastPoint: instructionAndInfo.startPoint,
3584
3585
  progress
3585
3586
  });
@@ -4312,7 +4313,7 @@ var setComponentIdentityResolver = (resolver) => {
4312
4313
  var resolveComponentIdentity = (component) => {
4313
4314
  return componentIdentityResolver?.(component) ?? component;
4314
4315
  };
4315
- var getSingleChildComponent = (children) => {
4316
+ var getSingleChildElement = (children) => {
4316
4317
  const mountedChildren = React4.Children.toArray(children);
4317
4318
  if (mountedChildren.length !== 1) {
4318
4319
  return null;
@@ -4322,12 +4323,19 @@ var getSingleChildComponent = (children) => {
4322
4323
  return null;
4323
4324
  }
4324
4325
  if (child.type === IsNotInsideSeriesProvider) {
4325
- return getSingleChildComponent(child.props.children);
4326
+ return getSingleChildElement(child.props.children);
4326
4327
  }
4327
4328
  if (typeof child.type !== "function" && typeof child.type !== "object") {
4328
4329
  return null;
4329
4330
  }
4330
- return resolveComponentIdentity(child.type);
4331
+ return child;
4332
+ };
4333
+ var getSingleChildComponent = (children) => {
4334
+ const child = getSingleChildElement(children);
4335
+ return child === null ? null : resolveComponentIdentity(child.type);
4336
+ };
4337
+ var getSingleChildProps = (children) => {
4338
+ return getSingleChildElement(children)?.props ?? null;
4331
4339
  };
4332
4340
  var CompositionRegistryFallbackContext = createContext5(null);
4333
4341
  var useIsomorphicLayoutEffect = typeof window === "undefined" ? useEffect : useLayoutEffect;
@@ -5735,9 +5743,11 @@ var makeOriginalSourceStack = ({
5735
5743
  fileName,
5736
5744
  lineNumber,
5737
5745
  columnNumber
5738
- }) => {
5739
- return `Error
5746
+ }, compiledSourceHash = null) => {
5747
+ const location = `Error
5740
5748
  at remotionOriginalSource (${ORIGINAL_SOURCE_STACK_PREFIX}${encodeURIComponent(fileName)}:${lineNumber}:${columnNumber})`;
5749
+ return compiledSourceHash === null ? location : `${location}
5750
+ at remotionCompiledSource (remotion-source-sha256:${compiledSourceHash})`;
5741
5751
  };
5742
5752
  var parseOriginalSourceStack = (stack) => {
5743
5753
  if (!stack) {
@@ -5767,7 +5777,7 @@ var setStackForControls = (controls, stack) => {
5767
5777
  var getStackForControls = (controls) => {
5768
5778
  return stacksByControls.get(controls) ?? null;
5769
5779
  };
5770
- var VERSION = "4.0.540";
5780
+ var VERSION = "4.0.541";
5771
5781
  var checkMultipleRemotionVersions = () => {
5772
5782
  if (typeof globalThis === "undefined") {
5773
5783
  return;
@@ -9523,7 +9533,7 @@ function hslToRgb(h, s, l) {
9523
9533
  return Math.round(r * 255) << 24 | Math.round(g * 255) << 16 | Math.round(b * 255) << 8;
9524
9534
  }
9525
9535
  function parse255(str) {
9526
- const int = Number.parseInt(str, 10);
9536
+ const int = Math.round(Number.parseFloat(str));
9527
9537
  if (int < 0) {
9528
9538
  return 0;
9529
9539
  }
@@ -11275,6 +11285,7 @@ var setSequenceWrapperRef = (ref, wrapperRef, node) => {
11275
11285
  ref.current = node;
11276
11286
  }
11277
11287
  };
11288
+ var getSingleChildPropsFromRef = (childrenRef) => getSingleChildProps(childrenRef.current);
11278
11289
  var RegularSequenceContentRefForwardingFunction = ({
11279
11290
  timing,
11280
11291
  from = 0,
@@ -11295,6 +11306,7 @@ var RegularSequenceContentRefForwardingFunction = ({
11295
11306
  _remotionInternalLoopDisplay: loopDisplay,
11296
11307
  _remotionInternalStack: stack,
11297
11308
  _remotionInternalSingleChildComponent: childComponentOverride,
11309
+ _remotionInternalSingleChildren: authoredChildrenOverride,
11298
11310
  _remotionInternalDocumentationLink: documentationLink,
11299
11311
  _remotionInternalPremountDisplay: premountDisplay,
11300
11312
  _remotionInternalPostmountDisplay: postmountDisplay,
@@ -11345,6 +11357,7 @@ var RegularSequenceContentRefForwardingFunction = ({
11345
11357
  loopPeriod,
11346
11358
  loopIteration,
11347
11359
  contentVisible,
11360
+ inheritedFrozenFrame,
11348
11361
  currentFrameRef
11349
11362
  } = timing;
11350
11363
  if (typeof contentDurationInFrames !== "number") {
@@ -11469,7 +11482,13 @@ var RegularSequenceContentRefForwardingFunction = ({
11469
11482
  }, [name]);
11470
11483
  const resolvedDocumentationLink = documentationLink ?? "https://www.remotion.dev/docs/sequence";
11471
11484
  const isInsideSeries = useContext28(IsInsideSeriesContext);
11472
- const singleChildComponent = useMemo22(() => childComponentOverride === undefined ? getSingleChildComponent(children) : childComponentOverride, [children, childComponentOverride]);
11485
+ const authoredChildren = authoredChildrenOverride === undefined ? children : authoredChildrenOverride;
11486
+ const singleChildComponent = useMemo22(() => childComponentOverride === undefined ? getSingleChildComponent(authoredChildren) : childComponentOverride, [authoredChildren, childComponentOverride]);
11487
+ const childrenRef = useRef8(authoredChildren);
11488
+ useLayoutEffect9(() => {
11489
+ childrenRef.current = authoredChildren;
11490
+ }, [authoredChildren]);
11491
+ const getRegisteredSingleChildProps = useMemo22(() => childComponentOverride === undefined ? getSingleChildPropsFromRef.bind(null, childrenRef) : null, [childComponentOverride]);
11473
11492
  const registrationStack = controls ? getStackForControls(controls) ?? stack ?? null : stack ?? null;
11474
11493
  const getStack = useMemo22(() => getSequenceStack.bind(null, registrationStack), [registrationStack]);
11475
11494
  const registeredFrozenFrame = typeof freeze === "number" ? freeze : null;
@@ -11478,7 +11497,8 @@ var RegularSequenceContentRefForwardingFunction = ({
11478
11497
  const parentCumulatedNegativeFrom = parentSequence?.cumulatedNegativeFrom ?? 0;
11479
11498
  const startMediaFrom = isMedia && isMedia.type !== "image" ? isMedia.data.startMediaFrom + parentCumulatedNegativeFrom - cumulatedNegativeFrom : null;
11480
11499
  const mediaFrameAtSequenceZero = isMedia && isMedia.type !== "image" ? isMedia.data.startMediaFrom + parentCumulatedNegativeFrom : null;
11481
- const frozenMediaFrame = isMedia && isMedia.type !== "image" && mediaFrameAtSequenceZero !== null ? registeredFrozenFrame === null ? null : mediaFrameAtSequenceZero + (resolvedLoopDisplay ? registeredFrozenFrame % resolvedLoopDisplay.durationInFrames : registeredFrozenFrame) * isMedia.data.playbackRate : null;
11500
+ const mediaFreezeFrame = registeredFrozenFrame ?? (contentVisible && !parentDormant && !premounting && !postmounting ? inheritedFrozenFrame : null);
11501
+ const frozenMediaFrame = isMedia && isMedia.type !== "image" && mediaFrameAtSequenceZero !== null && mediaFreezeFrame !== null ? mediaFrameAtSequenceZero + (resolvedLoopDisplay ? mediaFreezeFrame % resolvedLoopDisplay.durationInFrames : mediaFreezeFrame) * isMedia.data.playbackRate : null;
11482
11502
  const controlsSchema = controls?.schema;
11483
11503
  const controlsRuntimeValues = controls?.runtimeValues;
11484
11504
  const controlsOverrideId = controls?.overrideId;
@@ -11486,8 +11506,7 @@ var RegularSequenceContentRefForwardingFunction = ({
11486
11506
  const controlsComponentIdentity = controls?.componentIdentity;
11487
11507
  const controlsComponentName = controls?.componentName;
11488
11508
  const controlsVideoConfigValues = controls?.videoConfigValues;
11489
- const isInsideNonPremountFreeze = useIsInsideNonPremountFreeze();
11490
- const canInferDuration = (controlsComponentIdentity === "dev.remotion.remotion.Series" || controlsComponentIdentity === "dev.remotion.transitions.TransitionSeries") && !loop && registeredFrozenFrame === null && !isInsideNonPremountFreeze && !hidden;
11509
+ const canInferDuration = (controlsComponentIdentity === "dev.remotion.remotion.Series" || controlsComponentIdentity === "dev.remotion.transitions.TransitionSeries") && !loop && registeredFrozenFrame === null && inheritedFrozenFrame === null && !hidden;
11491
11510
  const autoDuration = canInferDuration && durationInFrames === undefined;
11492
11511
  const isSeriesChild = controlsComponentIdentity === "dev.remotion.remotion.Series.Sequence" || controlsComponentIdentity === "dev.remotion.transitions.TransitionSeries.Sequence" || controlsComponentIdentity === "dev.remotion.transitions.TransitionSeries.Transition" || controlsComponentIdentity === "dev.remotion.transitions.TransitionSeries.Overlay";
11493
11512
  const effectRuntimeValues = useMemo22(() => _remotionInternalEffects?.runtimeValues ?? null, [_remotionInternalEffects]);
@@ -11549,7 +11568,8 @@ var RegularSequenceContentRefForwardingFunction = ({
11549
11568
  refForOutline: refForOutline ?? null,
11550
11569
  isInsideSeries,
11551
11570
  frozenFrame: registeredFrozenFrame,
11552
- singleChildComponent: singleChildComponent ?? null
11571
+ singleChildComponent: singleChildComponent ?? null,
11572
+ getSingleChildProps: getRegisteredSingleChildProps
11553
11573
  };
11554
11574
  }
11555
11575
  return {
@@ -11582,7 +11602,8 @@ var RegularSequenceContentRefForwardingFunction = ({
11582
11602
  isInsideSeries,
11583
11603
  frozenFrame: registeredFrozenFrame,
11584
11604
  frozenMediaFrame,
11585
- singleChildComponent: singleChildComponent ?? null
11605
+ singleChildComponent: singleChildComponent ?? null,
11606
+ getSingleChildProps: getRegisteredSingleChildProps
11586
11607
  };
11587
11608
  }
11588
11609
  return {
@@ -11612,7 +11633,8 @@ var RegularSequenceContentRefForwardingFunction = ({
11612
11633
  refForOutline: refForOutline ?? null,
11613
11634
  isInsideSeries,
11614
11635
  frozenFrame: registeredFrozenFrame,
11615
- singleChildComponent: singleChildComponent ?? null
11636
+ singleChildComponent: singleChildComponent ?? null,
11637
+ getSingleChildProps: getRegisteredSingleChildProps
11616
11638
  };
11617
11639
  }, [
11618
11640
  id,
@@ -11646,7 +11668,8 @@ var RegularSequenceContentRefForwardingFunction = ({
11646
11668
  startMediaFrom,
11647
11669
  mediaFrameAtSequenceZero,
11648
11670
  frozenMediaFrame,
11649
- singleChildComponent
11671
+ singleChildComponent,
11672
+ getRegisteredSingleChildProps
11650
11673
  ]);
11651
11674
  const getSequenceForRegistration = useMemo22(() => getSequenceRegistration.bind(null, sequenceForRegistration), [sequenceForRegistration]);
11652
11675
  const registration = useSequenceRegistration({
@@ -11810,6 +11833,7 @@ var RegularSequenceRefForwardingFunction = (props, ref) => {
11810
11833
  const loopOffset = loopPeriod === null ? 0 : loopIteration * loopPeriod;
11811
11834
  const currentSequenceStart = cumulatedFrom + (from + loopOffset - trimBefore / playbackRate) / parentPlaybackRate;
11812
11835
  const currentFrame = typeof freeze === "number" ? freeze : (absoluteFrame - currentSequenceStart) * (parentPlaybackRate * playbackRate);
11836
+ const inheritedFrozenFrame = useIsInsideNonPremountFreeze() ? currentFrame : null;
11813
11837
  const currentFrameRef = useRef8(currentFrame);
11814
11838
  const timing = useMemo22(() => ({
11815
11839
  contentDurationInFrames,
@@ -11818,6 +11842,7 @@ var RegularSequenceRefForwardingFunction = (props, ref) => {
11818
11842
  loopPeriod,
11819
11843
  loopIteration,
11820
11844
  contentVisible,
11845
+ inheritedFrozenFrame,
11821
11846
  currentFrameRef
11822
11847
  }), [
11823
11848
  contentDurationInFrames,
@@ -11825,7 +11850,8 @@ var RegularSequenceRefForwardingFunction = (props, ref) => {
11825
11850
  actualDurationInFrames,
11826
11851
  loopPeriod,
11827
11852
  loopIteration,
11828
- contentVisible
11853
+ contentVisible,
11854
+ inheritedFrozenFrame
11829
11855
  ]);
11830
11856
  return /* @__PURE__ */ jsxs2(React27.Fragment, {
11831
11857
  children: [
@@ -12105,6 +12131,16 @@ var AbsoluteFill = withInteractivitySchema({
12105
12131
  supportsEffects: false
12106
12132
  });
12107
12133
  addSequenceStackTraces(AbsoluteFill);
12134
+ var getCanvasPropsFromSequenceProps = (props) => {
12135
+ const canvasProps = {};
12136
+ const mutableCanvasProps = canvasProps;
12137
+ for (const key in props) {
12138
+ if (Object.prototype.hasOwnProperty.call(props, key) && (key.startsWith("data-") || key.startsWith("aria-"))) {
12139
+ mutableCanvasProps[key] = props[key];
12140
+ }
12141
+ }
12142
+ return canvasProps;
12143
+ };
12108
12144
  var useCropStyle = ({
12109
12145
  cropLeft,
12110
12146
  cropRight,
@@ -13392,16 +13428,6 @@ var animatedImageSchema = {
13392
13428
  ...borderSchema2,
13393
13429
  ...borderRadiusSchema2
13394
13430
  };
13395
- var getCanvasPropsFromSequenceProps = (props) => {
13396
- const canvasProps = {};
13397
- const mutableCanvasProps = canvasProps;
13398
- for (const key in props) {
13399
- if (Object.prototype.hasOwnProperty.call(props, key) && (key.startsWith("data-") || key.startsWith("aria-"))) {
13400
- mutableCanvasProps[key] = props[key];
13401
- }
13402
- }
13403
- return canvasProps;
13404
- };
13405
13431
  var AnimatedImageContent = forwardRef4(({
13406
13432
  src,
13407
13433
  width,
@@ -13887,6 +13913,16 @@ var RenderAssetManagerProvider = ({ children, collectAssets }) => {
13887
13913
  });
13888
13914
  };
13889
13915
  var ArtifactThumbnail = Symbol("Thumbnail");
13916
+ var encodeBinaryArtifact = (bytes) => {
13917
+ if ("toBase64" in bytes && typeof bytes.toBase64 === "function") {
13918
+ return bytes.toBase64();
13919
+ }
13920
+ let binary = "";
13921
+ for (let offset = 0;offset < bytes.length; offset += 32768) {
13922
+ binary += String.fromCharCode(...bytes.subarray(offset, offset + 32768));
13923
+ }
13924
+ return btoa(binary);
13925
+ };
13890
13926
  var Artifact = ({ filename, content, downloadBehavior }) => {
13891
13927
  const { registerRenderAsset, unregisterRenderAsset } = useContext30(RenderAssetManager);
13892
13928
  const env = useRemotionEnvironment();
@@ -13902,7 +13938,7 @@ var Artifact = ({ filename, content, downloadBehavior }) => {
13902
13938
  registerRenderAsset({
13903
13939
  type: "artifact",
13904
13940
  id,
13905
- content: btoa(new TextDecoder("utf8").decode(content)),
13941
+ content: encodeBinaryArtifact(content),
13906
13942
  filename,
13907
13943
  frame,
13908
13944
  contentType: "binary",
@@ -15683,9 +15719,7 @@ var getMediaSyncAction = (input) => {
15683
15719
  ended,
15684
15720
  desiredUnclampedTime,
15685
15721
  mediaTagTime,
15686
- mediaTagLastUpdate,
15687
15722
  rvcTime,
15688
- rvcLastUpdate,
15689
15723
  isVariableFpsVideo,
15690
15724
  acceptableTimeShift,
15691
15725
  lastSeekDueToShift,
@@ -15697,13 +15731,11 @@ var getMediaSyncAction = (input) => {
15697
15731
  onlyWarnForMediaSeekingError,
15698
15732
  isPremounting,
15699
15733
  isPostmounting,
15700
- pauseWhenBuffering
15734
+ pauseWhenBuffering,
15735
+ mediaType
15701
15736
  } = input;
15702
15737
  const shouldBeTime = !Number.isNaN(duration) && Number.isFinite(duration) ? Math.min(duration, desiredUnclampedTime) : desiredUnclampedTime;
15703
- const timeShiftMediaTag = Math.abs(shouldBeTime - mediaTagTime);
15704
- const timeShiftRvcTag = rvcTime ? Math.abs(shouldBeTime - rvcTime) : null;
15705
- const mostRecentTimeshift = rvcLastUpdate && rvcTime > mediaTagLastUpdate ? timeShiftRvcTag : timeShiftMediaTag;
15706
- const timeShift = timeShiftRvcTag && !isVariableFpsVideo ? mostRecentTimeshift : timeShiftMediaTag;
15738
+ const timeShift = Math.abs(shouldBeTime - mediaTagTime);
15707
15739
  if (timeShift > acceptableTimeShift && lastSeekDueToShift !== shouldBeTime) {
15708
15740
  return {
15709
15741
  type: "seek-due-to-shift",
@@ -15716,18 +15748,23 @@ var getMediaSyncAction = (input) => {
15716
15748
  }
15717
15749
  const seekThreshold = playing ? 0.15 : 0.01;
15718
15750
  const makesSenseToSeek = Math.abs(currentTime - shouldBeTime) > seekThreshold;
15751
+ const audioLead = currentTime - shouldBeTime;
15752
+ const holdAudioUntilTimelineCatchesUp = mediaType === "audio" && playing && playbackRate > 0 && makesSenseToSeek && audioLead > 0 && audioLead <= acceptableTimeShift;
15719
15753
  const isSomethingElseBuffering = playerBuffering && !mediaTagBufferingOrStalled;
15720
15754
  if (!playing || isSomethingElseBuffering) {
15721
15755
  return {
15722
15756
  type: "seek-if-not-playing",
15723
15757
  shouldBeTime,
15724
- why: makesSenseToSeek ? `not playing or something else is buffering. time offset is over seek threshold (${seekThreshold})` : null
15758
+ why: makesSenseToSeek && !holdAudioUntilTimelineCatchesUp ? `not playing or something else is buffering. time offset is over seek threshold (${seekThreshold})` : null
15725
15759
  };
15726
15760
  }
15727
15761
  if (!playing || playerBuffering) {
15728
15762
  return { type: "none" };
15729
15763
  }
15730
15764
  const pausedCondition = paused && !ended;
15765
+ if (pausedCondition && holdAudioUntilTimelineCatchesUp) {
15766
+ return { type: "none" };
15767
+ }
15731
15768
  const firstFrameCondition = absoluteFrame === 0;
15732
15769
  if (pausedCondition || firstFrameCondition) {
15733
15770
  const reason = pausedCondition ? "media tag is paused" : "absolute frame is 0";
@@ -15741,19 +15778,15 @@ var getMediaSyncAction = (input) => {
15741
15778
  }
15742
15779
  return { type: "none" };
15743
15780
  };
15744
- var useCurrentTimeOfMediaTagWithUpdateTimeStamp = (mediaRef) => {
15745
- const lastUpdate = React35.useRef({
15746
- time: mediaRef.current?.currentTime ?? 0,
15747
- lastUpdate: performance.now()
15781
+ var useCurrentTimeOfMediaTag = (mediaRef) => {
15782
+ const currentTime = React35.useRef({
15783
+ time: mediaRef.current?.currentTime ?? 0
15748
15784
  });
15749
15785
  const nowCurrentTime = mediaRef.current?.currentTime ?? null;
15750
15786
  if (nowCurrentTime !== null) {
15751
- if (lastUpdate.current.time !== nowCurrentTime) {
15752
- lastUpdate.current.time = nowCurrentTime;
15753
- lastUpdate.current.lastUpdate = performance.now();
15754
- }
15787
+ currentTime.current.time = nowCurrentTime;
15755
15788
  }
15756
- return lastUpdate;
15789
+ return currentTime;
15757
15790
  };
15758
15791
  var seek = ({
15759
15792
  mediaRef,
@@ -15920,8 +15953,7 @@ var useRequestVideoCallbackTime = ({
15920
15953
  const { current } = mediaRef;
15921
15954
  if (current) {
15922
15955
  currentTime.current = {
15923
- time: current.currentTime,
15924
- lastUpdate: performance.now()
15956
+ time: current.currentTime
15925
15957
  };
15926
15958
  } else {
15927
15959
  currentTime.current = null;
@@ -15951,8 +15983,7 @@ var useRequestVideoCallbackTime = ({
15951
15983
  }
15952
15984
  }
15953
15985
  currentTime.current = {
15954
- time: info.mediaTime,
15955
- lastUpdate: performance.now()
15986
+ time: info.mediaTime
15956
15987
  };
15957
15988
  request();
15958
15989
  });
@@ -16083,7 +16114,7 @@ var useMediaPlayback = ({
16083
16114
  lastSeek,
16084
16115
  onVariableFpsVideoDetected
16085
16116
  });
16086
- const mediaTagCurrentTime = useCurrentTimeOfMediaTagWithUpdateTimeStamp(mediaRef);
16117
+ const mediaTagCurrentTime = useCurrentTimeOfMediaTag(mediaRef);
16087
16118
  const desiredUnclampedTime = getMediaTime({
16088
16119
  frame,
16089
16120
  playbackRate: localPlaybackRate,
@@ -16164,9 +16195,7 @@ var useMediaPlayback = ({
16164
16195
  ended: current.ended,
16165
16196
  desiredUnclampedTime,
16166
16197
  mediaTagTime: mediaTagCurrentTime.current.time,
16167
- mediaTagLastUpdate: mediaTagCurrentTime.current.lastUpdate,
16168
16198
  rvcTime: rvcCurrentTime.current?.time ?? null,
16169
- rvcLastUpdate: rvcCurrentTime.current?.lastUpdate ?? null,
16170
16199
  isVariableFpsVideo: Boolean(isVariableFpsVideoMap.current[src]),
16171
16200
  acceptableTimeShift: acceptableTimeShiftButLessThanDuration,
16172
16201
  lastSeekDueToShift: lastSeekDueToShift.current,
@@ -16178,7 +16207,8 @@ var useMediaPlayback = ({
16178
16207
  onlyWarnForMediaSeekingError,
16179
16208
  isPremounting,
16180
16209
  isPostmounting,
16181
- pauseWhenBuffering
16210
+ pauseWhenBuffering,
16211
+ mediaType
16182
16212
  });
16183
16213
  if (action.type === "none") {
16184
16214
  return;
@@ -17022,7 +17052,8 @@ var SolidInner = ({
17022
17052
  pixelDensity,
17023
17053
  overrideId,
17024
17054
  videoConfigValues,
17025
- reference
17055
+ reference,
17056
+ canvasProps
17026
17057
  }) => {
17027
17058
  const { delayRender, continueRender, cancelRender } = useDelayRender();
17028
17059
  const resolvedPixelDensity = resolveSolidPixelDensity(pixelDensity);
@@ -17110,6 +17141,7 @@ var SolidInner = ({
17110
17141
  };
17111
17142
  }, [height, style, width]);
17112
17143
  return /* @__PURE__ */ jsx31("canvas", {
17144
+ ...canvasProps,
17113
17145
  ref: canvasRef,
17114
17146
  width: canvasWidth,
17115
17147
  height: canvasHeight,
@@ -17206,6 +17238,7 @@ var SolidOuter = forwardRef8(({
17206
17238
  _remotionInternalIsPostmounting: postmountingActive,
17207
17239
  children: /* @__PURE__ */ jsx31(SequenceContent, {
17208
17240
  children: /* @__PURE__ */ jsx31(SolidInner, {
17241
+ canvasProps: getCanvasPropsFromSequenceProps(props),
17209
17242
  reference: actualRef,
17210
17243
  videoConfigValues: controls?.videoConfigValues ?? null,
17211
17244
  overrideId: controls?.overrideId ?? null,
@@ -19616,7 +19649,7 @@ var createElementSourceProxy = (api, sourceArgumentIndex, getSourceFileName) =>
19616
19649
  fileName: getSourceFileName(source.fileName),
19617
19650
  lineNumber: source.lineNumber,
19618
19651
  columnNumber: source.columnNumber - 1
19619
- });
19652
+ }, typeof source.__remotionCompiledSourceHash === "string" ? source.__remotionCompiledSourceHash : null);
19620
19653
  } else {
19621
19654
  const { stackTraceLimit } = Error;
19622
19655
  const canLimitStack = typeof stackTraceLimit === "number" && stackTraceLimit > 2 && Object.getOwnPropertyDescriptor(Error, "stackTraceLimit")?.writable;