@remotion/promo-pages 4.0.439 → 4.0.441
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 +164 -76
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/Homepage.js +54 -101
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/design.js +2 -2
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/experts.js +2 -2
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/homepage/Pricing.js +2 -2
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/prompts/PromptsGallery.js +2 -2
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/prompts/PromptsShow.js +2 -2
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/prompts/PromptsSubmit.js +2 -2
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/template-modal-content.js +2 -2
- package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/templates.js +3 -4
- package/dist/design.js +111 -24
- package/dist/experts.js +100 -13
- package/dist/homepage/Pricing.js +104 -17
- package/dist/prompts/PromptsGallery.js +111 -24
- package/dist/prompts/PromptsShow.js +117 -30
- package/dist/prompts/PromptsSubmit.js +119 -32
- package/dist/tailwind.css +7 -5
- package/dist/team.js +102 -15
- package/dist/template-modal-content.js +108 -21
- package/dist/templates.js +102 -15
- package/package.json +13 -13
- package/dist/cn.d.ts +0 -2
- package/dist/cn.js +0 -5
- package/dist/components/3DEngine/ButtonDemo.d.ts +0 -2
- package/dist/components/3DEngine/ButtonDemo.js +0 -43
- package/dist/components/3DEngine/Faces.d.ts +0 -5
- package/dist/components/3DEngine/Faces.js +0 -7
- package/dist/components/3DEngine/Outer.d.ts +0 -8
- package/dist/components/3DEngine/Outer.js +0 -56
- package/dist/components/3DEngine/Switch.d.ts +0 -4
- package/dist/components/3DEngine/Switch.js +0 -4
- package/dist/components/3DEngine/get-child-node-from.d.ts +0 -1
- package/dist/components/3DEngine/get-child-node-from.js +0 -14
- package/dist/components/3DEngine/hover-transforms.d.ts +0 -9
- package/dist/components/3DEngine/hover-transforms.js +0 -177
- package/dist/components/BackButton.d.ts +0 -6
- package/dist/components/BackButton.js +0 -9
- package/dist/components/CommandCopyButton.d.ts +0 -5
- package/dist/components/CommandCopyButton.js +0 -4
- package/dist/components/Homepage.d.ts +0 -6
- package/dist/components/Homepage.js +0 -20
- package/dist/components/ManageTeamMembers.d.ts +0 -2
- package/dist/components/ManageTeamMembers.js +0 -42
- package/dist/components/Spinner.d.ts +0 -3
- package/dist/components/Spinner.js +0 -4
- package/dist/components/TeamPicture.d.ts +0 -1
- package/dist/components/TeamPicture.js +0 -4
- package/dist/components/design.d.ts +0 -1
- package/dist/components/design.js +0 -33
- package/dist/components/experts/ExpertsPage.d.ts +0 -11
- package/dist/components/experts/ExpertsPage.js +0 -50
- package/dist/components/experts/experts-data.d.ts +0 -15
- package/dist/components/experts/experts-data.js +0 -263
- package/dist/components/experts/experts-icons.d.ts +0 -7
- package/dist/components/experts/experts-icons.js +0 -36
- package/dist/components/experts.d.ts +0 -3
- package/dist/components/experts.js +0 -2
- package/dist/components/homepage/BackgroundAnimation.d.ts +0 -2
- package/dist/components/homepage/BackgroundAnimation.js +0 -66
- package/dist/components/homepage/ChooseTemplate.d.ts +0 -2
- package/dist/components/homepage/ChooseTemplate.js +0 -25
- package/dist/components/homepage/CommunityStats.d.ts +0 -3
- package/dist/components/homepage/CommunityStats.js +0 -6
- package/dist/components/homepage/CommunityStatsItems.d.ts +0 -7
- package/dist/components/homepage/CommunityStatsItems.js +0 -58
- package/dist/components/homepage/Demo/Card.d.ts +0 -15
- package/dist/components/homepage/Demo/Card.js +0 -174
- package/dist/components/homepage/Demo/Cards.d.ts +0 -15
- package/dist/components/homepage/Demo/Cards.js +0 -57
- package/dist/components/homepage/Demo/Comp.d.ts +0 -38
- package/dist/components/homepage/Demo/Comp.js +0 -72
- package/dist/components/homepage/Demo/CurrentCountry.d.ts +0 -9
- package/dist/components/homepage/Demo/CurrentCountry.js +0 -48
- package/dist/components/homepage/Demo/DemoError.d.ts +0 -2
- package/dist/components/homepage/Demo/DemoError.js +0 -10
- package/dist/components/homepage/Demo/DemoErrorIcon.d.ts +0 -2
- package/dist/components/homepage/Demo/DemoErrorIcon.js +0 -16
- package/dist/components/homepage/Demo/DemoRender.d.ts +0 -33
- package/dist/components/homepage/Demo/DemoRender.js +0 -107
- package/dist/components/homepage/Demo/DigitWheel.d.ts +0 -9
- package/dist/components/homepage/Demo/DigitWheel.js +0 -94
- package/dist/components/homepage/Demo/DisplayedEmoji.d.ts +0 -5
- package/dist/components/homepage/Demo/DisplayedEmoji.js +0 -59
- package/dist/components/homepage/Demo/DoneCheckmark.d.ts +0 -2
- package/dist/components/homepage/Demo/DoneCheckmark.js +0 -20
- package/dist/components/homepage/Demo/DownloadNudge.d.ts +0 -2
- package/dist/components/homepage/Demo/DownloadNudge.js +0 -27
- package/dist/components/homepage/Demo/DragAndDropNudge.d.ts +0 -3
- package/dist/components/homepage/Demo/DragAndDropNudge.js +0 -26
- package/dist/components/homepage/Demo/EmojiCard.d.ts +0 -10
- package/dist/components/homepage/Demo/EmojiCard.js +0 -120
- package/dist/components/homepage/Demo/Minus.d.ts +0 -5
- package/dist/components/homepage/Demo/Minus.js +0 -11
- package/dist/components/homepage/Demo/PlayPauseButton.d.ts +0 -5
- package/dist/components/homepage/Demo/PlayPauseButton.js +0 -47
- package/dist/components/homepage/Demo/PlayerControls.d.ts +0 -8
- package/dist/components/homepage/Demo/PlayerControls.js +0 -15
- package/dist/components/homepage/Demo/PlayerSeekBar.d.ts +0 -11
- package/dist/components/homepage/Demo/PlayerSeekBar.js +0 -216
- package/dist/components/homepage/Demo/PlayerVolume.d.ts +0 -5
- package/dist/components/homepage/Demo/PlayerVolume.js +0 -53
- package/dist/components/homepage/Demo/Progress.d.ts +0 -4
- package/dist/components/homepage/Demo/Progress.js +0 -14
- package/dist/components/homepage/Demo/Spinner.d.ts +0 -5
- package/dist/components/homepage/Demo/Spinner.js +0 -37
- package/dist/components/homepage/Demo/Switcher.d.ts +0 -6
- package/dist/components/homepage/Demo/Switcher.js +0 -25
- package/dist/components/homepage/Demo/Temperature.d.ts +0 -6
- package/dist/components/homepage/Demo/Temperature.js +0 -21
- package/dist/components/homepage/Demo/TemperatureNumber.d.ts +0 -5
- package/dist/components/homepage/Demo/TemperatureNumber.js +0 -36
- package/dist/components/homepage/Demo/ThemeNudge.d.ts +0 -3
- package/dist/components/homepage/Demo/ThemeNudge.js +0 -35
- package/dist/components/homepage/Demo/TimeDisplay.d.ts +0 -6
- package/dist/components/homepage/Demo/TimeDisplay.js +0 -27
- package/dist/components/homepage/Demo/TrendingRepos.d.ts +0 -6
- package/dist/components/homepage/Demo/TrendingRepos.js +0 -65
- package/dist/components/homepage/Demo/icons.d.ts +0 -10
- package/dist/components/homepage/Demo/icons.js +0 -22
- package/dist/components/homepage/Demo/index.d.ts +0 -2
- package/dist/components/homepage/Demo/index.js +0 -95
- package/dist/components/homepage/Demo/math.d.ts +0 -10
- package/dist/components/homepage/Demo/math.js +0 -29
- package/dist/components/homepage/Demo/types.d.ts +0 -6
- package/dist/components/homepage/Demo/types.js +0 -0
- package/dist/components/homepage/EditorStarterSection.d.ts +0 -3
- package/dist/components/homepage/EditorStarterSection.js +0 -8
- package/dist/components/homepage/EvaluateRemotion.d.ts +0 -3
- package/dist/components/homepage/EvaluateRemotion.js +0 -21
- package/dist/components/homepage/FreePricing.d.ts +0 -4
- package/dist/components/homepage/FreePricing.js +0 -134
- package/dist/components/homepage/GetStartedStrip.d.ts +0 -2
- package/dist/components/homepage/GetStartedStrip.js +0 -14
- package/dist/components/homepage/GitHubButton.d.ts +0 -2
- package/dist/components/homepage/GitHubButton.js +0 -7
- package/dist/components/homepage/IconForTemplate.d.ts +0 -6
- package/dist/components/homepage/IconForTemplate.js +0 -105
- package/dist/components/homepage/IfYouKnowReact.d.ts +0 -3
- package/dist/components/homepage/IfYouKnowReact.js +0 -23
- package/dist/components/homepage/InfoTooltip.d.ts +0 -6
- package/dist/components/homepage/InfoTooltip.js +0 -6
- package/dist/components/homepage/MoreTemplatesButton.d.ts +0 -2
- package/dist/components/homepage/MoreTemplatesButton.js +0 -11
- package/dist/components/homepage/MuxVideo.d.ts +0 -7
- package/dist/components/homepage/MuxVideo.js +0 -45
- package/dist/components/homepage/NewsletterButton.d.ts +0 -2
- package/dist/components/homepage/NewsletterButton.js +0 -38
- package/dist/components/homepage/ParameterizeAndEdit.d.ts +0 -2
- package/dist/components/homepage/ParameterizeAndEdit.js +0 -22
- package/dist/components/homepage/Pricing.d.ts +0 -2
- package/dist/components/homepage/Pricing.js +0 -15
- package/dist/components/homepage/PricingBulletPoint.d.ts +0 -6
- package/dist/components/homepage/PricingBulletPoint.js +0 -19
- package/dist/components/homepage/RealMp4Videos.d.ts +0 -2
- package/dist/components/homepage/RealMp4Videos.js +0 -41
- package/dist/components/homepage/Spacer.d.ts +0 -2
- package/dist/components/homepage/Spacer.js +0 -4
- package/dist/components/homepage/TemplateIcon.d.ts +0 -5
- package/dist/components/homepage/TemplateIcon.js +0 -24
- package/dist/components/homepage/TextInput.d.ts +0 -7
- package/dist/components/homepage/TextInput.js +0 -34
- package/dist/components/homepage/TrustedByBanner.d.ts +0 -2
- package/dist/components/homepage/TrustedByBanner.js +0 -27
- package/dist/components/homepage/VideoApps.d.ts +0 -4
- package/dist/components/homepage/VideoApps.js +0 -72
- package/dist/components/homepage/VideoAppsShowcase.d.ts +0 -3
- package/dist/components/homepage/VideoAppsShowcase.js +0 -139
- package/dist/components/homepage/VideoAppsTitle.d.ts +0 -4
- package/dist/components/homepage/VideoAppsTitle.js +0 -4
- package/dist/components/homepage/VideoPlayerWithControls.d.ts +0 -20
- package/dist/components/homepage/VideoPlayerWithControls.js +0 -105
- package/dist/components/homepage/WriteInReact.d.ts +0 -2
- package/dist/components/homepage/WriteInReact.js +0 -10
- package/dist/components/homepage/YouAreHere.d.ts +0 -2
- package/dist/components/homepage/YouAreHere.js +0 -23
- package/dist/components/homepage/layout/Button.d.ts +0 -22
- package/dist/components/homepage/layout/Button.js +0 -30
- package/dist/components/homepage/layout/colors.d.ts +0 -13
- package/dist/components/homepage/layout/colors.js +0 -14
- package/dist/components/homepage/layout/use-color-mode.d.ts +0 -21
- package/dist/components/homepage/layout/use-color-mode.js +0 -22
- package/dist/components/homepage/layout/use-el-size.d.ts +0 -5
- package/dist/components/homepage/layout/use-el-size.js +0 -40
- package/dist/components/homepage/layout/use-mobile-layout.d.ts +0 -1
- package/dist/components/homepage/layout/use-mobile-layout.js +0 -6
- package/dist/components/icons/blank.d.ts +0 -3
- package/dist/components/icons/blank.js +0 -4
- package/dist/components/icons/brain.d.ts +0 -2
- package/dist/components/icons/brain.js +0 -4
- package/dist/components/icons/clone.d.ts +0 -2
- package/dist/components/icons/clone.js +0 -2
- package/dist/components/icons/code-hike.d.ts +0 -3
- package/dist/components/icons/code-hike.js +0 -4
- package/dist/components/icons/cubes.d.ts +0 -3
- package/dist/components/icons/cubes.js +0 -4
- package/dist/components/icons/editor.d.ts +0 -3
- package/dist/components/icons/editor.js +0 -4
- package/dist/components/icons/electron.d.ts +0 -4
- package/dist/components/icons/electron.js +0 -4
- package/dist/components/icons/js.d.ts +0 -3
- package/dist/components/icons/js.js +0 -4
- package/dist/components/icons/music.d.ts +0 -2
- package/dist/components/icons/music.js +0 -4
- package/dist/components/icons/next.d.ts +0 -4
- package/dist/components/icons/next.js +0 -4
- package/dist/components/icons/overlay.d.ts +0 -3
- package/dist/components/icons/overlay.js +0 -4
- package/dist/components/icons/prompt-to-video.d.ts +0 -2
- package/dist/components/icons/prompt-to-video.js +0 -4
- package/dist/components/icons/recorder.d.ts +0 -3
- package/dist/components/icons/recorder.js +0 -4
- package/dist/components/icons/remix.d.ts +0 -3
- package/dist/components/icons/remix.js +0 -4
- package/dist/components/icons/render-server.d.ts +0 -3
- package/dist/components/icons/render-server.js +0 -4
- package/dist/components/icons/skia.d.ts +0 -3
- package/dist/components/icons/skia.js +0 -4
- package/dist/components/icons/stargazer.d.ts +0 -3
- package/dist/components/icons/stargazer.js +0 -4
- package/dist/components/icons/still.d.ts +0 -3
- package/dist/components/icons/still.js +0 -4
- package/dist/components/icons/tailwind.d.ts +0 -3
- package/dist/components/icons/tailwind.js +0 -4
- package/dist/components/icons/tiktok.d.ts +0 -3
- package/dist/components/icons/tiktok.js +0 -4
- package/dist/components/icons/timeline.d.ts +0 -3
- package/dist/components/icons/timeline.js +0 -4
- package/dist/components/icons/ts.d.ts +0 -3
- package/dist/components/icons/ts.js +0 -4
- package/dist/components/icons/undo.d.ts +0 -3
- package/dist/components/icons/undo.js +0 -2
- package/dist/components/icons/vercel.d.ts +0 -4
- package/dist/components/icons/vercel.js +0 -4
- package/dist/components/icons/waveform.d.ts +0 -3
- package/dist/components/icons/waveform.js +0 -4
- package/dist/components/prompts/CardLikeButton.d.ts +0 -5
- package/dist/components/prompts/CardLikeButton.js +0 -49
- package/dist/components/prompts/ClipboardIcon.d.ts +0 -5
- package/dist/components/prompts/ClipboardIcon.js +0 -4
- package/dist/components/prompts/CopyPromptButton.d.ts +0 -4
- package/dist/components/prompts/CopyPromptButton.js +0 -13
- package/dist/components/prompts/LikeButton.d.ts +0 -5
- package/dist/components/prompts/LikeButton.js +0 -49
- package/dist/components/prompts/MuxPlayer.d.ts +0 -8
- package/dist/components/prompts/MuxPlayer.js +0 -21
- package/dist/components/prompts/NewBackButton.d.ts +0 -5
- package/dist/components/prompts/NewBackButton.js +0 -8
- package/dist/components/prompts/Page.d.ts +0 -8
- package/dist/components/prompts/Page.js +0 -7
- package/dist/components/prompts/PromptsGallery.d.ts +0 -7
- package/dist/components/prompts/PromptsGallery.js +0 -60
- package/dist/components/prompts/PromptsShow.d.ts +0 -5
- package/dist/components/prompts/PromptsShow.js +0 -17
- package/dist/components/prompts/PromptsSubmit.d.ts +0 -2
- package/dist/components/prompts/PromptsSubmit.js +0 -173
- package/dist/components/prompts/config.d.ts +0 -1
- package/dist/components/prompts/config.js +0 -1
- package/dist/components/prompts/prompt-helpers.d.ts +0 -8
- package/dist/components/prompts/prompt-helpers.js +0 -76
- package/dist/components/prompts/prompt-types.d.ts +0 -14
- package/dist/components/prompts/prompt-types.js +0 -0
- package/dist/components/prompts/use-heart-animation.d.ts +0 -5
- package/dist/components/prompts/use-heart-animation.js +0 -29
- package/dist/components/team/TeamCards.d.ts +0 -6
- package/dist/components/team/TeamCards.js +0 -19
- package/dist/components/team/TitleTeamCards.d.ts +0 -2
- package/dist/components/team/TitleTeamCards.js +0 -6
- package/dist/components/team.d.ts +0 -3
- package/dist/components/team.js +0 -14
- package/dist/components/template-modal-content.d.ts +0 -5
- package/dist/components/template-modal-content.js +0 -73
- package/dist/components/templates.d.ts +0 -2
- package/dist/components/templates.js +0 -27
- package/dist/helpers/mobile-layout.d.ts +0 -1
- package/dist/helpers/mobile-layout.js +0 -6
- package/dist/helpers/use-el-size.d.ts +0 -5
- package/dist/helpers/use-el-size.js +0 -40
- package/dist/main.d.ts +0 -1
- package/dist/main.js +0 -6
- package/dist/prompts-show.d.ts +0 -1
- package/dist/prompts-show.js +0 -20
- package/dist/prompts-submit.d.ts +0 -1
- package/dist/prompts-submit.js +0 -6
- package/dist/prompts.d.ts +0 -1
- package/dist/prompts.js +0 -6
- package/dist/team.d.ts +0 -1
package/dist/templates.js
CHANGED
|
@@ -1375,7 +1375,7 @@ var getDefaultConfig = () => {
|
|
|
1375
1375
|
var twMerge = /* @__PURE__ */ createTailwindMerge(getDefaultConfig);
|
|
1376
1376
|
|
|
1377
1377
|
// ../design/dist/esm/index.mjs
|
|
1378
|
-
import React4, { useEffect as useEffect18, useMemo as useMemo36, useState as
|
|
1378
|
+
import React4, { useEffect as useEffect18, useMemo as useMemo36, useState as useState20 } from "react";
|
|
1379
1379
|
|
|
1380
1380
|
// ../paths/dist/esm/index.mjs
|
|
1381
1381
|
var cutLInstruction = ({
|
|
@@ -5862,7 +5862,8 @@ import {
|
|
|
5862
5862
|
useContext as useContext29,
|
|
5863
5863
|
useImperativeHandle as useImperativeHandle6,
|
|
5864
5864
|
useLayoutEffect as useLayoutEffect9,
|
|
5865
|
-
useRef as useRef17
|
|
5865
|
+
useRef as useRef17,
|
|
5866
|
+
useState as useState15
|
|
5866
5867
|
} from "react";
|
|
5867
5868
|
import { jsx as jsx24 } from "react/jsx-runtime";
|
|
5868
5869
|
import { createRef as createRef3 } from "react";
|
|
@@ -5872,7 +5873,7 @@ import {
|
|
|
5872
5873
|
useImperativeHandle as useImperativeHandle7,
|
|
5873
5874
|
useMemo as useMemo26,
|
|
5874
5875
|
useRef as useRef18,
|
|
5875
|
-
useState as
|
|
5876
|
+
useState as useState16
|
|
5876
5877
|
} from "react";
|
|
5877
5878
|
import { jsx as jsx25 } from "react/jsx-runtime";
|
|
5878
5879
|
import React25 from "react";
|
|
@@ -5882,7 +5883,7 @@ import { jsx as jsx26 } from "react/jsx-runtime";
|
|
|
5882
5883
|
import { jsx as jsx27 } from "react/jsx-runtime";
|
|
5883
5884
|
import React27 from "react";
|
|
5884
5885
|
import React28, { createContext as createContext21 } from "react";
|
|
5885
|
-
import { useContext as useContext31, useMemo as useMemo29, useState as
|
|
5886
|
+
import { useContext as useContext31, useMemo as useMemo29, useState as useState17 } from "react";
|
|
5886
5887
|
import { useContext as useContext32 } from "react";
|
|
5887
5888
|
import { useCallback as useCallback16 } from "react";
|
|
5888
5889
|
import {
|
|
@@ -5891,7 +5892,7 @@ import {
|
|
|
5891
5892
|
useEffect as useEffect14,
|
|
5892
5893
|
useLayoutEffect as useLayoutEffect10,
|
|
5893
5894
|
useMemo as useMemo30,
|
|
5894
|
-
useState as
|
|
5895
|
+
useState as useState18
|
|
5895
5896
|
} from "react";
|
|
5896
5897
|
import { jsx as jsx28 } from "react/jsx-runtime";
|
|
5897
5898
|
import React30, {
|
|
@@ -5901,7 +5902,7 @@ import React30, {
|
|
|
5901
5902
|
useImperativeHandle as useImperativeHandle8,
|
|
5902
5903
|
useMemo as useMemo31,
|
|
5903
5904
|
useRef as useRef19,
|
|
5904
|
-
useState as
|
|
5905
|
+
useState as useState19
|
|
5905
5906
|
} from "react";
|
|
5906
5907
|
import { useEffect as useEffect15 } from "react";
|
|
5907
5908
|
import { jsx as jsx29 } from "react/jsx-runtime";
|
|
@@ -5972,7 +5973,7 @@ var useIsPlayer = () => {
|
|
|
5972
5973
|
function truthy2(value) {
|
|
5973
5974
|
return Boolean(value);
|
|
5974
5975
|
}
|
|
5975
|
-
var VERSION = "4.0.
|
|
5976
|
+
var VERSION = "4.0.441";
|
|
5976
5977
|
var checkMultipleRemotionVersions = () => {
|
|
5977
5978
|
if (typeof globalThis === "undefined") {
|
|
5978
5979
|
return;
|
|
@@ -9063,6 +9064,76 @@ var useBasicMediaInTimeline = ({
|
|
|
9063
9064
|
finalDisplayName: displayName ?? getAssetDisplayName(src)
|
|
9064
9065
|
};
|
|
9065
9066
|
};
|
|
9067
|
+
var useImageInTimeline = ({
|
|
9068
|
+
src,
|
|
9069
|
+
displayName,
|
|
9070
|
+
id,
|
|
9071
|
+
stack,
|
|
9072
|
+
showInTimeline,
|
|
9073
|
+
premountDisplay,
|
|
9074
|
+
postmountDisplay,
|
|
9075
|
+
loopDisplay
|
|
9076
|
+
}) => {
|
|
9077
|
+
const parentSequence = useContext19(SequenceContext);
|
|
9078
|
+
const { registerSequence, unregisterSequence } = useContext19(SequenceManager);
|
|
9079
|
+
const { duration, nonce, rootId, isStudio, finalDisplayName } = useBasicMediaInTimeline({
|
|
9080
|
+
volume: undefined,
|
|
9081
|
+
mediaVolume: 0,
|
|
9082
|
+
mediaType: "image",
|
|
9083
|
+
src,
|
|
9084
|
+
displayName,
|
|
9085
|
+
trimAfter: undefined,
|
|
9086
|
+
trimBefore: undefined,
|
|
9087
|
+
playbackRate: 1
|
|
9088
|
+
});
|
|
9089
|
+
useEffect4(() => {
|
|
9090
|
+
if (!src) {
|
|
9091
|
+
throw new Error("No src passed");
|
|
9092
|
+
}
|
|
9093
|
+
if (!isStudio && window.process?.env?.NODE_ENV !== "test") {
|
|
9094
|
+
return;
|
|
9095
|
+
}
|
|
9096
|
+
if (!showInTimeline) {
|
|
9097
|
+
return;
|
|
9098
|
+
}
|
|
9099
|
+
registerSequence({
|
|
9100
|
+
type: "image",
|
|
9101
|
+
src,
|
|
9102
|
+
id,
|
|
9103
|
+
duration,
|
|
9104
|
+
from: 0,
|
|
9105
|
+
parent: parentSequence?.id ?? null,
|
|
9106
|
+
displayName: finalDisplayName,
|
|
9107
|
+
rootId,
|
|
9108
|
+
showInTimeline: true,
|
|
9109
|
+
nonce: nonce.get(),
|
|
9110
|
+
loopDisplay,
|
|
9111
|
+
stack,
|
|
9112
|
+
premountDisplay,
|
|
9113
|
+
postmountDisplay,
|
|
9114
|
+
controls: null
|
|
9115
|
+
});
|
|
9116
|
+
return () => {
|
|
9117
|
+
unregisterSequence(id);
|
|
9118
|
+
};
|
|
9119
|
+
}, [
|
|
9120
|
+
duration,
|
|
9121
|
+
id,
|
|
9122
|
+
parentSequence,
|
|
9123
|
+
src,
|
|
9124
|
+
registerSequence,
|
|
9125
|
+
unregisterSequence,
|
|
9126
|
+
nonce,
|
|
9127
|
+
stack,
|
|
9128
|
+
showInTimeline,
|
|
9129
|
+
premountDisplay,
|
|
9130
|
+
postmountDisplay,
|
|
9131
|
+
isStudio,
|
|
9132
|
+
loopDisplay,
|
|
9133
|
+
rootId,
|
|
9134
|
+
finalDisplayName
|
|
9135
|
+
]);
|
|
9136
|
+
};
|
|
9066
9137
|
var useMediaInTimeline = ({
|
|
9067
9138
|
volume,
|
|
9068
9139
|
mediaVolume,
|
|
@@ -10807,12 +10878,16 @@ var ImgRefForwarding = ({
|
|
|
10807
10878
|
delayRenderTimeoutInMilliseconds,
|
|
10808
10879
|
onImageFrame,
|
|
10809
10880
|
crossOrigin,
|
|
10881
|
+
showInTimeline,
|
|
10882
|
+
name,
|
|
10883
|
+
stack,
|
|
10810
10884
|
...props2
|
|
10811
10885
|
}, ref) => {
|
|
10812
10886
|
const imageRef = useRef17(null);
|
|
10813
10887
|
const errors = useRef17({});
|
|
10814
10888
|
const { delayPlayback } = useBufferState();
|
|
10815
10889
|
const sequenceContext = useContext29(SequenceContext);
|
|
10890
|
+
const [timelineId] = useState15(() => String(Math.random()));
|
|
10816
10891
|
if (!src) {
|
|
10817
10892
|
throw new Error('No "src" prop was passed to <Img>.');
|
|
10818
10893
|
}
|
|
@@ -10823,6 +10898,16 @@ var ImgRefForwarding = ({
|
|
|
10823
10898
|
useImperativeHandle6(ref, () => {
|
|
10824
10899
|
return imageRef.current;
|
|
10825
10900
|
}, []);
|
|
10901
|
+
useImageInTimeline({
|
|
10902
|
+
src,
|
|
10903
|
+
displayName: name ?? null,
|
|
10904
|
+
id: timelineId,
|
|
10905
|
+
stack: stack ?? null,
|
|
10906
|
+
showInTimeline: showInTimeline ?? true,
|
|
10907
|
+
premountDisplay: sequenceContext?.premountDisplay ?? null,
|
|
10908
|
+
postmountDisplay: sequenceContext?.postmountDisplay ?? null,
|
|
10909
|
+
loopDisplay: undefined
|
|
10910
|
+
});
|
|
10826
10911
|
const actualSrc = usePreload(src);
|
|
10827
10912
|
const retryIn = useCallback13((timeout) => {
|
|
10828
10913
|
if (!imageRef.current) {
|
|
@@ -10945,6 +11030,7 @@ var ImgRefForwarding = ({
|
|
|
10945
11030
|
});
|
|
10946
11031
|
};
|
|
10947
11032
|
var Img = forwardRef8(ImgRefForwarding);
|
|
11033
|
+
addSequenceStackTraces(Img);
|
|
10948
11034
|
var compositionsRef = React24.createRef();
|
|
10949
11035
|
var CompositionManagerProvider = ({
|
|
10950
11036
|
children,
|
|
@@ -10953,9 +11039,9 @@ var CompositionManagerProvider = ({
|
|
|
10953
11039
|
initialCompositions,
|
|
10954
11040
|
initialCanvasContent
|
|
10955
11041
|
}) => {
|
|
10956
|
-
const [folders, setFolders] =
|
|
10957
|
-
const [canvasContent, setCanvasContent] =
|
|
10958
|
-
const [compositions, setCompositions] =
|
|
11042
|
+
const [folders, setFolders] = useState16([]);
|
|
11043
|
+
const [canvasContent, setCanvasContent] = useState16(initialCanvasContent);
|
|
11044
|
+
const [compositions, setCompositions] = useState16(initialCompositions);
|
|
10959
11045
|
const currentcompositionsRef = useRef18(compositions);
|
|
10960
11046
|
const updateCompositions = useCallback14((updateComps) => {
|
|
10961
11047
|
setCompositions((comps) => {
|
|
@@ -11219,6 +11305,7 @@ var validCodecs = [
|
|
|
11219
11305
|
"h265",
|
|
11220
11306
|
"vp8",
|
|
11221
11307
|
"vp9",
|
|
11308
|
+
"av1",
|
|
11222
11309
|
"mp3",
|
|
11223
11310
|
"aac",
|
|
11224
11311
|
"wav",
|
|
@@ -11442,7 +11529,7 @@ var useSchema = (schema, currentValue) => {
|
|
|
11442
11529
|
if (earlyReturn) {
|
|
11443
11530
|
return earlyReturn;
|
|
11444
11531
|
}
|
|
11445
|
-
const [overrideId] =
|
|
11532
|
+
const [overrideId] = useState17(() => String(Math.random()));
|
|
11446
11533
|
const {
|
|
11447
11534
|
visualModeEnabled,
|
|
11448
11535
|
dragOverrides: overrides,
|
|
@@ -11612,7 +11699,7 @@ var OffthreadVideoForRendering = ({
|
|
|
11612
11699
|
toneMapped
|
|
11613
11700
|
});
|
|
11614
11701
|
}, [toneMapped, currentTime, src, transparent]);
|
|
11615
|
-
const [imageSrc, setImageSrc] =
|
|
11702
|
+
const [imageSrc, setImageSrc] = useState18(null);
|
|
11616
11703
|
const { delayRender: delayRender2, continueRender: continueRender2 } = useDelayRender();
|
|
11617
11704
|
useLayoutEffect10(() => {
|
|
11618
11705
|
if (!window.remotion_videoEnabled) {
|
|
@@ -11801,7 +11888,7 @@ var VideoForDevelopmentRefForwardingFunction = (props2, ref) => {
|
|
|
11801
11888
|
const { hidden } = useContext34(SequenceVisibilityToggleContext);
|
|
11802
11889
|
const logLevel = useLogLevel();
|
|
11803
11890
|
const mountTime = useMountTime();
|
|
11804
|
-
const [timelineId] =
|
|
11891
|
+
const [timelineId] = useState19(() => String(Math.random()));
|
|
11805
11892
|
const isSequenceHidden = hidden[timelineId] ?? false;
|
|
11806
11893
|
if (typeof acceptableTimeShift !== "undefined") {
|
|
11807
11894
|
throw new Error("acceptableTimeShift has been removed. Use acceptableTimeShiftInSeconds instead.");
|
|
@@ -11867,7 +11954,7 @@ var VideoForDevelopmentRefForwardingFunction = (props2, ref) => {
|
|
|
11867
11954
|
useImperativeHandle8(ref, () => {
|
|
11868
11955
|
return videoRef.current;
|
|
11869
11956
|
}, []);
|
|
11870
|
-
|
|
11957
|
+
useState19(() => playbackLogging({
|
|
11871
11958
|
logLevel,
|
|
11872
11959
|
message: `Mounting video with source = ${actualSrc}, v=${VERSION}, user agent=${typeof navigator === "undefined" ? "server" : navigator.userAgent}`,
|
|
11873
11960
|
tag: "video",
|
|
@@ -13544,7 +13631,7 @@ var getAngle = (ref, coordinates) => {
|
|
|
13544
13631
|
};
|
|
13545
13632
|
var lastCoordinates = null;
|
|
13546
13633
|
var useMousePosition = (ref) => {
|
|
13547
|
-
const [angle, setAngle] =
|
|
13634
|
+
const [angle, setAngle] = useState20(getAngle(ref.current, lastCoordinates));
|
|
13548
13635
|
useEffect18(() => {
|
|
13549
13636
|
const element = ref.current;
|
|
13550
13637
|
if (!element) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@remotion/promo-pages",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.441",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -11,19 +11,19 @@
|
|
|
11
11
|
},
|
|
12
12
|
"type": "module",
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@remotion/animated-emoji": "4.0.
|
|
15
|
-
"@remotion/design": "4.0.
|
|
16
|
-
"@remotion/web-renderer": "4.0.
|
|
17
|
-
"@remotion/lottie": "4.0.
|
|
18
|
-
"@remotion/paths": "4.0.
|
|
19
|
-
"@remotion/player": "4.0.
|
|
20
|
-
"@remotion/shapes": "4.0.
|
|
21
|
-
"@remotion/media": "4.0.
|
|
22
|
-
"@remotion/svg-3d-engine": "4.0.
|
|
23
|
-
"create-video": "4.0.
|
|
14
|
+
"@remotion/animated-emoji": "4.0.441",
|
|
15
|
+
"@remotion/design": "4.0.441",
|
|
16
|
+
"@remotion/web-renderer": "4.0.441",
|
|
17
|
+
"@remotion/lottie": "4.0.441",
|
|
18
|
+
"@remotion/paths": "4.0.441",
|
|
19
|
+
"@remotion/player": "4.0.441",
|
|
20
|
+
"@remotion/shapes": "4.0.441",
|
|
21
|
+
"@remotion/media": "4.0.441",
|
|
22
|
+
"@remotion/svg-3d-engine": "4.0.441",
|
|
23
|
+
"create-video": "4.0.441",
|
|
24
24
|
"hls.js": "1.5.19",
|
|
25
25
|
"polished": "4.3.1",
|
|
26
|
-
"remotion": "4.0.
|
|
26
|
+
"remotion": "4.0.441",
|
|
27
27
|
"zod": "4.3.6",
|
|
28
28
|
"@mux/upchunk": "^3.5.0",
|
|
29
29
|
"@vidstack/react": "1.12.13",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"@mediabunny/mp3-encoder": "1.39.2"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@remotion/eslint-config-internal": "4.0.
|
|
37
|
+
"@remotion/eslint-config-internal": "4.0.441",
|
|
38
38
|
"@eslint/eslintrc": "3.1.0",
|
|
39
39
|
"@types/react": "19.2.7",
|
|
40
40
|
"@types/react-dom": "19.2.3",
|
package/dist/cn.d.ts
DELETED
package/dist/cn.js
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useCallback, useRef, useState } from 'react';
|
|
3
|
-
import { cn } from '../../cn';
|
|
4
|
-
import { useHoverTransforms } from './hover-transforms';
|
|
5
|
-
import { Outer } from './Outer';
|
|
6
|
-
export const Button3D = ({ children, className, disabled, ...buttonProps }) => {
|
|
7
|
-
const [dimensions, setDimensions] = useState(null);
|
|
8
|
-
const ref = useRef(null);
|
|
9
|
-
const { isActive, progress } = useHoverTransforms(ref, Boolean(disabled));
|
|
10
|
-
const onPointerEnter = useCallback((e) => {
|
|
11
|
-
if (e.pointerType !== 'mouse') {
|
|
12
|
-
return;
|
|
13
|
-
}
|
|
14
|
-
setDimensions((prevDim) => {
|
|
15
|
-
if (prevDim) {
|
|
16
|
-
return prevDim;
|
|
17
|
-
}
|
|
18
|
-
if (!ref.current) {
|
|
19
|
-
throw new Error('Ref is not set');
|
|
20
|
-
}
|
|
21
|
-
const { childNodes } = ref.current;
|
|
22
|
-
if (childNodes.length === 0) {
|
|
23
|
-
throw new Error('No child nodes');
|
|
24
|
-
}
|
|
25
|
-
const childNode = childNodes[0];
|
|
26
|
-
if (!childNode) {
|
|
27
|
-
throw new Error('No child node');
|
|
28
|
-
}
|
|
29
|
-
const rect = childNode.getBoundingClientRect();
|
|
30
|
-
const { borderRadius } = getComputedStyle(childNode);
|
|
31
|
-
const cornerRadius = borderRadius.includes('e+0')
|
|
32
|
-
? Infinity
|
|
33
|
-
: parseInt(borderRadius !== null && borderRadius !== void 0 ? borderRadius : '0', 10);
|
|
34
|
-
return {
|
|
35
|
-
width: rect.width,
|
|
36
|
-
height: rect.height,
|
|
37
|
-
borderRadius: Math.min(cornerRadius, rect.width / 2, rect.height / 2),
|
|
38
|
-
};
|
|
39
|
-
});
|
|
40
|
-
}, []);
|
|
41
|
-
const content = (_jsx("button", { type: "button", disabled: disabled, className: cn('text-black', 'flex', 'justify-center', 'bg-white', 'items-center', 'font-brand', 'border-solid', 'text-[1em]', 'rounded-md', 'border-black', 'border-2', 'border-b-4', 'cursor-pointer', 'px-4', 'py-3', 'disabled:cursor-default', 'disabled:border-gray-500', 'disabled:text-gray-500', 'transition-colors', className), ...buttonProps, children: children }));
|
|
42
|
-
return (_jsx("div", { ref: ref, className: "contents", onPointerEnter: onPointerEnter, children: dimensions && (isActive || progress > 0) ? (_jsx(Outer, { parentRef: ref, width: dimensions.width, height: dimensions.height, cornerRadius: dimensions.borderRadius, hoverTransform: progress, children: content })) : (content) }));
|
|
43
|
-
};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { threeDIntoSvgPath } from '@remotion/svg-3d-engine';
|
|
3
|
-
export const Faces = ({ elements, ...svgProps }) => {
|
|
4
|
-
return (_jsx(_Fragment, { children: elements.map(({ points, color, crispEdges }, idx) => {
|
|
5
|
-
return (_jsx("path", { d: threeDIntoSvgPath(points), fill: color, shapeRendering: crispEdges ? 'crispEdges' : undefined, ...svgProps }, idx));
|
|
6
|
-
}) }));
|
|
7
|
-
};
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { parsePath, PathInternals, reduceInstructions } from '@remotion/paths';
|
|
3
|
-
import { makeRect } from '@remotion/shapes';
|
|
4
|
-
import { extrudeAndTransformElement, interpolateMatrix4d, makeMatrix3dTransform, reduceMatrices, rotateX, rotateY, scaled, translateX, translateY, translateZ, } from '@remotion/svg-3d-engine';
|
|
5
|
-
import { interpolate } from 'remotion';
|
|
6
|
-
import { Faces } from './Faces';
|
|
7
|
-
import { useClickTransforms, useMousePosition } from './hover-transforms';
|
|
8
|
-
export const Outer = ({ children, width, height, cornerRadius, hoverTransform, parentRef }) => {
|
|
9
|
-
const clickTransform = useClickTransforms(parentRef);
|
|
10
|
-
const angle = useMousePosition(parentRef);
|
|
11
|
-
const appropriateScale = Math.min(1.1, (20 + width) / width);
|
|
12
|
-
const transformationUnhovered = reduceMatrices([
|
|
13
|
-
rotateX(-Math.PI / 20),
|
|
14
|
-
]);
|
|
15
|
-
const transformationHovered = reduceMatrices([
|
|
16
|
-
scaled(appropriateScale),
|
|
17
|
-
rotateX(-Math.PI / 16),
|
|
18
|
-
rotateX(Math.sin(angle) / 4),
|
|
19
|
-
rotateY(-Math.cos(angle) / 4),
|
|
20
|
-
]);
|
|
21
|
-
const transformation = interpolateMatrix4d(hoverTransform, transformationUnhovered, transformationHovered);
|
|
22
|
-
const depthFromClick = clickTransform * 15;
|
|
23
|
-
const depthFromHover = interpolate(hoverTransform, [0, 1], [10, 20]);
|
|
24
|
-
const depth = depthFromHover;
|
|
25
|
-
const frontFace = reduceMatrices([
|
|
26
|
-
translateZ(-depth / 2 + depthFromClick),
|
|
27
|
-
transformation,
|
|
28
|
-
]);
|
|
29
|
-
const centerOriented = reduceMatrices([
|
|
30
|
-
translateX(-width / 2),
|
|
31
|
-
translateY(-height / 2),
|
|
32
|
-
transformation,
|
|
33
|
-
translateX(width / 2),
|
|
34
|
-
translateY(height / 2),
|
|
35
|
-
]);
|
|
36
|
-
const { path, instructions } = makeRect({ height, width, cornerRadius });
|
|
37
|
-
const { viewBox } = PathInternals.getBoundingBoxFromInstructions(reduceInstructions(instructions));
|
|
38
|
-
const inbetween = extrudeAndTransformElement({
|
|
39
|
-
sideColor: 'black',
|
|
40
|
-
crispEdges: false,
|
|
41
|
-
depth,
|
|
42
|
-
pressInDepth: depthFromClick,
|
|
43
|
-
points: parsePath(path),
|
|
44
|
-
description: 'rect',
|
|
45
|
-
transformations: centerOriented,
|
|
46
|
-
});
|
|
47
|
-
return (_jsxs("div", { className: "relative", style: { width, height }, children: [_jsx("svg", { viewBox: viewBox, style: {
|
|
48
|
-
overflow: 'visible',
|
|
49
|
-
height,
|
|
50
|
-
width,
|
|
51
|
-
position: 'absolute',
|
|
52
|
-
top: 0,
|
|
53
|
-
}, pointerEvents: "none", children: _jsx(Faces, { elements: inbetween }) }), _jsx("div", { style: {
|
|
54
|
-
transform: makeMatrix3dTransform(frontFace),
|
|
55
|
-
}, children: children })] }));
|
|
56
|
-
};
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
export const Switch = ({ active, onToggle }) => {
|
|
3
|
-
return (_jsx("div", { "data-active": active, className: "h-6 transition-all rounded-full w-12 border-2 border-b-4 bg-gray-200 p-[2px] cursor-pointer data-[active=true]:bg-brand border-black relative", onClick: onToggle, children: _jsx("div", { "data-active": active, className: "h-4 w-4 left-[4px] top-[4px] transition-all rounded-full bg-white border-2 border-black absolute data-[active=true]:left-[calc(100%-24px)]" }) }));
|
|
4
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const getChildNodeFrom: (htmlElement: HTMLDivElement | null) => HTMLElement | null;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export const getChildNodeFrom = (htmlElement) => {
|
|
2
|
-
if (!htmlElement) {
|
|
3
|
-
return null;
|
|
4
|
-
}
|
|
5
|
-
const { childNodes } = htmlElement;
|
|
6
|
-
if (childNodes.length === 0) {
|
|
7
|
-
return null;
|
|
8
|
-
}
|
|
9
|
-
const childNode = childNodes[0];
|
|
10
|
-
if (!childNode) {
|
|
11
|
-
return null;
|
|
12
|
-
}
|
|
13
|
-
return childNode;
|
|
14
|
-
};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
type State = {
|
|
3
|
-
progress: number;
|
|
4
|
-
isActive: boolean;
|
|
5
|
-
};
|
|
6
|
-
export declare const useHoverTransforms: (ref: React.RefObject<HTMLDivElement | null>, disabled: boolean) => State;
|
|
7
|
-
export declare const useClickTransforms: (ref: React.RefObject<HTMLDivElement | null>) => number;
|
|
8
|
-
export declare const useMousePosition: (ref: React.RefObject<HTMLDivElement | null>) => number;
|
|
9
|
-
export {};
|
|
@@ -1,177 +0,0 @@
|
|
|
1
|
-
import React, { useEffect, useMemo, useState } from 'react';
|
|
2
|
-
import { getChildNodeFrom } from './get-child-node-from';
|
|
3
|
-
export const useHoverTransforms = (ref, disabled) => {
|
|
4
|
-
const [state, setState] = React.useState({
|
|
5
|
-
progress: 0,
|
|
6
|
-
isActive: false,
|
|
7
|
-
});
|
|
8
|
-
const eventTarget = useMemo(() => new EventTarget(), []);
|
|
9
|
-
useEffect(() => {
|
|
10
|
-
if (disabled) {
|
|
11
|
-
eventTarget.dispatchEvent(new Event('disabled'));
|
|
12
|
-
}
|
|
13
|
-
else {
|
|
14
|
-
eventTarget.dispatchEvent(new Event('enabled'));
|
|
15
|
-
}
|
|
16
|
-
}, [disabled, eventTarget]);
|
|
17
|
-
React.useEffect(() => {
|
|
18
|
-
const element = ref.current;
|
|
19
|
-
if (!element)
|
|
20
|
-
return;
|
|
21
|
-
let animationFrame;
|
|
22
|
-
let start = null;
|
|
23
|
-
let isHovered = false;
|
|
24
|
-
let internalDisabled = disabled;
|
|
25
|
-
const getIsActive = () => {
|
|
26
|
-
return isHovered && !internalDisabled;
|
|
27
|
-
};
|
|
28
|
-
const animate = (timestamp) => {
|
|
29
|
-
if (start === null)
|
|
30
|
-
start = timestamp;
|
|
31
|
-
const progress = Math.min((timestamp - start) / 150, 1);
|
|
32
|
-
setState(() => ({
|
|
33
|
-
isActive: getIsActive(),
|
|
34
|
-
progress: getIsActive() ? progress : 1 - progress,
|
|
35
|
-
}));
|
|
36
|
-
if (progress < 1) {
|
|
37
|
-
animationFrame = requestAnimationFrame(animate);
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
const animateIn = () => {
|
|
41
|
-
start = null;
|
|
42
|
-
cancelAnimationFrame(animationFrame);
|
|
43
|
-
animationFrame = requestAnimationFrame(animate);
|
|
44
|
-
};
|
|
45
|
-
const handleMouseEnter = () => {
|
|
46
|
-
const prevIsActive = getIsActive();
|
|
47
|
-
isHovered = true;
|
|
48
|
-
if (prevIsActive === getIsActive()) {
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
animateIn();
|
|
52
|
-
};
|
|
53
|
-
const handleMouseLeave = () => {
|
|
54
|
-
const prevIsActive = getIsActive();
|
|
55
|
-
isHovered = false;
|
|
56
|
-
if (prevIsActive === getIsActive()) {
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
animateIn();
|
|
60
|
-
};
|
|
61
|
-
const handleDisabled = () => {
|
|
62
|
-
const prevIsActive = getIsActive();
|
|
63
|
-
internalDisabled = true;
|
|
64
|
-
if (prevIsActive === getIsActive()) {
|
|
65
|
-
return;
|
|
66
|
-
}
|
|
67
|
-
animateIn();
|
|
68
|
-
};
|
|
69
|
-
const handleEnabled = () => {
|
|
70
|
-
const prevIsActive = getIsActive();
|
|
71
|
-
internalDisabled = false;
|
|
72
|
-
if (prevIsActive === getIsActive()) {
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
animateIn();
|
|
76
|
-
};
|
|
77
|
-
element.addEventListener('mouseenter', handleMouseEnter);
|
|
78
|
-
element.addEventListener('mouseleave', handleMouseLeave);
|
|
79
|
-
eventTarget.addEventListener('disabled', handleDisabled);
|
|
80
|
-
eventTarget.addEventListener('enabled', handleEnabled);
|
|
81
|
-
return () => {
|
|
82
|
-
element.removeEventListener('mouseenter', handleMouseEnter);
|
|
83
|
-
element.removeEventListener('mouseleave', handleMouseLeave);
|
|
84
|
-
eventTarget.removeEventListener('disabled', handleDisabled);
|
|
85
|
-
eventTarget.removeEventListener('enabled', handleEnabled);
|
|
86
|
-
cancelAnimationFrame(animationFrame);
|
|
87
|
-
};
|
|
88
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
89
|
-
}, [ref, eventTarget]);
|
|
90
|
-
return state;
|
|
91
|
-
};
|
|
92
|
-
export const useClickTransforms = (ref) => {
|
|
93
|
-
const [hoverProgress, setHoverProgress] = React.useState(0);
|
|
94
|
-
React.useEffect(() => {
|
|
95
|
-
const element = getChildNodeFrom(ref.current);
|
|
96
|
-
if (!element) {
|
|
97
|
-
return;
|
|
98
|
-
}
|
|
99
|
-
let animationFrame;
|
|
100
|
-
let start = null;
|
|
101
|
-
let isHovered = false;
|
|
102
|
-
const animate = (timestamp) => {
|
|
103
|
-
if (start === null)
|
|
104
|
-
start = timestamp;
|
|
105
|
-
const progress = Math.min((timestamp - start) / 150, 1);
|
|
106
|
-
setHoverProgress(isHovered ? progress : 1 - progress);
|
|
107
|
-
if (progress < 1) {
|
|
108
|
-
animationFrame = requestAnimationFrame(animate);
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
const handleMouseEnter = () => {
|
|
112
|
-
isHovered = true;
|
|
113
|
-
start = null;
|
|
114
|
-
cancelAnimationFrame(animationFrame);
|
|
115
|
-
animationFrame = requestAnimationFrame(animate);
|
|
116
|
-
};
|
|
117
|
-
const handleMouseLeave = () => {
|
|
118
|
-
isHovered = false;
|
|
119
|
-
start = null;
|
|
120
|
-
cancelAnimationFrame(animationFrame);
|
|
121
|
-
animationFrame = requestAnimationFrame(animate);
|
|
122
|
-
};
|
|
123
|
-
element.addEventListener('pointerdown', handleMouseEnter);
|
|
124
|
-
element.addEventListener('pointerup', handleMouseLeave);
|
|
125
|
-
return () => {
|
|
126
|
-
element.removeEventListener('pointerdown', handleMouseEnter);
|
|
127
|
-
element.removeEventListener('pointerup', handleMouseLeave);
|
|
128
|
-
cancelAnimationFrame(animationFrame);
|
|
129
|
-
};
|
|
130
|
-
}, [ref]);
|
|
131
|
-
return hoverProgress;
|
|
132
|
-
};
|
|
133
|
-
const getAngle = (ref, coordinates) => {
|
|
134
|
-
const element = getChildNodeFrom(ref);
|
|
135
|
-
if (!element) {
|
|
136
|
-
return 0;
|
|
137
|
-
}
|
|
138
|
-
if (coordinates === null) {
|
|
139
|
-
return 0;
|
|
140
|
-
}
|
|
141
|
-
const clientRect = element.getClientRects();
|
|
142
|
-
if (!clientRect) {
|
|
143
|
-
return 0;
|
|
144
|
-
}
|
|
145
|
-
if (clientRect.length === 0) {
|
|
146
|
-
return 0;
|
|
147
|
-
}
|
|
148
|
-
const center = {
|
|
149
|
-
x: clientRect[0].x + clientRect[0].width / 2,
|
|
150
|
-
y: clientRect[0].y + clientRect[0].height / 2,
|
|
151
|
-
};
|
|
152
|
-
const angle = Math.atan2(coordinates.y - center.y, coordinates.x - center.x);
|
|
153
|
-
return angle;
|
|
154
|
-
};
|
|
155
|
-
let lastCoordinates = null;
|
|
156
|
-
export const useMousePosition = (ref) => {
|
|
157
|
-
const [angle, setAngle] = useState(getAngle(ref.current, lastCoordinates));
|
|
158
|
-
useEffect(() => {
|
|
159
|
-
const element = ref.current;
|
|
160
|
-
if (!element) {
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
const onMouseMove = (e) => {
|
|
164
|
-
const clientRect = element.getClientRects();
|
|
165
|
-
if (!clientRect) {
|
|
166
|
-
return;
|
|
167
|
-
}
|
|
168
|
-
lastCoordinates = { y: e.clientY, x: e.clientX };
|
|
169
|
-
setAngle(getAngle(element, { y: e.clientY, x: e.clientX }));
|
|
170
|
-
};
|
|
171
|
-
window.addEventListener('mousemove', onMouseMove);
|
|
172
|
-
return () => {
|
|
173
|
-
window.removeEventListener('mousemove', onMouseMove);
|
|
174
|
-
};
|
|
175
|
-
}, [ref]);
|
|
176
|
-
return angle;
|
|
177
|
-
};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Button } from '@remotion/design';
|
|
3
|
-
export const BackButton = ({ color, text, link }) => {
|
|
4
|
-
return (_jsx("div", { className: "justify-center items-center font-medium mb-4 block", style: {
|
|
5
|
-
fontFamily: 'GTPlanar',
|
|
6
|
-
fontWeight: 500,
|
|
7
|
-
color,
|
|
8
|
-
}, children: _jsx(Button, { href: link, className: "px-4 rounded-full text-sm h-10", children: _jsxs("div", { className: "flex row items-center justify-center px-4", children: [_jsx("svg", { className: "h-4 mr-[15px] inline-block", style: { color }, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 448 512", children: _jsx("path", { fill: "currentcolor", d: "M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.2 288 416 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-306.7 0L214.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z" }) }), text] }) }) }));
|
|
9
|
-
};
|