@remotion/promo-pages 4.0.489 → 4.0.491
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/Homepage.js +1018 -556
- package/dist/components/Homepage.js +5 -17
- package/dist/components/homepage/CommunityStatsItems.js +1 -1
- package/dist/components/homepage/Demo/Card.d.ts +3 -3
- package/dist/components/homepage/Demo/DemoRender.d.ts +1 -1
- package/dist/components/homepage/Demo/DisplayedEmoji.js +12 -4
- package/dist/components/homepage/Demo/math.d.ts +1 -1
- package/dist/components/homepage/GitHubButton.js +1 -1
- package/dist/components/homepage/MakeVideosAgentically.d.ts +1 -0
- package/dist/components/homepage/MakeVideosAgentically.js +4 -6
- package/dist/components/homepage/MakeVideosInteractively.d.ts +2 -0
- package/dist/components/homepage/MakeVideosInteractively.js +3 -6
- package/dist/components/homepage/MakeVideosLinks.js +1 -1
- package/dist/components/homepage/MakeVideosProgrammatically.d.ts +2 -0
- package/dist/components/homepage/MakeVideosProgrammatically.js +2 -5
- package/dist/components/homepage/Pricing.d.ts +6 -1
- package/dist/components/homepage/Pricing.js +12 -2
- package/dist/components/homepage/WriteInReact.js +1 -1
- package/dist/components/team/TrustSection.js +1 -1
- package/dist/design.js +355 -194
- package/dist/experts.js +340 -168
- package/dist/homepage/Pricing.js +372 -211
- package/dist/prompts/PromptsGallery.js +352 -191
- package/dist/prompts/PromptsShow.js +358 -197
- package/dist/prompts/PromptsSubmit.js +344 -183
- package/dist/team.js +329 -168
- package/dist/template-modal-content.js +372 -211
- package/dist/templates.js +373 -209
- package/package.json +13 -13
|
@@ -35,7 +35,7 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
|
|
|
35
35
|
// ../design/dist/esm/index.mjs
|
|
36
36
|
import * as React23 from "react";
|
|
37
37
|
import * as React3 from "react";
|
|
38
|
-
import { Fragment as
|
|
38
|
+
import { Fragment as Fragment22, jsx as jsx43 } from "react/jsx-runtime";
|
|
39
39
|
import React52, { useCallback as useCallback27, useRef as useRef210, useState as useState22 } from "react";
|
|
40
40
|
|
|
41
41
|
// ../../node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs
|
|
@@ -4383,13 +4383,12 @@ import { jsx as jsx34 } from "react/jsx-runtime";
|
|
|
4383
4383
|
import { jsx as jsx35 } from "react/jsx-runtime";
|
|
4384
4384
|
import React39, { useMemo as useMemo37 } from "react";
|
|
4385
4385
|
import { jsx as jsx36 } from "react/jsx-runtime";
|
|
4386
|
-
import {
|
|
4387
|
-
Children,
|
|
4386
|
+
import React41, {
|
|
4388
4387
|
forwardRef as forwardRef14,
|
|
4389
4388
|
useMemo as useMemo38
|
|
4390
4389
|
} from "react";
|
|
4391
4390
|
import React40 from "react";
|
|
4392
|
-
import { jsx as jsx37 } from "react/jsx-runtime";
|
|
4391
|
+
import { jsx as jsx37, jsxs as jsxs3, Fragment } from "react/jsx-runtime";
|
|
4393
4392
|
import React42 from "react";
|
|
4394
4393
|
import { forwardRef as forwardRef16, useCallback as useCallback25, useContext as useContext39 } from "react";
|
|
4395
4394
|
import {
|
|
@@ -5279,26 +5278,20 @@ var continueRenderInternal = ({
|
|
|
5279
5278
|
if (typeof handle !== "number") {
|
|
5280
5279
|
throw new TypeError("The parameter passed into continueRender() must be the return value of delayRender() which is a number. Got: " + JSON.stringify(handle));
|
|
5281
5280
|
}
|
|
5282
|
-
|
|
5283
|
-
|
|
5284
|
-
|
|
5285
|
-
|
|
5286
|
-
|
|
5287
|
-
|
|
5288
|
-
|
|
5289
|
-
|
|
5290
|
-
|
|
5291
|
-
|
|
5292
|
-
|
|
5293
|
-
|
|
5294
|
-
|
|
5295
|
-
|
|
5296
|
-
delete scope.remotion_delayRenderTimeouts[handle];
|
|
5297
|
-
}
|
|
5298
|
-
return false;
|
|
5299
|
-
}
|
|
5300
|
-
return true;
|
|
5301
|
-
});
|
|
5281
|
+
const handleExists = scope.remotion_delayRenderHandles.includes(handle);
|
|
5282
|
+
const timeoutEntry = scope.remotion_delayRenderTimeouts[handle];
|
|
5283
|
+
if (handleExists && environment.isRendering && timeoutEntry) {
|
|
5284
|
+
const { label: label2, startTime, timeout } = timeoutEntry;
|
|
5285
|
+
clearTimeout(timeout);
|
|
5286
|
+
const message = [
|
|
5287
|
+
label2 ? `"${label2}"` : "A handle",
|
|
5288
|
+
DELAY_RENDER_CLEAR_TOKEN,
|
|
5289
|
+
`${Date.now() - startTime}ms`
|
|
5290
|
+
].filter(truthy).join(" ");
|
|
5291
|
+
Log.verbose({ logLevel, tag: "delayRender()" }, message);
|
|
5292
|
+
delete scope.remotion_delayRenderTimeouts[handle];
|
|
5293
|
+
}
|
|
5294
|
+
scope.remotion_delayRenderHandles = scope.remotion_delayRenderHandles.filter((h) => h !== handle);
|
|
5302
5295
|
if (scope.remotion_delayRenderHandles.length === 0) {
|
|
5303
5296
|
scope.remotion_renderReady = true;
|
|
5304
5297
|
}
|
|
@@ -5571,7 +5564,7 @@ var getComponentsToAddStacksTo = () => componentsToAddStacksTo;
|
|
|
5571
5564
|
var addSequenceStackTraces = (component) => {
|
|
5572
5565
|
componentsToAddStacksTo.push(component);
|
|
5573
5566
|
};
|
|
5574
|
-
var VERSION = "4.0.
|
|
5567
|
+
var VERSION = "4.0.491";
|
|
5575
5568
|
var checkMultipleRemotionVersions = () => {
|
|
5576
5569
|
if (typeof globalThis === "undefined") {
|
|
5577
5570
|
return;
|
|
@@ -5952,7 +5945,8 @@ var transformSchema = {
|
|
|
5952
5945
|
max: 100,
|
|
5953
5946
|
step: 0.01,
|
|
5954
5947
|
default: 1,
|
|
5955
|
-
description: "Scale"
|
|
5948
|
+
description: "Scale",
|
|
5949
|
+
defaultKeyframeOutput: "perceptual-scale"
|
|
5956
5950
|
},
|
|
5957
5951
|
"style.rotate": {
|
|
5958
5952
|
type: "rotation-css",
|
|
@@ -6183,7 +6177,7 @@ var SequenceManagerRefContext = React11.createContext({
|
|
|
6183
6177
|
current: []
|
|
6184
6178
|
});
|
|
6185
6179
|
var makeSequencePropsSubscriptionKey = (key) => {
|
|
6186
|
-
return `${key.nodePath.join(".")}
|
|
6180
|
+
return `${key.absolutePath}\x00${key.nodePath.join(".")}\x00${key.sequenceKeys.join(".")}\x00${key.effectKeys.map((keys) => keys.join(".")).join(".")}`;
|
|
6187
6181
|
};
|
|
6188
6182
|
var VisualModePropStatusesContext = React11.createContext({
|
|
6189
6183
|
propStatuses: {}
|
|
@@ -6756,8 +6750,20 @@ var serializeStringInterpolationValue = ({
|
|
|
6756
6750
|
}
|
|
6757
6751
|
return values.slice(0, dimensions).map((value, index) => `${stringifyNumber(value)}${units[index]}`).join(" ");
|
|
6758
6752
|
};
|
|
6753
|
+
var toSignedArea = (scale) => {
|
|
6754
|
+
if (scale === 0) {
|
|
6755
|
+
return 0;
|
|
6756
|
+
}
|
|
6757
|
+
return Math.sign(scale) * scale * scale;
|
|
6758
|
+
};
|
|
6759
|
+
var fromSignedArea = (area) => {
|
|
6760
|
+
if (area === 0) {
|
|
6761
|
+
return 0;
|
|
6762
|
+
}
|
|
6763
|
+
return Math.sign(area) * Math.sqrt(Math.abs(area));
|
|
6764
|
+
};
|
|
6759
6765
|
function interpolateFunction(input, inputRange, outputRange, options) {
|
|
6760
|
-
const { extrapolateLeft, extrapolateRight, easing } = options;
|
|
6766
|
+
const { extrapolateLeft, extrapolateRight, easing, output } = options;
|
|
6761
6767
|
let result = input;
|
|
6762
6768
|
const [inputMin, inputMax] = inputRange;
|
|
6763
6769
|
const [outputMin, outputMax] = outputRange;
|
|
@@ -6788,7 +6794,13 @@ function interpolateFunction(input, inputRange, outputRange, options) {
|
|
|
6788
6794
|
}
|
|
6789
6795
|
result = (result - inputMin) / (inputMax - inputMin);
|
|
6790
6796
|
result = easing(result);
|
|
6791
|
-
|
|
6797
|
+
if (output === "perceptual-scale") {
|
|
6798
|
+
const signedAreaMin = toSignedArea(outputMin);
|
|
6799
|
+
const signedAreaMax = toSignedArea(outputMax);
|
|
6800
|
+
result = fromSignedArea(result * (signedAreaMax - signedAreaMin) + signedAreaMin);
|
|
6801
|
+
} else {
|
|
6802
|
+
result = result * (outputMax - outputMin) + outputMin;
|
|
6803
|
+
}
|
|
6792
6804
|
return result;
|
|
6793
6805
|
}
|
|
6794
6806
|
function findRange(input, inputRange) {
|
|
@@ -6801,6 +6813,9 @@ function findRange(input, inputRange) {
|
|
|
6801
6813
|
return i - 1;
|
|
6802
6814
|
}
|
|
6803
6815
|
var defaultEasing = (num) => num;
|
|
6816
|
+
var resolveOutputOption = (output) => {
|
|
6817
|
+
return output ?? "linear";
|
|
6818
|
+
};
|
|
6804
6819
|
var shouldExtendRightForEasing = (easing) => {
|
|
6805
6820
|
return easing.remotionShouldExtendRight === true;
|
|
6806
6821
|
};
|
|
@@ -6822,12 +6837,14 @@ var interpolateSegment = ({
|
|
|
6822
6837
|
outputRange,
|
|
6823
6838
|
easing,
|
|
6824
6839
|
extrapolateLeft,
|
|
6825
|
-
extrapolateRight
|
|
6840
|
+
extrapolateRight,
|
|
6841
|
+
output
|
|
6826
6842
|
}) => {
|
|
6827
6843
|
return interpolateFunction(input, inputRange, outputRange, {
|
|
6828
6844
|
easing,
|
|
6829
6845
|
extrapolateLeft,
|
|
6830
|
-
extrapolateRight: input > inputRange[1] && extrapolateRight === "clamp" && shouldExtendRightForEasing(easing) ? "extend" : extrapolateRight
|
|
6846
|
+
extrapolateRight: input > inputRange[1] && extrapolateRight === "clamp" && shouldExtendRightForEasing(easing) ? "extend" : extrapolateRight,
|
|
6847
|
+
output
|
|
6831
6848
|
});
|
|
6832
6849
|
};
|
|
6833
6850
|
var interpolateNumber = ({
|
|
@@ -6836,6 +6853,7 @@ var interpolateNumber = ({
|
|
|
6836
6853
|
outputRange,
|
|
6837
6854
|
options
|
|
6838
6855
|
}) => {
|
|
6856
|
+
const output = resolveOutputOption(options?.output);
|
|
6839
6857
|
if (inputRange.length === 1) {
|
|
6840
6858
|
return outputRange[0];
|
|
6841
6859
|
}
|
|
@@ -6860,7 +6878,8 @@ var interpolateNumber = ({
|
|
|
6860
6878
|
outputRange: [outputRange[range], outputRange[range + 1]],
|
|
6861
6879
|
easing,
|
|
6862
6880
|
extrapolateLeft,
|
|
6863
|
-
extrapolateRight
|
|
6881
|
+
extrapolateRight,
|
|
6882
|
+
output
|
|
6864
6883
|
});
|
|
6865
6884
|
for (let segmentIndex = 0;segmentIndex < range; segmentIndex++) {
|
|
6866
6885
|
const previousEasing = resolveEasingForSegment({
|
|
@@ -6880,7 +6899,8 @@ var interpolateNumber = ({
|
|
|
6880
6899
|
outputRange: [outputRange[segmentIndex], outputRange[segmentIndex + 1]],
|
|
6881
6900
|
easing: previousEasing,
|
|
6882
6901
|
extrapolateLeft,
|
|
6883
|
-
extrapolateRight: "extend"
|
|
6902
|
+
extrapolateRight: "extend",
|
|
6903
|
+
output
|
|
6884
6904
|
});
|
|
6885
6905
|
result += continuedSegmentValue - outputRange[segmentIndex + 1];
|
|
6886
6906
|
}
|
|
@@ -6928,14 +6948,18 @@ var interpolateString = ({
|
|
|
6928
6948
|
}
|
|
6929
6949
|
}
|
|
6930
6950
|
}
|
|
6931
|
-
|
|
6932
|
-
|
|
6933
|
-
values
|
|
6951
|
+
const values = [0, 0, 0];
|
|
6952
|
+
for (let axis = 0;axis < dimensions; axis++) {
|
|
6953
|
+
values[axis] = interpolateNumber({
|
|
6934
6954
|
input,
|
|
6935
6955
|
inputRange,
|
|
6936
6956
|
outputRange: parsedOutputRange.map((parsed) => parsed.values[axis]),
|
|
6937
6957
|
options
|
|
6938
|
-
})
|
|
6958
|
+
});
|
|
6959
|
+
}
|
|
6960
|
+
return serializeStringInterpolationValue({
|
|
6961
|
+
kind,
|
|
6962
|
+
values,
|
|
6939
6963
|
units,
|
|
6940
6964
|
dimensions
|
|
6941
6965
|
});
|
|
@@ -7019,6 +7043,12 @@ function assertValidInterpolatePosterizeOption(posterize) {
|
|
|
7019
7043
|
throw new Error(`posterize must be a positive finite number, but got ${posterize}`);
|
|
7020
7044
|
}
|
|
7021
7045
|
}
|
|
7046
|
+
function assertValidInterpolateOutputOption(output) {
|
|
7047
|
+
if (output === undefined || output === "linear" || output === "perceptual-scale") {
|
|
7048
|
+
return;
|
|
7049
|
+
}
|
|
7050
|
+
throw new Error(`output must be "linear" or "perceptual-scale", but got ${String(output)}`);
|
|
7051
|
+
}
|
|
7022
7052
|
function interpolate(input, inputRange, outputRange, options) {
|
|
7023
7053
|
if (typeof input === "undefined") {
|
|
7024
7054
|
throw new Error("input can not be undefined");
|
|
@@ -7036,6 +7066,7 @@ function interpolate(input, inputRange, outputRange, options) {
|
|
|
7036
7066
|
checkValidInputRange(inputRange);
|
|
7037
7067
|
assertValidInterpolateEasingOption(options?.easing, inputRange.length);
|
|
7038
7068
|
assertValidInterpolatePosterizeOption(options?.posterize);
|
|
7069
|
+
assertValidInterpolateOutputOption(options?.output);
|
|
7039
7070
|
if (typeof input !== "number") {
|
|
7040
7071
|
throw new TypeError("Cannot interpolate an input which is not a number");
|
|
7041
7072
|
}
|
|
@@ -7980,6 +8011,7 @@ var interpolateKeyframedStatus = ({
|
|
|
7980
8011
|
easing: easing.map((e) => easingToFn({ easing: e, forceSpringAllowTail })),
|
|
7981
8012
|
extrapolateLeft: clamping.left,
|
|
7982
8013
|
extrapolateRight: clamping.right,
|
|
8014
|
+
output: status.output,
|
|
7983
8015
|
posterize: status.posterize
|
|
7984
8016
|
});
|
|
7985
8017
|
} catch {
|
|
@@ -8220,7 +8252,7 @@ var getFlatSchemaWithAllKeys = (schema) => {
|
|
|
8220
8252
|
const out = {};
|
|
8221
8253
|
const addKey = (key, field) => {
|
|
8222
8254
|
if (key in out) {
|
|
8223
|
-
|
|
8255
|
+
return;
|
|
8224
8256
|
}
|
|
8225
8257
|
out[key] = field;
|
|
8226
8258
|
};
|
|
@@ -8758,6 +8790,7 @@ var RegularSequenceRefForwardingFunction = ({
|
|
|
8758
8790
|
src: isMedia.data.src,
|
|
8759
8791
|
getStack: () => stackRef.current,
|
|
8760
8792
|
startMediaFrom: startMediaFrom ?? isMedia.data.startMediaFrom,
|
|
8793
|
+
mediaFrameAtSequenceZero,
|
|
8761
8794
|
volume: isMedia.data.volumes,
|
|
8762
8795
|
refForOutline: refForOutline ?? null,
|
|
8763
8796
|
isInsideSeries,
|
|
@@ -8821,6 +8854,7 @@ var RegularSequenceRefForwardingFunction = ({
|
|
|
8821
8854
|
isInsideSeries,
|
|
8822
8855
|
registeredFrozenFrame,
|
|
8823
8856
|
startMediaFrom,
|
|
8857
|
+
mediaFrameAtSequenceZero,
|
|
8824
8858
|
frozenMediaFrame
|
|
8825
8859
|
]);
|
|
8826
8860
|
const endThreshold = Math.ceil(cumulatedFrom + from + durationInFrames - 1);
|
|
@@ -10771,7 +10805,9 @@ var SharedAudioTagsContextProvider = ({ children, numberOfAudioTags }) => {
|
|
|
10771
10805
|
return;
|
|
10772
10806
|
}
|
|
10773
10807
|
if (data === undefined) {
|
|
10774
|
-
current.src
|
|
10808
|
+
if (current.src !== EMPTY_AUDIO) {
|
|
10809
|
+
current.src = EMPTY_AUDIO;
|
|
10810
|
+
}
|
|
10775
10811
|
return;
|
|
10776
10812
|
}
|
|
10777
10813
|
if (!data) {
|
|
@@ -10840,7 +10876,7 @@ var SharedAudioTagsContextProvider = ({ children, numberOfAudioTags }) => {
|
|
|
10840
10876
|
if (prevA.id === id) {
|
|
10841
10877
|
const isTheSame = compareProps(aud, prevA.props) && prevA.premounting === premounting && prevA.postmounting === postmounting;
|
|
10842
10878
|
if (isTheSame) {
|
|
10843
|
-
return prevA;
|
|
10879
|
+
return prevA.audioMounted === audioMounted ? prevA : { ...prevA, audioMounted };
|
|
10844
10880
|
}
|
|
10845
10881
|
changed = true;
|
|
10846
10882
|
return {
|
|
@@ -10852,7 +10888,7 @@ var SharedAudioTagsContextProvider = ({ children, numberOfAudioTags }) => {
|
|
|
10852
10888
|
audioMounted
|
|
10853
10889
|
};
|
|
10854
10890
|
}
|
|
10855
|
-
return prevA;
|
|
10891
|
+
return prevA.audioMounted === audioMounted ? prevA : { ...prevA, audioMounted };
|
|
10856
10892
|
});
|
|
10857
10893
|
if (changed) {
|
|
10858
10894
|
rerenderAudios();
|
|
@@ -10891,16 +10927,19 @@ var SharedAudioTagsContextProvider = ({ children, numberOfAudioTags }) => {
|
|
|
10891
10927
|
unregisterAudio,
|
|
10892
10928
|
updateAudio
|
|
10893
10929
|
]);
|
|
10930
|
+
const sharedAudioTagElements = useMemo21(() => {
|
|
10931
|
+
return refs.map(({ id, ref }) => {
|
|
10932
|
+
return /* @__PURE__ */ jsx19("audio", {
|
|
10933
|
+
ref,
|
|
10934
|
+
preload: "metadata",
|
|
10935
|
+
src: EMPTY_AUDIO
|
|
10936
|
+
}, id);
|
|
10937
|
+
});
|
|
10938
|
+
}, [refs]);
|
|
10894
10939
|
return /* @__PURE__ */ jsxs2(SharedAudioTagsContext.Provider, {
|
|
10895
10940
|
value: audioTagsValue,
|
|
10896
10941
|
children: [
|
|
10897
|
-
|
|
10898
|
-
return /* @__PURE__ */ jsx19("audio", {
|
|
10899
|
-
ref,
|
|
10900
|
-
preload: "metadata",
|
|
10901
|
-
src: EMPTY_AUDIO
|
|
10902
|
-
}, id);
|
|
10903
|
-
}),
|
|
10942
|
+
sharedAudioTagElements,
|
|
10904
10943
|
children
|
|
10905
10944
|
]
|
|
10906
10945
|
});
|
|
@@ -11361,6 +11400,7 @@ var useMediaInTimeline = ({
|
|
|
11361
11400
|
showInTimeline: true,
|
|
11362
11401
|
nonce: nonce.get(),
|
|
11363
11402
|
startMediaFrom: 0 - startsAt,
|
|
11403
|
+
mediaFrameAtSequenceZero: null,
|
|
11364
11404
|
doesVolumeChange,
|
|
11365
11405
|
loopDisplay,
|
|
11366
11406
|
playbackRate,
|
|
@@ -12994,16 +13034,16 @@ var isMissingPaintRecordError = (error2) => {
|
|
|
12994
13034
|
return error2 instanceof DOMException && error2.name === "InvalidStateError";
|
|
12995
13035
|
};
|
|
12996
13036
|
var missingPaintRecordMessage = "HtmlInCanvas: Expected the element to be inside the viewport during rendering, but Chrome had no cached paint record for it.";
|
|
12997
|
-
var
|
|
12998
|
-
|
|
13037
|
+
var resizePaintTarget = ({
|
|
13038
|
+
target,
|
|
12999
13039
|
width,
|
|
13000
13040
|
height
|
|
13001
13041
|
}) => {
|
|
13002
|
-
if (
|
|
13003
|
-
|
|
13042
|
+
if (target.width !== width) {
|
|
13043
|
+
target.width = width;
|
|
13004
13044
|
}
|
|
13005
|
-
if (
|
|
13006
|
-
|
|
13045
|
+
if (target.height !== height) {
|
|
13046
|
+
target.height = height;
|
|
13007
13047
|
}
|
|
13008
13048
|
};
|
|
13009
13049
|
var defaultOnPaint = ({
|
|
@@ -13019,7 +13059,7 @@ var defaultOnPaint = ({
|
|
|
13019
13059
|
const transform = ctx.drawElementImage(elementImage, 0, 0);
|
|
13020
13060
|
element.style.transform = transform.toString();
|
|
13021
13061
|
};
|
|
13022
|
-
var HtmlInCanvasAncestorContext = createContext23(
|
|
13062
|
+
var HtmlInCanvasAncestorContext = createContext23(null);
|
|
13023
13063
|
var HtmlInCanvasContent = forwardRef9(({
|
|
13024
13064
|
width,
|
|
13025
13065
|
height,
|
|
@@ -13031,20 +13071,22 @@ var HtmlInCanvasContent = forwardRef9(({
|
|
|
13031
13071
|
controls,
|
|
13032
13072
|
style
|
|
13033
13073
|
}, ref) => {
|
|
13034
|
-
const
|
|
13074
|
+
const ancestor = useContext31(HtmlInCanvasAncestorContext);
|
|
13035
13075
|
assertHtmlInCanvasDimensions(width, height);
|
|
13036
13076
|
const resolvedPixelDensity = resolveHtmlInCanvasPixelDensity(pixelDensity);
|
|
13037
13077
|
const canvasWidth = Math.ceil(width * resolvedPixelDensity);
|
|
13038
13078
|
const canvasHeight = Math.ceil(height * resolvedPixelDensity);
|
|
13039
13079
|
const { continueRender: continueRender2, cancelRender: cancelRender2 } = useDelayRender();
|
|
13040
|
-
const { isRendering } = useRemotionEnvironment();
|
|
13080
|
+
const { isClientSideRendering, isRendering } = useRemotionEnvironment();
|
|
13081
|
+
const canRetryMissingPaintRecord = !isRendering || isClientSideRendering;
|
|
13082
|
+
const usesDirectLayoutCanvas = onPaint === undefined && onInit === undefined;
|
|
13041
13083
|
if (!isHtmlInCanvasSupported()) {
|
|
13042
13084
|
cancelRender2(new Error(HTML_IN_CANVAS_UNSUPPORTED_MESSAGE));
|
|
13043
13085
|
}
|
|
13044
13086
|
const canvas2dRef = useRef22(null);
|
|
13045
|
-
const
|
|
13087
|
+
const paintTargetRef = useRef22(null);
|
|
13046
13088
|
const divRef = useRef22(null);
|
|
13047
|
-
const canvasSizeKey = `${width}x${height}@${resolvedPixelDensity}`;
|
|
13089
|
+
const canvasSizeKey = `${width}x${height}@${resolvedPixelDensity}-${usesDirectLayoutCanvas ? "direct" : "offscreen"}`;
|
|
13048
13090
|
const setLayoutCanvasRef = useCallback16((node) => {
|
|
13049
13091
|
canvas2dRef.current = node;
|
|
13050
13092
|
if (typeof ref === "function") {
|
|
@@ -13067,17 +13109,19 @@ var HtmlInCanvasContent = forwardRef9(({
|
|
|
13067
13109
|
const initializedRef = useRef22(false);
|
|
13068
13110
|
const onInitCleanupRef = useRef22(null);
|
|
13069
13111
|
const unmountedRef = useRef22(false);
|
|
13112
|
+
const ancestorRef = useRef22(ancestor);
|
|
13113
|
+
ancestorRef.current = ancestor;
|
|
13070
13114
|
const onPaintCb = useCallback16(async () => {
|
|
13071
13115
|
const element = divRef.current;
|
|
13072
13116
|
if (!element) {
|
|
13073
13117
|
throw new Error("Canvas or scene element not found");
|
|
13074
13118
|
}
|
|
13075
|
-
const
|
|
13076
|
-
if (!
|
|
13077
|
-
throw new Error("HtmlInCanvas:
|
|
13119
|
+
const paintTarget = paintTargetRef.current;
|
|
13120
|
+
if (!paintTarget) {
|
|
13121
|
+
throw new Error("HtmlInCanvas: paint target is not ready because the canvas is remounting");
|
|
13078
13122
|
}
|
|
13079
|
-
|
|
13080
|
-
|
|
13123
|
+
resizePaintTarget({
|
|
13124
|
+
target: paintTarget,
|
|
13081
13125
|
width: canvasWidth,
|
|
13082
13126
|
height: canvasHeight
|
|
13083
13127
|
});
|
|
@@ -13088,22 +13132,30 @@ var HtmlInCanvasContent = forwardRef9(({
|
|
|
13088
13132
|
}
|
|
13089
13133
|
const handle = delayRender("onPaint");
|
|
13090
13134
|
if (!initializedRef.current) {
|
|
13091
|
-
|
|
13092
|
-
|
|
13093
|
-
|
|
13094
|
-
}
|
|
13095
|
-
|
|
13096
|
-
|
|
13097
|
-
|
|
13135
|
+
const currentOnInit = onInitRef.current;
|
|
13136
|
+
if (!currentOnInit) {
|
|
13137
|
+
initializedRef.current = true;
|
|
13138
|
+
} else {
|
|
13139
|
+
let initImage;
|
|
13140
|
+
try {
|
|
13141
|
+
initImage = placeholderCanvas.captureElementImage(element);
|
|
13142
|
+
} catch (error2) {
|
|
13143
|
+
if (isMissingPaintRecordError(error2) && canRetryMissingPaintRecord) {
|
|
13144
|
+
continueRender2(handle);
|
|
13145
|
+
return;
|
|
13146
|
+
}
|
|
13147
|
+
if (isMissingPaintRecordError(error2)) {
|
|
13148
|
+
throw new Error(missingPaintRecordMessage);
|
|
13149
|
+
}
|
|
13098
13150
|
throw error2;
|
|
13099
13151
|
}
|
|
13100
|
-
}
|
|
13101
|
-
if (initImage) {
|
|
13102
13152
|
initializedRef.current = true;
|
|
13103
|
-
|
|
13104
|
-
|
|
13153
|
+
try {
|
|
13154
|
+
if (paintTarget instanceof HTMLCanvasElement) {
|
|
13155
|
+
throw new Error("HtmlInCanvas: onInit requires an OffscreenCanvas paint target");
|
|
13156
|
+
}
|
|
13105
13157
|
const cleanup = await currentOnInit({
|
|
13106
|
-
canvas:
|
|
13158
|
+
canvas: paintTarget,
|
|
13107
13159
|
element,
|
|
13108
13160
|
elementImage: initImage,
|
|
13109
13161
|
pixelDensity: resolvedPixelDensity
|
|
@@ -13116,15 +13168,16 @@ var HtmlInCanvasContent = forwardRef9(({
|
|
|
13116
13168
|
} else {
|
|
13117
13169
|
onInitCleanupRef.current = cleanup;
|
|
13118
13170
|
}
|
|
13171
|
+
} finally {
|
|
13172
|
+
initImage.close();
|
|
13119
13173
|
}
|
|
13120
13174
|
}
|
|
13121
13175
|
}
|
|
13122
|
-
const handler = onPaintRef.current ?? defaultOnPaint;
|
|
13123
13176
|
let elImage;
|
|
13124
13177
|
try {
|
|
13125
13178
|
elImage = placeholderCanvas.captureElementImage(element);
|
|
13126
13179
|
} catch (error2) {
|
|
13127
|
-
if (isMissingPaintRecordError(error2) &&
|
|
13180
|
+
if (isMissingPaintRecordError(error2) && canRetryMissingPaintRecord) {
|
|
13128
13181
|
continueRender2(handle);
|
|
13129
13182
|
return;
|
|
13130
13183
|
}
|
|
@@ -13133,20 +13186,41 @@ var HtmlInCanvasContent = forwardRef9(({
|
|
|
13133
13186
|
}
|
|
13134
13187
|
throw error2;
|
|
13135
13188
|
}
|
|
13136
|
-
|
|
13137
|
-
|
|
13138
|
-
|
|
13139
|
-
|
|
13140
|
-
|
|
13141
|
-
|
|
13142
|
-
|
|
13143
|
-
|
|
13144
|
-
|
|
13145
|
-
|
|
13146
|
-
|
|
13147
|
-
|
|
13148
|
-
|
|
13149
|
-
|
|
13189
|
+
try {
|
|
13190
|
+
const currentOnPaint = onPaintRef.current;
|
|
13191
|
+
if (currentOnPaint) {
|
|
13192
|
+
if (paintTarget instanceof HTMLCanvasElement) {
|
|
13193
|
+
throw new Error("HtmlInCanvas: onPaint requires an OffscreenCanvas paint target");
|
|
13194
|
+
}
|
|
13195
|
+
const paintResult = currentOnPaint({
|
|
13196
|
+
canvas: paintTarget,
|
|
13197
|
+
element,
|
|
13198
|
+
elementImage: elImage,
|
|
13199
|
+
pixelDensity: resolvedPixelDensity
|
|
13200
|
+
});
|
|
13201
|
+
if (paintResult) {
|
|
13202
|
+
await paintResult;
|
|
13203
|
+
}
|
|
13204
|
+
} else {
|
|
13205
|
+
defaultOnPaint({
|
|
13206
|
+
canvas: paintTarget,
|
|
13207
|
+
element,
|
|
13208
|
+
elementImage: elImage,
|
|
13209
|
+
pixelDensity: resolvedPixelDensity
|
|
13210
|
+
});
|
|
13211
|
+
}
|
|
13212
|
+
await runEffectChain({
|
|
13213
|
+
state: chainState.get(canvasWidth, canvasHeight),
|
|
13214
|
+
source: paintTarget,
|
|
13215
|
+
effects: effectsRef.current,
|
|
13216
|
+
output: paintTarget,
|
|
13217
|
+
width: canvasWidth,
|
|
13218
|
+
height: canvasHeight
|
|
13219
|
+
});
|
|
13220
|
+
} finally {
|
|
13221
|
+
elImage.close();
|
|
13222
|
+
}
|
|
13223
|
+
ancestorRef.current?.requestParentPaint();
|
|
13150
13224
|
continueRender2(handle);
|
|
13151
13225
|
} catch (error2) {
|
|
13152
13226
|
cancelRender2(error2);
|
|
@@ -13158,7 +13232,7 @@ var HtmlInCanvasContent = forwardRef9(({
|
|
|
13158
13232
|
continueRender2,
|
|
13159
13233
|
cancelRender2,
|
|
13160
13234
|
resolvedPixelDensity,
|
|
13161
|
-
|
|
13235
|
+
canRetryMissingPaintRecord
|
|
13162
13236
|
]);
|
|
13163
13237
|
useLayoutEffect9(() => {
|
|
13164
13238
|
const placeholder = canvas2dRef.current;
|
|
@@ -13166,10 +13240,10 @@ var HtmlInCanvasContent = forwardRef9(({
|
|
|
13166
13240
|
throw new Error("Canvas not found");
|
|
13167
13241
|
}
|
|
13168
13242
|
placeholder.layoutSubtree = true;
|
|
13169
|
-
const
|
|
13170
|
-
|
|
13171
|
-
|
|
13172
|
-
|
|
13243
|
+
const paintTarget = usesDirectLayoutCanvas ? placeholder : placeholder.transferControlToOffscreen();
|
|
13244
|
+
paintTargetRef.current = paintTarget;
|
|
13245
|
+
resizePaintTarget({
|
|
13246
|
+
target: paintTarget,
|
|
13173
13247
|
width: canvasWidth,
|
|
13174
13248
|
height: canvasHeight
|
|
13175
13249
|
});
|
|
@@ -13178,13 +13252,19 @@ var HtmlInCanvasContent = forwardRef9(({
|
|
|
13178
13252
|
placeholder.addEventListener("paint", onPaintCb);
|
|
13179
13253
|
return () => {
|
|
13180
13254
|
placeholder.removeEventListener("paint", onPaintCb);
|
|
13181
|
-
|
|
13255
|
+
paintTargetRef.current = null;
|
|
13182
13256
|
initializedRef.current = false;
|
|
13183
13257
|
unmountedRef.current = true;
|
|
13184
13258
|
onInitCleanupRef.current?.();
|
|
13185
13259
|
onInitCleanupRef.current = null;
|
|
13186
13260
|
};
|
|
13187
|
-
}, [
|
|
13261
|
+
}, [
|
|
13262
|
+
onPaintCb,
|
|
13263
|
+
cancelRender2,
|
|
13264
|
+
canvasWidth,
|
|
13265
|
+
canvasHeight,
|
|
13266
|
+
usesDirectLayoutCanvas
|
|
13267
|
+
]);
|
|
13188
13268
|
const onPaintChangedRef = useRef22(false);
|
|
13189
13269
|
useLayoutEffect9(() => {
|
|
13190
13270
|
if (!onPaintChangedRef.current) {
|
|
@@ -13223,11 +13303,15 @@ var HtmlInCanvasContent = forwardRef9(({
|
|
|
13223
13303
|
...style ?? {}
|
|
13224
13304
|
};
|
|
13225
13305
|
}, [height, style, width]);
|
|
13226
|
-
|
|
13227
|
-
|
|
13228
|
-
|
|
13306
|
+
const ancestorValue = useMemo30(() => {
|
|
13307
|
+
return {
|
|
13308
|
+
requestParentPaint: () => {
|
|
13309
|
+
canvas2dRef.current?.requestPaint?.();
|
|
13310
|
+
}
|
|
13311
|
+
};
|
|
13312
|
+
}, []);
|
|
13229
13313
|
return /* @__PURE__ */ jsx25(HtmlInCanvasAncestorContext.Provider, {
|
|
13230
|
-
value:
|
|
13314
|
+
value: ancestorValue,
|
|
13231
13315
|
children: /* @__PURE__ */ jsx25("canvas", {
|
|
13232
13316
|
ref: setLayoutCanvasRef,
|
|
13233
13317
|
width: canvasWidth,
|
|
@@ -14099,6 +14183,22 @@ var Img = withInteractivitySchema({
|
|
|
14099
14183
|
supportsEffects: true
|
|
14100
14184
|
});
|
|
14101
14185
|
addSequenceStackTraces(Img);
|
|
14186
|
+
var sourcePathToIdentityPrefix = (packageName) => {
|
|
14187
|
+
if (packageName === "remotion") {
|
|
14188
|
+
return "dev.remotion.remotion";
|
|
14189
|
+
}
|
|
14190
|
+
if (packageName.startsWith("@remotion/")) {
|
|
14191
|
+
const normalizedPackageName = packageName.slice("@remotion/".length).replace(/-([a-z])/g, (_, char) => char.toUpperCase());
|
|
14192
|
+
return `dev.remotion.${normalizedPackageName}`;
|
|
14193
|
+
}
|
|
14194
|
+
throw new Error(`Unsupported Remotion package name: ${packageName}`);
|
|
14195
|
+
};
|
|
14196
|
+
var makeRemotionComponentIdentity = ({
|
|
14197
|
+
packageName,
|
|
14198
|
+
componentName
|
|
14199
|
+
}) => {
|
|
14200
|
+
return `${sourcePathToIdentityPrefix(packageName)}.${componentName}`;
|
|
14201
|
+
};
|
|
14102
14202
|
var interactiveElementSchema = {
|
|
14103
14203
|
...baseSchema,
|
|
14104
14204
|
...transformSchema,
|
|
@@ -14112,6 +14212,11 @@ var setRef = (ref, value) => {
|
|
|
14112
14212
|
ref.current = value;
|
|
14113
14213
|
}
|
|
14114
14214
|
};
|
|
14215
|
+
var withSchema = (options) => {
|
|
14216
|
+
const Wrapped = withInteractivitySchema(options);
|
|
14217
|
+
addSequenceStackTraces(Wrapped);
|
|
14218
|
+
return Wrapped;
|
|
14219
|
+
};
|
|
14115
14220
|
var makeInteractiveElement = (tag, displayName) => {
|
|
14116
14221
|
const Inner = forwardRef12((propsWithControls, ref) => {
|
|
14117
14222
|
const {
|
|
@@ -14151,15 +14256,17 @@ var makeInteractiveElement = (tag, displayName) => {
|
|
|
14151
14256
|
});
|
|
14152
14257
|
});
|
|
14153
14258
|
Inner.displayName = displayName;
|
|
14154
|
-
const Wrapped =
|
|
14259
|
+
const Wrapped = withSchema({
|
|
14155
14260
|
Component: Inner,
|
|
14156
14261
|
componentName: displayName,
|
|
14157
|
-
componentIdentity:
|
|
14262
|
+
componentIdentity: makeRemotionComponentIdentity({
|
|
14263
|
+
packageName: "remotion",
|
|
14264
|
+
componentName: displayName.slice(1, -1)
|
|
14265
|
+
}),
|
|
14158
14266
|
schema: interactiveElementSchema,
|
|
14159
14267
|
supportsEffects: false
|
|
14160
14268
|
});
|
|
14161
14269
|
Wrapped.displayName = displayName;
|
|
14162
|
-
addSequenceStackTraces(Wrapped);
|
|
14163
14270
|
return Wrapped;
|
|
14164
14271
|
};
|
|
14165
14272
|
var Interactive = {
|
|
@@ -14168,7 +14275,8 @@ var Interactive = {
|
|
|
14168
14275
|
textSchema,
|
|
14169
14276
|
premountSchema,
|
|
14170
14277
|
sequenceSchema,
|
|
14171
|
-
withSchema
|
|
14278
|
+
withSchema,
|
|
14279
|
+
_internalMakeRemotionComponentIdentity: makeRemotionComponentIdentity,
|
|
14172
14280
|
A: makeInteractiveElement("a", "<Interactive.A>"),
|
|
14173
14281
|
Article: makeInteractiveElement("article", "<Interactive.Article>"),
|
|
14174
14282
|
Aside: makeInteractiveElement("aside", "<Interactive.Aside>"),
|
|
@@ -15573,66 +15681,130 @@ var flattenChildren = (children) => {
|
|
|
15573
15681
|
return flatChildren;
|
|
15574
15682
|
}, []);
|
|
15575
15683
|
};
|
|
15576
|
-
var
|
|
15684
|
+
var seriesSequenceSchema = {
|
|
15685
|
+
durationInFrames: Interactive.baseSchema.durationInFrames,
|
|
15686
|
+
name: Interactive.sequenceSchema.name,
|
|
15687
|
+
hidden: Interactive.sequenceSchema.hidden,
|
|
15688
|
+
showInTimeline: Interactive.sequenceSchema.showInTimeline,
|
|
15689
|
+
freeze: Interactive.baseSchema.freeze,
|
|
15690
|
+
layout: Interactive.sequenceSchema.layout
|
|
15691
|
+
};
|
|
15692
|
+
var SeriesSequenceInner = forwardRef14(({
|
|
15693
|
+
offset = 0,
|
|
15694
|
+
className = "",
|
|
15695
|
+
stack = null,
|
|
15696
|
+
_remotionInternalRender = null,
|
|
15697
|
+
...props2
|
|
15698
|
+
}, ref) => {
|
|
15577
15699
|
useRequireToBeInsideSeries();
|
|
15700
|
+
if (_remotionInternalRender) {
|
|
15701
|
+
return _remotionInternalRender({ ...props2, offset, className: className || undefined, stack }, ref);
|
|
15702
|
+
}
|
|
15578
15703
|
return /* @__PURE__ */ jsx37(IsNotInsideSeriesProvider, {
|
|
15579
|
-
children
|
|
15704
|
+
children: props2.children
|
|
15580
15705
|
});
|
|
15581
|
-
};
|
|
15582
|
-
var SeriesSequence =
|
|
15706
|
+
});
|
|
15707
|
+
var SeriesSequence = Interactive.withSchema({
|
|
15708
|
+
Component: SeriesSequenceInner,
|
|
15709
|
+
componentName: "<Series.Sequence>",
|
|
15710
|
+
componentIdentity: "dev.remotion.remotion.Series.Sequence",
|
|
15711
|
+
schema: seriesSequenceSchema,
|
|
15712
|
+
supportsEffects: false
|
|
15713
|
+
});
|
|
15583
15714
|
var SequenceWithoutSchemaWithRef = SequenceWithoutSchema;
|
|
15715
|
+
var validateSeriesSequenceProps = ({
|
|
15716
|
+
durationInFrames,
|
|
15717
|
+
offset: offsetProp,
|
|
15718
|
+
index,
|
|
15719
|
+
childrenLength
|
|
15720
|
+
}) => {
|
|
15721
|
+
const debugInfo = `index = ${index}, duration = ${durationInFrames}`;
|
|
15722
|
+
if (index !== childrenLength - 1 || durationInFrames !== Infinity) {
|
|
15723
|
+
validateDurationInFrames(durationInFrames, {
|
|
15724
|
+
component: `of a <Series.Sequence /> component`,
|
|
15725
|
+
allowFloats: true
|
|
15726
|
+
});
|
|
15727
|
+
}
|
|
15728
|
+
const offset = offsetProp ?? 0;
|
|
15729
|
+
if (Number.isNaN(offset)) {
|
|
15730
|
+
throw new TypeError(`The "offset" property of a <Series.Sequence /> must not be NaN, but got NaN (${debugInfo}).`);
|
|
15731
|
+
}
|
|
15732
|
+
if (!Number.isFinite(offset)) {
|
|
15733
|
+
throw new TypeError(`The "offset" property of a <Series.Sequence /> must be finite, but got ${offset} (${debugInfo}).`);
|
|
15734
|
+
}
|
|
15735
|
+
if (offset % 1 !== 0) {
|
|
15736
|
+
throw new TypeError(`The "offset" property of a <Series.Sequence /> must be finite, but got ${offset} (${debugInfo}).`);
|
|
15737
|
+
}
|
|
15738
|
+
return offset;
|
|
15739
|
+
};
|
|
15584
15740
|
var SeriesInner = (props2) => {
|
|
15585
15741
|
const childrenValue = useMemo38(() => {
|
|
15586
|
-
let startFrame = 0;
|
|
15587
15742
|
const flattenedChildren = flattenChildren(props2.children);
|
|
15588
|
-
|
|
15743
|
+
const renderChildren = (i, startFrame) => {
|
|
15744
|
+
if (i === flattenedChildren.length) {
|
|
15745
|
+
return null;
|
|
15746
|
+
}
|
|
15747
|
+
const child = flattenedChildren[i];
|
|
15589
15748
|
const castedChild = child;
|
|
15590
15749
|
if (typeof castedChild === "string") {
|
|
15591
15750
|
if (castedChild.trim() === "") {
|
|
15592
|
-
return
|
|
15751
|
+
return renderChildren(i + 1, startFrame);
|
|
15593
15752
|
}
|
|
15594
15753
|
throw new TypeError(`The <Series /> component only accepts a list of <Series.Sequence /> components as its children, but you passed a string "${castedChild}"`);
|
|
15595
15754
|
}
|
|
15596
15755
|
if (castedChild.type !== SeriesSequence) {
|
|
15597
15756
|
throw new TypeError(`The <Series /> component only accepts a list of <Series.Sequence /> components as its children, but got ${castedChild} instead`);
|
|
15598
15757
|
}
|
|
15599
|
-
const
|
|
15600
|
-
|
|
15601
|
-
|
|
15602
|
-
|
|
15603
|
-
|
|
15604
|
-
|
|
15605
|
-
name,
|
|
15606
|
-
...passedProps
|
|
15607
|
-
} = castedChild.props;
|
|
15608
|
-
if (i !== flattenedChildren.length - 1 || durationInFramesProp !== Infinity) {
|
|
15609
|
-
validateDurationInFrames(durationInFramesProp, {
|
|
15610
|
-
component: `of a <Series.Sequence /> component`,
|
|
15611
|
-
allowFloats: true
|
|
15612
|
-
});
|
|
15613
|
-
}
|
|
15614
|
-
const offset = castedChild.props.offset ?? 0;
|
|
15615
|
-
if (Number.isNaN(offset)) {
|
|
15616
|
-
throw new TypeError(`The "offset" property of a <Series.Sequence /> must not be NaN, but got NaN (${debugInfo}).`);
|
|
15617
|
-
}
|
|
15618
|
-
if (!Number.isFinite(offset)) {
|
|
15619
|
-
throw new TypeError(`The "offset" property of a <Series.Sequence /> must be finite, but got ${offset} (${debugInfo}).`);
|
|
15620
|
-
}
|
|
15621
|
-
if (offset % 1 !== 0) {
|
|
15622
|
-
throw new TypeError(`The "offset" property of a <Series.Sequence /> must be finite, but got ${offset} (${debugInfo}).`);
|
|
15623
|
-
}
|
|
15624
|
-
const currentStartFrame = startFrame + offset;
|
|
15625
|
-
startFrame += durationInFramesProp + offset;
|
|
15626
|
-
return /* @__PURE__ */ jsx37(SequenceWithoutSchemaWithRef, {
|
|
15627
|
-
ref: castedChild.ref,
|
|
15628
|
-
name: name || "<Series.Sequence>",
|
|
15629
|
-
_remotionInternalDocumentationLink: name ? undefined : "https://www.remotion.dev/docs/series",
|
|
15630
|
-
from: currentStartFrame,
|
|
15631
|
-
durationInFrames: durationInFramesProp,
|
|
15632
|
-
...passedProps,
|
|
15633
|
-
children: child
|
|
15758
|
+
const castedElement = castedChild;
|
|
15759
|
+
validateSeriesSequenceProps({
|
|
15760
|
+
durationInFrames: castedElement.props.durationInFrames,
|
|
15761
|
+
offset: castedElement.props.offset,
|
|
15762
|
+
index: i,
|
|
15763
|
+
childrenLength: flattenedChildren.length
|
|
15634
15764
|
});
|
|
15635
|
-
|
|
15765
|
+
return React41.cloneElement(castedElement, {
|
|
15766
|
+
_remotionInternalRender: (resolvedProps, ref) => {
|
|
15767
|
+
const durationInFramesProp = resolvedProps.durationInFrames;
|
|
15768
|
+
const {
|
|
15769
|
+
durationInFrames: _durationInFrames,
|
|
15770
|
+
children: sequenceChildren,
|
|
15771
|
+
offset: offsetProp,
|
|
15772
|
+
controls,
|
|
15773
|
+
stack,
|
|
15774
|
+
from: _from,
|
|
15775
|
+
name,
|
|
15776
|
+
...passedProps
|
|
15777
|
+
} = resolvedProps;
|
|
15778
|
+
const offset = validateSeriesSequenceProps({
|
|
15779
|
+
durationInFrames: durationInFramesProp,
|
|
15780
|
+
offset: offsetProp,
|
|
15781
|
+
index: i,
|
|
15782
|
+
childrenLength: flattenedChildren.length
|
|
15783
|
+
});
|
|
15784
|
+
const currentStartFrame = startFrame + offset;
|
|
15785
|
+
const nextStartFrame = startFrame + durationInFramesProp + offset;
|
|
15786
|
+
return /* @__PURE__ */ jsxs3(Fragment, {
|
|
15787
|
+
children: [
|
|
15788
|
+
/* @__PURE__ */ jsx37(SequenceWithoutSchemaWithRef, {
|
|
15789
|
+
ref,
|
|
15790
|
+
name: name || "<Series.Sequence>",
|
|
15791
|
+
_remotionInternalDocumentationLink: name ? undefined : "https://www.remotion.dev/docs/series",
|
|
15792
|
+
_remotionInternalStack: stack ?? undefined,
|
|
15793
|
+
controls: controls ?? undefined,
|
|
15794
|
+
from: currentStartFrame,
|
|
15795
|
+
durationInFrames: durationInFramesProp,
|
|
15796
|
+
...passedProps,
|
|
15797
|
+
children: /* @__PURE__ */ jsx37(IsNotInsideSeriesProvider, {
|
|
15798
|
+
children: sequenceChildren
|
|
15799
|
+
})
|
|
15800
|
+
}),
|
|
15801
|
+
renderChildren(i + 1, nextStartFrame)
|
|
15802
|
+
]
|
|
15803
|
+
});
|
|
15804
|
+
}
|
|
15805
|
+
});
|
|
15806
|
+
};
|
|
15807
|
+
return renderChildren(0, 0);
|
|
15636
15808
|
}, [props2.children]);
|
|
15637
15809
|
return /* @__PURE__ */ jsx37(IsInsideSeriesContainer, {
|
|
15638
15810
|
children: /* @__PURE__ */ jsx37(Sequence, {
|
|
@@ -16233,7 +16405,7 @@ addSequenceStackTraces(Folder);
|
|
|
16233
16405
|
// ../shapes/dist/esm/index.mjs
|
|
16234
16406
|
import React, { useCallback as useCallback26, useMemo as useMemo40, useRef as useRef29 } from "react";
|
|
16235
16407
|
import { version } from "react-dom";
|
|
16236
|
-
import { jsx as jsx40, jsxs as
|
|
16408
|
+
import { jsx as jsx40, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
16237
16409
|
import { jsx as jsx210 } from "react/jsx-runtime";
|
|
16238
16410
|
import { jsx as jsx310 } from "react/jsx-runtime";
|
|
16239
16411
|
import { jsx as jsx42 } from "react/jsx-runtime";
|
|
@@ -16435,7 +16607,7 @@ var RenderSvg = ({
|
|
|
16435
16607
|
const memoizedEffectDefinitions = Internals.useMemoizedEffectDefinitions(effects);
|
|
16436
16608
|
const videoConfig = Internals.useUnsafeVideoConfig();
|
|
16437
16609
|
const reactSupportsTransformOrigin = doesReactSupportTransformOriginProperty(version);
|
|
16438
|
-
const svg = /* @__PURE__ */
|
|
16610
|
+
const svg = /* @__PURE__ */ jsxs4("svg", {
|
|
16439
16611
|
ref: effects.length === 0 || !videoConfig ? setSvgRef : undefined,
|
|
16440
16612
|
width,
|
|
16441
16613
|
height,
|
|
@@ -16461,7 +16633,7 @@ var RenderSvg = ({
|
|
|
16461
16633
|
}
|
|
16462
16634
|
const prevX = prevInstruction.x;
|
|
16463
16635
|
const prevY = prevInstruction.y;
|
|
16464
|
-
return /* @__PURE__ */
|
|
16636
|
+
return /* @__PURE__ */ jsxs4(React.Fragment, {
|
|
16465
16637
|
children: [
|
|
16466
16638
|
/* @__PURE__ */ jsx40("path", {
|
|
16467
16639
|
d: `M ${prevX} ${prevY} ${i.cp1x} ${i.cp1y}`,
|
|
@@ -16651,7 +16823,6 @@ var Arrow = Interactive.withSchema({
|
|
|
16651
16823
|
schema: arrowSchema,
|
|
16652
16824
|
supportsEffects: true
|
|
16653
16825
|
});
|
|
16654
|
-
Internals.addSequenceStackTraces(Arrow);
|
|
16655
16826
|
var shortenVector = (vector, radius) => {
|
|
16656
16827
|
const [x, y] = vector;
|
|
16657
16828
|
const currentLength = Math.sqrt(x * x + y * y);
|
|
@@ -17076,7 +17247,6 @@ var Callout = Interactive.withSchema({
|
|
|
17076
17247
|
schema: calloutSchema,
|
|
17077
17248
|
supportsEffects: true
|
|
17078
17249
|
});
|
|
17079
|
-
Internals.addSequenceStackTraces(Callout);
|
|
17080
17250
|
var makeCircle = ({ radius }) => {
|
|
17081
17251
|
const instructions = [
|
|
17082
17252
|
{
|
|
@@ -17139,7 +17309,6 @@ var Circle = Interactive.withSchema({
|
|
|
17139
17309
|
schema: circleSchema,
|
|
17140
17310
|
supportsEffects: true
|
|
17141
17311
|
});
|
|
17142
|
-
Internals.addSequenceStackTraces(Circle);
|
|
17143
17312
|
var makeEllipse = ({ rx, ry }) => {
|
|
17144
17313
|
const instructions = [
|
|
17145
17314
|
{
|
|
@@ -17197,7 +17366,6 @@ var Ellipse = Interactive.withSchema({
|
|
|
17197
17366
|
schema: ellipseSchema,
|
|
17198
17367
|
supportsEffects: true
|
|
17199
17368
|
});
|
|
17200
|
-
Internals.addSequenceStackTraces(Ellipse);
|
|
17201
17369
|
var makeHeart = ({
|
|
17202
17370
|
height,
|
|
17203
17371
|
aspectRatio = 1.1,
|
|
@@ -17336,7 +17504,6 @@ var Heart = Interactive.withSchema({
|
|
|
17336
17504
|
schema: heartSchema,
|
|
17337
17505
|
supportsEffects: true
|
|
17338
17506
|
});
|
|
17339
|
-
Internals.addSequenceStackTraces(Heart);
|
|
17340
17507
|
var getCoord = ({
|
|
17341
17508
|
counterClockwise,
|
|
17342
17509
|
actualProgress,
|
|
@@ -17491,7 +17658,6 @@ var Pie = Interactive.withSchema({
|
|
|
17491
17658
|
schema: pieSchema,
|
|
17492
17659
|
supportsEffects: true
|
|
17493
17660
|
});
|
|
17494
|
-
Internals.addSequenceStackTraces(Pie);
|
|
17495
17661
|
function polygon({
|
|
17496
17662
|
points,
|
|
17497
17663
|
radius,
|
|
@@ -17591,7 +17757,6 @@ var Polygon = Interactive.withSchema({
|
|
|
17591
17757
|
schema: polygonSchema,
|
|
17592
17758
|
supportsEffects: true
|
|
17593
17759
|
});
|
|
17594
|
-
Internals.addSequenceStackTraces(Polygon);
|
|
17595
17760
|
var makeRect = ({
|
|
17596
17761
|
width,
|
|
17597
17762
|
height,
|
|
@@ -17658,7 +17823,6 @@ var Rect = Interactive.withSchema({
|
|
|
17658
17823
|
schema: rectSchema,
|
|
17659
17824
|
supportsEffects: true
|
|
17660
17825
|
});
|
|
17661
|
-
Internals.addSequenceStackTraces(Rect);
|
|
17662
17826
|
var KAPPA = 0.5522847498307936;
|
|
17663
17827
|
var CAP_HANDLE = 4 / 3;
|
|
17664
17828
|
var curve = ({
|
|
@@ -17870,7 +18034,6 @@ var Spark = Interactive.withSchema({
|
|
|
17870
18034
|
schema: sparkSchema,
|
|
17871
18035
|
supportsEffects: true
|
|
17872
18036
|
});
|
|
17873
|
-
Internals.addSequenceStackTraces(Spark);
|
|
17874
18037
|
var star = ({
|
|
17875
18038
|
centerX,
|
|
17876
18039
|
centerY,
|
|
@@ -17981,7 +18144,6 @@ var Star = Interactive.withSchema({
|
|
|
17981
18144
|
schema: starSchema,
|
|
17982
18145
|
supportsEffects: true
|
|
17983
18146
|
});
|
|
17984
|
-
Internals.addSequenceStackTraces(Star);
|
|
17985
18147
|
var makeTriangle = ({
|
|
17986
18148
|
length: length2,
|
|
17987
18149
|
direction = "right",
|
|
@@ -18088,7 +18250,6 @@ var Triangle = Interactive.withSchema({
|
|
|
18088
18250
|
schema: triangleSchema,
|
|
18089
18251
|
supportsEffects: true
|
|
18090
18252
|
});
|
|
18091
|
-
Internals.addSequenceStackTraces(Triangle);
|
|
18092
18253
|
|
|
18093
18254
|
// ../svg-3d-engine/dist/esm/index.mjs
|
|
18094
18255
|
function truthy2(value) {
|
|
@@ -19154,7 +19315,7 @@ var extrudeAndTransformElement = (options) => {
|
|
|
19154
19315
|
|
|
19155
19316
|
// ../design/dist/esm/index.mjs
|
|
19156
19317
|
import { jsx as jsx212, Fragment as Fragment3 } from "react/jsx-runtime";
|
|
19157
|
-
import { jsx as jsx312, jsxs as
|
|
19318
|
+
import { jsx as jsx312, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
19158
19319
|
import { useEffect as useEffect22, useMemo as useMemo210, useRef as useRef31 } from "react";
|
|
19159
19320
|
import { jsx as jsx44 } from "react/jsx-runtime";
|
|
19160
19321
|
import { jsx as jsx53, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
@@ -19213,11 +19374,11 @@ import * as React302 from "react";
|
|
|
19213
19374
|
import * as React342 from "react";
|
|
19214
19375
|
import * as React332 from "react";
|
|
19215
19376
|
import * as React322 from "react";
|
|
19216
|
-
import { Fragment as Fragment8, jsx as jsx242, jsxs as
|
|
19377
|
+
import { Fragment as Fragment8, jsx as jsx242, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
19217
19378
|
import { forwardRef as forwardRef142, createElement as createElement7 } from "react";
|
|
19218
19379
|
import { forwardRef as forwardRef132, createElement as createElement6 } from "react";
|
|
19219
19380
|
import * as React372 from "react";
|
|
19220
|
-
import { jsx as jsx252, jsxs as
|
|
19381
|
+
import { jsx as jsx252, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
19221
19382
|
import { jsx as jsx262 } from "react/jsx-runtime";
|
|
19222
19383
|
import * as React49 from "react";
|
|
19223
19384
|
import * as React38 from "react";
|
|
@@ -19225,12 +19386,12 @@ import { jsx as jsx272 } from "react/jsx-runtime";
|
|
|
19225
19386
|
import * as React47 from "react";
|
|
19226
19387
|
import React402 from "react";
|
|
19227
19388
|
import * as React392 from "react";
|
|
19228
|
-
import { Fragment as
|
|
19389
|
+
import { Fragment as Fragment222, jsx as jsx282 } from "react/jsx-runtime";
|
|
19229
19390
|
import { jsx as jsx292 } from "react/jsx-runtime";
|
|
19230
19391
|
import React210 from "react";
|
|
19231
19392
|
import { jsx as jsx2102 } from "react/jsx-runtime";
|
|
19232
19393
|
import * as React422 from "react";
|
|
19233
|
-
import * as
|
|
19394
|
+
import * as React412 from "react";
|
|
19234
19395
|
import * as React43 from "react";
|
|
19235
19396
|
import * as ReactDOM5 from "react-dom";
|
|
19236
19397
|
import { jsx as jsx302 } from "react/jsx-runtime";
|
|
@@ -19340,7 +19501,7 @@ function createSlotClone(ownerName) {
|
|
|
19340
19501
|
var SLOTTABLE_IDENTIFIER = Symbol("radix.slottable");
|
|
19341
19502
|
function createSlottable(ownerName) {
|
|
19342
19503
|
const Slottable2 = ({ children }) => {
|
|
19343
|
-
return /* @__PURE__ */ jsx43(
|
|
19504
|
+
return /* @__PURE__ */ jsx43(Fragment22, { children });
|
|
19344
19505
|
};
|
|
19345
19506
|
Slottable2.displayName = `${ownerName}.Slottable`;
|
|
19346
19507
|
Slottable2.__radixId = SLOTTABLE_IDENTIFIER;
|
|
@@ -19637,7 +19798,7 @@ var Outer = ({
|
|
|
19637
19798
|
description: "rect",
|
|
19638
19799
|
transformations: centerOriented
|
|
19639
19800
|
});
|
|
19640
|
-
return /* @__PURE__ */
|
|
19801
|
+
return /* @__PURE__ */ jsxs6("div", {
|
|
19641
19802
|
className: "relative",
|
|
19642
19803
|
style: { width, height },
|
|
19643
19804
|
children: [
|
|
@@ -23685,7 +23846,7 @@ var Select = (props) => {
|
|
|
23685
23846
|
const isFormControl = trigger ? Boolean(trigger.closest("form")) : true;
|
|
23686
23847
|
const [nativeOptionsSet, setNativeOptionsSet] = React36.useState(/* @__PURE__ */ new Set);
|
|
23687
23848
|
const nativeSelectKey = Array.from(nativeOptionsSet).map((option) => option.props.value).join(";");
|
|
23688
|
-
return /* @__PURE__ */ jsx242(Root22, { ...popperScope, children: /* @__PURE__ */
|
|
23849
|
+
return /* @__PURE__ */ jsx242(Root22, { ...popperScope, children: /* @__PURE__ */ jsxs42(SelectProvider, {
|
|
23689
23850
|
required,
|
|
23690
23851
|
scope: __scopeSelect,
|
|
23691
23852
|
trigger,
|
|
@@ -23717,7 +23878,7 @@ var Select = (props) => {
|
|
|
23717
23878
|
}, []),
|
|
23718
23879
|
children
|
|
23719
23880
|
}) }),
|
|
23720
|
-
isFormControl ? /* @__PURE__ */
|
|
23881
|
+
isFormControl ? /* @__PURE__ */ jsxs42(BubbleSelect, {
|
|
23721
23882
|
"aria-hidden": true,
|
|
23722
23883
|
required,
|
|
23723
23884
|
tabIndex: -1,
|
|
@@ -24225,7 +24386,7 @@ var SelectViewport = React36.forwardRef((props, forwardedRef) => {
|
|
|
24225
24386
|
const viewportContext = useSelectViewportContext(VIEWPORT_NAME, __scopeSelect);
|
|
24226
24387
|
const composedRefs = useComposedRefs2(forwardedRef, contentContext.onViewportChange);
|
|
24227
24388
|
const prevScrollTopRef = React36.useRef(0);
|
|
24228
|
-
return /* @__PURE__ */
|
|
24389
|
+
return /* @__PURE__ */ jsxs42(Fragment8, { children: [
|
|
24229
24390
|
/* @__PURE__ */ jsx242("style", {
|
|
24230
24391
|
dangerouslySetInnerHTML: {
|
|
24231
24392
|
__html: `[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`
|
|
@@ -24382,7 +24543,7 @@ var SelectItemText = React36.forwardRef((props, forwardedRef) => {
|
|
|
24382
24543
|
onNativeOptionAdd(nativeOption);
|
|
24383
24544
|
return () => onNativeOptionRemove(nativeOption);
|
|
24384
24545
|
}, [onNativeOptionAdd, onNativeOptionRemove, nativeOption]);
|
|
24385
|
-
return /* @__PURE__ */
|
|
24546
|
+
return /* @__PURE__ */ jsxs42(Fragment8, { children: [
|
|
24386
24547
|
/* @__PURE__ */ jsx242(Primitive.span, { id: itemContext.textId, ...itemTextProps, ref: composedRefs }),
|
|
24387
24548
|
itemContext.isSelected && context.valueNode && !context.valueNodeHasChildren ? ReactDOM4.createPortal(itemTextProps.children, context.valueNode) : null
|
|
24388
24549
|
] });
|
|
@@ -24641,7 +24802,7 @@ var ChevronDown = createLucideIcon("ChevronDown", [
|
|
|
24641
24802
|
var ChevronUp = createLucideIcon("ChevronUp", [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]]);
|
|
24642
24803
|
var Select2 = Root222;
|
|
24643
24804
|
var SelectValue2 = Value;
|
|
24644
|
-
var SelectTrigger2 = React372.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */
|
|
24805
|
+
var SelectTrigger2 = React372.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs5(Trigger, {
|
|
24645
24806
|
ref,
|
|
24646
24807
|
className: cn("flex h-10 w-full items-center justify-between rounded-md border-black border-2 border-b-4 bg-card-bg px-3 py-5 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1 font-brand", className),
|
|
24647
24808
|
...props,
|
|
@@ -24675,7 +24836,7 @@ var SelectScrollDownButton2 = React372.forwardRef(({ className, ...props }, ref)
|
|
|
24675
24836
|
}));
|
|
24676
24837
|
SelectScrollDownButton2.displayName = ScrollDownButton.displayName;
|
|
24677
24838
|
var SelectContent2 = React372.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsx252(Portal2, {
|
|
24678
|
-
children: /* @__PURE__ */
|
|
24839
|
+
children: /* @__PURE__ */ jsxs5(Content2, {
|
|
24679
24840
|
ref,
|
|
24680
24841
|
className: cn(" border-2 border-black relative z-50 max-h-96 min-w-32 overflow-hidden rounded-md font-brand bg-card-bg text-text shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1", className),
|
|
24681
24842
|
position,
|
|
@@ -24697,7 +24858,7 @@ var SelectLabel2 = React372.forwardRef(({ className, ...props }, ref) => /* @__P
|
|
|
24697
24858
|
...props
|
|
24698
24859
|
}));
|
|
24699
24860
|
SelectLabel2.displayName = Label.displayName;
|
|
24700
|
-
var SelectItem2 = React372.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */
|
|
24861
|
+
var SelectItem2 = React372.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs5(Item, {
|
|
24701
24862
|
ref,
|
|
24702
24863
|
className: cn("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-hidden focus:bg-slate-200 dark:focus:bg-white/10 data-disabled:pointer-events-none data-disabled:opacity-50 font-brand", className),
|
|
24703
24864
|
...props,
|
|
@@ -25239,7 +25400,7 @@ function toSafeIndex(array, index2) {
|
|
|
25239
25400
|
function toSafeInteger(number) {
|
|
25240
25401
|
return number !== number || number === 0 ? 0 : Math.trunc(number);
|
|
25241
25402
|
}
|
|
25242
|
-
var useLayoutEffect222 = globalThis?.document ?
|
|
25403
|
+
var useLayoutEffect222 = globalThis?.document ? React412.useLayoutEffect : () => {};
|
|
25243
25404
|
var useReactId2 = React422[" useId ".trim().toString()] || (() => {
|
|
25244
25405
|
return;
|
|
25245
25406
|
});
|
|
@@ -25965,7 +26126,7 @@ var useHeartAnimation = () => {
|
|
|
25965
26126
|
};
|
|
25966
26127
|
|
|
25967
26128
|
// src/components/prompts/CardLikeButton.tsx
|
|
25968
|
-
import { jsx as jsx45, jsxs as
|
|
26129
|
+
import { jsx as jsx45, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
25969
26130
|
var CardLikeButton = ({ submissionId, initialLikeCount }) => {
|
|
25970
26131
|
const [liked, setLiked] = useState41(false);
|
|
25971
26132
|
const [likeCount, setLikeCount] = useState41(initialLikeCount);
|
|
@@ -26000,7 +26161,7 @@ var CardLikeButton = ({ submissionId, initialLikeCount }) => {
|
|
|
26000
26161
|
} catch {}
|
|
26001
26162
|
}
|
|
26002
26163
|
}, [liked, submissionId, animate]);
|
|
26003
|
-
return /* @__PURE__ */
|
|
26164
|
+
return /* @__PURE__ */ jsxs7("button", {
|
|
26004
26165
|
onClick,
|
|
26005
26166
|
className: "flex items-center bg-transparent border-none cursor-pointer p-0",
|
|
26006
26167
|
type: "button",
|
|
@@ -26038,7 +26199,7 @@ var Page = ({ children, className, onDrop, onDragOver }) => {
|
|
|
26038
26199
|
};
|
|
26039
26200
|
|
|
26040
26201
|
// src/components/prompts/PromptsGallery.tsx
|
|
26041
|
-
import { jsx as jsx47, jsxs as
|
|
26202
|
+
import { jsx as jsx47, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
26042
26203
|
var PromptSubmissionCard = ({ promptSubmission }) => {
|
|
26043
26204
|
const [hovered, setHovered] = useState42(false);
|
|
26044
26205
|
const [inView, setInView] = useState42(false);
|
|
@@ -26062,7 +26223,7 @@ var PromptSubmissionCard = ({ promptSubmission }) => {
|
|
|
26062
26223
|
className: "block no-underline hover:no-underline",
|
|
26063
26224
|
onMouseEnter: () => setHovered(true),
|
|
26064
26225
|
onMouseLeave: () => setHovered(false),
|
|
26065
|
-
children: /* @__PURE__ */
|
|
26226
|
+
children: /* @__PURE__ */ jsxs8(Card, {
|
|
26066
26227
|
className: "overflow-hidden hover:shadow-md transition-shadow",
|
|
26067
26228
|
children: [
|
|
26068
26229
|
/* @__PURE__ */ jsx47("div", {
|
|
@@ -26073,17 +26234,17 @@ var PromptSubmissionCard = ({ promptSubmission }) => {
|
|
|
26073
26234
|
alt: promptSubmission.title
|
|
26074
26235
|
})
|
|
26075
26236
|
}),
|
|
26076
|
-
/* @__PURE__ */
|
|
26237
|
+
/* @__PURE__ */ jsxs8("div", {
|
|
26077
26238
|
className: "p-4",
|
|
26078
26239
|
children: [
|
|
26079
26240
|
/* @__PURE__ */ jsx47("h3", {
|
|
26080
26241
|
className: "font-brand font-bold text-lg truncate",
|
|
26081
26242
|
children: promptSubmission.title
|
|
26082
26243
|
}),
|
|
26083
|
-
/* @__PURE__ */
|
|
26244
|
+
/* @__PURE__ */ jsxs8("div", {
|
|
26084
26245
|
className: "flex items-center justify-between mt-1",
|
|
26085
26246
|
children: [
|
|
26086
|
-
/* @__PURE__ */
|
|
26247
|
+
/* @__PURE__ */ jsxs8("div", {
|
|
26087
26248
|
className: "flex items-center gap-2",
|
|
26088
26249
|
children: [
|
|
26089
26250
|
avatarUrl && /* @__PURE__ */ jsx47("img", {
|
|
@@ -26137,7 +26298,7 @@ var Pagination = ({ currentPage, totalPages }) => {
|
|
|
26137
26298
|
}
|
|
26138
26299
|
return pages;
|
|
26139
26300
|
};
|
|
26140
|
-
return /* @__PURE__ */
|
|
26301
|
+
return /* @__PURE__ */ jsxs8("div", {
|
|
26141
26302
|
className: "flex items-center justify-center gap-4 mt-12 font-brand text-sm",
|
|
26142
26303
|
children: [
|
|
26143
26304
|
currentPage > 1 ? /* @__PURE__ */ jsx47("a", {
|
|
@@ -26174,17 +26335,17 @@ var Pagination = ({ currentPage, totalPages }) => {
|
|
|
26174
26335
|
var PromptsGalleryPage = ({ promptSubmissions, currentPage, totalPages }) => {
|
|
26175
26336
|
return /* @__PURE__ */ jsx47(Page, {
|
|
26176
26337
|
className: "flex-col",
|
|
26177
|
-
children: /* @__PURE__ */
|
|
26338
|
+
children: /* @__PURE__ */ jsxs8("div", {
|
|
26178
26339
|
className: "m-auto max-w-[1200px] w-full px-4 py-12",
|
|
26179
26340
|
children: [
|
|
26180
|
-
/* @__PURE__ */
|
|
26341
|
+
/* @__PURE__ */ jsxs8("div", {
|
|
26181
26342
|
className: "mb-8",
|
|
26182
26343
|
children: [
|
|
26183
26344
|
/* @__PURE__ */ jsx47("h1", {
|
|
26184
26345
|
className: "text-3xl font-brand font-black",
|
|
26185
26346
|
children: "Prompt Showcase"
|
|
26186
26347
|
}),
|
|
26187
|
-
/* @__PURE__ */
|
|
26348
|
+
/* @__PURE__ */ jsxs8("p", {
|
|
26188
26349
|
className: "font-brand text-muted-foreground mt-4 max-w-[700px]",
|
|
26189
26350
|
children: [
|
|
26190
26351
|
"See what the community has built using",
|
|
@@ -26202,7 +26363,7 @@ var PromptsGalleryPage = ({ promptSubmissions, currentPage, totalPages }) => {
|
|
|
26202
26363
|
}),
|
|
26203
26364
|
/* @__PURE__ */ jsx47("div", {
|
|
26204
26365
|
className: "flex items-center gap-2",
|
|
26205
|
-
children: /* @__PURE__ */
|
|
26366
|
+
children: /* @__PURE__ */ jsxs8(Button, {
|
|
26206
26367
|
href: "/docs/ai/coding-agents",
|
|
26207
26368
|
className: "font-brand rounded-full bg-[#D97757] flex items-center text-white",
|
|
26208
26369
|
children: [
|